Lindo使用教程_第1頁
Lindo使用教程_第2頁
Lindo使用教程_第3頁
Lindo使用教程_第4頁
Lindo使用教程_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、LINDO軟件包(學(xué)生版) 使用手冊 目 錄第一節(jié) 簡介與安裝第二節(jié) 用LINDO求解線性規(guī)劃 (LP) 問題第三節(jié) 用LINDO求解整數(shù)規(guī)劃(IP) 和二次規(guī)劃(QP) 問題 第四節(jié) GINO簡介第五節(jié) LINGO簡介1997年8月第一節(jié) 簡介與安裝1·1簡介本文主要面向大中專學(xué)生, 研究生, 及掌握一定的高等代數(shù)知識的讀者,介紹LINDO軟件包(學(xué)生版)的基本使用方法。該軟件包(學(xué)生版)主要功能在于幫助使用者較快地輸入一個優(yōu)化問題的式子, 求解并分析該優(yōu)化問題, 然后可做些較小的改動, 并重復(fù)上述的過程. 該軟件包(學(xué)生版)在微機上DOS環(huán)境下運行。其使用界面不是圖形式的,而是字

2、符式的;不是菜單式的, 而是面向具體的命令 (Command). 它有許多的命令, 每一個命令都可隨時執(zhí)行, 由系統(tǒng)檢查該命令是否在上下文中起作用. 它采用一種對用戶友好的交互使用方式, 包括了所有的使用過程指導(dǎo). 基于使用的具體情況, 它會向使用者詢問下一步將做什么, 或等待使用者輸入下一個命令.LINDO軟件包(學(xué)生版)包括LINDO,GINO,LINGO和 LINGO NL(LINGO2)等優(yōu)化軟件的學(xué)生版以及相應(yīng)的例子文件。由于LINDO程序執(zhí)行速度很快,易于方便地輸入、求解和分析優(yōu)化問題,LINDO在教學(xué)、科研和工業(yè)界得到廣泛應(yīng)用。這里用LINDO軟件包作為LINDO,GINO,LI

3、NGO和 LINGO NL等的統(tǒng)稱,包含五種組件,下面分別介紹如下:(1)LINDO是Linear INteractive and Discrete Optimizer字首的縮寫形式,是由Linus Schrage 于1986年開發(fā)的優(yōu)化計算軟件包, 可以用來求解線性規(guī)劃 (LP-Linear Programming), 整數(shù)規(guī)劃 (IP-Integer Programming) 和二次規(guī)劃 (QP-Quadratic Programming) 問題. LINDO易于規(guī)劃問題的輸入、求解和分析,程序執(zhí)行速度很快。LINDO學(xué)生版最多可求解多達200個變量和100個約束的規(guī)劃問題。 (2)GIN

4、O可用于求解非線性規(guī)劃 (NLP-Nonlinear Linear Programming) 問題,求解線性和非線性方程組和不等式組,以及代數(shù)方程求根。GINO中包含了有關(guān)財務(wù)、概率等方面的函數(shù)和三角函數(shù),以及各種一般的數(shù)學(xué)函數(shù),可供使用者建立問題模型時調(diào)用。GINO 學(xué)生版最多可求解多達50個變量和30個約束的問題。 (3)LINGO 可用于求解線性規(guī)劃和整數(shù)規(guī)劃問題。(4) LINGO NL(LINGO2) 可用于求解線性、非線性和整數(shù)規(guī)劃問題。 與LINDO和GINO不同的是,LINGO和LINGO NL(LINGO2) 包含了內(nèi)置的建模語言,允許以簡練、直觀的方式描述所需求解的問題,模

5、型中所需的數(shù)據(jù)可以以一定格式保存在列表(List)和表格(Table)中,也可以保存在獨立的文件中。LINGO和LINGO NL(LINGO2) 學(xué)生版最多可求解多達200個變量和100個約束的問題。(5)例子文件:在軟件包中還含有例子文件,其中有些例子文件與各軟件在一起,但大多數(shù)例子文件一般安裝在例子目錄。例子目錄下的例子文件是以LUTOS 1-2-3的WK1格式存儲的(也可用MS-OFFICE工具的EXCEL軟件讀寫)。1·2安裝過程:LINDO軟件包(學(xué)生版)在微機上DOS環(huán)境下通過安裝后運行。安裝盤為一片三英寸軟盤,安裝盤上有安裝程序 (install.exe) 和簡要介紹文

6、本 (read.me),還帶有多個壓縮文件和一個解壓縮程序 (lha.exe). 安裝時,將安裝盤直接插入軟驅(qū),然后運行該軟盤上的安裝程序,即在該軟驅(qū)的提示符 (如A:> 或B:>)下鍵入“install”。 按“回車”(ENTER鍵)后,只需遵照屏幕上的提示即可完成整個安裝過程:(1)用戶首先必須選擇所需安裝的內(nèi)容:用戶可以任意選擇所需安裝的內(nèi)容(從1·1節(jié)所介紹的五種組件中任意選?。H绻氚惭b五種組件中的某個組件,就在它前面鍵入“Y”;否則鍵入“N”,然后“回車”。如此反復(fù),完成后屏幕將提示您確認您的選擇。(2)用戶必須選擇所需安裝到的目的地(一般是硬盤上的某個目錄

7、)。屏幕將提示缺省的目錄,您可以任意修改,如此反復(fù),完成后屏幕將提示您確認您的選擇。 (3)確認您的選擇之后,安裝程序就會自動完成全部后續(xù)安裝過程。安裝過程結(jié)束后,您就可以進入安裝好的目錄,運行相應(yīng)的優(yōu)化軟件了。第二節(jié) 用LINDO求解線性規(guī)劃(LP)問題2.1初試 LINDO LINDO 的求解機制:LINDO 的求解過程采用單純形法,一般是首先尋求一個可行解, 在有可行解情況下再尋求最優(yōu)解. 用LINDO 求解一個LP問題會得到如下的幾種結(jié)果: 不可行(No feasible solution) 或 可行(Feasible) 可行時又可分為: 有最優(yōu)解(Optimal Solution)和

8、解無界(Unbounded Solution)兩種情況. 由于在實際問題中, 不太可能出現(xiàn)最大利潤無上限的情形, 所以使用者應(yīng)檢查是否少了一個約束或有其它印刷錯誤. 在LINDO子目錄下執(zhí)行LINDO.EXE文件即可進入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 : “:”為LIND

9、O提示符,在其之后, 使用者即可用具體的命令來輸入并求解優(yōu)化問題。讓我們來解如下LP問題: 由于LINDO 中已假設(shè)所有的變量都是非負的, 所以非負約束可不必再輸入到計算機中;LINDO也不區(qū)分變量中的大小寫字符(實際上任何小寫字符將被轉(zhuǎn)換為大寫字符);約束條件中的“<=” 及“>=”可用“<” 及“>”代替。上面問題用鍵盤輸入如下: : MAX 2x + 3Y ? ST ? 4X + 3Y < 10 ? 3x + 5Y < 12 ? END :LINDO 中一般稱上面這種問題實例(INSTANCE)為模型(MODEL)。以后涉及該模型時,目標(biāo)函數(shù)為第一行,

10、兩個約束條件分別為第二、三行。直接鍵入運行(GO)命令就可得到解答, 屏幕顯示如下::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:

11、計算結(jié)果表明: “LP OPTIMUM FOUND AT 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,對于非基變量, 相應(yīng)的 reduced cost值表示當(dāng)該非基變量增加一個單位時目標(biāo)函數(shù)減少的量。本例中此值均為0。

12、“SLACK OR SURPLUS” 給出松馳變量的值: 第2、3行松馳變量均為0, 說明對于最優(yōu)解來講,兩個約束(第2、3行)均取等號。 “DUAL PRICES” 給出對偶價格的值: 第2、3行對偶價格分別為 .090909,.545455。 “NO. ITERATIONS= 2” 表示用單純形法進行了兩次迭代(旋轉(zhuǎn))。一個問題解答之后, LINDO 會詢問是否需要做靈敏性分析(DO RANGE (SENSITIVITY) ANALYSIS? ) 如果你不需要,你應(yīng)回答“N”(NO),回到提示符“:”之下. 如果想重新看到剛才的模型,可鍵入 LOOK 命令, LINDO 會詢問具體的行號.

13、 典型的應(yīng)答可以是 3, 或1-2, 或ALL, 而結(jié)果, 相應(yīng)地會顯示出第 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 會詢問行號, 變量名, 及新的系數(shù). 例如:如果要將上面問題中約束條件改為,再全部看一下,并求解新問題,那么鍵入ALTER 命令后相應(yīng)的應(yīng)答為 2,X,和6, 以下是演示過程:ALTERROW

14、:2VAR:XNEW COEFFICIENT:6:LOOK 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) .0000

15、00 .571429 NO. ITERATIONS= 0 DO RANGE(SENSITIVITY) ANALYSIS? N: QUIT最后鍵入退出(QUIT)命令, 即可退出LINDO工作環(huán)境。注:輸入、查看和修改一個LP模型更方便的方法是采用全屏幕編輯器。在“:”提示符下鍵入編輯(EDIT)命令可以進入全屏幕編輯器,可以和其他文本編輯器一樣方便使用。2·2 求解LP問題的一般步驟及例子步驟: 1) 首先是輸入一個LP問題。為了檢查有無錯誤,可用LOOK命令來顯示問題式中的一行,幾行或全部。 例如: LOOK 3 - 屏幕顯示第3行LOOK 1-3 - 顯示第1-3行LOOK AL

16、L - 顯示整個模型2)修正模型。如果需要對問題中某變量系數(shù)進行修正,可用ALTER命令。此時,在LINDO的提示下需輸入相應(yīng)的變量所在的行號,變量名,及新的系數(shù)值。此外下面兩種情況也可用ALTER命令:改動約束條件的右端頂,可以將RHS(即right-hand side)做為變量名。改變約束條件中的不等號方向(如< 或 >),可以將DIR做為變量名。修改問題還可用EXT命令(增加新的約束行), DEL命令(去掉一行), 和APPC命令(增加一個新的變量), 也可用EDIT編輯器。3)存儲模型如果輸入的問題模型已經(jīng)不再需要改動,可用SAVE命令將它存入文件中。(此時LINDO會提示

17、你輸入一個文件名。)日后如需用到該問題可用RETR命令提取。 4)鍵入GO命令可得到LP問題的最優(yōu)解。如果想將計算結(jié)果直接輸出到某文件中,可在GO命令前先使用DIVERT命令,LINDO會提示你鍵入該輸出文件的文件名,此后鍵入GO命令,屏幕上只會顯示最優(yōu)的目標(biāo)函數(shù)值,其它結(jié)果都將存入輸出文件。GO命令執(zhí)行后,LINDO會問你是否做敏感性分析,可看需要鍵入“Y”(YES)或“N” (NO). 如果沒什么錯誤,求解就結(jié)束了。可鍵入QUIT退出。 LINDO 中有下面三種命令可幫助使用者對LINDO的命令有更多的了解: HELP: 若HELP后面跟有具體命令, 則解釋該命令. 若單只一個HELP,

18、將會給出一般性的信息. CATEGORIES (可簡寫為CAT): 只列出所有命令的類型目錄, 隨后可允許使用者有選擇地列出某個具體類型中的所有命令. COMMANDS ( 簡寫為COM) COM: 按類型列出所有有效的命令, 例如輸入(INPUT)型命令, 輸出(OUTPUT)型命令, 等等.下面即是一個具體應(yīng)用的例子: (可參照上述使用步驟)首先輸入問題: (或用命令RETR讀取LINDO目錄下的例子文件DAKOTA) MAX 60 DESKS + 30 TABLES + 20 CHAIRS SUBJECT TO 2) 8 DESKS + 6 TABLES + CHAIRS <= 4

19、8 3) 4 DESKS + 2 TABLES + 1.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 SU

20、RPLUS DUAL PRICES 2) 24.000000 .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 DECREA

21、SE DESKS 60.000000 20.000000 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.000

22、000 2·3計算結(jié)果顯示及敏感性分析 仍以上面的問題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個(書桌)desks, 0個(桌子)tables, 和8個(椅子) chairs. “SLACK OR SURPLUS”給出松馳變量的值。上例中: s1= 第2行松馳變量 =24 s2= 第3行松馳變量 =

23、0 s3= 第4行松馳變量 =0 s4= 第5行松馳變量 =5 “REDUCED COST” 出最優(yōu)單純形表中第0行中變量的系數(shù) ( max型問題). 其中基變量的reduced cost值應(yīng)為0,對于非基變量 Xj, 相應(yīng)的 reduced cost值表示當(dāng)Xj 增加一個單位時目標(biāo)函數(shù)減少的量。 另外,當(dāng)你執(zhí)行TABLEAU命令后,LINDO會顯示單純形表。 在下表中我們可看到, 基向量為BV=s1, Chairs, DESKS, s4, 注意,在此例中,SLK5對應(yīng)的是s4. ART是人工變量(artificial variable)。ART就是相應(yīng)的目標(biāo)值z; 這樣 z+ 5TABLES

24、 +10s2+10s3=280。:TABLEAU THE 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

25、-8.000 .000 24.000 3 -4.000 .000 8.000 4 1.500 .000 2.000 5 .000 1.000 5.000 敏感性分析 使用LINDO時, 結(jié)果輸出中會提供敏感性分析. 這一信息一般包含于兩個標(biāo)題之下, 其一是REDUCED COSTS, 另一個是DUAL PRICES. 它們分別表示了當(dāng)變量或約束條件有微小變動時, 目標(biāo)函數(shù)的變化率. 在輸出結(jié)果中對應(yīng)于每個變量都有一個REDUCED COST, 若其數(shù)值為x, 表示對應(yīng)的變量為零時, 若增加1 個單位, 目標(biāo)函數(shù)將減少x 個單位. 輸出結(jié)果中對應(yīng)于每一個約束也都有一個DUAL PRICE. 若其

26、數(shù)值為x, 表示對應(yīng)約束中不等式右端項若減少1 個單位, 目標(biāo)函數(shù)將增加x 個單位. 如果REDUCED COST或DUAL PRICE 的值為0, 表示微小擾動不影響目標(biāo)函數(shù). 有時, 通過分析DUAL PRICE, 也可對產(chǎn)生不可行問題的原因有所了解.2·4 注意事項:1). 進入LINDO后, ":" 表示LINDO 已準(zhǔn)備接受一個命令.2) . LINDO 中已假定所有變量非負. 變量名不能超過8個字符。3) 如要輸入 <= 或 >= 型約束, 相應(yīng)以< 或 >代替即可. 4) . LINDO不允許變量出現(xiàn)在一個約束條件的右端. 5

27、) 目標(biāo)函數(shù)及各約束條件之間一定要有空格分開. 6) 一般LINDO中不能接受括號( )和逗號"," , 例:400(X1+X2)需寫為400X1+400X2; 10,000需寫為10000.7). EDIT 命令調(diào)用一個全屏幕編輯器,可對當(dāng)前模型進行全屏幕編輯. 編輯完成后用“Esc” 鍵保存當(dāng)前修改,退出全屏幕編輯器;此時若模型有錯誤,則要求改正錯誤后再退出。用“Ctrl + Break” 鍵廢棄當(dāng)前修改,退出全屏幕編輯器。8). LINDO 有 DEL, EXT,及 ALTER等其它編輯命令, 雖然全屏幕編輯器EDIT 使這些命令用處減少了, 但 DEL 在大塊地清除

28、一個模型時是有用的, 而ALTER可允許做全局性的替換.9). LOOK 命令會為你在屏幕上顯示你的問題(EDIT 也可如此).10). 如想獲得敏感性分析可用RANGE 命令.11). SAVE 命令用來存儲一個問題模型到文件中, RETR或TAKE 命令用來讀取一個以文件存儲的模型. TAKE命令還可用于解讀一個以文本格式存儲的LINGO 格式的問題模型.12). DIVERT 會導(dǎo)致大多數(shù)信息被輸送到文件中, 而只有少量信息被傳送到屏幕. RVRT 用于結(jié)束 DIVERET. 如果你divert 到一個名為 PRN的文件, 結(jié)果將被直接傳到打印機.13)LINDO文件中常有注釋間雜于各命

29、令(COMMANDS)之中, 前面注有!符號. 例如: ! This is a comment. 14)LINDO將目標(biāo)函數(shù)所在行作為第一行,從第二行起為約束條件。行號自動產(chǎn)生,也可以人為定義行號或行名。行名和變量名一樣,不能超過8個字符。15)數(shù)值均衡化及其它考慮 LINDO 不能將LP 中的矩陣進行數(shù)值均衡化. 為了避免數(shù)值問題, 使用者應(yīng)自己對矩陣的行列進行均衡化. 一個原則是, 系數(shù)矩陣中非零元的絕對值不能大于100,000 或者小于.0001. 如果LINDO 覺得矩陣元素之間很不均衡, 將會給出警告.16)量綱分析與一般錯誤的避免 當(dāng)你將一個實際問題寫成一個數(shù)學(xué)表達式時, 有可能式

30、子中會帶有某些錯誤. 這些錯誤主要有以下幾類: 1.簡單的印刷錯誤 2.表達式的原理錯誤 3.近似誤差第一類錯誤雖只是抄寫一類問題造成的, 但當(dāng)問題規(guī)模較大時, 要搜尋它們也是一個困難的問題; 第二類錯誤也往往是建模不當(dāng)造成的. 如何避免這些錯誤? 對第一類錯誤, 主要任務(wù)在于如何找到它們. 在LINDO 中有一些可幫助尋找錯誤的功能. 其中之一就是PICTURE 命令, 它的功能是可以將表達式中的系數(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<

31、;=8 3) B0 +B1 +B2<=9 4) A0 +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可能放錯位置了. 其實原因只不過在表達式5) 行中C

32、0與CO弄混了. 另外, 使用者有時從不合理的計算結(jié)果中也可發(fā)現(xiàn)第1 類的錯誤.第二類的表達式錯誤有許多類. 這類常由新手造成的問題可通過量綱分析(dimensional analysis)暴露出來. 所謂量綱分析, 就是檢查一下表達式中各量的單位是否一致.2.5 LINDO命令 LINDO 中有下面三種命令可幫助使用者對LINDO的命令有更多的了解: HELP CATEGORIES (可簡寫為CAT) COMMANDS ( 簡寫為COM) 功能如下: HELP: 若HELP后面跟有具體命令, 則解釋該命令. 若單只一個HELP, 將會給出一般性的信息. CAT: 只列出所有命令的類型目錄,

33、隨后可允許使用者有選擇地列出某個具體類型中的所有命令. COM: 按類型列出所有有效的命令, 例如輸入(INPUT)型命令, 輸出(OUTPUT)型命令, 等等. 下面按類型列出所有LINDO命令及簡單的英文注釋如下(本文后附所有命令的詳細的中文注釋): 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.

34、Input MAX Start natural input 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 R

35、ANGE analysis report PICTURE 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

36、 RVRT Revert output to terminal 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

37、upper bound for a var. APPC 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 ba

38、tch run 9. User supplied subroutines 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ī)劃問題. 下面即是一個常見

39、問題的有效輸入格式: MAX 2X + 3Y ST 4X + 5Y < 9 7X + 6Y < 13 END GO進入LINDO后, 屏幕上出現(xiàn) ":", 表示進入可接受命令的狀態(tài). 此時鍵入LINDO的有效命令即可執(zhí)行. 需要時, 可鍵入 "COMMANDS"即可得到LINDO的所有有效命令. 如需得到其中某個命令的幫助信息, 可鍵入 "HELP name" , 其中 "name"為該命令名. 例如,初學(xué)者通過鍵入 "HELP MAX"可以了解怎樣輸入一個LP問題的數(shù)學(xué)表達式, .

40、 如要結(jié)束一個臨時的問題輸入, 只需鍵入"END"或一個回車符, 即可回到命令狀態(tài)模式":". 欲知某命令的具體功效,執(zhí)行該命令即可. 可求解的問題規(guī)模: 輸入項 最大規(guī)模-非零元 4000 列 201 行 101 整型變量 200 變量(行)名字符數(shù) 8* LINDO 命令類型目錄. 欲知某個具體命令的功能, 鍵入 "HELP " + " 命令名". 1)信息類命令 HELP COM LOCAL CAT TIME 2)輸入類命令 MAX MIN RETR RMPS TAKE LEAV RDBC FBR 3)演示類

41、命令 PIC TABL LOOK NONZ SHOC SOLU 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

42、DEB SET TITL *LINDO命令中文注釋如下(按分類序):1)INFORMATION HELP COM LOCAL CAT TIME HELP 命令: 鍵入"HELP"會顯示出LINDO的一般信息. 通過鍵入"HELP command", LINDO可幫你了解某個具體的命令 , 其中 "command"是命令名. COMMAND 命令: 給出 LINDO 命令類型目錄. LOCAL 命令: 給出該程序的版本信息. CATEGORY 命令: 列出LINDO 命令類型,并可按提示有選擇地給出某類型下的所有命令. TIME 命令:

43、 顯示 執(zhí)行LINDO后累計的 CPU時間.-2)INPUT MAX MIN RETR RMPS TAKE LEAV RDBC FBR MAX/MIN 命令: 用于輸入一個包含目標(biāo)函數(shù),約束條件在內(nèi)的 LP 模型. 輸入程序如下: 輸入"MAX" ( 或"MIN" ), 繼之以自然格式的目標(biāo)函數(shù)作為第一行;再 輸入 "SUBJECT TO"(可簡寫為 "ST"), 后面跟約束條件行. 最后, 輸入"END" 回到命令狀態(tài)模式. 以后只需給出"GO" 命令即可開始優(yōu)化求解過程.

44、 其中, 變量名可以由18個字母或數(shù)字型的字符構(gòu)成, 且第一個字符必須是字母. 變量系數(shù)不能是指數(shù)型, 例如: .258E+29形式的系數(shù)是不允許的. 任一系數(shù)位數(shù)為 6.5 DIGITS. 關(guān)鍵詞 ("MAX","ST","END".) 及各行之間必須用一個或多個空格分隔開. 空格可以出現(xiàn)在一行之中, 但不能出現(xiàn)在變量名中. 一個回車符等價于一個空格. 下面是同一問題的兩種合法的輸入方式: 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 另外, 任一約束可自由選擇一個名稱來代替行號, 例如: DEMAND) 10X - Y > 5 RETRIEVE 命令: 執(zhí)行該命令可直接從硬盤上獲得一個問題模型. LINDO 會為你提示可供選擇的具體的文件名或 UNIT NUMBER. 能被RETRIEVE的模型文件必須是以前經(jīng) "SAVE" 命令存入的. RMPS 命令: 轉(zhuǎn)化一個MPS 格式文件, 形成問題輸入. 該MPS格式請見IBM MPSX 手冊 TAKE 命令: 用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論