![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
matlab多目标优化问题
在多目标优化中,变量本来是x(1),x(2),x(3)......,理论上matlab中约束函数中的变量只能有x(1),x(2),x(3)......才能进行优化。但是其...
在多目标优化中,变量本来是x(1),x(2),x(3)......,理论上matlab中约束函数中的变量只能有x(1),x(2),x(3)......才能进行优化。
但是其中有一条约束f(x(1),x(2),x(3)......x_a,y_a,x_b,y_b)中有参数是x_a,y_a,x_b,y_b,且x_a,y_a,x_b,y_b可以用四个复杂方程解出来,是x(1),x(2),x(3)...的函数。
[x_a,y_a,x_b,y_b]=solve('(x_a-x(7))^2+(y_a-x(8))^2=(x(1)-x(7))^2+(x(2)-x(8))^2',...
'(x_a-(x(5)*x(0)-x(6)*(1-x(0)^2)^0.5))^2+(y_a-(x(5)*(1-x(0)^2)^0.5+x(6)*x(0)))^2=(x(1)-x(5))^2+(x(2)-x(6))^2',...
'(x_a-x_b)^2+(y_a-y_b)^2=(x(1)-x(3))^2+(x(2)-x(4))^2',...
'(x_b-(x(5)*x(0)-x(6)*(1-x(0)^2)^0.5))^2+(y_b-(x(5)*(1-x(0)^2)^0.5+x(6)*x(0)))^2=(x(3)-x(5))^2+(x(4)-x(6))^2',...
'x_a','y_a','x_b','y_b');
但在matlab求解中x_a,y_a,x_b,y_b一直求解不出来,显示的是一直在忙中。可以有什么方法可以不用求出x_a,y_a,x_b,y_b关于x(1),x(2),x(3)...具体表达式,让其自己迭代,最后得到约束函数b<f(x(1),x(2),x(3)......x_a,y_a,x_b,y_b)<a在优化程序中自动识别。 展开
但是其中有一条约束f(x(1),x(2),x(3)......x_a,y_a,x_b,y_b)中有参数是x_a,y_a,x_b,y_b,且x_a,y_a,x_b,y_b可以用四个复杂方程解出来,是x(1),x(2),x(3)...的函数。
[x_a,y_a,x_b,y_b]=solve('(x_a-x(7))^2+(y_a-x(8))^2=(x(1)-x(7))^2+(x(2)-x(8))^2',...
'(x_a-(x(5)*x(0)-x(6)*(1-x(0)^2)^0.5))^2+(y_a-(x(5)*(1-x(0)^2)^0.5+x(6)*x(0)))^2=(x(1)-x(5))^2+(x(2)-x(6))^2',...
'(x_a-x_b)^2+(y_a-y_b)^2=(x(1)-x(3))^2+(x(2)-x(4))^2',...
'(x_b-(x(5)*x(0)-x(6)*(1-x(0)^2)^0.5))^2+(y_b-(x(5)*(1-x(0)^2)^0.5+x(6)*x(0)))^2=(x(3)-x(5))^2+(x(4)-x(6))^2',...
'x_a','y_a','x_b','y_b');
但在matlab求解中x_a,y_a,x_b,y_b一直求解不出来,显示的是一直在忙中。可以有什么方法可以不用求出x_a,y_a,x_b,y_b关于x(1),x(2),x(3)...具体表达式,让其自己迭代,最后得到约束函数b<f(x(1),x(2),x(3)......x_a,y_a,x_b,y_b)<a在优化程序中自动识别。 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询