• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      蟻群算法求解洛陽分院初中高教機、航班起飛順序的最優(yōu)解

      2016-01-01 00:00:00盛騰飛
      科技創(chuàng)新與應用 2016年2期

      摘 要:隨著洛陽機場的擴建,洛陽市欲打造空港產(chǎn)業(yè)聚集地,必然會造成航班量的提升。此外中國民航飛行學院洛陽分院飛行訓練任務的加劇,也極大地考驗洛陽北郊機場負荷極限。不同的飛機,初中高教機以及空客、波音的民航客機對起飛、進場時間,在跑道上滑行的時間等都有不同的時限要求。通過優(yōu)化的算法,合理安排不同飛機的起飛順序,一方面可以極大地增加機場的負荷量,另一方面也可以節(jié)約運營的時間成本,對于機場交通管制擁有積極的意義。研究在單一變量下最優(yōu)解問題的相關模型和方法有很多,但是,在多種變量作用下求解最優(yōu)解問題卻較難找到合適的相關模型,蟻群算法就為解決在復雜變量環(huán)境下最優(yōu)解問題而生的,其靈感來源于螞蟻在尋找食物的過程中發(fā)現(xiàn)路徑的行為。蟻群算法是一種模擬進化算法,該算法具有許多優(yōu)良的性質(zhì)。文章的目的在于收集洛陽分院初中高教機以及空客波音相關機型的起落要求的數(shù)據(jù),抽象出有效的數(shù)學模型,用數(shù)學建模的思想來管理數(shù)據(jù),并通過蟻群算法,探究初中高教機及航班飛機起飛順序的最優(yōu)解。

      關鍵詞:蟻群算法;數(shù)學建模;最優(yōu)解

      1 群體智能簡介

      蟻群算法,英文名稱:Ant Colony Optimization,(ACO),在有些文獻中亦稱為螞蟻算法,由DORIGO博士從觀察螞蟻尋找食物的過程中逐步發(fā)現(xiàn)路徑的行為而獲得靈感。蟻群算法的本質(zhì)是一種模擬進化算法,具有很多優(yōu)良的性質(zhì),根據(jù)數(shù)值仿真實驗,蟻群算法具有現(xiàn)實的有效性和很高的應用價值,但在熟悉蟻群算法和對蟻群建立理想模型之前,應該首先討論群體智能的相關概念。

      由于螞蟻是一種社會化協(xié)作的昆蟲,螞蟻群體是由許多能力單一而且有限的單一螞蟻組成的群體,但是螞蟻的每個個體又可以通過彼此間簡單的合作,完成一個較為復雜的整體性的工作,在混沌理論里,將螞蟻種群的這種能力稱為“群體智能”。和螞蟻群體類似,蜂群的單個個體智能水平亦不高,同樣沒有統(tǒng)一的指揮,但是蜂群卻可以建起巨大的蜂巢、運送食物、繁殖后代,因為蜂群和蟻群一樣,都是一種擁有完備結(jié)構(gòu)和社會組織的分布式系統(tǒng)。由于群體組織的原因,依靠單個個體,無法完成任何復雜的工作,若依靠整個群體的力量,螞蟻可以完成非常復雜的任務。

      2 蟻群算法的數(shù)學模型

      雖然蟻群算法有著智能化、自組織性等諸多優(yōu)點,但也存在搜索時間過長、易于停滯的問題,為了克服經(jīng)典算法的這些缺點,很多國家和地區(qū)的學者提出了不少改進算法。

      1996年L.M.Gambardella和M.Dorigo又提出了一種修正算法,他們稱之為螞蟻種群系統(tǒng)算法[5]ACS,并且將AS算法和ACS算法定義為螞蟻種群優(yōu)化算法ACO。

      1997年T.Stitzle提出了改進的最大最小螞蟻系統(tǒng)MMAS算法[6]。

      1999年,我國學者吳慶洪提出了具有變異特性的蟻群算法[7]。

      1999年,意大利學者F.Abbattista等提出了和遺傳算法相結(jié)合的算法[8]。

      由于文章討論洛陽機場的飛機起降順序問題,數(shù)據(jù)量較小,問題并不復雜,所以在算法的選擇上以M.Dorigo的經(jīng)典蟻群優(yōu)化算法為主,下面就以基于蟻群的螞蟻系統(tǒng)的算法數(shù)學模型為例,介紹經(jīng)典蟻群優(yōu)化算法的數(shù)學模型和優(yōu)化思路,下面求解著名的n個城市的旅行商問題為例來說明經(jīng)典蟻群算法模型。

      2.1 問題簡述

      給定n個城市以及各城市間的距離,旅行商問題可以描述為求一條經(jīng)過各城市一次且僅一次的最短路線問題。

      2.2 模型建立

      對n個城市建立理想平面坐標系,城市i的坐標為(xi,yi),城市j的坐標為(xj,yj),設dij為城市i與j之間的歐拉距離,則:

      dij=■

      其圖論描述為:給定圖G=(N,E),其中N為城市集合,E為城市之間相互連接組成的邊的集合,已知城市間鏈接距離,要求確定一條長度最短的回路。即走完所有城市一次且僅一次的最短回路,此問題可以描述為:“適當選擇圖上所有頂點的一個排列以組成最短路徑”

      引入決策變量:

      Xij=1(訪問i后訪問j)0(其他情況)

      則目標函數(shù)可以表示為:

      minZ=■Xijdij

      將最短距離的尋找交給蟻群來解決:

      令:

      bi(t),(i=1,2,…,n)

      為在時間t在城市i的螞蟻的數(shù)目,令:

      m=■bi(t)

      為螞蟻的總數(shù),且每個螞蟻都是有如下特征的簡單智能體:

      (1)它會根據(jù)某種概率選擇走哪一個城市,這個概率是城市距離和同他連接路徑的信息素的數(shù)量的函數(shù)。(2)為了使得螞蟻能夠完全合理的旅行,必須禁止螞蟻旅行訪問過的城市,這個可以通過一個緊急表格來實現(xiàn)。(3)當螞蟻完成了一次旅行,它就在走過的每個路徑上(i,j)釋放適量的信息素。

      令?灼ij(t)是時間t路徑上(i,j)上的信息素強度。每個螞蟻在時間t時刻選擇下一個時間t+1要到達的城市,在時間間隔(t,t+1)內(nèi),對m個螞蟻,調(diào)用螞蟻系統(tǒng)迭代算法一次,算法的n次迭代叫做一圈,每一只螞蟻完成了遍歷所有城市一遍的一次旅行。在每只螞蟻k構(gòu)造出一個完整閉合路徑并計算了相應長度之后(用Lk表示),路徑上的信息素強度會根據(jù)以下公式得到更新:

      ?灼ij(t+n)=?籽×?灼ij(t)+△?灼ij

      其中?籽(0?燮?籽?燮1)是一個常數(shù),它表示信息素揮發(fā)后的剩余度,即螞蟻爬行軌跡的持久性,1-?漬表示在時間t和時間t+n內(nèi)信息素的揮發(fā),并且在上述公式里面有:

      △?灼ij=■△?灼ijk

      ?灼ij(t)表示路徑(i,j)在t時刻的信息素軌跡強度,△?灼ijk表示螞蟻在時間間隔(t,t+n)內(nèi)路徑(i,j)上留下來的單位長度的路徑信息素數(shù)量,其具體公式為:

      其中Q是個常數(shù),且Lk表示沒一個螞蟻k旅行過的路徑總長度。

      為了確保每一只螞蟻訪問每一個節(jié)點一次,并且避免重復,沒一個螞蟻都已一個禁忌表forbidk,用來存儲螞蟻當前訪問過的城市(節(jié)點),用禁忌表使螞蟻到這些城市的轉(zhuǎn)移概率為0,用計算機語言來講,就是禁止“螞蟻”訪問這些節(jié)點。當一次旅行完成之后,用禁忌表來計算問題現(xiàn)在的點。然后清空禁忌表,螞蟻就可以重新自由的選擇新的路徑了。forbidk(S)表示禁忌表中第s個元素,表示在現(xiàn)在的一次旅行中k個螞蟻訪問的第s個城市。

      因為要討論每個螞蟻選擇一個城市的概率,這里引入一個能見度的概念,用?濁ij來表示,則有:

      ?濁ij=■

      表示路徑(i,j)的能見度,對于每一個螞蟻k來說,從城市i到城市j的額轉(zhuǎn)移概率為:

      在上式中allowedk={N-forbidk},α和β是控制路徑能見度相對重要性的參數(shù),若(i,j)之間的距離比較短,則?濁ij較大,pij也較大。也就是說,距離較近的城市以較大的概率被選擇。

      這樣就構(gòu)建好了蟻群算法的基本模型。

      2.3 模型解釋

      下面文章以計算機編程的思想表述蟻群算法的基本模型,整個系統(tǒng)在0時刻進行初始化過程,給每一條邊(i,j)設定一個初始信息素強度值?灼ij(0)。每一只螞蟻的forbidk的第一個元素為這個螞蟻出發(fā)的城市,即它的初始城市。每一只螞蟻從城市i移動到城市j,螞蟻會根據(jù)兩個城市之間的概率函數(shù)選擇移動城市,在城市從i到j移動的概率即為p■■■■(t)。此時有兩個原則需要注意:(1)信息素強度:表征過去有多少螞蟻選擇了這條路徑(i,j);(2)能見度函數(shù):說明了越近的城市,被訪問的期望值就越大。

      顯然在p■■(t)函數(shù)中,如果α=0,就不在考慮路徑上的信息素的作用,因為(?灼ij(t))α=1為定常數(shù),這樣模型就簡化稱為一個具有多起點的隨機貪心搜索算法。在n次循環(huán)以后,所有的螞蟻都對所有的路徑完成了一次遍歷,所以每一只螞蟻的forbidk就會滿。在此時就可以計算每一個螞蟻k旅行過的路徑總長度Lk,△?灼ijk也會隨著信息素強度的更新方程而更新。與此同時,由螞蟻找到最短路徑(即minkLk,k=1,2,3,…m)將被系統(tǒng)保存,所有禁忌表將被清空。重復這一過程,直到周游計數(shù)器達到最大NcMax或者所有螞蟻都走同一條路線。

      3 洛陽機場飛機起順序問題的模型建立

      洛陽機場飛機起降環(huán)境比較復雜,機型眾多,就目前的起飛情況來看,主要有SR20機型,PA-44機型,MA600機型,和航班的A320機型,以及少量B737機型,如果想建立數(shù)學模型,則必須將一些問題簡單化、抽象化、理想化。模型的建立對實際的運營情況具有現(xiàn)實的指導意義。

      3.1 模型描述

      洛陽機場停機坪目前共分為三塊區(qū)域:為了便于表述,本論文給三塊區(qū)域分別編號:

      1號區(qū)域:C、D、E號機庫門口,主要用于停放SR20,可以用于停放PA-44但幾率很少。

      2號區(qū)域:A、B號機庫門口至二號道口北側(cè)停機坪,主要用于停放SR20、PA-44和MA600。

      3號區(qū)域:航站樓北側(cè),有廊橋的區(qū)域,主要用于停放A320,

      B737等重型民航客機。

      標準模型下有如下假設:(1)所有停放在機坪上的飛機分布合理,即任何一架飛機劃出進入跑道都是順暢的、無阻礙的,都不會受其他飛機位置的影響。(2)每一架飛機無論是小型飛機還是中大型飛機,從飛機開始滑行至滑行到跑道端頭,所花的時間t相同。即影響起飛效率的單一變量就是起飛間隔。(3)理想化起飛,飛機起飛不受環(huán)境因素限制。

      標準模型下的幾點說明:(1)為了考慮軟件的通用性,任

      何區(qū)域所停放的飛機種類可以自定義;(2)不同類型飛機的起飛間隔可以自定義;(3)涉及蟻群算法的各種常用參數(shù)可以自定義。

      有以上說明后,模型可以表述如下:

      假設洛陽機場1號區(qū)域停放了a1架SR20,b1架PA-44,c1架MA600/A320/B-737(可根據(jù)實際情況令相應種類的飛機數(shù)量為0);2號區(qū)域停放了a2架SR20,b2架PA-44,c2架MA600/A320/B-737;3號區(qū)域停放了a3架SR20,b3架PA-44,c3架MA600/A320/B-737。不同種類飛機的起飛受飛機種類的限制,這個數(shù)值一般和飛機的起飛重量,體積等參數(shù)有關,例如,SR20屬于輕型飛機,一架SR20起飛以后,緊接著讓一架SR20飛機起飛,則前后兩種都屬于輕型飛機,他們之間的起飛間隔應該為t1,如果前面是一架SR20,后面是一架中型的PA-44,則起飛時間間隔為t2…t9,則一共有如表1的幾種排列組合。

      最終所求問題就是:合理安排各個飛機的起飛順序,使總得起飛時間最小。

      3.2 程序設計解決實際模型

      考慮程序的通用性,本設計將很多涉及蟻群算法的常數(shù)參數(shù)可以進行自定義,在實際運算過程中,這些參數(shù)是可以通過實驗來測算的,在使用本軟件的時候只要將不同機場的測算結(jié)果進行填入本軟件,既可以計算相應的排序結(jié)果,所以本軟件在設計之初就考慮了軟件的通用性。

      洛陽機場一共有三個停機位,暫定名為1號,2號,3號停機位,原則上,1號機位只能用來停SR20,2號機位可以停SR20,PA-44,MA600,3號機位只能停A320,B737,為了增加軟件的通用性,本設計可以任意自定義每種機型的數(shù)目,如果不能停的機型,就可以將其的數(shù)量設置為0。此外,為了讓本軟件可以有廣泛的應用,本設計設置了7個停機坪號,以應付中國絕大多數(shù)機場的應用場景,同樣,用不到的機坪,可以直接在飛機數(shù)目框中填0。軟件設計圖如圖1所示。

      圖1 程序主界面

      由前面的論述我們可知,蟻群算法在實際應用過程中要確定五個常數(shù)參數(shù)他們分別是:α,β,ρ,Q和NcMax,根據(jù)前面的理論概述,我們可以得到每個常數(shù)參數(shù)所代表的含義:(1)α和β控制路徑和能見度相對重要性的參數(shù),如果要計算具體環(huán)境走完路徑的真實值,α和β應由實驗測得,在本軟件中,如果只做定性排序,則只要α和β大于1即可。(2)ρ表示信息素揮發(fā)后的剩余度,且0≤ρ≤1),在真實環(huán)境中同樣由實驗測得,定性分析不影響排序結(jié)果。(3)Q為常數(shù),它可以決定每段路徑的信息素總量,亦表征螞蟻個體散播信息素的能力,只要Q設定為普通自然數(shù),不影響排序結(jié)果。(4)NcMax在本軟件中表示循環(huán)次數(shù),NcMax越大,列出的可能性越多,則最短時間越接近真實最短時間。當NcMax≤A■■,繼續(xù)增大NcMax就不再有意義,因此如果想得到真實的最短時間,應該讓NcMax≥A■■。

      點擊主界面的“參數(shù)”按鈕,就可以進行算法設置本。設計的參數(shù)輸入框如圖2所示。

      表1所討論的起飛間隔參數(shù),在主界面的“間隔”按鈕下進行設置,其截面如圖3所示。

      圖3 起飛間隔設置

      將參數(shù)設置好以后,點擊“排序”按鈕就可以計算出,最優(yōu)的起飛順序,并且給出起飛時間,圖4為排序結(jié)果的事例。

      圖4

      針對以上排序結(jié)果,做如下解釋:L代表輕型飛機,1代表1號停機坪,A代表此停機坪的第一架飛機,B代表第二架,一次類推,則排序結(jié)果如上述所示。

      4 結(jié)束語

      通過多方的建模驗證,本程序可以很好地解決航班起飛順序排序最優(yōu)解問題,當然,通過和空管部門有關同志的交流得知,實際安排飛機起飛順序和多方面因素有關系,不能一味追求最短時間。因此本程序只是用創(chuàng)新的方法解決一個工程問題,只作為純技術應用的討論,或作為洛陽機場空管部門安排飛機起飛順序的參考,并不作為安排起飛順序的指導程序。

      另外,由于軟件在設計之初就考慮了軟件的通用性,因此,本軟件并不僅僅局限于給航班起飛順序排序,理論上,本軟件適用于解決多種有時間間隔要求的排序最優(yōu)解問題。

      參考文獻

      [1]李麗香,彭海朋,楊義先.混沌蟻群算法及應用[M].中國科學技術出版社,2003.

      [2]李士勇.蟻群算法及其應用[M].哈爾濱:哈爾濱工業(yè)大學出版社,2004.

      [3]吳啟迪,汪鐳.智能蟻群算法及應用[M].上海:上??萍汲霭嫔纾?002.

      [4]馬良,朱剛.蟻群優(yōu)化算法[M].科技出版社,2008.

      [5]段海濱.蟻群算法原理及其應用[M].北京:科學出版社,2005.

      [6]劉浩.MATLAB R2012a完全自學一本通[M].電子工業(yè)出版社,2013.

      [8]司守奎.數(shù)學建模與應用[M].長沙:國防工業(yè)出版社,2011.

      [9]韓中庚.數(shù)學建模方法與應用[M].高等教育出版社,2009.

      [10]林道榮,秦志林.數(shù)學實驗與數(shù)學建模[M].科學出版社,2011.

      鄂伦春自治旗| 乌兰浩特市| 鹰潭市| 大理市| 黄山市| 资阳市| 临沭县| 安图县| 禄丰县| 阿合奇县| 阿拉尔市| 昔阳县| 皋兰县| 浙江省| 石棉县| 昌平区| 汝南县| 凌云县| 大厂| 屏南县| 北流市| 龙门县| 楚雄市| 西吉县| 黄龙县| 托克逊县| 拉孜县| 嫩江县| 新民市| 合川市| 惠州市| 新平| 璧山县| 四子王旗| 射阳县| 洛浦县| 广宗县| 广德县| 平果县| 双鸭山市| 宣威市|