Constraint Programming in Operations Management Filippo Focacci ILOG

  • Slides: 22
Download presentation
Constraint Programming in Operations Management Filippo Focacci – ILOG S. A.

Constraint Programming in Operations Management Filippo Focacci – ILOG S. A.

Agenda • Constraint-Based Scheduling • Concepts • Constraints • Plant Power. Ops: an industrial

Agenda • Constraint-Based Scheduling • Concepts • Constraints • Plant Power. Ops: an industrial application of CP • Introduction • Architecture • Hybrid approach for Integrating planning and scheduling • Integrate business rules in optimization • Demo 2

Constraint-Based Scheduling Introduction • Constraint-Based Scheduling = Scheduling + Constraint Programming • Scheduling problems

Constraint-Based Scheduling Introduction • Constraint-Based Scheduling = Scheduling + Constraint Programming • Scheduling problems arise in situations where • A set of activities has to be processed • By a limited number of resources • In a limited amount of time 3

Constraint-Based Scheduling Activities • Non-Preemptive (Interval) Activities Activity A t Start time: s(A) End

Constraint-Based Scheduling Activities • Non-Preemptive (Interval) Activities Activity A t Start time: s(A) End time: e(A) Processing time: p(A) = e(A) - s(A) 4

Constraint-Based Scheduling Activities • Breakable Activities • Preemption at fixed dates (break calendar) Activity

Constraint-Based Scheduling Activities • Breakable Activities • Preemption at fixed dates (break calendar) Activity A p 1. . . pi t M T W T F S SM T W T Processing time: p(A) = pi = e(A)-s(A) - breaks(A) 5

Constraint-Based Scheduling Resources • Unary • One person, machine, etc. • Discrete • A

Constraint-Based Scheduling Resources • Unary • One person, machine, etc. • Discrete • A group of people with the same capabilities • Energy • A limited number of human-days each week • Reservoir • A stock of raw materials or intermediate products • State • An oven with different possible temperatures 6

Constraint-Based Scheduling Constraints • Temporal constraints • Fixed or variable durations • Precedence constraints

Constraint-Based Scheduling Constraints • Temporal constraints • Fixed or variable durations • Precedence constraints • Minimal and maximal delays • Resource constraints • Fixed capacity • Variable capacity (time versus capacity tradeoffs) • Variable capacity over time 7

Constraint-Based Scheduling Constraints • Calendar Constraints • Time intervals during which a resource is

Constraint-Based Scheduling Constraints • Calendar Constraints • Time intervals during which a resource is not fully available • e. g. , maintenance periods, vacations, forbidden states (at night) • Transition Times • Minimal time required between two activities when in a certain order • e. g. , tool setup between two tasks on the same machine, state change (oven temperature or color used in a painting shop), cleaning, etc. 8

Constraint-Based Scheduling Objective Functions • Examples: • Makespan (max end time) • Sum/max tardiness

Constraint-Based Scheduling Objective Functions • Examples: • Makespan (max end time) • Sum/max tardiness or earliness • Weighted # of activities • Peak resource usage • Transition times/costs • Weighted # of resources • All possible combinations of the above 9

Constraint-Based Scheduling Resource Constraint Propagation • Several types of global constraints • All make

Constraint-Based Scheduling Resource Constraint Propagation • Several types of global constraints • All make sure the capacity of the resource is not exceeded at any point • Differ in the strength of the propagation they induce: q Explicit timetables Disjunctive constraint q Edge-finding Energetic reasoning q Balance constraint 10

Constraint-Based Scheduling Resource Constraint Propagation • In general, more propagation = more effort •

Constraint-Based Scheduling Resource Constraint Propagation • In general, more propagation = more effort • The best propagation algorithm depends • On the application • On the resources within a given application (number of activities, resource criticality, …) 11

Constraint-Based Scheduling Timetables • Identify activities A for which eet(A) > lst(A) • Between

Constraint-Based Scheduling Timetables • Identify activities A for which eet(A) > lst(A) • Between lst(A) and eet(A) we know A will be executed 12

Constraint-Based Scheduling Timetables q Q Aggregated necessary demand QMAX t 13

Constraint-Based Scheduling Timetables q Q Aggregated necessary demand QMAX t 13

Constraint-Based Scheduling Edge-Finding B p=4 6 C p=5 7 16 15 A A p=2

Constraint-Based Scheduling Edge-Finding B p=4 6 C p=5 7 16 15 A A p=2 C p=5 15 7 4 6 16 16 4 7 14

Constraint-Based Scheduling Edge-Finding: Unary Resources • Basic Concept • Prove that an activity A

Constraint-Based Scheduling Edge-Finding: Unary Resources • Basic Concept • Prove that an activity A executes before (or after) a set of other activities W. • Jackson's Preemptive Schedule [Pinson 88] [Carlier & Pinson 90/94] • O(n 2) O(n*log(n)) • Iterative algorithm [Nuijten 94] [Martin 96] • O(n 2) with no specific data structure • Task intervals [Caseau & Laburthe 94] • O(n 3) • Incremental 15

Plant Power. Ops Problem Description • Manufacturing planning and scheduling requirements • Continuous production

Plant Power. Ops Problem Description • Manufacturing planning and scheduling requirements • Continuous production • Determine how to adjust to demand by varying output • Production with co-products and by-products • Determine how to adapt to demand by adjusting the product mix • Campaign and batch production • Determine how to meet demand by determining the length of campaigns, while avoiding costly setups • Industry specific complex constraints • Complex setups, trimming, business policies • Planning and scheduling horizons • Short term – hours to days – re-scheduling and connection with MES • Medium term – days to weeks – integrated planning and scheduling • Long term – weeks to months – planning, what-if analysis 16

Plant Power. Ops Architecture Graphical Planning Board Maintenance & Configuration GUI Planning Plant Floor

Plant Power. Ops Architecture Graphical Planning Board Maintenance & Configuration GUI Planning Plant Floor Engine Parameters Metadata Business Models Middleware • Optimization Development Framework (ODF) from ILOG and SAP • Optimization Extension Kit (OEK) from ILOG and Oracle ODF Reader Planning/IT IT Optimization Algorithms Data Model CSV Reader ODF Writer CSV Writer 17

Plant Power. Ops GUI: Organization Solution Area Problem View Scenario Management Data and Weights

Plant Power. Ops GUI: Organization Solution Area Problem View Scenario Management Data and Weights Rule Explorer Console 18

Plant Power. Ops Key features • Integrate planning and scheduling • Hybrid CP /

Plant Power. Ops Key features • Integrate planning and scheduling • Hybrid CP / MIP • Use business rules to configure and maintain the optimization • Modify the model parameters and data • Add constraints 19

ILOG Plant Power. Ops Integrate Planning and Scheduling Planning engine Data model Planning solution

ILOG Plant Power. Ops Integrate Planning and Scheduling Planning engine Data model Planning solution Lot-sizing engine Scheduling Engine Lot-sizing solution Scheduling solution 20

Prepare the Production Schedule Define a rule-based scenario • Activate or deactivate rules and

Prepare the Production Schedule Define a rule-based scenario • Activate or deactivate rules and alerts for the current planning or rescheduling scenario 21

Add/Modify Business Policies Define policy rules upon events • Modify the safety stock policy

Add/Modify Business Policies Define policy rules upon events • Modify the safety stock policy during machine breakdown 22