Transcript M1 1 2 3

Applications of Dynamic
Re-scheduling Methodologies
M1 1 2
M2
1
M3 3
M4
3
2
1
2
1
3
t
Gerry Kelleher and Abdennour el-Rhalibi
Introduction
Preparing predictive schedule is not enough.
• there are many events that require the revision of the predictive
schedule.
• a frequent comment in many scheduling contexts is that
scheduling is not a problem but rescheduling is
Terminology
• Rescheduling, process of updating an
existing production schedule in response
to disruptions
• Disruptions (Rescheduling Factors)
•
•
•
•
•
Machine Failure
Urgent Job Arrival
Job cancellation
Due date change
Operator
Absenteeism
•
•
•
•
Change in Job Priority
Delay in Arrival
Rework or Quality Problems
Over or under estimation of
processing times
Terminology
• Scheduling, creating production schedules and
• Rescheduling framework, consists of rescheduling
environment, rescheduling strategies,
rescheduling policy and rescheduling methods
Triggering Events
• The current schedule has become infeasible
• The current schedule is likely to fail based on
some performance measures
• Detection of opportunities to improve the
schedule while the current schedule is still acceptable
• Rescheduling is done with fixed frequency
Rescheduling Framework
Rescheduling Strategies (any environment with variability)
Dynamic (no schedule)
Dispatching rules Control-theoretic
Predictive-reactive (generate and update)
Rescheduling Policies)
Periodic
Event-driven
Hybrid
Rescheduling Methods (for predictive-reactive)
Schedule Generation
Nominal
Schedules
Robust
Schedules
Schedule Repair
Right-shift
Partial
Complete
Rescheduling Rescheduling Regeneration
Rescheduling Strategies
Dynamic Scheduling
• do not use scheduling policies, uses current
information to dispatch the jobs (eg FIFO, EDD,
SPT…)
• tradeoff utility, measure of improvement,
against stability, measure of nervousness
• three types of actions upon information arrival:
no move, repair and reschedule.
Dynamic Scheduling
• Utility, a measure of improvement such as,
decrease in total completion time
• Stability, a measure of nervousness, such as,
total change in start times and completion times
n
 min{  (| t
i 1
i
 ti ' |  | Ci  Ci ' |), Di }
• Utility & Stability vs. time of arrival information
and/or change in the current system
• Decide on repair or reschedule
Predictive-Reactive
Scheduling
• Evaluation step, generate a robust
schedule, evaluating the impact that a
disruption causes
• Solution step, determine rescheduling
solutions enhancing the current
performance
• Revision step, update the existing
schedule or generate a new one
Rescheduling Methods
Right shift rescheduling, postpones each
remaining operations
Partial rescheduling, schedules only
operations affected by the disruption
1. Matchup scheduling, reschedule all the jobs before a
matchup point
2. If point too large, use integer programming or
dispatching rules
Regeneration, reschedule the entire jobs
before the rescheduling point
PISCES
(Pipeline Intermodal System to Support Control Expedition and Scheduling)
IN-96-SC.1204
Partners:
Fraser Williams Logistics Ltd.
Van Ommeren Agencies Rotterdam BV
Liverpool John Moores University
PROJECT FUNDED BY THE EUROPEAN
COMMISSION UNDER THE TRANSPORT
RTD PROGRAMME OF THE
4TH FRAMEWORK PROGRAMME
PISCES and Logistics
Evolution
Fragmentation
1960s
Demand Forecasting
Purchasing
Requirements Planning
Production Planning
Manufacturing Inventory
Evolving Integration
1980s
Total Integration
2000s
Warehousing
Materials
Management
Warehousing
Materials Handling
Logistics
Industrial Packaging
Inventory
Distribution Planning
Order Processing
Transportation
Customer Service
Physical
Distribution
Transportation
PISCES
Pipeline Intermodal System to Support Control Expedition and Scheduling
Freight Forwarder
Global carrier
Bookings Cargo
receipts Packing
lists Shipping
advice
Pre advice of
container contents
Manufacturer
PISCES
Database
Customs
clearance
Customs
documentation
Cargo Manifests
Shipment Status
Check commodity
availability/location
PO
Accept shipments
into inventory
Delivery Details
Wholesaler/Retailer
Distribution Centre
Transportation
Pipeline Intermodal System to Support Control Expedition and Scheduling
VELOCITY CRITICAL PATH
EQUIPMENT
SERVICES/
INFORMATION
EVENTS
•Speed of information transfer related to need
•Neutral database to maintain relationships
•No need to publicise actual parties or cargo details
•Integrate info/services/equipment to flex critical path
•Provide adaptive algorithms for scheduling/optimisation
•Focus on ‘operational’ milestones
•Easy access via Internet
Support to Logistics Management Decisions
STRATEGIC
Location Choice
Transport Mode Selection
Vendor Choice
TACTICAL
Throughput levels
Employment levels
Distribution routes
Uncertainty
Time
frame
Scope
OPERATIONAL
Vehicle scheduling Order
tracking
Inventory
replenishment
: Client
: Depot
Figure 1: The Vehicle Routing Problem
Container
Transport
Delivery
Empty
Running
Delivery
DEPOT
CUSTOMER
Delivery
Positioning
Collection
Delivery
PORT
Collection
Delivery
CUSTOMER
DEPOT
Collection
CUSTOMER
Positioning
Container
Transport
Delivery
Empty
Running
Delivery
DEPOT
CUSTOMER
Delivery
Positioning
PORT
1
Delivery
CUSTOMER
Collection
6
Collection
4
Collection
3
Empty
5
CUSTOMER
DEPOT
Collection
2 Delivery
Positioning
Rotterdam
Amsterdam
Antwerp
Hannover
Cologne
Trier
Duisberg
Bonn
Dortmund
Metz
Munich
Strasbourg
Stuttgart
Basel
Transport
Scheduling
Rotterdam
Amsterdam
Antwerp
Hannover
Cologne
Trier
Duisberg
Bonn
Dortmund
Metz
Munich
Strasbourg
Stuttgart
Basel
Transport
Scheduling
Transport
Scheduling
Constraints on
Length/Duration
of Tour
Time Window
Pickup and
Delivery
CONTAINERS
TRANSPORT
Dynamic
Changes
Multiple Types
TRIANGULATION:
of Vehicles
CONSTRAINTS
Capacited
Vehicles
Containers/Goods
Compatibility
Multiple
Ports/Depots
Intermodality
Transport
Scheduling
Empty
Running
Total Traveled
Distance
Cost
SCHEDULING
Maximise
Length of
Triangulated
Legs
Maximise Use
of Intermodal
Alternative:
Barge/Train
Optimisation
Criteria
RESCHEDULING
Minimise Changes
from the Initial
Routing
Minimise Delays
Minimise
Introduction of
New Resources
Design of a Software Package to Produce Routing
Scheduler
• Application to the Triangulation Problem, for the
Transport of Containers.
• Application to Classical Vehicle Routing Problems.
We take advantage of two techniques by using an hybrid
approach:
1
a CSP program to compute feasible solutions on a subspace
of the search space.
2
a GA to explore the space formed by the solutions provided
by the CSP, and perform the optimisation
Routing Scheduler
Optimisation
Module
Selection
CSP Solver
Feasible solutions
Parent
Infeasible solutions
Population
Repaired solutions
Offspring
Forward Checking/
Orderings
Replacement
Constraint Satisfaction and Genetic Algorithm
Recombination
Mutation
CSP Generator
Variables Domains Constraints
Reasoning
Module
CONSIGNMENT
DATABASE
MANAGEMENT PROGRAMS
T r ia n g u l
a te d
T ran sp o
rt
R e q u e sts
C u rren t
T o ta l
D is ta n c e
D is ta n c e
w ith
T r ia n g u l
a tio n
C u rren t
E m p ty
R u n n in g
E m p ty
R u n n in g
w ith
T r ia n g u l
a tio n
Im p rove
d L evel
of
E m p ty
R u n n in g
Im p rove
d
D is ta n c e
p e r fo r m
an ce
R 1 -R 4 0
R 3 -R 4 3
R 4 -R 8 8
R 5 -R 9 0
R 7 -R 6 4
R 1 0 -R 6 2
R 1 4 -R 4 7
R 1 5 -R 7 4
R 1 6 -R 2 6
R 1 7 -R 5 4
R 1 9 -R 5 8
R 2 1 -R 8 1
20
1332
1248
612
656
358
854
696
228
704
178
206
20
1104
778
319
529
352
700
400
210
693
132
140
10
666
624
306
328
179
427
348
112
352
132
140
10
438
154
13
201
173
273
52
96
341
54
74
0 .0 0 %
-1 7 .1 1 %
-3 7 .6 6 %
-4 7 .8 7 %
-1 9 .3 5 %
-9 .2 1 %
-1 8 .0 3 %
-4 2 .5 2 %
-7 .8 9 %
-1 .5 6 %
-2 5 .8 4 %
-2 4 .7 3 %
R
R
R
R
R
R
R
R
R
R
R
770
500
482
708
1162
520
184
28
1404
460
148
522
314
374
458
1061
398
156
14
1276
446
148
385
250
241
354
581
260
92
14
702
230
74
137
64
133
104
480
138
64
0
574
216
74
5 0 .0 0 %
3 9 .6 7 %
1 9 .7 9 %
4 .0 7 %
3 7 .9 %
4 9 .1 4 %
3 9 .0 0 %
1 3 .0 0 %
4 5 .7 1 %
4 9 .2 0 %
4 0 .0 9 %
67% 52%
2 6 .2 4 %
2 0 .3 8 %
3 5 .3 5 %
2 2 .7 0 %
4 5 .2 4 %
3 4 .6 7 %
4 1 .0 2 %
0 .0 0 %
4 4 .9 %
4 8 .4 3 %
5 0 .0 0 %
13438
10544
6807
3863
3 6 .6 6 %
-2 1 .5 3 %
2
2
3
3
3
3
4
4
5
5
8
5
7
2
4
5
6
2
4
0
2
0
-R
-R
-R
-R
-R
-R
-R
-R
-R
-R
-R
3
6
4
7
7
3
7
6
7
8
9
T o ta l
7
3
6
1
0
8
2
9
9
6
3
-3 2 .2 0 %
-3 7 .2 0 %
-2 2 .4 0 %
-3 5 .3 1 %
-8 .6 9 %
-2 3 .4 6 %
-1 5 .2 1 %
-5 0 .0 0 %
-9 .1 1 %
-3 .0 4 %
0 .0 0 %
Triangulation of Containers Transport
Performance on Van
Ommeren’s Problems
Tyre Manufacturing (Pirelli)
• Problem - add rescheduling capability to an existing
system - BIS (Banbury Information System
• Scheduling of the Banbury Area is a job-shop
scheduling task input to the system is a production plan
containing customers and production orders (denoted
requirements – typically ~50 per day).
• Scheduling horizon varies with the due-date of the
orders, ( typically ~2 days).
Scheduling difficult, complex in itself but also
requires reaction in real-time to change:
•small revisions because of short stops of machines.
•major revisions because of breakdown
•customer order changes
•feedback from quality control on finished tyres
•breakdowns in semi-manufacturing, building and
curing areas.
The objectives to be optimised include:
1. Minimise the tardiness of the requirements
2. Keep stock-levels within a defined
minimum/maximum
3. Optimise the standing times of compounds
4. Maximise machine utilisation
5. Minimise set-up-time for the machines
6. Use prioritised machines
Cause
Typical
frequency
(times/week)
Typical
Duration
(hours)
Banbury breakdown
1-2
2-8
Banbury stoppages
<1
1 - 24
Rework
Lack of raw-material
Change in requirements
~3
sometimes
seldom
Table 1 Causes of Rescheduling
•
HCI
Explanation
Generator
Reason
Maintenance
RMS DB
Schedule
Evalutor
Manual
Reviser
DB HCI
Manufacturing
Environment
Communication
System DB
Scheduler and
Re-scheduler
System Architecture Schematic
Rescheduling Time
DAY 1
Shift1
Shift2
DAY 2
Shift3
Shift1
Zone 2
Zone 3
Shift2
Shift3
Reaction Time
Dosage Time
Dosage Horizon
Zone 1
Time Zones for Rescheduling
Zone 4
Disruption
Weight
max
Zone 1
Zone 2
Zone 3
Zone 4
time
Disruption Function Weighting
Evaluation criteria
BIS
TRIS
prototype
TRIS
final prototype
Number of real time changes to
schedule
Number of re-scheduling
2-3 per day
1-2 per day
< 1 per day
Not
available
< 1 per day
1-2 per week
“Out of stock” (per day)
Not
available
< 1 per day
Stock levels (total batches)
1300 -1450
1200 -1300
< 1000
Lateness
3-4 per day
1-2 per day
< 1 per day
Use of highest priority machine
93 %
93 %
94-95 %
Machine saturation
Lead time factor
WIP
Standing time
90 %
80 %
~ 100
1-4 hours
94 %
90 %
~ 100
1-4 hours
93-97 %
> 90 %
~ 100
1-4 hours
Average set-up
~ 5 mins
~ 5 mins
~ 3-4 mins
Preparation of data
2-3 hours
30-40 mins
30-40 mins
Manual revision of the schedule
2 hours
2 hours
30 mins
< 1 per day
Legacy System
Build Original Schedule
Need for Rescheduling
Build Minimal Constraint Model
Autonomous Rescheduling
(automatic dependency analysyis)
Manual Rescheduling
(HCI based dependency analysyis)
Build New Working Context
(input solution creating dependency model)
Add on Rescheduling
Notes and Conclusion
• Cost of rescheduling policies depends on
frequency of rescheduling
• Implementation of rescheduling policy
depends on information acquisition
• More research on the interaction of
rescheduling policies with other
production planning decisions is needed
Size of Disruption
This refers to the duration for which the schedule is
subject to disruptions, such as machine breakdown.
This expressed as a percentage of the initial’s
schedule makespan.
Incidence of the disruption
This refers to the time of occurrence of the
disruption, which can occur either early or late in the
schedule.
Size of the Schedule
This refers to the size of the scheduling problem, and
is expressed as the number of job operations present
in the initial schedule.
Schedule Structure
This refers to the tightness of the schedule, as it
shows in the Gantt chart. We can also estimate it by
considering the difference of values the utility
function (e.g. makespan) of the worst and best
solution found by CSP/GA
5/23/2016
Rescheduling
36
Disruption Dimension
Machine
Breakdown
Problem
Category (PC1)
1
Small
1-5% of Makespan
Large 6-10% of
Makespan
Process time
Change
Small
1-5% of Makespan
Large 6-10% of
Makespan
Urgent Job
Process Time
about
1-5% of Makespan
Process Time
about
1-5% of Makespan
Incidence of disruptions
Early
5-55% of
Makespan
Late
60%-90% of
Makespan
Schedule size
Small
<200 operations
(about 10 jobs)
Schedule structure
Tight (<100) /
Loose(>100)
Large
200-300
operations
(about 20 jobs)
Tight (<100) /
Loose(>100)
Size of
disruption
Problem
Category (PC2) 2
Problem Instance
name
orb1
orb2
Size of Problems
Size of Schedule
Incidence of Disruptions
Size of Disruptions
10x10
10x10
PC1
PC1
Early (5-55%)
Late (60%-90)
Small (1%-5%)
Large(6%-10%)
orb3
10x10
PC1
Early (5-55%)
Large(6%-10%)
orb4
orb5
abz5
10x10
10x10
10x10
PC1
PC1
PC1
Late (60%-90)
Early (5-55%)
Late (60%-90)
Small(1%-5%)
Small(1%-5%)
Large(6%-10%)
abz6
10x10
PC1
Early (5-55%)
Large(6%-10%)
abz7
ab8
abz9
20x15
20x15
20x15
PC2
PC2
PC2
Late (60%-90)
Early (5-55%)
Late (60%-90)
Small(1%-5%)
Small(1%-5%)
Large(6%-10%)
la19
10x10
PC1
Early (5-55%)
Large(6%-10%)
la20
la21
la24
10x10
15x10
15x10
PC1
PC1
PC1
Late (60%-90)
Early (5-55%)
Late (60%-90)
Small(1%-5%)
Small(1%-5%)
Large(6%-10%)
la25
20x10
PC2
Early (5-55%)
Large(6%-10%)
la27
la29
la36
20x10
20x10
15x15
PC2
PC2
PC2
Late (60%-90)
Early (5-55%)
Late (60%-90)
Small(1%-5%)
Small (1%-5%)
Large(6%-10%)
la38
15x15
PC2
Early (5-55%)
Large(6%-10%)
la39
la40
15x15
15x15
PC2
PC2
Late (60%-90)
Early (5-55%)
Small (1%-5%)
Small (1%-5%)
Efficiency defined as the percentage change in makespan of
the repaired schedule compared to the preschedule
  {1  M
new
M0
M
} *100
0
where,
 = Efficiency
Mnew = Makespan of the rescheduled schedule
Mo = Makespan of the preschedule
Stability is the absolute sum of difference in starting times of the
job operations between the initial and the rescheduled schedules.
It is then normalized as a ratio of total number of operations in
the schedule. A schedule will be stable if it deviates minimally
from the preschedule.
  S
k
 
pj
j 1 i 1
*
ji
S
ji

k
P
j
j 1
where,
 = Normalized deviation.
pj = number of operations of job j.
k = number of jobs.
Sji* = Starting time of ith operation of job j in repaired schedule.
Sji = Starting time of ith operation of job j in original schedule.
Problem
Description
RSR
Efficiency
%
AOR
Efficiency
%
CSP/GA
Efficiency
%
RSR
Stability
%
AOR
Stability
%
CSP/GA
Stability
%
orb110x10
PC1/ Early
/Small/tight
96-97%
97-100
91-98%
8-11%
1-3%
1-4%
orb210x10
PC1/Late /
Large/loose
88-94%
95-96%
94-99%
4-9%
1-2%
1%
orb310x10
PC1/Early/
Large/tight
84-89%
92-97%
97-98%
11-17%
4-9%
10-13%
orb410x10
PC1/Late /
Small/tight
95%
95-100%
98-99%
2-3%
1-2%
2%
Orb510x10
PC1/Early /
Small/tight
94-99%
100%
97-98%
7-9%
3
4-6%
abz510x10
PC1/Late /
Large/loose
92-93%
96-97%
93%
33-38%
17-25%
11-29%
Abz610x10
PC1/Early /
Large/loose
59-70%
72-79%
81-82%
43-68%
12-19%
26%
abz720x15
PC2/Late/
Small/tight
94%
99%
96-97%
3-6%
1-2%
4%
ab820x15
PC2/Early
Small/tight
91-93%
93-98%
91%
18-19%
9-13%
14%
Abz920x15
PC2/Late /
Large/tight
83-92%
91-94%
87-98%
43-45%
21%
17-23%
Problem
Description
RSR
Efficiency
%
AOR
Efficiency
%
CSP/GA
Efficiency
%
RSR
Stability
%
AOR
Stability
%
CSP/GA
Stability
%
la1910x10
PC1/Early
Large/loose
82-87%
86-93%
84-85%
71-75%
34-35%
24-37%
la2010x10
PC1/Late /
Small/tight
92-97%
92-98%
93%
5-7%
2-3%
2-4%
la2115x10
PC1/Early /
Small/tight
83-90%
96-98%
94-97%
10-14%
2-7%
5-9%
la2415x10
PC1/Late /
Large/tight
88-89%
91-96%
95%
14-17%
9-13%
11%
la2520x10
PC2/Early /
Large/tight
78-84%
80%
82-87%
37-48%
17-38%
45-47%
la2720x10
PC2/Late/
Small/tight
92-97%
94-98%
92%
9-15%
3-6%
11%
la2920x10
PC2/Early /
Small/tight
73-74%
80-88%
79-83%
25-29%
19-23%
26-27%
la3615x15
PC2/Late /
Large/loose
63-89%
75-89%
84-86%
31-45%
13-27%
22-29%
la3815x15
PC2/Early /
Large/tight
56-63%
68-75%
77%
67-71%
19-24%
32%
la3915x15
PC2/Late /
Small /tight
69-70%
79-83%
77-80%
33-38%
9-14%
19-26%
la4015x15
PC2/Early /
Small/tight
67-71%
80-85%
87%
28-36%
11-17%
9%
importance
optimisation criteria
t0
Disruption
incidents(s)
Time/number of actions