遗传算法入门(上)代码中的进化学说与遗传学说

本文介绍了遗传算法的基本原理,它借鉴了达尔文的进化论和孟德尔的遗传学说,属于人工智能领域的智能优化技术。遗传算法通过模拟生物的遗传和进化过程来寻找问题的最优解,适用于解决复杂优化问题,如函数优化、组合优化、自动控制、机器学习等领域。文中还探讨了遗传算法的科研现状和应用现状。
摘要由CSDN通过智能技术生成

如果你对遗传算法感兴趣或者正在做有关GA的研究,不妨关注博客右侧专栏 → 智能计算-深入遗传算法 ,一步一步深入算法,分享算法每一个流程模块(如选择策略,交叉机制等等)的众多参考观点。代码和Demo咱从来不缺。

遗传算法入门系列文章:

(中篇)遗传算法入门(中)实例,求解一元函数最值(MATLAB版)
(下篇)遗传算法入门(下)实例,求解TSP问题(C++版)


写在之前

说明: 本想着用大量篇幅写一篇 “关于遗传算法的基本原理”作为本系列入门的第一篇,但是在找寻资料的过程中,看到网络上有大量的关于遗传算法的介绍,觉得写的都挺好,所以本文我就简单写点自己的理解。

推荐几篇关于遗传算法的介绍性文章:

遗传算法详解(GA)(个人觉得很形象,很适合初学者)

这里写图片描述

算法所属领域

​ 相信每个人学习一门知识之前,都会想知道这门知识属于哪一门学科范畴,属于哪一类技术领域?

​ 首先对于这种问题,GA是没有绝对的归属的。算法的定义是解决问题的一种思想和指导理论。而遗传算法也是解决某一问题的一种思想,用某一编程语言实现这种思想的程序具有很多特点,其中一个便是智能性和进化性,即,不需要大量的人为干涉,程序本身能够根据一定的条件自我筛选,最终得出令人满意的结果。所以按照这种特性,把它列为人工智能领域下的学习门类毫无疑问是可以的 。遗传算法的思想是借鉴了达尔文的进化学说和孟德尔的遗传学说,把遗传算法说成是一门十足的仿生学一点都不过分。然而从应用的角度出发,遗传算法是求最优解问题的好方法,如信号处理中的优化、数学求解问题、工业控制参数最优解、神经网络中的激活函数、图像处理等等,所以把遗传算法说成优化范畴貌似也说的过去。为了方便理解,我们可以暂时将其定位为人工智能–智能优化 ,这也是很多书中描述遗传算法的惯用词汇。

遗传算法的思想解析

遗传算法(gentic algorithms简称GA)是模拟生物遗传和进化的全局优化搜索算法

​ 我们知道,在人类的演化中,达尔文的进化学说与孟德尔的遗传学说起着至关重要的理论指导。每个人作为一个个体组成一个人类种群,正是经历着物竞天择,才会让整个群体慢慢变的更好,即更加适应周围的环境。而每一代正是靠着基因交叉与变异才能繁衍出更加适应大自然规律的下一代个体。总之,在漫长的迭代进化中,一个不适应环境的群体,在物竞天择和交叉变异中慢慢变的适应了环境。

​ GA的思想完全模拟了生物的进化和遗传方式。我们在求解一个问题的最优解时,先人为的产生很多任意的解,组成一个解集(一个解是一个个体,一个解集是一个种群),这些解有好有坏。我们的最终目的是让这些解通过“物竞天择”慢慢演化成最终适合所求的最优解。如果说大自然中是周围的环境对种群中的个体做出选择,那么在求解问题时,就可以用一个问题的模型函数来对众多解做出选择,即:对于一个要解决的问题,我们通过数学建模的方式将其建立为一个纯数学函数 F=f(x,y,..) F = f ( x , y , . . ) , 该函数就能反应该问题的特性,例如我们需要求解汽车过隧道问题。可以将隧道抽象成一个倒立的抛物线函数,通过研究该抛物线的特性来研究隧道口的高度。如果我们在之前先产生一个解集,将解集中的所有解带入抛物线,得出一个结果集,则结果集中的每个结果肯定有好有坏,好的结果所对应的解就是好解,反之亦然。所以,这个模型函数就充当了自然界中的环境因素。在遗传算法中,这个模型函数称为目标函数 ,而在实际的算法运行中,因为考虑到算法的设计,往往会在目标函数上做一些不会改变函数特性,但是会改变函数形式的改进,例如 F(x)

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孤旅青山迷情人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值