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