第四章 二階段生產系統的多次投料問題
4.3.2 動態規劃問題的演算法(OPS 演算法)
根據前一小節證明的定理,我們提出求解動態規劃問題的演算法,這個演 算法(Optimum-solution search algorithm)我們簡稱為 OPS 演算法,它可以求得最 佳解。已知訂單需求量D 和總剩餘期數T ,期初狀態為sT =(D ,0),求解期初的 最佳投料量N s 。在附錄 B 我們詳細地說明 OPS 演算法每個步驟的運算過T*( )T 程,在此我們簡介OPS 演算法的基本概念,求解的步驟如下:
歩驟4.1:根據 4.2.4 節第一個邊界條件。當1 t T≤ ≤ ,狀態為st =(0 ,Bt),設定最 佳成本與各階段的最佳投料量。
歩驟4.2:根據 4.2.4 節第二個邊界條件。當t =0,狀態為s0 =(D0,B0)),設定最 佳成本與各階段的最佳投料量。
歩驟4.3:根據定理 4.1。當t=1,狀態為s1=(D1≥1, B1 ≥ ,計算最佳成本與第0) 二階段的最佳投料量。
歩 驟 4.4 : 根 據 公 式 (4-1) 、 定 理 4.3 及 定 理 4.4 。 當 2≤ ≤ − ,狀態為t T 2 )
0 , 1 ( ≥ ≥
= t t
t D B
s ,計算最佳成本與各階段的最佳投料量。
歩 驟 4.5 : 根 據 公 式 (4-1) 、 定 理 4.3 及 定 理 4.4 。 當 t T= −1, 狀 態 為 )
0 , 1 ( ≥ ≥
= t t
t D B
s ,計算最佳成本與各階段的最佳投料量。
歩 驟 4.6 : 根 據 公 式 (4-1) 、 定 理 4.3 及 定 理 4.4 。 當 t T= , 狀 態 為 ( 1, 0)
T T T
s = D ≥ B = ,計算最佳成本與第一階段的最佳投料量。
綜合上述,步驟4.1 和 4.2 是根據二個邊界條件,設定最佳成本與各階段的 最佳投料量;步驟4.3 至 4.5 是計算第 1 期到T−1期各種狀態的最佳成本與最佳 投料量;步驟4.6 是計算期初狀態的最佳成本與第一階段的最佳投料量。
接著我們利用圖形來展示演算法各個步驟的主要概念。圖形是以三個維度來 表示:(1) t:距離交期日剩下的期數;(2)D :第 t 期未滿足的訂單需求量;(3)t B :t 第t 期的製品庫存量。
歩驟4.1 是顧客的訂單需求量已經滿足,即Dt = 。根據 4.2.4 節第一個邊界0 條件,設定最佳成本與最佳投料量,如圖 4.5 所示;歩驟 4.2 是到了交期日,即
0
t= ,產出的良品個數比訂單需求量少D 個。根據 4.2.4 節第二個邊界條件,設0 定最佳成本與最佳投料量,如圖4.5 所示。
Bt
Dt
圖4.5 根據二個邊界條件,設定各種狀態的最佳成本與最佳投料量
歩驟4.3 是根據定理 4.1。當t=1,計算最佳成本與第二階段的最佳投料量,
得到t=1的平面,如圖4.6 所示。
Bt
Dt
圖4.6 當t=1時,計算最佳成本與最佳投料量
歩驟4.4:根據公式(4-1)、定理 4.3 及定理 4.4。當 2≤ ≤ − 時,計算最佳t T 2 成本與各階段的最佳投料量,得到t=2,3,...,T− 的平面,如圖 4.7 所示。 2
1
1
1 2
2
T-1 0
T . . .
. . .
. . .
0
Bt
Dt
未滿足的 需求量
剩下的 期數
在製品 庫存量
步驟 4.4 步驟 4.4
圖4.7 當 2≤ ≤ − 時,計算最佳成本與最佳投料量 t T 2
歩驟4.5:根據公式(4-1)、定理 4.3 及定理 4.4。當t T= −1,計算最佳成本 與各階段的最佳投料量,得到t T= −1的平面,如圖4.8 所示。
Bt
Dt
圖4.8 當t T= − 時,計算最佳成本與最佳投料量 1
歩驟4.6:根據公式(4-1)、定理 4.3 及定理 4.4。當t T= ,計算最佳成本與 各階段的最佳投料量,得到t T= 的平面,如圖4.9 所示。
Bt
Dt
( , 0) sT= D
圖4.9 當t T= 時,計算最佳成本與最佳投料量
接著我們分析OPS 演算法的複雜度,它的複雜度是O T D ,分為以下三( 4 6) 點作說明:
(1)生產系統狀態st =( , )D Bt t 的總數是由三個變數:t 、D 及t B 所限制,而 t 、t D 及t B 的上界分別是t T 、 D 及TD 。在最差的情況下,生產系統狀態的總 數是T D TD⋅ ⋅ =(T D2 2)。
(2) 在 每 一 個 狀 態 st =( , )D Bt t 下 , 因 為 第 一 階 段 投 料 量 的 最 大 範 圍 是
(1) ( 1)
t t
k ≤ − ⋅t D ≤TD,第二階段投料量的最大範圍是kt(2) ≤min{ , }D Bt t ≤ ,D
所以我們最多可採取投料決策(kt(1) , kt(2) )的個數是D⋅TD=(TD2)。
(3) 每 一 個 投 料 決 策 (kt(1) , kt(2) ) 所 有 可 能 產 出 的 狀 態 個 數 最 多 也 是 ( 2)
TD D⋅ = TD 。
綜 合 以 上 三 點 , 在 最 差 的 情 況 下 ,OPS 演 算 法 的 複 雜 度 是
4 6 2 2 2 2
( )
O T D =T D TD TD⋅ ⋅ 。
在T 和 D 很大的情況下,利用動態規劃的手法求解時,因為動態規劃的網 路規模是由二階段投料量k 和t(1) k 的上界所決定,導致動態規劃的網路規模變t(2) 得相當龐大,需耗費很長的時間才能求得最佳解。舉例來說,當T =10和D=50 時,就需要耗費大約 4 個小時才能求得最佳解。若能限定k 和t(1) k 的上界,即t(2) 可縮小態規劃的網路規模,以縮短計算時間。因此,我們將提出一個啟發式演算 法,來求解二階段生產系統有交期限制的多次投料問題。