24小时热门版块排行榜    

查看: 1858  |  回复: 4

qinzhen724

新虫 (小有名气)

[求助] Matlab中用fmincon求解最小值问题,调试了好多次,一直找不到可行解,求大神指导 已有2人参与

用fmincon求解最小值问题(1个目标函数、9个变量、6个线性等式约束),一直都是No feasible solution,不知道本身无解还是什么问题。

x0=[4000;4000;2000;500;100;10;10;10;10];
A=[]; b=[];
Aeq=[-88.840439250000020,    20.679950666666663,   -2.158236236666667e+02,    -3.601469919166667e+02,   -36.694763666666690,   21.462819666666660,   -13.261596999999995,   7.477251833333336,   -1.023975406666667e+02;  
    0.012,    0,      0,     0.012,  0.012,    0,      0,      0,    0.012;  
    0,      0.002,  0.002,     0,    0.004,    0,    0.003,  0.002,    0;      
    0.016,    0,    0.016,   0.032,    0,      0,      0,      0,    0.016;            
    0,        0,      0,       0,      0,    0.028,  0.014,    0,      0;  
    0,        0,      0,       0,      0,      0,      0,   0.032,   0.032]
beq=[4588048.12066667;
         171.600000000000;
         21.5666666666667;
         241.933333333333;
         2.10000000000000;
         0.600000000000000]
VLB=[0.001;0.001;0.001;0.001;0.001;0.001;0.001;0.001;0.001];
VUB=[6601.833333;4978.305556;4978.305556;5172.684028;2489.152778;34.625;69.25;8.65625;8.65625];
options = optimoptions(@fmincon,'Algorithm','interior-point','MaxIter',5000);
[x,fval,exitflag,output]=fmincon(@Gibbsfun,x0,A,b,Aeq,beq,VLB,VUB,[],options)

%%目标函数为myobjfun
function G=myobjfun(x)
    deltaG1=-8.841665127258336e+04; deltaG2=-1.661952727160000e+05;
    deltaG3=5.504948170966668e+04; deltaG4=-1.666712325249982e+03;
    deltaG5=1.092642304030001e+05; deltaG6=-2.281491138470000e+05;
    deltaG7=1.169078584030000e+05; deltaG8=1.087887085851667e+05;
    deltaG9=4.941138012599998e+04;
G=x(1)*(deltaG1+8314*log(x(1)/sum(x)*1.2))+x(2)*(deltaG2+8314*log(x(2)/sum(x)*1.2))...
+x(3)*(deltaG3+8314*log(x(3)/sum(x)*1.2))+x(4)*(deltaG4+8314*log(x(4)/sum(x)*1.2))...
+x(5)*(deltaG5+8314*log(x(5)/sum(x)*1.2))+x(6)*(deltaG6+8314*log(x(6)/sum(x)*1.2))...
+x(7)*(deltaG7+8314*log(x(7)/sum(x)*1.2))+x(8)*(deltaG8+8314*log(x(8)/sum(x)*1.2))...
+x(9)*(deltaG9+8314*log(x(9)/sum(x)*1.2))

计算结果如下:
No feasible solution found.
fmincon stopped because the size of the current step is less than
the default value of the step size tolerance but constraints are not
satisfied to within the default value of the constraint tolerance.

<stopping criteria details>
x =
   1.0e+03 *

   4.666024308553983
   3.857233354391819
   2.387214185792911
   0.000001000000005
   0.000001000000001
   0.015465337002847
   0.000001000000003
   0.008656249999525
   0.006364985001793

fval =
    -1.006342210855910e+09

exitflag =
    -2

output =

         iterations: 70
          funcCount: 710
    constrviolation: 5.438285104570996e+06
           stepsize: 9.313859771460607e-10
          algorithm: 'interior-point'
      firstorderopt: 0.043644013275751
       cgiterations: 76
            message: 'No feasible solution found.
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
内容已删除
2楼2016-01-22 20:36:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qinzhen724

新虫 (小有名气)

引用回帖:
2楼: Originally posted by dingd at 2016-01-22 20:36:15
除了Matlab代码,把原问题用文本和图片描述下

谢谢你的回答。这就是一个简单气化炉的吉布斯模型的求解过程,等式约束是根据质量守恒和能量守恒得出,因为建模过程涉及不少物理化学的参数,不太好描述、
3楼2016-01-27 09:10:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wang_chuan

银虫 (正式写手)

【答案】应助回帖

你采用的是MATLAB内置的寻优方法,内点法,此类方法要求被求对象导数存在且容易求得,你的问题不一定符合这个要求。也就是说,你待求解的问题非线性强,不能用数学方法来做,或找不到可行解。建议用粒子群算法自己写一下程序,几十行定能求解出来。
4楼2016-01-27 22:30:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qinzhen724

新虫 (小有名气)

引用回帖:
4楼: Originally posted by wang_chuan at 2016-01-27 22:30:02
你采用的是MATLAB内置的寻优方法,内点法,此类方法要求被求对象导数存在且容易求得,你的问题不一定符合这个要求。也就是说,你待求解的问题非线性强,不能用数学方法来做,或找不到可行解。建议用粒子群算法自己写 ...

好的,我试试,谢谢
5楼2016-02-01 23:25:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 qinzhen724 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 xvJS1BYDxvBS 2026-10-31 3/150 2026-11-01 12:53 by BCdvBAEpt3zm
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 1uaZt2kAZj2S 2026-10-31 7/350 2026-11-01 12:45 by BCdvBAEpt3zm
[考博] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-31 6/300 2026-11-01 12:40 by BCdvBAEpt3zm
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-31 7/350 2026-11-01 12:40 by BCdvBAEpt3zm
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-31 4/200 2026-11-01 12:38 by BCdvBAEpt3zm
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 1uaZt2kAZj2S 2026-10-30 10/500 2026-11-01 12:27 by BCdvBAEpt3zm
[硕博家园] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-30 13/650 2026-11-01 12:14 by BCdvBAEpt3zm
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-30 16/800 2026-11-01 12:14 by BCdvBAEpt3zm
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 5/250 2026-11-01 11:14 by BCdvBAEpt3zm
[考研] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 xvJS1BYDxvBS 2026-10-31 9/450 2026-11-01 10:56 by BCdvBAEpt3zm
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 xvJS1BYDxvBS 2026-10-31 9/450 2026-11-01 10:53 by BCdvBAEpt3zm
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 1uaZt2kAZj2S 2026-10-31 7/350 2026-11-01 10:48 by BCdvBAEpt3zm
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 1uaZt2kAZj2S 2026-10-30 13/650 2026-11-01 10:27 by BCdvBAEpt3zm
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 1uaZt2kAZj2S 2026-10-30 16/800 2026-11-01 10:27 by BCdvBAEpt3zm
[论文投稿] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 X5bHxOULxFqb 2026-10-30 26/1300 2026-11-01 10:22 by BCdvBAEpt3zm
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 X5bHxOULxFqb 2026-10-30 21/1050 2026-11-01 06:46 by YXM1FDCSE8Bn
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-31 8/400 2026-11-01 03:59 by YXM1FDCSE8Bn
[找工作] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-31 6/300 2026-11-01 03:56 by YXM1FDCSE8Bn
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 1uaZt2kAZj2S 2026-10-30 12/600 2026-11-01 02:19 by YXM1FDCSE8Bn
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 X5bHxOULxFqb 2026-10-30 12/600 2026-11-01 00:15 by YXM1FDCSE8Bn
信息提示
请填处理意见