|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Y" @! F5 O7 s* W$ o. S" j% g- d# @6 ^- E2 z
function f=fun1(x)
0 n. Q- V& C) @) R) L/ M+ Rf=-5*sin(x(1))*sin(x(2))*sin(x(3))*sin(x(4))*sin(x(5))-sin(5*x(1)*5*x(2)*5*x(3)*5*x(4)*5*x(5))+8;! A8 H, }# P X
上述代码已经保存为fun1.m文件。* p- e; I. E4 q9 G) f
^$ g1 u1 \$ \9 L! e" B; Z) P }6 f+ Z再执行下述代码:3 Q& S$ |- D( g/ F9 S6 k( K
A=[];b=[];Aeq=[];beq=[];lb=[0,0,0,0,0];ub=[0.9*pi,0.9*pi,0.9*pi,0.9*pi,0.9*pi];2 f' W2 E" O: i. C/ }! _' S s
x0=[0,0,0,0,0];
/ |- t |. o' h[x,fval]=fmincon('fun1',x0,A,b,Aeq,beq,lb,ub)
d$ }6 I/ U, e7 c7 e5 Q
, N* g6 d7 N$ Q( N3 J3 j& v: i* p5 I3 h3 H. |" M7 t+ i! M
运行结果为:
/ F- j" R, R# ~+ o8 mx =% j$ _7 M! A2 Y& B) U1 c
' l8 h4 d4 x- s 1.4298 1.4298 1.4298 1.4298 1.42983 \' P" _ Y3 M# {3 u3 d) Q
* C T4 J& @* ~/ Z5 Q2 o
7 U$ y. P4 l' o) Nfval =$ y I! i& D/ R7 F8 c4 J0 e% f
$ \# F: ~2 L+ [% K1 y) n3 Q
2.2431
# k3 d: u- [* g- k1 O( L: `3 K8 T显然结果精度不够。
" x f7 q9 k' ?4 d中间出现了
1 W7 j$ {# }2 R/ j8 W* W[backcolor=rgba(255, 255, 255, 0.8)]fmincon停止是因为当前步骤的大小小于8 q) H- H' S2 n1 \* ?% H
[backcolor=rgba(255, 255, 255, 0.8)]默认值的步骤尺寸公差和约束, a3 c2 E4 _! s# e
[backcolor=rgba(255, 255, 255, 0.8)]满意的默认值约束宽容。* P: E0 f) P1 J
+ B' b7 l( E% u3 a5 `$ l
请教大神,这个错误需要如何解决?非常感谢! |
|