遗传算法(genetic algorithm, GA)

  1. 历史
    遗传算法的概念最早是由Bagley J.D在1967年提出的;而开始遗传算法的理论和方法的系统性研究的是1975年,这一开创性工作是由Michigan大学的J.H.Holland[1]所实行。当时,其主要目的是说明自然和人工系统的自适应过程。 自此,众多学者对遗传算法进行了一系列改进,方向大概分为以下几部分:
    (1)改进遗传算法的组成成分或使用技术,如选用优化控制参数、适合问题特性的编码技术等。
    (2)采用混合遗传算法(Hybrid Genetic Algorithm)。
    (3)采用动态自适应技术,在进化过程中调整算法控制参数和编码精度。
    (4)采用非标准的遗传操作算子。
    (5)采用并行算法。

  2. 遗传算法的优点[2]
    遗传算法是模拟生物进化过程中优胜劣汰规则与群体内部染色体信息交换机制的一类处理复杂优化问题的新方法. 与其他优化方法相比 , GA具有如下特点:
    (1)适应性强: GA只要求优化问题是可计算的 ,与所求解问题的性质无关;
    (2)全局优化: GA同时从一代点群开始进行多点、多路经搜索寻优 ,在各搜索点之间交换信息 ,可以有效地搜索整个解空间;
    (3)编码特征: GA通过编码将变量转换成与遗传基因类似的数字编码串结构 , GA的直接操作对象是这些数字编码串 . GA通过编码机制可以统一处理各种复杂的优化问题;
    (4)概率搜索: GA的各种遗传操作都是采用随机方式进行的;
    (5)隐含并行性: GA通过控制群体中 n个串来反映 o(n3) 阶个图式 ( schema ) ,基于这种隐含并行性 , GA能利用较少的数字串来搜索解空间中的大量区域 ,这是它优于其它优化方法最主要的因素;
    (6)自适应性:GA用杂交、变异两种遗传算子作为搜索工具 ,用适应度函数对搜索到的解的质量进行评价 ,并根据评价结果用选择遗传算子来引导以后的搜索方向;
    (7)算法的简单性、通用性: 在GA中 ,编码方式和选择、杂交、变异操作算子都是确定的 ,易于写成一个简单的通用算法 ,在应用中要修改的只是与适应度函数有关的具体目标函数的定义方式和GA算法控制参数的设置而已 .
    基于这些特点,GA已在各种优化领域中开始得到广泛应用.

  3. 遗传算法的缺点
    1、早熟.这是最大的缺点,即算法对新空间的探索能力是有限的,也容易收敛到局部最优解;
    2、大量计算.涉及到大量个体的计算,当问题复杂时,计算时间是个问题;
    3、处理规模小.目前对于维数较高的问题,还是很难处理和优化的;
    4、难于处理非线性约束.对非线性约束的处理,大部分算法都是添加惩罚因子,这是一笔不小的开支;
    5、稳定性差.因为算法属于随机类算法,需要多次运算,结果的可靠性差,不能稳定的得到解.

    原文作者:遗传算法
    原文地址: https://blog.csdn.net/baidu_37173242/article/details/60865993
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞