Aircraft routing: complexity and compact linear integer program - - PowerPoint PPT Presentation

aircraft routing complexity and compact linear integer
SMART_READER_LITE
LIVE PREVIEW

Aircraft routing: complexity and compact linear integer program - - PowerPoint PPT Presentation

Aircraft routing: complexity and compact linear integer program Axel Parmentier, Fr ed eric Meunier CERMICS Aussois January 6, 2014 Table of contents Aircraft maintenance routing problem 1 Flight string and aircraft routing


slide-1
SLIDE 1

Aircraft routing: complexity and compact linear integer program

Axel Parmentier, Fr´ ed´ eric Meunier

CERMICS

Aussois – January 6, 2014

slide-2
SLIDE 2

Table of contents

1

Aircraft maintenance routing problem Flight string and aircraft routing Connection graph

2

State graph and linear integer program Linear integer program without maintenance constraint Aircraft routing state graph State graph and linear integer programming

3

Complexity Routing equigraph Equigraphs properties NP-completeness Fixed parameter tractability

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 1 / 18

slide-3
SLIDE 3

Aircraft maintenance routing problem Flight string and aircraft routing

Aircraft routing problem

Feasible routing Feasible string

Paris 12:00 00:00 12:00 00:00 12:00 00:00 Day 1 Day 2 Day 3 12:00 00:00 Day 4 NY - Base Flight

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18

slide-4
SLIDE 4

Aircraft maintenance routing problem Flight string and aircraft routing

Aircraft routing problem

Feasible routing Cover constraint Feasible string

Paris 12:00 00:00 12:00 00:00 12:00 00:00 Day 1 Day 2 Day 3 12:00 00:00 Day 4 NY - Base Feasible string Unfeasible string D = 4

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18

slide-5
SLIDE 5

Aircraft maintenance routing problem Flight string and aircraft routing

Aircraft routing problem

Feasible routing Cover constraint Initial and final conditions Feasible string Maintenance constraint

Paris 12:00 00:00 12:00 00:00 12:00 00:00 Day 1 Day 2 12:00 00:00 Day 4 NY - Base Day 3 String 1 String 2 String 3 D = 4

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18

slide-6
SLIDE 6

Aircraft maintenance routing problem Flight string and aircraft routing

Aircraft routing problem

Feasible routing Cover constraint Initial and final conditions Feasible string Maintenance constraint

Paris 12:00 00:00 12:00 00:00 12:00 00:00 Day 1 Day 2 12:00 00:00 Day 4 NY - Base Day 3 String 1 String 2 String 3 D = 4

Mathematical formalism: connection graph.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18

slide-7
SLIDE 7

Aircraft maintenance routing problem Connection graph

Connection graph

Connection graph G = (V , A): Flight = vertex v Feasible connection = arc a Maintenance: Night = Directed cut δ−(U) A routing in the connection graph is a partition of the vertices

  • f V in ST-paths

g h i a b c d u v w x

Flight Connection not in partition

a b c d u v w x g h i A B C Airports

Connection in partition

Schedule Connection graph

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 3 / 18

slide-8
SLIDE 8

Aircraft maintenance routing problem Connection graph

Aircraft routing problem

Instance: A connection graph ((S, I, T), A) Night sets Nd and maintenance night sets Md ⊆ Nd Maintenance constraint D Initial and final constraints So

s , T o t

Question: Does a feasible routing exist?

Linear integer program

|Feas. Connections|D variables |Flights|(D + 1) constraints

Complexity results

NP-complete Polynomial when the number of airplanes is given.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 4 / 18

slide-9
SLIDE 9

State graph and linear integer program Linear integer program without maintenance constraint

Vertex path partition linear integer program

g h i a b c d u v w x

Flight Connection not in partition Connection in partition

Lemma

A vertex path partition P is entirely determined by connection arcs a ∈ P ∈ P xa = 1 if connection a is in the partition

  • a∈δ−(v)

xa =

  • a∈δ+(v)

xa ∀v ∈ I

  • a∈δ−(v)

xa ≥ 1 ∀v ∈ I ∪ T

  • a∈δ+(v)

xa = 1 ∀v ∈ S xa ∈ {0, 1} ∀a ∈ A How can we add constraint in the linear integer program? State graph.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 5 / 18

slide-10
SLIDE 10

State graph and linear integer program Aircraft routing state graph

State graph for aircraft routing

Base Non-Base a b b d e f g h i j k Network arc Network vertex State arc State vertex a b c d e f g h i j k

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 6 / 18

slide-11
SLIDE 11

State graph and linear integer program Aircraft routing state graph

State graph for aircraft routing

Base Non-Base a b b d e f g h i j k Network arc Network vertex State arc State vertex a b c d e f g h i j k

D state vertices for each vertex in the connection graph: State vertex = number of day since the last night check. State arc = day / (maintenance) night

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 6 / 18

slide-12
SLIDE 12

State graph and linear integer program Aircraft routing state graph

State graph for aircraft routing

Base Non-Base a b b d e f g h i j k Network arc Network vertex State arc State vertex a b c d e f g h i j k

D state vertices for each vertex in the connection graph: State vertex = number of day since the last night check. State arc = day / (maintenance) night

Lemma

A state path induces a feasible path in the connection graph. A partition

  • f the connection graph in state graph paths is a feasible routing.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 6 / 18

slide-13
SLIDE 13

State graph and linear integer program State graph and linear integer programming

Aircraft routing linear integer program

xα = 1 if state arc α is in the state path partition.

Theorem (P. & Meunier):

Same linear relaxation as the “classical” column generation approach.

  • α∈δ−(ϑ)

xα =

  • α∈δ+(ϑ)

xα ∀ϑ ∈ V

  • α ∈ δ−(ϑ)

ϑ ∈ Vv

xα ≥ 1 ∀v ∈ I ∪ T

  • α ∈ δ−(ϑ)

xα = 1 ∀ϑ ∈ S xα ∈ {0, 1} ∀α ∈ A Optimize passenger connections (cα = ca) min

  • α∈A

cαxα

State arc State vertex a b c d g h i j k Network vertex

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 7 / 18

slide-14
SLIDE 14

Complexity

Complexity

Theorem (P. & Meunier)

Aircraft routing feasibility problem is NP-complete.

Theorem (P. & Meunier)

Aircraft routing feasibility problem can be solved in O(nDk) where n is the number of flights and k is the number of airplanes. In the connection graph, each airplane is identified: needed for

  • ptimization but not for feasibility.

Introduce the routing equigraph (smaller graph for feasibility only). Definition and properties of equigraph: guaranty feasibility without identifying aircraft.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 8 / 18

slide-15
SLIDE 15

Complexity Routing equigraph

Equigraph definition

An acyclic directed graph is an equigraph if its vertices can be partitioned in three sets: Sources v ∈ S satisfying δ−(v) = ∅ and δ+(v) = ∅. Internal vertices v ∈ I satisfying δ−(v) = δ+(v) > 0. Sinks v ∈ S satisfying δ−(v) = ∅ and δ+(v) = ∅

Sources Sinks Internal vertices

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 9 / 18

slide-16
SLIDE 16

Complexity Routing equigraph

Routing equigraph

Routing equigraph G = (V , A): Flight = arc a (airport,time) = vertex v Maintenance: Night = Directed cut δ−(U) A routing in the routing equigraph is a partition

  • f the arcs of A in

ST-paths

S1

A = 0

Source Internal Vertex Sink Arc Non-maintenance night arc Mainteance night arc S2

A = 1

S1

B = 0

S2

B = 0

S1

C = 3

S2

C = 0

T 1

A = 0

T 2

A = 1

T 1

A = 0

T 2

A = 0

T 1

A = 3

T 2

A = 0

S1

s1 = 0

S2

s1 = 1

S1

s2 = 3

S2

s2 = 0

T 1

t1 = 0

T 2

t1 = 1

T 1

t2 = 0

T 2

t2 = 3

Schedule Routing equigraph

A digraph is an equigraph if δ−(v) = δ+(v) for all internal vertices (a vertex v is either a source, a sink or an internal vertex).

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 10 / 18

slide-17
SLIDE 17

Complexity Routing equigraph

State graph on the routing equigraph

  • α ∈ δ−(ϑ)

ϑ ∈ Vv

xα = 1, ∀v ∈ V becomes

  • α∈Aa

xα = 1, ∀a ∈ A State path partition gives an equigraph in the state graph. How to obtain a path partition of the arcs of an equigraph? Searching a feasible equigraph instead

  • f a path partition: faster

deterministic algorithm.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 11 / 18

slide-18
SLIDE 18

Complexity Equigraphs properties

Equigraph partition problem and greedy algorithm

Instance: An equigraph ((S, I, T), A) Solution: A partition of the arcs of G in S − T paths.

Greedy algorithm lemma

If P is a path from S to T, then G\P is still an equigraph

Step 1 Step 2 Step 3 Cover

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 12 / 18

slide-19
SLIDE 19

Complexity Fixed parameter tractability

Fixed parameter tractability

Theorem (P. & Meunier)

Aircraft routing is fixed parameter tractable in Dk. It can be solved in O(nDk).

The following algorithm is inspired from Fortune, Hopcroft, and Wyllie, the directed subgraph homeomorphism problem, 1980. Build a state graph

  • n the routing

equigraph Order the vertices of the equigraph in a topological ordering

Base Non-Base 1 4 3 6 7 9 11 2 5 8 10 Network arc Network vertex State arc State vertex 1 3 4 6 7 9 11 2 5 8 10

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 13 / 18

slide-20
SLIDE 20

Complexity Fixed parameter tractability

Pebbling game

Game goal:

Move k identical pebbles from the source configuration to the sink configurations set using legal moves. Vertices are enumerated using a topological ordering. For each vertex u, one legal move is done:

1 Pebble initially on ϑ1 can be moved to ϑ2 if

(ϑ1, ϑ2) is in G

2 Exactly one state arc α ∈ Aa is traversed by a

pebble for each a ∈ δ−(v).

Lemma

Pebbling game ⇔ State graph can be can be won partitioned in paths

Initial position Final position Unmoved pebble Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 14 / 18

slide-21
SLIDE 21

Complexity Fixed parameter tractability

Pebble configurations

Topological ordering: a set of induced subgraphs Gi = (Vi, Ai) where Vi = {vj|j ≥ i}

v1 v2 v3 v4 v5 v7 v9 v10 v11 v6 v8 W5 W6 before playing v6 after playing v6 Pebble positions

Number of pebbles on v Before playing vi: |δ−

G (v)| − |δ− Gi(v)|

After playing vi: |δ−

G (v)| − |δ− Gi+1(v)|

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 15 / 18

slide-22
SLIDE 22

Complexity Fixed parameter tractability

Algorithm complexity

The configuration graph GC is defined as follows: Vertices VC: Pebble configurations Arcs AC: Legal moves. |AC| ≤ |V | · Dk A path from the source configuration to the sink configurations set gives a solution to the pebbling game

Theorem (P. & Meunier)

Aircraft routing problem is polynomial when k is fixed. Pebbling game algorithm gives a solution in O(nDk)

Proof.

A path finding algorithm is linear in the number of arcs in an acyclic directed graph.

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 16 / 18

slide-23
SLIDE 23

Complexity Fixed parameter tractability

NP-completeness

Theorem (P. & Meunier)

Aircraft routing is NP-complete

Proof.

Reduction from the two commodity arc disjoint paths on acyclic directed graph.

S1 S2 s1 s2 t1 t2 T1 T2 Initial and terminal arcs Balance arcs to obtain an equigraph Arcs of initial graph H Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 17 / 18

slide-24
SLIDE 24

Complexity Fixed parameter tractability

Questions?

Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 18 / 18