【智能优化算法应用】01遗传算法应用

作者:康慎吾

  • 遗传算法流程
  • 遗传学与遗传算法术语对应关系
  • 遗传操作
    选择算子:select
    交叉算子:recombin
    变异算子:mut
  • 交叉算子:
    (1)单切点交叉

    (2)双切点交叉
  • 创建一个种群大小为5,个体长度为8,各位的二进制数分别为
>> [Chrom, Lind, BaseV]=crtbp(5,8,[2 3 4 5 6 7 8 9])

Chrom =

     1     0     0     0     3     5     5     7
     1     0     3     2     0     5     0     6
     0     1     3     4     5     2     2     2
     1     2     1     3     5     4     0     8
     1     2     3     4     4     1     0     0


Lind =

     8


BaseV =

     2     3     4     5     6     7     8     9
  • 使用线性排序和压差为2估算适应度
>> ObjV=[1;2;3;4;5;10;9;8;7;6];
>> FitnV=ranking(ObjV);
%or>> FitnV=ranking(ObjV,[2, 0])
%or>> FitnV=ranking(ObjV, [2, 0], 1)

FitnV =

    2.0000
    1.7778
    1.5556
    1.3333
    1.1111
         0
    0.2222
    0.4444
    0.6667
    0.8889

注意:ranking是求解最小值的,即目标值越小,适应度越大。

  • 实用函数——rep
    功能:矩阵复制。
    调用格式 MatOut=rep(MatIn,REPN)
    函数rep完成矩阵MatIn的复制,REPN指明复制次数,返回复制后的矩阵MatOut。
    REPN包含每个方向的复制次数,REPN(1)表示纵向复制次数,REPN(2)表示水平方向复制次数。
%使用函数rep复制矩阵MatIn
>> MatIn=[1 2 3 4;5 6 7 8]

MatIn =

     1     2     3     4
     5     6     7     8
>> MatOut=rep(MatIn,[1,2])

MatOut =

     1     2     3     4     1     2     3     4
     5     6     7     8     5     6     7     8

>> MatOut=rep(MatIn,[2,1])

MatOut =

     1     2     3     4
     5     6     7     8
     1     2     3     4
     5     6     7     8

下一节:【智能优化算法应用】02免疫优化算法应用...

posted @ 2021-06-21 18:31  灰小k  阅读(343)  评论(0)    收藏  举报