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 Connection graph State graph and linear integer program 2 Linear integer program without maintenance constraint Aircraft routing state graph State graph and linear integer programming Complexity 3 Routing equigraph Equigraphs properties NP-completeness Fixed parameter tractability Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 1 / 18
Aircraft maintenance routing problem Flight string and aircraft routing Aircraft routing problem Feasible routing Feasible string 12:00 00:00 12:00 00:00 12:00 00:00 12:00 00:00 Paris NY - Base Day 1 Day 2 Day 3 Day 4 Flight Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18
Aircraft maintenance routing problem Flight string and aircraft routing Aircraft routing problem Feasible routing Feasible string Cover constraint 12:00 00:00 12:00 00:00 12:00 00:00 12:00 00:00 Paris NY - Base Day 1 Day 2 Day 3 Day 4 Feasible string Unfeasible string D = 4 Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18
Aircraft maintenance routing problem Flight string and aircraft routing Aircraft routing problem Feasible routing Feasible string Cover constraint Maintenance constraint Initial and final conditions 12:00 00:00 12:00 00:00 12:00 00:00 12:00 00:00 Paris NY - Base Day 1 Day 2 Day 3 Day 4 String 1 String 2 String 3 D = 4 Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18
Aircraft maintenance routing problem Flight string and aircraft routing Aircraft routing problem Feasible routing Feasible string Cover constraint Maintenance constraint Initial and final conditions 12:00 00:00 12:00 00:00 12:00 00:00 12:00 00:00 Paris NY - Base Day 1 Day 2 Day 3 Day 4 String 1 String 2 String 3 D = 4 Mathematical formalism: connection graph. Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 2 / 18
Aircraft maintenance routing problem Connection graph Connection graph Connection graph G = ( V , A ): Schedule Airports Flight = vertex v A c a g b d Feasible connection h B = arc a i u v w x C Maintenance: Night = Directed Connection graph cut δ − ( U ) g h i a b c d A routing in the connection graph is a u v w x Flight Connection not in partition Connection in partition partition of the vertices of V in ST -paths Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 3 / 18
Aircraft maintenance routing problem Connection graph Aircraft routing problem Instance: Linear integer program A connection graph | Feas . Connections | D (( S , I , T ) , A ) variables Night sets N d and | Flights | ( D + 1) maintenance night sets constraints M d ⊆ N d Maintenance constraint D Complexity results Initial and final constraints S o s , T o NP-complete t Question: Polynomial when the Does a feasible routing number of airplanes is exist? given. Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 4 / 18
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 � � x a = ∀ v ∈ I x a A vertex path partition a ∈ δ + ( v ) a ∈ δ − ( v ) P is entirely determined � x a ≥ 1 ∀ v ∈ I ∪ T by connection arcs a ∈ δ − ( v ) a ∈ P ∈ P � x a = 1 ∀ v ∈ S x a = 1 if connection a ∈ δ + ( v ) a is in the partition x a ∈ { 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
State graph and linear integer program Aircraft routing state graph State graph for aircraft routing a b e f g Non-Base b d i j k h Base e f a c g b d k h i j Network arc State arc Network vertex State vertex Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 6 / 18
State graph and linear integer program Aircraft routing state graph State graph for aircraft routing D state vertices for a b e f g each vertex in the Non-Base b d connection graph: i j k State vertex = h Base number of day e f a c g since the last b d night check. State arc = day / (maintenance) k h i j night Network arc State arc Network vertex State vertex Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 6 / 18
State graph and linear integer program Aircraft routing state graph State graph for aircraft routing D state vertices for a b e f g each vertex in the Non-Base b d connection graph: i j k State vertex = h Base number of day e f a c g since the last b d night check. State arc = day / (maintenance) k h i j night Network arc State arc Network vertex State vertex Lemma A state path induces a feasible path in the connection graph. A partition of the connection graph in state graph paths is a feasible routing . Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 6 / 18
State graph and linear integer program State graph and linear integer programming Aircraft routing linear integer program x α = 1 if state arc � � x α = ∀ ϑ ∈ V x α α is in the state path partition. α ∈ δ + ( ϑ ) α ∈ δ − ( ϑ ) � x α ≥ 1 ∀ v ∈ I ∪ T Theorem (P. & α ∈ δ − ( ϑ ) ϑ ∈ V v Meunier): � x α = 1 ∀ ϑ ∈ S Same linear relaxation as α ∈ δ − ( ϑ ) the “classical” column x α ∈ { 0 , 1 } ∀ α ∈ A generation approach. a c g Optimize passenger b d connections ( c α = c a ) � min c α x α α ∈A k h i j Network vertex State arc Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 7 / 18 State vertex
Complexity Complexity Theorem (P. & Meunier) Aircraft routing feasibility problem is NP-complete. Theorem (P. & Meunier) Aircraft routing feasibility problem can be solved in O ( nD k ) where n is the number of flights and k is the number of airplanes. In the connection graph, each airplane is identified: needed for optimization 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
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 Internal vertices Sinks Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 9 / 18
Complexity Routing equigraph Routing equigraph Routing equigraph Schedule G = ( V , A ): S 1 A = 0 T 1 A = 0 S 2 T 2 A = 1 A = 1 Flight = arc a S 1 T 1 B = 0 A = 0 S 2 B = 0 T 2 A = 0 (airport,time) = S 1 T 1 C = 3 A = 3 S 2 C = 0 T 2 A = 0 vertex v Routing equigraph Maintenance: Source Internal Vertex Sink S 1 s 1 = 0 T 1 t 1 = 0 S 2 T 2 s 1 = 1 t 1 = 1 Night = Directed cut δ − ( U ) S 1 T 1 s 2 = 3 t 2 = 0 S 2 s 2 = 0 T 2 t 2 = 3 Arc Non-maintenance night arc Mainteance night arc A routing in the routing A digraph is an equigraph if δ − ( v ) = δ + ( v ) equigraph is a partition for all internal vertices (a vertex v is either of the arcs of A in a source, a sink or an internal vertex). ST -paths Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 10 / 18
Complexity Routing equigraph State graph on the routing equigraph State path partition gives an equigraph in � x α = 1 , ∀ v ∈ V the state graph. α ∈ δ − ( ϑ ) ϑ ∈ V v How to obtain a path partition of the becomes arcs of an equigraph? Searching a feasible equigraph instead � x α = 1 , ∀ a ∈ A of a path partition: faster α ∈A a deterministic algorithm. Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 11 / 18
Complexity Equigraphs properties Equigraph partition problem and greedy algorithm Instance: Solution: An equigraph A partition of the arcs of (( S , I , T ) , A ) 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 3 Step 2 Cover Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 12 / 18
Complexity Fixed parameter tractability Fixed parameter tractability Theorem (P. & Meunier) Aircraft routing is fixed parameter tractable in D k . It can be solved in O ( nD k ). The following algorithm is inspired from Fortune, Hopcroft, and Wyllie, the directed subgraph homeomorphism problem , 1980. Build a state graph 1 4 7 9 11 on the routing Non-Base 3 6 equigraph 5 8 10 2 Base Order the vertices of 7 9 1 4 11 the equigraph in a topological ordering 3 6 10 2 5 8 Network arc State arc Axel Parmentier (CERMICS) Aircraft routing Aussois – January 6, 2014 13 / 18 Network vertex State vertex
Recommend
More recommend