EDA365电子论坛网
标题:
请教大神,这个错误需要如何解决?
[打印本页]
作者:
rongunac
时间:
2020-8-20 15:16
标题:
请教大神,这个错误需要如何解决?
g5 q8 t' F: L7 s L5 F
* Y! r; Q% P: ]- M, B% d: ~$ X
function f=fun1(x)
5 m A1 M8 l! G4 l3 m
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;
, J3 G) j$ I! O3 `
上述代码已经保存为fun1.m文件。
4 y8 a* m" C+ [
5 g8 s1 Q7 S. N3 F/ [
再执行下述代码:
9 M8 @2 B/ C h- I9 n L H
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];
) o3 ~/ J$ d) w% A
x0=[0,0,0,0,0];
- f- {# w! A% P0 A
[x,fval]=fmincon('fun1',x0,A,b,Aeq,beq,lb,ub)
& `' j9 }* |( }: ^* d, X0 c
/ K6 U, w5 v* h. a) n: j: ?3 ]: Y
3 {4 a; d% b) q$ k% _
运行结果为:
" j7 o) k% T; o2 ]; t$ x
x =
: e8 t3 I5 c7 s6 h6 x$ q
- m0 a: P% y: ]* v/ r0 b
1.4298 1.4298 1.4298 1.4298 1.4298
# v( v+ L& C) E3 V8 ]
7 O- J) a- ~$ L! K. [: S1 l
4 X( w Y, ]5 |4 O
fval =
) p( o. f; t( @& P2 I! o
- V+ `& E' Z5 d" i6 J2 Q1 K; u
2.2431
0 _7 j' H' a! W( K3 [' ^6 Q
显然结果精度不够。
% ]" w) \6 e& O' ?) t' a' ~8 u+ r) P
中间出现了
$ N" A9 q" |( k( j. |
[backcolor=rgba(255, 255, 255, 0.8)]fmincon停止是因为当前步骤的大小小于
6 W, k, a4 j3 b
[backcolor=rgba(255, 255, 255, 0.8)]默认值的步骤尺寸公差和约束
# w! {0 g" H1 _
[backcolor=rgba(255, 255, 255, 0.8)]满意的默认值约束宽容。
& q( s. w* U& T3 W* [
7 N! }, H0 |% @: o' b, |, }0 t9 Z
请教大神,这个错误需要如何解决?非常感谢!
作者:
Colbie
时间:
2020-8-20 15:54
有可能是因为没有设置具体的约束数值。
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2