数学建模--遗传算法(从零开始学)

学习数学建模常见算法–遗传算法.

首先,确定一下学习路线和学习资料(按照这个路线,入门非常容易,主要是人家文章写得好!):

  • 视频:https://www.bilibili.com/video/av11893597?from=search&seid=7014684773398800271
      主要讲绪论知识和基本理论以及简单的例程,不涉及编程。
       适合:完全不懂遗传算法的同学可作为先验知识。
  • 课件:链接:https://pan.baidu.com/s/1HER9V64ninS2k0imiEEoKA 提取码:zzp8
      非常通俗的讲解,适合看完视频后再看这个课件,讲解有一定算法思想。有一个实验,但是是使用c语言编写。后边我会用matlab代码进行重写。
  • matlab遗传算法实验:遗传算法解决最优解问题
      这篇文章非常通俗易懂,有前面的基础知识后非常容易看懂,写的也很有意思,看着就是笔者已经将这个算法吃透了。
    我复现了笔者的实验,实验结果很好,这里就不再贴图(实际是做完忘记截图了…)。
    本文例题可以使用蚁群算法解决:蚁群算法
1、根据笔者的实验自己做了上边提到的课件中的题目:关于香蕉函数(Rosenbrock函数)的最大值求解问题。

思路:

  • 1、编码与解码:分别使用十位二进制数表示x1,x2,那么种群中的每个个体就是20位二进制数。(编码方式参见上边提到的课件)
    二进制数转化为十进制数算法:
    在这里插入图片描述
    表现在这道题目就是:Umin = -2.048,Umax = 2.048 ,λ = 10,bi是十位二进制中的每一个值(仅有0 、1);
    所以 x 1 = U m i n + ( ∑ i = λ 1 b i ∗ 2 i − 1 ) U m a x − U m i n 2 λ − 1 x_{1}=Umin + (\sum_{i=\lambda }^{1}b_{i}\ast 2^{i-1})\frac{Umax-Umin}{2^{\lambda } - 1} x1=Umin+(i=λ1bi2i1)2

  • 35
    点赞
  • 260
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值