lingo 区间表达
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/18 03:35:00
@prod(setname:x)函数例如y=x1*x2*x3*x4*x5可用如下表示sets:r/1...5/:x;endsetsy=@prod(r:x);
@for(supply(i):b(i)=@min(supply(j):d(i,j)*x(j)));再问:请问:如果我想加强条件,在取Bi=min{Dij*Xj}的时候限制Bi必须大于零,不能等于零,该
注意你的目标函数其实是我的目标函数的平方model:sets:s/1..4/:x,c;endsetsmin=1000*@sum(s:x);@sum(s:1000*x-c)>=200;@sum(s:x)
你要说具体问题不知道你这个i是干什么的再问:条件中:7Σxij=yj+zj (j=1...21,j≠9,11,17)i=1像这样的,谢了再答:@for(set2(j)|j#ne#9#and#j#ne#
sets:setname/1..7/:x,t;endsets@for(setname(i):@for(setname(j)|i#ne#j:(x(i)+t(i)#le#x(j))#or#(x(j)+t(
@for(link1(i,j):v(i,j)=@if(c(i)#gt#A(j),1,0));c(i)和A(j)至少要有一个为已知确定值
用lingo11破解版
sets:X/1..37/:T;endsets@for(X:@mod(T,5)=0);!也可以这样@for(X(I):@mod(T(I),5)=0);再问:由于Lingo运行时间很长,实在不想等了,能
爱吃苹果的少年,在Lingo中表达A
加那个条件很简单只要对每个缴费点分别求和就行了具体的你要发具体的程序上来
用@abs函数表示绝对值…
@bnd(0,x,100);
可以用,举例如下:model:sets:A/1..5/:T;AA(A,A):S,d;!S为决策变量,d为距离;endsetsdata:d=0111110111110111110111110;endda
语法上就不对加上#or#的意思就是左右都是两个逻辑表达式你可以把两端改成逻辑表达式然后让这个值等于1但是这样比较麻烦再问:怎么改成逻辑表达式再答:>=改成#ge#最好括起来再问:还是没用,@for里面
再答:望彩钠嘻嘻再答:望彩钠嘻嘻
首先要定义集你都没有定义只给你写一半吧另一半一样@for(column(j):@sum(row(i):x(i,j)*c(i))
sets:row/1..5/:x,y,z,R;!此处可根据自身需要修改;endsets@for(row(k)|k#ge#2:z(k)=@sum(row(i)|i#le#k:y(i)*R(i))-@su
@bin(t);再问:如果t是t带有多个值呢,比如t(1,2),t(2,3).......同样是要求他们每一个等于零或等于一,怎么表达??
@if函数结果是一个数值如果x(i,j)>=x(i-1,j)那么就是0否则就是x(i-1,j)-x(i,j)
解题思路:函数的单调性解题过程:见附件最终答案:略