Introduction to Management Science

Download Report

Transcript Introduction to Management Science

第 12 章
電腦模擬:基本概念
 學習目標
12.2
 電腦模擬的本質(12.1節)
12.3
 範例 1:投擲硬幣遊戲(12.1節)
 範例 2:Heavy Duty公司(12.1節)
12.4–12.8
12.9–12.15
 個案研究:賀爾理髮店(12.2節)
12.16–12.24
 個案研究的分析(12.3節)
12.25–12.32
 主要電腦模擬研究的概要(12.4節)
12.33–12.35
© The McGraw-Hill Companies, Inc., 2009
12-2
學習目標
 在讀完本章後,你應該能夠:
1. 描述電腦模擬的基本觀念。
2. 描述電腦模擬在管理科學研究裡扮演的角色。
3. 利用亂數從簡單的離散分配中產生隨機事件。
4. 利用Excel進行電腦模擬。
5. 利用等候模擬器進行基本等候系統的電腦模擬並能解
讀結果。
6. 描述和使用模擬模型的最小組成單元於隨機系統中。
7. 摘要出電腦模擬研究的主要步驟。
© The McGraw-Hill Companies, Inc., 2009
12-3
電腦模擬的本質
 隨機系統(stochastic system)是一種根據單一或是多
個機率分配且隨著時間而演化的系統。
 電腦模擬(Computer simulation)藉由應用相關的機
率分配隨機產生不同的事件來模仿此系統的操作(例
如:在等候理論中,到達和服務的完成)。
 不同於物理系統的實際執行,電腦只記錄了模擬事件
的發生和模擬系統的結果。
 當所涉及的隨機系統過於複雜,以致於分析模式無法
得到令人滿意的結果,此時就會考慮利用電腦模擬。
© The McGraw-Hill Companies, Inc., 2009
12-4
範例 1:投擲硬幣遊戲
 遊戲規則:
1. 每局比賽必須重複投擲硬幣直到擲出正面的總數和擲出反面
的總數相差3。
2. 當你決定參加比賽,每投擲一次必需付1美元,且比賽中途不
可退出。
3. 當每局比賽結束時,你可以獲得8美元。
 例子:
© The McGraw-Hill Companies, Inc., 2009
12-5
投擲硬幣遊戲之電腦模擬
 電腦沒辦法投擲硬幣,但是它可以藉由產生一連串的
亂數(random number)來模擬投擲的結果。
 數字是一個介於0與1的亂數,若在這區間的每一個數
字都有相同發生的機率。
 產生亂數的簡單方法可以藉由Excel中的RAND()功能。
 為了模擬投擲硬幣,電腦可以將亂數的一半與正面對
應,另一半則與反面對應。
– 0.0000至0.4999 對應到正面
– 0.5000至0.9999 對應到反面
© The McGraw-Hill Companies, Inc., 2009
12-6
投擲硬幣遊戲之電腦模擬(續)
© The McGraw-Hill Companies, Inc., 2009
12-7
重複模擬投擲硬幣遊戲14回的資料表
© The McGraw-Hill Companies, Inc., 2009
12-8
重複模擬投擲硬幣遊戲1,000回的資料表
© The McGraw-Hill Companies, Inc., 2009
12-9
維修 v.s. 維護
 Heavy Duty公司最近為新的製程添購了一台大型機器。
 機器是由馬達來驅動的,但是馬達偶爾會發生故障需
要檢修。因此,機器製造商提供一個備用的馬達,這
兩個馬達交替使用。
 故障總是發生在使用後的第4、5、或6天。幸運地,檢
修機器的時間不會超過三天,所以當故障情況發生的
時候,備用馬達通常都已在堪用狀態。
© The McGraw-Hill Companies, Inc., 2009
12-10
故障的機率分配
© The McGraw-Hill Companies, Inc., 2009
12-11
維修之電腦模擬
© The McGraw-Hill Companies, Inc., 2009
12-12
一些維護的選擇
 維護政策(preventive maintenance policy)為縱使故障
沒有發生馬達仍需在特定時間做例行性的拆解(和替
換)以進行檢修。
 主要的目的在於預防故障情況的發生。
 可排定機器沒有使用的時間進行拆解、替換和檢修,
如此就不會有產能的損失。
© The McGraw-Hill Companies, Inc., 2009
12-13
3天後進行替換的檢修方案
 更換週期的成本為$6,000(替換時總是無故障發生)。
 更換週期為每三天進行替換。
 E(每天成本) = ($6,000) / (3 天) = $2,000 / 天。
© The McGraw-Hill Companies, Inc., 2009
12-14
4天後進行替換的檢修方案
© The McGraw-Hill Companies, Inc., 2009
12-15
5天後進行替換的檢修方案
© The McGraw-Hill Companies, Inc., 2009
12-16
賀爾理髮店
 賀爾是一位德國理髮師,獨自經營一家理髮店。他週一到週五每天早
上八點開始營業。顧客以每小時兩位的平均速率隨機低達,而每位顧
客的平均理髮時間為20分鐘。
 隨著生意愈加興隆,他的顧客時常必須等候一些時間(有時會超過半
小時)。雖然老主顧大多願意等待,賀爾意識到新的客戶很少像以前
一樣再回到店裡消費,特別是在當他們需要等待一大段時間的時候。
 在 The Barber’s Journal 期刊中的一篇文章指出
– 在一間經營績效好的理髮店,為了剪髮,忠實的顧客平均願意等
待20分鍾。新顧客則平均願意花上10分鐘的等待時間來剪髮。
(等待得愈久,他們愈有可能在未來選擇其他理髮店。)
問題:賀爾理髮師是否應該僱用一位助手來分擔工作量?
© The McGraw-Hill Companies, Inc., 2009
12-17
機率分配
 賀爾發現他的剪髮時間大概需要15~20分鐘,他的最佳
估計是介於15至20分鐘任何時間出現的機會是均等的,
– 估計的服務時間分配:服務時間為介於15到20分鐘的均勻分
配 (uniform distribution)。
 產生介於a到b之間均勻分配的隨機觀測值,Excel中的
方程式為
=a + (b–a)*RAND()
 例如:產生介於15到25間的均勻分配的隨機觀測值,
Excel中的方程式為
= 15 + 10*RAND()
© The McGraw-Hill Companies, Inc., 2009
12-18
機率分配
 顧客隨機到達理髮店,平均每小時二位。
– 到達間隔時間估計的分配:平均值為30分鐘的指數分配。
 從指數分配產生隨機觀測值:
= –(mean) * LN(RAND())
 平均值為30分鐘的指數分配之隨機觀測值:
= –30*LN(RAND())
© The McGraw-Hill Companies, Inc., 2009
12-19
模擬模型的最小組成單元
1. 系統組成元件的描述,包含假設它們是如何運作以及
相互關連。
2. 模擬鐘(simulation clock)。
3. 系統狀態的定義。
4. 隨著時間產生隨機(模擬)事件的方法。
5. 當事件發生時,改變系統狀態的方法。
6. 模擬鐘時間推進的程序。
© The McGraw-Hill Companies, Inc., 2009
12-20
賀爾理髮店模擬模式之最小組成單元
1. 系統組成元件的描述,包含假設它們是如何運作以及
相互關連。
• 組成元件包括顧客、等候(理髮)的隊伍,和服務提供者賀
爾。
2. 模擬鐘(simulation clock)。
•
t = 到目前為止模擬的時間
3. 系統狀態的定義。
• N(t) = 在時間為t時理髮店的顧客數
4. 隨著時間產生隨機(模擬)事件的方法。
• 使用逆轉換法(inverse transformation method)來產生到達
間隔時間和服務時間。
© The McGraw-Hill Companies, Inc., 2009
12-21
賀爾理髮店模擬模式之最小組成單元(續)
5. 當事件發生時,改變系統狀態的方法。
• 重新設定 N(t) = N(t) + 1
• 重新設定 N(t) = N(t) – 1
若一位顧客在時間 t 時抵達
若一位顧客在時間 t 時完成服務
6. 模擬鐘時間推進的程序。
• 下次事件時間推進程序(next-event time advance procedure)
下次事件時間推進程序
1. 觀測模擬鐘上現在的時間t以及將發生的任何一個事件類型的隨機
時間。決定哪一個事件將先發生。
2. 將模擬鐘上的時間推進到下一個事件發生的時間。
3. 根據這個事件的結果來更新系統狀態,以及隨機產生在此狀態下
可能發生的任何一個事件類型的隨機時間(若該事件尚未事先產
生的話)。並且記錄有關於系統績效的資訊,然後返回步驟1。
© The McGraw-Hill Companies, Inc., 2009
12-22
賀爾理髮店之電腦模擬
© The McGraw-Hill Companies, Inc., 2009
12-23
前100分鐘系統顧客人數的變化情形
© The McGraw-Hill Companies, Inc., 2009
12-24
模擬有助手時的理髮店運作情況
 唯一的相異點發生於下一個事件時間推進程序將決定
哪一個事件將在下一個時間點發生。
 在此有三種可能的事件,而非之前的二種。
1. 賀爾服務完畢時的顧客離開。
2. 助手服務完畢時的顧客離開。
3. 顧客到達。
© The McGraw-Hill Companies, Inc., 2009
12-25
個案研究分析:財務因素
 收入 = $15 每次剪髮
 平均小費 = $2 每次剪髮
 維持店面的成本 = $50 每個工作天(無論有無助手)
 助手的薪水 = $120 每個工作天
 助手的佣金 = $5 助手每次剪髮
 除了他的薪水和佣金,助手會保留他的小費,而其他
收入將歸給賀爾。
 理髮店從早上8點營業至下午5點,所以它可以為顧客
服務9個小時。
© The McGraw-Hill Companies, Inc., 2009
12-26
沒有助手情況下之分析
 目前到達間隔時間分配的平均值為30分鐘。因此,賀
爾每個工作天會擁有18位顧客。
 所以,減掉每日維持店面的成本後,每個工作天的平
均淨收入為:
每日淨收入= ($15 + $2)(18位顧客)-$50
= $306-$50
= $256
© The McGraw-Hill Companies, Inc., 2009
12-27
等候模擬器的特色
1. 可以對不同種類的基本等候系統進行電腦模擬。
2. 允許擁有多位服務者,最多至25位。
3. 對於到達間隔時間或服務時間分配,可以採用下列的任一分配:
a) 固定的時間(也可以稱為退化分配)。
b) 指數分配。
c) 轉換指數分配(固定時間與指數分配時間的和)。
d) 均勻分配。
e) 厄朗分配。
4. 提供各種主要績效測量的估計:
L = 系統中的總顧客人數(包含正在接受服務的顧客)
Lq = 系統中正在等待的顧客人數(不包含正在接受服務的顧客)
W = 每位顧客在系統中的平均等待時間(包含服務時間)
Wq = 每位顧客在等候線中的平均等待時間(不包含服務時間)
Pn = 系統中有n位顧客的機率(n = 0, 1, 2,…, 10)
© The McGraw-Hill Companies, Inc., 2009
12-28
等候模擬器模擬賀爾理髮店(沒有助手)
© The McGraw-Hill Companies, Inc., 2009
12-29
測試模擬模型的有效性
© The McGraw-Hill Companies, Inc., 2009
12-30
選擇聘用一位助手的分析
 聘用助手後將會
– 剪髮前的平均等候時間小於10分鐘
– 逐漸地吸引新的客源直到平均等候時間達到10分鐘
 等候模擬器產生的結果:
© The McGraw-Hill Companies, Inc., 2009
12-31
等候模擬器模擬賀爾理髮店(一位助手)
© The McGraw-Hill Companies, Inc., 2009
12-32
選擇聘用一位助手的財務分析
 賀爾認為14.3分鐘提供有助手時平均到達間隔時間一個
合適且保守的估計值。
 這相當於平均到達率為每天37.8位顧客。
 每日淨收入 = 37.8 ($15) (店面收入)
+ 18.9 ($2)(他的小費)
– $50
(維持店面的成本)
– $120
(助手的薪水)
– $18.9 ($5)(助手的佣金)
合計
$340.30
 這與賀爾目前的每日淨收入$256相比,每日淨收入明
顯增加了 $84.30。
© The McGraw-Hill Companies, Inc., 2009
12-33
主要電腦模擬研究之概要
 步驟 1:架構問題與規劃研究
–
–
–
–
–
–
管理階層主要想要研究的問題?
研究的主要目標?
是否有特別的議題需要提出?
需要考慮選擇哪一種系統結構?
管理階層對於系統的哪些績效測量有興趣?
研究的時間限制為何?
 步驟 2:蒐集資料並架構模擬模型
– 需要相關數量的機率分配。
– 一般而言,我們只能去估算這些分配。
– 模擬模型通常會用流程圖(flow diagram)來表示。
 步驟 3:檢查模擬模型的準確性
– 在主要核心人物面前,有系統地將概念模型從頭到尾地帶過。
© The McGraw-Hill Companies, Inc., 2009
12-34
主要電腦模擬研究之概要(續)
 步驟 4:選擇軟體與建構電腦程式
– 軟體類別
• 試算表軟體(例如: Excel、Crystal Ball)
• 泛用程式語言(general-purpose programming language)(例如: C、
FORTRAN、PASCAL、BASIC 等)
• 泛用模擬語言(general-purpose simulation language)(例如: GPSS、
SIMSCRIPT、SLAM、SIMAN等)
• 應用導向模擬器(applications-oriented simulators)
 步驟 5:測試模擬模型的有效性
– 若真實系統目前正在運作,實際績效資料應該和模擬結果做比較。
– 利用現場測試(field test)來蒐集資料,並和模擬模型做比較。
– 請具有相關知識的人員來檢驗當模擬系統結構改變時模擬結果會
如何變化。
– 觀察模擬過程的動畫(animations)。
© The McGraw-Hill Companies, Inc., 2009
12-35
主要電腦模擬研究之概要(續)
 步驟 6:規劃即將進行的模擬
– 決定模擬時間的長度。
– 必須知道電腦模擬無法提供系統真實的績效衡量。可以將每
次的模擬視為一種統計實驗,可以產生系統績效的統計觀測
值。
 步驟 7:執行模擬和分析結果
– 獲得點估計值(point estimates)以及信賴區間(confidence
intervals)以便了解衡量可能數值的範圍。
 步驟 8:向管理階層提出建議
© The McGraw-Hill Companies, Inc., 2009