数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 1869|回复: 0

各位高手请教遗传算法

[复制链接]
发表于 2004-8-11 23:42:04 | 显示全部楼层 |阅读模式
<>在遗传算法很经典的一个例题中求f(x)=x+10*sin(5x)+7*cos(4x)的最大值,其中0&lt;=x&lt;=9  </P>
<><FONT size=3>当执行到</FONT>  initPop=initializega(10,[0 9],'test');%生成初始种群,大小为10时,为什么MATLAB不认识initializega函数呢?</P>
<>程序如下:</P>
<P > %编写目标函数 <p></p></P>
<P >      function[sol,eval]=fitness(sol,options) <p></p></P>
<P >        x=sol(1); <p></p></P>
<P >        eval=x+10*sin(5*x)+7*cos(4*x); <p></p></P>
<P >    %把上述函数存储为test.m文件并放在工作目录下 <p></p></P>
<P >     <p></p></P>
<P >    initPop=initializega(10,[0 9],'test');%生成初始种群,大小为10 <p></p></P>
<P >    [x endPop,bPop,trace]=ga([0 9],'fitness',[],initPop,[1e-6 1 1],'maxGenTerm',25,'normGeomSelect',... <p></p></P>
<P >      [0.08],['arithXover'],[2],'nonUnifMutation',[2 25 3]); %25次遗传迭代 <p></p></P>
<P> </P>
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-27 18:33 , Processed in 0.049340 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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