常用的智能优化算法有:
遗传算法 、模拟退火算法、禁忌搜索算法、粒子群算法、蚁群算法。
遗传算法是由美国的 J. Holland 教授于 1975 年在他的专著《自然界和人工系统的适应
性》中首先提出的。
借鉴生物界自然选择和自然遗传机制的随机化搜索算法。
模拟自然选择和自然遗传过程中发生的繁殖、交叉和基因突变现象。
在每次迭代中都保留一组候选解,并按某种指标从解群中选取较优的个体,利用遗传算
子(选择、交叉和变异)对这些个体进行组合,产生新一代的候选解群,重复此过程,直到满
足某种收敛指标为止。
基本遗传算法(Simple Genetic Algorithms,GA)又称简单遗传算法或标准遗传算法),
是由 Goldberg 总结出的一种最基本的遗传算法,其遗传进化操作过程简单,容易理解,是
其它一些遗传算法的雏形和基础。
3、基本遗传算法的组成
(1)编码(产生初始种群)
遗传算法(GA)通过某种编码机制把对象抽象为由特定符号按一定顺序排成的串。
正如研究生物遗传是从染色体着手,而染色体则是由基因排成的串。
基本遗传算法(SGA)使用二进制串进行编码。
初始种群:基本遗传算法(SGA)采用随机方法生成若干个个体的集合,该集合称为初始种群。
初始种群中个体的数量称为种群规模。
(2)适应度函数
遗传算法对一个个体(解)的好坏用适应度函数值来评价,适应度函数值越大,解的质量越好。
适应度函数是遗传算法进化过程的驱动力,也是进行自然选择的唯一标准,
它的设计应结合求解问题本身的要求而定。
(3)遗传算子(选择、交叉、变异)
选择算子:
遗传算法使用选择运算对个体进行优胜劣汰操作。
适应度高的个体被遗传到下一代群体中的概率大;适应度低的个体,被遗传到下一代群体中的概率小。
选择操作的任务就是从父代群体中选取一些个体,遗传到下一代群体。
交叉算子:
交叉运算,是指对两个相互配对的染色体依据交叉概率 Pc 按某种方式相互交换其部分基因,从而形成两个新的个体。
交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起关键作用,是产生新个体的主要方法。
基本遗传算法(SGA)中交叉算子采用单点交叉算子。
变异算子:
变异运算,是指改变个体编码串中的某些基因值,从而形成新的个体。
变异运算是产生新个体的辅助方法,决定遗传算法的局部搜索能力,保持种群多样性。
交叉运算和变异运算的相互配合,共同完成对搜索空间的全局搜索和局部搜索。
基本遗传算法(SGA)中变异算子采用基本位变异算子。
(4)运行参数
(1)M:种群规模
(2)T:遗传运算的终止进化代数
(3)Pc:交叉概率
(4)Pm:变异概率
遗传算法的本质
遗传算法本质上是对染色体模式所进行的一系列运算,即通过选择算子将当前种群中的优良模式遗传到下一代种群中,利用交叉算子进行模式重组,利用变异算子进行模式突变。
通过这些遗传操作,模式逐步向较好的方向进化,最终得到问题的最优解。
遗传算法的主要有以下八方面的应用:
(1)组合优化
(2)函数优化
(3)自动控制
(4)生产调度
(5)图像处理
(6)机器学习
(7)人工生命
(8)数据挖掘
遗传算法 、模拟退火算法、禁忌搜索算法、粒子群算法、蚁群算法。
遗传算法是由美国的 J. Holland 教授于 1975 年在他的专著《自然界和人工系统的适应
性》中首先提出的。
借鉴生物界自然选择和自然遗传机制的随机化搜索算法。
模拟自然选择和自然遗传过程中发生的繁殖、交叉和基因突变现象。
在每次迭代中都保留一组候选解,并按某种指标从解群中选取较优的个体,利用遗传算
子(选择、交叉和变异)对这些个体进行组合,产生新一代的候选解群,重复此过程,直到满
足某种收敛指标为止。
基本遗传算法(Simple Genetic Algorithms,GA)又称简单遗传算法或标准遗传算法),
是由 Goldberg 总结出的一种最基本的遗传算法,其遗传进化操作过程简单,容易理解,是
其它一些遗传算法的雏形和基础。
3、基本遗传算法的组成
(1)编码(产生初始种群)
遗传算法(GA)通过某种编码机制把对象抽象为由特定符号按一定顺序排成的串。
正如研究生物遗传是从染色体着手,而染色体则是由基因排成的串。
基本遗传算法(SGA)使用二进制串进行编码。
初始种群:基本遗传算法(SGA)采用随机方法生成若干个个体的集合,该集合称为初始种群。
初始种群中个体的数量称为种群规模。
(2)适应度函数
遗传算法对一个个体(解)的好坏用适应度函数值来评价,适应度函数值越大,解的质量越好。
适应度函数是遗传算法进化过程的驱动力,也是进行自然选择的唯一标准,
它的设计应结合求解问题本身的要求而定。
(3)遗传算子(选择、交叉、变异)
选择算子:
遗传算法使用选择运算对个体进行优胜劣汰操作。
适应度高的个体被遗传到下一代群体中的概率大;适应度低的个体,被遗传到下一代群体中的概率小。
选择操作的任务就是从父代群体中选取一些个体,遗传到下一代群体。
交叉算子:
交叉运算,是指对两个相互配对的染色体依据交叉概率 Pc 按某种方式相互交换其部分基因,从而形成两个新的个体。
交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起关键作用,是产生新个体的主要方法。
基本遗传算法(SGA)中交叉算子采用单点交叉算子。
变异算子:
变异运算,是指改变个体编码串中的某些基因值,从而形成新的个体。
变异运算是产生新个体的辅助方法,决定遗传算法的局部搜索能力,保持种群多样性。
交叉运算和变异运算的相互配合,共同完成对搜索空间的全局搜索和局部搜索。
基本遗传算法(SGA)中变异算子采用基本位变异算子。
(4)运行参数
(1)M:种群规模
(2)T:遗传运算的终止进化代数
(3)Pc:交叉概率
(4)Pm:变异概率
遗传算法的本质
遗传算法本质上是对染色体模式所进行的一系列运算,即通过选择算子将当前种群中的优良模式遗传到下一代种群中,利用交叉算子进行模式重组,利用变异算子进行模式突变。
通过这些遗传操作,模式逐步向较好的方向进化,最终得到问题的最优解。
遗传算法的主要有以下八方面的应用:
(1)组合优化
(2)函数优化
(3)自动控制
(4)生产调度
(5)图像处理
(6)机器学习
(7)人工生命
(8)数据挖掘