关于lingo的问题,约束条件不知道怎么改,
@for(sss(i):@sum(ttt(j):x(i,j))=e(i););
@for(ttt(j):@sum(sss(i):a(i,j)*x(i,j))=0);
@for(ttt(j):g(j)*(y(j)-20000)>=0);
@for(ttt(j):@bin(g(j)));
目的是保证y的取值要么大于等于20000,要么为0,y的取值会影响x的取值,即会影响到目标函数,怎么改啊.注:可以不要0-1变量,换用其他方法
人气:144 ℃ 时间:2020-07-22 21:26:51
解答
y(j)=y1(j)*y2(j);
y1(j)>=20000;@bin(y2(j));这两个语句直接加上去就行了吗?不用加循环吗?那加这个的时候我还需要写0-1变量吗?循环自己加 集定义自己写 0-1变量我不都写了吗
推荐
猜你喜欢