
2个回答
展开全部
你的约束条件是有问题的,m只有十六个数据,它应该有三十个数据。
为能够求解,我在m后面补了14个数据,值都是5000;你可以更改。
m变换之后的求解程序如下:
model:
!非线性规划问题;
sets:
ab/1..30/:x,m,a;
endsets
!目标函数;
min=@sum(ab(I):a(I)-1856.1667);
!约束条件;
@sum(ab:x)=60;
@for(ab(I):a(I)=m(I)/(x(I)+1));
@for(ab(I):x(I)<=8);
@for(ab(I):x(I)>=0);
data:
m=6232 1877 1589 4094 519 2532 2349 2118 5258 3664 16282 4303 6074 1777 1167 7697 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000;
enddata
end
部分的求解结果如下:
Local optimal solution found.
Objective value: -13353.59
Total solver iterations: 122
Variable Value Reduced Cost
X( 1) 2.640019 0.000000
X( 2) 0.9976621 0.2536740E-07
X( 3) 0.8380268 0.1908018E-07
X( 4) 1.950284 0.4665935E-08
X( 5) 0.5044559E-01 0.2091082E-07
X( 6) 1.320180 0.6879645E-08
X( 7) 1.234763 -0.9923895E-08
X( 8) 1.122037 -0.1857870E-07
X( 9) 2.343491 -0.1109379E-07
X( 10) 1.791050 -0.2341829E-07
X( 11) 4.883608 0.000000
X( 12) 2.024653 0.000000
X( 13) 2.593580 0.000000
X( 14) 0.9437195 0.3636154E-07
X( 15) 0.5751623 0.4374647E-07
X( 16) 3.045299 0.000000
X( 17) 2.260430 -0.1647891E-08
X( 18) 2.260430 -0.1136868E-08
X( 19) 2.260430 -0.8018560E-08
X( 20) 2.260430 -0.1200988E-08
X( 21) 2.260430 -0.1121919E-08
X( 22) 2.260430 -0.1647891E-08
X( 23) 2.260430 -0.5214417E-08
X( 24) 2.260430 -0.1647891E-08
X( 25) 2.260430 -0.1647891E-08
X( 26) 2.260430 0.1888736E-08
X( 27) 2.260430 0.1888623E-08
X( 28) 2.260430 0.1888623E-08
X( 29) 2.260430 0.1888623E-08
X( 30) 2.260430 0.1888623E-08
A( 1) 1712.079 0.000000
A( 2) 939.5984 0.000000
A( 3) 864.5141 0.000000
A( 4) 1387.663 0.000000
A( 5) 494.0760 0.000000
A( 6) 1091.295 0.000000
A( 7) 1051.118 0.000000
A( 8) 998.0978 0.000000
A( 9) 1572.608 0.000000
A( 10) 1312.768 0.000000
A( 11) 2767.349 0.000000
A( 12) 1422.643 0.000000
A( 13) 1690.237 0.000000
A( 14) 914.2266 0.000000
A( 15) 740.8760 0.000000
A( 16) 1902.702 0.000000
A( 17) 1533.540 0.000000
A( 18) 1533.540 0.000000
A( 19) 1533.540 0.000000
A( 20) 1533.540 0.000000
A( 21) 1533.540 0.000000
A( 22) 1533.540 0.000000
A( 23) 1533.540 0.000000
A( 24) 1533.540 0.000000
A( 25) 1533.540 0.000000
A( 26) 1533.540 0.000000
A( 27) 1533.540 0.000000
A( 28) 1533.540 0.000000
A( 29) 1533.540 0.000000
A( 30) 1533.540 0.000000
不知道以上程序能不能解决你的问题。
为能够求解,我在m后面补了14个数据,值都是5000;你可以更改。
m变换之后的求解程序如下:
model:
!非线性规划问题;
sets:
ab/1..30/:x,m,a;
endsets
!目标函数;
min=@sum(ab(I):a(I)-1856.1667);
!约束条件;
@sum(ab:x)=60;
@for(ab(I):a(I)=m(I)/(x(I)+1));
@for(ab(I):x(I)<=8);
@for(ab(I):x(I)>=0);
data:
m=6232 1877 1589 4094 519 2532 2349 2118 5258 3664 16282 4303 6074 1777 1167 7697 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000 5000;
enddata
end
部分的求解结果如下:
Local optimal solution found.
Objective value: -13353.59
Total solver iterations: 122
Variable Value Reduced Cost
X( 1) 2.640019 0.000000
X( 2) 0.9976621 0.2536740E-07
X( 3) 0.8380268 0.1908018E-07
X( 4) 1.950284 0.4665935E-08
X( 5) 0.5044559E-01 0.2091082E-07
X( 6) 1.320180 0.6879645E-08
X( 7) 1.234763 -0.9923895E-08
X( 8) 1.122037 -0.1857870E-07
X( 9) 2.343491 -0.1109379E-07
X( 10) 1.791050 -0.2341829E-07
X( 11) 4.883608 0.000000
X( 12) 2.024653 0.000000
X( 13) 2.593580 0.000000
X( 14) 0.9437195 0.3636154E-07
X( 15) 0.5751623 0.4374647E-07
X( 16) 3.045299 0.000000
X( 17) 2.260430 -0.1647891E-08
X( 18) 2.260430 -0.1136868E-08
X( 19) 2.260430 -0.8018560E-08
X( 20) 2.260430 -0.1200988E-08
X( 21) 2.260430 -0.1121919E-08
X( 22) 2.260430 -0.1647891E-08
X( 23) 2.260430 -0.5214417E-08
X( 24) 2.260430 -0.1647891E-08
X( 25) 2.260430 -0.1647891E-08
X( 26) 2.260430 0.1888736E-08
X( 27) 2.260430 0.1888623E-08
X( 28) 2.260430 0.1888623E-08
X( 29) 2.260430 0.1888623E-08
X( 30) 2.260430 0.1888623E-08
A( 1) 1712.079 0.000000
A( 2) 939.5984 0.000000
A( 3) 864.5141 0.000000
A( 4) 1387.663 0.000000
A( 5) 494.0760 0.000000
A( 6) 1091.295 0.000000
A( 7) 1051.118 0.000000
A( 8) 998.0978 0.000000
A( 9) 1572.608 0.000000
A( 10) 1312.768 0.000000
A( 11) 2767.349 0.000000
A( 12) 1422.643 0.000000
A( 13) 1690.237 0.000000
A( 14) 914.2266 0.000000
A( 15) 740.8760 0.000000
A( 16) 1902.702 0.000000
A( 17) 1533.540 0.000000
A( 18) 1533.540 0.000000
A( 19) 1533.540 0.000000
A( 20) 1533.540 0.000000
A( 21) 1533.540 0.000000
A( 22) 1533.540 0.000000
A( 23) 1533.540 0.000000
A( 24) 1533.540 0.000000
A( 25) 1533.540 0.000000
A( 26) 1533.540 0.000000
A( 27) 1533.540 0.000000
A( 28) 1533.540 0.000000
A( 29) 1533.540 0.000000
A( 30) 1533.540 0.000000
不知道以上程序能不能解决你的问题。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询