Document

advertisement
14. Simulation and Factory Physics
1. @Risk: Harriet Hotel and Overbooking Problems
2. Introduction to Simulation
–
–
Methods of modeling uncertainty
Monte Carlo simulation
3. Managing production lines without variability
4. Managing production lines with variability
–
–
–
Throughput rate, flow time and inventory levels
Line balancing
Single machine stations vs. parallel machines
1
Overbooking Problem
• Common practice in
• Difference between overbooking problems and newsvendor
problems
2
Harriet Hotel
100
125
30
0.95
200
Note:
HarrietHotel.xls is
available on
CourseInfo
=B2-B3
try different values
=RiskBinomial(B7, B4)
=MIN(B1,B8)
=B8-B9
=RiskOutput() +B6*B9-B5*B10
1. First, start @Risk. Excel will start automatically.
2. Make “Actual Arrivals" a Binomial Random Variable:
3.
4.
5.
6.
Menu: Insert, Function, @RiskDistribution, RiskBinomial
Make "Nightly Profit" an Output: Menu: @Risk, Model, Add Output
Set Iterations & Sampling: Menu: @Risk, Simulation, Settings
Run the Simulation: Menu: @Risk, Simulation, Start
3
Analyze the Results: Results Window: Results, Results Settings or Quick Report
@Risk Simulation Settings. Menu: @Risk, Simulation, Settings
Number of times the simulation is
repeated for each scenario.
Number of Scenarios.
• use 1 if you enter a single value
for “Number of Reservations
Accepted", or
• use 7 if use RiskSimTable with
seven different values.
“Monte Carlo” causes @Risk to
show randomly generated values
when you press function key F9.
A "fixed seed" causes @Risk to
use the same random numbers
every time a run is repeated.
This means that all simulations
will face the same “Actual
Arrivals”.
4
@Risk Report Settings
Results Window: Results, Report Settings
Specify the reports you are interested in.
For example, you can put these
results on an Excel spreadsheet.
Generate the selective reposts.
5
Using the @Risk Simulation Add-in for Excel
1.
2.
Open @Risk. (Excel will be opened for you.)
Create your model and think about what are the
–
–
–
3.
Use probability functions to represent your random variables
–
–
4.
Go to @Risk | Add Output, or simply type in Riskoutput()
You can see the list of your input and output cells by going to
@Risk | Model | List of Outputs and Inputs
Specify simulation settings: @Risk | Simulation | Settings
–
–
6.
7.
Go to Insert | Function and select @Risk Distribution, or
go to @Risk | Model | Define Distributions
Identify the performance measures you wish to gather data on
–
–
5.
Performance measures (output cells)
Decision variables (under your control)
Random variables (input cells)
Iterations: # iterations and # simulations
sampling
Start the simulation (@Risk | Simulation | Start)
Analyze results
6
Selecting a Distribution (p. 550)
• Quantifying Uncertainty
– Mean and Standard Deviation
– Shape (skewness)
– Min, mostlikely, max
You can also go to @Risk |
Model | Define Distributions,
which is helpful in choosing
among the different probability
distributions.
• Discrete Probability Distributions:
–
–
–
–
RiskIntUniform (x,y)
RiskDuniform({x1,x2,…,xn})
RiskDiscrete ({x1,x2,…,xn}, {p1,p2,…,pn})
RiskBinomial(n,p)
• Continuous Probability Distributions:
–
–
–
–
RiskUniform(x,y)
RiskNormal(m,s)
RiskLogNorm(m,s)
RiskTriang(min, most likely, max)
7
Analyzing Simulation Results
• After the simulation runs, the Results Window will automatically open,
showing summary statistics for
– the output cells and
– the input cells if you’ve chosen to collect them in the Sampling tab of
Simulation Settings
• You can move back and forth between the results and your
spreadsheet through the “Show Excel Window” button and the “Show
Result Window” button (or through @Risk | Results).
• From the Results Window:
– Copy the simulation results to an Excel worksheet for further analysis and
safekeeping by going to Results | Report Setting or Quick Report
– To generate a graph, right-click on an output (or input) cell and then
choose the type of graph you want (histogram or cumulative). Right-click
on any graph to change its format or to copy it into a standard Excel
graph.
• To simulate for different values of a decision variable (One variable at
a time!):
– Use RiskSimTable({x1,x2,…xn}); x1, x2, … xn can be cells or numbers.
– type n in “# of simulations” under @Risk | Simulation | Settings
• Reports: mean, std, percentiles
8
Some Tips
• @Risk will run all the models that are open. If you are only
interested in results from one model, close all other models.
• @Risk can handle multiple random variables.
Year
Return
1998
=Riskuniform(0.07,0.15)
1999
=Riskuniform(0.03,0.10)
• @Risk allows formulas such as: B1*(1+RiskNormal(10,9))+B3
• @Risk can handle multiple output cells
Annual profit
RiskOutput()+formula
Service level
RiskOutput()+formula
Inventory cost
RiskOutput()+formula
9
Introduction to Simulation
• Approaches to analyzing uncertainty:
• Monte Carlo simulation using computers
• Why important?
• Disadvantages
10
Factory Physics
•
Managing production lines without variability
•
Managing production lines with variability
–
–
–
–
Throughput rate, flow time and inventory levels
Line balancing
Single machine stations vs. parallel machines
Sources of variability
11
The Penny Fab
punch press
cuts penny
blanks
stamps
Lincoln’s
face
places a
rim on the
penny
cleans
away any
burrs
A production line that makes giant one-cent pieces. The line
consists of four machines in sequence. Capacity of each
machine is one penny every two hours. (A balanced line with
no variability.)
• Theoretical flow time (hours) T0 =
• Bottleneck rate per hour R0 =
• To achieve R0 , Inventory needed is: I0 =
12
Penny Fab One
T = Flow
Time for
each Penny
Critical
WIP level I0
2 hrs
2 hrs
I
1
2
3
4
5
6
7
8
9
T
2 hrs
R
2 hrs
RxT
1
2
3
4
5
6
7
8
9
R=
Throughput
Rate for
System
13
.5
20
.4
16
.3
12
.2
8
.1
4
0
0
2
4
6
8
10
12
14
Flow time (Hours)
Throughput (Jobs/hr)
Throughput and Flow Time vs. Inventory
0
Inventory (jobs)
To achieve the Theoretical Throughput Rate R0 = 0.5 jobs per hour
The minimum Inventory needed is I0 = 4.0 jobs
14
5 hr
Station 4
Station 3
Station 2
Station 1
Penny Fab Two
2 hr
3 hr
10 hr
15
Penny Fab Two
R0 =
Station
c
Tp
1
1
2 hr
2
2
5 hr
3
6
10 hr
4
2
3 hr
Capacity
T0 = _______________ I0 = ________________
Station 1
Station 2
Station 3
Station 4
# of jobs
Utilization
16
Line Balancing
5 jobs/shift
2.5 jobs/shift
on each machine
=> Extra capacity at the first station!
• Processing rate at station 1: 1 job/shift 50% of the time, 4
jobs/shift 50% of the time; avg 2.5 jobs/shift
• Processing rate at station 2: 2 jobs/shift 50% of the time,
8 jobs/shift 50% of the time; avg 5 jobs/shift
17
Line Balancing (cont.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
M1
1
1
1
1
4
4
4
4
1
1
1
1
4
4
4
4
Potential Production
Station 1
Station 2
M2
M3
M1
1
1
2
1
4
2
4
1
2
4
4
2
1
1
2
1
4
2
4
1
2
4
4
2
1
1
8
1
4
8
4
1
8
4
4
8
1
1
8
1
4
8
4
1
8
4
4
8
The expected output rate =
Actual
Output
2
2
2
2
2
2
2
2
3
6
6
8
6
8
8
8
69
jobs/shift
18
Line Balancing (cont.)
• If we shut down one of the machines at station 1, the expected
output rate
jobs/shift.
1
2
3
4
5
6
7
8
Potential Production
Station 1
Station 2
M1
M2
M1
1
1
2
1
4
2
4
1
2
4
4
2
1
1
8
1
4
8
4
1
8
4
4
8
Actual Output
2
2
2
2
2
5
5
8
28
What is the capacity of a line with variability?
19
Penny Fab Two Throughput Rate
0.5
without variability
Throughput Rate, R
0.4
with variability
0.3
0.2
0.1
0
2
4
6
8
10
12
14
16
18
20
22
24
26
Inventory, I
With
variability
• Simulation is the tool to find R(I) and T(I) !!
• To get close to the bottleneck rate R0 you might
20
need a huge inventory!!
Penny Fab Two Flow Time
80
Flow Time, T
70
T
60
50
40
30
without variability
20
10
0
0
2
4
6
8
10 12
14 16 18 20 22 24 26
Inventory, I
21
Penny Fab One
• Single Machine Stations
c=1
2 hrs
c=1
c=1
c=1
2 hrs
2 hrs
2 hrs
• Parallel Machines
c=1
2 hrs
c=1
c=2
2 hrs
4 hrs
22
Internal Benchmarking Example
Large Panel Line:
Process
Treater
Machining
Circuitize
Optical Test/Repair
Drilling
Copper Plate
Procoat
Sizing
EOL Test
Bottleneck rate,
theoretical process time
Rate (p/hr)
191.5
186.2
150.5
157.8
185.9
136.4
146.2
126.5
169.5
126.5
Time (hr)
1.2
5.9
6.9
5.6
10.0
1.5
2.2
2.4
1.8
33.1
23
Internal Benchmarking
• Best inventory level without variability = 126.5  33.1 = 4,187
• Actual Values:
– T = 34 days = 816 hours
– I = 37,400 panels
– R = 45.8 panels/hour
• Benchmark:
– Theoretical FT = 33.1 hours
– “best inv level” = 4,187 panels
– Bottleneck rate = 126.5 panels/hr
• Conclusions:
– Throughput is 36% of capacity
– WIP is 8.9 times the “best inventory level”
– Flow Time is 24.6 times theoretical flow time
• Why?
24
Takeaways
1. @Risk
–
–
–
–
–
–
Spreadsheet model: performance measures, decision
variables, random variables
Probability functions for representing random variables,
e.g., RiskNormal(m,s)
Decision variables: RiskSimTable (one variable at a time!)
Output cells for performance measures (Riskoutput)
Simulation settings (run length, desired reports)
Reports (mean, std., percentiles)
2. Simulation
–
–
Methods of modeling uncertainty
Monte Carlo simulation: random number generation
25
Takeaways
3. Managing production lines without variability
– There exists an optimal Inventory level =
bottleneck rate  theoretical flow time
– Managing production lines with variability
4. Throughput rate increases as inventory
increases
– Throughput rate < bottleneck rate
– Unbalance Lines
– Single machine stations vs. parallel machines
26
Download