COSYTEC COS C Complex Systems Technologies Complex Systems - - PowerPoint PPT Presentation

cosytec cos c
SMART_READER_LITE
LIVE PREVIEW

COSYTEC COS C Complex Systems Technologies Complex Systems - - PowerPoint PPT Presentation

COSYTEC COS C Complex Systems Technologies Complex Systems Technologies A Problem Classification Scheme - When to use CLP Helmut Simonis COSYTEC SA COSYTEC SA (c) 1996 COSYTEC SA class96hs/ 1 COSYTEC COS C Complex Systems Technologies


slide-1
SLIDE 1

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

A Problem Classification Scheme - When to use CLP

Helmut Simonis COSYTEC SA COSYTEC SA

class96hs/ 1 (c) 1996 COSYTEC SA

slide-2
SLIDE 2

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Overview

Part 1

– What is Constraint Logic Programming (CLP) ? – Competing techniques

Part 2

– Problem classification scheme

Part 3

– Problem failures – Modeling checklist – Comparison studies What really works – What really works

class96hs/ 2 (c) 1996 COSYTEC SA

slide-3
SLIDE 3

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

What we discuss

Overview of application domains Comprehensive study of industrial usage

– large scale applications – prototypes, studies

Common characteristics of applications Reasons for success/failure

class96hs/ 3 (c) 1996 COSYTEC SA

slide-4
SLIDE 4

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

What we don’t discuss

How to solve problems Cost/benefit studies Software engineering studies

g g

Integration issues Tool selection

class96hs/ 4 (c) 1996 COSYTEC SA

slide-5
SLIDE 5

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Approach

Look what has been done

  • verview of applications and studies using CLP

– centered on COSYTEC/ECRC experience – results from competing systems may not be up to date

Find common points

– group applications according to application characteristics

T t l i ff t

Try to explain effects

– based on CHIP; results with other tools may be different

Group success/failure

personal view – personal view – new techniques/studies may change this

class96hs/ 5 (c) 1996 COSYTEC SA

slide-6
SLIDE 6

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Part 1 Part 1 Constraint logic programming

class96hs/ 6 (c) 1996 COSYTEC SA

slide-7
SLIDE 7

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Constraint system structure

Constraints Incomplete solver Complete solver Boolean Constraint l Control Boolean Finite domains Rational Domain concept Others Others Interval semantic Branch and bound Heuristics solver Control Domain concept semantic syntactic Value selection Variable selection numerical symbolic

class96hs/ 7 (c) 1996 COSYTEC SA

element disequality inequality equality cumulative diffn cycle among

slide-8
SLIDE 8

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Computation domains

Finite domains Linear arithmetic Boolean Intervals Pseudo Boolean Non-linear arithmetic Sets, sequences, lists

class96hs/ 8 (c) 1996 COSYTEC SA

slide-9
SLIDE 9

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Incomplete finite domain solver

Domain

– finite sets of values – subsets of natural numbers

Need for enumeration Classification criteria

– constraint granularity – richness of constraint sets – propagation results – user definable constraints/control

Methods Methods

– explicit domain representation – bound propagation/ removal of interior values – heuristics based on domains

class96hs/ 9 (c) 1996 COSYTEC SA

eu st cs based o do a s

slide-10
SLIDE 10

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Domain concept

Domain variables

– subset of natural numbers

Variable assignment

– indomain, non-deterministic instantiation

Search and backtracking

labeling([]). l b li ([H|T]) labeling([H|T]):- indomain(H), labeling(T).

class96hs/ 10 (c) 1996 COSYTEC SA

g( )

slide-11
SLIDE 11

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Syntactic propagation methods

Forward checking

– wait until only one variable is left in constraint – remove inconsistent values

X \= Y

Lookahead

– for each variable and each value check if consistent values exist – remove inconsistent values t h t i t h – repeat whenever constraints change

Partial lookahead

– bound propagation

X > Y

class96hs/ 11 (c) 1996 COSYTEC SA

slide-12
SLIDE 12

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Bound propagation: Linear terms

a X a X a X c bY b Y b Y d

n n m m 1 1 2 2 1 1 1 2 2 1

+ + + + = + + + + ... ...

[X Y Z]:: 1 10

bY b Y b Y d

m m r r 1 1 2 2 1

+ + + + ∈ ... min ,max a X a X a X c

n n l l 1 1 2 2 1

+ + + + ∈ ... min ,max

[X, Y, Z]:: 1..10, 2*X + 3*Y + 3 #= Z

min max(min ,min ) max min(max ,max ) = =

l r l r

X in {1,2} Y = 1 Z in {8,9,10}

class96hs/ 12 (c) 1996 COSYTEC SA

{ , , }

slide-13
SLIDE 13

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Symbolic constraints

Disequality

– X is different from Y

Alldifferent

– all elements in list are pair-wise different – more compact than single disequality, but no better propagation – pigeon hole principle -> need for stronger propagation

El t

Element

– element(X,L,Y)

  • Y is the Xth element of the list L
  • works in both directions
  • class96hs/ 13

(c) 1996 COSYTEC SA

slide-14
SLIDE 14

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Global constraints

Work on sets of variables

– global conditions, not local constraints

Semantic methods

– Operations Research – spatial algorithms – graph theory t k fl – network flows

Building blocks (high-level constraint primitives)

– as general as possible multi purpose – multi-purpose – very strong propagation (within acceptable algorithmic complexity)

class96hs/ 14 (c) 1996 COSYTEC SA

slide-15
SLIDE 15

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The Cumulative global constraint

l ti cumulative

Cumulative constraint

– Resource limits over periods of time – Upper/lower limits Soft/hard limits – Soft/hard limits – Gradual constraint relaxation

Application

– Resource restrictive scheduling producer consumer constraints

class96hs/ 15 (c) 1996 COSYTEC SA

Resource restrictive scheduling, producer consumer constraints, disjunctive schedule, manpower constraints, overtime

slide-16
SLIDE 16

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The Diffn global constraint

diffn

Diffn constraint

– non overlapping areas on n-dimensional rectangles – distances between rectangles – limit use of areas

Application

– layout, packing, resource assignment, setup, distribution l i ti t bli

class96hs/ 16 (c) 1996 COSYTEC SA

planning, time-tabling

slide-17
SLIDE 17

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The Cycle global constraint

cycle

Cycle constraint

– Finds cycles in directed graphs with minimal cost – Assign resources, find compatible start dates

Applications

– Tour planning, personnel rotation, distribution problems, d ti i

class96hs/ 17 (c) 1996 COSYTEC SA

production sequencing

slide-18
SLIDE 18

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The Among global constraint

among

1 of 3 2 f 5 2 of 5 1 of 6

  • Among constraint

– How often do values occur in (sub)sequences – based on counting arguments g g – interaction between sequences

  • Applications

– production sequencing, time tabling, coloring problems, set covering

class96hs/ 18 (c) 1996 COSYTEC SA

slide-19
SLIDE 19

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The Precedence global constraint

precedence

  • Precedence constraint

– Combine resource constraints and precedence networks – Reasoning on latency (position in network) g y (p ) – Co-operation between multiple resources

  • Applications

– resource restricted scheduling, channel routing, frequency allocation

class96hs/ 19 (c) 1996 COSYTEC SA

slide-20
SLIDE 20

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The Sequence global constraint

sequence

<= 40 hours 2 d ff 2 days off

after day with more than 10 hours, next day must have less than 8 hours

  • Sequence constraint

– constraints on pattern inside sequences – combinatorial pattern matching p g – counting arguments

  • Applications

– Time tabling, personnel assignment, work rules scheduling with daily working time limits

class96hs/ 20 (c) 1996 COSYTEC SA

– work rules, scheduling with daily working time limits

slide-21
SLIDE 21

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

The power of global constraints

cycle plan cumulative plan diffn schedule

Multi-functional tools Building blocks

i

class96hs/ 21 (c) 1996 COSYTEC SA

assign

slide-22
SLIDE 22

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Constraint morphology

diffn cumulative sequence cycle case precedence diffn cumulative sequence among cycle case alldifferent setup disjunctive prod/cons permutation Different Dependency Tour Resource Order \= >=, distance atmost, atleast circuit element

class96hs/ 22 (c) 1996 COSYTEC SA

Different Dependency Tour Resource Order

slide-23
SLIDE 23

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Competing techniques

Linear/integer programming Heuristic algorithms Decomposition methods

p

Neighborhood search

– simulated annealing – tabu search – genetic algorithms

Relaxation methods

class96hs/ 23 (c) 1996 COSYTEC SA

slide-24
SLIDE 24

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Linear/integer programming

Express problems with linear equalities/inequalities Additions required to handle

– disequality – disjunction

Solve constraint systems with Simplex method

– other methods exist – very well developed tool kits

Some systems include simple modelling languages

– generate model from data

S

h f i t l ti

Search for integer solutions

– cutting planes – branch and bound techniques

class96hs/ 24 (c) 1996 COSYTEC SA

slide-25
SLIDE 25

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

LP/MIP (2)

Advantages

– highly developed mathematical theory – good tools – large knowledge base

Disadvantages

– restriction in modeling

t f t i t

  • types of constraints
  • types of variables

– programming with constraints

  • incremental
  • meta programming/explanations

– some problem types do not give good results

  • scheduling

class96hs/ 25 (c) 1996 COSYTEC SA

slide-26
SLIDE 26

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Heuristic algorithms

Progressive building solutions by adding pieces one at a time Items added chosen by heuristics Good solutions for weakly constrained problems

y p

Bad results for strongly constrained problems

– finding admissible solutions

Heuristics should take constraints into account

– dynamic, not static ordering required

Systems can be very fast

– no initial propagation cost

class96hs/ 26 (c) 1996 COSYTEC SA

slide-27
SLIDE 27

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Decomposition techniques

Cut problem into more manageable parts

– helps handle large/complex problems

Different ways of decomposing problems

– Hierarchical

bottom-up and top-down requires certain problem structure

– Structural – Structural

considering different degrees of freedom independently

– Temporal/Spatial

solving sub problems for limited time period or limited number of resources

class96hs/ 27 (c) 1996 COSYTEC SA

slide-28
SLIDE 28

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Branch and bound

Create successive sub problems by enumeration on variables Exploration of search tree

– pruning of branches – lower bound approximation

Standard OR technique Search strategies must be defined carefully Very good results for complex problems High development effort

class96hs/ 28 (c) 1996 COSYTEC SA

slide-29
SLIDE 29

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Neighborhood search

Search by finding initial solution and “improving” it

– feasible initial solution – modification function – cost evaluation

Allows different variations

– steepest ascent hill li bi – hill climbing – simulated annealing – tabu search – genetic algorithms genetic algorithms

Local optimization

class96hs/ 29 (c) 1996 COSYTEC SA

slide-30
SLIDE 30

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Neighborhood search (2)

Constraint handling

– Constraints expressed in cost – Modification function checks constraints

Good for additive costs

– Local changes which improve costs

Difficult for very constrained problems

– Finding initial solution – Admissible modifications

class96hs/ 30 (c) 1996 COSYTEC SA

slide-31
SLIDE 31

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Relaxation methods

Solving “simpler” problem helps finding solution to complex problems Ignoring/simplifying certain constraints Obtain lower/upper bounds

pp

Proof of optimality Initial solutions

class96hs/ 31 (c) 1996 COSYTEC SA

slide-32
SLIDE 32

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Part 2 Part 2 Problem classification scheme

class96hs/ 32 (c) 1996 COSYTEC SA

slide-33
SLIDE 33

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Problem classification scheme

Overview of attempts to solve problems Some large, operational systems Many examples are studies, not ‘real’ systems

y p , y

Many models do not scale (I think) Shows which areas are susceptible to approach

class96hs/ 33 (c) 1996 COSYTEC SA

slide-34
SLIDE 34

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Overview

  • Hardware design
  • Compilation
  • Financial problems
  • Production scheduling
  • Satellite tasking
  • Maintenance planning
  • Placement
  • Cutting problems
  • Stand allocation
  • Air traffic control
  • Product blending
  • Time tabling
  • Crew rotation
  • Aircraft rotation
  • Air traffic control
  • Frequency allocation
  • Network configuration
  • Product design
  • Aircraft rotation
  • Transport
  • Personnel assignment
  • Personnel requirement planning

g

  • Production step planning
  • Production sequencing

q p g

class96hs/ 34 (c) 1996 COSYTEC SA

slide-35
SLIDE 35

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Hardware design

Different domains

– Circuit verification

  • check consistency with specification

– Diagnosis

  • find/explain fault in defective machine

– Testing

  • prepare tests to confirm proper operation

p p p p p

– Synthesis

  • create hardware design from specification

– Layout

t t i l t t f d i

  • create geometrical structure from design

class96hs/ 35 (c) 1996 COSYTEC SA

slide-36
SLIDE 36

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Specialized solvers

– problem specific – not reusable for other domains

Narrow domain

– industrial usage restricted to few companies

Constraint methods used in conventional algorithms

– example D-Algorithm

Successful in right environment

– CVE (Siemens)

  • hardware verification tool for ASIC circuits
  • hardware verification tool for ASIC circuits

class96hs/ 36 (c) 1996 COSYTEC SA

slide-37
SLIDE 37

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Compilation

Register allocation

– graph coloring problem

Instruction scheduling

– pipelining/parallel execution

Microcode labeling (ECRC)

– distributing microcode over address space; simplified addressing

DSP scheduling (ECRC, cc(FD), COSYTEC)

– cyclic scheduling

class96hs/ 37 (c) 1996 COSYTEC SA

slide-38
SLIDE 38

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Graph coloring problems Simple scheduling

– cyclic problems – disjunctive resources – machine assignment problems

Difficult to achieve in real-time

class96hs/ 38 (c) 1996 COSYTEC SA

slide-39
SLIDE 39

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Financial problems

Portfolio management (SEVE - CDC)

– which shares to buy/sell – assumption on economic development – mixed mode solver –

  • perational since 92

Asset/liability (Amro Bank)

St k ti t di (C L )

Stock option trading (C. Lassez) Constraint Spreadsheet (Hyvonnen)

class96hs/ 39 (c) 1996 COSYTEC SA

slide-40
SLIDE 40

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Continuous domain

– use rationals or reals

Non-linear constraints common

– linearisation – implement non-linear solver on top of linear one

Problem often incremental

– not all constraints known from beginning – programming with constraints (explanation, what-if)

Large problem instances P

ibl lt ti t h i

Possible alternative techniques

– non -linear interval solvers

Requires proprietary information

model (not only data) often confidential

class96hs/ 40 (c) 1996 COSYTEC SA

– model (not only data) often confidential

slide-41
SLIDE 41

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Placement

HIT container stacking (ICL)

– where to put containers to easily retrieve them later

Lorry loading (EBI)

– loading unloading of boxes in lorry

  • support constraint
  • stacking order
  • first in /last out
  • first in /last out

Container loading (Michelin)

– added degree of freedom

Map labeling (ECRC, Bull, COSYTEC, Gist)

p g ( , , , )

– where to put labels on map – preference position not always achievable – depends on right model

class96hs/ 41 (c) 1996 COSYTEC SA

slide-42
SLIDE 42

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

2D

  • ften overconstrained

– strong preferences not always achievable – very good results can be obtained

3/4D

– very hard or very easy d f l h i ti – needs powerful heuristics

General

– very poor results with syntactic methods some common constraints very hard to express – some common constraints very hard to express – specialized domain heuristics not easy to compute

class96hs/ 42 (c) 1996 COSYTEC SA

slide-43
SLIDE 43

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Cutting problems

Cutting stock (ECRC)

– cutting rectangles from rectangles – 2D finite problem

Made (Dassault)

– combining sheet metal pieces for aircraft parts – approximated by combination of rectangles

Gl tti (O )

Glass cutting (Oz) Wood cutting for furniture (Prolog III)

class96hs/ 43 (c) 1996 COSYTEC SA

slide-44
SLIDE 44

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Strong competition from MIP

– continuous roll cutting

Problems to handle irregular shapes

– leather, clothes – problem for any mathematical model

Good heuristic solutions

class96hs/ 44 (c) 1996 COSYTEC SA

slide-45
SLIDE 45

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Stand allocation

APACHE (COSYTEC)

– stand allocation for airport

HIT (ICL)

– assign ships to berths in container harbor

Train platform assignment (Ilog, Siemens)

– assign trains to platforms in at stations

Refinery berth allocation (ISAB)

– where to load/unload ships in refinery

class96hs/ 45 (c) 1996 COSYTEC SA

slide-46
SLIDE 46

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

APACHE

Stand allocation system

– originally developed with Air France, CDG2 – packaged for large airports

Complex constraint problem

– technical & operational constraints – incremental re-scheduler

Cost model

– maximize no passengers in contact – minimize towing, bus usage

Status

– technology demonstrator

class96hs/ 46 (c) 1996 COSYTEC SA

slide-47
SLIDE 47

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Base constraint relatively easy

– Graph coloring in interval graphs – Complete propagation possible for alldifferent – additional constraints/cost model more complex

Rescheduling requirements

– constraints change with every delay l i bl ith t di t bi ll f i l ti – resolving problem without disturbing all of previous solution

Solver can be very fast

– few seconds

Proof of optimality very complex due to symmetry Proof of optimality very complex due to symmetry

– needs separate lower bound calculation

class96hs/ 47 (c) 1996 COSYTEC SA

slide-48
SLIDE 48

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Air traffic control

CENA

– slot capacity

Thomson

– landing approach

Matra

– mission planning (military)

class96hs/ 48 (c) 1996 COSYTEC SA

slide-49
SLIDE 49

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

  • Temporal and spatial constraints

– Box model

  • General ATC problem very hard to

express express

– trajectories as 4D objects – “closeness” of trajectories

  • Large problem sizes
  • Special case solutions interesting

class96hs/ 49 (c) 1996 COSYTEC SA

slide-50
SLIDE 50

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Frequency allocation

Thomson SICS Celar Benchmark (Bull, Ilog, COSYTEC)

( , g, )

class96hs/ 50 (c) 1996 COSYTEC SA

slide-51
SLIDE 51

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Optimization difficult

– symmetry reduction

Solver too weak

– cliques in graphs

Locally overconstrained

– some constraints are actually preferences

Model may vary depending on degree of exactness

– disequality/distance constraints

class96hs/ 51 (c) 1996 COSYTEC SA

slide-52
SLIDE 52

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Network configuration

Locarim (France Telecom, COSYTEC)

– cabling of building

Planets (UCB, Enher)

– electrical power network reconfiguration

Load Balancing in Banking networks (ICON)

– distributed applications – control network traffic

Water Networks (UCB)

class96hs/ 52 (c) 1996 COSYTEC SA

slide-53
SLIDE 53

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

FRANCE TELECOM - LOCARIM

Intelligent cabling system for large buildings

– developed with Telesystemes for France Telecom

Application Application

– input scanned drawing – specify requirements

Optimi ation Optimization

– minimize cabling, drilling, switches – shortest path

Status

– operational in 5 Telecom sites – generates quotations

class96hs/ 53 (c) 1996 COSYTEC SA

slide-54
SLIDE 54

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Different types of problems Many related to warehouse location

– with/without capacity

Mixed methods worthwhile

– finite domain solver – rational solver

Competition from MIP

– simple model – nice mathematical properties

class96hs/ 54 (c) 1996 COSYTEC SA

slide-55
SLIDE 55

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Product design

Key system generation (Vachette, Bull)

– design key structure for large buildings –

  • ne key opens multiple doors

– security restrictions in different levels – parts of key control different locks – interaction of different access groups

M

h i l d i (Ci )

Mechanical design (Cisa)

class96hs/ 55 (c) 1996 COSYTEC SA

slide-56
SLIDE 56

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Production step planning

  • COCA (Dassault)

– define in which order the production steps are performed – basis for scheduling basis for scheduling – very large problem

  • several 10000 steps
  • decomposition possible

class96hs/ 56 (c) 1996 COSYTEC SA

slide-57
SLIDE 57

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Temporal and spatial constraints

– some steps must be done before others

Access to location

– not possible to work on two adjacent compartments concurrently

Rotation state of aircraft frame

– allows /excludes access

Safety rules

  • perations may not be performed at the same time

class96hs/ 57 (c) 1996 COSYTEC SA

slide-58
SLIDE 58

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Production sequencing

Amylum (Beyers)

– Glucose production

Cerestar (Beyers)

– Glucose production

Car Sequencing (ECRC, COSYTEC)

– assembly line scheduling

Bowater (Bull, COSYTEC)

– carton printing, reuse of colors

MOSES (COSYTEC)

i l f d d ti – animal feed production

class96hs/ 58 (c) 1996 COSYTEC SA

slide-59
SLIDE 59

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Forbidden sequences

– this product must never follow that product – this product should not follow that product

Setup cost/time

– cleaning time – downgrading product t – waste

Combination with scheduling

– due dates machine choice – machine choice

Additional constraints

– capacity

class96hs/ 59 (c) 1996 COSYTEC SA

slide-60
SLIDE 60

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Production scheduling

Plane (Dassault)

– mid/long term scheduling

Made (Dassault)

– short term work cell scheduling

Saveplan (Sligos)

– production scheduling

ATLAS (Beyers, COSYTEC)

– herbicide manufacturing

MOSES (COSYTEC)

i l f d d ti – animal feed production

Trefi Metaux (Sligos)

– heavy industry production scheduling

class96hs/ 60 (c) 1996 COSYTEC SA

slide-61
SLIDE 61

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

ATLAS

Chemical packaging & inventory control system

– developed for US agro-chemical supplier – joint development with Beyers & Partners

Extensive use of CHIP interfaces

– XGIP GUI interfacing to RDBMS – multi-user UNIX & PC system

Scheduling

– formulation & packaging – checks highlights problems

Benefits and status

– operational since Jun 93 – better control, reduced stock

class96hs/ 61 (c) 1996 COSYTEC SA

slide-62
SLIDE 62

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

VCA - ORDO-VAP

Production scheduling for glass factory

– integrated with Ingres Information system – manual and automatic scheduling

Constraints

– multi-stage manufacturing – consumer/producer – varying production rates setup varying production rates, setup – balance manpower utilization – minimize downtime

Status Status

– 2 phases – operational in March 96 – will replace manual operation

class96hs/ 62 (c) 1996 COSYTEC SA

slide-63
SLIDE 63

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Large systems operational Complete environments

– integration – frameworks

Many types of constraints

– precedence – disjunctive /cumulative resources – producer/consumer – machine assignment setup – setup – due dates/release dates

Well developed methodology

class96hs/ 63 (c) 1996 COSYTEC SA

slide-64
SLIDE 64

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Satellite tasking

Dassault

– low earth orbit satellite configuration power management

Alcatel

– earth observation scheduling

  • memory
  • transmission times
  • energy use
  • energy use
  • bservation windows

class96hs/ 64 (c) 1996 COSYTEC SA

slide-65
SLIDE 65

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Maintenance planning

Sema

– aircraft maintenance

Coopers & Lybrand Hong Kong Public Transport

– maintenance jobs on train/subway service

Edia - SNCF

class96hs/ 65 (c) 1996 COSYTEC SA

slide-66
SLIDE 66

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Cost model very weak

– interested in sum of costs

Problem set not known a priori

– some jobs may be postponed/canceled

Problem separable in time periods

– sequential/independent optimization – reduces complexity – provides lower bounds/heuristics

class96hs/ 66 (c) 1996 COSYTEC SA

slide-67
SLIDE 67

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Product Blending

Forward (TECHNIP, COSYTEC)

– gasoline blending – crude mix

Sanofi (ILOG, COSYTEC)

– cosmetics

Michelin

– rubber blending, rework optimization

class96hs/ 67 (c) 1996 COSYTEC SA

slide-68
SLIDE 68

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

FINA - FORWARD

Oil refinery production scheduling

– joint development by TECHNIP and COSYTEC – incorporates ELF FORWARD LP tool

Schedules daily production Schedules daily production

– crude arrival -> processing -> delivery – design, optimize and simulate

Product Blending

explanation facilities –explanation facilities –handling of overconstrained problems

Status – generic tool developed in 240 man days g p y – operational since June 94 – Operational at FINA, ISAB, BP

class96hs/ 68 (c) 1996 COSYTEC SA

slide-69
SLIDE 69

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Strong domain for LP/IP

– constraint model only based on inequalities – finite domain solvers don’t offer much – continuous domains/cutting plane methods

Constraints can provide explanation facility

– programming with constraints d t LP k – advantage over LP packages

Handles smaller problem size than LP/MIP systems

class96hs/ 69 (c) 1996 COSYTEC SA

slide-70
SLIDE 70

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Time tabling

School/university time tables

– which courses are held

  • when

b h

  • by whom
  • in which room

Exam scheduling

– which exams to place when in which rooms, possibility to combine exams in same which exams to place when in which rooms, possibility to combine exams in same room

Training course scheduling (Nat West)

– which courses to run in which week of year

  • limited accommodation
  • course sequences
  • course repetition

class96hs/ 70 (c) 1996 COSYTEC SA

slide-71
SLIDE 71

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Problem scheme

Time Mon Tue Wed Thu Fri 8-10 10-12 14-16

Analysis I Prof A

16-18

Prof A Room 221

Personnel Resource

class96hs/ 71 (c) 1996 COSYTEC SA

Time

slide-72
SLIDE 72

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Experimental systems Solvers too weak

– easy problems simple – hard problems impossible

Relaxation of constraints required

  • verconstrained problems

– strong preferences

Balancing of time table

– equal quality for everybody

D di

t d i li d k i t

Dedicated, specialized packages exist

class96hs/ 72 (c) 1996 COSYTEC SA

slide-73
SLIDE 73

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Crew rotation

Pilot (SAS, COSYTEC)

– re-planning

DAYSY (Lufthansa, COSYTEC, Sema, U. Patras)

– day to day management

Air Littoral (PrologIA)

– use of Simplex

Servair (GSI)

– capacity planning/scheduling/assignment

NWRR (COSYTEC)

t i d i t ti – train driver rotations

SuperBus (PrologIA, Brunel U.)

– public transport

class96hs/ 73 (c) 1996 COSYTEC SA

slide-74
SLIDE 74

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

SAS- PILOT

Intelligent re-scheduling

– SAS have 115 aircraft, 3 home bases, 3000 cabin 2000 flight – initial development by COSYTEC continued by SAS Data

Solve open flights

– delay, illness, cancellation, new flight – 50% in 5 minutes for 100 crew – 80% in 5 hours for 1000 crew 80% in 5 hours for 1000 crew

Black box solver

– based on cycle constraint constraint + legality checker – constraint + legality checker

Status

– operational Sept 1995

class96hs/ 74 (c) 1996 COSYTEC SA

slide-75
SLIDE 75

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Very complex constraints

– evolving over time

Difficult to express/check

– dedicated rule checking systems

Very large problem sets

– several thousand crew – several ten thousand flights

Crew preferences

– incompatible with each other

S ft/H

d l

Soft/Hard rules

– Government regulations, safety regulations, seniority rules

Needs very expressive/powerful solver Competition: very strong monthly planning tools based on LP

class96hs/ 75 (c) 1996 COSYTEC SA

Competition: very strong monthly planning tools based on LP

slide-76
SLIDE 76

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Aircraft/Train rotation

SNCF - Bull

– capacity planning : which trains to move overnight – specialized algorithm: min flow

SNCF - Ilog

– train engine rotation – specialized algorithm: TSP

BA IC P

BA - IC Parc

– aircraft rotations – repair methods

class96hs/ 76 (c) 1996 COSYTEC SA

slide-77
SLIDE 77

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Problem scheme

List of services

– Dep 10:00 CDG Arr 10:05 LHR

Covering services with available engines Passive movement to make machines available at right place Maintenance/service stops Balancing/minimizing engine usage Location continuity

– Start/stop at depot/ home base

class96hs/ 77 (c) 1996 COSYTEC SA

slide-78
SLIDE 78

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Less constrained than crew problems

– no unions to worry about

Location continuity

– added dimension over scheduling

Large problem sizes

– all of French train services; decomposition possible

Unknown qty of passive transport required

– difficult to express a priori with constraints

Results show problems of expressing/solving with syntactic methods

l bl ith d di t d i t l l ith – resolve problem with dedicated, non incremental algorithm

class96hs/ 78 (c) 1996 COSYTEC SA

slide-79
SLIDE 79

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Transport

EVA (EDF, Gist, COSYTEC)

– nuclear waste transport

EBI

– warehouse - customer transport

TACT (COSYTEC)

– integrated transport food manufacturing

PASZA (COSYTEC)

– feed mill transport

SIPE

b t t – bus transport

class96hs/ 79 (c) 1996 COSYTEC SA

slide-80
SLIDE 80

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

EDF- EVA

Transportation of nuclear waste

– developed by GIST + COSYTEC – plans evacuation and transport for 54 sites

Constraints

– availability of transport vehicles and vessels – no and capacity of storage tanks – compatibility of waste to vessels compatibility of waste to vessels – size of convoy, time

Status

  • perational since Oct 94

– operational since Oct 94 – 6 month plan in 5 minutes

class96hs/ 80 (c) 1996 COSYTEC SA

slide-81
SLIDE 81

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

TACT

Transport planning and assignment

– plans activities for factories – assigns activities to teams, drivers, lorries, fork lifts

Problem solver

– generates minimum no trips – balance production, optimizes resources

Supplier

Rules, constraints

– production, storage, legal, vet – roster, workforce, unavailability

Depot

Status

– operational Feb 1995 – developed Aug 94-Jan 95

p Factory

class96hs/ 81 (c) 1996 COSYTEC SA

slide-82
SLIDE 82

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Location continuity

– start end of trips – depots

Passive transportation

– unknown quantity

Important scheduling component

– driven by crucial resource (lorries, drivers, supply/demand side)

Producer/Consumer behavior

– JIT delivery limited stock shelf life – limited stock, shelf life

Even more difficult if work rules must be handled

– total driving time, breaks, rest periods, start/end time, rotas

class96hs/ 82 (c) 1996 COSYTEC SA

slide-83
SLIDE 83

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Personnel assignment

Servair (GSI, ITMI, COSYTEC)

– train bar/restaurant

RFO (Gist, COSYTEC)

– reporters/technicians for TV/radio

Banque Bruxelles Lambert (Ilog)

– bank personnel

Nurse scheduling (Ilog, Bull)

– hospital

Crisis Management (Bull)

Ol i i t 1992 – Olympic winter games 1992

class96hs/ 83 (c) 1996 COSYTEC SA

slide-84
SLIDE 84

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

RFO - MAESTRO

Assignment of technical staff to tasks

– overseas radio broadcaster - Radio France Outre-mer – joint development by GIST and COSYTEC

Features

– schedule manually, check, automatic – rule builder to specify cost formulas

Optimization

– minimize overtime, temporary staff – compute cost of schedule

Status

– operational Dec 95 – to be installed worldwide in 9 sites

class96hs/ 84 (c) 1996 COSYTEC SA

slide-85
SLIDE 85

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

SERVAIR - CREW

Crew rostering system

– assign service staff to TGV train timetable – joint implementation with GSI

Problem solver

– generates tours/cycles – assigns skilled personnel

Constraints

– union, physical, calendar

Status

– operational since Mar 1995

class96hs/ 85 (c) 1996 COSYTEC SA

slide-86
SLIDE 86

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Work rules

– as for transport and rostering

Balancing

– spread difficult/tedious jobs – total work time per month

Perfect problems very hard

class96hs/ 86 (c) 1996 COSYTEC SA

slide-87
SLIDE 87

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Personnel requirement planning

Ghost (Sligos)

– capacity planning credit card service

Havas (COSYTEC, EBI)

– ground crew management

911 planning (2LP)

– emergency center capacity planning Resource Time

class96hs/ 87 (c) 1996 COSYTEC SA

Time

slide-88
SLIDE 88

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Characteristics

Rather small problem size Covering demand per time unit Lower bound constraints Alternative models

– integer programming: inequalities – capacity planning: cumulative

IP approach quite strong

class96hs/ 88 (c) 1996 COSYTEC SA

slide-89
SLIDE 89

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Part 3 Part 3

Evaluation

class96hs/ 89 (c) 1996 COSYTEC SA

slide-90
SLIDE 90

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Which problems failed

Not much information available Paper by J.Y. Cras, ILPS 1994 Difference between

– project failure

  • customer is not happy

– problem failure

t i t h i t h

  • constraint researcher is not happy

class96hs/ 90 (c) 1996 COSYTEC SA

slide-91
SLIDE 91

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Project failure

Project management

– technically too ambitious – due dates not achievable – effort not estimated correctly

End - user acceptance

– end user not involved early on

B i h

Business process change

– need disappears while system is being developed – problem changes beyond recognition

class96hs/ 91 (c) 1996 COSYTEC SA

slide-92
SLIDE 92

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Problem failure

Wrong problem Wrong solver Wrong model

g

Wrong test case

class96hs/ 92 (c) 1996 COSYTEC SA

slide-93
SLIDE 93

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Wrong problem

Solving the wrong problem

– focusing on technology rather than need of customer

Pure problem

– specialized methods/algorithms exist

Relaxation essential

– if no constraints are hard, then there is no propagation

Too generic

– solving “the generic scheduling” problem – using problem specific knowledge is key to success

class96hs/ 93 (c) 1996 COSYTEC SA

slide-94
SLIDE 94

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Wrong solver

Wrong domain

  • ex. solving sets of inequalities by bound propagation

– find most general solution where only one particular solution is required

Solver too weak

– idea of solving hard problems by simple methods – this is why global constraints were introduced

class96hs/ 94 (c) 1996 COSYTEC SA

slide-95
SLIDE 95

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Wrong model

Bad choice of variables

– avoid 0/1 domain variables – avoid very large domains

Constraints do not propagate

– important to express all constraints inside model – not enough if constraints do not propagate

B d t t

Bad strategy

– use problem specific knowledge – try different methods

Cost model too weak Cost model too weak

– important when doing search – proving optimality only possible with good lower cost bound

class96hs/ 95 (c) 1996 COSYTEC SA

slide-96
SLIDE 96

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Wrong test case

Problem does not scale

– classical AI problem – test with real data – see whether actual solution satisfies constraint model – ideally, test with full size data

Not enough test cases

t ti i t t (b h k ) – easy to over-optimize one test case (benchmarks) – day to day system requires test data from all time periods

  • seasonal demand variation
  • peak business
  • special cases (holidays)

class96hs/ 96 (c) 1996 COSYTEC SA

slide-97
SLIDE 97

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Modeling check list

Soft constraints Overconstrained problems Preferences Balancing Non-local cost Planning type problems

g yp p

Passive transport

class96hs/ 97 (c) 1996 COSYTEC SA

slide-98
SLIDE 98

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Comparison studies

Comparing two methods is much more difficult than testing one Most tests topical or small scale some comparison of benchmark results

p

Tests shown

– CLP - OR – CLP - LP/MIP – CLP - AI – CLP - local search – CLP/FD - CLP/R

class96hs/ 98 (c) 1996 COSYTEC SA

slide-99
SLIDE 99

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

CLP - OR (specialized algorithms)

Warehouse location Job shop Patterson / Alvarez benchmarks

class96hs/ 99 (c) 1996 COSYTEC SA

slide-100
SLIDE 100

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

CLP - LP/MIP

Warehouse location Setup scheduling Cutting stock

g

ATC slot allocation Progressive party problem Network flow (Train rotations)

( )

Disposing problem (Bisdorff) 2LP Banking networks

g

class96hs/ 100 (c) 1996 COSYTEC SA

slide-101
SLIDE 101

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

CLP - AI

Car sequencing

class96hs/ 101 (c) 1996 COSYTEC SA

slide-102
SLIDE 102

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

CLP - Local search

Car sequencing Map labeling Scheduling (BT)

g ( )

class96hs/ 102 (c) 1996 COSYTEC SA

slide-103
SLIDE 103

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

CLP vs CLP

Comparison of different solver methods for some applications Warehouse location Hoist scheduling Bisdorff

class96hs/ 103 (c) 1996 COSYTEC SA

slide-104
SLIDE 104

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

What really works

Which of the problems should be solved by CLP

– CLP appropriate tool – competing techniques have no clear advantage

Methodology

– how to express constraints – standard models t f h i ti il bl – sets of heuristics available

class96hs/ 104 (c) 1996 COSYTEC SA

slide-105
SLIDE 105

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Scheduling

Good methodology

– see PAP 95 tutorial on planning and scheduling

Constraints competitive

– benchmark results are comparable to best dedicated systems

Good strategies known

– both AI and OR type heuristics

Projects can still be complex

– interfaces – integration strategies – strategies

class96hs/ 105 (c) 1996 COSYTEC SA

slide-106
SLIDE 106

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Allocation

Solver rather simple

– disequality/alldifferent/diffn – pure problem easy – complete propagation for significant sub-problems

Rescheduling rapid

– solver finds solution in few seconds

M h i l th h d li

Much simpler than scheduling

– do not generalize if not required

class96hs/ 106 (c) 1996 COSYTEC SA

slide-107
SLIDE 107

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Transport

Solver quite complex

– location continuity – unknown amount of passive transport

Multiple loading/unloading a problem

– interaction of all activities in one tour

Good strategies required Problem size can be limiting

– several hundred nodes OK

Handling of personnel work rules makes things very complex

class96hs/ 107 (c) 1996 COSYTEC SA

slide-108
SLIDE 108

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Crew rotation

Work rules can be very complex

– point systems – large amounts of data (ex pilot qualification for airports)

Preferences not handled well Does not handle long periods

– too many activities – not enough connection between early and late activities

Rest periods

– expressing constraints already complex deducing information very hard – deducing information very hard

No other tool handles constraints well

– Column generation: generate & combine method

class96hs/ 108 (c) 1996 COSYTEC SA

slide-109
SLIDE 109

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

How to continue?

class96hs/ 109 (c) 1996 COSYTEC SA

slide-110
SLIDE 110

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Sources

Examples drawn from multitude of sources Some are “personal communication” only Literature list

class96hs/ 110 (c) 1996 COSYTEC SA

slide-111
SLIDE 111

COSYTEC

Complex Systems Technologies

COS C

Complex Systems Technologies

Summary

CLP - Emphasis on finite domains

– not enough data for other problem solvers

Application classification

– what has been done in the field

Explaining problems

– why projects/problems fail

Modeling checklist

– what to watch out for

class96hs/ 111 (c) 1996 COSYTEC SA