Top Banner
Freie Universität Berlin Track Allocation and Path Configurations Ralf Borndörfer 2015 Workshop on Combinatorial Optimization with Applications in Transportation and Logistics Beijing, 29.07.2015 1 Track Allocation and Path Configurations | COTL 2015
28

Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Nov 17, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Track Allocation and Path Configurations

Ralf Borndörfer

2015 Workshop on Combinatorial Optimization with Applications in

Transportation and Logistics

Beijing, 29.07.2015

1 Track Allocation and Path Configurations | CO∈TL 2015

Page 2: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Track Allocation and Path Configurations | CO∈TL 2015 4

Track Allocation:

Block Occupation

Page 3: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Track Allocation (Train Timetabling) Problem

Charnes and Miller (1956), Szpigel (1973), Jovanovic and Harker (1991),

Cai and Goh (1994), Schrijver and Steenbeck (1994), Carey and Lockwood (1995)

Nachtigall and Voget (1996), Odijk (1996) Higgings, Kozan and Ferreira (1997)

Brannlund, Lindberg, Nou, Nilsson (1998), Lindner (2000), Oliveira and Smith (2000)

Caprara, Fischetti and Toth (2002), Peeters (2003)

Kroon and Peeters (2003), Mistry and Kwan (2004)

Barber, Salido, Ingolotti, Abril, Lova, Tormas (2004)

Semet and Schoenauer (2005),

Caprara, Monaci, Toth and Guida (2005)

Kroon, Dekker and Vromans (2005),

Vansteenwegen and Van Oudheusden (2006), Liebchen (2006)

Cacchiani, Caprara, T. (2006), Cachhiani (2007)

Caprara, Kroon, Monaci, Peeters, Toth (2006)

Borndoerfer, Schlechte (2005, 2007, 2009, 2010, 2011, 2012), Caimi G., Fuchsberger M., Laumanns M., Schüpbach K. (2007)

Fischer, Helmberg, Janßen, Krostitz (2008, 2011)

Lusby, Larsen, Ehrgott, Ryan (2009)

Caimi (2009), Klabes (2010)

...

Track Allocation and Path Configurations | CO∈TL 2015 5

Page 4: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Track Allocation (= Routes in Space-Time)

Railway Network + Trains Train Routes + Timetable

Track Allocation and Path Configurations | CO∈TL 2015 6

Page 5: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Integrated Train Routing and Scheduling

Routing: Flow Scheduling: Headway constraints

Track Allocation and Path Configurations | CO∈TL 2015 7

Page 6: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Block Occupation Conflict

Track Allocation and Path Configurations | CO∈TL 2015 8

Page 7: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Track Allocation Problem

Train Path Packing Problem Track Allocation and Path Configurations | CO∈TL 2015 9

Page 8: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Multicommodity Flow + Arc Packing Model

Block occupation conflict graph (here: interval graph, perfect)

Conflict cliques

Local for each block

Packing constraints = local constraints

Track Allocation and Path Configurations | CO∈TL 2015 10

Page 9: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Integ.,}1,0{(iii)

Conflicts1(ii)

Trains,)((i)

max(APP)

),(

)( )(

IiAax

Kkx

IiVvvxx

xc

i

a

kia

i

a

i

va va

i

a

i

a

Ii Aa

i

a

i

a

i i

Arc Packing Model

Track Allocation and Path Configurations | CO∈TL 2015 11

Theorem (Lukac [2004]):

Let H be a quadrangle-linear headway matrix for train types Y, i.e.,

𝐻 𝑖, 𝑗 + 𝐻 𝑗, 𝑘 ≥ 𝐻 𝑖, 𝑘 + 𝐻(𝑗, 𝑗) ∀𝑖, 𝑗, 𝑘.

Then all maximal cliques in 𝐺𝐻 are of the form

𝑖 × [𝑡𝑖 , 𝑡𝑖 + 𝐻 𝑖, 𝑖 − 1]

𝑖∈𝑌

,

if after setting 𝑡𝑖0 = 0 for some 𝑖0 ∈ 𝑌 the following holds for any different 𝑖, 𝑗:

𝐻 𝑖, 𝑖 − 𝐻 𝑗, 𝑖 ≤ 𝑡𝑗 − 𝑡𝑖 ≤ 𝐻 𝑖, 𝑗 − 𝐻(𝑗, 𝑗).

Page 10: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Integ.,}1,0{(iii)

Conflicts1(ii)

Trains,)((i)

max(APP)

),(

)( )(

IiAax

Kkx

IiVvvxx

xc

i

a

kia

i

a

i

va va

i

a

i

a

Ii Aa

i

a

i

a

i i

Arc Packing Model

Track Allocation and Path Configurations | CO∈TL 2015 12

Page 11: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Block Occupation Configurations (B., Schlechte [2007])

Track Allocation and Path Configurations | CO∈TL 2015 13

Page 12: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Integ.}1,0{(v)

Integ.,}1,0{(iv)

Coupling,(iii)

Configs1(ii)

Trains,)((i)

max(ACP)

)( )(

Qqy

IiAax

IiAaxy

Jjy

IiVvvxx

xc

q

ia

ia

Qqaq

Qqq

iva va

ia

ia

Ii Aa

ia

ia

j

i i

Integ.,}1,0{(iii)

Conflicts1(ii)

Trains,)((i)

max(APP)

),(

)( )(

IiAax

Kkx

IiVvvxx

xc

i

a

kia

i

a

i

va va

i

a

i

a

Ii Aa

i

a

i

a

i i

Arc Packing and Arc Configuration Model

Track Allocation and Path Configurations | CO∈TL 2015 14

Page 13: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Integ.}1,0{(v)

Integ.,}1,0{(iv)

Coupling(iii)

Configs1(ii)

Trains,)((i)

max(ACP)

)( )(

Qqy

IiAax

Aaxy

Jjy

IiVvvxx

xc

q

ia

Ii

ia

Qqaq

Qqq

iva va

ia

ia

Ii Aa

ia

ia

j

i i

Integ.,}1,0{(iii)

Conflicts1(ii)

Trains,)((i)

max(APP)

),(

)( )(

IiAax

Kkx

IiVvvxx

xc

i

a

kia

i

a

i

va va

i

a

i

a

Ii Aa

i

a

i

a

i i

Arc Packing and Configuration Model

Track Allocation and Path Configurations | CO∈TL 2015 15

Page 14: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Nonneg.}1,0{(v)

Nonneg.}1,0{(iv)

Coupling0(iii)

Configs1(ii)

Trains1(i)

max(PCP)

Qqy

Ppx

Aayx

Jjy

Iix

xc

q

p

Qqaq

Ppap

Qqq

Ppp

Ii Pp pap

ia

j

i

i

Integ.,}1,0{(iii)

Conflicts1(ii)

Trains,)((i)

max(APP)

),(

)( )(

IiAax

Kkx

IiVvvxx

xc

i

a

kia

i

a

i

va va

i

a

i

a

Ii Aa

i

a

i

a

i i

Arc Packing and Path Configuration Model

Track Allocation and Path Configurations | CO∈TL 2015 16

Page 15: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Model Comparison

Track Allocation and Path Configurations | CO∈TL 2015 17

APP

APP'

PCP

PPP

ACP

Theorem (B., Schlechte [2007]):

vIP(PCP) = vIP(ACP)

= vIP (APP) = vIP(PPP)

= vIP(APP')

and

vLP(PCP) = vLP(ACP)

vLP (APP) = vLP(PPP)

vLP(APP').

Page 16: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Column Generation Algorithm

Track Allocation and Path Configurations | CO∈TL 2015 18

Solve Integer Program

Solve Linear

Program

All fixed?

begin

Fix variables

stop?

end

Yes

No

Yes

No

Compute duals

Generate configs

Generate paths

Page 17: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Configuration Pricing = Shortest Path Problem (B., Schlechte [2007])

Track Allocation and Path Configurations | CO∈TL 2015 19

Page 18: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Configuration Pricing = Shortest Path Problem

Track Allocation and Path Configurations | CO∈TL 2015 20

Page 19: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Nonneg.0(v)

Nonneg.0(iv)

)(Coupling0(iii)

)(Configs1(ii)

)(Trains1(i)

max(PLP)

Qqy

Ppx

Aayx

πJjy

γIix

xc

q

p

a

Qqa

q

Ppa

p

j

Qq

q

i

Pp

p

Ii Pp pa

p

i

a

j

i

i

Configuration LP

Track Allocation and Path Configurations | CO∈TL 2015 21

0,,(iii)

Configs,0(ii)

Paths,(i)

min(DUA)

JjQq

IiPpc

j

qa

aj

i

pa

i

a

pa

ai

Ii Jj

ji

Page 20: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Prop. (B., Schlechte [2007]):

Config pricing is an acyclic shortest path problem with arc weights ca = a, that can be solved in polynomial time.

Configuration Pricing = Shortest Path Problem

Track Allocation and Path Configurations | CO∈TL 2015 22

0,,(iii)

Configs,0(ii)

Paths,(i)

min(DUA)

JjQq

IiPpc

j

qa

aj

i

pa

i

a

pa

ai

Ii Jj

ji

Page 21: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Prop. (B., Schlechte [2007]):

Route pricing is an acyclic shortest path problem with arc weights 𝑐 𝑎 = −𝑐𝑎 + 𝜆𝑎, that can be solved in polynomial time.

Path Pricing = Shortest Path Problem

Track Allocation and Path Configurations | CO∈TL 2015 23

0,,(iii)

Configs,0(ii)

Paths,(i)

min(DUA)

JjQq

IiPpc

j

qa

aj

i

pa

i

a

pa

ai

Ii Jj

ji

Page 22: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Model Comparison

Track Allocation and Path Configurations | CO∈TL 2015 24

APP

APP'

PCP

PPP

ACP

Theorem (B., Schlechte [2007]):

vIP(PCP) = vIP(ACP)

= vIP (APP) = vIP(PPP)

= vIP(APP')

and

vLP(PCP) = vLP(ACP)

vLP (APP) = vLP(PPP)

vLP(APP').

vLP(PCP) and vLP(ACP) can be

computed in polynomial time.

Page 23: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin A Dual Bound

Prop. (B., Schlechte [2007]): ([+]+,[+]+,) is dual feasible for PLP and

(, , )= [+]+i+ [+]+

j

is an upper bound on v(PLP).

Track Allocation and Path Configurations | CO∈TL 2015 25

0,,(iii)

Configs,0(ii)

Paths,(i)

min(DUA)

JjQq

IiPpc

j

qa

aj

i

pa

i

a

pa

ai

Ii Jj

ji

)( iγ

j

pa

ajjj

qa

aQq

j

i

pa

a

i

aiii

pa

a

i

aPp

i

QqJj

PpIicc

j

i

,max

,)()(max

Page 24: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Solving the LP-Relaxation

Track Allocation and Path Configurations | CO∈TL 2015 26

Page 25: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Rapid Branching & Track Allocation (B., Schlechte, Weider, Reuther [2013])

Track Allocation and Path Configurations | CO∈TL 2015 27

HaKaFu, req32, 1140 requests, 30 mins time windows

Page 26: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin

Packing vs. Configuration Model ( Schlechte [2011])

Scenario REQ_36 from ttplib.zib.de (Packing , Config )

Track Allocation and Path Configurations | CO∈TL 2015 28

Page 27: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Track Allocation and Train Timetabling

BAB: Branch-and-Bound

PAB: Price-and-Branch

BAP: Branch-and-Price

Track Allocation and Path Configurations | CO∈TL 2015 29

Article Stations Tracks Trains Modell/Approach

Szpigel [1973] 6 5 10 Packing/Enumeration

Brännlund et al. [1998] 17 16 26 Packing/ Lagrange, BAB

Caprara et al. [2002] 74 (17) 73 (16) 54 (221) Packing/ Lagrange, BAB

B. & Schlechte [2007] 37 120 570 Config/PAB

Caprara et al. [2007] 102 (16) 103 (17) 16 (221) Packing/PAB

Fischer et al. [2008] 656 (104) 1210 (193) 117 (251) Packing/Bundle, IP Rounding

Lusby et al. [2008] ??? 524 66 (31) Packing/BAP

B. & Schlechte [2010] 37 120 >1.000 Config/Rapid Branching

Page 28: Track Allocation and Path Configurations · (iii) { 0 ,1 } , Integ. (ii) 1 Conflicts (i) ( ) , Trains (APP) max ( , ) ( ) ( ) x a A i I x k K x x v v V i I c x i a a i k i a i a v

Freie Universität Berlin Thank you for your attention

Ralf Borndörfer Freie Universität Berlin Zuse-Institute Berlin Takustr. 7 14195 Berlin-Dahlem Fon (+49 30) 84185-243 Fax (+49 30) 84185-269

[email protected] www.zib.de/borndoerfer

Track Allocation and Path Configurations | CO∈TL 2015 51 (Photo courtesy of DB Mobility Logistics AG)