張玉蘭(南京鐵道職業(yè)技術學院 江蘇 南京 210015)
“蟻群算法”在高職數(shù)學教學中的滲透
張玉蘭
(南京鐵道職業(yè)技術學院 江蘇 南京 210015)
從高職數(shù)學教學內(nèi)容、應用性例題、數(shù)學建模三個方面,對將蟻群算法滲透到高職數(shù)學教學中的途徑進行了初步研究,并提出了幾點想法和建議。
高職;數(shù)學教學;“蟻群算法”
生物學家經(jīng)過大量細致的觀察研究發(fā)現(xiàn):現(xiàn)實中,螞蟻個體之間是通過一種稱之為信息素的物質(zhì)進行信息傳遞的。螞蟻在運動過程中,能夠在所經(jīng)過的路徑上留下該物質(zhì),而且螞蟻在運動過程中能夠感知這種物質(zhì)的存在及其強度,并以此指導自己的運動方向,螞蟻傾向于朝著信息素強度高的方向移動。因此,由大量螞蟻組成的集體行為便表現(xiàn)出一種信息正反饋現(xiàn)象:從某一路經(jīng)走過的螞蟻越多,則后來者選擇該路經(jīng)的概率就越大。螞蟻個體之間就是通過這種信息交流達到搜索食物的目的?!跋伻核惴ā本褪峭ㄟ^模擬現(xiàn)實中的蟻群搜索食物的過程,實現(xiàn)求解比較困難的組合優(yōu)化問題的目的。該方法是受到對真實蟻群行為研究的啟發(fā)而提出的,主要特點為:通過正反饋、分布式協(xié)作尋找最優(yōu)路徑。其基本原理就是信息正反饋(如圖1所示)。圖中A是巢穴,E是食物源,H、C為障礙物(即螞蟻只能經(jīng)由H或C由A到達E或由E到達A),d為兩點間距離,1為螞蟻經(jīng)過后留下的信息素,假設初始時刻各路徑上都無信息素存在,則位于B和D的螞蟻可以隨機選擇路徑(從統(tǒng)計學的角度,初始時刻選擇路徑BCD和BHD的概率相同,都為50%),最終通過信息交換,螞蟻最終選擇BCD(此為巢穴到食物源的最短路徑)。
圖1 蟻群系統(tǒng)示意圖
1991年,意大利學者M.Dorigo等人首先提出了 “蟻群算法”。該算法作為一種啟發(fā)式仿生算法,在以下領域具有廣泛的應用:一是優(yōu)化問題的求解;二是基于“蟻群算法”的交通過程建模及規(guī)劃問題求解;三是計算機領域;四是機器人設計及控制領域;五是電力系統(tǒng)應用領域;六是通信領域;七是化工領域;八是工程應用領域。廣義“蟻群算法”的基本步驟如下:(1)初始化信息素矩陣、螞蟻數(shù)目、循環(huán)次數(shù);(2)確定搜索策略;(3)定義并計算轉(zhuǎn)移概率(主要與信息素量有關);(4)進行直接鄰域搜索;(5)修正信息素矩陣;(6)當所有螞蟻都完成一次移動后統(tǒng)計結(jié)果:若不滿足接受條件,取消本次迭代步驟(2)~(4)的結(jié)果,轉(zhuǎn)步驟(2);若連續(xù)多次迭代蟻群統(tǒng)計結(jié)果不變,則對蟻群進行擾動??刹扇〉臄_動方法為擴大可見域、擴大鄰域搜索范圍;若既滿足接受條件,且循環(huán)次數(shù)小于規(guī)定的循環(huán)次數(shù),則轉(zhuǎn)步驟(2);否則,輸出結(jié)果。
高職院校的教學目標是培養(yǎng)技能型、實用型人才。高等數(shù)學作為高職院校學生的一門基礎理論必修課,目的在于培養(yǎng)應用型人才“所必須具備的基本數(shù)學素質(zhì)”。近年來,高職院校數(shù)學教學圍繞“以應用為目的,以必需、夠用為度”的原則,對教學內(nèi)容、教學方法和教學手段等方面的改革進行了一定的探索和實踐,并初見成效。筆者擬結(jié)合“蟻群算法”,對高職數(shù)學教學改革做進一步研究。
基于“蟻群算法”的廣泛應用及對“蟻群算法”的研究日趨成熟,將其應用于高職數(shù)學教學中,不僅可以增加學生的數(shù)學知識面,而且可以提高學生的數(shù)學素質(zhì)。
首先,應在高職數(shù)學的教學內(nèi)容中融入“蟻群算法”。
近幾年,作為推動數(shù)學教學改革的突破口,大多數(shù)高職院校都嘗試著將數(shù)學建模的思想方法和知識內(nèi)容融入數(shù)學課堂教學中,甚至開設數(shù)學建模課,指導學生參加全國大學生數(shù)學建模競賽。而“蟻群算法”在求解優(yōu)化模型、規(guī)劃模型,特別是離散型的優(yōu)化問題方面具有較強的優(yōu)勢:一是通用性,即可用于求解同一類型的優(yōu)化問題,從TSP問題到ATSP,只需作直接擴展即可;二是穩(wěn)定性,即只需對其作很小的改動,就可將其用于求解其他組合優(yōu)化問題,如二次分配問題和作業(yè)安排調(diào)度問題;三是群體性,即該算法允許采用正反饋座位搜索機制;四是并行性,即該算法適用于并行操作,在求解大規(guī)模的優(yōu)化問題時,不僅可以從算法本身的優(yōu)化出發(fā)提高求解效率,而且可以從算法的執(zhí)行模式出發(fā)進行研究。因此,可以在高職數(shù)學的教學內(nèi)容中融入“蟻群算法”,即在高職的數(shù)學教學內(nèi)容里可加入“蟻群算法”這一知識點。
高職數(shù)學教學應有利于學生思維能力的培養(yǎng),有利于后續(xù)專業(yè)課程的學習,有利于學生的可持續(xù)發(fā)展。根據(jù)這些特點,可將高職數(shù)學教學分為三個階段進行:(1)基礎性數(shù)學教學階段,主要教學內(nèi)容是微分學、積分學;(2)應用性數(shù)學教學階段,主要教學內(nèi)容可根據(jù)具體專業(yè)適當增設“蟻群算法”、概率統(tǒng)計、復變函數(shù)、線性代數(shù)等知識點,如自動控制、機車車輛等專業(yè)的學生可增設10課時的“蟻群算法”(只介紹原理、步驟及計算機如何實現(xiàn))等等;(3)專業(yè)性數(shù)學教學階段,主要教學內(nèi)容也是根據(jù)具體專業(yè)適當增設“蟻群算法”、傅立葉變換、圖論等知識點,“蟻群算法”的課時較應用性數(shù)學教學階段應適當增加,如計算機、通信等專業(yè)的學生可增設20課時的“蟻群算法”(除了基本的“蟻群算法”原理、步驟及計算機實現(xiàn)外,可增加一些改進的“蟻群算法”,如最大—最小螞蟻算法、多重“蟻群算法”)等等。
當然,在教學內(nèi)容的選擇上,應堅持“以應用為目的,以必需、夠用為度”的原則,既要滿足人才培養(yǎng)的應用性(高職院校的特點),也要照顧學生的可持續(xù)發(fā)展,同時盡量保持本學科知識體系的系統(tǒng)性,這樣效果才會更好。
其次,可在某些應用性例題中滲透“蟻群算法”。
數(shù)學知識的應用是數(shù)學教學的一個重點內(nèi)容之一,數(shù)學應用題就是考查學生應用數(shù)學知識解決簡單實際問題能力的基本方式,是最簡單的一類數(shù)學建模問題。針對優(yōu)化問題,特別是離散型優(yōu)化問題,可滲透“蟻群算法”,這樣既可讓學生了解“蟻群算法”的方法步驟,又可使學生體會數(shù)學在解決實際問題中的重要作用,同時有利于在教學中貫徹理論與實際相結(jié)合的原則,逐步培養(yǎng)提高學生分析問題、解決問題的能力。其基本步驟如下:
第一步:問題引入。即針對具體的知識點導入相應的現(xiàn)實問題,如對于微分或?qū)?shù)的應用性問題,可引入一些極值或最值的實際問題。
第二步:問題分析。對具體問題進行探究、分析,確定決策變量。
第三步:模型建立。根據(jù)前兩步,建立具體的數(shù)學模型(優(yōu)化模型:LP模型、0-1模型等)。
第四步:問題求解。首先,用高等數(shù)學的相應知識進行求解;其次,使用“蟻群算法”進行求解(僅僅局限于用計算機演示結(jié)果)。
案例1:鐵路上AB段的距離為100km,工廠C距A處 20km,AC垂直于AB,為了運輸需要,要在AB線上選定一點D向工廠方向修筑一條公路,已知鐵路上每噸千米的貨運費用與公路上每噸千米的貨運費用之比為3∶5,為了使貨物從供應站B運到工廠C每噸貨運的總費用最省,問D點應選在何處?
解:先引入決策變量,設D點選擇在距離A處xkm的地方;再對問題進行分析,建立如下數(shù)學模型:·,x∈[0,100]最后用“蟻群算法”對此優(yōu)化模型進行求解,得到如下最優(yōu)結(jié)果:x=15km這與教材上提供的用微分法求解的結(jié)果一致。然后進行總結(jié)、歸納,從而可進一步鞏固第二章微分或?qū)?shù)這一知識點。
再次,應在高職數(shù)學建模中滲透“蟻群算法”。
數(shù)學的特點不僅在于概念的抽象性、邏輯的嚴密性、結(jié)論的明確性及體系的完整性,而且在于應用的廣泛性。經(jīng)濟發(fā)展的全球化、計算機的迅猛發(fā)展、數(shù)學理論與方法的不斷擴充使得數(shù)學已經(jīng)成為當代高科技的一個重要組成部分和思想庫,數(shù)學已成為一種能夠普遍實施的技術。培養(yǎng)學生應用數(shù)學的意識和能力已經(jīng)成為數(shù)學教學的一個重要方面。在應用數(shù)學解決各類實際問題時,建立數(shù)學模型并能夠成功求解是十分關鍵的,同時也是十分困難的。
圖2 數(shù)學建模的全過程示意圖
近幾年,越來越多的高職院校開始開展數(shù)學建?;顒樱ㄩ_設數(shù)學建模選修課、指導學生參加全國大學生數(shù)學建模競賽等活動),其全過程如圖2所示。其中,對于數(shù)學模型的解答,可以采用解方程、畫圖形、優(yōu)化方法、數(shù)值計算、統(tǒng)計分析等各種數(shù)學方法,特別是數(shù)學軟件和計算機技術 (如MATLAB、LINGO、MAPLE、SPASS、SAS數(shù)學軟件和C語言等)。用“蟻群算法”進行數(shù)學模型(主要是優(yōu)化模型和規(guī)劃模型)的求解越來越多地受到廣大學者的青睞。例如,2010年“高教杯全國大學生數(shù)學建模競賽”的D題——對學生宿舍設計方案的評價,完全可以先根據(jù)要求建立一個優(yōu)化模型,然后采用“蟻群算法”進行求解(具體步驟同案例1)。
以上幾點只是對在高職數(shù)學教學中滲透“蟻群算法”的初步探討,還需要作進一步研究和實踐。隨著社會的進步和科技的發(fā)展,“蟻群算法”將會成為運用數(shù)學知識解決實際問題的重要工具之一(如用“蟻群算法”進行火車車輛調(diào)度、電力系統(tǒng)優(yōu)化、故障分析等),也終將會越來越多地滲透到高職教育教學中。
[1]吳啟迪,汪鐳.智能“蟻群算法”及應用[M].上海:上??萍冀逃霭嫔纾?004:9-21.
[2]詹耀輝.高職院校數(shù)學教學存在問題與開展數(shù)學建模教學的意義[J].遼寧教育行政學院學報,2007,24(8):120-122.
[3]黃開興.工科應用數(shù)學[M].北京:高等教育出版社,2008:56.
[4]徐美進,朱振廣,楊文杰.數(shù)學建模、數(shù)學實驗與工程數(shù)學課程教學改革[J].遼寧工學院學報,2007,9(5):129-131.
[5]姜啟源,謝金星,葉俊.數(shù)學模型[M].北京:高等教育出版社,2003:18.
[6]朱衛(wèi)東.優(yōu)化數(shù)學教學情境 培養(yǎng)學生創(chuàng)新意識[J].職業(yè)教育研究,2006,(2):63.
[7]劉忠東,羅節(jié)英,鄧志云.關于數(shù)學教育專業(yè)開設數(shù)學建模課程改革的思考[J].教育與職業(yè),2007,(6):128.
(本文責任編輯:王恒)
G712
A
1672-5727(2011)10-0100-02
張玉蘭(1982—),女,江蘇鹽城人,碩士,南京鐵道職業(yè)技術學院講師,主要從事運籌學與控制論、高等數(shù)學、數(shù)學建模的教學與教改工作。