|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
) S/ }6 O3 h; Y/ T' e) b0 g
- O+ }: m7 x0 w. mfunction f=fun1(x)/ h2 c0 @: k( }
f=-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;+ R. j8 P+ I) R; [! {1 m
上述代码已经保存为fun1.m文件。- m1 X) `& I, h/ y; L
; x% B- F; V) l4 X) Y再执行下述代码:
) Q+ J: i9 {1 x- x( NA=[];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];
( T+ T7 f% a, }4 Q6 L0 Ix0=[0,0,0,0,0];
W: x8 @ D4 I6 ], K: }$ n. s[x,fval]=fmincon('fun1',x0,A,b,Aeq,beq,lb,ub)$ B l% H4 y8 m$ [
$ r2 k; b7 f9 P/ K) f* ^# W: C
0 p3 U! a. u, i3 ?$ D: U运行结果为:
. a! p, h9 a7 R2 y/ s3 qx =, U3 [3 L( d3 C! b8 V
7 s% c+ ]; A6 ^. a7 y
1.4298 1.4298 1.4298 1.4298 1.4298
h1 G' o# ~0 s. Z' B3 G: J! q, F/ j2 q5 K0 j% O; H
5 Z2 R7 R A0 @0 B1 Q+ x; X3 hfval =6 R" }) `* R' j( _
' ^. A$ j' R% ^# z 2.2431
$ h0 ~4 ^. v3 S- w) N, @显然结果精度不够。* ~# G0 r; Q( W% B9 Z
中间出现了/ m+ Q1 n3 L. e
[backcolor=rgba(255, 255, 255, 0.8)]fmincon停止是因为当前步骤的大小小于+ s( X( \0 x- O, m% q7 Y, M0 k4 R
[backcolor=rgba(255, 255, 255, 0.8)]默认值的步骤尺寸公差和约束& C# _% C9 v" ? M
[backcolor=rgba(255, 255, 255, 0.8)]满意的默认值约束宽容。
C' }9 J5 s8 ?& Z: H2 ]/ D1 G1 V+ i, M2 n; }
请教大神,这个错误需要如何解决?非常感谢! |
|