lingo求min
来源:学生作业帮助网 编辑:作业帮 时间:2024/10/04 05:22:55
MODEL:SETS:qiefa/1,2,3/:x;bujian/1..4/:L,NEED;shuliang(qiefa,bujian):N;ENDSETSDATA:L=4,5,6,8;NEED=50
你的括号写错了应该都是这种括号()其实[]的作用只是让读者能够轻松的判断括号的配对在程序里面一般都应该用()因为软件可以直接判断括号配对而其它括号可能表示其它意义
@for(supply(i):b(i)=@min(supply(j):d(i,j)*x(j)));再问:请问:如果我想加强条件,在取Bi=min{Dij*Xj}的时候限制Bi必须大于零,不能等于零,该
我写好了,你把ld特定的数据输入就行.再问:你好,很感谢你为我解答,我试过了,但是好像还是有问题,我想可能是因为你对问题不了解,所以,我将问题和思路私信给你了,,希望你能好人做到底,先谢了!!!
max=@smax(@smin(x1,x2),@smin(x3,x4),@smin(x5,x6));
@for(demand(i):@sum(supply(j):w(i,j)*y(j))>=1);
你把具体问题发出来吧你写的根本看不懂是什么意思再问:min=z(i)*((|m-x(i)|+|n-y(i)|)的累加;i是1到9;x(i)、y(i)和z(i)都是已知数据;约束条件是0<=m&l
1&1表示取集合的第一个指标这里面C集合只有一个指标所以是这个指标而@in函数是判断某个指标是否在B集合里面前面加not就是如果不在B里面就在A里面明显两个是互补的关系2@in函数里面不是要求&1&2
你换个技能和研究一体机
去掉指的那个右括号就行了再问:大神又是你!真是谢谢了。改了还是不行啊,能帮完整的写一句吗?其实就是x1+x2=0时,y(2)=0;x1+x2=2时,y(2)=r(2);x1+x2=1时,y2=0.7*
SETS:CITY/1..7/:X;AREA/1..8/:a,b,c,d,e,f,g;LINK(CITY,AREA):N;ENDSETSDATA:a=1,1,1,1,0,0,0,0;b=0,0,0,0
这样做成了非线性规划了,办法是转化为线性规划来做.对于这题,设定一个F则有MIN=F;st.F>=a;F>=b;F>=c;.当然,也可以用非线性做,变成MIN=@SMAX(a,b,c,.),但是求解很
你这个问题是什么我只能这样给你改了model:sets:cities/s,a1,a2,a3,b1,b2,c1,c2,t/:l;roads(cities,cities)/s,a1s,a2s,a3a1,b
plan为一个派生集合,它是由两个集合place,kind生成的集,这两个集合的元素分别是这个集合的分量如果place,kind不是派生集,也就类似于一个一维数组,而plan则类似于二维数组,它的行属
model:sets:a/1..7/:r,p,y,x;endsetsdata:r=23.45678.48.7;p=7.5791317212225;enddatamin=@sum(a:x*y);@for
@min是集循环函数取集里面的最小值@smin是对几个数取最小
sets:s/1..12/:x,y,z,a;endsetsmin=@sum(s:30*x+40*y+5*z);@for(s(i)|i#gt#1:x(i)+y(i)+z(i-1)-z(i)=a(i));
求volume(1,1)+volume(2,1)+...+volume(20,1)吗?加如下的语句在主程序中就可以了,用求和的语句:@for(supplyment(I):s=@sum(receiver
你不定义集就带下标当然不对max=(10+0.1*(x1A+x2A+x3A+x4A)+0.03*(x1D+x2D+x3D+x4D+x5D)+0.3*x2C+0.15*x3B)*1.03;x1A+x1D
lingo中的变量缺省是大于等于0的,你要增加2个约束:@free(x1);@free(x2);就可以了.另外,你的目标函数应该是min=x1+x2;这才是求最小值.