




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、LINDO軟件包(學(xué)生版) 使用手冊(cè) 目 錄第一節(jié) 簡(jiǎn)介與安裝第二節(jié) 用LINDO求解線性規(guī)劃 (LP) 問題第三節(jié) 用LINDO求解整數(shù)規(guī)劃(IP) 和二次規(guī)劃(QP) 問題 第一節(jié) 簡(jiǎn)介與安裝1·1簡(jiǎn)介本文主要面向大中專學(xué)生, 研究生, 及掌握一定的高等代數(shù)知識(shí)的讀者,介紹LINDO軟件包(學(xué)生版)的基本使用方法。該軟件包(學(xué)生版)主要功能在于幫助使用者較快地輸入一個(gè)優(yōu)化問題的式子, 求解并分析該優(yōu)化問題, 然后可做些較小的改動(dòng), 并重復(fù)上述的過程. 該軟件包(學(xué)生版)在微機(jī)上DOS環(huán)境下運(yùn)行。其使用界面不是圖形式的,而是字符式的;不是菜單式的, 而是面向具體的命令 (Comma
2、nd). 它有許多的命令, 每一個(gè)命令都可隨時(shí)執(zhí)行, 由系統(tǒng)檢查該命令是否在上下文中起作用. 它采用一種對(duì)用戶友好的交互使用方式, 包括了所有的使用過程指導(dǎo). 基于使用的具體情況, 它會(huì)向使用者詢問下一步將做什么, 或等待使用者輸入下一個(gè)命令.LINDO軟件包(學(xué)生版)包括LINDO,GINO,LINGO和 LINGO NL(LINGO2)等優(yōu)化軟件的學(xué)生版以及相應(yīng)的例子文件。由于LINDO程序執(zhí)行速度很快,易于方便地輸入、求解和分析優(yōu)化問題,LINDO在教學(xué)、科研和工業(yè)界得到廣泛應(yīng)用。這里用LINDO軟件包作為L(zhǎng)INDO,GINO,LINGO和 LINGO NL等的統(tǒng)稱,包含五種組件,下面分
3、別介紹如下:(1)LINDO是Linear INteractive and Discrete Optimizer字首的縮寫形式,是由Linus Schrage 于1986年開發(fā)的優(yōu)化計(jì)算軟件包, 可以用來求解線性規(guī)劃 (LP-Linear Programming), 整數(shù)規(guī)劃 (IP-Integer Programming) 和二次規(guī)劃 (QP-Quadratic Programming) 問題. LINDO易于規(guī)劃問題的輸入、求解和分析,程序執(zhí)行速度很快。LINDO學(xué)生版最多可求解多達(dá)200個(gè)變量和100個(gè)約束的規(guī)劃問題。 (2)GINO可用于求解非線性規(guī)劃 (NLP-Nonlinear L
4、inear Programming) 問題,求解線性和非線性方程組和不等式組,以及代數(shù)方程求根。GINO中包含了有關(guān)財(cái)務(wù)、概率等方面的函數(shù)和三角函數(shù),以及各種一般的數(shù)學(xué)函數(shù),可供使用者建立問題模型時(shí)調(diào)用。GINO 學(xué)生版最多可求解多達(dá)50個(gè)變量和30個(gè)約束的問題。 (3)LINGO 可用于求解線性規(guī)劃和整數(shù)規(guī)劃問題。(4) LINGO NL(LINGO2) 可用于求解線性、非線性和整數(shù)規(guī)劃問題。 與LINDO和GINO不同的是,LINGO和LINGO NL(LINGO2) 包含了內(nèi)置的建模語言,允許以簡(jiǎn)練、直觀的方式描述所需求解的問題,模型中所需的數(shù)據(jù)可以以一定格式保存在列表(List)和表格
5、(Table)中,也可以保存在獨(dú)立的文件中。LINGO和LINGO NL(LINGO2) 學(xué)生版最多可求解多達(dá)200個(gè)變量和100個(gè)約束的問題。(5)例子文件:在軟件包中還含有例子文件,其中有些例子文件與各軟件在一起,但大多數(shù)例子文件一般安裝在例子目錄。例子目錄下的例子文件是以LUTOS 1-2-3的WK1格式存儲(chǔ)的(也可用MS-OFFICE工具的EXCEL軟件讀寫)。1·2安裝過程:LINDO軟件包(學(xué)生版)在微機(jī)上DOS環(huán)境下通過安裝后運(yùn)行。安裝盤為一片三英寸軟盤,安裝盤上有安裝程序 (install.exe) 和簡(jiǎn)要介紹文本 (read.me),還帶有多個(gè)壓縮文件和一個(gè)解壓縮程
6、序 (lha.exe). 安裝時(shí),將安裝盤直接插入軟驅(qū),然后運(yùn)行該軟盤上的安裝程序,即在該軟驅(qū)的提示符 (如A:> 或B:>)下鍵入“install”。 按“回車”(ENTER鍵)后,只需遵照屏幕上的提示即可完成整個(gè)安裝過程:(1)用戶首先必須選擇所需安裝的內(nèi)容:用戶可以任意選擇所需安裝的內(nèi)容(從1·1節(jié)所介紹的五種組件中任意選?。?。如果想安裝五種組件中的某個(gè)組件,就在它前面鍵入“Y”;否則鍵入“N”,然后“回車”。如此反復(fù),完成后屏幕將提示您確認(rèn)您的選擇。(2)用戶必須選擇所需安裝到的目的地(一般是硬盤上的某個(gè)目錄)。屏幕將提示缺省的目錄,您可以任意修改,如此反復(fù),完成
7、后屏幕將提示您確認(rèn)您的選擇。 (3)確認(rèn)您的選擇之后,安裝程序就會(huì)自動(dòng)完成全部后續(xù)安裝過程。安裝過程結(jié)束后,您就可以進(jìn)入安裝好的目錄,運(yùn)行相應(yīng)的優(yōu)化軟件了。第二節(jié) 用LINDO求解線性規(guī)劃(LP)問題2.1初試 LINDO LINDO 的求解機(jī)制:LINDO 的求解過程采用單純形法,一般是首先尋求一個(gè)可行解, 在有可行解情況下再尋求最優(yōu)解. 用LINDO 求解一個(gè)LP問題會(huì)得到如下的幾種結(jié)果: 不可行(No feasible solution) 或 可行(Feasible) 可行時(shí)又可分為: 有最優(yōu)解(Optimal Solution)和解無界(Unbounded Solution)兩種情況.
8、 由于在實(shí)際問題中, 不太可能出現(xiàn)最大利潤(rùn)無上限的情形, 所以使用者應(yīng)檢查是否少了一個(gè)約束或有其它印刷錯(cuò)誤. 在LINDO子目錄下執(zhí)行LINDO.EXE文件即可進(jìn)入LINDO工作環(huán)境,其屏幕顯示如下:LINDO/PC 5.02 (4 MAR 92)STUDENT VERSION. FOR EDUCATIONAL USE ONLY.SINGLE USER LICENSE FOR EDUCATIONAL USE ONLY DISTRIBUTED WITH TEXTBOOKS BY WADSWORTH PUBLISHING : “:”為L(zhǎng)INDO提示符,在其之后, 使用者即可用具體的命令來輸入并求解
9、優(yōu)化問題。讓我們來解如下LP問題: 由于LINDO 中已假設(shè)所有的變量都是非負(fù)的, 所以非負(fù)約束可不必再輸入到計(jì)算機(jī)中;LINDO也不區(qū)分變量中的大小寫字符(實(shí)際上任何小寫字符將被轉(zhuǎn)換為大寫字符);約束條件中的“<=” 及“>=”可用“<” 及“>”代替。上面問題用鍵盤輸入如下: : MAX 2x + 3Y ? ST ? 4X + 3Y < 10 ? 3x + 5Y < 12 ? END :LINDO 中一般稱上面這種問題實(shí)例(INSTANCE)為模型(MODEL)。以后涉及該模型時(shí),目標(biāo)函數(shù)為第一行,兩個(gè)約束條件分別為第二、三行。直接鍵入運(yùn)行(GO)命令就
10、可得到解答, 屏幕顯示如下::GOLP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1) 7.4545450 VARIABLE VALUE REDUCED COST X 1.272727 .000000 Y 1.636364 .000000 ROW SLACK OR SURPLUS DUAL PRICES 2) .000000 .090909 3) .000000 .545455 NO. ITERATIONS= 2 DO RANGE(SENSITIVITY) ANALYSIS? N: 計(jì)算結(jié)果表明: “LP OPTIMUM FOUND AT
11、 STEP2”表示單純形法在兩次迭代(旋轉(zhuǎn))后得到最優(yōu)解。 “OBJECTIVE FUNCTION VALUE 1) 7.4545450 ”表示最優(yōu)目標(biāo)值為7.4545450. “VALUE”給出最優(yōu)解中各變量(VARIABLE)的值: X =1.272727, Y =1.636364. “REDUCED COST” 給出最優(yōu)單純形表中第0行中變量的系數(shù) ( max型問題). 其中基變量的reduced cost值應(yīng)為0,對(duì)于非基變量, 相應(yīng)的 reduced cost值表示當(dāng)該非基變量增加一個(gè)單位時(shí)目標(biāo)函數(shù)減少的量。本例中此值均為0。 “SLACK OR SURPLUS” 給出松馳變量的值:
12、 第2、3行松馳變量均為0, 說明對(duì)于最優(yōu)解來講,兩個(gè)約束(第2、3行)均取等號(hào)。 “DUAL PRICES” 給出對(duì)偶價(jià)格的值: 第2、3行對(duì)偶價(jià)格分別為 .090909,.545455。 “NO. ITERATIONS= 2” 表示用單純形法進(jìn)行了兩次迭代(旋轉(zhuǎn))。一個(gè)問題解答之后, LINDO 會(huì)詢問是否需要做靈敏性分析(DO RANGE (SENSITIVITY) ANALYSIS? ) 如果你不需要,你應(yīng)回答“N”(NO),回到提示符“:”之下. 如果想重新看到剛才的模型,可鍵入 LOOK 命令, LINDO 會(huì)詢問具體的行號(hào). 典型的應(yīng)答可以是 3, 或1-2, 或ALL, 而結(jié)果
13、, 相應(yīng)地會(huì)顯示出第 3行, 第1-2 行, 或所有問題行.: LOOKROW:3 3) 3 X + 5 Y <= 12:或: LOOK all MAX 2x + 3Y SUBJECT TO 2) 4 X + 3 Y <= 10 3) 3 X + 5 Y <= 12 END :如果想修改問題,可鍵入 ALTER 命令, LINDO 會(huì)詢問行號(hào), 變量名, 及新的系數(shù). 例如:如果要將上面問題中約束條件改為,再全部看一下,并求解新問題,那么鍵入ALTER 命令后相應(yīng)的應(yīng)答為 2,X,和6, 以下是演示過程:ALTERROW:2VAR:XNEW COEFFICIENT:6:LOO
14、K ALL MAX 2 X + 3 Y SUBJECT TO 2) 6 X + 3 Y <= 10 3) 3 X + 5 Y <= 12 END:go LP OPTIMUM FOUND AT STEP 0 OBJECTIVE FUNCTION VALUE 1) 7.3333330 VARIABLE VALUE REDUCED COST X .666667 .000000 Y 2.000000 .000000 ROW SLACK OR SURPLUS DUAL PRICES 2) .000000 .047619 3) .000000 .571429 NO. ITERATIONS= 0
15、 DO RANGE(SENSITIVITY) ANALYSIS? N: QUIT最后鍵入退出(QUIT)命令, 即可退出LINDO工作環(huán)境。注:輸入、查看和修改一個(gè)LP模型更方便的方法是采用全屏幕編輯器。在“:”提示符下鍵入編輯(EDIT)命令可以進(jìn)入全屏幕編輯器,可以和其他文本編輯器一樣方便使用。2·2 求解LP問題的一般步驟及例子步驟: 1) 首先是輸入一個(gè)LP問題。為了檢查有無錯(cuò)誤,可用LOOK命令來顯示問題式中的一行,幾行或全部。 例如: LOOK 3 - 屏幕顯示第3行LOOK 1-3 - 顯示第1-3行LOOK ALL - 顯示整個(gè)模型2)修正模型。如果需要對(duì)問題中某變量
16、系數(shù)進(jìn)行修正,可用ALTER命令。此時(shí),在LINDO的提示下需輸入相應(yīng)的變量所在的行號(hào),變量名,及新的系數(shù)值。此外下面兩種情況也可用ALTER命令:改動(dòng)約束條件的右端頂,可以將RHS(即right-hand side)做為變量名。改變約束條件中的不等號(hào)方向(如< 或 >),可以將DIR做為變量名。修改問題還可用EXT命令(增加新的約束行), DEL命令(去掉一行), 和APPC命令(增加一個(gè)新的變量), 也可用EDIT編輯器。3)存儲(chǔ)模型如果輸入的問題模型已經(jīng)不再需要改動(dòng),可用SAVE命令將它存入文件中。(此時(shí)LINDO會(huì)提示你輸入一個(gè)文件名。)日后如需用到該問題可用RETR命令提
17、取。 4)鍵入GO命令可得到LP問題的最優(yōu)解。如果想將計(jì)算結(jié)果直接輸出到某文件中,可在GO命令前先使用DIVERT命令,LINDO會(huì)提示你鍵入該輸出文件的文件名,此后鍵入GO命令,屏幕上只會(huì)顯示最優(yōu)的目標(biāo)函數(shù)值,其它結(jié)果都將存入輸出文件。GO命令執(zhí)行后,LINDO會(huì)問你是否做敏感性分析,可看需要鍵入“Y”(YES)或“N” (NO). 如果沒什么錯(cuò)誤,求解就結(jié)束了??涉I入QUIT退出。 LINDO 中有下面三種命令可幫助使用者對(duì)LINDO的命令有更多的了解: HELP: 若HELP后面跟有具體命令, 則解釋該命令. 若單只一個(gè)HELP, 將會(huì)給出一般性的信息. CATEGORIES (可簡(jiǎn)寫為
18、CAT): 只列出所有命令的類型目錄, 隨后可允許使用者有選擇地列出某個(gè)具體類型中的所有命令. COMMANDS ( 簡(jiǎn)寫為COM) COM: 按類型列出所有有效的命令, 例如輸入(INPUT)型命令, 輸出(OUTPUT)型命令, 等等.下面即是一個(gè)具體應(yīng)用的例子: (可參照上述使用步驟)首先輸入問題: (或用命令RETR讀取LINDO目錄下的例子文件DAKOTA) MAX 60 DESKS + 30 TABLES + 20 CHAIRS SUBJECT TO 2) 8 DESKS + 6 TABLES + CHAIRS <= 48 3) 4 DESKS + 2 TABLES + 1.
19、5 CHAIRS <= 20 4) 2 DESKS + 1.5 TABLES + 0.5 CHAIRS <= 8 5) TABLES <= 5 END 問題求解:GO LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1) 280.00000 VARIABLE VALUE REDUCED COST DESKS 2.000000 .000000 TABLES .000000 5.000000 CHAIRS 8.000000 .000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 24.0000
20、00 .000000 3) .000000 10.000000 4) .000000 10.000000 5) 5.000000 .000000 NO. ITERATIONS= 2DO RANGE(SENSITIVITY) ANALYSIS? 隨后鍵入"Y" 表示同意做敏感性分析: RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE DESKS 60.000000 20.000000
21、 4.000000 TABLES 30.000000 5.000000 INFINITY CHAIRS 20.000000 2.500000 5.000000 RIGHT HAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 48.000000 INFINITY 24.000000 3 20.000000 4.000000 4.000000 4 8.000000 2.000000 1.333333 5 5.000000 INFINITY 5.000000 2·3計(jì)算結(jié)果顯示及敏感性分析 仍以上
22、面的問題DAKOTA為例,下面給出其結(jié)果的一般注釋:“LP OPTIMUM FOUND AT STEP2”表示 LINDO在(用單純形法)兩次迭代或旋轉(zhuǎn)后得到最優(yōu)解。 “OBJECTIVE FUNCTION VALUE 280.000000“表示最優(yōu)目標(biāo)值為280. “VALUE”給出最優(yōu)解中各變量的值。例. Dakota 問題中需造2個(gè)(書桌)desks, 0個(gè)(桌子)tables, 和8個(gè)(椅子) chairs. “SLACK OR SURPLUS”給出松馳變量的值。上例中: s1= 第2行松馳變量 =24 s2= 第3行松馳變量 =0 s3= 第4行松馳變量 =0 s4= 第5行松馳變量
23、 =5 “REDUCED COST” 出最優(yōu)單純形表中第0行中變量的系數(shù) ( max型問題). 其中基變量的reduced cost值應(yīng)為0,對(duì)于非基變量 Xj, 相應(yīng)的 reduced cost值表示當(dāng)Xj 增加一個(gè)單位時(shí)目標(biāo)函數(shù)減少的量。 另外,當(dāng)你執(zhí)行TABLEAU命令后,LINDO會(huì)顯示單純形表。 在下表中我們可看到, 基向量為BV=s1, Chairs, DESKS, s4, 注意,在此例中,SLK5對(duì)應(yīng)的是s4. ART是人工變量(artificial variable)。ART就是相應(yīng)的目標(biāo)值z(mì); 這樣 z+ 5TABLES +10s2+10s3=280。:TABLEAU THE
24、 TABLEAU ROW (BASIS) DESKS TABLES CHAIRS SLK 2 SLK 3 1 ART .000 5.000 .000 .000 10.000 2 SLK 2 .000 -2.000 .000 1.000 2.000 3 CHAIRS .000 -2.000 1.000 .000 2.000 4 DESKS 1.000 1.250 .000 .000 -.500 5 SLK 5 .000 1.000 .000 .000 .000 ROW SLK 4 SLK 5 1 10.000 .000 280.000 2 -8.000 .000 24.000 3 -4.000
25、.000 8.000 4 1.500 .000 2.000 5 .000 1.000 5.000 敏感性分析 使用LINDO時(shí), 結(jié)果輸出中會(huì)提供敏感性分析. 這一信息一般包含于兩個(gè)標(biāo)題之下, 其一是REDUCED COSTS, 另一個(gè)是DUAL PRICES. 它們分別表示了當(dāng)變量或約束條件有微小變動(dòng)時(shí), 目標(biāo)函數(shù)的變化率. 在輸出結(jié)果中對(duì)應(yīng)于每個(gè)變量都有一個(gè)REDUCED COST, 若其數(shù)值為x, 表示對(duì)應(yīng)的變量為零時(shí), 若增加1 個(gè)單位, 目標(biāo)函數(shù)將減少x 個(gè)單位. 輸出結(jié)果中對(duì)應(yīng)于每一個(gè)約束也都有一個(gè)DUAL PRICE. 若其數(shù)值為x, 表示對(duì)應(yīng)約束中不等式右端項(xiàng)若減少1 個(gè)單位,
26、 目標(biāo)函數(shù)將增加x 個(gè)單位. 如果REDUCED COST或DUAL PRICE 的值為0, 表示微小擾動(dòng)不影響目標(biāo)函數(shù). 有時(shí), 通過分析DUAL PRICE, 也可對(duì)產(chǎn)生不可行問題的原因有所了解.2·4 注意事項(xiàng):1). 進(jìn)入LINDO后, ":" 表示LINDO 已準(zhǔn)備接受一個(gè)命令.2) . LINDO 中已假定所有變量非負(fù). 變量名不能超過8個(gè)字符。3) 如要輸入 <= 或 >= 型約束, 相應(yīng)以< 或 >代替即可. 4) . LINDO不允許變量出現(xiàn)在一個(gè)約束條件的右端. 5) 目標(biāo)函數(shù)及各約束條件之間一定要有空格分開. 6) 一
27、般LINDO中不能接受括號(hào)( )和逗號(hào)"," , 例:400(X1+X2)需寫為400X1+400X2; 10,000需寫為10000.7). EDIT 命令調(diào)用一個(gè)全屏幕編輯器,可對(duì)當(dāng)前模型進(jìn)行全屏幕編輯. 編輯完成后用“Esc” 鍵保存當(dāng)前修改,退出全屏幕編輯器;此時(shí)若模型有錯(cuò)誤,則要求改正錯(cuò)誤后再退出。用“Ctrl + Break” 鍵廢棄當(dāng)前修改,退出全屏幕編輯器。8). LINDO 有 DEL, EXT,及 ALTER等其它編輯命令, 雖然全屏幕編輯器EDIT 使這些命令用處減少了, 但 DEL 在大塊地清除一個(gè)模型時(shí)是有用的, 而ALTER可允許做全局性的替換.
28、9). LOOK 命令會(huì)為你在屏幕上顯示你的問題(EDIT 也可如此).10). 如想獲得敏感性分析可用RANGE 命令.11). SAVE 命令用來存儲(chǔ)一個(gè)問題模型到文件中, RETR或TAKE 命令用來讀取一個(gè)以文件存儲(chǔ)的模型. TAKE命令還可用于解讀一個(gè)以文本格式存儲(chǔ)的LINGO 格式的問題模型.12). DIVERT 會(huì)導(dǎo)致大多數(shù)信息被輸送到文件中, 而只有少量信息被傳送到屏幕. RVRT 用于結(jié)束 DIVERET. 如果你divert 到一個(gè)名為 PRN的文件, 結(jié)果將被直接傳到打印機(jī).13)LINDO文件中常有注釋間雜于各命令(COMMANDS)之中, 前面注有!符號(hào). 例如:
29、! This is a comment. 14)LINDO將目標(biāo)函數(shù)所在行作為第一行,從第二行起為約束條件。行號(hào)自動(dòng)產(chǎn)生,也可以人為定義行號(hào)或行名。行名和變量名一樣,不能超過8個(gè)字符。15)數(shù)值均衡化及其它考慮 LINDO 不能將LP 中的矩陣進(jìn)行數(shù)值均衡化. 為了避免數(shù)值問題, 使用者應(yīng)自己對(duì)矩陣的行列進(jìn)行均衡化. 一個(gè)原則是, 系數(shù)矩陣中非零元的絕對(duì)值不能大于100,000 或者小于.0001. 如果LINDO 覺得矩陣元素之間很不均衡, 將會(huì)給出警告.16)量綱分析與一般錯(cuò)誤的避免 當(dāng)你將一個(gè)實(shí)際問題寫成一個(gè)數(shù)學(xué)表達(dá)式時(shí), 有可能式子中會(huì)帶有某些錯(cuò)誤. 這些錯(cuò)誤主要有以下幾類: 1.簡(jiǎn)單
30、的印刷錯(cuò)誤 2.表達(dá)式的原理錯(cuò)誤 3.近似誤差第一類錯(cuò)誤雖只是抄寫一類問題造成的, 但當(dāng)問題規(guī)模較大時(shí), 要搜尋它們也是一個(gè)困難的問題; 第二類錯(cuò)誤也往往是建模不當(dāng)造成的. 如何避免這些錯(cuò)誤? 對(duì)第一類錯(cuò)誤, 主要任務(wù)在于如何找到它們. 在LINDO 中有一些可幫助尋找錯(cuò)誤的功能. 其中之一就是PICTURE 命令, 它的功能是可以將表達(dá)式中的系數(shù)通過列表顯示出來. 例: MIN 5 A0 +6 A1 +2 A2 +4 B0 +3 B1 +7 B2 +2 C0 +9 C1 +8 C2 SUBJECT TO 2) A0 +A1 +A2<=8 3) B0 +B1 +B2<=9 4) A
31、0 +A1 +A2<=6 5) A0 +B0 +CO =6 6) A1 +B1 +C1 =5 7) A2 +B2 +C2 =9 END 用PICTURE可得到 A A A B B B C C C C 0 1 2 0 1 2 0 1 2 O 1: 5 6 2 4 3 7 2 9 8 MIN 2: 1 1 1 <8 3: 1 1 1 <9 4: 1 1 1 <6 5: 1 1 1 =6 6: 1 1 1 =5 7: 1 1 1 =9 從上表可以發(fā)現(xiàn), 最后一列中的 1可能放錯(cuò)位置了. 其實(shí)原因只不過在表達(dá)式5) 行中C0與CO弄混了. 另外, 使用者有時(shí)從不合理的計(jì)算結(jié)果中
32、也可發(fā)現(xiàn)第1 類的錯(cuò)誤.第二類的表達(dá)式錯(cuò)誤有許多類. 這類常由新手造成的問題可通過量綱分析(dimensional analysis)暴露出來. 所謂量綱分析, 就是檢查一下表達(dá)式中各量的單位是否一致.2.5 LINDO命令 LINDO 中有下面三種命令可幫助使用者對(duì)LINDO的命令有更多的了解: HELP CATEGORIES (可簡(jiǎn)寫為CAT) COMMANDS ( 簡(jiǎn)寫為COM) 功能如下: HELP: 若HELP后面跟有具體命令, 則解釋該命令. 若單只一個(gè)HELP, 將會(huì)給出一般性的信息. CAT: 只列出所有命令的類型目錄, 隨后可允許使用者有選擇地列出某個(gè)具體類型中的所有命令.
33、COM: 按類型列出所有有效的命令, 例如輸入(INPUT)型命令, 輸出(OUTPUT)型命令, 等等. 下面按類型列出所有LINDO命令及簡(jiǎn)單的英文注釋如下(本文后附所有命令的詳細(xì)的中文注釋): 1. Information HELP Gives help in various situations COM Lists commands by category LOCAL Give info specific to your local installation CAT Lists categories of commands 2. Input MAX Start natural inpu
34、t MIN Start natural input RETR Retrieve old problem from file RMPS Retrieve an MPS format file TAKE Take terminal input from a file LEAVE Undo the previous TAKE 3. Display LOOK Print (part of )problem in natural format SOLUTION Print standard solution report RANGE Print RANGE analysis report PICTURE
35、 Print logical PICTURE of matrix SHOCOLUMN Display a column of the problem TABLEAU Print current tableau NONZEROES Print nonzero variables solution report BPICTURE Print logical PICTURE of basis 4. File output SAVE Save current problem to file DIVERT Divert output to file RVRT Revert output to termi
36、nal SMPS Save current problem in MPS format 5. Solution GO Go to solve the problem PIVOT Do the next simplex pivot 6. Problem editing ALTER Alter some element of current problem EXT Extend problem by adding constraints DEL Delete a specified constraint SUB Enter a simple upper bound for a var. APPC
37、Append a new column in the formulation 7. Integer programs INT Identify integer variables 8. Conversational Parameters WIDTH Set terminal width TERSE Set conversational style to terse VERBOSE Set conversational style to verbose (default) BATCH Tell LINDO that this is a batch run 9. User supplied sub
38、routines USER Call user written subroutine 10. Miscellaneous INVERT Invert current basis to get more accurate answers STAT Print matrix summary statistics BUG What to do if you find a bug 11. Quit QUIT Quit *LINDO 常用命令注釋表*LINDO 軟件包可以用來求解以自然格式輸入的線性規(guī)劃, 整數(shù)規(guī)劃及二次規(guī)劃問題. 下面即是一個(gè)常見問題的有效輸入格式: MAX 2X + 3Y ST 4X
39、 + 5Y < 9 7X + 6Y < 13 END GO進(jìn)入LINDO后, 屏幕上出現(xiàn) ":", 表示進(jìn)入可接受命令的狀態(tài). 此時(shí)鍵入LINDO的有效命令即可執(zhí)行. 需要時(shí), 可鍵入 "COMMANDS"即可得到LINDO的所有有效命令. 如需得到其中某個(gè)命令的幫助信息, 可鍵入 "HELP name" , 其中 "name"為該命令名. 例如,初學(xué)者通過鍵入 "HELP MAX"可以了解怎樣輸入一個(gè)LP問題的數(shù)學(xué)表達(dá)式, . 如要結(jié)束一個(gè)臨時(shí)的問題輸入, 只需鍵入"EN
40、D"或一個(gè)回車符, 即可回到命令狀態(tài)模式":". 欲知某命令的具體功效,執(zhí)行該命令即可. 可求解的問題規(guī)模: 輸入項(xiàng) 最大規(guī)模-非零元 4000 列 201 行 101 整型變量 200 變量(行)名字符數(shù) 8* LINDO 命令類型目錄. 欲知某個(gè)具體命令的功能, 鍵入 "HELP " + " 命令名". 1)信息類命令 HELP COM LOCAL CAT TIME 2)輸入類命令 MAX MIN RETR RMPS TAKE LEAV RDBC FBR 3)演示類命令 PIC TABL LOOK NONZ SHOC S
41、OLU RANGE BPIC CPRI RPRI 4)文件輸出類命令 SAVE DIVE RVRT SMPS SDBC FBS 5)問題求解類命令 GO PIV 6)編輯類命令 ALT EXT DEL SUB APPC SLB FREE EDIT 7)退出命令 QUIT 8)與整數(shù), 二次型, 及參數(shù)規(guī)劃相關(guān)的命令 INT QCP PARA POSD TITAN BIP GIN IPTOL 9)交互式參數(shù)命令 WIDTH TERS VERB BAT PAGE PAUS 10)使用者應(yīng)用程序 USER 11)其它 INV STAT BUG DEB SET TITL *LINDO命令中文注釋如下(
42、按分類序):1)INFORMATION HELP COM LOCAL CAT TIME HELP 命令: 鍵入"HELP"會(huì)顯示出LINDO的一般信息. 通過鍵入"HELP command", LINDO可幫你了解某個(gè)具體的命令 , 其中 "command"是命令名. COMMAND 命令: 給出 LINDO 命令類型目錄. LOCAL 命令: 給出該程序的版本信息. CATEGORY 命令: 列出LINDO 命令類型,并可按提示有選擇地給出某類型下的所有命令. TIME 命令: 顯示 執(zhí)行LINDO后累計(jì)的 CPU時(shí)間.-2)INP
43、UT MAX MIN RETR RMPS TAKE LEAV RDBC FBR MAX/MIN 命令: 用于輸入一個(gè)包含目標(biāo)函數(shù),約束條件在內(nèi)的 LP 模型. 輸入程序如下: 輸入"MAX" ( 或"MIN" ), 繼之以自然格式的目標(biāo)函數(shù)作為第一行;再 輸入 "SUBJECT TO"(可簡(jiǎn)寫為 "ST"), 后面跟約束條件行. 最后, 輸入"END" 回到命令狀態(tài)模式. 以后只需給出"GO" 命令即可開始優(yōu)化求解過程. 其中, 變量名可以由18個(gè)字母或數(shù)字型的字符構(gòu)成, 且
44、第一個(gè)字符必須是字母. 變量系數(shù)不能是指數(shù)型, 例如: .258E+29形式的系數(shù)是不允許的. 任一系數(shù)位數(shù)為 6.5 DIGITS. 關(guān)鍵詞 ("MAX","ST","END".) 及各行之間必須用一個(gè)或多個(gè)空格分隔開. 空格可以出現(xiàn)在一行之中, 但不能出現(xiàn)在變量名中. 一個(gè)回車符等價(jià)于一個(gè)空格. 下面是同一問題的兩種合法的輸入方式: 1) MIN 2X+3Y SUBJECT TO -5X-2Z<=10 +10X - Y >5 END 2) MIN 2X + 3 Y ST -5X-2Z < 10 10X -Y>+5 END 另外, 任一約束可自由選擇一個(gè)名稱來代替行號(hào), 例如: DEMAND) 10X - Y > 5 RETRIEVE 命令: 執(zhí)行該命令可直接從硬盤上獲得一個(gè)問題模型. LINDO 會(huì)為你提示可供選擇的具體的文件名或 UNIT NUMBER. 能被RETRIEVE的模型文件必須是以前經(jīng) "SAVE" 命令存入的. RMPS 命令: 轉(zhuǎn)化一個(gè)MPS 格式文件, 形成問題輸入. 該MPS格式請(qǐng)見IBM MPSX 手冊(cè) TAKE 命令: 用該命令可執(zhí)行由一系列LINDO命令組成的文件.該文件內(nèi)容只能同終端輸入一致, 例如: 文件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年演出經(jīng)紀(jì)人考試重點(diǎn)試題及答案
- 2024營(yíng)養(yǎng)師考試難點(diǎn)試題及答案
- 演出經(jīng)紀(jì)人資格證備考的針對(duì)性策略與試題及答案
- 演出經(jīng)紀(jì)人資格證考試秘籍與試題
- 掌握演出經(jīng)紀(jì)人資格考試的所有要點(diǎn)與試題與答案
- 必考知識(shí)點(diǎn)營(yíng)養(yǎng)師試題及答案2024
- 2024年?duì)I養(yǎng)師分級(jí)考試試題及答案
- 2024年?duì)I養(yǎng)師重要概念試題及答案
- 希臘神話閱讀考題及答案
- 物理畫圖必考題及答案
- 市政管網(wǎng)工程施工方案
- 電子商務(wù)概論(第四版)課件 張潤(rùn)彤 第1-6章 電子商務(wù)概述、電子商務(wù)帶來的變革及其發(fā)展趨勢(shì)-電子商務(wù)環(huán)境下的物流與供應(yīng)鏈管理
- 浙江省普通高中2025年高三化學(xué)試題第一次統(tǒng)測(cè)試卷含解析
- 國(guó)有企業(yè)關(guān)聯(lián)交易管理辦法及實(shí)施細(xì)則
- 小學(xué)五年級(jí)體育教案全冊(cè)(人教版)
- 醫(yī)院DRG績(jī)效分配方案
- DBJ∕T 13-447-2024 基坑工程智能化監(jiān)測(cè)技術(shù)標(biāo)準(zhǔn)
- 安全員崗位競(jìng)聘課件
- 病態(tài)竇房結(jié)綜合征病例討論
- 護(hù)士職業(yè)暴露后處理
- 2024中智集團(tuán)總部及下屬企業(yè)公開招聘4人高頻考題難、易錯(cuò)點(diǎn)模擬試題(共500題)附帶答案詳解
評(píng)論
0/150
提交評(píng)論