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