求matlab计算多目标优化问题。
1个回答
展开全部
用matlab求解题主的多目标优化问题,可以这样来考虑:
1、创建目标函数,其内容
w1 =0.4;w2=1-w1;
y =w1*0.78539*(x(1)^2-x(2)^2)+w2*x(1)^2;
2、创建约束条件函数,其内容
c(1)=(9224400*x(1)/(x(1)^4-x(2)^4))-45;
c(2)=(13050819/(x(1)^4-x(2)^4))-1;
c(3)=216379-(x(1)^4-x(2)^4)/x(1);
c(4)=-x(1)+x(2);
ceq = [];
3、初设x0的初值,即 x0 =[80,20];
4、设定上下限值,即lb=[0,0]; ub=[170,100];
5、使用fmincon最小值最优化函数,求出x(1)、x(2)的值。即
[x,fval] = fmincon(@(x) fmincon_fun(x),x0,[],[],[],[],lb,ub,@(x) fmincon_con(x))
6、验证约束条件,即
disp('x2-x1<0')
disp(x(2)-x(1))
运行代码后得到如下结果。
更多追问追答
追问
您好,可以把完整的程序发一下吗?图片里有遮挡的,看不到啊。谢谢了。弄完就采纳
追答
可以的,已到私信里。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询