![]() |
求助,大家帮忙看下啊,谢谢各位了
我在做一个非线性约束优化,用的是fmincon函数
下面两个是M文件: function f=fun(x) f=80*x(1)^2+220*x(2)^2+130*x(3)^2+270*x(4)^2+130*x(5)^2+50*x(6)^2-2027520 上面是目标函数,我要求它的最小值 function[c,ceq]=mycon(x) c=[5667837663/(x(2)^4-5308416)+21409535793/(x(3)^4-5308416)+119946300159/(x(4)^4-5308416)+239028895561/(x(5)^4-5308416)+10861837323/(x(6)^4-5308416)-26800;8799166/(x(4)^4-5308416)-1629475/(x(6)^4-5308416)-0.3;1822900/(x(5)^3-5308416/x(5))-60]; ceq=[]; 上面是约束条件,只有非线性不等式约束 我在matlab命令窗口输入: x0=[70;75;80;90;110;120]; lb=[0;0;0;0;0;0;0]; ub=[]; [x,fval,exitflag,output,lambda]=fmincon(@fun,x0,[],[],[],[],lb,ub,@mycon) 为什么他给我的一组结果就是我设的初始值啊,但我需要的是不同于初始值的解啊 我没学过matlab,现在做毕业设计要用才刚开始自学的,能不能麻烦各位帮我看一下我错在哪了呀,应该怎么解决啊。 麻烦各位了,谢谢!! |
所有时间均为北京时间。现在的时间是 10:21。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.