陳曉文,楊 磊,姜 偉
(哈爾濱醫(yī)科大學(xué)生物信息科學(xué)與技術(shù)學(xué)院,黑龍江 哈爾濱 150081)
基于LINGO的運(yùn)籌學(xué)實(shí)驗教學(xué)探討與思考
陳曉文,楊 磊,姜 偉
(哈爾濱醫(yī)科大學(xué)生物信息科學(xué)與技術(shù)學(xué)院,黑龍江 哈爾濱 150081)
運(yùn)籌學(xué)是一門實(shí)用性很強(qiáng)的學(xué)科,本文針對醫(yī)科院校公共衛(wèi)生管理專業(yè)和生物信息學(xué)專業(yè)的特點(diǎn),對如何利用LINGO軟件有效地開展實(shí)驗教學(xué),以提高學(xué)生的學(xué)習(xí)主動性和解決實(shí)際問題的能力進(jìn)行了探討和研究。
LINGO軟件;運(yùn)籌學(xué);實(shí)驗教學(xué)
LINGO軟件是一個專門求解最優(yōu)化問題的軟件包,它不僅能夠求解線性規(guī)劃和二次規(guī)劃,還可以用于非線性規(guī)劃,以及一些線性、非線性方程組的求解和代數(shù)方程求根等。美國芝加哥大學(xué)的Linus Schrage教授在1980年前后開發(fā)了用于求解最優(yōu)化問題的LINDO軟件,經(jīng)過不斷完善和擴(kuò)充形成了目前常用的LINGO(Linear Interactive and General Optimizer)軟件包。Linus Schrage教授成立了LINDO系統(tǒng)公司(http://www.lindo.com),進(jìn)行商業(yè)化運(yùn)作并取得了成功,該公司的軟件主要有LINDO、LINGO、LINDO API和 What’s best。據(jù) LINDO 公司統(tǒng)計,位于全球《財富》雜志500強(qiáng)的企業(yè)有一半以上使用了上述軟件,全球《財富》雜志25強(qiáng)中有23家使用了上述產(chǎn)品求解分析工業(yè)管理中遇到的最優(yōu)化問題,為管理者的決策提供了可靠的理論依據(jù)[1]。LINGO軟件在工業(yè)、商業(yè)、服務(wù)、教學(xué)和科研等領(lǐng)域中得到廣泛應(yīng)用。
隨著科學(xué)技術(shù)的飛速發(fā)展,經(jīng)濟(jì)管理等領(lǐng)域出現(xiàn)了大量的最優(yōu)化問題。如生產(chǎn)計劃問題、市場營銷、運(yùn)輸問題、庫存管理等。一般來說,最優(yōu)化問題是指按照給定的標(biāo)準(zhǔn)在某些約束條件下選取最優(yōu)的解集。實(shí)際問題中會遇到復(fù)雜的大規(guī)模的最優(yōu)化問題,含有成百上千的決策變量和約束條件,此時需要求助最優(yōu)化軟件進(jìn)行求解。與眾多最優(yōu)化軟件相比,LINGO軟件包具有以下特點(diǎn)和優(yōu)勢:
(1)LINGO軟件基于Windows界面開發(fā),用戶界面友好,編程語言簡潔易學(xué),對簡單的數(shù)學(xué)規(guī)劃模型,LINGO軟件包輸入模型的格式和原模型的表達(dá)式幾乎相同。該軟件不區(qū)分大小寫,數(shù)據(jù)輸入和輸出方便,計算速度快,解算能力強(qiáng)大,并提供了幫助信息,方便客戶的使用。
(2)LINGO內(nèi)部含有大量的函數(shù)(如數(shù)學(xué)函數(shù)、集合循環(huán)函數(shù)、財務(wù)會計函數(shù)等)可供用戶建立優(yōu)化模型時引用,用法非常簡單,且提供了與其他數(shù)據(jù)文件(如文本文件、Excel電子表格文件等)的接口,可方便地輸入、求解和分析大規(guī)模最優(yōu)化問題。
(3)LINGO軟件引入了建模語言集合和屬性,借助于集合,能夠用一個單一的、長的、簡明復(fù)合公式表示一系列相似的約束條件,從而允許用戶以簡練、直觀的方式描述較大規(guī)模的優(yōu)化問題。同時,它可以允許優(yōu)化模型中的決策變量是整數(shù)(即整數(shù)規(guī)劃)。
運(yùn)籌學(xué)是管理學(xué)科的一門重要專業(yè)基礎(chǔ)課,為管理人員的決策提供了科學(xué)依據(jù),有助于有效地管理和正確地決策。隨著生產(chǎn)力和科學(xué)技術(shù)的發(fā)展,運(yùn)籌學(xué)產(chǎn)生了很多分支并且應(yīng)用范圍越來越廣。經(jīng)濟(jì)、管理、軍事、工程系統(tǒng)等領(lǐng)域的問題都可以采用運(yùn)籌學(xué)的方法,對實(shí)際問題量化建立數(shù)學(xué)模型,獲得合理的人力、物力和財力的系統(tǒng)運(yùn)行最優(yōu)方案。隨著生物信息學(xué)的發(fā)展,運(yùn)籌學(xué)在該領(lǐng)域也嶄露頭腳。運(yùn)籌學(xué)關(guān)鍵的部分就是將實(shí)際的問題轉(zhuǎn)化為數(shù)學(xué)模型并對其求解,因此,學(xué)生不僅需要掌握扎實(shí)的理論基礎(chǔ),還要學(xué)以致用,用學(xué)到的理論和方法解決實(shí)際問題。為此,實(shí)驗課教學(xué)就顯得尤為重要,同時也是運(yùn)籌學(xué)教學(xué)改革的重要內(nèi)容。在實(shí)驗課教學(xué)中,通過具有挑戰(zhàn)性的實(shí)際案例,引導(dǎo)學(xué)生自覺地思考和探索,鍛煉學(xué)生解決問題、操作LINGO軟件求解問題的能力,訓(xùn)練學(xué)生探討問題能力和創(chuàng)新能力,使學(xué)生在做的過程中發(fā)現(xiàn)自己的不足,明確彌補(bǔ)的方向。
LINGO軟件的編譯語言簡單,容易掌握,其解決問題類型全面的優(yōu)點(diǎn)恰好彌補(bǔ)了運(yùn)籌學(xué)實(shí)驗課時少的不足,此外,與其他軟件相比LINGO軟件包具有更多的優(yōu)勢。如在很多課程的實(shí)驗教學(xué)中使用的MATLAB也可以解決線性規(guī)劃、二次規(guī)劃等最優(yōu)問題,但是LINGO的優(yōu)化工具箱要比MATLAB強(qiáng)大,線性規(guī)劃問題的靈敏度分析報告詳細(xì)全面,還可以解決整數(shù)規(guī)劃。當(dāng)使用集合和屬性求解大規(guī)模問題時,LINGO軟件同樣可以將問題的原始模型直觀地顯示出來,方便用戶理解。總之,在運(yùn)籌學(xué)實(shí)驗教學(xué)中首選使用LINGO軟件,可有效提高教師的授課效率。學(xué)生易于掌握,從而激發(fā)其學(xué)習(xí)熱情和主動性。
筆者總結(jié)多年實(shí)驗教學(xué)經(jīng)驗,認(rèn)為要注意以下幾方面的問題。(1)介紹軟件的基本使用方法,讓學(xué)生初步掌握如何使用LINGO軟件。(2)結(jié)合理論知識選擇一些LINGO應(yīng)用實(shí)例,讓學(xué)生更加熟練地應(yīng)用運(yùn)籌學(xué)解決實(shí)際問題。包括:①LINGO軟件在線性規(guī)劃中的應(yīng)用。線性規(guī)劃是運(yùn)籌學(xué)中發(fā)展最成熟的一個分支,簡單的線性規(guī)劃模型實(shí)例可以培養(yǎng)學(xué)生的線性規(guī)劃數(shù)學(xué)建模技能,同時還可以學(xué)習(xí)LINGO的基本建模語言;大規(guī)模的線性規(guī)劃實(shí)例(即約束條件和決策變量的個數(shù)較多)可以使學(xué)生掌握使用基本集合、派生集合、屬性和函數(shù)以及循環(huán)函數(shù)的方法。②LINGO軟件在靈敏度分析中的應(yīng)用。用實(shí)際的生產(chǎn)計劃問題作為實(shí)驗內(nèi)容,訓(xùn)練學(xué)生根據(jù)LINGO軟件提供的靈敏度分析結(jié)果報告做出合理正確的決策方案。③LINGO軟件在最短路徑中的應(yīng)用。最短路徑是一種多階段的決策問題,可以采用動態(tài)規(guī)劃的方法求解。可用于解決運(yùn)輸網(wǎng)絡(luò)距離最短,或時間最少等問題。對該部分的練習(xí)可以使學(xué)生掌握稀疏集合和派生集合的用法。④ 根據(jù)授課對象選擇實(shí)驗任務(wù)。筆者承擔(dān)兩個軌道的運(yùn)籌學(xué)課程,分別是公共衛(wèi)生管理和生物信息學(xué)。不同專業(yè)運(yùn)籌學(xué)課程的講授內(nèi)容不能完全一樣,應(yīng)根據(jù)授課對象的專業(yè)特點(diǎn),相應(yīng)地調(diào)整運(yùn)籌學(xué)的理論知識和實(shí)驗內(nèi)容。為管理類學(xué)生布置的實(shí)驗任務(wù)應(yīng)傾向于常見的生產(chǎn)計劃、運(yùn)輸問題等經(jīng)濟(jì)管理類的實(shí)際問題;而為生物信息類學(xué)生布置的實(shí)驗任務(wù)應(yīng)傾向于那些使用運(yùn)籌學(xué)的方法解決生物信息方面的實(shí)際問題,如利用最短路徑構(gòu)建調(diào)控網(wǎng)絡(luò)等。實(shí)驗任務(wù)針對性強(qiáng),學(xué)生才能更加深刻地體會運(yùn)籌學(xué)對本專業(yè)的應(yīng)用價值,從而激發(fā)學(xué)生的學(xué)習(xí)熱情和興趣。
運(yùn)籌學(xué)是一門應(yīng)用性學(xué)科,使用該學(xué)科的知識來解決實(shí)際問題是學(xué)生必須掌握的能力。基于LONGO軟件包的運(yùn)籌學(xué)實(shí)驗教學(xué)增加了教學(xué)的直觀性,開闊了學(xué)生的視野,激發(fā)了學(xué)生的興趣,收到了良好的教學(xué)效果。無論在畢業(yè)設(shè)計還是以后的工作中都會使學(xué)生受益匪淺。
[1]謝金星,薛毅.優(yōu)化建模與LINDO/LINGO軟件[M].北京:清華大學(xué)出版社,2005.
G420
A
1671-1246(2012)17-0102-02