- 3
- 0
- 约3.41千字
- 约 8页
- 2016-12-29 发布于未知
- 举报
? 遗传算法(Genetic Algorithm)又叫基因进化算法,或进化算法。属于启发式搜索算法一种,这个算法比较有趣,并且弄明白后很简单,写个100-200行代码就可以实现。在某些场合下简单有效。本文就花一些篇幅,尽量白话方式讲解一下。??
?
??? 首先说一下问题。在我们学校数据结构这门功课的时候,时常会有一些比较经典的问题(而且比较复杂问题)作为学习素材,如八皇后,背包问题,染色问题等等。上面列出的几个问题都可以通过遗传算法去解决。本文列举的问题是TSP(Traveling Salesman Problem)类的问题。
?
???? ?TSP问题实际上是”哈密顿回路问题”中的”哈密顿最短回路问题”.如下图,就是要把下面8个城市不重复的全部走一遍。有点像小时候玩的画笔画游戏,一笔到底不能重复。TSP不光是要求全部走一遍,并且是要求路径最短。就是有可能全部走一遍有很多走法,要找出其中总路程最短的走法。?????
?
和这个问题有点相似的是欧拉回路(下图)问题,它不是要求把每个点都走一遍,而是要求把每个边都不重复走一遍(点可以重复),当然欧拉回路不是本算法研究的范畴。
?
本文会从TSP引申出下面系列问题
1、? TSP
2、? 1 到城市8,找一条最短路径。
3、? m个点,要求找出其距离最短的路线。(如果m=N总数,其实就是问题1了
原创力文档

文档评论(0)