<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Hi Oscar,<div><br></div><div>sum{i in FARMS, &nbsp;Please use : instead of the comma</div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">This should work if this constraint is to be formulated one times:</div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Constraint: &nbsp; sum{i in FARMS, j in FARMS: XS[i,j] } &gt;= sum{ i in FARMS: Alpha*Q[i] } ; &nbsp; <span class="Apple-tab-span" style="white-space: pre;">        </span></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">If you want to formulate a couple of constraints using a loop it should be formulated like this:</div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Constraint { &nbsp;index in set : &nbsp;sum{i in FARMS, j in FARMS: XS[i,j] } &gt;= sum{ i in FARMS: Alpha*Q[i] } &nbsp; ; &nbsp;}<span class="Apple-tab-span" style="white-space: pre;">        </span></div></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">I hope that works. I did not test it.</div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Cheers,</div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Mike</div></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br></div></div><div><div><div>Am 28.06.2014 um 17:00 schrieb Oscar Augusto Téllez Sánchez &lt;<a href="mailto:oskarts@gmail.com">oskarts@gmail.com</a>&gt;:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=windows-1252"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Thank you!<div><br></div><div>this is my new challenge…i don´t understand the error in this constrain, i have tried in different &nbsp;ways but nothing… (alpha is a constant like 1)</div><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Constraint {sum{i in FARMS, j in FARMS: XS[i,j]} &gt;= sum{i in FARMS,Alpha*Q[i]};}<span class="Apple-tab-span" style="white-space:pre">        </span></div><div><br></div><div>thank you in advance</div><div><br></div><div>Oscar</div><div><br></div><div>this is the program just in case...</div><div><br></div><div><br></div><div><div>#%data biomass-data-Small.cdat : SIZE set</div><div>%data biomass-data-Small.cdat : &nbsp;FARMS set, SP, TC, PC, Q[FARMS], d[FARMS,FARMS], gamma[FARMS], CF, Alpha, K</div><div>variables:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Quantity of waste treated at plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>X[FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Quantity of waste send from farm j to plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>XS[FARMS,FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#1 if plant i is installed with capacity k</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Y[FARMS]: binary;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#1 if we send waste from farm j to plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>W[FARMS,FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><br></div><div>objectives:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Profit: sum{i in FARMS: (SP-PC)* X[i] }&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>- sum{i in FARMS, j in FARMS : TC * XS[i,j] * d[i,j]}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>- sum{i in FARMS : CF*Y[i] } -&gt;max;</div><div><br></div><div>constraints:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># you cannot send more than farm´s capacity-</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>farms {j in FARMS: sum{i in FARMS: XS[i,j]} &lt;= sum{i in FARMS:Q[j]*W[i,j]};}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#A farm can only send to one plant-</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>exclusivity {j in FARMS : sum{i in FARMS: W[i,j]} &lt;= 1;}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Maximum one plant per site-</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>nPlants {i in FARMS : Y[i] &lt;= 1;}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#You can send to i only if there is a plant there-</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>cond1 {i in FARMS,j in FARMS: W[i,j] &lt;= Y[i];}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Production capacity-</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#ProductionCap: X[] &lt;= K*Y[];&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>ProductionCap {i in FARMS: X[i] &lt;= K*Y[i];}&nbsp;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># Equivanlence between what is send (waste) and what is produce (methane)-</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>equivalence {i in FARMS: X[i] = sum{j in FARMS: gamma[i]*XS[i,j]};}<span class="Apple-tab-span" style="white-space:pre">        </span></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Constraint {sum{i in FARMS, j in FARMS: XS[i,j]} &gt;= sum{i in FARMS,Alpha*Q[i]};}<span class="Apple-tab-span" style="white-space:pre">        </span></div></div><div><br></div><div><br><div><div>On Jun 2, 2014, at 4:24 PM, Mike Steglich &lt;<a href="mailto:mike.steglich@th-wildau.de">mike.steglich@th-wildau.de</a>&gt; wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div dir="auto"><div>Hallo Oscar,</div><div><br></div><div>X[farms] is defined as variable vector, but in the constraint</div><div><blockquote type="cite">farms {j in FARMS: sum{i in FARMS: X[i,j]} &lt;= sum{i in FARMS:Q[j]*W[i,j]};}</blockquote>used as variable matrix X[i,j]. Could it be possible that you wanted to use the matrix XS in this constraint?</div><div><br></div><div>Cheers,</div><div><br></div><div>Mike</div><div><br></div><div><br>Am 01.06.2014 um 23:36 schrieb Oscar Augusto Téllez Sánchez &lt;<a href="mailto:oskarts@gmail.com">oskarts@gmail.com</a>&gt;:<br><br></div><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=windows-1252">Thank you very much!<div><br></div><div>i have found these and some errors more. however, with the last one…i give up, any idea? i have tried many ways but nothing</div><div><br></div><div><div>create model instance ...</div><div>error (compiler): file biomass.cmpl line 21: array dimensions don't match</div><div>CMPL model generation - failed</div></div><div><br></div><div><b>here is new version of program:</b></div><div><br></div><div><div>%data biomass-data.cdat : FARMS set, SIZE set, SP,TC,PC,CF[SIZE], Q[FARMS], K[SIZE],d[FARMS,FARMS], gamma[FARMS]</div><div><br></div><div>variables:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Quantity of waste treated at plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>X[FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Quantity of waste send from farm j to plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>XS[FARMS,FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#1 if plant i is installed with capacity k</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Y[FARMS,SIZE]: binary;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#1 if we send waste from farm j to plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>W[FARMS,FARMS]: real[0..];</div><div><br></div><div>objectives:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Profit: sum{i in FARMS: (SP-PC)* X[i] }&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>+ sum{i in FARMS, j in FARMS : TC * XS[i,j] * d[i,j]}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>+ sum{i in FARMS, k in SIZE : Y[i,k] * CF[k] } -&gt;max;</div><div><br></div><div>constraints:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># you cannot send more than farm´s capacity</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>farms {j in FARMS: sum{i in FARMS: X[i,j]} &lt;= sum{i in FARMS:Q[j]*W[i,j]};}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#A farm can only send to one plant</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>exclusivity {i in FARMS : sum{j in FARMS: W[i,j]} = 1;}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Maximum one plant per site</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>nPlants {i in FARMS : sum{k in SIZE: Y[i,k]} &lt;= 1;}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#You can send to i only if there is a plant there</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>cond1 {i in FARMS: sum{j in FARMS: W[i,j]} &lt;= sum{k in SIZE: Y[i,k]};}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Production capacity</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>ProductionCap: X[] &lt;= K[]*Y[,];&nbsp;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># Equivanlence between what is send (waste) and what is produce (methane)</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>equivalence {i in FARMS: gamma[i]*X[i] = sum{j in SIZE: XS[i,j]};}<span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div></div><div>thank you in advance</div><div><br></div><div>Oscar</div><div><br></div><div><div><div>On Jun 1, 2014, at 9:35 PM, Mike Steglich &lt;<a href="mailto:mike.steglich@berlin.de">mike.steglich@berlin.de</a>&gt; wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div dir="auto"><div>Hi Oscar,</div><div><br></div><div>In line 16 you specified K as index in the sum header but k is used within the sum body. The same issue is happened in line 20: k defined in the sum header but K is used in the body.</div><div><br></div><div>Cheers,</div><div><br></div><div>Mike</div><div><br>Am 01.06.2014 um 16:45 schrieb Oscar Augusto Téllez Sánchez &lt;<a href="mailto:oskarts@gmail.com">oskarts@gmail.com</a>&gt;:<br><br></div><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=windows-1252"><div>Good day,</div><div><br></div><div><b>here is my problem… when i run my program this is the message</b></div><div><br></div><div><div>create model instance ...</div><div>error (compiler): file biomass.cmpl line 16: syntax error, unexpected ASSIGN_ITER, expecting ':'</div><div>error (compiler): file biomass.cmpl line 20: syntax error, unexpected ASSIGN_ITER, expecting ':'</div><div>error (compiler): file biomass.cmpl line 20: syntax error, unexpected '}', expecting end of file</div><div>CMPL model generation - failed</div><div><br></div></div><div>I am following the standard and i don´t know why is asking me to put (:) &nbsp;any idea how to solve it? (in bold are the referred lines)</div><div><br></div><div>thank you in advance ;) my code is below</div><div><br></div><div>Oscar</div><div><br></div><div><b>Program:</b></div><div><div>%data biomass-data.cdat : FARMS set, SIZE set, SP,TC,PC,CF[SIZE], Q[FARMS], K[SIZE],d[FARMS,FARMS], gamma[FARMS]</div><div><br></div><div>variables:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Quantity of waste treated at plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>X[FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Quantity of waste send from farm j to plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>XS[FARMS,FARMS]: real[0..];</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#1 if plant i is installed with capacity k</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Y[FARMS,SIZE]: binary;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#1 if we send waste from farm j to plant i</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>W[FARMS,FARMS]: real[0..];</div><div><br></div><div>objectives:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Profit: sum{i in FARMS: (SP-PC)* X[i] }&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>+ sum{i in FARMS, j in FARMS : TC * XS[i,j] * d[i,j]}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span><b>+ sum{i in FARMS, K in SIZE : Y[i,k] * CF[k] } -&gt;max;</b></div><div><br></div><div>constraints:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Maximum one plant per site</div><div><span class="Apple-tab-span" style="white-space:pre">        </span><b>nPlants {i in FARMS : sum{k in SIZE: Y[i,K]} &lt;= 1;}</b></div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#A farm can only send to one plant</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>exclusivity {i in FARMS : sum{j in FARMS: W[i,j]} = 1;}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#You can send to i only if there is a plant there</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>cond1 {i in &lt; FARMS: sum{j in FARMS: W[i,j]} &lt;= sum{k in SIZE: Y[i,K]};}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># Equivanlence between what is send (waste) and what is produce (methane)</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>equivalence {i in &lt; FARMS: gamma[i]*X[i] = sum{j in SIZE: XS[i,j]};}<span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#Production capacity</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>ProductionCap {i in &lt; FARMS: x[i] &lt;= sum{k in SIZE: Y[i,K]*KP[K]};}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># you cannot send more than farm´s capacity</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>farmsCapacity {j in &lt; FARMS: sum{i in FARMS: X[i,j]} &lt;= sum{i in FARMS: W[i,j]*Q[j]};}</div><div><br></div><div><br></div><div><br></div></div><div><br><blockquote type="cite">_______________________________________________<br>Cmpl mailing list<br><a href="mailto:Cmpl@list.coin-or.org">Cmpl@list.coin-or.org</a><br><a href="http://list.coin-or.org/mailman/listinfo/cmpl">http://list.coin-or.org/mailman/listinfo/cmpl</a><br></blockquote></div><br></blockquote><blockquote type="cite"><span>_______________________________________________</span><br><span>Cmpl mailing list</span><br><span><a href="mailto:Cmpl@list.coin-or.org">Cmpl@list.coin-or.org</a></span><br><span><a href="http://list.coin-or.org/mailman/listinfo/cmpl">http://list.coin-or.org/mailman/listinfo/cmpl</a></span></blockquote></div></blockquote></div><br></div></blockquote><blockquote type="cite"><span>_______________________________________________</span><br><span>Cmpl mailing list</span><br><span><a href="mailto:Cmpl@list.coin-or.org">Cmpl@list.coin-or.org</a></span><br><span><a href="http://list.coin-or.org/mailman/listinfo/cmpl">http://list.coin-or.org/mailman/listinfo/cmpl</a></span></blockquote></div></blockquote></div><br></div></div>_______________________________________________<br>Cmpl mailing list<br><a href="mailto:Cmpl@list.coin-or.org">Cmpl@list.coin-or.org</a><br>http://list.coin-or.org/mailman/listinfo/cmpl</blockquote></div><br></div></body></html>