当前位置:文档之家› 用matlab求解整数规划的例子

用matlab求解整数规划的例子

有四个人,要指派他们分别完成四项工作,每人做各项工作所消耗的时间如表所示:
有四个人,要指派他们分别完成四项工作,每人做各项工作所消耗的时间如表所示:
c=[15,18,21,24,19,23,22,18,26,17,16,19,19,21,23,17];
a=[15,18,21,24,zeros(1,12);
zeros(1,4),19,23,22,18,zeros(1,8);
zeros(1,8),26,17,16,19,zeros(1,4);
zeros(1,12),19,21,23,17;
15,zeros(1,3),19,zeros(1,3),26,zeros(1,3),19,zeros(1,3);
zeros(1,1),18,zeros(1,3),23,zeros(1,3),17,zeros(1,3),21,zeros(1,2);
zeros(1,2),21,zeros(1,3),22,zeros(1,3),16,zeros(1,3),23,0;
zeros(1,3),24,zeros(1,3),18,zeros(1,3),19,zeros(1,3),17];
b=[24;23;26;23;26;23;23;24];
A=[ones(1,4),zeros(1,12);
zeros(1,4),ones(1,4),zeros(1,8);
zeros(1,8),ones(1,4),zeros(1,4);
zeros(1,12),ones(1,4);
1,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1,zeros(1,3);
0,1,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1,zeros(1,2);
0,0,1,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1,0;
zeros(1,3),1,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1];
B=ones(1,8);
m=zeros(1,16);
[Q,W]=bintprog(c,a,b,A,B,m)
c=[15,18,21,24,19,23,22,18,26,17,16,19,19,21,23,17];
a=[15,18,21,24,zeros(1,12);zeros(1,4),19,23,22,18,zeros(1,8);zeros(1, 8),26,17,16,19,zeros(1,4);zeros(1,12),19,21,23,17;15,zeros(1,3),19,ze ros(1,3),26,zeros(1,3),19,zeros(1,3);zeros(1,1),18,zeros(1,3),23,zero s(1,3),17,zeros(1,3),21,zeros(1,2);zeros(1,2),21,zeros(1,3),22,zeros( 1,3),16,zeros(1,3),23,0;zeros(1,3),24,zeros(1,3),18,zeros(1,3),19,zer os(1,3),17];
b=[24;23;26;23;26;23;23;24];
A=[ones(1,4),zeros(1,12);zeros(1,4),ones(1,4),zeros(1,8);zeros(1,8),o nes(1,4),zeros(1,4);zeros(1,12),ones(1,4);1,zeros(1,3),1,zeros(1,3),1 ,zeros(1,3),1,zeros(1,3);0,1,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1,z eros(1,2);0,0,1,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1,0;zeros(1,3),1 ,zeros(1,3),1,zeros(1,3),1,zeros(1,3),1];
B=ones(1,8);
m=zeros(1,16);
[Q,W]=bintprog(c,a,b,A,B,m)
Warning: The given starting point x0 is not binary integer feasible; it will be ignored.
> In bintprog at 291
Optimization terminated.
Q =
(2,1) 1
(5,1) 1
(11,1) 1
(16,1) 1
W =
70
即甲B,乙A,丙C,丁D
最小总耗时,w=70。

相关主题