![運(yùn)籌學(xué)實(shí)驗(yàn)與案例指導(dǎo) 課件全套 第1-10章 運(yùn)籌學(xué)實(shí)驗(yàn)軟件簡(jiǎn)介及操作-博弈論實(shí)驗(yàn)_第1頁(yè)](http://file4.renrendoc.com/view/05fc8e9a368c177cf4bc79fcd7132c91/05fc8e9a368c177cf4bc79fcd7132c911.gif)
![運(yùn)籌學(xué)實(shí)驗(yàn)與案例指導(dǎo) 課件全套 第1-10章 運(yùn)籌學(xué)實(shí)驗(yàn)軟件簡(jiǎn)介及操作-博弈論實(shí)驗(yàn)_第2頁(yè)](http://file4.renrendoc.com/view/05fc8e9a368c177cf4bc79fcd7132c91/05fc8e9a368c177cf4bc79fcd7132c912.gif)
![運(yùn)籌學(xué)實(shí)驗(yàn)與案例指導(dǎo) 課件全套 第1-10章 運(yùn)籌學(xué)實(shí)驗(yàn)軟件簡(jiǎn)介及操作-博弈論實(shí)驗(yàn)_第3頁(yè)](http://file4.renrendoc.com/view/05fc8e9a368c177cf4bc79fcd7132c91/05fc8e9a368c177cf4bc79fcd7132c913.gif)
![運(yùn)籌學(xué)實(shí)驗(yàn)與案例指導(dǎo) 課件全套 第1-10章 運(yùn)籌學(xué)實(shí)驗(yàn)軟件簡(jiǎn)介及操作-博弈論實(shí)驗(yàn)_第4頁(yè)](http://file4.renrendoc.com/view/05fc8e9a368c177cf4bc79fcd7132c91/05fc8e9a368c177cf4bc79fcd7132c914.gif)
![運(yùn)籌學(xué)實(shí)驗(yàn)與案例指導(dǎo) 課件全套 第1-10章 運(yùn)籌學(xué)實(shí)驗(yàn)軟件簡(jiǎn)介及操作-博弈論實(shí)驗(yàn)_第5頁(yè)](http://file4.renrendoc.com/view/05fc8e9a368c177cf4bc79fcd7132c91/05fc8e9a368c177cf4bc79fcd7132c915.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第1章運(yùn)籌學(xué)實(shí)驗(yàn)軟件簡(jiǎn)介及操作運(yùn)籌學(xué)實(shí)驗(yàn)?zāi)繕?biāo)和軟件概述LINDO軟件簡(jiǎn)介L(zhǎng)ingo軟件簡(jiǎn)介WinQSB
軟件簡(jiǎn)介MATLAB軟件簡(jiǎn)介運(yùn)籌學(xué)實(shí)驗(yàn)?zāi)繕?biāo)和軟件概述
運(yùn)籌學(xué)的定義:運(yùn)籌學(xué)(OperationsResearch)是一門應(yīng)用學(xué)科,至今還沒(méi)有統(tǒng)一的定義。莫爾斯(Morse)和金博爾(Kimball)曾對(duì)運(yùn)籌學(xué)下定義:“為決策機(jī)構(gòu)在對(duì)其控制下業(yè)務(wù)活動(dòng)進(jìn)行決策時(shí),提供以數(shù)量化為基礎(chǔ)的科學(xué)方法。”《中國(guó)企業(yè)管理百科全書》中運(yùn)籌學(xué)的定義:“運(yùn)籌學(xué)運(yùn)用分析、試驗(yàn)、量化的方法,對(duì)經(jīng)濟(jì)管理系統(tǒng)中人、財(cái)、物(時(shí)間)等有限資源進(jìn)行統(tǒng)籌安排,為決策者提供有依據(jù)的最優(yōu)方案(滿意方案),以實(shí)現(xiàn)最有效的管理?!边\(yùn)籌學(xué)的發(fā)展我國(guó)古代有很多有關(guān)運(yùn)籌學(xué)的思想方法的典故。例如,田忌賽馬、丁謂建宮等故事。運(yùn)籌學(xué)作為一門現(xiàn)代學(xué)科是在第二次世界大戰(zhàn)期間發(fā)展起來(lái)的,早期主要用于研究軍事領(lǐng)域問(wèn)題,成功地解決了當(dāng)時(shí)許多重要的作戰(zhàn)問(wèn)題。第二次世界大戰(zhàn)以后,運(yùn)籌學(xué)得到了快速的發(fā)展,除軍事方面的應(yīng)用研究外,其相繼在工業(yè)、農(nóng)業(yè)、經(jīng)濟(jì)和社會(huì)等領(lǐng)域應(yīng)用,形成了許多分支,如數(shù)學(xué)規(guī)劃,圖與網(wǎng)絡(luò),排隊(duì)論,存儲(chǔ)論,決策論,博弈論,等等。此外,計(jì)算機(jī)的迅猛發(fā)展和廣泛應(yīng)用,使得運(yùn)籌學(xué)的方法能解決大量經(jīng)濟(jì)管理中的決策問(wèn)題,極大地推動(dòng)了運(yùn)籌學(xué)的應(yīng)用與普及。今天,運(yùn)籌學(xué)的應(yīng)用已涉及服務(wù)、管理、規(guī)劃、決策、組織、生產(chǎn)、建設(shè)等諸多方面,甚至可以說(shuō),很難找出它涉及不到的領(lǐng)域。運(yùn)籌學(xué)實(shí)驗(yàn)?zāi)繕?biāo)和軟件概述
運(yùn)籌學(xué)的特點(diǎn):①運(yùn)籌學(xué)已被廣泛應(yīng)用于工商企業(yè)、軍事部門、民政事業(yè)等研究組織內(nèi)的統(tǒng)籌協(xié)調(diào)問(wèn)題,故其應(yīng)用不受行業(yè)、部門的限制;②運(yùn)籌學(xué)既對(duì)各種經(jīng)營(yíng)進(jìn)行創(chuàng)造性的科學(xué)研究,又涉及組織的實(shí)際管理問(wèn)題,具有很強(qiáng)的實(shí)踐性;③它以整體最優(yōu)為目標(biāo),從系統(tǒng)的觀點(diǎn)出發(fā),力圖以整個(gè)系統(tǒng)最佳的方式來(lái)解決該系統(tǒng)各部門之間的利害沖突。運(yùn)籌學(xué)解決實(shí)際問(wèn)題一般要經(jīng)歷以下幾個(gè)步驟:闡述問(wèn)題、建立模型、求解模型、解的檢驗(yàn)和修改、解的實(shí)施。在實(shí)踐中,求解運(yùn)籌學(xué)問(wèn)題的主要算法是優(yōu)化算法。根據(jù)優(yōu)化算法理論發(fā)展與算法原型將現(xiàn)有的優(yōu)化算法分為兩大類:經(jīng)典優(yōu)化算法和啟發(fā)式優(yōu)化算法。這兩類優(yōu)化算法都是迭代算法。規(guī)模較小的部分問(wèn)題,可通過(guò)手工計(jì)算的方法求解。問(wèn)題規(guī)模較大時(shí),計(jì)算量往往大得難以承受。有很多種計(jì)算機(jī)軟件可以用來(lái)求解如LINDO、Lingo、WinQSB、MATLAB等。實(shí)驗(yàn)的內(nèi)容主要包括線性規(guī)劃、整數(shù)規(guī)劃、運(yùn)輸問(wèn)題、目標(biāo)規(guī)劃、動(dòng)態(tài)規(guī)劃、圖與網(wǎng)絡(luò)、排隊(duì)論、決策論、博弈論等。運(yùn)籌學(xué)的實(shí)驗(yàn)?zāi)康?掌握應(yīng)用計(jì)算機(jī)工具對(duì)運(yùn)籌學(xué)模型優(yōu)化求解的方法步驟,熟悉各種運(yùn)籌學(xué)優(yōu)化軟件的使用,特別是常見(jiàn)優(yōu)化軟件(如Lingo、WinQSB、MATLAB等)功能的使用。同時(shí),通過(guò)熟悉優(yōu)化軟件的操作激發(fā)學(xué)習(xí)興趣,加深對(duì)運(yùn)籌學(xué)基本理論的理解。運(yùn)籌學(xué)實(shí)驗(yàn)?zāi)繕?biāo)和軟件概述
運(yùn)籌學(xué)實(shí)驗(yàn)軟件概述:LINDO/Lingo:美國(guó)芝加哥大學(xué)的LinusSchrage教授于1980年前后開發(fā)了一套專門用于求解最優(yōu)化問(wèn)題的軟件包,后來(lái)又對(duì)其進(jìn)行了多年的不斷完善和擴(kuò)充,并成立了LINDO系統(tǒng)公司(LINDOSystemsInc.)進(jìn)行商業(yè)化運(yùn)作,取得了巨大成功,這款軟件的主要產(chǎn)品有四種:LINDO、Lingo、LINDOAPI和What’sBest!LINDO(LinearInteractiveandDiscreteOptimizer)即“交互式的線性離散優(yōu)化求解器”,可以用來(lái)求解線性規(guī)劃(LinearProgramming,LP)和二次規(guī)劃(QuadraticProgramming,QP)問(wèn)題。Lingo(LinearInteractiveandGeneralOptimizer)即“交互式的線性和通用優(yōu)化求解器”,它除具有LINDO軟件的全部功能外,還可以用于求解非線性規(guī)劃問(wèn)題,也可以用于一些線性和非線性方程組的求解。LINDO軟件和Lingo軟件的最大特色在于,允許決策變量是整數(shù)(即整數(shù)規(guī)劃,包括0-1規(guī)劃),而且執(zhí)行速度很快。運(yùn)籌學(xué)實(shí)驗(yàn)?zāi)繕?biāo)和軟件概述
Lingo實(shí)際上還是最優(yōu)化問(wèn)題的一種建模語(yǔ)言,包括許多常用的數(shù)學(xué)函數(shù),供使用者建立優(yōu)化模型時(shí)調(diào)用,并可以接收其他數(shù)據(jù)文件(如文本文件、Excel電子表格文件、數(shù)據(jù)庫(kù)文件等)此外,LINDO系統(tǒng)公司還提供了LINDO和Lingo軟件與其他開發(fā)工具(如C++和Java等語(yǔ)言)的接口軟件LINDOAPI(LINDOApplicationProgramInterface),因此能融入到用戶應(yīng)用軟件的開發(fā)中去。What’sBest!軟件提供了LINDO和Lingo軟件與電子表格軟件(如Excel等)的接口,能夠直接集成到電子表格軟件中使用。因此,LINDO、Lingo軟件在教學(xué)、科研、工業(yè)、商業(yè)、服務(wù)等領(lǐng)域都得到了廣泛的應(yīng)用。WinQSB:QSB是QuantitativeSystemsforBusiness的縮寫形式,早期的版本是在DOS操作系統(tǒng)下運(yùn)行的,后來(lái)發(fā)展成為在Windows操作系統(tǒng)下運(yùn)行的WinQSB軟件。該軟件是由美籍華人Yih-LongChang和KiranDesai共同開發(fā)的,可廣泛應(yīng)用于解決管理科學(xué)、決策科學(xué)、運(yùn)籌學(xué)及生產(chǎn)管理等領(lǐng)域的問(wèn)題。該軟件界面設(shè)計(jì)友好,使用簡(jiǎn)單,使用者很容易學(xué)會(huì)操作方法并用它來(lái)解決管理和商務(wù)問(wèn)題,表格形式的數(shù)據(jù)錄入以及表格與圖形形式的輸出結(jié)果都給使用者帶來(lái)極大方便,同時(shí)使用者只需要借助于軟件中的幫助文件就可以學(xué)會(huì)每一步的操作。運(yùn)籌學(xué)實(shí)驗(yàn)?zāi)繕?biāo)和軟件概述
MATLAB:MATLAB是英文MatrixLaboratory(矩陣實(shí)驗(yàn)室)的縮寫形式,最早是由C.Moler用FORTRAN語(yǔ)言編寫的,用來(lái)方便地調(diào)用LINPACK和EISPACK矩陣代數(shù)軟件包的程序。后來(lái)C.Moler創(chuàng)立了MathWorks公司,對(duì)MATLAB軟件做了大量的、卓有成效的改進(jìn)。現(xiàn)在MATLAB軟件已經(jīng)更新至2022版。MATLAB軟件是目前為止最流行的科學(xué)計(jì)算工具之一,幾乎覆蓋了科學(xué)計(jì)算的所有領(lǐng)域,廣泛應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通信、圖像處理、信號(hào)檢測(cè)、動(dòng)態(tài)仿真、金融建模設(shè)計(jì)與分析等領(lǐng)域。MATLAB軟件的優(yōu)化工具(OptimizationToolbox)箱提供了對(duì)各種優(yōu)化問(wèn)題的完整的解決方案,其內(nèi)容涵蓋線性規(guī)劃、二次規(guī)劃、非線性規(guī)劃、最小二乘、非線性方程求解、多目標(biāo)決策、最小最大、半無(wú)限等優(yōu)化問(wèn)題。MATLAB軟件簡(jiǎn)潔的函數(shù)表達(dá)、多種優(yōu)化算法的任意選擇、對(duì)算法參數(shù)的自由設(shè)置,可使用戶方便靈活地使用優(yōu)化函數(shù)。除內(nèi)部函數(shù)外,所有MATLAB軟件的核心文件和工具箱文件都是可讀可改的源文件,用戶可修改源文件和加入自己的文件,擴(kuò)展其功能。LINDO軟件簡(jiǎn)介
LINDO軟件是由美國(guó)LINDO系統(tǒng)公司開發(fā)的用于解決優(yōu)化問(wèn)題的一種工具軟件。LINDO軟件的特點(diǎn)是程序執(zhí)行速度快,易于輸入和輸出,能夠求解并分析線性規(guī)劃、二次規(guī)劃和整數(shù)規(guī)劃等問(wèn)題。實(shí)驗(yàn)?zāi)康模?)熟悉LINDO軟件的安裝和菜單、選項(xiàng)的各項(xiàng)功能。(2)了解LINDO文件類型和常用函數(shù)。實(shí)驗(yàn)內(nèi)容
LINDO軟件的安裝LINDO6.1英文測(cè)試版可以從LINDO系統(tǒng)公司網(wǎng)站下載,該版本最多可以處理150個(gè)約束條件、300個(gè)變量和30個(gè)整數(shù)變量的規(guī)劃問(wèn)題。雙擊lnd61.exe安裝文件,出現(xiàn)安裝提示界面,根據(jù)提示,選擇安裝的目錄安裝即可。在本實(shí)驗(yàn)中,以LINDO6.1英文測(cè)試版為例,學(xué)習(xí)LINDO軟件的基本工作界面和操作。LINDO軟件簡(jiǎn)介
實(shí)驗(yàn)內(nèi)容LINDO軟件界面簡(jiǎn)介打開LINDO軟件后,可以看到軟件界面上有標(biāo)題欄、菜單欄、工具欄和編輯窗口,LINDO軟件界面如圖1-1所示。菜單欄上有“File”、“Edit”、“Solve”、“Reports”、“Window”和“Help”六個(gè)菜單,圖1-2~圖1-7顯示了每個(gè)菜單的選項(xiàng),圖中選項(xiàng)名稱右側(cè)是其快捷鍵。工具欄上的每個(gè)按鈕與一個(gè)選項(xiàng)對(duì)應(yīng)。下面對(duì)主要選項(xiàng)的功能進(jìn)行簡(jiǎn)單說(shuō)明,其余選項(xiàng)的功能與一般Windows菜單中的大致相同。圖1-1LINDO軟件界面LINDO軟件簡(jiǎn)介
LogOutput:打開或關(guān)閉記錄日志文件。TakeCommands:打開和執(zhí)行一個(gè)命令腳本文件。BasisRead:讀出這個(gè)基,并且從這個(gè)基開始繼續(xù)運(yùn)行單純形法。BasisSave:將單純形法當(dāng)前的基以指定的文件名和文件格式保存。Title:顯示當(dāng)前模型標(biāo)題。Date:在報(bào)告窗口中顯示當(dāng)前日期。ElapsedTime:顯示所用時(shí)間。Options:設(shè)置LINDO系統(tǒng)運(yùn)行的內(nèi)部參數(shù)。GoToLine:光標(biāo)移動(dòng)到指定的行。PasteSymbol:在模型中插入“PasteSymbol”對(duì)話框中的符號(hào)。ChooseNewFont:從“字體”對(duì)話框中選擇需要顯示的字體、字形和文字的大小。圖1-2“File”菜單圖1-3“Edit”菜單LINDO軟件簡(jiǎn)介
Solve:求解模型。CompileModel:對(duì)模型進(jìn)行編譯。Debug:分析線性規(guī)劃問(wèn)題無(wú)解和無(wú)界解的原因。Pivot:由當(dāng)前解出發(fā)進(jìn)行一次單純形法迭代。PreemptiveGoal:依次按照多個(gè)目標(biāo)求解模型。Solution:顯示模型的解。Range:顯示解的靈敏度分析結(jié)果。Parametrics:分析約束條件右端項(xiàng)變化時(shí),最優(yōu)值如何變化。Statistics:顯示當(dāng)前模型的統(tǒng)計(jì)信息。Peruse:按要求顯示當(dāng)前解的各種信息。Picture:按照?qǐng)D形或文本方式顯示模型中的非零系數(shù)。BasisPicture:只顯示當(dāng)前基的非零系數(shù)。Tableau:顯示當(dāng)前單純形表。Formulation:顯示當(dāng)前模型。ShowColumn:顯示模型中選定列的信息。PositiveDefinite:判斷二次規(guī)劃的目標(biāo)函數(shù)中的二次型是否正定。圖1-4“Solve”菜單圖1-5“Reports”菜單LINDO軟件簡(jiǎn)介
OpenCommandWindow:打開命令窗口。OpenStatusWindow:打開狀態(tài)窗口。LINDO軟件的文件類型LINDO有模型文件和求解文件兩種類型的文件格式。前者有模型文件,后綴為.ltx;LINDOPacked文件,后綴為.lpk;MPS格式文件,后綴為.MPS。后者有PUNCH格式文件,后綴為.pun;FBS格式文件,后綴為.fbs;SDBC格式文件,后綴為.sdb。LINDO軟件的常用函數(shù)FREEx:表示變量x可取任意實(shí)數(shù)。GINx:表示變量x取非負(fù)整數(shù)。INTx:表示變量x取0或1。SLBxL:表示變量x的下界為L(zhǎng)。SUBxU:表示變量x的上界為U。TITLETitle:定義模型名稱為<Title>。圖1-6“Window”菜單圖1-7“Help”菜單Lingo軟件簡(jiǎn)介
Lingo軟件與LINDO軟件是LINDO系統(tǒng)公司的同一系列軟件工具。Lingo軟件除了具有LINDO軟件的全部功能,還可以用于求解非線性規(guī)劃問(wèn)題,也可以用于一些線性和非線性方程組的求解。Lingo軟件包含了內(nèi)置的建模語(yǔ)言和許多常用的數(shù)學(xué)函數(shù),可供使用者在編輯程序時(shí)調(diào)用,而且提供了與其他數(shù)據(jù)文件的交互接口,方便輸入、求解和分析大規(guī)模優(yōu)化計(jì)算問(wèn)題,從而被廣泛應(yīng)用在生產(chǎn)與銷售規(guī)劃、運(yùn)輸、財(cái)務(wù)金融、投資分配、資本預(yù)算、混合排程、庫(kù)存管理、資源配置等領(lǐng)域中。實(shí)驗(yàn)?zāi)康模?)了解Lingo軟件的安裝、界面、文件類型和常用函數(shù)。(2)能用Lingo軟件與Office文檔交換數(shù)據(jù)。(3)了解LINDO軟件和Lingo軟件的區(qū)別。實(shí)驗(yàn)內(nèi)容Lingo軟件的安裝Lingo14.0版本的安裝很方便,直接運(yùn)行Lingo14.exe安裝文件,根據(jù)安裝提示安裝即可。Lingo14.0的測(cè)試版最多處理150個(gè)約束條件、300個(gè)變量、30個(gè)整數(shù)變量、30個(gè)非線性形式和5個(gè)全局變量的規(guī)劃問(wèn)題。Lingo軟件簡(jiǎn)介
軟件界面簡(jiǎn)介打開Lingo軟件后,可以看到軟件界面上有標(biāo)題欄、菜單欄、工具欄和編輯窗口,Lingo軟件界面如圖1-8所示。菜單欄上有“File”、“Edit”、“LINGO”、“Window”和“Help”五個(gè)菜單,圖1-9~圖1-14顯示了每個(gè)菜單的選項(xiàng),圖中選項(xiàng)名稱右側(cè)是其快捷鍵。工具欄上的每個(gè)按鈕與一個(gè)選項(xiàng)對(duì)應(yīng)。下面對(duì)主要選項(xiàng)的功能進(jìn)行簡(jiǎn)單說(shuō)明,其余選項(xiàng)的功能與LINDO軟件和一般Windows菜單中的大致相同。圖1-8Lingo軟件界面Lingo軟件簡(jiǎn)介
ExportFile:輸出文件(MPS格式和MPI格式)。DatabaseUserInfo:數(shù)據(jù)庫(kù)用戶信息。PasteSpecial:特殊粘貼。MatchParenthesis:匹配小括號(hào)。PasteFunction:將Lingo的內(nèi)部函數(shù)粘貼到插入點(diǎn)。InsertNewObject:插入新對(duì)象。圖1-9“File”菜單圖1-10“Edit”菜單圖1-14“Help”菜單Lingo軟件簡(jiǎn)介
Solve:求解模型。Solution:顯示模型的解。Range:顯示解的靈敏度分析結(jié)果。Options:選項(xiàng),可設(shè)置求解模型的一些參數(shù)(見(jiàn)圖1-12)。Generate:模型的一般形式。Picture:模型的矩陣形式。Debug:調(diào)試。ModelStatistics:模型統(tǒng)計(jì)。Look:查看。CommandWindow:打開命令行窗口,在命令行窗口中可以獲得命令行界面,在“:”提示符后可以輸入Lingo的命令行命令。StatusWindow:打開求解狀態(tài)窗口。圖1-11“LINGO”菜單圖1-13“Window”菜單圖1-12“LingoOptions”對(duì)話框Lingo軟件簡(jiǎn)介
Lingo軟件的文件類型Lingo軟件的文件類型有模型文件(Lingo格式,后綴為.lg4;文本格式,后綴為.lng)、Lingo數(shù)據(jù)文件(后綴為.ldt)、Lingo命令腳本文件(后綴為.ltf)、Lingo報(bào)告文件(后綴為.ltx)和數(shù)學(xué)規(guī)劃系統(tǒng)格式的模型文件(后綴為.mps)。Lingo軟件的常用函數(shù)Lingo軟件包含了內(nèi)置的建模語(yǔ)言和許多常用的數(shù)學(xué)函數(shù),可供使用者在編輯程序時(shí)調(diào)用。函數(shù)名和變量名不區(qū)分大小寫,函數(shù)以“@”開頭,變量名可以超過(guò)8個(gè),不能超過(guò)32個(gè),須以字母開頭。對(duì)變量的取值范圍附加限制,如下所述。@BND(L,X,U):限制L小于等于X小于等于U。@BIN(X):限制X為0或1。@FREE(X):取消對(duì)X的符號(hào)限制(即可取負(fù)數(shù)、0或正數(shù))。@GIN(X):限制X為整數(shù)。Lingo軟件簡(jiǎn)介
基本數(shù)學(xué)函數(shù)如下所述。@ABS(X):絕對(duì)值函數(shù),返回X的絕對(duì)值。@EXP(X):指數(shù)函數(shù)(以自然對(duì)數(shù)e為底),返回eX的值。@LOG(X):自然對(duì)數(shù)函數(shù),返回X的自然對(duì)數(shù)值。@POW(X,Y):指數(shù)函數(shù),返回XY的值。@SQR(X):平方函數(shù),返回X2的值。@SQRT(X):平方根函數(shù),返回X的平方根。@FLOOR(X):取整函數(shù),返回X的整數(shù)部分。@COS(X)、@SIN(X)、@TAN(X):三角函數(shù)。@SMAX(X1,X2,…,Xn):返回X1,X2,…,Xn
中的最大值。@SMIN(X1,X2,…,Xn):返回X1,X2,…,Xn
中的最小值。@FILE('file'):從外部文件中輸入數(shù)據(jù),可以放在模型中任何地方,file是文件名,可以采用相對(duì)路徑和絕對(duì)路徑兩種表示方式。@TEXT('file'):把解輸出至文本文件中,file是文件名,可以采用相對(duì)路徑和絕對(duì)路徑兩種表示方式。Lingo軟件簡(jiǎn)介
邏輯運(yùn)算符如下所述。#not#:否定該操作數(shù)的邏輯值,是一種一元運(yùn)算符。#eq#:若兩個(gè)運(yùn)算數(shù)相等,則為true;否則為false。#ne#:若兩個(gè)運(yùn)算符不相等,則為true;否則為false。#gt#:若左邊的運(yùn)算符嚴(yán)格大于右邊的運(yùn)算符,則為true;否則為false。#ge#:若左邊的運(yùn)算符大于或等于右邊的運(yùn)算符,則為true;否則為false。#lt#:若左邊的運(yùn)算符嚴(yán)格小于右邊的運(yùn)算符,則為true;否則為false。#le#:若左邊的運(yùn)算符小于或等于右邊的運(yùn)算符,則為true;否則為false。#and#:僅當(dāng)兩個(gè)參數(shù)都為true時(shí),結(jié)果為true;否則為false。#or#:僅當(dāng)兩個(gè)參數(shù)都為false時(shí),結(jié)果為false;否則為true。Lingo軟件簡(jiǎn)介
Lingo軟件與Excel文件之間的數(shù)據(jù)傳遞:Lingo軟件可通過(guò)@OLE函數(shù)實(shí)現(xiàn)與Excel文件傳遞數(shù)據(jù),使用@OLE函數(shù)既可以從Excel文件中導(dǎo)入數(shù)據(jù),也能把計(jì)算結(jié)果寫入Excel文件。從Excel文件中導(dǎo)入數(shù)據(jù)@OLE函數(shù)的使用格式可以分成以下類型。(1)變量名1,變量名2=@OLE('文件名','數(shù)據(jù)塊名稱1','數(shù)據(jù)塊名稱2');:從指定的Excel文件中讀取數(shù)據(jù),文件名可以包括擴(kuò)展名(.xls),還可以包含完整的路徑目錄名稱,如果沒(méi)有指定路徑,則默認(rèn)路徑是Lingo軟件的當(dāng)前工作目錄。該文件中定義了兩個(gè)數(shù)據(jù)塊,其中的數(shù)據(jù)分別用來(lái)對(duì)變量1和變量2初始化。(2)變量名1,變量名2=@OLE('文件名','數(shù)據(jù)塊名稱');:@OLE函數(shù)的參數(shù)僅指定一個(gè)數(shù)據(jù)塊名稱,該數(shù)據(jù)塊應(yīng)當(dāng)包含類型相同的兩列數(shù)據(jù),第1列賦值給變量1,第2列賦值給變量2。(3)變量名1,變量名2=@OLE('文件名');:沒(méi)有指定數(shù)據(jù)塊名稱,默認(rèn)使用Excel文件中與變量名同名的數(shù)據(jù)塊。Lingo軟件簡(jiǎn)介
把計(jì)算結(jié)果寫入Excel文件@OLE函數(shù)把計(jì)算結(jié)果寫入Excel文件的格式有以下三種。(1)@OLE('文件名','數(shù)據(jù)塊名稱1','數(shù)據(jù)塊名稱2')=變量名1,變量名2;:將兩個(gè)變量的內(nèi)容分別寫入指定文件的兩個(gè)預(yù)先已經(jīng)定義了名稱的數(shù)據(jù)塊,數(shù)據(jù)塊的大小不應(yīng)小于變量所包含的數(shù)據(jù)。(2)@OLE('文件名','數(shù)據(jù)塊名稱')=變量名1,變量名2;:兩個(gè)變量的數(shù)據(jù)寫入同一個(gè)數(shù)據(jù)塊,先寫入變量1,變量2寫入另外1列。(3)@OLE('文件名')=變量名1,變量名2;:不指定數(shù)據(jù)塊的名稱,默認(rèn)使用Excel文件中與變量名同名的數(shù)據(jù)塊。LINDO軟件和Lingo軟件的區(qū)別(1)在LINDO軟件中編輯窗口輸入模型的目標(biāo)函數(shù)以“MAX”開頭,在Lingo軟件中則以“MAX=”或“MIN=”開頭。(2)在LINDO軟件中輸入模型的“SUBJIECTTO”或“ST”在Lingo軟件中不用書寫。(3)在LINDO軟件中系數(shù)和變量之間不能含有運(yùn)算符;而在Lingo軟件中每個(gè)系數(shù)和變量之間均增加了運(yùn)算符“*”,而且不可以省略。(4)在Lingo軟件中每行后面均增加了一個(gè)分號(hào)“;”(英文狀態(tài)下輸入)。(5)在Lingo軟件中模型以“MODEL:”開始,以“END”結(jié)束,對(duì)于簡(jiǎn)單的模型,這兩個(gè)語(yǔ)句都可以省略。WinQSB軟件簡(jiǎn)介
WinQSB
軟件是運(yùn)籌學(xué)領(lǐng)域比較受歡迎的工具,里面有大量的模型,運(yùn)籌學(xué)的主干教學(xué)內(nèi)容可以在WinQSB
軟件的計(jì)算工具包中找到大部分對(duì)應(yīng)的工具箱。WinQSB
軟件對(duì)于非大型的問(wèn)題一般都能計(jì)算,對(duì)于較小的問(wèn)題還能演示中間的計(jì)算過(guò)程。實(shí)驗(yàn)?zāi)康模?)學(xué)會(huì)WinQSB
軟件的安裝和啟動(dòng)方法。(2)了解WinQSB
軟件的基本構(gòu)成、運(yùn)行界面和基本操作方法,熟練掌握WinQSB
軟件的常用命令和功能。(3)能用WinQSB
軟件與Office文檔交換數(shù)據(jù),了解WinQSB
軟件在Windows環(huán)境下的文件管理操作。實(shí)驗(yàn)內(nèi)容安裝與啟動(dòng)WinQSB
軟件的安裝非常容易,運(yùn)行WinQSB
安裝目錄下的WinQSBSetup.exe文件,根據(jù)提示選擇安裝目錄,輸入相關(guān)信息,確認(rèn)之后,安裝程序就會(huì)自動(dòng)完成全部后續(xù)安裝過(guò)程。WinQSB
軟件包大小約為4MB,所以安裝過(guò)程很快就可以完成。詳細(xì)安裝過(guò)程參考以下步驟。WinQSB軟件簡(jiǎn)介
首先雙擊WinQSB
安裝目錄下的WinQSBSetup.exe文件,彈出如圖1-15所示的“WinQSBSetup”對(duì)話框。在“InstallTo”文本框中輸入WinQSB
軟件的安裝目錄(默認(rèn)為C:\WinQSB),單擊“Continue”按鈕,彈出如圖1-16所示的“LimitedUseLicenseAgreement”對(duì)話框。圖1-15“WinQSBSetup”對(duì)話框圖1-16“LimitedUseLicenseAgreement”對(duì)話框在對(duì)應(yīng)文本框中輸入用戶信息(用戶名和公司/組織名稱),單擊“Continue”按鈕繼續(xù)安裝,安裝完成后彈出如圖1-17所示的安裝完成提示對(duì)話框。單擊“確定”按鈕完成安裝,安裝完畢之后,WinQSB
菜單自動(dòng)生成在系統(tǒng)程序中。圖1-17安裝完成提示對(duì)話框WinQSB軟件簡(jiǎn)介
WinQSB
軟件共有19個(gè)模塊,分別對(duì)應(yīng)軟件可以求解的運(yùn)籌學(xué)中的19類問(wèn)題。在軟件安裝完成后,選擇“開始”→“程序”→“WinQSB”菜單命令,我們可以看到WinQSB
軟件中有19個(gè)菜單選項(xiàng),如圖1-18所示。圖1-18WinQSB
軟件中的19個(gè)菜單選項(xiàng)WinQSB軟件簡(jiǎn)介
每個(gè)菜單選項(xiàng)對(duì)應(yīng)運(yùn)籌學(xué)中的一類問(wèn)題,針對(duì)不同的問(wèn)題,選擇不同的菜單選項(xiàng),運(yùn)行相應(yīng)的程序,然后使用“File”菜單中的“New
Problem”選項(xiàng)來(lái)輸入所需數(shù)據(jù)。WinQSB
軟件中各模塊及其功能如表1-2所示。表1-2
WinQSB
軟件中各模塊及其功能此外,在WinQSB
軟件安裝完成后,每一個(gè)模塊都提供了一些典型的例題數(shù)據(jù)文件,用戶可以使用“File”菜單中的“Load
Problem”選項(xiàng)打開已有的數(shù)據(jù)文件,了解數(shù)據(jù)的輸入格式、系統(tǒng)能夠求解的問(wèn)題、結(jié)果的輸出格式等內(nèi)容。表1-2WinQSB軟件中各模塊及其功能WinQSB軟件簡(jiǎn)介
工作界面及基本操作WinQSB
軟件工作界面主要有三種窗口:?jiǎn)?dòng)窗口、數(shù)據(jù)輸入窗口、結(jié)果輸出窗口?,F(xiàn)以“LinearandIntegerProgramming”窗口為例加以說(shuō)明。啟動(dòng)窗口。選擇“開始”→“程序”→“WinQSB”→“LinearandIntegerProgramming”菜單命令,出現(xiàn)如圖1-19所示的“LinearandIntegerProgramming”窗口。標(biāo)題欄:顯示程序的名稱。菜單欄:共有兩個(gè)菜單,即“File”和“Help”?!癋ile”菜單中只有三個(gè)選項(xiàng):“New
Problem”、“Load
Problem”和“Exit”。New
Problem:新建問(wèn)題。Load
Problem:裝載問(wèn)題。Exit:退出。Help
菜單為幫助菜單(略)。工具欄:快速執(zhí)行常用的功能項(xiàng)。信息欄:把鼠標(biāo)移動(dòng)到工具欄按鈕上時(shí),信息欄會(huì)給出相應(yīng)的說(shuō)明信息。圖1-19“LinearandIntegerProgramming”窗口WinQSB軟件簡(jiǎn)介
數(shù)據(jù)輸入窗口。選擇“File”→“NewProblem”菜單命令(或在工具欄上單擊圖標(biāo)),出現(xiàn)如圖1-20所示的“LP-ILPProblemSpecification”對(duì)話框。需要注意的是,對(duì)于不同的模塊,彈出的對(duì)話框是不同的,具體可見(jiàn)各章的WinQSB
軟件實(shí)驗(yàn)。單擊“OK”按鈕,進(jìn)入數(shù)據(jù)輸入窗口,如圖1-21所示。菜單欄共有9個(gè)菜單:“File”、“Edit”、“Format”、“SolveandAnalyze”、“Results”(此處為灰色不可用)、“Utilities”、“Window”、“WinQSB”和“Help”。圖1-20“LP-ILPProblemSpecification”對(duì)話框圖1-21數(shù)據(jù)輸入窗口WinQSB軟件簡(jiǎn)介
數(shù)據(jù)輸入窗口中的“File”
菜單如圖1-22所示。New
Problem:新建問(wèn)題。Load
Problem:裝載問(wèn)題。Close
Problem:關(guān)閉問(wèn)題。Save
Problem:保存問(wèn)題。Save
Problem
As:?jiǎn)栴}另存為。Print
Problem:打印問(wèn)題。Print
Font:打印字體設(shè)置。PrintSetup:打印設(shè)置。Exit:退出。數(shù)據(jù)輸入窗口中的“Edit”菜單如圖1-23所示。Cut:剪切。Copy:復(fù)制。Paste:粘貼。Clear:清除。Undo:恢復(fù)。需要注意的是,除了包含“Cut”“Copy”等選項(xiàng)的第一部分和含有“Undo”選項(xiàng)的第二部分,其他部分的選項(xiàng)會(huì)由于所選程序的不同而不同。具體見(jiàn)后面實(shí)驗(yàn)中各問(wèn)題的詳細(xì)解法。圖1-22數(shù)據(jù)輸入窗口中的“File”菜單圖1-23數(shù)據(jù)輸入窗口中的“Edit”菜單WinQSB軟件簡(jiǎn)介
數(shù)據(jù)輸入窗口中的“Format”菜單如圖
1-24
所示。Number:選擇數(shù)字的顯示格式。選擇此選項(xiàng),彈出如圖
1-25
所示的“Number
Format”對(duì)話框。Font:選擇顯示字體(為
Windows
標(biāo)準(zhǔn)的字體對(duì)話框)。選擇此選項(xiàng),彈出如圖
1-26
所示的“字體”對(duì)話框。Alignment:電子表格文字的對(duì)齊方式。選擇此選項(xiàng),彈出如圖1-27
所示的“Alignment”對(duì)話框。在圖1-27中,左上部分為文字對(duì)齊方式(左、右、中)。右上部分為對(duì)齊方式的應(yīng)用范圍(應(yīng)用于所有列、首行、首列、選定的列)。RowHeight:調(diào)節(jié)電子表格行高。ColumnWidth:調(diào)節(jié)電子表格列寬。根據(jù)子程序的不同,“Format”菜單中會(huì)有不同的選項(xiàng)。具體見(jiàn)后面實(shí)驗(yàn)中各問(wèn)題的詳細(xì)解法。
圖1-24數(shù)據(jù)輸入窗口中的“Format”菜單圖1-25“NumberFormat”對(duì)話框圖1-26“字體”對(duì)話框圖1-27“Alignment”對(duì)話框WinQSB軟件簡(jiǎn)介
數(shù)據(jù)輸入窗口中的“SolveandAnalyze”菜單如圖1-28所示。它也會(huì)根據(jù)不同的子程序而有不同的選項(xiàng),主要的選項(xiàng)如下所述。SolvetheProblem:求解問(wèn)題。SolveandDisplaySteps:求解并顯示過(guò)程。“Utilities”菜單較簡(jiǎn)單,主要提供了幾個(gè)小工具,有“Calculator”(計(jì)算器)、“Clock”(時(shí)鐘)和“Graph/Chart”(圖表)等。數(shù)據(jù)輸入窗口中的“Window”菜單如圖1-29所示。此處會(huì)顯示已經(jīng)打開的子窗口的名稱,可方便地進(jìn)行切換。Cascade:層疊。Tile:平鋪。ArrangeIcons:重排圖標(biāo)。圖1-28數(shù)據(jù)輸入窗口中的“SolveandAnalyze”菜單圖1-29數(shù)據(jù)輸入窗口中的“Window”菜單WinQSB軟件簡(jiǎn)介
“WinQSB”菜單提供了19個(gè)功能的選項(xiàng),可在此處方便地打開其他子程序?!癏elp”菜單提供了WinQSB
軟件的幫助。工具欄:快速執(zhí)行常用的功能項(xiàng)。編輯窗口:在此處輸入具體問(wèn)題的數(shù)據(jù),WinQSB
軟件中主要的數(shù)據(jù)輸入形式是表格。結(jié)果輸出窗口:在輸入數(shù)據(jù)之后,選擇“Solve
and
Analyze”→“Solve
the
Problem”菜單命令,問(wèn)題求解后彈出結(jié)果輸出窗口,如圖
1-30所示。圖1-30結(jié)果輸出窗口WinQSB軟件簡(jiǎn)介
菜單欄有6個(gè)菜單:“File”、“Format”、“Results”、“Utilities”、“Window”和“Help”。結(jié)果輸出窗口中的“File”菜單如圖1-31所示Print:打印。QuickPrintWindow:快速打印窗口。SaveAs:結(jié)果另存為。CopytoClipboard:復(fù)制到剪貼板。PrintFont:打印字體設(shè)置。PrintSetup:打印設(shè)置。Exit:退出?!癛esults”菜單主要是對(duì)問(wèn)題進(jìn)行各種不同的分析和顯示,根據(jù)不同的子程序會(huì)有所不同?!癋ormat”、“Utilities”、“Window”和“Help”菜單的選項(xiàng)同數(shù)據(jù)輸入窗口中對(duì)應(yīng)的菜單。工具欄:快速執(zhí)行常用的功能項(xiàng)。結(jié)果顯示窗口:在此顯示問(wèn)題的求解結(jié)果,有表格或圖形的形式。圖1-31結(jié)果輸出窗口中的“File”菜單WinQSB軟件簡(jiǎn)介
數(shù)據(jù)的錄入與保存(1)數(shù)據(jù)可以采用直接錄入方式,同時(shí)也可以從Excel文件或Word文檔中復(fù)制數(shù)據(jù)到WinQSB軟件中。首先選中要復(fù)制的電子表格中單元格的數(shù)據(jù),選用復(fù)制功能,然后在WinQSB
軟件的電子表格編輯狀態(tài)下選中要粘貼的單元格(在WinQSB
軟件中選中的單元格應(yīng)與在電子表格中選中的單元格行列數(shù)相同,否則只能復(fù)制部分?jǐn)?shù)據(jù)),粘貼即可。(2)把WinQSB
軟件數(shù)據(jù)輸入窗口中的數(shù)據(jù)復(fù)制到Office文檔:先清空剪貼板(可用Excel文件或Word文檔中“Edit”菜單中的“剪貼板”選項(xiàng)來(lái)清空),然后在WinQSB
軟件的表格中選中要復(fù)制的數(shù)據(jù),選擇“Edit”菜單中的“Copy”選項(xiàng),粘貼到Excel文件或Word文檔中。(3)計(jì)算結(jié)果的保存,只需要選擇“File”→“SaveAs”菜單命令即可,只是需要注意系統(tǒng)以文本格式(*.txt)保存結(jié)果,使用者可以編輯該文本文件。也可以把WinQSB
軟件結(jié)果輸出窗口中的數(shù)據(jù)復(fù)制到Office文件中進(jìn)行保存,方法:?jiǎn)栴}求解后,先清空“剪貼板”,選擇“File”菜單中的“CopytoClipboard”選項(xiàng),然后粘貼到Excel文件或Word文檔中。MATLAB軟件簡(jiǎn)介
MATLAB是矩陣實(shí)驗(yàn)室(MatrixLaboratory)的簡(jiǎn)稱,是由美國(guó)MathWorks公司研制開發(fā)的一種面向工程和科學(xué)計(jì)算的軟件,專門以矩陣的形式處理數(shù)據(jù)。MATLAB軟件將高性能的數(shù)值計(jì)算、數(shù)據(jù)可視化和程序設(shè)計(jì)融合在一種簡(jiǎn)單易用的交互式工作環(huán)境中,并且提供了大量的內(nèi)置函數(shù),從而使其廣泛應(yīng)用于數(shù)學(xué)計(jì)算和分析、自動(dòng)控制、系統(tǒng)仿真、數(shù)字信號(hào)處理、圖形圖像分析、數(shù)理統(tǒng)計(jì)、人工智能、虛擬現(xiàn)實(shí)技術(shù)、通信工程、金融系統(tǒng)等領(lǐng)域。實(shí)驗(yàn)?zāi)康模?)熟悉MATLAB軟件的工作環(huán)境、菜單和選項(xiàng)的功能、基本操作。(2)了解MATLAB軟件的文件類型和MATLAB工具箱。(3)掌握簡(jiǎn)單的命令運(yùn)算和M文件的基本操作。MATLAB軟件簡(jiǎn)介
實(shí)驗(yàn)內(nèi)容MATLAB軟件界面介紹MATLAB軟件的界面主要有菜單欄、工具欄、命令窗口、歷史命令窗口、工作空間窗口和當(dāng)前目錄窗口等。MATLAB軟件界面如圖1-32所示。命令窗口位于界面的中間,在窗口中顯示命令提示符“>>”,可在“>>”之后輸入命令,按下“Enter”鍵后,MATLAB軟件會(huì)立即顯示運(yùn)行結(jié)果并將結(jié)果自動(dòng)賦予變量ans。若要禁止顯示計(jì)算的中間結(jié)果,則可以通過(guò)分號(hào)“;”來(lái)實(shí)現(xiàn)。如果求解較為復(fù)雜的問(wèn)題,可以采用給變量賦值的方法。圖1-32MATLAB軟件界面MATLAB軟件簡(jiǎn)介
工作空間是用于儲(chǔ)存運(yùn)算中的各種變量和結(jié)果的內(nèi)存空間,而工作空間窗口則用于顯示變量的名稱、大小、字節(jié)數(shù)及數(shù)據(jù)類型等,我們可以通過(guò)工作空間窗口對(duì)變量進(jìn)行觀察、編輯、保存和刪除等操作。歷史命令窗口用來(lái)記錄用戶在命令窗口中執(zhí)行過(guò)的命令行,包括已運(yùn)行過(guò)的命令、函數(shù)、表達(dá)式、使用時(shí)間等信息。在歷史命令窗口中可進(jìn)行歷史命令的查找、檢查等工作。用鼠標(biāo)選中歷史命令窗口中的命令行,單擊右鍵彈出操作菜單,我們可以選擇相應(yīng)選項(xiàng)對(duì)這些歷史命令進(jìn)行復(fù)制、執(zhí)行及刪除等操作;雙擊這些命令可使它們?cè)俅螆?zhí)行。當(dāng)前目錄窗口用于顯示和設(shè)置當(dāng)前工作目錄,同時(shí)顯示當(dāng)前工作目錄下的文件名、文件類型及目錄的修改時(shí)間等信息。用鼠標(biāo)選中當(dāng)前目錄窗口中的文件,單擊右鍵可以進(jìn)行打開、運(yùn)行、重命名及刪除等操作。設(shè)置當(dāng)前目錄可以在當(dāng)前目錄窗口上方的輸入欄中直接輸入。菜單欄中有“File”、“Edit”、“Debug”、“Parallel”、“Desktop”、“Window”和“Help”七個(gè)菜單,圖1-33~圖1-39顯示了每個(gè)菜單的選項(xiàng),圖中選項(xiàng)名稱右側(cè)是其快捷鍵。工具欄上的每個(gè)按鈕與一個(gè)選項(xiàng)對(duì)應(yīng)。下面對(duì)主要選項(xiàng)的功能進(jìn)行簡(jiǎn)單說(shuō)明,其余選項(xiàng)的功能與一般Windows菜單中的大致相同。MATLAB軟件簡(jiǎn)介
CloseCommandWindow:關(guān)閉命令窗口。ImportData:工作空間導(dǎo)入數(shù)據(jù)。SetPath:設(shè)定路徑。Preferences:設(shè)置MATLAB軟件系統(tǒng)的屬性參數(shù)。圖1-33“File”菜單圖1-34“Edit”菜單ClearCommandWindow:清除命令窗口。ClearCommandHistory:清除命令記錄。ClearWorkspase:清除工作空間。MATLAB軟件簡(jiǎn)介
OpenFileswhenDebugging:打開文件的調(diào)試工具。Step:逐步調(diào)試程序。StepIn:進(jìn)入子程序逐步執(zhí)行調(diào)試程序。StepOut:跳出子程序逐步執(zhí)行調(diào)試程序。Continue:繼續(xù)執(zhí)行程序到下一個(gè)斷點(diǎn)。ClearBreakpointsinAllFiles:清除文件中的所有斷點(diǎn)。StopifErrors/Warnings:程序出現(xiàn)錯(cuò)誤或警告停止運(yùn)行。ExitDebugMode:退出調(diào)試狀態(tài)。SelectConfiguration:選擇配置。ManageConfigurations:管理配置。圖1-35“Debug”菜單圖1-36“Parallel”菜單MATLAB軟件簡(jiǎn)介
DesktopLayout:恢復(fù)MATLAB軟件運(yùn)行環(huán)境的界面為默認(rèn)狀態(tài)下的界面組合。SaveLayout:保存用戶的窗口顯示模式。CommandWindow:控制命令窗口的顯示。CommandHistory:控制命令歷史窗口的顯示。CurrentFolder:控制當(dāng)前目錄窗口的顯示。Workspace:控制數(shù)據(jù)編輯窗口的顯示。Help:控制幫助系統(tǒng)的顯示。Profiler:控制M文件分析窗口的顯示。Editor:控制Editor窗口的顯示。Figures:控制Figures窗口的顯示。WebBrowser:控制WebBrowser窗口的顯示。Toolbars:控制工具條的顯示。Titles:控制標(biāo)題欄的顯示。圖1-37“Desktop”菜單圖1-38“Window”菜單圖1-39“Help”菜單MATLAB軟件簡(jiǎn)介
在MATLAB軟件的命令窗口中直接輸入相關(guān)的命令行或者語(yǔ)句段,輸入示例如圖1-40所示,這種方法適用于一些簡(jiǎn)單問(wèn)題的求解,當(dāng)遇到較為復(fù)雜的問(wèn)題時(shí),則需要用到程序編輯與調(diào)試的環(huán)境。在MATLAB軟件中可利用M文件編輯器,實(shí)現(xiàn)對(duì)MATLAB命令行語(yǔ)句段的批處理,或者對(duì)M文件進(jìn)行保存和調(diào)用,使得MATLAB軟件的功能得到極大的擴(kuò)展,適用于較大規(guī)模程序的編制,并以此解決更為復(fù)雜的工程問(wèn)題。M文件編輯器是MATLAB軟件中集成編輯和調(diào)試的環(huán)境,用戶可以通過(guò)MATLAB軟件中的M文件編輯器編寫用戶的M文件,同時(shí)也可以使用編輯器打開和修改M文件、觀察變量值、調(diào)試程序等。在MATLAB軟件中選擇“File”→“New→“Function”菜單命令或單擊工具欄上的按鈕,打開M文件編輯窗口,如圖1-41所示。圖1-40輸入示例圖1-41M文件編輯窗口MATLAB軟件簡(jiǎn)介
MATLAB軟件的文件類型MATLAB軟件的文件類型有M文件(后綴為.m)、MAT文件(后綴為.mat)、MEX文件(后綴為.mex
或.dll)、FIG圖形文件(后綴為.fig)、P文件(后綴為.p)和Models模型文件(后綴為.mdl)。MAT文件是MATLAB軟件數(shù)據(jù)存儲(chǔ)的標(biāo)準(zhǔn)格式文件。MEX文件是MATLAB軟件編譯處理的二進(jìn)制文件。P文件是M文件的加密格式文件。MATLAB工具箱工具箱是MATLAB軟件用來(lái)解決各個(gè)領(lǐng)域特定問(wèn)題的函數(shù)庫(kù),主要用來(lái)擴(kuò)充MATLAB軟件的數(shù)值計(jì)算、符號(hào)運(yùn)算、圖形建模仿真等功能,使其能夠用于多種學(xué)科。MATLAB軟件中的工具箱有控制系統(tǒng)工具箱(ControlSystemToolbox)、信號(hào)處理工具箱(SignalProcessingToolbox)、財(cái)政金融工具箱(FinancialToolbox)和優(yōu)化工具箱(OptimizationToolbox)等二十多種。本書將利用MATLAB軟件的優(yōu)化工具箱求解相關(guān)的運(yùn)籌學(xué)問(wèn)題。第2章線性規(guī)劃實(shí)驗(yàn)2.1基礎(chǔ)知識(shí)2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題2.1基礎(chǔ)知識(shí)
線性規(guī)劃(LP)是運(yùn)籌學(xué)的一個(gè)重要分支。自1947年美國(guó)數(shù)學(xué)家GeorgeBernardDantzig提出了求解線性規(guī)劃問(wèn)題的單純形法后,線性規(guī)劃在理論上日益成熟,在實(shí)際中的應(yīng)用也更加廣泛,在工業(yè)、農(nóng)業(yè)、經(jīng)濟(jì)管理、軍事和交通運(yùn)輸?shù)雀鞣矫娑及l(fā)揮了重要作用。線性規(guī)劃問(wèn)題的數(shù)學(xué)模型
在經(jīng)濟(jì)和生產(chǎn)活動(dòng)中,生產(chǎn)者往往要追求收益最大、成本最小等目標(biāo)。線性規(guī)劃能解決的就是在有限資源的約束條件下,使獲得收益(或支付成本)的線性目標(biāo)取得最大值(或最小值)的問(wèn)題,其中收益、成本和約束條件均為變量的線性表達(dá)式。
線性規(guī)劃問(wèn)題的數(shù)學(xué)模型包含三個(gè)組成要素:
決策變量目標(biāo)函數(shù)約束條件2.1基礎(chǔ)知識(shí)
2.1基礎(chǔ)知識(shí)
線性規(guī)劃問(wèn)題的求解方法圖解法以一個(gè)決策變量為橫軸,另一個(gè)決策變量為縱軸,畫出平面直角坐標(biāo)系;在坐標(biāo)系上畫出每個(gè)約束條件對(duì)應(yīng)的直線或區(qū)域;確定可行域;確定線性規(guī)劃問(wèn)題解的情況。單純形法找出初始基可行解;若初始基可行解不存在,則該線性規(guī)劃問(wèn)題無(wú)最優(yōu)解;否則,進(jìn)入下一步;若初始基可行解存在,以該初始基可行解作為起點(diǎn),根據(jù)檢驗(yàn)數(shù)的最優(yōu)性條件和可行性條件,引入非基變量取代某一基變量,找出使目標(biāo)函數(shù)值更優(yōu)的基可行解;按照上一步進(jìn)行迭代,直到對(duì)應(yīng)檢驗(yàn)數(shù)滿足最優(yōu)性條件,得到問(wèn)題的最優(yōu)解。特別要注意的是,若在迭代過(guò)程中發(fā)現(xiàn)問(wèn)題的目標(biāo)函數(shù)值無(wú)界,說(shuō)明該線性規(guī)劃問(wèn)題存在無(wú)界解,應(yīng)終止迭代。2.1基礎(chǔ)知識(shí)
線性規(guī)劃問(wèn)題的求解方法人工變量法若線性規(guī)劃問(wèn)題的約束條件是等式,而且系數(shù)矩陣中不包含單位矩陣,則可以采用人工變量法進(jìn)行求解。大M法若目標(biāo)函數(shù)為maxz,將人工變量的系數(shù)取為-M(M是充分大的正數(shù));若目標(biāo)函數(shù)為minz,將人工變量的系數(shù)取為M,然后利用單純形法求解。
兩階段法第一階段:求解一個(gè)目標(biāo)函數(shù)僅含有人工變量的極小化問(wèn)題。若最優(yōu)值為0,去掉人工變量轉(zhuǎn)為第二階段;若最優(yōu)值為非0值,則原問(wèn)題無(wú)可行解,停止計(jì)算。第二階段:去掉第一階段中的人工變量,將第一階段得到的最優(yōu)解作為初始基可行解,再利用單純形法進(jìn)行求解。2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
利用LINDO軟件求解線性規(guī)劃問(wèn)題,不需要將問(wèn)題化成標(biāo)準(zhǔn)型,只需將線性規(guī)劃模型輸入該軟件的編輯窗口即可。LINDO軟件默認(rèn)變量是非負(fù)的,如果變量是有界或無(wú)約束的,那么使用FREE語(yǔ)句可以把指定變量的非負(fù)約束去掉。
實(shí)驗(yàn)?zāi)康氖煜INDO軟件求解線性規(guī)劃問(wèn)題的方法步驟,并理解求解結(jié)果。
掌握LINDO軟件對(duì)線性規(guī)劃問(wèn)題解的情況的判別。
通過(guò)利用LINDO軟件求解線性規(guī)劃問(wèn)題,進(jìn)一步理解線性規(guī)劃問(wèn)題的建模和求解。2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
實(shí)驗(yàn)內(nèi)容例2.1利用LINDO軟件求解下列線性規(guī)劃問(wèn)題。
2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
1.模型1求解步驟打開LINDO軟件后,在編輯窗口輸入模型12.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
單擊窗口“Solve”菜單中的“Solve”選項(xiàng)或單擊工具欄中的
按鈕2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
模型1的輸出結(jié)果如右圖
2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
2.模型2求解步驟打開LINDO軟件后,在編輯窗口輸入模型22.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
求解模型2,得到模型2的輸出結(jié)果如右圖
2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
3.模型3求解步驟打開LINDO軟件后,在編輯窗口輸入模型32.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
單擊窗口“Solve”菜單中的“Solve”選項(xiàng)或單擊工具欄中的
按鈕求解模型3,彈出模型3的錯(cuò)誤信息對(duì)話框,提示無(wú)界解。2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
單擊對(duì)話框中的“OK”按鈕,出現(xiàn)模型3的解狀態(tài)對(duì)話框,最優(yōu)解狀態(tài)顯示為無(wú)界(“Unbounded”)。該問(wèn)題有無(wú)界解。2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
4.模型4求解步驟打開LINDO軟件后,在編輯窗口輸入模型42.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
單擊窗口“Solve”菜單中的“Solve”選項(xiàng)或單擊工具欄中的
按鈕求解模型4,彈出模型4的錯(cuò)誤信息對(duì)話框,提示無(wú)可行解。2.2使用LINDO軟件求解線性規(guī)劃問(wèn)題
單擊對(duì)話框中的“OK”按鈕,出現(xiàn)模型4的解狀態(tài)對(duì)話框,最優(yōu)解狀態(tài)顯示為為無(wú)可行解(“Infeasible”)。該問(wèn)題無(wú)可行解。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
利用Lingo軟件求解線性規(guī)劃問(wèn)題,可以避免大量的煩瑣的計(jì)算,能夠輕松、有效地獲得規(guī)劃問(wèn)題的解。Lingo軟件求解線性規(guī)劃問(wèn)題的過(guò)程采用的是單純形法,一般首先尋求一個(gè)可行解,在有可行解的情況下再尋求最優(yōu)解。
實(shí)驗(yàn)?zāi)康氖煜ingo軟件求解線性規(guī)劃問(wèn)題的方法步驟,并理解求解結(jié)果。掌握Lingo軟件對(duì)線性規(guī)劃問(wèn)題解的情況的判別。實(shí)驗(yàn)內(nèi)容例2.2利用Lingo軟件求解例2.1中的線性規(guī)劃問(wèn)題。
2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
1.模型1求解步驟打開Lingo軟件后,在編輯窗口輸入模型12.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
單擊“Lingo”菜單中的“Solve”選項(xiàng)或單擊工具欄中的
按鈕,求解該模型,得到模型1的解狀態(tài)對(duì)話框。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
模型1的解報(bào)告窗口2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
2.模型2求解步驟打開Lingo軟件后,在編輯窗口輸入模型22.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
求解模型2,得到模型2的解狀態(tài)對(duì)話框2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
3.模型3求解步驟打開Lingo軟件后,在編輯窗口輸入模型32.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
單擊“Lingo”菜單中的“Solve”選項(xiàng)或單擊工具欄中的
按鈕求解模型3,彈出模型3的錯(cuò)誤信息對(duì)話框,提示無(wú)界解。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
單擊對(duì)話框中的“OK”按鈕,彈出對(duì)話框,警告:模型的當(dāng)前解可能不是最優(yōu)的或是不可行的。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
該問(wèn)題有無(wú)界解。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
繼續(xù)單擊對(duì)話框中的“OK”按鈕,彈出模型3的解狀態(tài)對(duì)話框。4.模型4求解步驟打開Lingo軟件后,在編輯窗口輸入模型42.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
單擊“Lingo”菜單中的“Solve”選項(xiàng)或單擊工具欄中的
按鈕求解模型4,彈出模型4的錯(cuò)誤信息對(duì)話框,提示無(wú)可行解。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
單擊對(duì)話框中的“OK”按鈕,彈出對(duì)話框,警告:模型的當(dāng)前解可能不是最優(yōu)的或是不可行的。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
該問(wèn)題無(wú)可行解。2.3使用Lingo軟件求解線性規(guī)劃問(wèn)題
繼續(xù)單擊對(duì)話框中的“OK”按鈕,彈出模型4的解狀態(tài)對(duì)話框。利用WinQSB軟件求解線性規(guī)劃問(wèn)題時(shí),需要調(diào)用“LinearandIntegerProgramming”模塊,且不需要將模型化為標(biāo)準(zhǔn)型。當(dāng)決策變量是有界變量或無(wú)約束變量時(shí),可以不用轉(zhuǎn)化,只需要修改系統(tǒng)的變量類型即可。對(duì)于不等式約束,可以在輸入數(shù)據(jù)時(shí)直接輸入不等式符號(hào)。2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
實(shí)驗(yàn)?zāi)康氖煜inQSB軟件求解線性規(guī)劃問(wèn)題的方法、步驟,并理解求解結(jié)果。熟悉WinQSB軟件求解線性規(guī)劃問(wèn)題的圖解法。了解WinQSB軟件用單純形法和大M法求解線性規(guī)劃問(wèn)題的過(guò)程。
實(shí)驗(yàn)內(nèi)容例2.3利用WinQSB軟件求解線性規(guī)劃問(wèn)題。
2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
方法1利用單純形法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
選擇“開始”
→“程序”→“WinQSB”→“LinearandIntegerProgramming”→“File”→“NewProblem”菜單命令,
生成對(duì)話框,輸入模型信息方法1利用單純形法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
2.在編輯窗口輸入模型方法1利用單純形法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
方法1利用單純形法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
選擇“SolveandAnalyze”→“Solveand
Display
Steps”菜單命令,得到初始單純形表方法1利用單純形法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
再選擇“Simplex
Iteration”→
“NextIteration”菜單命令,得到單純形法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
1.在編輯窗口輸入模型后,
“SolveandAnalyze”→“GraphicMethod”菜單命令或者單擊工具欄中的按鈕方法2利用圖解法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
2.在圖解法變量選
擇對(duì)話框中選擇橫坐標(biāo)和縱坐標(biāo),單擊“OK”按鈕。方法2利用圖解法的求解步驟2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
方法2利用圖解法的求解步驟
例2.4利用WinQSB軟件求解線性規(guī)劃問(wèn)題。
2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
選擇“開始”
→“程序”→“WinQSB”→“LinearandIntegerProgramming”→“File”→“NewProblem”菜單命令,
生成對(duì)話框,輸入模型信息2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
2.在編輯窗口輸入模型2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
3.選擇“SolveandAnalyze”→“Solveand
Display
Steps”菜單命令,得到初始單純形表,表中C2、C3為人工變量,目標(biāo)函數(shù)中人工變量的系數(shù)為-M。2.4使用WinQSB軟件求解線性規(guī)劃問(wèn)題
2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
線性規(guī)劃問(wèn)題的目標(biāo)函數(shù)求的是最大值或最小值,約束條件的不等式符號(hào)可以是小于等于號(hào)也可以是大于等于號(hào)。為了利用MATLAB軟件求解線性規(guī)劃問(wèn)題,將模型轉(zhuǎn)化成如下形式:
式中,f、x、b、beq、lb、ub為向量;A、Aeq為矩陣。
再調(diào)用linprog函數(shù)來(lái)求解模型。2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
實(shí)驗(yàn)?zāi)康氖煜ATLAB軟件求解線性規(guī)劃模型的基本命令和M文件的編寫。了解MATLAB軟件優(yōu)化工具箱求解線性規(guī)劃問(wèn)題的方法。
實(shí)驗(yàn)內(nèi)容例2.5利用MATLAB軟件求解例2.1中的線性規(guī)劃問(wèn)題1。
方法11.打開MATLAB軟件,單擊“File”選項(xiàng),選擇“New”→“Function”選項(xiàng),新建一個(gè)M文件。在M文件編輯窗口中輸入如下語(yǔ)句。2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
方法1在MATLAB軟件編輯窗口中輸入該問(wèn)題數(shù)學(xué)模型。2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
方法12.選擇“Debug”→“RunLPexample.m”菜單命令或單擊工具欄中的
圖標(biāo),運(yùn)行模型。2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
方法13.運(yùn)行結(jié)果2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
方法21.打開MATLAB軟件,單擊“Start”選項(xiàng),選擇“Toolboxes”→“Optimization”,打開優(yōu)化工具箱。2.優(yōu)化工具箱對(duì)話框中,在“Solver”下拉列表中選擇“l(fā)inprog-Linearprogramming”,在“Problem”文本框中輸入目標(biāo)函數(shù)、不等式約束、等式約束及變量上限與下限。2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
方法2
2.5使用MATLAB軟件求解線性規(guī)劃問(wèn)題
第3章對(duì)偶理論與靈敏度分析實(shí)驗(yàn)3.1基礎(chǔ)知識(shí)3.2使用LINDO軟件進(jìn)行靈敏度分析3.3使用Lingo軟件求解對(duì)偶問(wèn)題和進(jìn)行靈敏度分析3.4使用WinQSB軟件求解對(duì)偶問(wèn)題和進(jìn)行靈敏度分析3.1基礎(chǔ)知識(shí)
每一個(gè)線性規(guī)劃問(wèn)題都存在一個(gè)與其匹配的線性規(guī)劃問(wèn)題,我們稱其中一個(gè)問(wèn)題為原問(wèn)題,另一個(gè)問(wèn)題為對(duì)偶問(wèn)題。研究原問(wèn)題與對(duì)偶問(wèn)題內(nèi)在聯(lián)系的對(duì)偶理論,在經(jīng)濟(jì)學(xué)中有著重要的應(yīng)用。原問(wèn)題與對(duì)偶問(wèn)題原問(wèn)題(對(duì)偶問(wèn)題)對(duì)偶問(wèn)題(原問(wèn)題)靈敏度分析的類型1)分析約束條件右端項(xiàng)
變化的影響(1)若,則用對(duì)偶單純形法繼續(xù)迭代。(2)若,則保持最優(yōu)解不變,因而對(duì)偶價(jià)格不變。2)目標(biāo)函數(shù)系數(shù)
變化的影響(1)若,則用單純形法繼續(xù)迭代求最優(yōu)解。(2)若,則保持最優(yōu)解不變。3)增加一個(gè)變量
的分析首先計(jì)算增加變量的檢驗(yàn)數(shù),然后計(jì)算(1)若,則按單純形法繼續(xù)計(jì)算以找出最優(yōu)解。(2)若,則原最優(yōu)解不變,將和直接寫入單純形表。3.2使用LINDO軟件進(jìn)行靈敏度分析例3.1某工廠計(jì)劃生產(chǎn)甲、乙兩種產(chǎn)品,已知生產(chǎn)單位產(chǎn)品所需的設(shè)備臺(tái)時(shí)及原材料A、B的消耗量,如表3-1所示。該工廠每生產(chǎn)一件產(chǎn)品甲可獲得2元利潤(rùn),每生產(chǎn)一件產(chǎn)品乙可獲得5元利潤(rùn)。求該工廠如何安排生產(chǎn)計(jì)劃,可使獲得的利潤(rùn)最多?并進(jìn)行靈敏度分析。利用LINDO軟件求解的步驟如下所示。(1)打開LINDO軟件,在編輯窗口中輸入模型該問(wèn)題的數(shù)學(xué)模型表示為(2)選擇“Solve”菜單中的“Solve”選項(xiàng)或單擊工具欄中的按鈕,彈出對(duì)話框,詢問(wèn)是否進(jìn)行靈敏度分析,單擊“是”按鈕,得到模型結(jié)果3.3使用Lingo軟件求解對(duì)偶問(wèn)題和進(jìn)行靈敏度分析例3.2利用Lingo軟件求解線性規(guī)劃問(wèn)題的對(duì)偶問(wèn)題。利用Lingo軟件求解的步驟如下所示。(1)打開Lingo軟件,在編輯窗口中輸入模型(2)選擇“LINGO”→“Generate”→“Dualmodel”菜單命令,求解對(duì)偶問(wèn)題例3.3利用Lingo軟件求解(1)在Lingo軟件的編輯窗口中輸入模型(2)選擇“LINGO”→“Options”菜單命令,彈出“LingoOptions”對(duì)話框,單擊“GeneralSolver”選項(xiàng)卡,在“DualComputations”下拉列表中選擇“Prices&Ranges”選項(xiàng),單擊“OK”按鈕。(3)選擇“LINGO”→“Solve”菜單命令,求解模型;選擇“LINGO”→“Solution”菜單命令,彈出解報(bào)告窗口;選擇“LINGO”→“Range”菜單命令,彈出靈敏度分析報(bào)告窗口。3.4使用WinQSB軟件求解對(duì)偶問(wèn)題和進(jìn)行靈敏度分析WinQSB軟件中的“LinearandIntegerProgramming”模塊,可用來(lái)求解對(duì)偶問(wèn)題和進(jìn)行靈敏度分析。該軟件在求解線性規(guī)劃問(wèn)題時(shí),可以給出對(duì)偶問(wèn)題,并對(duì)價(jià)值系數(shù)和資源變量進(jìn)行靈敏度分析。例3.4利用WinQSB軟件求解利用WinQSB軟件求解的步驟如下所示。(1)選擇“開始”→“程序”→“WinQSB”→“LinearandIntegerProgramming”→“File”→“NewProblem”菜單命令,彈出“LP-ILPProblemSpecification”對(duì)話框,輸入模型信息,單擊“OK”按鈕。(2)在WinQSB軟件的編輯窗口中輸入模型(3)選擇“Format”→“SwitchtoDualForm”菜單命令,得到對(duì)偶問(wèn)題的數(shù)學(xué)模型(4)選擇“Edit”→“VariableNames”菜單命令,彈出對(duì)偶變量名對(duì)話框,更改對(duì)偶變量名,再單擊“OK”按鈕,得到對(duì)偶模型。對(duì)偶問(wèn)題的數(shù)學(xué)模型為例3.5某小型豆制品加工廠用大豆生產(chǎn)甲、乙兩種豆制品。一袋大豆在設(shè)備A上加工12h,可制成3kg甲產(chǎn)品;或者在設(shè)備B上加工8h,可制成4kg乙產(chǎn)品。每千克甲產(chǎn)品獲利24元,每千克乙產(chǎn)品獲利16元?,F(xiàn)每天獲得50袋大豆的供應(yīng)量,每天正式工人總的勞動(dòng)時(shí)間為480h,設(shè)備A每天至多能加工100kg甲產(chǎn)品,設(shè)備B可以無(wú)限地加工乙產(chǎn)品。求該加工廠如何制訂生產(chǎn)計(jì)劃,可以使得每天的獲利最大?并進(jìn)行靈敏度分析。設(shè)這個(gè)小型加工廠每天使用、袋大豆生產(chǎn)甲、乙兩種產(chǎn)品,則該問(wèn)題可以建立如下的數(shù)學(xué)模型(1)選擇“開始”→“程序”→“WinQSB”→“LinearandIntegerProgramming”→“File”→“NewProblem”菜單命令,彈出“LP-ILPProblemSpecification”對(duì)話框(見(jiàn)圖3-15),輸入模型信息,單擊“OK”按鈕。(2)在WinQSB軟件的編輯窗口中輸入模型(3)選擇“SolveandAnalyze”→“SolvetheProblem”菜單命令,得到模型結(jié)果第4章整數(shù)規(guī)劃實(shí)驗(yàn)基礎(chǔ)知識(shí)
使用Lindo求解整數(shù)規(guī)劃問(wèn)題使用Lingo求解整數(shù)規(guī)劃問(wèn)題使用WinQSB軟件求解整數(shù)規(guī)劃問(wèn)題使用Matlab求解整數(shù)規(guī)劃問(wèn)題分支定界法1.首先求解整數(shù)規(guī)劃問(wèn)題的松弛問(wèn)題的最優(yōu)解,若最優(yōu)解滿足整數(shù)要求,則該解是整數(shù)規(guī)劃問(wèn)題的最優(yōu)解。否則轉(zhuǎn)入下一步。2.在松弛問(wèn)題中分別增加約束條件,分成若干子問(wèn)題進(jìn)行分支。取整數(shù)要求的變量
,設(shè)
,由此產(chǎn)生約束條件
和
。3.求解各分支的線性規(guī)劃問(wèn)題。若存在需要繼續(xù)分支的情況轉(zhuǎn)到第2步;否則停止分支解出滿足整數(shù)要求的解,比較各分支的最優(yōu)值得到滿足目標(biāo)函數(shù)要求的最優(yōu)解。0-1整數(shù)規(guī)劃問(wèn)題的數(shù)學(xué)模型為:當(dāng)決策變量的個(gè)數(shù)n不是很大的時(shí)候,利用窮舉法求解0-1整數(shù)規(guī)劃問(wèn)題,即對(duì)所有變量的0和1的組合,比較目標(biāo)函數(shù)值,得到最優(yōu)解。4.1基礎(chǔ)知識(shí)
整數(shù)規(guī)劃是指決策變量取值限制為整數(shù)值的數(shù)學(xué)規(guī)劃問(wèn)題。整數(shù)規(guī)劃分為三類:所有的決策變量都要求取整數(shù)值,則稱為純整數(shù)規(guī)劃;若部分變量要求取整數(shù)值,則稱為混合整數(shù)規(guī)劃;若變量只要求取0和1,則稱為0-1整數(shù)規(guī)劃。整數(shù)規(guī)劃問(wèn)題去掉取整約束后得到的線性規(guī)劃問(wèn)題稱為原整數(shù)規(guī)劃問(wèn)題的松弛問(wèn)題。4.2使用Lindo求解整數(shù)規(guī)劃問(wèn)題
1.實(shí)驗(yàn)?zāi)康模?)熟悉一般整數(shù)規(guī)劃問(wèn)題和0-1整數(shù)規(guī)劃問(wèn)題的Lindo求解方法。(2)熟悉Lindo軟件的整數(shù)限制命令GIN和0-1限制命令I(lǐng)NT。2.實(shí)驗(yàn)內(nèi)容用Lindo軟件求解整數(shù)規(guī)劃問(wèn)題。例14.2使用Lindo求解整數(shù)規(guī)劃問(wèn)題
2.實(shí)驗(yàn)內(nèi)容用Lindo軟件求解整數(shù)規(guī)劃問(wèn)題。例2某公司三年內(nèi)有四個(gè)項(xiàng)目可以考慮投資,每個(gè)項(xiàng)目的期望收益和每年投資額如表4-1所示。假定每個(gè)選定的投資項(xiàng)目要在三年內(nèi)完成。確定應(yīng)該投資哪些項(xiàng)目,能
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 23698:2024 EN Cosmetics - Measurement of the sunscreen efficacy by diffuse reflectance spectroscopy
- 【正版授權(quán)】 ISO/IEC TR 24722:2024 EN Information technology - Biometrics - Multimodal and other multibiometric fusion
- 【正版授權(quán)】 ISO 16173:2025 EN Ships and marine technology - Jacking system appliances on self-elevating unit - Rack pinion leg fixation system
- 【正版授權(quán)】 ISO 1171:2024 EN Coal and coke - Determination of ash
- 2025年度玻璃隔斷安裝與品牌授權(quán)合同
- 2025年度金融科技企業(yè)員工試工合作協(xié)議
- 2025年度高速公路服務(wù)區(qū)草坪綠化與旅客服務(wù)合同
- 2025年度草種研發(fā)與市場(chǎng)推廣合作協(xié)議
- 2025年度社會(huì)組織勞動(dòng)合同范本解讀與應(yīng)用4篇
- 個(gè)人財(cái)務(wù)規(guī)劃的重要階段計(jì)劃
- 《中國(guó)成人支氣管擴(kuò)張癥診斷與治療專家共識(shí)2021》
- pop海報(bào)課件教學(xué)課件
- 血流限制訓(xùn)練對(duì)老年人下肢力量作用的研究進(jìn)展
- 培訓(xùn)學(xué)校書法課家長(zhǎng)會(huì)
- 護(hù)士年終總結(jié)及工作計(jì)劃
- 與信仰對(duì)話 課件-2024年入團(tuán)積極分子培訓(xùn)
- 中醫(yī)護(hù)理學(xué)-情志護(hù)理
- 中學(xué)美術(shù)《剪紙藝術(shù)》完整課件
- 諾如病毒教學(xué)課件
- 小學(xué)五年級(jí)體育教案全冊(cè)(人教版)
- 2024年A特種設(shè)備相關(guān)管理考試題庫(kù)及答案
評(píng)論
0/150
提交評(píng)論