两个matlab版本的结果不吻合
我电脑上装了一个matlab7.1和matlabR2007,刚才在运行一个完全相同的程序时出现的结果差异较大,原因我不清楚。a=4; bb=160; c=100; d=0.5; e=0.0586; f=0.057; g=0;
minQ=0.805*10^8; maxQ=1.3*10^8;
minG=260*10^8; maxG=560*10^8;
minCOD=0; maxCOD=3800*10^4;
minP=8*10^4; maxP=12*10^4;
ff=';
A=;
b=;
Aeq=;
beq=; lb=;
digits(5);
=linprog(ff,A,b,Aeq,beq,lb)
vpa(x)
matlab7.1结果:
fval =
1.0196e+008
ans =
3862.6
.10179e9
1825.6
815.22
93117.
67998.
matlabR2007结果:
fval =
1.7511e+008
ans =
27.860
.16274e9
13.193
5.8818
.12373e8
322.47 Matlab R2008a运行结果如下:
Exiting: One or more of the residuals, duality gap, or total relative error
has stalled:
the primal appears to be infeasible and the dual unbounded since
the dual objective > 1e+10
and the primal objective > -1e+6.
x =
1.0e+008 *
0.0000
1.6277
0.0000
0.0000
0.0701
0.0645
fval =
1.7623e+008
ans =
.20424e-2
.16277e9
.96519e-3
.43104e-3
.70095e7
.64491e7 刚才我又运行了几个很大的计算程序比较了一下matlab7.1和matlabR2007的计算结果,发现二者的结果完全相同。所以我估计可能是linprog这种线性规划函数的原因(这种函数求解的不是精确结果而是很多约束条件下的最优值)。另外有可能不同版本的函数库里做了一些修改。 有没有可能是数据格式或精度设置不同导致的?
回复 3楼 的帖子
这种规划问题出现不同的结论有可能,优化还可能出现局部最优化解和全局最优化解。
页:
[1]