問題描述 中國西北的風(fēng)力資源豐富,因此有大片的風(fēng)力發(fā)電場駐扎在大西北地區(qū),然而由于風(fēng)力發(fā)電站距離較遠(yuǎn),工作人員對(duì)風(fēng)力發(fā)電站的例行檢查每天耗費(fèi)著大量的時(shí)間以及燃油消耗,因此找到一個(gè)最短的檢查路徑將為公司減少最大的運(yùn)營成本(燃油損耗等)。 這是一個(gè)很典型的TSP問題。 1.什么是TSP TSP全稱為Travelling Salesman Problem(旅行商問題),通俗而言,它是指對(duì)于給定的一系列城市和每對(duì)城市之間的距離,找到訪問每一座城市僅一次并回到起始城市的最短回路。 TSP問題在運(yùn)籌學(xué)發(fā)展史上有重要的意義,1952年,Danzig, Fulkerson和Johnson成功的解決了美國本土分屬不同州的48個(gè)城市和哥倫比亞特區(qū)共49個(gè)城市的TSP實(shí)例,使更多的人初次了解了組合優(yōu)化研究的意義,也感受到了離散問題求解的準(zhǔn)度。 因?yàn)門SP是NP-C問題,因此其沒有在有限的時(shí)間內(nèi)可以求最優(yōu)解的算法。(如果對(duì)于NP-C的定義不了解,可以簡單理解為對(duì)于某些實(shí)例,隨著規(guī)模的增加,求解最優(yōu)解所需的時(shí)間是爆炸式的指數(shù)增長)。因此研究TSP的啟發(fā)式算法就顯得很重要了。 交通運(yùn)輸、物流配送是TSP問題的典型應(yīng)用場景,此外,TSP問題在網(wǎng)絡(luò)設(shè)計(jì)、電路板線路設(shè)計(jì)、生產(chǎn)調(diào)度、城市規(guī)劃等領(lǐng)域,都有著廣泛的應(yīng)用,國內(nèi)外學(xué)者對(duì)其進(jìn)行了大量的研究。 2.解決TSP問題的算法 TSP問題的規(guī)模與節(jié)點(diǎn)數(shù)有關(guān)。當(dāng)節(jié)點(diǎn)數(shù)相對(duì)較?。ń獾乃阉骺臻g比較有限)的時(shí)候,是可以通過線性規(guī)劃等算法獲取精確的結(jié)果。當(dāng)問題的規(guī)模增大,也就是節(jié)點(diǎn)數(shù)變得很大的時(shí)候,解的搜索空間會(huì)爆炸式增長,精確算法將無能為力,所以該問題被稱為NP完全問題(大家可以網(wǎng)上搜索一下,了解什么是NP完全問題)。啟發(fā)式算法一般用于解決NP完全問題,速度快,穩(wěn)定性(魯棒性)高,缺點(diǎn)是無法保證得到全局最優(yōu)解,有可能是局部最優(yōu)解。其中,遺傳算法(Genetic Algorithm, GA)是模擬達(dá)爾文生物進(jìn)化論的自然選擇和遺傳學(xué)機(jī)理的生物進(jìn)化過程的計(jì)算模型,是一種通過模擬自然進(jìn)化過程搜索最優(yōu)解的方法。 其主要特點(diǎn)是直接對(duì)結(jié)構(gòu)對(duì)象進(jìn)行操作,不存在求導(dǎo)和函數(shù)連續(xù)性的限定;具有內(nèi)在的隱并行性和更好的全局尋優(yōu)能力;采用概率化的尋優(yōu)方法,不需要確定的規(guī)則就能自動(dòng)獲取和指導(dǎo)優(yōu)化的搜索空間,自適應(yīng)地調(diào)整搜索方向。 3.求解過程 TSP問題的目標(biāo)函數(shù)是固定的,一般為途徑所有站點(diǎn)的距離最短。此次問題,我們采用自研軟件尤里卡(Eureka)進(jìn)行模擬,該軟件的優(yōu)點(diǎn)是無需代碼基礎(chǔ),完全可視化操作。在本軟件中,TSP問題不需要設(shè)定目標(biāo)函數(shù)。 3.1選擇TSP問題及遺傳算法 3.2點(diǎn)擊加載模型,選擇模型文件 TSP模型文件存放在軟件安裝目錄地ModelData文件夾下。 3.3參數(shù)設(shè)置 其中種群大小為50,交叉概率為0.8,變異概率為0.05,最大迭代次數(shù)為500。 3.4點(diǎn)擊開始優(yōu)化,得到運(yùn)行結(jié)果 4.結(jié)果分析 通過遺傳算法求解,我們得到了一個(gè)若干點(diǎn)的步行路徑。風(fēng)力發(fā)電公司的工作人員最開始的步行距離是761.6m,優(yōu)化后的路徑的步行距離是691.3m。風(fēng)力發(fā)電公司通過該路徑進(jìn)行風(fēng)力發(fā)電機(jī)的例行檢查,將可以最大程度地節(jié)省時(shí)間以及汽車燃油消耗。 |
|