24小时热门版块排行榜    

查看: 264  |  回复: 0

dage16wo

木虫 (小有名气)

[求助] fmincon优化的问题

function f=objtctfun(x)
global G1 L1 G4 L4 Gg Gd Gw G05 L05 G04 L04 G03 L03 G02 L02 G01 L01 k l a c
f=(G1*L1+G4*L4+(Gg+Gd)*L1+Gw*L4+G05*L05+G04*L04+G03*L03+G02*L02+G01*L01)*cos(k*pi/180)*(l+x(3))/(sqrt(a^2*c^2+x(2)^2*x(1)^2-2*a*c*x(1)*x(2)));

以上为目标函数



function [c,ceq]=conobject(x)
global a c1 k l h1 k1 k2 pi
c=[(l+x(3))-sqrt(a^2+x(1)^2)-sqrt(x(2)^2+c1^2);
sqrt(x(2)^2+c1^2)-sqrt(a^2+x(1)^2)-(l+x(3));
sqrt(x(2)^2+c1^2)-sqrt(a^2+x(1)^2)-(l+x(3));
(l+2*x(3))-(sqrt(a^2+x(1)^2)+sqrt(x(2)^2+c1^2));
(sqrt(x(2)^2+c1^2))-(sqrt(a^2+x(1)^2)+(l+2*x(3)));
sqrt(x(2)^2+c1^2)-(sqrt(a^2+x(1)^2)+(l+2*x(3)));
x(1)-h1;
c1-x(1);
x(2)-k2;
k1-x(2);
a^2+x(1)^2+c1^2+x(2)^2-2*(a*x(2)+x(1)*c1)*cos(k*pi/180)+2*sqrt(a^2*c1^2+x(2)^2*x(1)^2-2*a*c1*x(1)*x(2))*sin(k*pi/180) -(l+2*x(3))^2;
];
ceq=a^2+x(1)^2+c1^2+x(2)^2-2*(a*x(2)+x(1)*c1)-(l+x(3))^2;



以上为约束函数



G1=410  L1=21550  G4=200   L4=20730   Gw=49.79    Gg=199.16   Gd=100  G05=0    L05=0    G04=0  L04=0  G03=830.72  

L03=17707   G02=1214.5  L02=11517   G01= 1659.95   L01=4445

a=100   c1=390   k=30   l=500   h1=4000   k1=1000  k2=2500  

初始值x0=[500:500:500]  非线性优化为题


出现问题

??? Error using ==> vertcat
CAT arguments dimensions are not consistent.

Error in ==> conobject at 3
c=[(l+x(3))-sqrt(a^2+x(1)^2)-sqrt(x(2)^2+c1^2);

Error in ==> fmincon at 654
        [ctmp,ceqtmp] = feval(confcn{3},X,varargin{:});

Caused by:
    Failure in initial user-supplied nonlinear constraint function evaluation. FMINCON cannot continue.
回复此楼
loveisalwayshere!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 dage16wo 的主题更新
信息提示
请填处理意见