lingo不太会,现在想将一个整数规划改成lingo,
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/12 14:23:20
lingo不太会,现在想将一个整数规划改成lingo,
已知数据zuhe(22*3的一个矩阵):
0\x055 0
1\x053 0
2\x052 0
3\x051 0
4\x050 0
0\x055 0
1\x053 0
2\x052 0
3\x051 0
4\x050 0
0\x0512 0
2\x0510 0
4\x058 0
6\x054 0
8\x052 0
10\x050 0
0\x056 0
1\x055 0
2\x054 0
3\x052 0
4\x051 0
5\x050 0
变量x(1*22的一个数组)
目标函数min=sum(x(1:22));
约束1:x*zuhe(:,1)>=100;
约束2:x*zuhe(:,2)>=68;
约束3:sum(x(1:5))=sum(x(6:10));
约束4:sum(x(11:16))=sum(x(17:22));
约束5:0.2*sum(x(1:5))
已知数据zuhe(22*3的一个矩阵):
0\x055 0
1\x053 0
2\x052 0
3\x051 0
4\x050 0
0\x055 0
1\x053 0
2\x052 0
3\x051 0
4\x050 0
0\x0512 0
2\x0510 0
4\x058 0
6\x054 0
8\x052 0
10\x050 0
0\x056 0
1\x055 0
2\x054 0
3\x052 0
4\x051 0
5\x050 0
变量x(1*22的一个数组)
目标函数min=sum(x(1:22));
约束1:x*zuhe(:,1)>=100;
约束2:x*zuhe(:,2)>=68;
约束3:sum(x(1:5))=sum(x(6:10));
约束4:sum(x(11:16))=sum(x(17:22));
约束5:0.2*sum(x(1:5))
![lingo不太会,现在想将一个整数规划改成lingo,](/uploads/image/z/3255448-40-8.jpg?t=lingo%E4%B8%8D%E5%A4%AA%E4%BC%9A%2C%E7%8E%B0%E5%9C%A8%E6%83%B3%E5%B0%86%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0%E8%A7%84%E5%88%92%E6%94%B9%E6%88%90lingo%2C)
sets:
s1/1..22/:x;
s2/1..3/:;
s12(s1,s2):zuhe;
endsets
data:
!自己加数据;
enddata
min=@sum(s1:x);
@sum(s1(i):x(i)*zuhe(i,1))>=100;
@sum(s1(i):x(i)*zuhe(i,2))>=68;
@sum(s1(i)|i#le#5:x(i))=@sum(s1(i)|i#ge#6#and#i#le#10:x(i));
@sum(s1(i)|i#ge#11#and#i#le#16:x(i))=@sum(s1(i)|i#ge#17:x(i));
@for(s1:@gin(x));
s1/1..22/:x;
s2/1..3/:;
s12(s1,s2):zuhe;
endsets
data:
!自己加数据;
enddata
min=@sum(s1:x);
@sum(s1(i):x(i)*zuhe(i,1))>=100;
@sum(s1(i):x(i)*zuhe(i,2))>=68;
@sum(s1(i)|i#le#5:x(i))=@sum(s1(i)|i#ge#6#and#i#le#10:x(i));
@sum(s1(i)|i#ge#11#and#i#le#16:x(i))=@sum(s1(i)|i#ge#17:x(i));
@for(s1:@gin(x));