《運籌學》教案 - 下載本文

時 間:第七周第二次 授課方式:課堂教學 教學內容:

一、整數規劃的模型與特點(§6-1)

在前面我們所討論的線性規劃模型中,一般情況下都限定決策變量X≥0。但在實際問題中往往會有其它限制,如決策變量只能取整數,只能取0、1兩個值等等。若對原線性規劃問題增加這種限制,則稱之為整數規劃問題。所以整數規劃也是一種特殊的線性規劃。 整數規劃有很現實的實際意義,因為在很多線性規劃問題中,決策變量往往代表的是人數、機器臺數等等,這時非整數解顯然是不合要求的。

整數規劃有很現實的實際意義,因為在很多線性規劃問題中,決策變量往往代表的是人數、機器臺數等等,這時非整數解顯然是不合要求的。對于處理這一類要求有整數解的線性規劃問題,通常人們首先想到的是先不管整數條件的限制,直接使用單純形法求解,然后將所得到的非整數解經四舍五入化為整數。但是這種辦法往往是行不通的,這是因為由舍入化整所得的整數解不一定是可行解,即便是可行解,也不一定是最優解。

目前,解整數規劃問題通常采用的方法是分支定界法和割平面法。

二、分枝定界法(§6-2)

1. 分枝定界法是以求相應的線性規劃問題的最優解為出發點的。如果得到的線性規劃

問題的最優解不符合整數條件,就將原問題分解成兩個或幾個子問題,而每一子問題都是在原線性規劃問題的基礎上增加相應的整數約束條件,從而在其可行域的邊界附近除去一部分原來的可行域,但所除去的可行域是不包含有整數解的。這樣,可以使靠近可行域邊界的整數點逐步地暴露在新可行域的邊界上,在分解后的縮小了的可行域內繼續求相應的線性規劃問題,直到得到所要求的最優整數解。 2. 解體步驟:

1.稱原問題(整數規劃)為A,稱相應的線性規劃(即不考慮整數條件)為B,解B。

2. 如果問題B沒有可行解,則問題A也沒有可行解。

3. 如果已得問題B的最優解,檢查它是否合于整數條件。若是,則它就是原問題A

的最優解;若否轉入下步。 4. 在問題B的解中,任選一個不符合整數條件的變量xj,如果xj的值是bj,作兩個

后繼問題,它們是對問題B分別各增加一個約束條件:

a) b)

xj?(小于bj的最大整數) xj?(大于bj的最小整數)

不考慮整數條件,解這兩個后繼問題。

5. 在現有的、且還沒有分解后繼問題的各可行解中,選目標函數值為最優的問題,重

新稱這個問題為問題B,回到第3步。重復進行,直到得到整數最優解。

時 間:第八周第一次 授課方式:課堂教學 教學內容:

割平面法(§6-3)

一.解法思想:

首先不考慮整數條件,解線性規劃問題,若得整數解即為所求,若有非整數解,則增加線性約束條件(即割平面法),使得由原可行域中切割掉一部分,切掉的這部分只包含非整數解,而沒有切割掉任何整數可行解。

二. 利用最終單純形表求割平面方程的基本步驟:

1. 從最終單純形表中引出誘導方程。

xi??akikxk?bi ①

xi——基變量之一; xk——所有非基變量;

aik——相對應非基變量在最終表中的系數; bi——最終表中對應于xi的取值,bi非整數。

2. 將aik、bi都分解成整數部分N與非負真分數f之和。

即aik?Nik?fik,其中0?fik?1 bi?Ni?fi,其中0?fi?1

其中N為不超過aik(或bi)的最大整數。 所以上述①式變為:xi??Nkikxk?Ni?fi??kfikxk ②

3. 現在提出整數條件,即xi,xk均為整數。

可見②式左邊為整數,因而其右端也就必為整數。 又?0?fi?1 , 0?fik?1

?必有 fi??kfikxik?0 ③

此即所求割平面方程。

4. 給割平面方程③加入非負松弛變量y得到

即fi??fikxik?y?0 ④

k然后以y為基變量把此方程④填入最終計算表繼續迭代,重復以上過程,直到得到整數最優解。

0-1整數規劃(§6-4)

0-1整數規劃的解法:枚舉法(窮舉法),隱枚舉法

1. 枚舉法就是對于各種可能情況的組合及結果一一列出。對于有n個變量的0-1規劃用

枚舉法,需計算2n種組合情況下的目標值,并進行大小比較,選其最大值所對應的方案作為最優解。顯然當n較大時,這種方法幾乎是不可能的。

2. 隱枚舉法:先試探一個解,根據此解,以目標函數方程及其取值作為增加的約束條

件——稱之為過濾約束條件。當求解優于當前最優值的時候,則修改這一過濾條件的右端常數項的取值。

注:為方便分析,一般常重新排列決策變量的順序使目標函數中的各決策變量的系數是遞增(不減)的。

時 間:第八周第二次 授課方式:課堂教學 教學內容:

指派問題(匈牙利法)(§6-5)

解題步驟:

1) 使目標系數矩陣的各行各列出現“0”元素(在系數矩陣位置填寫的目標系數

值所構成的矩陣)。具體作法是以系數矩陣的每一行減去該行元素的最小值,然后再將無“0”的列減去該列元素的最小值。

2) 最優解判別:由有“0”元素最少的行開始,圈出一個“0”以◎表示,然后

劃去同行同列的其它“0”元素,用φ表示;或者按列檢查,以“0”元素最少的列開始,圈出一個“0”記號為◎,劃去同行同列的其它“0”,記號為φ。 若能圈出n個不同行不同列的“0”元素◎,即為所求最優解,否則進行下一步。

3) 作能覆蓋所有“0”元素的最少數的直線集。

a) 對沒有◎的行打√號;

b) 對打√號行上所有有“0”元素的列打√號; c) 再對打√號的列上有◎的行打√;

d) 重復a)、b)、c)直到得不出新的打√號的行列為止;

e) 對沒有打√號的行畫橫線,所有打√號的列畫縱線。這就是能覆蓋所有

“0”元素的最少數直線集合。 4) 變換矩陣,使“0”元素增加

在沒有被直線覆蓋的部分中找出最小元素,在沒有劃線的行中減去這個最小元素,在有畫線的列中都加上這個最小元素,然后回到第2)步,重復進行。

IP的計算機解法§6-6 IP的應用及案例§6-7

時 間:第九周第一次 授課方式:課堂教學/課堂答疑 教學內容:

習題課:

1. 對運輸問題和整數規劃部分總結核心點; 2. 講授運輸問題部分的應用舉例(p.92); 3. 課堂講解98頁習題中的部分難題;

4. 課堂講解134頁整數規劃習題中的部分難題; 5. 就這兩章中學生提出的典型問題進行課堂答疑。





赌大小必赢数学公式