實驗三 求解線性規劃和整數規劃模型

2022-03-09 18:14:20 字數 4329 閱讀 8488

《數學建模》

實驗指導

姓名:吳家猛

班號:ap08055

學號:ap0805530

五邑大學資訊工程學院

二○一o年十一月

實驗3 指導書

實驗專案名稱:求解線性規劃和整數規劃模型

所屬課程名稱:數學建模

實驗計畫學時:2學時

一、 實驗目的

掌握使用數學軟體lingo或matlab等軟體求解線性規劃和整數規劃模型。

二、 實驗內容和要求

(一) 實驗內容

1.已知某工廠計畫生產ⅰ、ⅱ、ⅲ三種產品,各產品需要在a、b、c裝置上加工,每種產品需要各裝置的臺時數及有關資料如下:

試回答:

(1) 如何發揮生產能力,使生產盈利最大?

(2) 若為了增加產量,可租用別的工廠裝置b,可租用別的工廠裝置b,每月最多可租用多少台時?

(3) 對產品工藝重新進行設計,改進結構。改進後生產每件產品ⅰ需要裝置a為9台時、裝置b為12台時、裝置c為4台時,單位產品盈利4.5千元,這時對原計畫有何影響?

2.求解課本(姜啟源等編高教出版社出版的第三版《數學模型》)130頁的習題3。

(二) 要求

有問題分析、數學模型、lingo或matlab等的求解程式、程式的執行結果和所有問題的回答。

三、 實驗主要儀器裝置和材料

每人一台計算機,要求已安裝lingo或matlab。

四、 實驗方法、步驟及結果測試

(一) 實驗方法

1. 用matlab優化工具箱解線性規劃。

2. 參考課本121頁例題1。

(二) 步驟

模型建立與求解:

(1)由題意得,設生產產品為,生產為, 生產產品為,則有:

目標函式:

約束條件:

在lindo輸入以下程式:

max 3x1+2x2+2.9x3

st8x1+2x2+10x3<300

10x1+5x2+8x3<400

2x1+13x2+10x3<420

endgin 3

輸出結果為:

objective function value

1) 134.5000

variable valuereduced cost

x1 24.0000003.000000

x2 24.0000002.000000

x3 5.0000002.900000

row slack or surplus dual prices

2) 10.0000000.000000

30.0000000.000000

4) 10.0000000.000000

no. iterations= 26

可知,生產產品分別為24,24,5獲得最大收益為134.5(千元)剩餘a裝置為10台時,b裝置無剩餘,c裝置剩餘為10台時

(2)由(1)和題意可知,增加一單位產品就可增加3千元利潤,故需要最多增加10台時b裝置,則收益為137.5(千元)

目標函式:

約束條件:

在lindo中輸入以下程式:

max 3x1+2x2+2.9x3

st8x1+2x2+10x3<300

10x1+5x2+8x3<410

2x1+13x2+10x3<420

endgin 3

輸出結果為:

objective function value

1) 137.5000

variable valuereduced cost

x1 25.0000003.000000

x2 24.0000002.000000

x3 5.0000002.900000

row slack or surplus dual prices

22.0000000.000000

30.0000000.000000

48.0000000.000000

no. iterations= 13

可知,生產產品分別為25,24,5獲得最大收益為137.5(千元)剩餘a裝置剩餘2台時,b裝置無剩餘,c裝置剩餘為8台時

(3)工藝改進後:可列線性規劃模型:

目標函式:

約束條件:

則在lindo中輸入以下程式:

max 4.5x1+2x2+2.9x3

st9x1+2x2+10x3<300

12x1+5x2+8x3<400

4x1+13x2+10x3<420

endgin 3

輸出結果為:

objective function value

1) 152.8000

variable valuereduced cost

x1 22.0000004.500000

x2 24.0000002.000000

x3 2.0000002.900000

row slack or surplus dual prices

2) 34.0000000.000000

30.0000000.000000

40.0000000.000000

no. iterations= 34

由資料分析可知道:計畫調整為生產產品分別為22,24,2獲得最大收益為152.8

課本習題3:

模型建立與求解:

(1)不能僱傭超過3名半時服務員時:

設在12~1點吃飯的全時服務員為,在1~2點吃飯的全時服務員為,分別從9點,10點,11點,12點,1點開始服務的半時服務員為故有

化簡得:

目標函式為:

約束條件:

在lindo中輸入以下程式:

min 100x1+100x2+40x3+40x4+40x5+40x6+40x7

stx1+x2+x3>4

x2+x3+x4+x5+x6>6

x1 +x4+x5+x6+x7>5

x1+x2x7>8

x3+x4+x5+x6+x7<3

endgin 7

輸出結果為:

objective function value

1) 820.0000

variable valuereduced cost

x1 2.000000 100.000000

x2 5.000000 100.000000

x3 0.000000 40.000000

x4 0.000000 40.000000

x5 0.000000 40.000000

x6 1.000000 40.000000

x7 2.000000 40.000000

row slack or surplus dual prices

23.0000000.000000

30.0000000.000000

40.0000000.000000

51.0000000.000000

60.0000000.000000

no. iterations= 60

則全時服務員為+=7人半時服務員+=3人總最少費用為100*7+40*3=820

(2)不能僱傭半時服務員時:

設在12~1點吃飯的全時服務員為,在1~2點吃飯的全時服務員為故有:

目標函式:

約束條件:

在lindo中輸入以下程式:

min 100x1+100x2

stx1+x2>8

x1>5

x2>6

endgin 2

輸出結果為:

objective function value

1) 1100.000

variable valuereduced cost

x1 5.000000 100.000000

x2 6.000000 100.000000

row slack or surplus dual prices

23.0000000.000000

30.0000000.000000

40.0000000.000000

求解非線性規劃

非線性規劃的例項與定義 如果目標函式或約束條件中包含非線性函式,就稱這種規劃問題為非線性規劃問題。一般說來,解非線性規劃要比解線性規劃問題困難得多。而且,也不象線性規劃有單純形法這一通用方法,非線性規劃目前還沒有適於各種問題的一般演算法,各個方法都有自己特定的適用範圍。1.2 線性規劃與非線性規劃的...

用matlab求解線性規劃問題

實驗四用matlab求解線性規劃問題 一 實驗目的 了解matlab的優化工具箱,能利用matlab求解線性規劃問題。二 實驗內容 線性規劃的數學模型有各種不同的形式,其一般形式可以寫為 目標函式 約束條件 這裡稱為目標函式,稱為價值係數,稱為價值向量,為求解的變數,由係數組成的矩陣 稱為不等式約束...

利用Matlab求解線性規劃問題

15.利用matlab求解線性規劃問題 線性規劃是一種優化方法,matlab優化工具箱中有現成函式linprog對如下式描述的lp問題求解 min f x s.t 約束條件 ax b 等式約束條件 aeqx beq lb x ub linprog函式的呼叫格式如下 x linprog f,a,b x...