119
Constraint Programming Short Course for Air Products & Chemicals April 2003 John Hooker Carnegie Mellon University

Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

  • Upload
    vukiet

  • View
    213

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Con

stra

int P

rogr

amm

ing

Sho

rt C

ours

e fo

r Air

Pro

duct

s &

Che

mic

als

Ap

ril 2

00

3

John

Hoo

ker

Ca

rneg

ie M

ello

n U

niv

ers

ity

Page 2: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

I.O

verv

iew

and

Suc

cess

Sto

ries

(1 h

our)

II.B

asic

Con

cept

s an

d P

robl

em F

orm

ulat

ion

(1.5

hou

rs)

III.

Alg

orith

mic

Idea

s (1

hou

r)

Page 3: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

I. O

verv

iew

and

Suc

cess

Sto

ries

Page 4: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Wha

t is

Con

stra

int P

rogr

am

min

g?

•It

is a

rel

ativ

ely

new

tec

hnol

ogy

deve

lope

d in

the

com

pute

r sc

ienc

e an

d ar

tific

ial i

ntel

ligen

ce c

omm

uniti

es.

•It

has

foun

d an

impo

rtan

t rol

e in

sc

hedu

ling,

logi

stic

s an

d su

pply

cha

in

man

agem

ent.

Page 5: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ea

rly C

omm

erc

ial S

ucce

sse

s

•C

onta

iner

por

t sch

edul

ing

(Hon

g K

ong

and

Sin

gapo

re)

•C

ircui

t des

ign

(Sie

men

s)

•R

eal-t

ime

cont

rol

(Sie

men

s, X

erox

)

Page 6: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

App

lica

tions

•Jo

b sh

op s

ched

ulin

g

•Ass

embl

y lin

e sm

ooth

ing

and

bala

ncin

g

•C

ellu

lar

freq

uenc

y as

sign

men

t

•N

urse

sch

edul

ing

•S

hift

plan

ning

•M

aint

enan

ce p

lann

ing

•Airl

ine

crew

ros

terin

g an

d sc

hedu

ling

•Airp

ort

gate

allo

catio

n an

d st

and

plan

ning

Page 7: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

•P

rodu

ctio

n sc

hedu

ling

chem

ical

sav

iatio

no

il re

finin

gst

eel

lum

ber

pho

togr

aphi

c p

late

stir

es

•T

rans

port

sch

edul

ing

(foo

d,

nucl

ear

fuel

)

•W

areh

ouse

man

agem

ent

•C

ours

e tim

etab

ling

App

lica

tions

Page 8: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

•T

radi

tiona

l mat

hem

atic

al p

rogr

amm

ing

met

hods

ar

e ve

ry g

ood

at m

any

supp

ly c

hain

pro

blem

s bu

t of

ten

have

diff

icul

ty w

ith sc

hedu

ling

and

sequ

enci

ng.

Con

stra

int P

rogr

am

min

g vs

. M

ath

em

atic

al P

rogr

am

min

g

•C

onst

rain

t pro

gram

min

g ca

n ex

cel a

t sche

dulin

g an

d se

quen

cing

.

•T

he tw

o na

tura

lly c

an w

ork

toge

ther

in a

sup

ply

chai

n co

ntex

t.

Page 9: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

•M

athe

mat

ical

pro

gram

min

g m

etho

ds r

ely

heav

ily

on n

umer

ical

cal

cula

tion.

The

y in

clud

e

•lin

ear

prog

ram

min

g (L

P)

•m

ixed

inte

ger

prog

ram

min

g (M

IP)

•no

nlin

ear

prog

ram

min

g (N

LP)

Con

stra

int P

rogr

am

min

g vs

. M

ath

em

atic

al P

rogr

am

min

g

•C

onst

rain

t pro

gram

min

g re

lies

heav

ily o

n co

nstr

aint

pro

paga

tion

(a f

orm

of l

ogic

al in

fere

nce)

.

Page 10: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

•In

cons

trai

ntpr

ogra

mm

ing

:

•p

rog

ram

min

g = a

form

of c

ompu

ter

prog

ram

min

g

Pro

gra

mm

ing ≠

Pro

gra

mm

ing

•In

mat

hem

atic

alpr

ogra

mm

ing:

•p

rog

ram

min

g= p

lann

ing

Page 11: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

•In

mat

hem

atic

al p

rogr

amm

ing,

equ

atio

ns

(con

stra

ints

) de

scrib

e th

e pr

oble

m b

ut d

on’t

tell

how

to

sol

ve it

.

Con

stra

int P

rogr

am

min

g vs

. M

ath

em

atic

al P

rogr

am

min

g

•In

com

pute

r pr

ogra

mm

ing,

a p

roce

dure

tel

ls h

ow

to s

olve

the

prob

lem

.

•In

con

stra

int p

rogr

amm

ing

, ea

ch c

onst

rain

t in

voke

s a

proc

edur

e th

at s

cree

ns o

ut u

nacc

epta

ble

solu

tions

.

Page 12: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ma

jor

Vend

ors

•C

HIP

–G

ener

al s

tate

-of-

the-

art

cons

trai

nt p

rogr

amm

ing

•W

AR

EP

LAN

–W

areh

ouse

m

anag

emen

t

Page 13: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ma

jor

Vend

ors

•C

PLE

X–

Line

ar p

rogr

amm

ing

(LP

) an

d m

ixed

inte

ger/

linea

r p

rogr

amm

ing

(MIL

P)

•S

olve

r–G

ener

al s

tate

-of-

the-

art

cons

trai

nt p

rogr

amm

ing

(CP

)

•S

ched

uler

–C

P w

ith s

pec

ial-p

urp

ose

sch

edul

ing

cons

trai

nts

•O

PL

Stu

dio

–M

od

elin

g fr

amew

ork

fo

r b

oth

CP

and

MIL

P

•O

DF

(Op

timiz

atio

n D

evel

op

men

t F

ram

ewo

rk)

–To

ol f

or

dev

elo

pin

g o

ptim

izat

ion

exte

nsio

ns f

or

SA

P’s

AP

O.

Page 14: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ma

jor

Vend

ors

•X

PR

ES

S-M

P–

Line

ar,

nonl

inea

r an

d m

ixed

inte

ger

prog

ram

min

g

•X

PR

ES

S-X

L –

Spr

eads

heet

-bas

ed o

ptim

izat

ion

•M

osel

–F

ram

ewor

k fo

r in

tegr

atin

g so

lver

s

•D

ash

has

a co

oper

ativ

e ag

reem

ent

with

Cos

ytec

to

use

CH

IP.

Page 15: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ma

jor

Vend

ors

•E

CLi

PS

e –

Hig

h-le

vel m

odel

ing

lang

uage

for

MIL

P a

nd C

P

•IC

Par

c is

an

exte

nsio

n of

Im

peria

l Col

lege

, Lon

don

Page 16: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Som

e S

ucce

ss S

torie

s

•T

hese

are

cho

sen

beca

use:

•T

hey

are

very

rec

ent

(rel

ease

d 2

wee

ks a

go).

•T

hey

illus

trat

e ho

w s

ched

ulin

g in

tera

cts

with

oth

er

aspe

cts

of s

uppl

y ch

ain.

•A

nd t

hus

how

CP

can

inte

ract

with

oth

er m

etho

ds.

•S

ince

they

are

par

t of a

gov

ernm

ent

(EU

) su

ppor

ted

proj

ect (

LIS

CO

S),

a fa

ir am

ount

of d

etai

l w

as r

elea

sed

to p

ublic

.

•All

are

solv

ed w

ith h

elp

of D

ash’

s M

osel

sys

tem

.

Page 17: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

L

ot S

izin

g a

t BA

SF

Man

ufac

ture

of

poly

prop

ylen

es in

3 s

tage

s

poly

mer

izat

ion

inte

rmed

iate

st

orag

e

extr

usio

n

Page 18: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

Lo

t Siz

ing

at B

AS

F

•M

anua

l pla

nnin

g (o

ld m

etho

d)

•R

equi

red

3 da

ys

•Li

mite

d fle

xibi

lity

and

qual

ity c

ontr

ol

•24

/7 c

ontin

uous

pro

duct

ion

•Va

riabl

e ba

tch

size

.

•S

eque

nce-

depe

nden

t ch

ange

over

tim

es.

Page 19: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

Lo

t Siz

ing

at B

AS

F

•In

term

edia

te s

tora

ge

•Li

mite

d ca

paci

ty

•O

ne p

rodu

ct p

er s

ilo

•E

xtru

sion

•P

rodu

ctio

n ra

te d

epen

ds o

n pr

oduc

t and

m

achi

ne

Page 20: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

Lo

t Siz

ing

at B

AS

F

•T

hree

pro

blem

s in

one

•Lo

t si

zing

–ba

sed

on c

usto

mer

dem

and

fore

cast

s

•Ass

ignm

ent

–pu

t eac

h ba

tch

on a

par

ticul

ar

mac

hine

•S

eque

ncin

g –

deci

de t

he o

rder

in w

hich

eac

h m

achi

ne p

roce

sses

bat

ches

ass

igne

d to

it

Page 21: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

Lo

t Siz

ing

at B

AS

F

•T

he p

robl

ems

are

inte

rdep

ende

nt

•Lo

t si

zing

dep

ends

on

assi

gnm

ent,

sinc

e m

achi

nes

run

at d

iffer

ent

spee

ds

•Ass

ignm

ent

depe

nds

on s

eque

ncin

g, d

ue to

re

stric

tions

on

chan

geov

ers

•S

eque

ncin

g de

pend

s on

lot s

izin

g, d

ue to

lim

ited

inte

rmed

iate

sto

rage

Page 22: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

Lo

t Siz

ing

at B

AS

F

•S

olve

the

prob

lem

s si

mul

tane

ousl

y

•L

ot s

izin

g:s

olve

with

MIP

(us

ing

XP

RE

SS

-MP

)

•A

ssig

nm

en

t:sol

ve w

ith M

IP

•S

eq

uen

cin

g:so

lve

with

CP

(us

ing

CH

IP)

•T

he M

IP a

nd C

P a

re li

nked

mat

hem

atic

ally

.

•U

se lo

gic-

base

d B

ende

rs d

ecom

posi

tion,

de

velo

ped

only

in th

e la

st fe

w y

ears

.

Page 23: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Sam

ple

sche

dule

, ill

ustr

ated

with

Vis

ual S

ched

uler

(A

viS

/3)

Sou

rce

: B

AS

F

Page 24: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

cess

Sch

edu

ling

and

Lo

t Siz

ing

at B

AS

F

•B

enef

its

•O

ptim

al s

olut

ion

obta

ined

in 1

0 m

ins.

•E

ntire

pla

nnin

g pr

oces

s (d

ata

gath

erin

g, e

tc.)

re

quire

s a

few

hou

rs.

•M

ore

flexi

bilit

y

•F

aste

r re

spon

se t

o cu

stom

ers

•B

ette

r qu

ality

con

trol

Page 25: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pa

int P

rodu

ctio

n a

t Ba

rdot

•Tw

o pr

oble

ms

to s

olve

sim

ulta

neou

sly

•Lo

t si

zing

•M

achi

ne s

ched

ulin

g

•F

ocus

on

solv

ent-

base

d pa

ints

, for

w

hich

ther

e ar

e fe

wer

sta

ges.

•B

arbo

t is

a P

ortu

gues

e pa

int

man

ufac

ture

r.

Sev

eral

mac

hine

s o

f ea

ch ty

pe

Page 26: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pai

nt P

rod

uct

ion

at B

arb

ot

•S

olut

ion

met

hod

sim

ilar

to B

AS

F c

ase

(MIP

+ C

P).

•B

enef

its

•O

ptim

al s

olut

ion

obta

ined

in a

few

min

utes

for

20 m

achi

nes

and

80 p

rodu

cts.

•P

rodu

ct s

hort

ages

elim

inat

ed.

•10

% in

crea

se in

out

put.

•F

ewer

cle

anup

mat

eria

ls.

•C

usto

mer

lead

tim

e re

duce

d.

Page 27: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Dis

cre

te L

ot S

izin

g a

t Pro

cte

r a

nd G

am

ble

•C

ontin

uous

ly r

unni

ng p

rodu

ctio

n lin

e.

•M

anuf

actu

res

50 s

nack

foo

ds in

dis

cret

e ba

tche

s.

•A b

atch

may

con

sum

e on

e or

mor

e 8-

hr p

erio

ds.

•At m

ost o

ne b

atch

per

per

iod

(90-

150

perio

ds).

•S

eque

ncin

g co

nstr

aint

s.

Page 28: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Sim

plifi

ed p

rodu

ctio

n pr

oces

s

Sou

rce

: P

&G

Page 29: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Dis

cret

e Lo

t Siz

ing

at P

&G

•H

ighl

y va

riabl

e de

man

d

Sou

rce

: P

&G

Page 30: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Dis

cret

e Lo

t Siz

ing

at P

&G

•O

bjec

tive:

Cho

ose

batc

h se

quen

cing

and

siz

es s

o as

to:

•Avo

id e

xces

sive

inve

ntor

y ac

cum

ulat

ion.

•Avo

id la

rge

batc

h si

zes.

•S

olut

ion

met

hod

did n

otu

se C

P

•U

sed

a sp

ecia

lized

MIP

app

roac

h.

•H

owev

er,

this

is a

nat

ural

pro

blem

for

MIP

+ C

P.

Page 31: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Dis

cret

e Lo

t Siz

ing

at P

&G

•B

enef

its

•Im

prov

ed c

usto

mer

ser

vice

.

•C

ompl

ete

plan

ning

cyc

le f

or 1

50 p

erio

ds

redu

ced

from

4-5

hou

rs to

2 h

ours

.

•M

etho

d is

bei

ng e

xten

ded

to 1

3 lin

es w

ith

inte

rmed

iate

sto

rage

and

pac

king

.

Page 32: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

duct

ion

Lin

e S

equ

enc

ing

at P

eug

eot

/Citr

oën

•T

he P

euge

ot 2

06 c

an b

e m

anuf

actu

red

with

12,

000

optio

n co

mbi

natio

ns.

•P

lann

ing

horiz

on is

5 d

ays

Page 33: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

du

ctio

n Li

ne

Seq

uen

cing

at P

eug

eot/C

itroë

n

•E

ach

car

pass

es t

hrou

gh 3

sho

ps.

•O

bjec

tives

•G

roup

sim

ilar

cars

(e.

g. in

pai

nt s

hop)

.

•R

educ

e se

tups

.

•B

alan

ce w

ork

stat

ion

load

s.

Page 34: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

du

ctio

n Li

ne

Seq

uen

cing

at P

eug

eot/C

itroë

n

•S

peci

al c

onst

rain

ts

•C

ars

with

a s

un r

oof

shou

ld b

e gr

oupe

d to

geth

er in

ass

embl

y.

•Air-

cond

ition

ed c

ars

shou

ld n

ot b

e as

sem

bled

con

secu

tivel

y.

•E

tc.

Page 35: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

du

ctio

n Li

ne

Seq

uen

cing

at P

eug

eot/C

itroë

n

•P

robl

em h

as t

wo

part

s

•D

eter

min

e nu

mbe

r of

car

s of

eac

h ty

pe

assi

gned

to

each

line

on

each

day

.

•D

eter

min

e se

quen

cing

for

eac

h lin

e on

ea

ch d

ay.

•P

robl

ems

are

solv

ed s

imul

tane

ousl

y.

•Aga

in b

y M

IP +

CP

.

Page 36: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Sam

ple

sche

dule

Sou

rce

: P

eug

eot

/Citr

oën

Page 37: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

du

ctio

n Li

ne

Seq

uen

cing

at P

eug

eot/C

itroë

n

•B

enef

its

•G

reat

er a

bilit

y to

bal

ance

suc

h in

com

patib

le b

enef

its a

s fe

wer

set

ups

and

fast

er c

usto

mer

ser

vice

.

•B

ette

r sc

hedu

les.

Page 38: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Lin

e B

ala

ncin

g a

t Pe

uge

ot/C

itroë

n

A c

lass

ic p

rodu

ctio

n se

quen

cing

pro

blem

Sou

rce

: P

eug

eot

/Citr

oën

Page 39: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Lin

e B

alan

cing

at P

eug

eot/C

itroë

n

•O

bjec

tive

•E

qual

ize

load

at w

ork

stat

ions

.

•K

eep

each

wor

ker

on o

ne s

ide

of t

he c

ar

•C

onst

rain

ts

•P

rece

denc

e co

nstr

aint

s be

twee

n so

me

oper

atio

ns.

•E

rgon

omic

req

uire

men

ts.

•R

ight

equ

ipm

ent a

t sta

tions

(e.

g. a

ir so

cket

)

Page 40: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Lin

e B

alan

cing

at P

eug

eot/C

itroë

n

•S

olut

ion

agai

n ob

tain

ed b

y a

hybr

id m

etho

d.

•M

IP:

obta

in s

olut

ion

with

out r

egar

d to

pr

eced

ence

con

stra

ints

.

•C

P: R

esch

edul

e to

enf

orce

pre

cede

nce

cons

trai

nts.

•T

he tw

o m

etho

ds in

tera

ct.

Page 41: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Sou

rce

: P

eug

eot

/Citr

oën

Page 42: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Lin

e B

alan

cing

at P

eug

eot/C

itroë

n

•B

enef

its

•B

ette

r eq

ualiz

atio

n of

load

.

•S

ome

stat

ions

cou

ld b

e cl

osed

, red

ucin

g la

bor.

•Im

prov

emen

ts n

eede

d

•R

educ

e tr

acks

ide

clut

ter.

•E

qual

ize

spac

e re

quire

men

ts.

•K

eep

wor

kers

on

one

side

of c

ar.

Page 43: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Why

Se

que

ncin

g is

Ha

rd

•T

here

are

man

y w

ays

to s

eque

nce

only

a fe

w jo

bs.

•5

jobs

can

be

sequ

ence

d 12

0 w

ays.

•10

jobs

can

be

sequ

ence

d 3,

628,

800

way

s.

•20

jobs

can

be

sequ

ence

d 2,

432,

902,

008,

176,

640,

000

way

s.

•F

ast

com

pute

rs a

re u

sele

ss a

gain

st t

his

expo

nent

ial

expl

osio

n.

•C

leve

r m

etho

ds c

an r

educ

e th

e w

ork,

but

onl

y up

to a

po

int.

Page 44: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Adv

ant

age

s of

Con

stra

int P

rogr

am

min

g

•U

sual

ly b

ette

r at

seq

uenc

ing

than

oth

er m

etho

ds.

•Add

ing

mes

sy c

onst

rain

ts m

akes

the

pro

blem

eas

ier.

•M

ore

pow

erfu

l mod

elin

g la

ngua

ge m

akes

form

ulat

ion

and

debu

ggin

g ea

sier

.

Dis

adv

ant

age

s

•C

anno

t dea

l with

cos

t/pr

ofit

optim

izat

ion.

•N

ot s

o go

od a

t res

ourc

e al

loca

tion,

task

ass

ignm

ent,

inve

ntor

y co

ntro

l.

Page 45: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Tre

nds

•C

onst

rain

t pro

gram

min

g w

ill b

ecom

e be

tter

kno

wn

to e

ngin

eerin

g an

d op

erat

ions

res

earc

h co

mm

uniti

es.

•S

olve

rs th

at fu

lly in

tegr

ate

MIP

and

CP

will

be

deve

lope

d (3

-5 y

ears

).

•H

euris

tic m

etho

ds w

ill b

e in

tegr

ated

with

CP

.

•M

IP/C

P/h

euris

tics

will

be

rega

rded

as

a si

ngle

te

chno

logy

.

Page 46: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

II. B

asic

Con

cept

s an

d P

robl

em

For

mul

atio

n

Page 47: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

A S

imp

le E

xam

ple

}4,

,1{

},

,{

diff

eren

t-

all

30

25

3su

bje

ct t

o

48

5m

in

32

1

32

1

32

1

…∈

≥+

++

+

jx

xx

xxx

x

xx

x

We

will

illu

stra

te h

ow s

earc

h, in

fere

nce

and

rela

xatio

n m

ay b

e co

mbi

ned

to s

olve

this

pro

blem

by:

•co

nstr

aint

pro

gram

min

g

•in

tege

r pr

ogra

mm

ing

•a

hybr

id a

ppro

ach

Page 48: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

1. S

olv

e as

an

inte

ger

pro

gra

mm

ing

pro

ble

m

Sea

rch:

Bra

nch

on v

aria

bles

with

frac

tiona

l val

ues

in

solu

tion

of c

ontin

uous

rel

axat

ion.

Infe

ren

ce:

Gen

erat

e cu

ttin

g pl

anes

(co

verin

g in

equa

litie

s).

Rela

xatio

n:C

ontin

uous

(LP

) re

laxa

tion.

Page 49: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Rew

rite

prob

lem

usi

ng in

tege

r pr

ogra

mm

ing

mod

el:

Let y

ijbe

1 if

x i=

j, 0

oth

erw

ise.

ji

y

jy

iy

ijy

x

xx

x

xx

x ij

iij

jijj

iji

, a

ll},1,0{

4,,1

,1

3,2,1,1

3,2,1,

17

42

4su

bje

ct t

o

53

4m

in

3 14

1

5

1

32

1

32

1 ∈

=≤

==

==

≥+

++

+

∑∑

==

=

Page 50: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Co

ntin

uou

s re

laxa

tion

ji

yx

xx

xx

xx

xx

jy

iy

ijy

x

xx

x

xx

x

ij

iij

jijj

iji

, al

l1

,0

8

445

4,,1

,1

3,2,1,1

3,2,1,

17

42

4su

bje

ct to

53

4m

in

32

1

32

31

213 14

1

4

1

32

1

32

1

≤≤

≥+

+≥

+≥

+≥

+

=≤

==

==

≥+

++

+

∑∑

==

=

Rel

ax in

tegr

ality

Cov

erin

g in

equa

litie

s

Page 51: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Bra

nch

an

d b

ou

nd

(B

ran

ch a

nd

rel

ax)

The

incu

mb

en

t so

lutio

nis th

e be

st fe

asib

le s

olut

ion

foun

d so

far.

At e

ach

node

of t

he b

ranc

hing

tre

e:

•If

The

re is

no

need

to

bran

ch f

urth

er.

•N

o fe

asib

le s

olut

ion

in th

at s

ubtr

ee c

an b

e be

tter

th

an th

e in

cum

bent

sol

utio

n.

•U

se S

OS

-1 b

ranc

hing

.

Opt

imal

va

lue

of

rela

xatio

n ≥

Valu

e of

in

cum

bent

so

lutio

n

Page 52: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

5.4

90

00

1

2/12/1

00

2/12/1

00

=

=

z

y

y 12 =

1y 1

3 =

1y 1

4 =

1

2.5

00

01

0

8.00

02.0

01

00

=

=

z

y

4.50

00

01

09.0

01.0

10

00

=

=

z

y

y 11 =

1

Infe

as.

Infe

as.

Infe

as.

z =

54

z=

51

Infe

as.

z =

52

50

02/1

02/1

10

00

00

10

=

=

z

y

Infe

as.

500

02/1

2/1

01

00

10

00

=y

8.5

00

10

0

15

/1

30

01

5/

2

00

10

=

=

z

y

Infe

as.

Infe

as.

Infe

as. Infe

as.

Page 53: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

2. S

olv

e as

a c

on

stra

int p

rog

ram

min

g p

rob

lem

}4,

,1{}

,,

{di

ffere

nt-

all

302

53

48

5

32

1

32

1

32

1

…∈

≥+

+≤

++

jx

xx

xxx

xz

xx

x

Sta

rt w

ith z

= ∞

.W

ill d

ecre

ase

as fe

asib

le

solu

tions

are

fou

nd.

Sea

rch:

Dom

ain

split

ting

Infe

ren

ce:

Dom

ain

redu

ctio

n R

ela

xatio

n:C

onst

rain

t sto

re (

set o

f cu

rren

t var

iabl

e do

mai

ns)

Co

nst

rain

t sto

re ca

n be

vie

wed

as

cons

istin

g of

in-d

omai

n co

nstr

aint

s xj∈

Dj,

whi

ch f

orm

a r

elax

atio

n of

the

prob

lem

.

Glo

bal c

onst

rain

t

Page 54: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Dom

ain

redu

ctio

n fo

r in

equa

litie

s

•B

ound

s pr

opag

atio

n on

302

53

48

5

32

1

32

1

≥+

+≤

++

xx

xz

xx

x

impl

ies

For

exa

mpl

e,30

25

33

21

≥+

+x

xx

25

812

305

23

303

12

=−

−≥

−−

≥x

xx

So

the

dom

ain

of x 2

is r

educ

ed t

o {2

,3,4

}.

Page 55: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Dom

ain

redu

ctio

n fo

r al

l-diff

eren

t (e.g

., R

ég

in)

•M

aint

ain

hype

rarc

con

sist

ency

on

},

,{

diffe

rent

-al

l3

21

xx

x

Sup

pose

for

exam

ple:

Dom

ain

of x 1

Dom

ain

of x 2

Dom

ain

of x 3

12

12

1234

The

n on

e ca

n re

duce

th

e do

mai

ns:

12

12

34

•In

gen

eral

, so

lve

a m

axim

um c

ardi

nalit

y m

atch

ing

prob

lem

and

app

ly a

theo

rem

of

Ber

ge

Page 56: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

z =

∞1234

234

1234

34

23

234

234

12

infe

asib

lex

= (

3,4

,1)

valu

e =

51

z =

∞z

= 5

2

Domain of x1

Domain of x2

Domain of x3

D2=

{2,3

}D

2={4

}

Dom

ain

of x 2

D2=

{2}

D2=

{3}

D1=

{3}

D1=

{2}

infe

asib

lex

= (

4,3

,2)

valu

e =

52

Page 57: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

3. S

olv

e u

sin

g a

hyb

rid

ap

pro

ach

Sea

rch

:

•B

ranc

h on

frac

tiona

l var

iabl

es in

sol

utio

n of

re

laxa

tion.

•D

rop

co

nstr

aint

s w

ith y ij’s

. T

his

mak

es r

elax

atio

n to

o

larg

e w

itho

ut m

uch

imp

rove

men

t in

qua

lity.

•If

vari

able

s ar

e al

l int

egra

l, b

ranc

h b

y sp

littin

g d

om

ain.

•U

se b

ranc

h an

d bo

und.

Infe

ren

ce: •

Use

bou

nds

prop

agat

ion

for

all i

nequ

aliti

es.

•M

aint

ain

hype

rarc

con

sist

ency

for

all-

diffe

rent

co

nstr

aint

s.

Page 58: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Rela

xatio

n:

•P

ut k

naps

ack

cons

trai

nt in

LP

.

•P

ut c

over

ing

ineq

ualit

ies

base

d on

kn

apsa

ck/a

ll-di

ffere

nt in

to L

P.

Page 59: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

}4,

,1{

8

546

},

,{

diff

eren

t-

all

30

25

3s.

t.

48

5m

in

32

1

32

31

21

32

1

32

1

32

1

…∈

≥+

+≥

+≥

+≥

+

≥+

+≤

++

jx

xx

x

xx

xx

xx

xx

xxx

x

zx

xx

Mo

del

for

hyb

rid

ap

pro

ach

Cov

erin

g in

equa

litie

s ge

nera

ted

with

all-

diff

Gen

erat

e an

d

pro

pag

ate

cove

ring

in

equa

litie

s at

ea

ch n

od

e o

f se

arch

tree

Page 60: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

z =

∞ 2 3 4

3 4

2 3 4

4

3

2 4

x=

(3

,4,1

)va

lue

= 5

1

z=

∞ne

w c

ove

rs:

x 1+

x2≥ 7

x 1+

x3≥ 6

x 2+

x3≥ 5

z =

52

infe

asib

lex

= (

4,3

,2)

valu

e =

52

x=

(3

, 3,

3)

z =

51

x 2 =

3x 2

=4

2 3

4 4

1 2 3

x 1=

2x 1

=3

x=

(2

,4,2

)va

lue

= 5

0

Page 61: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Opt

imiz

atio

n a

nd C

onst

rain

t P

rogr

am

min

g C

ompa

red

•C

onst

rain

t typ

es.

•O

ptim

izat

ion

may

be

supe

rior

whe

n co

nstr

aint

s co

ntai

n m

any

varia

bles

(an

d ha

ve g

ood

rela

xatio

ns).

•C

onst

rain

t pro

gram

min

g m

ay b

e su

perio

r w

hen

cons

trai

nts

cont

ain

few

var

iabl

es (

and

prop

agat

e w

ell).

Page 62: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Op

timiz

atio

n a

nd

CP

Co

mp

ared

•E

xplo

iting

str

uctu

re

•O

ptim

izat

ion

relie

s on

dee

p an

alys

is o

f the

m

athe

mat

ical

str

uctu

re o

f sp

ecifi

c cl

asse

s of

pro

blem

s,

part

icul

arly

pol

yhed

ral a

naly

sis,

whi

ch y

ield

s st

rong

cu

ttin

g pl

anes

.

•C

onst

rain

t pro

gram

min

g id

entif

ies

subs

ets

of

prob

lem

con

stra

ints

that

hav

e sp

ecia

l str

uctu

re (

e.g.

, all-different, cumulative

) an

d ap

ply

tailo

r-m

ade

dom

ain-

redu

ctio

n al

gorit

hms.

Page 63: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Op

timiz

atio

n a

nd

CP

Co

mp

ared

•R

elax

atio

n an

d in

fere

nce.

•O

ptim

izat

ion

crea

tes

stro

ng r

elax

atio

ns w

ith c

uttin

g pl

anes

, Lag

rang

ean

rel

axat

ion,

etc

. T

hese

pro

vide

bou

nds

on th

e op

timal

val

ue.

•C

onst

rain

t pro

gram

min

g ex

ploi

ts th

e po

wer

of i

nfer

ence

, es

peci

ally

in d

omai

n re

duct

ion

algo

rithm

s. T

his

redu

ces

the

sear

ch s

pace

.

Page 64: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Op

timiz

atio

n a

nd

CP

Co

mp

ared

•M

odel

ing

styl

e

•O

ptim

izat

ion

uses

dec

lara

tive

mod

els

that

can

be

solv

ed w

ith a

var

iety

of a

lgor

ithm

s. B

ut t

he

lang

uage

is h

ighl

y re

stric

ted

(e.g

, in

equa

lity

cons

trai

nts)

.

•C

onst

rain

t pro

gram

min

g m

odel

s ar

e fo

rmul

ated

in

a q

uasi

-pro

cedu

ral m

anne

r th

at g

ives

the

use

r m

ore

oppo

rtun

ity t

o di

rect

the

solu

tion

algo

rithm

. B

ut th

e m

odel

is m

ore

clos

ely

tied

to th

e so

lutio

n m

etho

d.

Page 65: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Con

sist

enc

y

•A c

onst

rain

t set

is co

nsis

tent

if ev

ery

part

ial

assi

gnm

ent t

hat v

iola

tes

no c

onst

rain

t is

feas

ible

(i.

e., c

an b

e ex

tend

ed to

a fe

asib

le s

olut

ion)

.

•C

onsi

sten

cy is

not

the

sam

e as

feas

ibili

ty.

•C

onsi

sten

cy m

eans

that

all

infe

asib

le p

artia

l as

sign

men

ts a

re e

xplic

itly

rule

d ou

t by

a co

nstr

aint

.

•F

ully

con

sist

ent c

onst

rain

t set

s ca

n be

sol

ved

with

out b

ackt

rack

ing.

Page 66: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Gen

eral

Co

nsi

sten

cy

Con

side

r th

e co

nstr

aint

set

{0,1

}

01

10

01

10

01

∈≥

−≥

+

jx

xx

xx

It is

not

con

sist

ent,

beca

use

x 1=

0 v

iola

tes

no

cons

trai

nt a

nd y

et is

infe

asib

le (

no s

olut

ion

has

x 1=

0).

Add

ing

the

cons

trai

nt x 1=

0m

akes

the

set

con

sist

ent.

Page 67: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

{0,1

}

sco

nst

rain

tot

her

01

10

01

10

01

≥−

≥+

jx

xx

xx

01

=x

11

=x

subt

ree

with

299no

des

but n

o fe

asib

le s

olut

ion

By

addi

ng t

he c

onst

rain

t x 1

= 0

, the

left

subt

ree

is

elim

inat

ed

Page 68: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Hyp

erar

c C

on

sist

ency

•A c

onst

rain

t set

is hy

pera

rc c

onsi

sten

tif e

very

va

lue

in e

very

var

iabl

e do

mai

n is

par

t of

som

e fe

asib

le

solu

tion.

•T

hat i

s, th

e do

mai

ns a

re r

educ

ed a

s m

uch

as

poss

ible

.

•If

all c

onst

rain

ts a

re “

bina

ry”

(con

tain

2

varia

bles

), h

yper

arc

cons

iste

nt =

arc

con

sist

ent.

•D

omai

n re

duct

ion

is C

P’s

big

gest

eng

ine.

Page 69: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Gra

ph c

olor

ing

prob

lem

s th

at c

an b

e so

lved

by

arc

cons

iste

ncy

mai

nten

ance

alo

ne.

Page 70: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

A M

ode

ling

Exa

mpl

e

Tra

velin

g sa

lesm

an p

robl

em:

Let c

ij=

dis

tanc

e fr

om c

ity ito

city

j.

Fin

d th

e sh

orte

st r

oute

that

vis

its e

ach

of

n c

ities

ex

actly

onc

e.

Page 71: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Inte

ger

Pro

gra

mm

ing

Mo

del

}1,0{

},

,1{,

disj

oint

all

,1

al

l,1

al

l,1

subj

ect t

o

min

imiz

e

⊂≥

==

∑∑

∑∑∑ ∈∈

ijVi

Wj

ij

jij

iij

ijij

ij

x

nW

Vx

ix

jx

xc

Let x

ij=

1 if

city

iim

med

iate

ly p

rece

des

city

j,

0 ot

herw

ise

Sub

tour

elim

inat

ion

cons

trai

nts

Page 72: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Co

nst

rain

t Pro

gram

min

g M

od

el

Let y

k=

the

kth

city

vis

ited.

The

mod

el w

ould

be

writ

ten

in a

spe

cific

con

stra

int

prog

ram

min

g la

ngua

ge b

ut w

ould

ess

entia

lly s

ay:

},

,1{)

,,

(di

ffere

nt-

all

subj

ect t

o

min

imiz

e

1

1

ny

yy

c

k

n

ky

yk

k

∑+

Varia

ble

indi

ces

“Glo

bal”

cons

trai

nt

Page 73: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ass

ignm

ent

prob

lem

with

two

linke

d fo

rmul

atio

ns

jj

x

yx

jy

ji

al

l ,

s'on

s

cons

trai

nt

s'on

s

cons

trai

nts.

t.

obje

ctiv

e

som

em

in

=

x i=

em

ploy

ee a

ssig

ned

time

sloti

y j=

tim

e sl

ot a

ssig

ned

empl

oyee

j

Mul

tiple

For

mul

atio

ns

Page 74: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Mu

ltipl

e F

orm

ula

tion

s

•T

he li

nkag

e of

two

mod

els

impr

oves

con

stra

int

prop

agat

ion.

•H

ere

a va

riabl

e (r

athe

r th

an a

con

stan

t) h

as a

var

iabl

e in

dex.

Page 75: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Ele

me

nt c

onst

rain

t

The

con

stra

int

5≤

ycca

n be

impl

emen

ted:

)),

,,

(,(

elem

ent

51

zc

cy

zn

…≤

Ass

ign

zth

e yt

h va

lue

in th

e lis

t

5≤

yxca

n be

impl

emen

ted:

The

con

stra

int

)),

,,

(,(

elem

ent

51

zx

xy

zn

…≤

(thi

s is

a s

light

ly d

iffer

ent

cons

trai

nt)

Add

the

cons

trai

nt

z=

xy

Page 76: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Cum

ula

tive

con

stra

int

()

Lr

rd

dt

tn

nn

),,

,(

),,

,(

),,

,(

cum

ulat

ive

11

1…

……

•U

sed

for

reso

urce

-con

stra

ined

sch

edul

ing.

•To

tal r

esou

rces

con

sum

ed b

y jo

bs a

t any

one

tim

e m

ust n

ot e

xcee

d L.

Job

sta

rt ti

mes

Job

du

ratio

ns

Job

res

ou

rce

req

uir

emen

ts

Page 77: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Min

imiz

e m

akes

pan

(no

dead

lines

, all

rele

ase

times

= 0

):

Min

mak

espa

n =

8

L

1 23

4 5

time

reso

urce

s

Cu

mu

lativ

eC

on

stra

int

()

237

),2,2,3,3,3(),5,5,3,3,3(

),,

,(

cum

ula

tive

s.t.

min

51

51

+≥

+≥

tz

tz

tt

z ⋮

Job

star

t tim

esD

urat

ions

Res

ourc

es u

sed

L

Page 78: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Pro

duct

ion

Sch

edu

ling

Cap

acity

C1

Cap

acity

C2

Cap

acity

C3

Man

ufac

turin

gU

nit

Sto

rage

Tank

sP

acki

ngU

nits

Page 79: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Fill

ing

of S

tora

geTa

nk

Leve

l

tu

t +

(b

/r)

u +

(b

/s)

Fill

ing

star

tsP

acki

ng s

tart

sF

illin

g en

dsP

acki

ng e

nds

Bat

ch s

ize

Man

ufac

-tu

ring

rate

Pac

king

ra

te

Nee

d to

enf

orce

ca

paci

ty c

onst

rain

t he

re o

nly

Page 80: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

()

0

,,

,,

,cu

mu

lativ

e

al

l,

1

al

l,

),1,1(,

,cu

mu

lativ

e

all

,

al

l,

s.t.

min

11

≥≥

+

−+

=≥

+≥

jj

nn

ii

iii

i

iii

ii

jj

jjj t

u

pe

sbsb

u

iC

us

rsb

it

sbu

v

mv

tj

Rt

jsb

uTT

……

Mak

esp

an

Job

rel

ease

tim

e

mst

ora

ge ta

nks

Job

du

ratio

n

Tan

k ca

pac

ity

pp

acki

ng u

nits

Page 81: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mp

le o

f M

od

el S

imp

lific

atio

n:

Lot s

izin

g &

sch

edu

ling

Day

:1

2

3

4

5

6

7

8

AB

A

Pro

duct

•A

t mos

t one

pro

duct

man

ufac

ture

d on

eac

h da

y.

•D

eman

ds f

or e

ach

prod

uct o

n ea

ch d

ay.

•M

inim

ize

setu

p +

hol

ding

cos

t.

Page 82: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

0 ,

}1,0{ ,

,

al

l ,1

, al

l ,

, al

l

,

, al

l

,

, al

l

,1,

all

,1

, al

l

,

, al

l

,

, al

l

,

s.t.

min

1,

1,

1,

1,

1,,

≥∈

=≤≤≥

−+

≥−

≤≤−

≥+

=+

+

∑∑∑

−−

itit

ijtit

itiit

itit

jtijt

ti

ijt

jtt

iijt

ti

it

itit

ti

itit

itit

itt

iit

ij

ijtij

itit s

xz

y

ty

ti

Cy

xt

iy

ti

yt

iy

yt

iy

zt

iy

zt

iy

yz

ti

sd

xs

qs

h

δ

δδδ

δ

Inte

ger

pro

gra

mm

ing

mo

del

(Wo

lsey)

Man

y va

riabl

es

Page 83: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

()

()

ti

xi

y

ti

sC

x

ti

sd

xs

sh

q

itt

itit

itit

itt

iti

iti

yy

tt

, al

l ,

0

, al

l ,0

,0

, al

l ,

s.t.

min

1,

1

=→

≠≥

≤≤

+=

+

+

∑∑

Min

imiz

e ho

ldin

g an

d se

tup

cost

s

Inve

ntor

y ba

lanc

e

Hyb

rid

mo

del

Pro

duct

ion

capa

city

Page 84: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mp

le o

f F

aste

r S

olu

tion

:P

rod

uct

co

nfig

ura

tion

•F

ind

optim

al s

elec

tion

of c

ompo

nent

s to

mak

e up

a p

rodu

ct,

subj

ect t

o co

nfig

urat

ion

cons

trai

nts.

•U

se c

ontin

uous

rel

axat

ion

of e

lem

ent c

onst

rain

ts a

nd r

educ

ed

cost

pro

paga

tion.

Page 85: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Com

puta

tiona

l Res

ults

(O

tto

sso

n &

Th

ors

tein

sso

n)

0.010.1110100

1000

8x10

16x2

020

x24

20x3

0

Pro

ble

m

Seconds

CP

LEX

CLP

Hyb

rid

Page 86: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mp

le o

f F

aste

r S

olu

tion

:M

ach

ine

sch

edu

ling

•S

ched

ule

jobs

on

mac

hine

s th

at r

un a

t diff

eren

t sp

eeds

and

in

cur

diffe

rent

cos

ts.

•E

ach

job

has

a re

leas

e tim

e an

d de

adlin

e.

•M

inim

ize

cost

usi

ng lo

gic-

base

d B

ende

rs d

ecom

posi

tion.

Page 87: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

()

ie

ix

Di

xt

jS

Dt

jR

t

C

jij

jjj

jx

j

jjj

jx

j

j

a

ll,

1,),

|(

),|

(cu

mu

lativ

e

a

ll,

a

ll,

s.t.

min

==

≤+≥

A m

odel

for

the

prob

lem

:

Rel

ease

dat

e fo

r jo

b j

Cos

t of

assi

gnin

g m

achi

ne

x jto

job

j

Mac

hine

ass

igne

d to

job j

Sta

rt ti

mes

of j

obs

assi

gned

to

mac

hine

i

Sta

rt ti

me

for

job j

Job

dura

tion

Dea

dlin

e

Page 88: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

For

a g

iven

set

of a

ssig

nmen

ts

t

he s

ubpr

oble

m is

the

set o

f 1-

mac

hine

pro

blem

s,x

()

ie

ix

Di

xt

jij

jj

al

l,

1,),

|(

),|

(cu

mu

lativ

es.

t.

0m

in

==

Fea

sibi

lity

of e

ach

prob

lem

is c

heck

ed b

y co

nstr

aint

pr

ogra

mm

ing.

O

ne o

r m

ore

infe

asib

le p

robl

ems

resu

lts in

an

opt

imal

val

ue ∞.

Oth

erw

ise

the

valu

e is

zer

o.

Page 89: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Sup

pose

ther

e is

no

feas

ible

sch

edul

e fo

r m

achi

ne

. T

hen

jobs

ca

nnot

all

be a

ssig

ned

to m

achi

ne

.

Sup

pose

in fa

ct th

at s

ome

subs

et

of th

ese

jobs

ca

nnot

be

assi

gned

to

mac

hine

.

The

n ad

d th

e co

nstr

aint

}|

{i

xj

j=

)(

so

me

for

x

Jj

ix

ij

∈≠

)(x

J i

i i

i

Page 90: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Kk

ix

Jj

ix

jS

Dt

jR

t

C

ki

j

jj

xj

jjj

jx

j

j

,,1

, al

l ),

(

som

efo

r

al

l,

al

l,

s.t.

min

…=

∈≠

≤+≥

Thi

s yi

elds

the

mas

ter

prob

lem

,

Thi

s pr

oble

m c

an b

e w

ritte

n as

a m

ixed

0-1

pro

blem

:

Page 91: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

}1,0{

al

l

},{

min

}{

max

,,1

, al

l ,1

)1(

al

l ,1

al

l,

al

l,

s.t.

min

−≤

=≥

−≥

≤+≥

∑∑∑

= ij

jj

jj

ijj

ij

ix

jij

iij

ji

ijij

j

jjij

ijij

y

iR

Sy

D

Kk

iy

jy

jS

yD

t

jR

t

yC

k j

Valid

co

nstr

aint

ad

ded

to

impr

ove

perf

orm

ance

Page 92: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Com

puta

tiona

l Res

ults

(J

ain

& G

ross

ma

nn

)

0.010.1110100

1000

1000

0

1000

00

12

34

5

Pro

ble

m s

ize

SecondsM

ILP

CP

OP

L

Hyb

rid

Pro

blem

siz

es

(jobs

, mac

hine

s)1

-(3

,2)

2 -

(7,3

)3

-(1

2,3)

4 -

(15,

5)5

-(2

0,5)

Eac

h da

ta p

oint

re

pres

ents

an

aver

age

of 2

inst

ance

s

MIL

P a

nd C

P ra

n ou

t of

mem

ory

on 1

of t

he

larg

est i

nsta

nces

Page 93: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Enh

ance

men

t Usi

ng “

Bra

nch

and

Che

ck”

(Th

ors

tein

sso

n)

Com

puta

tion

times

in s

econ

ds.

Pro

blem

s ha

ve 3

0 jo

bs, 7

mac

hine

s.

020406080100

120

140

12

34

5

Pro

ble

m

Seconds

Hyb

rid

Bra

nch

& c

heck

Page 94: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

CP

Mo

del

ing

Exa

mp

le

•W

ill u

se IL

OG

’s O

PL

Stu

dio

mod

elin

g la

ngua

ge.

•S

hip

load

ing

prob

lem

•Lo

ad 3

4 ite

ms

on th

e sh

ip in

min

imum

tim

e (m

in

mak

espa

n)

•E

ach

item

req

uire

s a

cert

ain

time

and

cert

ain

num

ber

of

wor

kers

.

•To

tal o

f 8 w

orke

rs a

vaila

ble.

•E

xam

ple

is fr

om O

PL

Stu

dio

3.5

Lang

uage

Man

ual,

pp 3

08-3

10.

Page 95: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Item

Dur

a-

tion

Labo

r

13

4

24

4

34

3

46

4

55

5

62

5

73

4

84

3

93

4

102

8

113

4

122

5

131

4

145

3

152

3

163

3

172

6

Item

Dur

a-

tion

Labo

r

182

7

191

4

201

4

211

4

222

4

234

7

245

8

252

8

261

3

271

3

282

6

291

8

303

3

312

3

321

3

332

3

342

3

Pro

blem

dat

a

Page 96: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

1 →

2,4

2 →

33

→5,

74

→5

5 →

66

→8

7 →

88

→9

9 →

109

→14

10 →

1110

→12

11 →

1312

→13

13 →

15,1

614

→15

15 →

1816

→17

17 →

1818

→19

18 →

20,2

119

→23

20 →

2321

→22

22 →

2323

→24

24 →

2525

→26

,30,

31,3

226

→27

27 →

2828

→29

30 →

2831

→28

32 →

3333

→34

Pre

cede

nce

cons

trai

nts

Page 97: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Thi

s is

act

ually

a p

robl

em th

at u

ses

the

cum

ulat

ive

cons

trai

nt.

()

etc.

,3,3

8),3,,4,4(

),2,,4,3(

),,

(cu

mul

ativ

e

etc.

,43

subj

ect t

o

min

14

12

34

1

21

+≥

+≥

+≥

+≥

tt

tt

ttt

z,

tzz

……

Page 98: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

int ca

pa

city

= 8

;in

t n

bT

ask

s =

34

;ra

ng

e T

ask

s 1

..n

bT

ask

s;in

t d

ura

tion

[Ta

sks]

= [3

,4,4

,6,…

,2];

int to

talD

ura

tion =

su

m(t

in T

ask

s) d

ura

tion

[t];

int d

em

an

d[T

ask

s] =

[4

,4,3

,4,…

,3];

stru

ct P

rece

den

ces

{in

t b

efo

re;

int a

fte

r;

} {Pre

ced

en

ces}

se

tOfP

rece

de

nce

s =

{<

1,2

>, <

1,4

>, …

, <

33

,34

> }

;

Page 99: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

sch

ed

ule

Ho

rizo

n =

to

talD

ura

tion;

Act

ivity

a[t in

Ta

sks]

(du

ratio

n[t])

;D

iscr

ete

Re

sou

rce

re

s(8

);A

ctiv

ity m

ake

spa

n(0

);m

inim

ize

ma

kesp

an

.end

sub

ject

to

fora

ll(t in

Task

s)a

[t] p

rece

de

s m

ake

spa

n;

fora

ll(p

in s

etO

fPre

ced

en

ces)

a[p

.be

fore

] p

rece

de

s a

[p.a

fte

r];

fora

ll(t in

Task

s)a

[t] re

qu

ire

s(d

em

an

d[t])

re

s;};

Page 100: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

III. A

lgor

ithm

ic Id

eas

Page 101: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Do

mai

n R

edu

ctio

n f

or

Ele

men

t

)),

,,

(,(

elem

ent

1z

xx

yn

can

be p

roce

ssed

with

a d

iscr

ete

dom

ain

redu

ctio

n al

gorit

hm th

at m

aint

ains

hvp

erar

c co

nsis

tenc

y.

othe

rwis

e}{

if

}|

{

{j

j

j

y

j

x

yz

x

xx

yy

Dj

xz

z

D

jD

DD

DD

jD

D

DD

D

=←

∅≠

∩∩

∩←

∈∪

Dom

ain

of z

Page 102: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mpl

e...

)),

,,

,(,

(el

emen

t4

32

1z

xx

xx

y

The

initi

al d

omai

ns a

re:

}70,

50,40{

}90,

80,50,

40{

}20,

10{

}50,

10{

}4,3,1{

}90,

80,60,

30,20{

4321

======

xxxxyz

DDDDDD

The

red

uced

dom

ains

are

:

}70,

50,40{

}90,

80{

}20,

10{

}50,

10{}3{

}90,

80{

4321

======

xxxxyz

DDDDDD

Page 103: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Co

ntin

uo

us

rela

xatio

n o

f ele

men

t

is tr

ivia

l.

The

con

vex

hull

rela

xatio

n is

{}

{} i

ii

ic

zc

max

min

≤≤

11

11

+−

+

+−

∑∑

∑∑

∈∈

∈∈

kz

mmx

kz

mmx y

y

yy

Di

Di

iii

Di

Di

iii

)),

,,

(,(

elem

ent

1z

cc

yn

)),

,,

(,(

elem

ent

1z

xx

yn

…ha

s th

e fo

llow

ing

rela

xatio

n

prov

ided

0 ≤

x i≤

mi (

and

whe

rek

= |D

y|).

Page 104: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

)),

,,

(,(

elem

ent

1z

xx

yn

If0

≤x i

≤m

for

alli

, the

n th

e co

nve

x h

ullr

elax

atio

n of

is

∑∑

∈∈

≤≤

−−

yy

Dj

jD

jj

xz

mk

x)1

(

plus

bou

nds,

whe

rek =

|Dy|

.

Page 105: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mpl

e...

50

50

)),

,(,

(el

emen

t

21

21

≤≤

≤≤

xxz

xx

y

The

con

vex

hull

rela

xatio

n is

:

50

50

5

21

21

21

≤≤

≤≤

+≤

≤−

+ xxx

xz

xx

Ifth

e ab

ove

rem

ains

val

id a

nd w

e ha

ve

40

1≤

≤x

20

45

92

04

52

12

1+

+≤

≤−

+x

xz

xx

Page 106: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mp

le:

x y, w

here

Dy=

{1,

2,3}

and

50

40

30

321

≤≤

≤≤

≤≤

xxx

Rep

lace

x y w

ith z

and

elem

ent(y

,(x1,

x 2,x

3),z

)

Rel

axat

ion:

47

12

04

71

24

71

54

72

04

71

20

47

12

47

15

47

20

32

13

21

32

13

21

10

++

+≤

≤−

++

++

≤≤

−+

+x

xx

zx

xx

xx

xz

xx

x

Page 107: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Do

mai

n R

edu

ctio

n f

or A

ll-d

iffer

ent

),

(nt

alld

iffer

e1

nyy…

can

be p

roce

ssed

with

an

algo

rithm

bas

ed o

n m

axim

um

card

inal

ity b

ipar

tite

mat

chin

g an

d a

theo

rem

of B

erge

.

Page 108: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Do

mai

n R

edu

ctio

n fo

r All-

diff

eren

t

Con

side

r th

e do

mai

ns

}6,5,4,3,2,1{

}5,1{

}5,3,2,1{

}5,3,2{}1{

54321

∈∈∈∈∈

yyyyy

Page 109: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

y 1 y 2 y 3 y 4 y 5

1 2 3 4 5 6

Indi

cate

dom

ains

with

edg

es

Fin

d m

axim

um c

ardi

nalit

y bi

part

ite m

atch

ing.

Mar

k ed

ges

in a

ltern

atin

g pa

ths

that

sta

rt a

t an

unco

vere

d ve

rtex

.

Mar

k ed

ges

in a

ltern

atin

g cy

cles

.

Rem

ove

unm

arke

d ed

ges

not i

n m

atch

ing.

Page 110: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Indi

cate

dom

ains

with

edg

es

Fin

d m

axim

um c

ardi

nalit

y bi

part

ite m

atch

ing.

y 1 y 2 y 3 y 4 y 5

1 2 3 4 5 6

Mar

k ed

ges

in a

ltern

atin

g pa

ths

that

sta

rt a

t an

unco

vere

d ve

rtex

.

Mar

k ed

ges

in a

ltern

atin

g cy

cles

.

Rem

ove

unm

arke

d ed

ges

not i

n m

atch

ing.

Page 111: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Do

mai

n R

edu

ctio

n fo

r All-

diff

eren

t

Dom

ains

hav

e be

en r

educ

ed:

}6,5,4,3,2,1{

}5,1{

}5,3,2,1{

}5,3,2{}1{

54321

∈∈∈∈∈

yyyyy

}6,4{

}5{

}3,2{

}3,2{

}1{

54321

∈∈∈∈∈

yyyyy

Page 112: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Do

mai

n R

edu

ctio

n f

or

Cu

mu

lativ

e

Use

“ed

ge f

indi

ng”

tech

niqu

es.

Page 113: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Rel

axat

ion

of

cum

ula

tive

Whe

re t =

(t 1

,…,t n

)ar

e jo

b st

art t

imes

d=

(d 1

,…,d

n)ar

e jo

b du

ratio

nsr

= (

r 1,…

,rn)

are

reso

urce

con

sum

ptio

n ra

tes

Lis

max

imum

tota

l res

ourc

e co

nsum

ptio

n ra

tea

= (

a 1,…

,an)

are

earli

est s

tart

tim

es

()

Lr

dt

,,

,cu

mul

ativ

e

Page 114: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

One

can

con

stru

ct a

rel

axat

ion

cons

istin

g of

the

follo

win

g va

lid c

uts.

If so

me

subs

et o

f job

s {j1,

…,j k

} ar

e id

entic

al (

sam

e re

leas

e tim

e a 0

, dur

atio

n d0,

and

res

ourc

e co

nsum

ptio

n ra

te

r 0),

then

[] 0

210

)1(

2)1

(1

dQ

Pk

Pa

Pt

tkj

j+

−+

+≥

++⋯

is a

val

id c

ut a

nd is

face

t-de

finin

g if

ther

e ar

e no

dea

dlin

es,

whe

re1

,0

=

=Qk

PrL

Q

Page 115: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

The

follo

win

g cu

t is

valid

for

any

subs

et o

f job

s {j

1,…

,j k}

i

k i

ij

jd

Lri

kt

tk

∑ =

+−

≥+

+1

2121)

(1⋯

Whe

re th

e jo

bs a

re o

rder

ed b

y no

ndec

reas

ing

r jd j

.

Ana

logo

us c

uts

can

be b

ased

on

dead

lines

.

Page 116: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mp

le:

Con

side

r pr

oble

m w

ith fo

llow

ing

min

imum

mak

espa

n so

lutio

n (a

ll re

leas

e tim

es =

0):

Min

mak

espa

n =

8

L

1 23

4 5

time

reso

urce

s

0

6

23

3

5,5

,3,3

,3s.

t.

min

765

43

21

745

43

2

145

43

21

32

1

54

32

1

≥≥

++

++

≥+

++

≥+

++

≥+

++

++

++

≥ jt

tt

tt

t

tt

tt

tt

tt

tt

t

tt

tt

tzz

Rel

axat

ion:

Res

ultin

g bo

und:

17

.5m

akes

pan

≥=

z

Fac

et d

efin

ing

Page 117: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Rel

axin

g D

isju

nct

ion

s o

f Lin

ear

Sys

tem

s

()

kk

kb

xA

≤∨

(Ele

men

tis a

spe

cial

cas

e.)

Con

vex

hull

rela

xatio

n.

0

1

al

l,

=

=≤

kkkk

kk

kk

y

y

xx

ky

bx

Ak

Add

ition

al v

aria

bles

nee

ded.

Can

be

exte

nded

to n

onlin

ear

syst

ems.

Page 118: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

“Big

M”

rela

xatio

n

0

1

al

l),

1(

=−

−≤

∑ kkk

kk

k

y

y

ky

Mb

xA

k

Whe

re (

taki

ng t

he m

ax in

eac

h ro

w):

k ik i

k ik i

xk

k ib

kk

bA

xA

M−

≤=

}'

al

l,

|{

max

max

''

Thi

s si

mpl

ifies

for

a di

sjun

ctio

n of

ineq

ualit

ies

whe

re 0

≤x j

≤m

j

()

kk

K kb

xa

≤=∨ 1

∑∑

==

−+

K k

kkK k

kkK

Mbx

Ma

11

1w

here

{}

jj

k jk

ma

M∑

=,0

ma

x

Page 119: Constraint Programming - Tepper Business Schoolpublic.tepper.cmu.edu/jnh/CPcourse.pdf · Constraint Programming Short Course ... • Job shop scheduling • Assembly line smoothing

Exa

mp

le:

≤=∨

≤=∨

=1

080

ma

chin

e

larg

e

550

ma

chin

e

sma

ll

0

ma

chin

e

no

xz

xzx

Out

put o

f mac

hine

Fix

ed c

ost o

f mac

hine

Con

vex

hull

rela

xatio

n:

0,

110

5

80

50 3

2

32

32

32 ≥≤

++

≤+

yy

yy

yy

x

yy

z

x

z

Big

-M r

elax

atio

n:

0,

1

8050

55

51

0

10

10 3

2

32

32

3

2

32 ≥≤

+≥≥+

≤−

≤+

yy

yy

yz

yz

yx

yx

yy

x

x

z