视频源:

进化算法 简介

作者: UnityTutorial 编辑: UnityTutorial 2017-08-12

学习资料:

要点

“进化” Evolution, 可以说是人类历史上伟大的发现之一. 适者生存, 不适者淘汰, 达尔文的进化理论让我们见识到了自己是怎么来的. 那, 现在想象一下, 如果你的程序也能进化, 也用适者生存, 不适者淘汰的原则生长出一个牛逼的物种, 是不是很开心, 是不是很激动! 反正这就是我为什么会对这类算法特别感兴趣的原因之一了.

大神们都拿它做了些什么

在 Youtube 上, 一搜就能搜到很多关于 Evolution Algorithm (之后简称为 EA) 的实验短片. 我截取了几个给大家看看, 后面也附上他们的链接. 如果你能翻墙, 也能看看他们有趣的实验.

这些是上面实验的部分链接 ( 马里奥, 马里奥, 微生物进化)

如果你提起兴趣了, 恭喜你, 你离学会这些又进了一步. 接着看看我为大家尽心准备的教程, 相信大家就能迅速上手. 如果大家觉得真的学习到了东西, 我做的东西对你的学习生活有所帮助. 希望大家也能支持我做出更好, 更简单易懂的教程. 如果没有大家之前的支持, 这一系列进化算法的教程也出不来~ 感谢~

算法们

EA 包括了很多种类的算法, 但是这些算法的精髓都是围绕着达尔文的进化理论, 虽然有一些发展到后面, 有点偏离的这个轨道, 不过他们都是受这个的启蒙. 在 wiki上, EA 包括了:

  • 遗传算法 (Genetic Algorithm)
  • 进化策略 (Evolution strategy)
  • 神经进化 (Neuroevolution)
  • Genetic programming

在这一系列的教程中我们会着重讲解比较著名的 遗传算法 (Genetic Algorithm), 进化策略 (Evolution strategy) 和 神经进化 (Neuroevolution). 看看在多种多样的问题中, 他们是如何自由穿梭. 尤其是之后, 我们还会涉及到强化学习的内容. 如果大家有了解我做过的 强化学习教程, 在后续教程中我们就来看看能挑战当今流行的强化学习的 “进化方法”.

这个教程的内容

在这个教程中, 我们会用实践的方式, 手把手教你如何在电脑里进化. 让你也能动手实践, 更好的理解消化知识点.

比如用 OpenAI gym 来训练你的小机器人.

用简单的代码, 可视化各种进化算法的本质. 比如这个.

进化算法 简介

旅行商人的最短路径问题:

进化算法 简介

配对句子问题:

结合了梯度下降的原则的进化算法:

进化算法 简介

等等等等. 我们就来慢慢理解消化啦~

分享到: Facebook 微博 微信 Twitter
如果你觉得这篇文章或视频对你的学习很有帮助, 请你也分享它, 让它能再次帮助到更多的需要学习的人. UnityTutorial没有正式的经济来源, 如果你也想支持 UnityTutorial 并看到更好的教学内容, 赞助他一点点, 作为鼓励他继续开源的动力.

支持 让教学变得更优秀