數(shù)學建模軟件lingo示例PPT課件_第1頁
數(shù)學建模軟件lingo示例PPT課件_第2頁
數(shù)學建模軟件lingo示例PPT課件_第3頁
數(shù)學建模軟件lingo示例PPT課件_第4頁
數(shù)學建模軟件lingo示例PPT課件_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-1lindo /lingo軟件軟件vlingo: linear interactive general optimizer (v10.0)v求解數(shù)學規(guī)劃問題 min z = f (x) s.t x a ( rn )v需要掌握的幾個重要方面基本語法結(jié)構(gòu)掌握集合(sets)的應用正確閱讀求解報告正確理解求解狀態(tài)窗口學會設置基本的求解選項(options)主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-2一、一、lingo基本語法基本語法1、定義了目標函數(shù)為min=. 2、以一個分號“;”結(jié)尾 除sets

2、, endsets, data , enddata, end之外3、可以放在約束條件的右端,同時數(shù)字也可放在約束條件的左端。4、假定各變量非負。5、注釋:“!”6、為、主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-3建模時需要注意的幾個基本問題建模時需要注意的幾個基本問題 v盡量使用實數(shù)優(yōu)化,減少整數(shù)約束和整數(shù)變量v盡量使用光滑優(yōu)化,減少非光滑約束的個數(shù) v盡量少使用絕對值、符號函數(shù)、多個變量求最大/最小值、四舍五入、取整函數(shù)等v盡量使用線性模型,減少非線性約束和非線性變量的個數(shù)如x/y 5 改為x5yv合理設定變量上下界,盡可能給出變量初始值 v模型中使用的參數(shù)數(shù)量

3、級要適當如小于103主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-4二、二、lingo集合集合v某公司有6個建筑工地,位置坐標為(ai,bi) (單位:公里),水泥日用量di (單位:噸)例1 選址問題v假設:料場和工地之間有直線道路v(1)現(xiàn)有2料場,位于a(5,1),b(2,7),記(xj,yj),j=1,2, 日儲量ej各有20噸。v目標:制定每天的供應計劃,即從a, b兩料場分別向各工地運送多少噸水泥,使總的噸公里數(shù)最小。ia8.750.55.7537.25b0.754.7556.57.75d1.25547611主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模

4、課件module 00-5解:v決策變量:料場j到工地i的運量 cij 12維v線性規(guī)劃模型vlingo表達式?2622 1/2112161min()() .,1,.,6,1,20,1,.,6,1,2ijjijijiijijijjiijcxaybs tcdicejcijlocation目標:噸公里約束:需求 供應主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-6基本使用1、lingo建模語言建模語言構(gòu)成:構(gòu)成:4個段個段v目標與約束段v集合段(sets endsets)v數(shù)據(jù)段(data enddata)v初始段(init endinit)v(計算段 (calc end

5、calc))主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-7目標與約束段目標與約束段model:title location problem;sets: demand/1.6/:a,b,d; supply/1.2/:x,y,e; link(demand,supply):c;endsetsdata:a=1.25,8.75,0.5,5.75,3,7.25; b=1.25,0.75,4.75,5,6.5,7.75; d=3,5,4,7,6,11; e=20,20; x,y=5,1,2,7; enddatainit:endinitm i n = s u m ( l i n k

6、 ( i , j ) : c ( i , j ) * ( ( x ( j ) - a ( i ) ) 2 + ( y ( j ) -b(i)2)(1/2);for(demand(i):sum(supply(j):c(i,j)=d(i);); for(supply(i):sum(demand(j):c(j,i)=e(i););for(supply: free(x); free(y); );end集合段集合段數(shù)據(jù)段數(shù)據(jù)段初始段初始段location供應約束供應約束需求需求需求點的位置需求點的位置供需量供需量供應供應初始點初始點目標目標需求約束需求約束連接連接主講人:孫云龍主講人:孫云龍數(shù)學建模課件

7、數(shù)學建模課件module 00-82、lingo的集合的集合set及其屬性及其屬性attributev例1v建筑工地位置坐標 (ai,bi) 、水泥日用量di :對每個建筑工地(6個)都有一個對應的值都是一個由6個元素組成的數(shù)組是已知的v料場位置坐標 (xj,yj) 、日儲量ej對每個料場(2個)都有一個對應的值都是一個由2個元素組成的數(shù)組目前是已知的v料場到建筑工地的供應計劃 c i j 對每個料場與建筑工地之間(62)都有一個對應的值是一個62 個元素組成的矩陣是未知數(shù)vlindo無數(shù)組,每個變量輸入麻煩lingo的集合set下標集合100個工地?主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)

8、學建模課件module 00-9集合set及其屬性attributev定義數(shù)組下標集合demand/1.6/表示6個建筑工地a,b,d稱為該集合的屬性表示坐標(ai,bi) 、水泥日用量div定義數(shù)組下標集合supply/1.2/表示6個建筑工地該集合的屬性x,y,e表示坐標(xj,yj) 、日儲量ej v定義數(shù)組下標集合link(demand,supply)表示62個料場到建筑工地的連接該集合的屬性c表示每個料場與建筑工地之間供應計劃c i j1到6的整數(shù)主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-10v建立下標集合lingo 建模語言集合段 數(shù)據(jù)段需求點的位置需

9、求點的位置供需量供需量sets: demand/1.6/:a,b,d; supply/1.2/:x,y,e; link(demand,supply):c;endsetsdata:a=1.25,8.75,0.5,5.75,3,7.25; b=1.25,0.75,4.75,5,6.5,7.75; d=3,5,4,7,6,11; e=20,20;x,y=5,1,2,7;enddatav賦值需求需求供應供應連接連接主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-113、定義集合定義集合setv直接把元素列舉出來v定義格式 集合名 元素列表 屬性列表 setname /membe

10、r_list/ : attribute_list; 可選項v元素列表顯式列舉法列出全部元素, 用逗號或空格分開隱式列舉法 1.nv屬性列表缺省集合可在程序中作為一循環(huán)變量使用,構(gòu)造更復雜的派生集合v元素列表缺省必須在數(shù)據(jù)段給出元素列表賦值基本集合基本集合primary set主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-12派生集合派生集合derived setv基于其它集合而派生出來的二維或多維集合v定義格式 集合名 父集合列表 元素列表 屬性列表 setname(parent_set_list) /member_list/ : attribute_list;v元素

11、列表缺省所有組合稠密集合稠密集合、或數(shù)據(jù)段列表賦值v元素列表稀疏集合稀疏集合元素列表法枚舉元素過濾法利用過濾條件setname(parent_set_list) |filtrate_condition :attribute_list;主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-13v建立 下標集合例1需求點的位置需求點的位置供需量供需量sets:demand/1.6/:a,b,d;supply/1.2/:x,y,e;link(demand,supply):c;endsetsdata:a=1.25,8.75,0.5,5.75,3,7.25; b=1.25,0.75,4

12、.75,5,6.5,7.75; d=3,5,4,7,6,11; e=20,20;x,y=5,1,2,7;enddatav賦值需求需求供應供應連接連接基本基本集合集合派生派生集合集合626152514241323122211211212121654321654321654321,cccccccccccceeyyxxddddddbbbbbbaaaaaa主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-14集合的類型 集合集合 派生集合派生集合 基本集合基本集合 稀疏集合稀疏集合 稠密集合稠密集合 元素列表法元素列表法 元素過濾法元素過濾法 直接列舉法直接列舉法 隱式列舉法隱式

13、列舉法setname /member_list/ : attribute_list;setname(parent_set_list) /member_list/ : attribute_list;sets: cities /a1,a2,a3,b1,b2/; roads(cities, cities)/ a1,b1 a1,b2 a2,b1 a3,b2/:d; endsetssets: students /s1.s8/; pairs( students, students) | &2 #gt# &1: benefit, match;endsets主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件

14、module 00-15三、三、lingo運算符和函數(shù)運算符和函數(shù)v過濾條件使用結(jié)果:0 11、運算符及其優(yōu)先級、運算符及其優(yōu)先級邏輯運算符#not#否定#eq#相等#ne#不等#and#并且#or#或者#gt#大于#ge#大于等于#lt#小于#le#小于等于算術(shù)運算符+ - * / 關(guān)系運算符(=)主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-16v運算符的優(yōu)先級最高最低#not#(負號)* /+(減法)#eq# #ne# #gt# #ge# #lt# #le#and# #or#v先左后右v先括號內(nèi),后括號外主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件mod

15、ule 00-17vlingo內(nèi)部函數(shù)”2、lingo基本數(shù)學函數(shù)基本數(shù)學函數(shù)abs( x)sin( x)cos( x)tan( x)log( x)exp( x)smax( list )smin( list )sign(x)floor ( x)主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-183、lingo集合循環(huán)函數(shù)集合循環(huán)函數(shù)v難點!重點!v循環(huán)操作函數(shù)集合上的元素下標:集合函數(shù)名function(setname (set_index_list)|condition:expression_list);集合名集合索引列表過濾條件表達式formaxminsum pro

16、d主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-19v目標:噸公里for(demand(i):sum(supply(j):c(i,j)=d(i);); for(supply(i):sum(demand(j):c(j,i)=e(i););例12622 1/211min()() ijjijijicxaybv約束:需求 供應2161.,1,.,6,1,2ijijijjis tcdicejmin=sum(link(i,j):c(i,j)*(x(j)-a(i)2+(y(j)- b(i)2)(1/2);主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-20v

17、默認:?4、lingo變量定界函數(shù)變量定界函數(shù)bnd(l, x,n)l,ufree( x)自由變量bin( x)0-1變量gin( x)整數(shù)變量例1v約束:非負for(supply: free(x); free(y); );.0,1,.,6,1,2ijs tcij主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-214、lingo條件判斷函數(shù)條件判斷函數(shù)v分段函數(shù)if(logical_condition, true_result, false_result)vokv例1主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-22目標與約束段目標與約束段mo

18、del:title location problem;sets: demand/1.6/:a,b,d; supply/1.2/:x,y,e; link(demand,supply):c;endsetsdata:a=1.25,8.75,0.5,5.75,3,7.25; b=1.25,0.75,4.75,5,6.5,7.75; d=3,5,4,7,6,11; e=20,20;x,y=5,1,2,7; enddatainit:endinitm i n = s u m ( l i n k ( i , j ) : c ( i , j ) * ( ( x ( j ) - a ( i ) ) 2 + ( y

19、 ( j ) -b(i)2)(1/2);for(demand(i):sum(supply(j):c(i,j)=d(i);); for(supply(i):sum(demand(j):c(j,i)=e(i););for(supply: free(x); free(y); );end集合段集合段數(shù)據(jù)段數(shù)據(jù)段初始段初始段location供應約束供應約束需求需求需求點的位置需求點的位置供需量供需量供應供應初始點初始點目標目標需求約束需求約束連接連接主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-23v2)改建兩個新料場,需要確定新料場位置(xj,yj)和運量cij ,在其它條件

20、不變下使總噸公里數(shù)最小。決策變量:決策變量:ci j,(xj,yj)16維維非線性規(guī)劃模型非線性規(guī)劃模型例1 選址問題2622 1/2112161min()() .,1,.,6,1,20,1,.,6,1,2ijjijijiijijijjiijcxaybs tcdicejcij目標:噸公里約束:需求 供應主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-24lingo集合段集合段數(shù)據(jù)段數(shù)據(jù)段初始段初始段目標與目標與約束段約束段 最優(yōu):最優(yōu):89.8835(噸公里噸公里 ) lp:移到數(shù)據(jù)段移到數(shù)據(jù)段location局部局部主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-25邊界邊界主講人:孫云龍主講人:孫云龍數(shù)學建模課件數(shù)學建模課件module 00-26例2 連續(xù)投資問題v設有一筆資金m=10萬,未來5年內(nèi)可以投資4個項目。其中項目1要到第二年末才可回收資金,本利為115%;項目2只能在第三年初投資,到第五年末回收本利125%,但不超過3萬;項目3在第二年初投資,第五年末回收本利140%,但不超過4萬;項目4每年初投資,年末回收本利106%;試確定5年內(nèi)如何安排投資?年一二三四五限額回收時間本利項目1第二年末115%項目23萬第五年末125%項目34萬第五年末140%項目4年末106%主講人:孫云龍主講

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論