a=[-1 -1 0 0
0 0 -1 -1
3 0 2 0
0 3 0 2];
b=[-30 -30 120 48]';
c1=[-100 -90 -80 -70];
c2=[0 3 0 2];
[x1,g1]=linprog(c1,a,b,[],[],zeros(4,1)) ;%求第一个目标函数的目标值
[x2,g2]=linprog(c2,a,b,[],[],zeros(4,1)); %求第二个目标函数的目标值
g3=[g1;g2]; %目标goal的值
[x,fval]=fgoalattain(@Fun,rand(4,1),g3,abs(g3),a,b,[],[],zeros(4,1))
function F=Fun(x)
F(1)=-100*x(1)-90*x(2)-80*x(2)-70*x(4);
F(2)=3*x(2)+2*x(4);
end
end
matlab多目标规划问题
最新推荐文章于 2024-06-20 20:03:29 发布