MATLAB实战系列(九)-遗传算法(GA)求解旅行商问题(TSP)思路解析
生活随笔
收集整理的這篇文章主要介紹了
MATLAB实战系列(九)-遗传算法(GA)求解旅行商问题(TSP)思路解析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本次博文所編寫的代碼使用如下進化操作:
1、二元錦標賽選擇操作;
2、OX交叉操作;
3、交換、逆轉和插入相結合的變異操作。
一 | 旅行商(TSP)問題
假設有一個旅行商人要拜訪n個城市,他必須選擇所要走的路徑,路徑的限制是每個城市只能拜訪一次,而且最后要回到原來出發的城市。路徑的選擇目標是要求得的路徑路程為所有路徑之中的最小值。
二 | 算法設計
01 | 編碼
編碼采用常規的整數編碼,如果城市數目為N,那么解就可以表達為1~N的隨機排列,用MATLAB中的randperm(N)進行表示。
02 | 種群初始化
設種群數目為NIND,則初始化種群為NIND個1~N的隨機排列。
03 | 目標函數值
一個個體的目標函數值就是該個體的總距離,比如說一個個體為213,那么這個個體的總距離=21之間的距離+13之間的距離+32之間的距離(從3出發還需要返回起始點2)。
04 | 適應度值
一個個體的適應度值是其目標函數值的倒數。因為總距離越小說
總結
以上是生活随笔為你收集整理的MATLAB实战系列(九)-遗传算法(GA)求解旅行商问题(TSP)思路解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux疑难杂症解决方案100篇(八)
- 下一篇: 人工智能应用实战系列-如何在新闻推荐中使