關鍵詞:數(shù)學建模;智能優(yōu)化算法;
一、數(shù)學建模與智能優(yōu)化算法基礎理論
數(shù)學建模是一個復雜且系統(tǒng)的過程,它需要建模者深入細致地觀察問題,然后通過實驗、分析、判斷和歸納來建立。數(shù)學建模使連接數(shù)學和現(xiàn)實的橋梁[1]。在目前的高校數(shù)學專業(yè)教學中,教師往往通過數(shù)學建模教學培養(yǎng)學生的數(shù)學應用能力。數(shù)據(jù)建模的主要目的是解決現(xiàn)實中的問題,然而現(xiàn)實中的很多問題沒有良性結構,采用傳統(tǒng)的優(yōu)化算法無法得到最優(yōu)解,這就需要根據(jù)問題的本來結構和規(guī)律建立符合問題實際的非標準模型,然后結合人的感知、分析、判斷、歸納等能力,從非標準模型中找到該問題的最優(yōu)解。
智能優(yōu)化算法具有全局、并行高效的優(yōu)化性能,具有通用性強、魯棒性強、無需問題特殊信息等優(yōu)點[2]。和傳統(tǒng)的優(yōu)化算法不同,智能優(yōu)化算法是從大自然中得到啟發(fā),強調從事物本身存在的結構和規(guī)律尋找優(yōu)化問題的方法。例如,模擬退火算法是從固體物質的退火過程中得到的啟發(fā);遺傳算法是從大自然中生物的有勝率劣汰中得到的啟發(fā);等等。智能優(yōu)化算法可以通過調整個體結構、算法參數(shù)等計算出問題的答案。近年來,伴隨著互聯(lián)網(wǎng)、大數(shù)據(jù)、云計算等先進技術迅猛發(fā)展,現(xiàn)實中的問題越來越復雜。為了在既定時間內優(yōu)化問題,找到最優(yōu)解,需要積極應用各類智能優(yōu)化算法。
二、數(shù)學建模中常用的智能優(yōu)化算法
數(shù)學建模中常用的智能優(yōu)化算法有很多,如粒子群算法、蟻群算法、遺傳算法、模擬退火算法等。本文以粒子群算法、蟻群算法和遺傳算法為例進行分析說明。
1.粒子群算法
粒子群算法的“粒子”其實就是優(yōu)化問題的一個可行解。粒子群算法由美國學者Kennedy和Eberhart通過模擬鳥類群體覓食行為提出的一種智能優(yōu)化算法。該算法的主要流程是:(1)隨機初始化一定數(shù)量的粒子構成粒子群。(2)計算每個粒子的適應度值。(3)更新最優(yōu)粒子的位置和全局最優(yōu)位置。(4)更新當前迭代中最優(yōu)粒子的速度和位置。(5)例子群內的所有粒子跟隨當前的最優(yōu)粒子在解空間內進行全局搜索。(6)利用迭代尋優(yōu)和進化策略求出問題的最優(yōu)解。可以看出,粒子群算法是一種有效的全局尋優(yōu)算法,它主要通過粒子之間的協(xié)作和競爭來實現(xiàn)粒子在解空間內最優(yōu)解的探索。
粒子群算法魯棒性強。在數(shù)學建模中,粒子群算法容易描述和收斂,求解時,只需要較小的演化群體,因此調整的參數(shù)也非常少,求解速度較快[3]。但是,粒子群算法受粒子慣性權重和速度調節(jié)參數(shù)的影響很大,如果粒子群慣性權重和速度調節(jié)參數(shù)出現(xiàn)問題,就會大大影響粒子群算法的求解質量。例如,粒子群慣性權重等于零時,則粒子速率沒有記憶性,進而導致粒子群收縮到當前全局的最優(yōu)位置,不在搜索更優(yōu)解。
2.蟻群算法
蟻群算法是意大利學者Marco Dofigo等人在螞蟻集體覓食受到啟發(fā)提出的一種智能優(yōu)化算法。螞蟻在覓食時,能夠在沒有任何提示的情況下找到食物和巢穴之間的最短路徑。倘若原來的最短路徑上出現(xiàn)障礙,也會在很短時間內搜索到新的最短路徑。螞蟻之所以能夠在任何情況下找到食物和巢穴之間的最短路徑,其主要原因在于螞蟻在最短路徑上留下的信息素。蟻群算法的基本原理就是螞蟻覓食時最短路徑的選擇原理。該算法的基本流程是:(1)初始化蟻群規(guī)模、信息素因子、信息素常量、啟發(fā)函數(shù)因子、最大迭代次數(shù)等,同時將數(shù)據(jù)讀入數(shù)據(jù)并進行基本處理。(2)在不同位置放置螞蟻并計算螞蟻的目的地,直至所有螞蟻達到所有目的地。(3)計算每個螞蟻到達目的地的長度,計算當前迭代次數(shù)中的最優(yōu)解,同時更新所有螞蟻釋放在所經過路徑上的信息素總量。(4)輸出程序尋優(yōu)過程中的相關指標。
蟻群算法模擬螞蟻集體覓食時探索最短路徑的過程,在解決離散組合優(yōu)化方面具有很好的效果。在當前的數(shù)學建模中,組合優(yōu)化問題非常多,通過蟻群算法正好能解決這些組合優(yōu)化問題。
3.遺傳算法
遺傳算法首次提出是在Holland的專著《自然系統(tǒng)和人工系統(tǒng)的適應》之中。遺傳算法是一種典型的進化算法,是以生物進化規(guī)律(“適者生存”規(guī)律)為主要依據(jù)將問題在作為模擬的生物進化環(huán)境,讓種群中的個體在然進化的規(guī)則下尋找所出最優(yōu)解[4]。遺傳算法的主要流程是:(1)參數(shù)編碼。編碼方式主要是二進制編碼和實數(shù)編碼。(2)初始群體設定。隨機給出一群初始染色體(數(shù)據(jù)或數(shù)組),然后把這些染色體放置到問題模擬的生物進化環(huán)境之中。(3)適應度函數(shù)設計。適應度函數(shù)是區(qū)分群體中染色體好壞的標準。操作時,根據(jù)求解問題本身的要求設計適應度函數(shù)。(4)遺傳操作設計和控制參數(shù)設定。讓群中的染色體按照生物進化規(guī)律(交叉、變異)選擇出適應該環(huán)境的新的一群染色體。
遺傳算法的基本觀點是:最適合生存的個體往往產生了更大的后代群體,即“適者生存”。與其他智能優(yōu)化算法相比,遺傳算法沒有太多的數(shù)學要求,憑借染色體的進化特性能夠有效地進行全局搜索。對于一些較為復雜的組合優(yōu)化問題,遺傳算法通常能較快地獲得最優(yōu)解。然而,遺傳算法收斂速度較慢,計算時需要耗費較多的時間。
四、結語
在數(shù)學建模中,智能優(yōu)化算法能夠有效地解決一些較為復雜的組合優(yōu)化問題。但是,在實際應用時,建模者認真學習和掌握不同智能優(yōu)化算法的基礎理論,了解不同算法的流程、優(yōu)點與缺點、應用范圍等,應用各種智能優(yōu)化算法時,不僅要“知其然”,還要“知其所以然”,這樣才能在建模時有的放矢,而不是生搬硬套。另外,建模者要多參加數(shù)學建模競賽,并在競賽中多應用智能優(yōu)化算法,多應用、多思考,從而不斷促進自己的智能優(yōu)化算法應用能力。
參考文獻:
[1]杜勇,齊肖陽,王秀娟.數(shù)學建模中智能優(yōu)化算法教學方法探究[J].高師理科學刊,2019,39(6):73-76.
[2]黃娟,王軍.基于不同人工智能算法的數(shù)學建模優(yōu)化研究[J].自動化與儀器儀表,2018(6):47-49.
[3]王先超,韓波,等.粒子群算法在求解數(shù)學建模最優(yōu)化問題中的應用[J].阜陽師范學院學報(自然科學版),2016,33(2):117-121.
[4]程適,王銳,等.群體智能優(yōu)化算法[J].鄭州大學學報(工學版),2018,39(6):1-2.
作者簡介:程慧琴(1972.1)女,漢族,內蒙古包頭人,研究生,畢業(yè)于內蒙古師范大學,現(xiàn)為內蒙古科技大學理學院教師,副教授,研究方向:應用數(shù)學。
3083501186544