Dony's blog


博客页面

遗传算法-选择

4 选择 ​ 选择是指根据个体适应度从种群中挑选个体的过程。其对应的是生物学中的” 自然 选择”。下面是一些选择操作有关的术语: ​ 选择压力(selective pressure):与所有个体的平均选择概率相比,最优个体被选中的 概率。 ​ 偏差(bias):个体标准化的适应度预期期望再生...

遗传算法-概述

1 遗传算法概述 ​ 自然界生物在周而复始的繁衍中,基因的重组、变异等,使其不断具有新的性状,以适应复杂多变的环境,从而实现进化。遗传算法精简了这种复杂的遗传过程而抽象出一套数学模型,用较为简单的编码方式来表现复杂的现象,并通过简化的遗传过程来实现对复杂搜索空间的启发式搜索,最终能够在较大的...

遗传算法-多目标优化

​ 在许多实际问题中,我们常常要处理的数学模型不止有一个目标函数。例如在产品加工与配送系统中,通常要求加工和配送的成本尽可能低,而所花的时间尽可能少,从而使总利润最大。有些多目标优化问题中各个目标之间会有冲突,无法同时取得最优,例如工人的工资和企业的总利润。 ​ 以遗传算法为代表的许多进化算法...

遗传算法-编码

2 编码 ​ 编码的设计是使用遗传算法解决实际问题中极为关键的要素。 ​ 编码就是将问题的解空间映射到编码空间(即搜索空间) 上的过程。而由编码空间向问题的解空间的映射就成为解码。 ​ 编码的方式对搜索过程影响较大。按照编码结果的数据类型分类,编码可以是:一维或二维的数据列、二进制数据列或字...

遗传算法-变异

6 变异 变异是指通过改变父代染色体中的一部分基因来形成新的子代染色体的过程。它能 够保持种群的多样性,降低遗传算法陷入局部最优解风险。 最经典的两种突变方法是实数值突变和离散突变。 1) 实数值突变(Real valued mutation): 实值突变通过给定的变异概率将父代个体的...

遗传算法-序言

遗传算法 序言 进化算法(Evolutionary Algorithm, EA) 是一类通过模拟自然界生物自然选择和自然 进化的随机搜索算法。与传统搜索算法如二分法、斐波那契法、牛顿法、抛物线法等相 比,进化算法有着高鲁棒性和求解高度复杂的非线性问题(如NP 完全问题) 的能力。 在过去的4...

Geatpy 快速入门

# 快速入门 1.安装 你可以通过联网安装或本地安装来安装Geatpy。在安装前,你需要安装Numpy。 联网安装:pip install geatpy 本地安装:在github 下载Geatpy 安装包,在本地控制台执行以下代码安装: python setup.py install 更新...

Geatpy 数据结构

Geatpy 数据结构 ​ Geatpy 的大部分数据都是存储在numpy 的array 数组里的,numpy 中另外还有matrix的矩阵类型,但我们不适用它,于是我们默认array 就是存储“矩阵”(也可以存储一维向量,接下来会谈到)。其中有一些细节需要特别注意:numpy 的array...