什麼是規劃
在有限的資源狀況下,幹最有意義的事,其實就是規劃。
小例子
例如我要蓋大樓,我有這麼多錢,我要請人設計、買設備、買材料資源,我們應該怎麼平衡錢的花費,使得完成蓋大樓這件事。
數學規劃模型怎麼分類
a. 線性規劃模型
引例(生產規劃問題):某廠利用a、b、c三種原料生產A、B、C三種產品,已知生產每種產品在消耗原料方面的各項技術條件和單位產品的利潤,以及可利用的各種原料的量(具體數據如下表),試製訂適當的生產規劃使得該廠的總的利潤最大。
- 我們要生成多少件A、B、C使得該廠的總利潤最大。
- 首先我們假設x1=1,x2=1就是一個可行點。
- 所有在R中的都爲可行點。
- z所在的先就是$x_1和.
- 頂點一般就是最優值點。
- 可以把所有的頂點都算一遍。
軟件解法
- 直接把下列代碼複製入lingo
model: !程序開始
sets: !變量集合開始
var/1..2/:x; !說明x是二維變量
endsets !集合說明結束
max=4*x(1)+3*x(2); !目標函數求極大
2*x(1)+x(2)<=10; !約束函數
x(1)+x(2)<=8; !約束函數
x(2)<=7; !約束函數
End !程序結束 如果不加以
說明,LINGO認爲所有變量非負
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
輸出結果
Global optimal solution found.
Objective value: 26.00000
Infeasibilities: 0.000000
Total solver iterations: 2
Model Class: LP
Total variables: 2
Nonlinear variables: 0
Integer variables: 0
Total constraints: 4
Nonlinear constraints: 0
Total nonzeros: 7
Nonlinear nonzeros: 0
Variable Value Reduced Cost
X( 1) 2.000000 0.000000
X( 2) 6.000000 0.000000
Row Slack or Surplus Dual Price
1 26.00000 1.000000
2 0.000000 1.000000
3 0.000000 2.000000
4 1.000000 0.000000
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 課下把第一個練習用lingo求解。
例題2(思維難度大,先自己思考)
某車間在未來的五天內所需的某種刀具統計資料如表所示。每把刀具成本0.6元。用過的刀具送機修車間研磨,每把需花費0.2元。刀具每天用過後,如果立即送去磨,兩天後可以磨好送回,供當天的需要。第五天後,刀具全部換新的。假設開始時,該車間沒有任何刀具。問這個車間需要多少刀具才能應付需要,而成本又最低
題解
- 10≤x14+x24≤50 丁小區
輸入lingo
model:
sets:
kar/1..3/;
car/1..4/;
var(kar,car):x;
endsets
min=160*x(1,1)+130*x(1,2)+220*x(1,3)+
170*x(1,4)+140*x(2,1)+130*x(2,2)+190*x(2,3)
+150*x(2,4)+190*x(3,1)+200*x(3,2)+230*x(3,3);
x(1,1)+x(1,2)+x(1,3)+x(1,4)=50;
x(2,1)+x(2,2)+x(2,3)+x(2,4)=60;
x(3,1)+x(3,2)+x(3,3)=50;
x(1,1)+x(2,1)+x(3,1)<=80;
x(1,1)+x(2,1)+x(3,1)>=30;
x(1,2)+x(2,2)+x(3,2)<=140;
x(1,2)+x(2,2)+x(3,2)>=70;
x(1,3)+x(2,3)+x(3,3)<=30;
x(1,3)+x(2,3)+x(3,3)>=10;
x(1,4)+x(2,4)<=50;
x(1,4)+x(2,4)>=10;
End
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
得出結果
Global optimal solution found.
Objective value: 340.0000
Infeasibilities: 0.000000
Total solver iterations: 0
Model Class: LP
Total variables: 5
Nonlinear variables: 0
Integer variables: 0
Total constraints: 6
Nonlinear constraints: 0
Total nonzeros: 14
Nonlinear nonzeros: 0
Variable Value Reduced Cost
X1 120.0000 0.000000
X2 85.00000 0.000000
X3 40.00000 0.000000
X4 60.00000 0.000000
X5 140.0000 0.000000
Row Slack or Surplus Dual Price
1 340.0000 -1.000000
2 0.000000 -0.2000000
3 0.000000 -0.2000000
4 0.000000 -0.2000000
5 0.000000 -0.6000000
6 0.000000 -0.6000000
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
問題討論
- 當每個水庫最大供水量都提高了一倍會發生什麼?
- 這時候不再是供大於求了,這應該怎麼做呢?
</div>
<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-e44c3c0e64.css" rel="stylesheet">
</div>