QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2736|回复: 0
打印 上一主题 下一主题

[问题求助] 求助:关于遗传算法的问题!!!

[复制链接]
字体大小: 正常 放大

3

主题

6

听众

13

积分

升级  8.42%

  • TA的每日心情
    难过
    2012-11-9 16:52
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    傻傻的,笨笨的。。。

    群组学术交流A

    群组学术交流B

    跳转到指定楼层
    1#
    发表于 2012-11-7 21:10 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    大家请看一下这个程序:
    9 V7 B# E2 g# w1 Z# n' @0 w: q clear ;clf
    5 m( f9 u! k! m: Q  Apopsize=20; %群体大小 / Y; S  z: ^& B, V4 y3 L
    chromlength=10; %字符串长度(个体长度)
    / ~' E7 Q1 v, t; H/ Y" jpc=0.6; %交叉概率 2 h/ q4 {1 A7 w' F* s9 L# F
    pm=0.001; %变异概率
    7 @: `% `) |6 A# J7 ]( U8 Q( |pop=initpop(popsize,chromlength); %随机产生初始群体
    ) e/ F' z  g- F1 Qfor i=1:20 %20为迭代次数 4 @; Q" `2 u5 u$ a$ K
    [objvalue]=calobjvalue(pop); %计算目标函数
    $ g& ]. Z, h- a) O+ A7 F3 c# C/ Ufitvalue=calfitvalue(objvalue); %计算群体中每个个体的适应度 7 s5 ~; X3 y) _: O: E. }8 C# n& ^9 X
    [newpop]=selection(pop,fitvalue); %复制 9 V6 L. B  b* _) [# N2 C; I
    [newpop]=crossover(pop,pc); %交叉 % ^( Q% O6 \2 r! A: _  Z+ f
    [newpop]=mutation(pop,pc); %变异 # p* b! T' O2 O$ [. ?
    [bestindividual,bestfit]=best(pop,fitvalue); %求出群体中适应值最大的个体及其适应值 : s% b/ f: C" o$ a1 ~: M
    y(i)=max(bestfit); - |# @% L9 s7 Z- {2 i1 j& s. n% a
    n(i)=i;
    $ o3 h* [* X( _- S% J1 Q9 @pop5=bestindividual; , T' ?2 |2 X( ^0 n
    x(i)=decodechrom(pop5,1,chromlength)*10/1023; ; \0 _5 S5 T! [4 {- G/ ~) L+ O5 r
    pop=newpop; , x# Z* Q. H5 s
    end . m5 h7 |% I# L, @% C9 w
    fplot('10*sin(5*x)+7*cos(4*x)',[0 10]) " H% W; s/ R/ }3 a
    hold on / a0 K" f3 K5 V4 O+ |; b, i' N! N
    plot(x,y,'r*')
    8 u! L! n" Z0 b! ]9 w% ghold off 1 u* U8 H' ^$ a9 Q% I- p# |! \
    %%%%%%%%%%%%% @* ~% I+ t6 B5 h; T
    这是遗传算法的主程序。我想问的是:在进行复制、交叉、变异处理时,为什么不代入新的群体矩阵newpop,而使用旧的pop呢?如果按照原程序,那么复制、交叉处理岂不是没有了任何意义?+ E8 ?: X  ^# O; Z( p6 m
    当我将pop改为newpop时,程序编译时就会出现错误!!!
    " c! v" J+ t2 k% U' ? 真搞不懂这到底是为什么,希望各位大侠不吝指教,谢谢!!!: D  W6 E% |9 W% t4 ?- ^

    ) y2 H( q/ }1 d7 E3 O& J
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-10-15 07:08 , Processed in 0.354053 second(s), 51 queries .

    回顶部