如何在lingo中使用集合1_第1頁
如何在lingo中使用集合1_第2頁
如何在lingo中使用集合1_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、-. z.例題1. 在lingo中輸入以下線性規(guī)劃模型,并求解s.t. ,d=0 8 5 9 12 14 12 16 17 22 8 0 9 15 16 8 11 18 14 22 5 9 0 7 9 11 7 12 12 17 9 15 7 0 3 17 10 7 15 15 12 16 9 3 0 8 10 6 15 15 14 8 11 17 8 0 9 14 8 16 12 11 7 10 10 9 0 8 6 11 16 18 12 7 6 14 8 0 11 11 17 14 12 15 15 8 6 11 0 10 22 22 17 15 15 16 11 11 10 0;分析:

2、這個模型輸入的難點,在于變量的數(shù)量太多,足足有100個。約束條件也比擬多,有沒有什么方便的輸入方法?下面介紹lingo中集合的建立新建lingo文件輸入下面容model:sets:V/1.10/;!創(chuàng)立集合V;A(V,V):d,*;!創(chuàng)立集合A是V乘V.而d,*是與A同構(gòu)造的,即d,*分別是10*10矩陣;endsetsmin=sum(A(i,j):d(i,j)*(i,j);!創(chuàng)立目標函數(shù);sum(V(j):*(1,j)=1; !第一個約束條件;for(V(j)|j#gt#1:!i#gt#1為邏輯判斷語句表示i1是返回真值,但這里不能直接寫i1,因為是關(guān)系運算符不是邏輯運算符;sum(V(i)

3、:*(i,j)=1;); !利用循環(huán)函數(shù)表達:當i1即i從2到10時,*(i,j):j=1.10的和等于1;for(V(i):*(i,i)=0;);data:d=0 8 5 9 12 14 12 16 17 22 8 0 9 15 16 8 11 18 14 22 5 9 0 7 9 11 7 12 12 17 9 15 7 0 3 17 10 7 15 15 12 16 9 3 0 8 10 6 15 15 14 8 11 17 8 0 9 14 8 16 12 11 7 10 10 9 0 8 6 11 16 18 12 7 6 14 8 0 11 11 17 14 12 15 15 8

4、6 11 0 10 22 22 17 15 15 16 11 11 10 0; !輸入d的數(shù)值;enddataend這個模型如果按照常規(guī)輸入是什么樣子呢?Lingo也提供這樣的功能點lingo菜單選generate點display model得到下面的界面局部截圖可見,這個規(guī)劃如果普通輸入的話,工作量是很大的,而且容易出錯。運行結(jié)果(局部截圖)這個報告很不簡潔,因為我們只需要顯示*中非零局部,其他信息都不是我們關(guān)心的。有什么方法可以使得報告更簡潔?點lingo菜單,選solution,做如下設(shè)置,可以使得報告更加簡潔設(shè)置完后結(jié)果是練習1. 求以下線性規(guī)劃模型s.t. 為非負實數(shù),(i,j)A這

5、里V=1,2,3,7,.b=49 38 49 44 58 50 47;d=1 2 3 1 2 1 2 2 3 4 1 2 2 3 4 1 1 2 1 5 1 1 2 2 2 3 1 1 2 1 2 3 5 3 1 2 2 2 1 3 2 4 1 1 1 1 2 1 1;參考答案例題2.一家公司需要決定四個季度的帆船生產(chǎn)量,下四個季度的需求分別為40,60,75,25條,需要按時滿足,每個季度生產(chǎn)能力是40條,每條生產(chǎn)費用400美元。如果加班,每條船的生產(chǎn)費為450美元。每個季度末,每條船的庫存費用為20美元。假定生產(chǎn)提前期為0,庫存為10條,如何安排生產(chǎn)使得總費用最小?創(chuàng)立lingo文件,輸入

6、運行結(jié)果注1:如果創(chuàng)立一個集合包含的元素較多,例如月份,只需Sets:Month/1.12/endsets而不需要把1到12都羅列出來.注2:上面的程序由三局部組成集合段,目標和約束段,數(shù)據(jù)段,但一般lingo程序可以由五局部組成新增初值設(shè)定和計算兩局部集合段 sets開場,endsets完畢目標函數(shù)min=或ma*=和約束段一些等式或不等式,或邏輯判斷語句數(shù)據(jù)段data開場,enddata完畢初始段,用于初值設(shè)定,init開場,endinit完畢,對集合對屬性數(shù)組定義初值因為求解算法一般是迭代算法,用戶如果能給出一個比擬好的迭代初值,對提高算法的效果是有益處的計算段,以calc開場,endcalc完畢,作用在于對一些原始數(shù)據(jù)進展計算處理。為什么要設(shè)計這個段呢?

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論