找回密码
 注册
关于网站域名变更的通知
查看: 504|回复: 4
打印 上一主题 下一主题

多维函数

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-8 13:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
函数如下:y=(0.0206*x(2)^2/(2*9.81*x(1))+(0.5*(1-(x(2)/(4*x(3)*9.81*(x(4)-1040)/(3*0.43*1040))^0.5*(1-(x(3)/x(1))^2)*2.7183^(-(2.65*x(5)-3.32*x(5)^2.2))))+((0.25*(x(2)/(4*x(3)*9.81*(x(4)-1040)/(3*0.43*1040))^0.5*(1-(x(3)/x(1))^2)*2.7183^(-(2.65*x(5)-3.32*x(5)^2.2)))-1)^2+x(5)*x(2)/(4*x(3)*9.81*(x(4)-1040)/(3*0.43*1040))^0.5*(1-(x(3)/x(1))^2)*2.7183^(-(2.65*x(5)-3.32*x(5)^2.2)))^0.5)*(x(4)/1040-1)+1.8413*(x(2)/(9.81*x(1)))^2.7736*(0.5*(1-(x(2)/(4*x(3)*9.81*(x(4)-1040)/(3*0.43*1040))^0.5*(1-(x(3)/x(1))^2)*2.7183^(-(2.65*x(5)-3.32*x(5)^2.2))))+((0.25*(x(2)/(4*x(3)*9.81*(x(4)-1040)/(3*0.43*1040))^0.5*(1-(x(3)/x(1))^2)*2.7183^(-(2.65*x(5)-3.32*x(5)^2.2)))-1)^2+x(5)*x(2)/(4*x(3)*9.81*(x(4)-1040)/(3*0.43*1040))^0.5*(1-(x(3)/x(1))^2)*2.7183^(-(2.65*x(5)-3.32*x(5)^2.2)))^0.5)*0.43*x(3)/x(1)*(x(4)/1040-1))/(x(4)*x(5)/1040);
% Q0 x' z- H+ }) p% N$ n8 y
6 }9 ~! p# Z" n; k$ b7 l' n: n% X" j函数中有五个自变量,自变量之间没有任何的约束关系,但是自变量有范围,x(1)=[0.2,0.4],x(2)=[1.234,3],x(3)=[0.01,0.04],x(4)=[1190,1398],x(5)=[0.15,0.4], 劳烦大神指点看怎么编程,能求出自变量范围内的结果 ,谢谢
# p! r/ C+ E" \8 u
' F6 U, B4 I4 X, B; k
  w, h9 f/ N& \

该用户从未签到

2#
 楼主| 发表于 2020-7-8 13:57 | 只看该作者
fitnessFunction=@minf_5;nvars=5;
! g* R4 f' K+ `! C" T" Ioptions=gaoptimset;5 x5 S, ~& T* d) e5 R7 L+ S  C6 |
options=gaoptimset(options,'PopInitRange',[0;1]);
/ I- K! E; D! D1 E( n0 Soptions = gaoptimset(options,'PopulationSize',100);5 z9 k4 t4 |4 }6 U' z4 L. s
options=gaoptimset(options,'CrossoverFraction',0.9);% i, W5 P+ x! H% a$ ?, P' y
options=gaoptimset(options,'Generations',1000);% M: Y0 u3 H; T( F$ O8 l  \9 s
options=gaoptimset(options,'CrossoverFcn',{@crossoverheuristic,0.9});' s7 P) c7 ^3 N; O
options=gaoptimset(options,'MutationFcn',{@mutationuniform,0.02});; r& y+ X, c" k* {0 w3 k/ I( T
[x fval reason output population scores]=ga(@minf_5,nvars,options)* ?$ c% u- e, s8 R% E: i; z7 K- e
Optimization terminated: average change in the fitness value less than options.TolFun.& |) A* l& J0 a# ^
$ D5 V) Y8 h4 m" A) g4 ^
x =% r# O2 ~/ M5 K/ g

6 [! x% s2 a3 F. O$ K5 O# P    0.6026    0.0979    0.2421    0.9712    0.9449' p1 D0 L6 o: W9 h

6 {6 H6 F! G6 m, ?3 z! |0 b1 r# U! c4 X  k
fval =
) X5 W2 o5 e8 N" ~5 H
4 B( r" F4 I$ E$ r9 {$ J% S  -1.6983e+03 - 1.4575e+01i2 ^; p' [. m/ W7 B1 G% P; Y

2 r2 T. b+ x% Y  s1 g附上我自己的遗传算法编程,首先是第三行的自变量范围,只能定义一个区间,不知道怎么分开定义五个自变量的范围,再就是这样计算结果竟然是个复数,还都是负号,跟我想要的正实数实在是相去甚远,

该用户从未签到

3#
发表于 2020-7-8 14:02 | 只看该作者
帮你顶一下

该用户从未签到

4#
发表于 2020-7-9 10:50 | 只看该作者
9 e4 r0 }7 n) a4 V8 b# e& h) Z
理论上最小值就是-2.83599462789046,如果非要为正,那就是0了。

点评

好吧,我再看看  详情 回复 发表于 2020-7-9 14:14

该用户从未签到

5#
 楼主| 发表于 2020-7-9 14:14 | 只看该作者
zaiyiaaaa 发表于 2020-7-9 10:50! F& P# T- w( L0 N# p- o& R
理论上最小值就是-2.83599462789046,如果非要为正,那就是0了。
8 }! {: N) v. q+ R$ R5 ]
好吧,我再看看$ Y! p/ @, I) C0 t' |2 ~) U
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 12:56 , Processed in 0.187500 second(s), 27 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表