|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
7 t. q7 ?" D2 o3 @1 G6 F
" x; v- S# E5 G
function f=fun1(x)( X7 m1 u- P, M, G1 s( v$ f7 b1 x
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; @1 T, l) K$ b3 d
上述代码已经保存为fun1.m文件。$ s# F# R! s6 x
& Q0 |5 z# M9 Q2 N8 L q
再执行下述代码:
7 ~) F: k3 X% N4 l, vA=[];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];' n- |7 E' w1 d! g& |
x0=[0,0,0,0,0];
- o3 g! k0 K* @4 ^% K5 F n[x,fval]=fmincon('fun1',x0,A,b,Aeq,beq,lb,ub)
7 }3 q6 [3 Q$ w# E3 C! t2 B/ c4 U2 k9 v# j8 h/ O
2 k2 T. b5 ^" v0 p运行结果为:8 ?" a, ^* s0 p
x =
F6 |" l1 Q8 f t
" w n: Y& B& [# x0 b6 t 1.4298 1.4298 1.4298 1.4298 1.4298
, B* v9 v, I& R$ R3 ~! L' {7 y! @) O3 w& d, C6 b
# Z# q- l" o* o$ E8 |% V( A* N* `fval =
1 C* U0 p3 z( d2 G u" o& t9 g4 `0 g4 W
2.2431+ u" t; ~( G. o* p% {- `
显然结果精度不够。) `0 _7 H$ B" I
中间出现了' q+ b% j) l% ]/ Q# E5 }
[backcolor=rgba(255, 255, 255, 0.8)]fmincon停止是因为当前步骤的大小小于
+ k& r1 ~; j& |% I( a[backcolor=rgba(255, 255, 255, 0.8)]默认值的步骤尺寸公差和约束
* v1 T8 \( P" B/ T8 \[backcolor=rgba(255, 255, 255, 0.8)]满意的默认值约束宽容。
; {7 T4 D* T( j( p" t$ u8 w( D% Y/ \, _9 t9 j5 a% ~1 m
请教大神,这个错误需要如何解决?非常感谢! |
|