張明 王文文
[摘要]本文首先分析了現(xiàn)有經(jīng)管類運(yùn)籌學(xué)教學(xué)的不足,探討了教學(xué)實(shí)踐中引入Matlab的必要性,通過教學(xué)實(shí)踐取得了良好的效果,不僅增加了運(yùn)籌學(xué)學(xué)習(xí)的趣味性, 而且使學(xué)生能夠?qū)W以致用。同時(shí)也驗(yàn)證了利用Matlab教學(xué)比傳統(tǒng)的教學(xué)法更有優(yōu)勢(shì),在實(shí)際教學(xué)中有些具體的指導(dǎo)意義。
[關(guān)鍵詞]運(yùn)籌學(xué)Matlab教學(xué)
[中圖分類號(hào)]G642[文獻(xiàn)標(biāo)識(shí)碼]A[文章編號(hào)]2095-3437(2012)07-0081-03
運(yùn)籌學(xué)是20世紀(jì)新興的一門應(yīng)用學(xué)科。它是通過建模、檢驗(yàn)和求解數(shù)學(xué)模型等手段來獲得最優(yōu)決策的一門學(xué)科。最初為了解決來自不同雷達(dá)站的信息以及雷達(dá)站同整個(gè)防空作戰(zhàn)系統(tǒng)的協(xié)調(diào)和配合問題, 尋找一個(gè)優(yōu)化協(xié)調(diào)的方案,于是運(yùn)籌學(xué)思想最早出現(xiàn)在軍事上。錢學(xué)森和徐國志等在上世紀(jì)50年代將運(yùn)籌學(xué)引到中國。[1]結(jié)合我國發(fā)展的現(xiàn)狀,運(yùn)籌學(xué)不但在理論和應(yīng)用領(lǐng)域得到了發(fā)展,并在各個(gè)領(lǐng)域都發(fā)揮著舉足輕重的作用,比如人事管理、城市管理、生產(chǎn)管理等。1998年,教育部將《運(yùn)籌學(xué)》課程正式列為經(jīng)濟(jì)、管理專業(yè)的主干課程之一。
運(yùn)籌學(xué)課程的主要特點(diǎn)是運(yùn)用量化的分析方法對(duì)有限的資源進(jìn)行統(tǒng)籌安排,其研究成果為決策者提供科學(xué)的依據(jù)。其理論和方法在社會(huì)科學(xué)、管理科學(xué)、工程技術(shù)等方面都有重要的應(yīng)用,因此越來越多的專業(yè)的大學(xué)生和研究生開設(shè)了運(yùn)籌學(xué)課程。但對(duì)于經(jīng)管類專業(yè)學(xué)生而言,普遍存在一些問題,比如學(xué)生興趣不高、教學(xué)效果不好。[2]培養(yǎng)經(jīng)管類學(xué)生學(xué)習(xí)運(yùn)籌學(xué)的興趣,提高教學(xué)效果,并將其運(yùn)用于管理決策的實(shí)踐中是當(dāng)前教學(xué)中亟待解決的問題。[3]本文通過實(shí)例的方法介紹Matlab在運(yùn)籌學(xué)教學(xué)中的應(yīng)用。
一、Matlab教學(xué)的必要性
在經(jīng)管類專業(yè)應(yīng)用型人才培養(yǎng)的要求下,目前運(yùn)籌學(xué)教學(xué)面臨著一些新的問題。應(yīng)用型人才培養(yǎng)更加注重實(shí)踐能力的培養(yǎng),也就是運(yùn)用知識(shí)的能力。一方面由于運(yùn)籌學(xué)傳統(tǒng)的教學(xué)模式只重視理論教學(xué)而忽視或者輕視實(shí)踐教學(xué)環(huán)節(jié),導(dǎo)致了很多學(xué)生被抽象的數(shù)學(xué)符號(hào)所困擾;另一方面由于運(yùn)籌學(xué)運(yùn)算量大,并且在實(shí)踐環(huán)節(jié)教學(xué)投入的課時(shí)較少,進(jìn)而誤導(dǎo)學(xué)生對(duì)實(shí)踐和應(yīng)用能力培養(yǎng)的重視;于是學(xué)生對(duì)運(yùn)籌學(xué)學(xué)習(xí)產(chǎn)生畏懼心理。
傳統(tǒng)運(yùn)籌學(xué)課程教學(xué)采用的手段是板書,課堂效率低,信息容量??;如講解線性規(guī)劃對(duì)偶理論時(shí),由于這一節(jié)理論推導(dǎo)過程較多,因而學(xué)生需要較長時(shí)間來理解吸收。但是隨著多媒體教學(xué)設(shè)備的普及,如今運(yùn)籌學(xué)教學(xué)中又過度依賴多媒體設(shè)備。與傳統(tǒng)教學(xué)手段相比,雖然多媒體教學(xué)具有很多優(yōu)點(diǎn),比如信息量大、直觀便捷等等;但是用多媒體教學(xué)方式來講解推導(dǎo)運(yùn)籌學(xué)理論推導(dǎo)的效果卻并不理想。主要是因?yàn)槎嗝襟w課件信息量大、且講解速度快,導(dǎo)致學(xué)生缺乏足夠的時(shí)間消化吸收,從而跟不上教師的講解思路。另外用多媒體課件講授時(shí),教師與學(xué)生的友好互動(dòng)效果也不理想,并容易使學(xué)生分散注意力,從而降低了教學(xué)效果。[4]
如今,傳統(tǒng)的運(yùn)籌學(xué)教材仍然是以講述理論為主, 注重闡述完整的理論體系,并且強(qiáng)調(diào)運(yùn)籌學(xué)理論的證明和推導(dǎo),[5]另外該課程計(jì)算量大且繁瑣,使得學(xué)生在學(xué)習(xí)過程中有一定困難,而且在教學(xué)過程中輕視該門課程的計(jì)算功能以及在實(shí)踐中應(yīng)用,導(dǎo)致學(xué)生學(xué)習(xí)興趣不高。
針對(duì)上述存在的問題,在運(yùn)籌學(xué)課堂教學(xué)中引入Matlab軟件,通過在課堂教學(xué)中直接利用Matlab進(jìn)行演示講解,這樣不但使得本課程教學(xué)輕松,而且讓學(xué)生也體驗(yàn)學(xué)習(xí)的樂趣,從而提高了運(yùn)籌學(xué)課程的上課效果,也使得本課程的教學(xué)更加生動(dòng),同時(shí)方便學(xué)生理解和掌握比較抽象的理論,也有助于培養(yǎng)學(xué)生思考問題的能力。
二、 Matlab軟件
Matlab是美國MathWorks公司于1984 年開發(fā)的,目前已經(jīng)發(fā)展成國際上最流行、應(yīng)用最廣泛的科學(xué)與工程計(jì)算軟件之一。Matlab以矩陣運(yùn)算為基礎(chǔ),把計(jì)算、程序設(shè)計(jì)、可視化等融合到一個(gè)簡單易用的交互式工作環(huán)境中,可實(shí)現(xiàn)符號(hào)運(yùn)算、數(shù)值計(jì)算、建模仿真、科學(xué)工程繪圖等等許多功能,并且其功能也越來越強(qiáng)大,深受科研工作者青睞。目前,Matlab軟件已經(jīng)被歐美各高等院校列為運(yùn)籌學(xué)、時(shí)間序列分析、多元統(tǒng)計(jì)、動(dòng)態(tài)系統(tǒng)仿真、圖像處理等課程必備教學(xué)工具。將Matlab軟件用于運(yùn)籌學(xué)教學(xué),可以使學(xué)生更直觀的理解運(yùn)籌學(xué)中的基本概念、理論,并可培養(yǎng)其動(dòng)手和科研實(shí)踐能力。如今,Matlab軟件已經(jīng)成為現(xiàn)代博士生、碩士生、本科生學(xué)習(xí)必須掌握的基本工具之一,而且也成為公司或企業(yè)的工程計(jì)算部門、科研院所的一種普遍計(jì)算工具。由于Matlab有強(qiáng)大的統(tǒng)計(jì)工具箱、符號(hào)運(yùn)算工具箱、最優(yōu)化工具箱以及大量的函數(shù),在教學(xué)實(shí)驗(yàn)中顯現(xiàn)出無可替代的優(yōu)勢(shì)。[6]
三、Matlab在線性規(guī)劃教學(xué)中的應(yīng)用
(一)線性規(guī)劃命令linprog介紹
將一般線性規(guī)劃問題劃成下列標(biāo)準(zhǔn)形式:
其中(1a)式為不等式約束,(2b)式為等式約束,(3c)式表示決策變量X的上下界。
在MATLAB中,linprog函數(shù)用于上述(1)式的線性規(guī)劃問題的求解,該函數(shù)的調(diào)用格式為:
[X,fval,exitflag,output,lambda]=linprog(C,A,b,Aeq,beq,lb,ub)(2)
輸入部分:C目標(biāo)函數(shù)的價(jià)值系數(shù),以列向量形式出現(xiàn);A、b分別是線性規(guī)劃中不等式約束的技術(shù)系數(shù)矩陣和資源限量向量;Aeq,beq分別是線性規(guī)劃中等式約束的技術(shù)系數(shù)矩陣和資源限量向量,如果缺省用[]代替;lb,ub分別是決策變量X的下上界。輸出部分:X線性規(guī)劃的最優(yōu)解;fval是線性規(guī)劃最優(yōu)值;exitflag是輸出標(biāo)志,當(dāng)exitflag=1時(shí)表示線性規(guī)劃有解,當(dāng)exitflag=-1時(shí)表示線性規(guī)劃無解;output指算法和迭代情況;lambda指存儲(chǔ)情況。[7]
(二)應(yīng)用舉例
某工廠有甲、乙兩臺(tái)機(jī)床,可用于加工三種產(chǎn)品。每種產(chǎn)品的機(jī)床臺(tái)時(shí)消耗量、臺(tái)時(shí)限量及單位產(chǎn)品利潤見下表,且三種產(chǎn)品的生產(chǎn)數(shù)量分別為400、600和500,在滿足加工產(chǎn)品的要求的條件下,如何分配機(jī)床的加工任務(wù),才能使總加工費(fèi)用最低?
解設(shè)在甲機(jī)床上加工產(chǎn)品1、產(chǎn)品2、產(chǎn)品3的數(shù)量分別為x1,x2,x3,在乙機(jī)床上加工產(chǎn)品1、產(chǎn)品2、產(chǎn)品3的數(shù)量分別為x4,x5,x6。建立下列線性規(guī)劃模型:
然后在Matlab軟件窗口中輸入下列求解程序,如圖1所示,
然后得到運(yùn)行結(jié)果如圖2所示,
即甲機(jī)床加工600個(gè)產(chǎn)品2,乙機(jī)床上加工400個(gè)產(chǎn)品1、500個(gè)產(chǎn)品3,可在滿足產(chǎn)品需求條件下使總加工費(fèi)最小,總費(fèi)用為13800元。
通過以上實(shí)例說明,利用Matlab可以方便地求出線性規(guī)劃問題的解,不僅算法簡單,避免了手工的煩瑣計(jì)算,而且可以大大提高計(jì)算速度和計(jì)算的準(zhǔn)確性。
四、教學(xué)實(shí)踐及效果
在運(yùn)籌學(xué)教學(xué)和實(shí)驗(yàn)中引入Matlab,對(duì)經(jīng)管類學(xué)生來說提供了理論和實(shí)踐相結(jié)合一種嶄新的途徑。該途徑不僅可以培養(yǎng)學(xué)生的學(xué)習(xí)運(yùn)籌學(xué)的興趣,同時(shí)可以培養(yǎng)學(xué)生的實(shí)踐動(dòng)手能力。上課時(shí)涉及具體計(jì)算時(shí),老師可以通過Matlab軟件直接輸入命令得到解答,使得講解直觀明了。在運(yùn)籌學(xué)學(xué)習(xí)中滲入Matlab軟件,不僅使學(xué)生增加了學(xué)習(xí)運(yùn)籌學(xué)的興趣,而且使學(xué)生在運(yùn)籌學(xué)理論學(xué)習(xí)和實(shí)踐應(yīng)用搭建了一座橋梁。同時(shí)也提高學(xué)生建立數(shù)學(xué)建模的能力和解決實(shí)際問題的本領(lǐng)。
在近幾年的實(shí)踐教學(xué)中,通過把Matlab軟件引入教學(xué)過程中,學(xué)生反映很好,而且學(xué)習(xí)積極性也在逐步提高,并且學(xué)習(xí)效果也得到了明顯的提高??傊?,利用Matlab進(jìn)行運(yùn)籌學(xué)教學(xué)是一種新的教學(xué)方法,不論對(duì)教師還是學(xué)生都取得了很好的教學(xué)效果。
劉延?xùn)|在《全面提高高等教育質(zhì)量工作會(huì)議》上強(qiáng)調(diào):探索科學(xué)基礎(chǔ)、實(shí)踐能力和人文素養(yǎng)融合發(fā)展的培養(yǎng)模式,推動(dòng)交叉培養(yǎng)和聯(lián)合育人,創(chuàng)新教學(xué)方法和學(xué)習(xí)方式,強(qiáng)化師生交流互動(dòng)。在這樣的背景下,改革現(xiàn)有的經(jīng)管類管理運(yùn)籌學(xué)課程的教學(xué)體系、教學(xué)方式和教學(xué)內(nèi)容尤為必要。作為二十一世紀(jì)的大學(xué)教師,我們不但要轉(zhuǎn)變傳統(tǒng)的教學(xué)觀念,還要樹立新的教學(xué)理念。從創(chuàng)新能力、科學(xué)計(jì)算能力及理論與實(shí)踐相結(jié)合的能力著手,培養(yǎng)出更多復(fù)合型的大學(xué)生。
[參考文獻(xiàn)]
[1]運(yùn)籌學(xué)教材編寫組.《運(yùn)籌學(xué)》第三版[M].清華大學(xué)出版社,2005.
[2]唐立峰,運(yùn)籌學(xué)課程教學(xué)改革思路——基于經(jīng)濟(jì)管理類專業(yè)應(yīng)用型人才培養(yǎng)的背景[J]. 經(jīng)濟(jì)師,2010,(4):136-137.
[3]沈煒,文偉全.運(yùn)籌學(xué)課程實(shí)驗(yàn)教學(xué)方法的探討[J].實(shí)驗(yàn)室研究與探索,2009,28(8):135-137.
[4]石磊,蔡定教. 關(guān)于運(yùn)籌學(xué)課程教學(xué)改革的幾點(diǎn)思考[J]. 廣西教育學(xué)院學(xué)報(bào),2010,(106):108-110.
[5]李紹剛,段復(fù)建,陳利霞.線性代數(shù)中Matlab實(shí)驗(yàn)教學(xué)的探索與實(shí)踐[J].長春大學(xué)學(xué)報(bào),2010,20(6):20-24.
[6]張圣勤.MATLAB 7.0 實(shí)用教程[M].機(jī)械工業(yè)出版社,2006.
[7]趙靜,但琦.數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)[M].北京:高等教育出版社,2006.
[責(zé)任編輯:陳兵]