Professional Documents
Culture Documents
X
X0 = C / (c1-c2)
Example: Introducing a new (stabilizing)
bracket for an existing product
• Machine capacity available
• Required “infrastructure” for in-house production
– new tooling: $12,500
– Hiring and training an additional worker: $1,000
• Internal variable production (raw material + labor) cost: $1.12 / unit
• Vendor-quoted price: $1.55 / unit
• Forecasted demand: 10,000 units/year for next 2 years
X0 = (12,500+1,000)/(1.55-1.12) = 31,395 > 20,000
Buy!
Evaluating Alternatives through
Decision Trees
• Decision Trees: A mechanism for systematically pricing all options /
alternatives under consideration, while taking into account various
uncertainties underlying the considered operational context.
• Example
– An engineering consulting company (ECC) has been offered the design of a new
product.The price offered by the customer is $60,000.
– If the design is done in-house, some new software must be purchased at the price
of $20,000, and two new engineers must be trained for this effort at the cost of
$15,000 per engineer.
– Alternatively, this task can be outsourced to an engineering service provider
(ESP) for the cost of $40,000. However, there is a 20% chance that this ESP will
fail to meet the due date requested by the customer, in which case, the ECC will
experience a penalty of $15,000. The ESP offers also the possibility of sharing
the above penalty at an extra cost of $5,000 for the ECC.
– Find the option that maximizes the expected profit for the ECC.
Decision Trees: Example
10K
60K-20K-2*15K=10K
60K-40K=20K
17K 17K 0.8
2
0.2
60K-40K-15K=5K
3 13.5K
0.8 60K-45K=15K
0.2
60K-45K-7.5K=7.5K
Technology selection
• The selected technology must be able to support the quality
standards set by the corporate / manufacturing strategy
• This decision must take into consideration future expansion plans
of the company in terms of
– production capacity (i.e., support volume flexibility)
– product portfolio (i.e., support product flexibility)
• It must also consider the overall technological trends in the
industry, as well as additional issues (e.g., environmental and other
legal concerns, operational safety etc.) that might affect the
viability of certain choices
• For the candidates satisfying the above concerns, the final
objective is the minimization of the total (i.e., deployment plus
operational) cost
Production Capacity
• Design capacity: the “theoretical” maximum output of a system,
typically stated as a rate, i.e., product units / unit time.
• Effective capacity: The percentage of the design capacity that the system
can actually achieve under the given operational constraints, e.g.,
running product mix, quality requirements, employee availability,
scheduling methods, etc.
• Plant utilization = actual prod. rate / design capacity
• Plant efficiency = actual prod. rate / (effective capacity x
design capacity)
• Notice that
actual prod. rate = (design capacity) x (utilization) =
(design capacity) x (effective capacity) x (efficiency)
Capacity Planning
• Capacity planning seeks to determine
– the number of units of the selected technology that needs to be deployed in
order to match the plant (effective) capacity with the forecasted demand,
and if necessary,
– a capacity expansion plan that will indicate the time-phased deployment of
additional modules / units, in order to support a growing product demand,
or more general expansion plans of the company (e.g., undertaking the
production of a new product in the considered product family).
• Frequently, technology selection and capacity planning are addressed
simultaneously, since the required capacity affects the economic viability of a
certain technological option, while the operational characteristics of a given
technology define the production rate per unit deployed and aspects like the
possibility of modular deployment.
Quantitative Approaches to Technology
Selection and Capacity Planning
• All these approaches try to select a technology (mix) and determine the capacity to be deployed
in a way that it maximizes the expected profit over the entire life-span of the considered product
(family).
• Expected profit is defined as expected revenues minus deployment and operational costs.
• Typically, the above calculations are based on net present values (NPV’s) of the expected costs
and revenues, which take into consideration the cost of money: NPV = (Expense or
Revenue) / (1+i)N
where i is the applying interest rate and N the time period of the considered expense.
• Possible methods used include:
– Break-even analysis, similar to that applied to the “make or buy” problem, that seeks to
minimizes the total (fixed + variable) cost.
– Decision trees which allow the modeling of problem uncertainties like uncertain market
behavior, etc., and can determine a strategy as a reaction to these unknown factors.
– Mathematical Programming formulations which allow the optimized selection of technology
mixes.
Selecting the Process Layout
Operation Process Chart Example
for discrete part manufacturing
(borrowed from Francis et. al.)
Major Layout Types
(borrowed from Francis et. al.)
Advantages and Limitations of the various
layout types (borrowed from Francis et. al.)
Advantages and Limitations of the various layout
types (cont. - borrowed from Francis et. al.)
Selecting an appropriate layout
(borrowed from Francis et. al.)
The product-process matrix
Production
volume Low volume, Multiple products, Few major products, High volume, high
& mix low standardi- low volume high volume standardization,
Process
zation commodities
type
Jumbled Commercial
flow (job printer Void
Shop)
Disconnected
line flow Heavy
(batch) Equipment
Connected Auto
line flow assembly
(assembly
Line)
Continuous
flow Sugar
Void refinery
(chemical
plants)
Cell formation in group technology:
A clustering problem
Partition the entire set of parts to be produced on the plant-floor into
a set of part families, with parts in each family characterized by
similar processing requirements, and therefore, supported by the
same cell.
Part-Machine Indicator Matrix
M1 M2 M3 M4 M5 M6 M7
P1 1 1 1
P2 1 1 1
P3 1 1
P4 1 1
P5 1 1
P6 1 1 1
M1 M4 M6 M2 M3 M5 M7
P1 1 1 1
P3 1 1
P2 1 1 1
P4 1 1
P5 1 1
P6 1 1 1
Clustering Algorithms for Cellular Manufacturing
Row & Column Masking
M1 M2 M3 M4 M5 M6 M7
P1 1 1 1
P2 1 1 1
P3 1 1
P4 1 1
P5 1 1
P6 1 1 1
M1 M4 M6 M2 M3 M5 M7
P1 1 1 1
P3 1 1
P2 1 1 1
P4 1 1
P5 1 1
P6 1 1 1
Clustering Algorithms for Cellular
Manufacturing:
Similarity Coefficients - Motivation
M1 M2 M3 M4 M5 M6 M7
P1 1 1 1
P2 1 1 1 1
P3 1 1
P4 1 1
P5 1 1
P6 1 1 1
M1 M4 M6 M2 M3 M5 M7
P1 1 1 1
P3 1 1
P2 1 1 1 1
P4 1 1
P5 1 1
P6 1 1 1
Clustering Algorithms for Cellular Manufacturing:
Similarity Coefficients - Definitions
• P(Mi) = set of parts supported by machine Mi
• |P(Mi)| = cardinality of P(Mi), i.e., the number of elements
of this set
• SC(Mi,Mj) = |P(Mi)P(Mj)| / |P(Mi)P(Mj)| =
|P(Mi)P(Mj)| / (|P(Mi)|+|P(Mj)|-|P(Mi)P(Mj)|)
K4242 4.9 21
L9898 5.1 17
3800 5.2 14
M2624 5.4 10
M3880 5.8 06
Aggregate
Unit Demand Aggregate
Production Plan
Aggregate
Aggregate Planning
Unit Availability Required
(Current Inventory Production Capacity
Position)
W(t)
D(t) P(t)
S(t)
O(t)
U(t)
W = constant
•S(t): Subcontracted quantities
•O(t): Overtime levels
•U(t): Undertime levels
•Costs involved:
•PC, WC: as before
•SC: subcontracting costs: e.g., purchasing, transport, quality, etc.
•OC: overtime costs: incremental cost of producing one unit in overtime
•(UC: undertime costs: this is hidden in WC)
Pure Aggregate Planning Strategies
3. Accumulating (Seasonal) Inventories:
PC WC IC
D(t) P(t)
I(t)
D(t) P(t)
B(t)
P
D W
H
F
Io O
U
S
Wo I
B
+
Additional constraints arising from the company strategy; e.g.,
•maximal allowed subcontracting
•maximal allowed workforce variation in two consecutive periods
•maximal allowed overtime
•safety stocks
•etc.
Solution Approaches
• Graphical Approaches: Spreadsheet-based simulation
• Analytical Approaches: Mathematical (mainly linear
programming) Programming formulations
A prototype problem
Forecasted demand: On-hand Inventory: Current Workforce
Jan: 1280 500 Level: 300
Feb: 640 Required on-hand
Mar: 900 Inventory at end Worker prod.capacity:
Apr: 1200 of June: 0.14653 units/day
May:2000 600 Working days per month
Jun: 1400 Jan: 20
Cost structure: Feb: 24
Inv. holding cost: $80/unit x month Mar: 18
Hiring cost: $500/worker Apr: 26
Firing cost: $1000/worker May: 22
Jun: 15
A prototype problem (cont.)
Forecasted demand: On-hand Inventory: Net predicted demand:
Jan: 1280 500 Jan: 780
Feb: 640 Required on-hand Feb: 640
Mar: 900 Inventory at end Mar: 900
Apr: 1200 of June: Apr: 1200
May:2000 600 May: 2000
Jun: 1400 Jun: 2000
An LP formulation for the prototype problem
Problem Parameters
Dt = Forecasted demand for period t
dt = working days at period t
c = daily worker capacity
W0=Initial workforce level
I0 = Current on-hand inventory
CH = Hiring cost per worker
CF = Firing cost per worker
CI = Inventory holding cost per unit per period
Problem Decision Variables
Ht = Workers hired at period t
Ft = Workers fired at period t
Wt = Workforce level at period t
Pt = Level of production at period t
An LP formulation for the prototype problem
6 6 6
min(C H H t C F Ft C I I t )
t 1 t 1 t 1
s.t.
Wt Wt 1 H t Ft , t 1,...,6
Pt (d t c) Wt , t 1,...,6
I t I t 1 Pt Dt , t 1,...,6
I 6 600
Wt , H t , Ft , Pt , I t 0, t 1,...,6
Optimal Plan for the considered example
Fermentation Bottling
Filtering
(3 40-barrel (1 bottling
(1 filter tank)
ferm. tanks) station)
Fermentation Times:
Brew Ferm. Time
Pale Ale 2 weeks
Stout 3 weeks
Winter Ale 2 weeks
Summer Brew 2 weeks
Octoberfest 8-10 weeks
Example: Implementing the Empirical
Approach in Excel
# Fermentors: 1 Unit Cap: 200 Shelf Life: 20
Microbrewery Performance
W eek 0 1 2 3 4 5 6 7 8 9 10
# Fermentors Req'd 0 0 0 0 0 0 0 0 0 0
Feasible Loading?
Min # Fermentors Req'd 2 2 2 2 2 2 2 2 2 2
Fermentor Utilization 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Total Spoilage 0 0 0 0 0 0 0 0 0 0
Inventory Position:
IPi = max{IPi-1,0}+ SRi+BNRi -Di
(Material Balance Equation)
(IPi-1)+ Di
i
SRi+BNRi IPi
Net Requirement:
Microbrewery Performance
Week 0 1 2 3 4 5 6 7 8 9 10
# Fermentors Req'd 0 0 0 0 0 1 1 0 0 0
Feasible Loading?
Min # Fermentors Req'd 2 2 2 2 2 2 2 2 2 2
Fermentor Utilization 0% 0% 0% 0% 0% 100% 100% 0% 0% 0%
Total Spoilage 0 0 0 0 0 0 0 0 0 0
Microbrewery Performance
W eek 0 1 2 3 4 5 6 7 8 9 10
# Fermentors Req'd 0 1 1 1 0 1 2 1 1 0
Feasible Loading? NO
Min # Fermentors Req'd 2 2 2 2 2 2 2 2 2 2
Fermentor Utilization 0% 100% 100% 100% 0% 100% 200% 100% 100% 0%
Total Spoilage 0 0 0 0 0 0 0 0 0 0
Microbrewery Performance
Week 0 1 2 3 4 5 6 7 8 9 10
# Fermentors Req'd 0 1 1 1 1 1 1 1 1 0
Feasible Loading?
Min # Fermentors Req'd 2 2 2 2 2 2 2 2 2 2
Fermentor Utilization 0% 100% 100% 100% 100% 100% 100% 100% 100% 0%
Total Spoilage 0 0 0 0 0 0 0 0 0 0
Microbrewery Performance
Week 0 1 2 3 4 5 6 7 8 9 10
# Fermentors Req'd 1 1 1 1 0 0 0 0 0 0
Feasible Loading?
Min # Fermentors Req'd 2 2 2 2 2 2 2 2 2 2
Fermentor Utilization 100% 100% 100% 100% 0% 0% 0% 0% 0% 0%
Total Spoilage 0 0 0 0 0 0 0 0 0 0
Microbrewery Performance
Week 0 1 2 3 4 5 6 7 8 9 10
# Fermentors Req'd 1 1 1 1 1 0 1 1 1 0
Feasible Loading?
Min # Fermentors Req'd 2 2 2 2 2 2 2 2 2 2
Fermentor Utilization 100% 100% 100% 100% 100% 0% 100% 100% 100% 0%
Total Spoilage 0 0 0 0 0 0 45 0 0 5
Spoilage:
SPi = max{0, IPi-1-SRi-1+SRi-2+…+SRi-sl+1)
-BNRi-1+BNRi-2+…+BNRi-sl+1)}
Inventory Position:
IPi = max{IPi-1,0}+ SRi+BNRi -Di-SPi
(Material Balance Equation)
(IPi-1)+ Di
i
SPi
SRi+BNRi IPi
The Driving Logic behind the Empirical Approach
Lot Sizing
Planned
MPS
Order Releases
MRP
Current Priority
Availabilities Planning
Example: The (complete) MRP Explosion
Calculus
Item BOM:
Alpha Item Lead Time Current Inv. Pos.
Alpha 1 10
B 2 20
B(1) C(1) C 3 0
D 1 100
E 1 10
F 1 50
D(2) C(2) E(1) F(1)
Item Levels:
Level 0: Alpha Level 1: B Level 2: C, D Level 3: E, F
(borrowed from Heizer and Render)
The “MRP Explosion” Calculus
External Demand
Level 0
Initial
Inventories
Level 1
Capacity
Planning
Level 2
Scheduled
Receipts
Level N
Planned
Gross Requirements Order Releases
Computing the item Scheduled Releases
Item C
Period 1 2 3 4 5 6 7 8 9 10 11 12
Gross Requirements 12 10 90 75
Scheduled Receipts 20
Inventory Position: 20 20 40 40 40 40 28 18 18 -72 0 -75 0
Net Requirements 72 75
Planned Sched. Receipts 72 75
Planned Sched. Releases 72 75
100
50
1 2 3 4 5 6 7 8 Periods
Pegging and Bottom-up Replanning
(borrowed from Heizer and Render)
Shop floor-level
Production Control / Scheduling
General Problem Definition
J_2
J_1
W_1 W_2 W_i
W_q W_M
J_N
A modeling abstraction
• M: number of machine types / workstations.
• N: number of jobs to be scheduled.
• Job routing: an ordered list / sequence of machines that a job
needs to visit in order to be completed.
• Operation: a single processing step executed during the job
visit to a machine.
• P_j: the set of operations in the routing of job j.
• t_kj: the processing time for the k-th operation of job j.
• d_j: due date for job j.
• r_j: the release date of job j, i.e., the date at which the material
required for starting the job processing will be available.
Example
5 10 15 20 Time
Job 1 Job 2 Job 3 Job 4 Job 5
Performance-related job and schedule
attributes
• job completion time: C_j
• schedule makespan: max_j C_j
• job lateness: L_j = C_j - d_j (notice that, by definition, job lateness
can be either positive or negative - in which case that the job is
finished earlier than its due date)
• job tardiness: T_j = max (0, L_j) = [L_j]+
• job flow time: F_j =C_j - r_j (i.e., the amount of time the job
spends on the shop-floor)
• job tardy index: TI_j = 1 if job is tardy; 0 otherwise.
• Number of tardy jobs: NT
• job importance weight: w_j (the higher the weight, the more
important the job)
Performance Criteria
Job Attribute min total min weighted total min max min weighted max
Lateness S _j L_j S_j w_j*L_j max_j L_j max_j w_j*L_j
Tardiness S_j T_j S_j w_j*T_j max_j T_j max_j w_j*T_j
Flow time S_j F_j S_j w_j*F_j max_j F_j max_j w_j*F_j
Tardy index NT
Completion S_j C_j S_j w_j*C_j max_j C_j max_j w_j*C_j
Schedule Performance Evaluation
Total 88 88 -3 3 2
average 17.6 17.6 -0.6 0.6
max 20 20 2 2
Problem variations
• Based on job routing:
– job shop: each job has an arbitrary route
– flow shop: all jobs have the same route, but different operational processing times
– re-entrant flow shop: some machine(s) is visited more than once by the same job
– flexible job shop / flow shop: each operation has a number of machine alternatives for its
execution
• Based on the operational processing times:
– deterministic: the various processing times are known exactly
– stochastic: the processing times are known only in distribution
• Based on the possibility of pre-emption:
– pre-emptive: the execution of a job on a machine can be interrupted upon the arrival of a
new job
– non-preemptive: each machine must complete its currently running job before switching
to another one.
• Based on the considered performance objective(s)
Solution Approaches
• Analytical (Mixed Integer Programming) formulations:
Notoriously difficult to solve even for relatively small configurations
• Heuristics:
In the scheduling literature, the applied heuristics are known as
dispatching rules, and they determine the sequencing of the various jobs
waiting upon the different machines, based upon job attributes like
– the required processing times
– due dates
– priority weights
– slack times, defined as d_j - (current time + total remaining
processing time for job j)
– Critical ratios, defined as (d_j-current time)/rem. proc. time for job j
Assembly Line Balancing
Synchronous Transfer Lines: Examples
(Pictures borrowed from Heragu)
Balancing Synchronous Transfer Lines
• Given:
– a set of m tasks, each requiring a certain (nominal) processing time t_i,
and
– a set of precedence constraints regarding the execution of these m tasks,
• assign these tasks to a sequence of k workstations, in a way that
– the total amount of work assigned to each workstation does not exceed a
pre-defined cycle time c, (constraint I)
– the precedence constraints are observed, (constraint II)
– while the number of the employed workstations k is minimized.
(objective)
• Remark: The problem is hard to solve optimally, and quite often it
is addressed through heuristics.
Heuristics for Assembly Line Balancing