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