『壹』 蟻群演算法 螞蟻的初始分布位置和最終分布位置由什麼決定
概念:蟻群演算法(antcolonyoptimization,ACO),又稱螞蟻演算法,是一種用來在圖中尋找優化路徑的機率型演算法.它由MarcoDorigo於1992年在他的博士論文中提出,其靈感來源於螞蟻在尋找食物過程中發現路徑的行為.蟻群演算法是一種模擬進化演算法,初步的研究表明該演算法具有許多優良的性質.針對PID控制器參數優化設計問題,將蟻群演算法設計的結果與遺傳演算法設計的結果進行了比較,數值模擬結果表明,蟻群演算法具有一種新的模擬進化優化方法的有效性和應用價值其原理:為什麼小小的螞蟻能夠找到食物?他們具有智能么?設想,如果我們要為螞蟻設計一個人工智慧的程序,那麼這個程序要多麼復雜呢?首先,你要讓螞蟻能夠避開障礙物,就必須根據適當的地形給它編進指令讓他們能夠巧妙的避開障礙物,其次,要讓螞蟻找到食物,就需要讓他們遍歷空間上的所有點;再次,如果要讓螞蟻找到最短的路徑,那麼需要計算所有可能的路徑並且比較它們的大小,而且更重要的是,你要小心翼翼的編程,因為程序的錯誤也許會讓你前功盡棄.這是多麼不可思議的程序!太復雜了,恐怕沒人能夠完成這樣繁瑣冗餘的程序應用范圍:螞蟻觀察到的范圍是一個方格世界,螞蟻有一個參數為速度半徑(一般是3),那麼它能觀察到的范圍就是3*3個方格世界,並且能移動的距離也在這個范圍之內引申:跟著螞蟻的蹤跡,你找到了什麼?通過上面的原理敘述和實際操作,我們不難發現螞蟻之所以具有智能行為,完全歸功於它的簡單行為規則,而這些規則綜合起來具有下面兩個方面的特點:1、多樣性2、正反饋多樣性保證了螞蟻在覓食的時候不置走進死胡同而無限循環,正反饋機制則保證了相對優良的信息能夠被保存下來.我們可以把多樣性看成是一種創造能力,而正反饋是一種學習強化能力.正反饋的力量也可以比喻成權威的意見,而多樣性是打破權威體現的創造性,正是這兩點小心翼翼的巧妙結合才使得智能行為涌現出來了.引申來講,大自然的進化,社會的進步、人類的創新實際上都離不開這兩樣東西,多樣性保證了系統的創新能力,正反饋保證了優良特性能夠得到強化,兩者要恰到好處的結合.如果多樣性過剩,也就是系統過於活躍,這相當於螞蟻會過多的隨機運動,它就會陷入混沌狀態;而相反,多樣性不夠,正反饋機制過強,那麼系統就好比一潭死水.這在蟻群中來講就表現為,螞蟻的行為過於僵硬,當環境變化了,螞蟻群仍然不能適當的調整.既然復雜性、智能行為是根據底層規則涌現的,既然底層規則具有多樣性和正反饋特點,那麼也許你會問這些規則是哪裡來的?多樣性和正反饋又是哪裡來的?我本人的意見:規則來源於大自然的進化.而大自然的進化根據剛才講的也體現為多樣性和正反饋的巧妙結合.而這樣的巧妙結合又是為什麼呢?為什麼在你眼前呈現的世界是如此栩栩如生呢?答案在於環境造就了這一切,之所以你看到栩栩如生的世界,是因為那些不能夠適應環境的多樣性與正反饋的結合都已經死掉了,被環境淘汰了!蟻群演算法的實現下面的程序開始運行之後,螞蟻們開始從窩里出動了,尋找食物;他們會順著屏幕爬滿整個畫面,直到找到食物再返回窩.其中,『F』點表示食物,『H』表示窩,白色塊表示障礙物,『+』就是螞蟻了.
『貳』 蟻群演算法及其應用實例
蟻群演算法(ant colony optimization, ACO),又稱螞蟻演算法,是一種對自然界螞蟻的尋徑方式進行模擬而得到的一種仿生演算法,是一種用來在圖中尋找優化路徑的機率型演算法。
螞蟻在運動過程中,可以在行走的路徑上留下信息素,後來的螞蟻可以感知到信息素的存在,信息素濃度越高的路徑越容易被後來的螞蟻選擇,從而形成一種正反饋現象。
它能夠求出從原點出發,經過若干個給定的需求點,最終返回原點的最短路徑。這也就是著名的旅行商問題(Traveling Saleman Problem,TSP)。
若螞蟻從A點出發到D點覓食,它可以隨機從ABD或ACD中選擇一條路。假設初始時為每條路分配一隻螞蟻,每個時間單位行走一步,則經過8個時間單位後,情形如下圖所示:ABD路線的螞蟻到達D點,ACD路線的螞蟻到達C點。
那麼,再過8個時間單位,很容易可以得到下列情形:ABD路線的螞蟻回到A點,ACD路線的螞蟻到達D點。
α 代表信息素量對是否選擇當前路徑的影響程度,反映了蟻群在路徑搜索中隨機性因素作用的強度。
α 越大,螞蟻選擇以前走過的路徑的可能性越大,搜索的隨機性就會減弱。
α 過小,會導致蟻群搜索過早陷入局部最優,取值范圍通常為[1,4]。
β 反映了啟發式信息在指導蟻群搜索中的相對重要程度,蟻群尋優過程中先驗性、確定性因素作用的強度。
β 過大,雖然收斂速度加快,但是易陷入局部最優。
β 過小,蟻群易陷入純粹的隨機搜索,很難找到最優解。通常取[0,5]。
ρ 反映了信息素的蒸發程度,相反,1-ρ 表示信息素的保留水平
ρ 過大,信息素會發過快,容易導致最優路徑被排除。
ρ 過小,各路徑上信息素含量差別過小,以前搜索過的路徑被在此選擇的可能性過大,會影響演算法的隨機性和全局搜索能力。通常取[0.2,0.5]。
m過大,每條路徑上信息素趨於平均,正反饋作用減弱,從而導致收斂速度減慢。
m過小,可能導致一些從未搜索過的路徑信息素濃度減小為0,導致過早收斂,解的全局最優性降低
總信息量Q對演算法性能的影響有賴於αβρ的選取,以及演算法模型的選擇。
Q對ant-cycle模型蟻群演算法的性能沒有明顯影響,不必特別考慮,可任意選取。
『叄』 蟻群演算法的相關研究
跟著螞蟻的蹤跡,你找到了什麼?通過上面的原理敘述和實際操作,我們不難發現螞蟻之所以具有智能行為,完全歸功於它的簡單行為規則,而這些規則綜合起來具有下面兩個方面的特點:
1、多樣性
2、正反饋
多樣性保證了螞蟻在覓食的時候不至走進死胡同而無限循環,正反饋機制則保證了相對優良的信息能夠被保存下來。我們可以把多樣性看成是一種創造能力,而正反饋是一種學習強化能力。正反饋的力量也可以比喻成權威的意見,而多樣性是打破權威體現的創造性,正是這兩點小心翼翼的巧妙結合才使得智能行為涌現出來了。
引申來講,大自然的進化,社會的進步、人類的創新實際上都離不開這兩樣東西,多樣性保證了系統的創新能力,正反饋保證了優良特性能夠得到強化,兩者要恰到好處的結合。如果多樣性過剩,也就是系統過於活躍,這相當於螞蟻會過多的隨機運動,它就會陷入混沌狀態;而相反,多樣性不夠,正反饋機制過強,那麼系統就好比一潭死水。這在蟻群中來講就表現為,螞蟻的行為過於僵硬,當環境變化了,螞蟻群仍然不能適當的調整。
既然復雜性、智能行為是根據底層規則涌現的,既然底層規則具有多樣性和正反饋特點,那麼也許你會問這些規則是哪裡來的?多樣性和正反饋又是哪裡來的?我本人的意見:規則來源於大自然的進化。而大自然的進化根據剛才講的也體現為多樣性和正反饋的巧妙結合。而這樣的巧妙結合又是為什麼呢?為什麼在你眼前呈現的世界是如此栩栩如生呢?答案在於環境造就了這一切,之所以你看到栩栩如生的世界,是因為那些不能夠適應環境的多樣性與正反饋的結合都已經死掉了,被環境淘汰了! 蟻群演算法的由來:螞蟻是地球上最常見、數量最多的昆蟲種類之一,常常成群結隊地出現在人類的日常生活環境中。這些昆蟲的群體生物智能特徵,引起了一些學者的注意。義大利學者M.Dorigo,V.Maniezzo等人在觀察螞蟻的覓食習性時發現,螞蟻總能找到巢穴與食物源之間的最短路徑。經研究發現,螞蟻的這種群體協作功能是通過一種遺留在其來往路徑上的叫做信息素(Pheromone)的揮發性化學物質來進行通信和協調的。化學通信是螞蟻採取的基本信息交流方式之一,在螞蟻的生活習性中起著重要的作用。通過對螞蟻覓食行為的研究,他們發現,整個蟻群就是通過這種信息素進行相互協作,形成正反饋,從而使多個路徑上的螞蟻都逐漸聚集到最短的那條路徑上。
這樣,M.Dorigo等人於1991年首先提出了蟻群演算法。其主要特點就是:通過正反饋、分布式協作來尋找最優路徑。這是一種基於種群尋優的啟發式搜索演算法。它充分利用了生物蟻群能通過個體間簡單的信息傳遞,搜索從蟻巢至食物間最短路徑的集體尋優特徵,以及該過程與旅行商問題求解之間的相似性。得到了具有NP難度的旅行商問題的最優解答。同時,該演算法還被用於求解Job-Shop調度問題、二次指派問題以及多維背包問題等,顯示了其適用於組合優化類問題求解的優越特徵。
多年來世界各地研究工作者對蟻群演算法進行了精心研究和應用開發,該演算法現已被大量應用於數據分析、機器人協作問題求解、電力、通信、水利、采礦、化工、建築、交通等領域。
蟻群演算法之所以能引起相關領域研究者的注意,是因為這種求解模式能將問題求解的快速性、全局優化特徵以及有限時間內答案的合理性結合起來。其中,尋優的快速性是通過正反饋式的信息傳遞和積累來保證的。而演算法的早熟性收斂又可以通過其分布式計算特徵加以避免,同時,具有貪婪啟發式搜索特徵的蟻群系統又能在搜索過程的早期找到可以接受的問題解答。這種優越的問題分布式求解模式經過相關領域研究者的關注和努力,已經在最初的演算法模型基礎上得到了很大的改進和拓展。
經過一定時間,從食物源返回的螞蟻到達D點同樣也碰到障礙物,也需要進行選擇。此時A, B兩側的信息素濃度相同,它們仍然一半向左,一半向右。但是當A側的螞蟻已經完全繞過障礙物到達C點時,B側的螞蟻由於需走的路徑更長,還不能到達C點,圖3表示蟻群在障礙物前經過一段時間後的情形。
此時對於從蟻巢出發來到C點的螞蟻來說,由於A側的信息素濃度高,B側的信息素較低,就傾向於選擇A側的路徑。這樣的結果是A側的螞蟻越來越多,最終所有螞蟻都選擇這條較短的路徑,圖4 表示蟻群最終選擇的路徑
上述過程,很顯然是由螞蟻所留下的信息素的「正反饋」過程而導致的。螞蟻個體就是通過這種信息的交流來達到搜索食物的目的。蟻群演算法的基本思想也是從這個過程轉化而來的。
蟻群演算法的特點:
1)蟻群演算法是一種自組織的演算法。在系統論中,自組織和它組織是組織的兩個基本分類,其區別在於組織力或組織指令是來自於系統的內部還是來自於系統的外部,來自於系統內部的是自組織,來自於系統外部的是他組織。如果系統在獲得空間的、時間的或者功能結構的過程中,沒有外界的特定干預,我們便說系統是自組織的。在抽象意義上講,自組織就是在沒有外界作用下使得系統熵減小的過程(即是系統從無序到有序的變化過程)。蟻群演算法充分體現了這個過程,以螞蟻群體優化為例子說明。當演算法開始的初期,單個的人工螞蟻無序的尋找解,演算法經過一段時間的演化,人工螞蟻間通過信息激素的作用,自發的越來越趨向於尋找到接近最優解的一些解,這就是一個無序到有序的過程。
2)蟻群演算法是一種本質上並行的演算法。每隻螞蟻搜索的過程彼此獨立,僅通過信息激素進行通信。所以蟻群演算法則可以看作是一個分布式的多agent系統,它在問題空間的多點同時開始進行獨立的解搜索,不僅增加了演算法的可靠性,也使得演算法具有較強的全局搜索能力。
3)蟻群演算法是一種正反饋的演算法。從真實螞蟻的覓食過程中我們不難看出,螞蟻能夠最終找到最短路徑,直接依賴於最短路徑上信息激素的堆積,而信息激素的堆積卻是一個正反饋的過程。對蟻群演算法來說,初始時刻在環境中存在完全相同的信息激素,給予系統一個微小擾動,使得各個邊上的軌跡濃度不相同,螞蟻構造的解就存在了優劣,演算法採用的反饋方式是在較優的解經過的路徑留下更多的信息激素,而更多的信息激素又吸引了更多的螞蟻,這個正反饋的過程使得初始的不同得到不斷的擴大,同時又引導整個系統向最優解的方向進化。因此,正反饋是螞蟻演算法的重要特徵,它使得演算法演化過程得以進行。
4)蟻群演算法具有較強的魯棒性。相對於其它演算法,蟻群演算法對初始路線要求不高,即蟻群演算法的求解結果不依賴於初始路線的選擇,而且在搜索過程中不需要進行人工的調整。其次,蟻群演算法的參數數目少,設置簡單,易於蟻群演算法應用到其它組合優化問題的求解。
蟻群演算法的應用進展以蟻群演算法為代表的蟻群智能已成為當今分布式人工智慧研究的一個熱點,許多源於蜂群和蟻群模型設計的演算法己越來越多地被應用於企業的運轉模式的研究。美國五角大樓正在資助關於群智能系統的研究工作-群體戰略(Swarm Strategy),它的一個實戰用途是通過運用成群的空中無人駕駛飛行器和地面車輛來轉移敵人的注意力,讓自己的軍隊在敵人後方不被察覺地安全進行。英國電信公司和美國世界通信公司以電子螞蟻為基礎,對新的電信網路管理方法進行了試驗。群智能還被應用於工廠生產計劃的制定和運輸部門的後勤管理。美國太平洋西南航空公司採用了一種直接源於螞蟻行為研究成果的運輸管理軟體,結果每年至少節約了1000萬美元的費用開支。英國聯合利華公司己率先利用群智能技術改善其一家牙膏廠的運轉情況。美國通用汽車公司、法國液氣公司、荷蘭公路交通部和美國一些移民事務機構也都採用這種技術來改善其運轉的機能。鑒於群智能廣闊的應用前景,美國和歐盟均於近幾年開始出資資助基於群智能模擬的相關研究項目,並在一些院校開設群體智能的相關課程。國內,國家自然科學基金」十五」期間學科交叉類優先資助領域中的認知科學及其信息處理的研究內容中也明確列出了群智能領域的進化、自適應與現場認知主題。
蟻群優化演算法最初用於解決TSP問題,經過多年的發展,已經陸續滲透到其他領域中,比如圖著色問題、大規模集成電路設計、通訊網路中的路由問題以及負載平衡問題、車輛調度問題等。蟻群演算法在若干領域己獲得成功的應用,其中最成功的是在組合優化問題中的應用。
在網路路由處理中,網路的流量分布不斷變化,網路鏈路或結點也會隨機地失效或重新加入。蟻群的自身催化與正向反饋機制正好符合了這類問題的求解特點,因而,蟻群演算法在網路領域得到一定應用。蟻群覓食行為所呈現出的並行與分布特性使得演算法特別適合於並行化處理。因而,實現演算法的並行化執行對於大量復雜的實際應用問題的求解來說是極具潛力的。
在某群體中若存在眾多無智能的個體,它們通過相互之間的簡單合作所表現出來的智能行為即稱為集群智能(Swarm Intelligence)。互聯網上的交流,不過是更多的神經元連接(人腦)通過互聯網相互作用的結果,光纜和路由器不過是軸突和突觸的延伸。從自組織現象的角度上看,人腦的智能和蟻群也沒有本質上的區別,單個神經元沒有智能可言,單個螞蟻也沒有,但是通過連接形成的體系,是一個智能體。(作者: 李精靈 編選:中國電子商務研究中心)
『肆』 有誰能用簡單明了的話給我解釋一下蟻群演算法100分送上!
蟻群演算法就是模擬螞蟻覓食行為的一種群體只能演算法。
螞蟻在找尋食物的過程中會在覓食的路徑上留下信息素,蟻群根據信息素的堆積濃度可以很快找出食物與蟻穴之間的最短路徑。
你可以看一下M.Dorigo的兩篇經典論文「Ant Colony Optimizaiton」和「Ant Algorithm for discrete optimization」。
之所以推薦這兩文獻的原因是:M.Dorigo是蟻群演算法的創建者,他的文章很具有權威性。
『伍』 蟻群演算法的基本原理
基本原理:
某一條路徑越短,路徑上經過的螞蟻越多,其信息素遺留的也就越多,信息素的濃度也就越高,螞蟻選擇這條路徑的概率也就越大,由此構成了正反饋過程,從而逼近了最優路徑,找到最優路徑。當螞蟻從食物源走到蟻穴,或者從蟻穴走到食物的地方,都會在經過的路上釋放信息素,螞蟻可以感覺出路徑上信息素濃度的大小,並且以較高的概率選擇信息素濃度較高的路徑。
『陸』 遺傳演算法,蟻群演算法和粒子群演算法都是什麼演算法
遺傳演算法(Genetic Algorithm)是模擬達爾文生物進化論的自然選擇和遺傳學機理的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優解的方法。
蟻群演算法(ant colony optimization, ACO),又稱螞蟻演算法,是一種用來在圖中尋找優化路徑的機率型演算法。
粒子群演算法,也稱粒子群優化演算法(Particle Swarm Optimization),縮寫為 PSO, 是近年來由J. Kennedy和R. C. Eberhart等[1] 開發的一種新的進化演算法(Evolutionary Algorithm - EA)。PSO 演算法屬於進化演算法的一種,和模擬退火演算法相似,它也是從隨機解出發,通過迭代尋找最優解,它也是通過適應度來評價解的品質,但它比遺傳演算法規則更為簡單,它沒有遺傳演算法的「交叉」(Crossover) 和「變異」(Mutation) 操作,它通過追隨當前搜索到的最優值來尋找全局最優。
『柒』 蟻群演算法的概念,最好能舉例說明一些蟻群演算法適用於哪些問題!
概念:蟻群演算法(ant colony optimization, ACO),又稱螞蟻演算法,是一種用來在圖中尋找優化路徑的機率型演算法。它由Marco Dorigo於1992年在他的博士論文中提出,其靈感來源於螞蟻在尋找食物過程中發現路徑的行為。蟻群演算法是一種模擬進化演算法,初步的研究表明該演算法具有許多優良的性質.針對PID控制器參數優化設計問題,將蟻群演算法設計的結果與遺傳演算法設計的結果進行了比較,數值模擬結果表明,蟻群演算法具有一種新的模擬進化優化方法的有效性和應用價值
其原理:為什麼小小的螞蟻能夠找到食物?他們具有智能么?設想,如果我們要為螞蟻設計一個人工智慧的程序,那麼這個程序要多麼復雜呢?首先,你要讓螞蟻能夠避開障礙物,就必須根據適當的地形給它編進指令讓他們能夠巧妙的避開障礙物,其次,要讓螞蟻找到食物,就需要讓他們遍歷空間上的所有點;再次,如果要讓螞蟻找到最短的路徑,那麼需要計算所有可能的路徑並且比較它們的大小,而且更重要的是,你要小心翼翼的編程,因為程序的錯誤也許會讓你前功盡棄。這是多麼不可思議的程序!太復雜了,恐怕沒人能夠完成這樣繁瑣冗餘的程序
應用范圍:螞蟻觀察到的范圍是一個方格世界,螞蟻有一個參數為速度半徑(一般是3),那麼它能觀察到的范圍就是3*3個方格世界,並且能移動的距離也在這個范圍之內
引申:跟著螞蟻的蹤跡,你找到了什麼?通過上面的原理敘述和實際操作,我們不難發現螞蟻之所以具有智能行為,完全歸功於它的簡單行為規則,而這些規則綜合起來具有下面兩個方面的特點: 1、多樣性 2、正反饋 多樣性保證了螞蟻在覓食的時候不置走進死胡同而無限循環,正反饋機制則保證了相對優良的信息能夠被保存下來。我們可以把多樣性看成是一種創造能力,而正反饋是一種學習強化能力。正反饋的力量也可以比喻成權威的意見,而多樣性是打破權威體現的創造性,正是這兩點小心翼翼的巧妙結合才使得智能行為涌現出來了。 引申來講,大自然的進化,社會的進步、人類的創新實際上都離不開這兩樣東西,多樣性保證了系統的創新能力,正反饋保證了優良特性能夠得到強化,兩者要恰到好處的結合。如果多樣性過剩,也就是系統過於活躍,這相當於螞蟻會過多的隨機運動,它就會陷入混沌狀態;而相反,多樣性不夠,正反饋機制過強,那麼系統就好比一潭死水。這在蟻群中來講就表現為,螞蟻的行為過於僵硬,當環境變化了,螞蟻群仍然不能適當的調整。 既然復雜性、智能行為是根據底層規則涌現的,既然底層規則具有多樣性和正反饋特點,那麼也許你會問這些規則是哪裡來的?多樣性和正反饋又是哪裡來的?我本人的意見:規則來源於大自然的進化。而大自然的進化根據剛才講的也體現為多樣性和正反饋的巧妙結合。而這樣的巧妙結合又是為什麼呢?為什麼在你眼前呈現的世界是如此栩栩如生呢?答案在於環境造就了這一切,之所以你看到栩栩如生的世界,是因為那些不能夠適應環境的多樣性與正反饋的結合都已經死掉了,被環境淘汰了! 蟻群演算法的實現 下面的程序開始運行之後,螞蟻們開始從窩里出動了,尋找食物;他們會順著屏幕爬滿整個畫面,直到找到食物再返回窩。 其中,『F』點表示食物,『H』表示窩,白色塊表示障礙物,『+』就是螞蟻了。
具體參考http://ke..com/view/539346.htm
希望對你有幫助,謝謝。