数学建模社区-数学中国

标题: 急求高手指点!!! [打印本页]

作者: 侠客雪飞    时间: 2011-2-13 23:27
标题: 急求高手指点!!!
想要用遗传工具箱解优化问题,从网上找到的方法,目标函数是:
, |3 P: v7 ?, g2 o- h6 u2 X( g* a
9 q' f" E* V; q/ s: sfunction z=dd(x);  v) O/ y& T0 |4 K# b" F
f=842*x(1)*x(6)+588*x(2)*x(7)+498*x(3)*x(8)+62.2*x(4)*x(9)
+ Z$ I7 ]' _( i: y' s5 d5 ~+ F+190.2*x(5)*x(10);
. c* Y3 \& {6 \* L5 X# Mg(1)=-x(1)+x(6);! B( @  S3 L1 }9 e" G
g(2)=-x(2)+x(7);$ ^- L- s3 Y8 ?/ l! g1 D" e
g(3)=-x(3)+x(8);
/ }5 \5 P& _: n! Z6 I4 z" gg(4)=-x(4)+x(9);, j2 m* \  w" g, X9 E. B  ]
g(5)=-x(5)+x(10);
% p9 T$ n/ I# Q& U; x- x5 Pg(6)=x(1)-0.73;
! m( b! |2 ]7 d: Vg(7)=x(2)-0.33;
  |/ H  `' v, a& E. pg(8)=x(3)-0.93;
5 ]* _, O, ]! M. c1 p5 Wg(9)=x(4)-0.85;4 B/ _  }: K3 J( ]3 g: F  [1 _3 D, y
g(10)=x(5)-1;1 b) ~8 E& T4 j7 V+ W' G3 b; Z: i
g(11)=842*x(1)+588*x(2)+498*x(3)+62.2*x(4)+190.2*x(5)-835.706;4 |  o0 g6 T. S
if(g(1)<0) &(g(2)<0) &(g(3)<0) &(g(4)<0) &(g(5)<0) &(g(6)<0) &(g(7)<0) &(g(8)<0) &(g(9)<0) &(g(10)<0) &(g(11)>0) &(g(12)>0) & (x>=0) z=f;
" j1 U7 Y, C4 l9 u  c, S" Delse z=-100;
+ P" l3 ]/ S8 n' H) Y3 {  D1 ]end
# m6 c) Z- I# o$ B" Jz=-z;
+ p5 D5 y4 }$ g/ V5 V& O9 v& y* s. a, A- ?5 a
主程序里是:# \& |" E, E6 M/ r
options=gaoptimset5 J7 z$ K% ]! X7 o9 u; ~
('populationsize',20,'generations',100,'plotfcns',@gaplotbestf);. C& }6 T0 E5 R/ W- X( t# b8 W. c& }
[x,z,reason]=ga(@dd,10,options)
- Z* Z) B' A# a& a9 |但结果每算一次都不一样,而且z值就是输进去的那个值,此时是100.不知道为什么?用网上所给的例子就可以算出结果。
- N9 E6 y2 O' T5 ]
' R" D5 j( i1 p% Q; R2 R; C跪求指点!
  W* U: v) \2 Q/ p; Q3 l




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5