Title: On the Boundary of Planning and Scheduling: A Study
1On the Boundary of Planning and Scheduling A
Study
- Roman Barták
- Charles University, Prague
- bartak_at_kti.mff.cuni.cz
2Problem area
- complex production environments
- plastic, petrochemical, chemical, pharmaceutical
industries - several different resources
- producers, movers, stores
- batch/serial processing with time windows
- transition patterns (set-up times)
- by-products, co-products (re-cycling)
- non-ordered production (for store)
- alternatives
- processing routes, production formulas, raw
material
3Problem area - example objectives
- complex production environment
- Task
- preparing a schedule for a given time period(not
minimising the makespan) - objective
- maximising the profit (minimising the cost)
silo
order
processor B1
silo
purchase
processor A
sacks warehouse
processor B2
order
4Constraint Programming (CP)
- Declarative problem solving
- stating constraints about the problem variables
- a set of variables Xx1,,xn
- variables domains Di (usually finite set of
possible values) - a set of constraints (constraint is a relation
among several unknowns) - finding a solution satisfying all (most) the
constraints - systematic search with consistency techniques
constraint propagation - stochastic and heuristic methods (local search)
5CP - Advantages Limitations
- Advantages
- declarative modelling
- transparent representation of real-life problems
- easy introduction of heuristics
- co-operative solving
- integration of solving methods from different
areas (OR, AI ) - semantic foundation
- amazingly clean and elegant languages
- Weaknesses
- NP-hard problems tractability
- unpredictable behaviour
- model instability
6Planning and Scheduling - Traditional View
- Planning
- finding a sequence of activities transferring the
initial world into a required state - AI CP
- uses schedulers constraints(otherwise too
tighten or too relaxed plans)
- Scheduling
- allocating the activities to available resources
over time respecting the constraints - OR CP
- all activities are know in advance
PLANNER
SCHEDULER
Plan a list of activities
Schedule allocated activities
7Planning and Scheduling in Industry
- not strictly distinguished
- different discrimination criteria (time horizon
resolution) - marketing planning
- what and when should be produced
- not planning in AI terminology
- production planning
- generation of activities
- allocation to departments
- production scheduling
- exact allocation of activitiesto machines over
time - sometimes new activities introduced
Marketing plan
Production plan
Schedule
8Separate Planning and Scheduling
- Co-operation between planner and scheduler
- too tighten plans (impossible to schedule)
- too free plans (less profitable schedule)
- backtrack from the scheduler to the planner
- Activity generation
- what if appearance of the activity depends on the
allocation of other activities? - alternatives
- transition patterns (set-ups)
- processing of by-products
- non-ordered production
9Mixing Planning and Scheduling
- A scheduler with planning capabilities
- generating activities during scheduling
PRODUCTION SCHEDULER
MARKETING PLANNING
Schedule - what activities are necessary to
satisfy the marketing plan - how the activities
are allocated to the resources over time
ACTIVITY GENERATOR
Marketing Plan what should be produced (custom
orders plus expected stock)
Activity
Values for parameters
ACTIVITY ALLOCATOR
10Conceptual models
- Expressiveness
- What could be modelled? (problem area)
- What is easy/hard to express? (constraints)
11Constraint classification in scheduling
- resource constraints
- resource limits in given time point
- capacity, compatibility
- transition constraints
- activity transitions in single resource
- set-ups
- dependency constraints
- dependencies between different resources
- supplier-consumer relation
12Time-line model
- a discrete time line with time slices
- description of situation at each time point/slice
- planning and scheduling - no difference
- a variable for activity in the description of
time point/slice - comments
- covers all the typical problems in complex
production environments - all the variables are known in advance
- too many variables in large-scale industrial
problems
13Order-centric model
- a chain of activities per order (task)
- description of the activity
- start, end (duration), resource
- enhancement
- activities in the production chain are generated
during scheduling starting from the order
(alternatives, set-ups) - sharing activities between production chains
(by-products)
14How to model? (in order-centric model)
- alternatives
- pre-processing (chosen by the planner)
- alternative activities in slots
- set-ups
- set-up slot is either empty or contains the
set-up activity (depending on the allocation of
the next activity) - by-products (re-cycling)
- sharing activities between the production chains
- non-ordered production
- pre-processing (non-ordered production is planned
in advance - before the scheduling)
15Resource-centric model
- a sequence of activities per resource
- what the resource can process rather than how
to satisfy the order - description of the activity
- start, end (duration), quantities, state,
suppliers, consumers - representation
- a list of virtual activities
- transition constraints between successive
activities
16Comparison of models
17Whats next?
- ad-hoc implementation
- dynamic constraints
- propagation (early detection of inconsistencies)
- labelling (incremental)
- heuristics (choice of alternatives)
- theoretical foundation
- structural constraint satisfaction (A. Nareyek)
- parallelism
- agent based scheduling