作业帮 > 英语 > 作业

运筹学实验 Lingo

来源:学生作业帮 编辑:拍题作业网作业帮 分类:英语作业 时间:2024/04/27 20:27:20
运筹学实验 Lingo
3.
分配甲、乙、丙、丁、戊去完成A、B、C、D、E五项任务,每人完成一项任务,每项任务只能由一个人去完成,五个人分别完成各项任务所需时间如下表,试做出任务分配方案,使得总的时间最少.
A B C D E
甲 8 6 10 9 12
乙 9 12 7 11 9
丙 7 4 3 5 8
丁 9 5 8 11 8
戊 4 6 7 5 11
程序 其中x表示是否派第i个人执行第j个任务 应该很清楚
model:
sets:
task/1..5/:;
person/1..5/:;
link(person,task):time,x;
endsets
data:
time=
8 6 10 9 12
9 12 7 11 9
7 4 3 5 8
9 5 8 11 8
4 6 7 5 11;
enddata
min=@sum(link:time*x);
@for(person(i):@sum(task(j):x(i,j))=1);
@for(task(j):@sum(person(i):x(i,j))=1);
@for(link:@bin(x));
end