Finding Temporal Paths under Waiting Time Constraints Philipp - - PowerPoint PPT Presentation

finding temporal paths under waiting time constraints
SMART_READER_LITE
LIVE PREVIEW

Finding Temporal Paths under Waiting Time Constraints Philipp - - PowerPoint PPT Presentation

Finding Temporal Paths under Waiting Time Constraints Philipp Zschoche TU Berlin July 7 2020, Algorithmic Aspects of Temporal Graphs III Based on joint work with Arnaud Casteigts, Anne-Sophie Himmel, and Hendrik Molter. Motivational Example:


slide-1
SLIDE 1

Finding Temporal Paths under Waiting Time Constraints

Philipp Zschoche TU Berlin July 7 2020, Algorithmic Aspects of Temporal Graphs III Based on joint work with Arnaud Casteigts, Anne-Sophie Himmel, and Hendrik Molter.

slide-2
SLIDE 2

Motivational Example: Disease Control

Source: The University of Hong Kong

Philipp Zschoche (TU Berlin) τ := lifetime 2 / 12

slide-3
SLIDE 3

Motivational Example: Disease Control

Source: The University of Hong Kong

Infectious diseases are often transmitted via physical contact.

Philipp Zschoche (TU Berlin) τ := lifetime 2 / 12

slide-4
SLIDE 4

Motivational Example: Disease Control

Source: The University of Hong Kong

Infectious diseases are often transmitted via physical contact. Contact Tracing:

(1) Identify and isolate infected persons (2) Isolate all potentially infected persons (by known cases).

Philipp Zschoche (TU Berlin) τ := lifetime 2 / 12

slide-5
SLIDE 5

Motivational Example: Disease Control

Source: The University of Hong Kong

Infectious diseases are often transmitted via physical contact. Contact Tracing:

(1) Identify and isolate infected persons (2) Isolate all potentially infected persons (by known cases).

At time of identification: a person may started long infection chains.

Philipp Zschoche (TU Berlin) τ := lifetime 2 / 12

slide-6
SLIDE 6

Motivational Example: Disease Control

Can s have (indirectly) infected z? Static graph:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 3 / 12

slide-7
SLIDE 7

Motivational Example: Disease Control

Can s have (indirectly) infected z? Static graph:

s z

Day 1:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 3 / 12

slide-8
SLIDE 8

Motivational Example: Disease Control

Can s have (indirectly) infected z? Static graph:

s z

Day 1:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 3 / 12

slide-9
SLIDE 9

Motivational Example: Disease Control

Can s have (indirectly) infected z? Static graph:

s z

Day 1:

s z

Day 2:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 3 / 12

slide-10
SLIDE 10

Motivational Example: Disease Control

Can s have (indirectly) infected z? Static graph:

s z

Day 1:

s z

Day 2:

s z

Day 3:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 3 / 12

slide-11
SLIDE 11

Motivational Example: Disease Control

Can s have (indirectly) infected z? Static graph:

s z

Day 1:

s z

Day 2:

s z

Day 3:

s z

⇒ Time information is crucial for infection transmission routes.

Philipp Zschoche (TU Berlin) τ := lifetime 3 / 12

slide-12
SLIDE 12

Temporal Graphs – Formal Definition

A temporal graph G = (V,(Ei)i∈[τ]) is defined as vertex set V with a list of edge sets E1,...,Eτ over V, where τ is the lifetime of G.

Philipp Zschoche (TU Berlin) τ := lifetime 4 / 12

slide-13
SLIDE 13

Temporal Graphs – Formal Definition

A temporal graph G = (V,(Ei)i∈[τ]) is defined as vertex set V with a list of edge sets E1,...,Eτ over V, where τ is the lifetime of G. G:

2 1 1 1, 2 2 3 3

Philipp Zschoche (TU Berlin) τ := lifetime 4 / 12

slide-14
SLIDE 14

Temporal Graphs – Formal Definition

A temporal graph G = (V,(Ei)i∈[τ]) is defined as vertex set V with a list of edge sets E1,...,Eτ over V, where τ is the lifetime of G. G:

2 1 1 1, 2 2 3 3

G1: layers

Philipp Zschoche (TU Berlin) τ := lifetime 4 / 12

slide-15
SLIDE 15

Temporal Graphs – Formal Definition

A temporal graph G = (V,(Ei)i∈[τ]) is defined as vertex set V with a list of edge sets E1,...,Eτ over V, where τ is the lifetime of G. G:

2 1 1 1, 2 2 3 3

G1: G2: layers

Philipp Zschoche (TU Berlin) τ := lifetime 4 / 12

slide-16
SLIDE 16

Temporal Graphs – Formal Definition

A temporal graph G = (V,(Ei)i∈[τ]) is defined as vertex set V with a list of edge sets E1,...,Eτ over V, where τ is the lifetime of G. G:

2 1 1 1, 2 2 3 3

G1: G2: G3: layers

Philipp Zschoche (TU Berlin) τ := lifetime 4 / 12

slide-17
SLIDE 17

Temporal Graphs – Formal Definition

A temporal graph G = (V,(Ei)i∈[τ]) is defined as vertex set V with a list of edge sets E1,...,Eτ over V, where τ is the lifetime of G. G:

2 1 1 1, 2 2 3 3

G1: G2: G3: G↓: layers underlying graph

Philipp Zschoche (TU Berlin) τ := lifetime 4 / 12

slide-18
SLIDE 18

Motivation: Disease Spreading

Source: Robert Koch-Institut

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-19
SLIDE 19

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-20
SLIDE 20

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-21
SLIDE 21

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious Recovered / Resistent

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-22
SLIDE 22

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious Recovered / Resistent

  • Infectious period:

5 days.

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-23
SLIDE 23

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious Recovered / Resistent

  • Infectious period:

5 days.

Day 1:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-24
SLIDE 24

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious Recovered / Resistent

  • Infectious period:

5 days.

Day 1:

s z

Day 4:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-25
SLIDE 25

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious Recovered / Resistent

  • Infectious period:

5 days.

Day 1:

s z

Day 4:

s z

Day 7:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-26
SLIDE 26

Motivation: Disease Spreading

Source: Robert Koch-Institut

Susceptible Infectious Recovered / Resistent

  • Infectious period:

5 days.

  • Disease spreads along

paths with bounded waiting times.

Day 1:

s z

Day 4:

s z

Day 7:

s z

Philipp Zschoche (TU Berlin) τ := lifetime 5 / 12

slide-27
SLIDE 27

Restless Paths – Formal Definition

A temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-28
SLIDE 28

Restless Paths – Formal Definition

A temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-29
SLIDE 29

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-30
SLIDE 30

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

temporal (s,z)-paths: s z 2 1 1 1 2 3 3 1-restless temporal (s,z)-path: s z 2 1 1 1 2 3 3

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-31
SLIDE 31

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

temporal (s,z)-paths: s z 2 1 1 1 2 3 3 1-restless temporal (s,z)-path: s z 2 1 1 1 2 3 3

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-32
SLIDE 32

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

temporal (s,z)-paths: s z 2 1 1 1 2 3 3 1-restless temporal (s,z)-path: s z 2 1 1 1 2 3 3

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-33
SLIDE 33

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

temporal (s,z)-paths: s z 2 1 1 1 2 3 3 1-restless temporal (s,z)-path: s z 2 1 1 1 2 3 3

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-34
SLIDE 34

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

temporal (s,z)-paths: s z 2 1 1 1 2 3 3 1-restless temporal (s,z)-path: s z 2 1 1 1 2 3 3

  • Temporal Paths: Xuan et al. [IJFCS ’03], Wu et al. [IEEE TKDE ’16]

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-35
SLIDE 35

Restless Paths – Formal Definition

A ∆-restless temporal (s,z)-path is a list of edges labeled with non-decreasing time steps that

  • the edges form an (s,z)-path in the underlying graph and
  • consecutive time steps differ by at most ∆.

temporal (s,z)-paths: s z 2 1 1 1 2 3 3 1-restless temporal (s,z)-path: s z 2 1 1 1 2 3 3

  • Temporal Paths: Xuan et al. [IJFCS ’03], Wu et al. [IEEE TKDE ’16]
  • Restless Temporal Walks: Himmel et al. [Complex Networks ’19]

Philipp Zschoche (TU Berlin) τ := lifetime 6 / 12

slide-36
SLIDE 36

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆.

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-37
SLIDE 37

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-38
SLIDE 38

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

para-NP-hard: “no” |G|f(k) time Max Degree Distance to Clique Lifetime

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-39
SLIDE 39

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

para-NP-hard: “no” |G|f(k) time Max Degree Distance to Clique Lifetime W[1]-hard: “no” f(k)·|G|O(1) time Distance to Disjoint Paths FVS Pathwith Treewidth

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-40
SLIDE 40

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

para-NP-hard: “no” |G|f(k) time Max Degree Distance to Clique Lifetime W[1]-hard: “no” f(k)·|G|O(1) time Distance to Disjoint Paths FVS Pathwith Treewidth FPT: f(k)·|G|O(1) time Vertex Cover Treedepth FES

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-41
SLIDE 41

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

para-NP-hard: “no” |G|f(k) time Max Degree Distance to Clique Lifetime W[1]-hard: “no” f(k)·|G|O(1) time Distance to Disjoint Paths FVS Pathwith Treewidth FPT: f(k)·|G|O(1) time Vertex Cover Treedepth FES Restless Path Length

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-42
SLIDE 42

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

para-NP-hard: “no” |G|f(k) time Max Degree Distance to Clique Lifetime W[1]-hard: “no” f(k)·|G|O(1) time Distance to Disjoint Paths FVS Pathwith Treewidth FPT: f(k)·|G|O(1) time Vertex Cover Treedepth FES Restless Path Length

static

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-43
SLIDE 43

Restless (s,z)-Path

Input: A temporal graph G = (V,(Ei)i∈[τ]), two vertices s,z ∈ V, and an integer ∆. Question: Is there a ∆-restless temporal (s,z)-path in G?

para-NP-hard: “no” |G|f(k) time Max Degree Distance to Clique Lifetime W[1]-hard: “no” f(k)·|G|O(1) time Distance to Disjoint Paths FVS Pathwith Treewidth FPT: f(k)·|G|O(1) time Vertex Cover Treedepth FES Restless Path Length

static

Timed FVS

Philipp Zschoche (TU Berlin) τ := lifetime 7 / 12

slide-44
SLIDE 44

Invitation to Temporal Graph Parameters

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-45
SLIDE 45

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not).

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-46
SLIDE 46

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc.

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-47
SLIDE 47

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-48
SLIDE 48

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-49
SLIDE 49

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

  • Temporal Matching is NP-hard on path,

[Mertzios et al., STACS ’20]

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-50
SLIDE 50

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

  • Temporal Matching is NP-hard on path,

[Mertzios et al., STACS ’20]

  • Temporal Exploration is W[1]-hard for pathwidth, and

[Bodlaender et al., IPL ’19]

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-51
SLIDE 51

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

  • Temporal Matching is NP-hard on path,

[Mertzios et al., STACS ’20]

  • Temporal Exploration is W[1]-hard for pathwidth, and

[Bodlaender et al., IPL ’19]

  • Restless Path is W[1]-hard for FVS.

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-52
SLIDE 52

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

  • Temporal Matching is NP-hard on path,

[Mertzios et al., STACS ’20]

  • Temporal Exploration is W[1]-hard for pathwidth, and

[Bodlaender et al., IPL ’19]

  • Restless Path is W[1]-hard for FVS.

With “+τ”: many problems become FPT, e.g., Restless Path with FVS+τ.

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-53
SLIDE 53

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

  • Temporal Matching is NP-hard on path,

[Mertzios et al., STACS ’20]

  • Temporal Exploration is W[1]-hard for pathwidth, and

[Bodlaender et al., IPL ’19]

  • Restless Path is W[1]-hard for FVS.

With “+τ”: many problems become FPT, e.g., Restless Path with FVS+τ. We need new parameters to understand this gap.

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-54
SLIDE 54

Invitation to Temporal Graph Parameters

Parameterized Complexity: categorize on which instances a problem is solvable (or presumably not). For static graph problems, literature has many parameters to do this: Vertex Cover, FVS, Treewidth, Diameter, etc. Temporal graph problems: often intractable:

  • Temporal Vertex Cover is NP-hard on stars,

[Akrida et al., ICALP ’18]

  • Temporal Matching is NP-hard on path,

[Mertzios et al., STACS ’20]

  • Temporal Exploration is W[1]-hard for pathwidth, and

[Bodlaender et al., IPL ’19]

  • Restless Path is W[1]-hard for FVS.

With “+τ”: many problems become FPT, e.g., Restless Path with FVS+τ. We need new parameters to understand this gap. Today: Lifting Feedback Vertex Set for path-related temporal problems.

Philipp Zschoche (TU Berlin) τ := lifetime 8 / 12

slide-55
SLIDE 55

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. (v,t)

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-56
SLIDE 56

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. (v,t)

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-57
SLIDE 57

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. Timed FVS: Idea: delete vertex appearances (e,t) (v,t) (v,t)

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-58
SLIDE 58

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. Timed FVS: Idea: delete vertex appearances Formal:

  • min. size X ⊆ V × [τ] such that

G↓(G −X) := (V,E′) is a forest, (e,t) (v,t) (v,t)

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-59
SLIDE 59

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. Timed FVS: Idea: delete vertex appearances Formal:

  • min. size X ⊆ V × [τ] such that

G↓(G −X) := (V,E′) is a forest, (e,t) (v,t) (v,t) where E′ := {{v,w} | ∃t : {v,w} ∈ Et ∧{(v,t),(w,t)}∩X = / 0}.

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-60
SLIDE 60

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. Timed FVS: Idea: delete vertex appearances Formal:

  • min. size X ⊆ V × [τ] such that

G↓(G −X) := (V,E′) is a forest, (e,t) (v,t) (v,t) where E′ := {{v,w} | ∃t : {v,w} ∈ Et ∧{(v,t),(w,t)}∩X = / 0}. Structural properties: Similar to FVS in static graphs.

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-61
SLIDE 61

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. Timed FVS: Idea: delete vertex appearances Formal:

  • min. size X ⊆ V × [τ] such that

G↓(G −X) := (V,E′) is a forest, (e,t) (v,t) (v,t) where E′ := {{v,w} | ∃t : {v,w} ∈ Et ∧{(v,t),(w,t)}∩X = / 0}. Structural properties: Similar to FVS in static graphs. Observation Underlying FVS ≤ Timed FVS ≤ Underlying FVS ·τ

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-62
SLIDE 62

Timed Feedback Vertex Set I

Underlying FVS: min |S|: G↓ −S is a forest. Timed FVS: Idea: delete vertex appearances Formal:

  • min. size X ⊆ V × [τ] such that

G↓(G −X) := (V,E′) is a forest, (e,t) (v,t) (v,t) where E′ := {{v,w} | ∃t : {v,w} ∈ Et ∧{(v,t),(w,t)}∩X = / 0}. Structural properties: Similar to FVS in static graphs. Observation Underlying FVS ≤ Timed FVS ≤ Underlying FVS ·τ algorithmically useful: NP-hard, but FPT. O∗(4x) time

Philipp Zschoche (TU Berlin) τ := lifetime 9 / 12

slide-63
SLIDE 63

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-64
SLIDE 64

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-65
SLIDE 65

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused.

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-66
SLIDE 66

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph.

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-67
SLIDE 67

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X.

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-68
SLIDE 68

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X. (4) Check for time edges between consecutive (v,t),(w,t) ∈ X.

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-69
SLIDE 69

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X. (4) Check for time edges between consecutive (v,t),(w,t) ∈ X.

(v,t1) ∈ O (w,t2) ∈ O ? (v,t1) ∈ O (w,t2) ∈ O ?

  • {v,w} ∈ Et1, t2 −∆ ≤ t1?

max{t1,t2 −∆} ≤ t′ ≤ min{t2,t1 +∆}?

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-70
SLIDE 70

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X. (4) Check for time edges between consecutive (v,t),(w,t) ∈ X.

(v,t1) ∈ O (w,t2) ∈ O ? (v,t1) ∈ O (w,t2) ∈ O ?

  • {v,w} ∈ Et1, t2 −∆ ≤ t1?

(v,t1) ∈ I (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t2 ≤ t1 +∆?

max{t1,t2 −∆} ≤ t′ ≤ min{t2,t1 +∆}?

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-71
SLIDE 71

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X. (4) Check for time edges between consecutive (v,t),(w,t) ∈ X.

(v,t1) ∈ O (w,t2) ∈ O ? (v,t1) ∈ O (w,t2) ∈ O ?

  • {v,w} ∈ Et1, t2 −∆ ≤ t1?

(v,t1) ∈ I (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t2 ≤ t1 +∆?

(v,t1) ∈ O (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t1 = t2?

max{t1,t2 −∆} ≤ t′ ≤ min{t2,t1 +∆}?

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-72
SLIDE 72

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X. (4) Check for time edges between consecutive (v,t),(w,t) ∈ X.

(v,t1) ∈ O (w,t2) ∈ O ? (v,t1) ∈ O (w,t2) ∈ O ?

  • {v,w} ∈ Et1, t2 −∆ ≤ t1?

(v,t1) ∈ I (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t2 ≤ t1 +∆?

(v,t1) ∈ O (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t1 = t2?

(v,t1) ∈ I (w,t2) ∈ O ?

  • max{t1,t2 −∆} ≤ t′ ≤ min{t2,t1 +∆}?

max{t1,t2 −∆} ≤ t′ ≤ min{t2,t1 +∆}? {v,w} ∈ Et′,

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-73
SLIDE 73

How to use Timed FVS

Theorem Restless Path is FPT parameterized by Timed FVS.

  • Alg. Outline: Let X be the Timed FVS.

(1) Guess whether (v,t) is Incoming, Outgoing, or unused. (2) Drop unused (v,t) from temporal graph. (3) Guess order of the remainder in X. (4) Check for time edges between consecutive (v,t),(w,t) ∈ X. (5) Find “unknown parts” with Multicolored Ind. Set on Chordal Graphs.

(v,t1) ∈ O (w,t2) ∈ O ? (v,t1) ∈ O (w,t2) ∈ O ?

  • {v,w} ∈ Et1, t2 −∆ ≤ t1?

(v,t1) ∈ I (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t2 ≤ t1 +∆?

(v,t1) ∈ O (w,t2) ∈ I ?

  • {v,w} ∈ Et2, t1 = t2?

(v,t1) ∈ I (w,t2) ∈ O ?

  • max{t1,t2 −∆} ≤ t′ ≤ min{t2,t1 +∆}?

{v,w} ∈ Et′,

Philipp Zschoche (TU Berlin) τ := lifetime 10 / 12

slide-74
SLIDE 74

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-75
SLIDE 75

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-76
SLIDE 76

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-77
SLIDE 77

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-78
SLIDE 78

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?
  • Is there a path P from x to y in T↓?

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-79
SLIDE 79

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?
  • Is there a path P from x to y in T↓?
  • Is there a ∆-restless path v to w in G[P] plus e1,e2?

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-80
SLIDE 80

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?
  • Is there a path P from x to y in T↓?
  • Is there a ∆-restless path v to w in G[P] plus e1,e2?

Lemma Restless Path linear time solvable on path.

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-81
SLIDE 81

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?
  • Is there a path P from x to y in T↓?
  • Is there a ∆-restless path v to w in G[P] plus e1,e2?

Lemma Restless Path linear time solvable on path.

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-82
SLIDE 82

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?
  • Is there a path P from x to y in T↓?
  • Is there a ∆-restless path v to w in G[P] plus e1,e2?

Intersection graphs of paths in trees are chordal. Lemma Restless Path linear time solvable on path.

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-83
SLIDE 83

Resolve Unknown Parts

First, if (v,t) is still in X remove v from T↓ := G↓(G −X).

s v w ... z x y t1 t2

For time edge e1 = ({v,x},t1) and e2 = ({w,y},t2):

  • Is departure time t1 and arrival time t2 “valid” (4 cases again)?
  • Is there a path P from x to y in T↓?
  • Is there a ∆-restless path v to w in G[P] plus e1,e2?

Intersection graphs of paths in trees are chordal. Lemma Restless Path linear time solvable on path. Lemma (Bentert et al., J. Scheduling 19) Multicolored Ind. Set on Chordal Graphs is FPT with # of colors.

Philipp Zschoche (TU Berlin) τ := lifetime 11 / 12

slide-84
SLIDE 84

Conclusion

static

W[1]-hard: para-NP-hard: Distance to Clique Vertex Cover Timed FVS Distance to Disjoint Paths Treedepth FES Max Degree Restless Path Length FVS Pathwith Treewidth Lifetime

Philipp Zschoche (TU Berlin) τ := lifetime 12 / 12

slide-85
SLIDE 85

Conclusion

static

W[1]-hard: para-NP-hard: Distance to Clique Vertex Cover Timed FVS Distance to Disjoint Paths Treedepth FES Max Degree Restless Path Length FVS Pathwith Treewidth Lifetime

Future: temporal parameters!

Philipp Zschoche (TU Berlin) τ := lifetime 12 / 12

slide-86
SLIDE 86

Conclusion

static

W[1]-hard: para-NP-hard: Distance to Clique Vertex Cover Timed FVS Distance to Disjoint Paths Treedepth FES Max Degree Restless Path Length FVS Pathwith Treewidth Lifetime

Future: temporal parameters! How to design?

Philipp Zschoche (TU Berlin) τ := lifetime 12 / 12

slide-87
SLIDE 87

Conclusion

static

W[1]-hard: para-NP-hard: Distance to Clique Vertex Cover Timed FVS Distance to Disjoint Paths Treedepth FES Max Degree Restless Path Length FVS Pathwith Treewidth Lifetime

Future: temporal parameters! How to design? How to compute?

Philipp Zschoche (TU Berlin) τ := lifetime 12 / 12

slide-88
SLIDE 88

Conclusion

static

W[1]-hard: para-NP-hard: Distance to Clique Vertex Cover Timed FVS Distance to Disjoint Paths Treedepth FES Max Degree Restless Path Length FVS Pathwith Treewidth Lifetime

Future: temporal parameters! How to design? How to compute? Experiments?

Philipp Zschoche (TU Berlin) τ := lifetime 12 / 12

slide-89
SLIDE 89

Conclusion

static

W[1]-hard: para-NP-hard: Distance to Clique Vertex Cover Timed FVS Distance to Disjoint Paths Treedepth FES Max Degree Restless Path Length FVS Pathwith Treewidth Lifetime

Future: temporal parameters! How to design? How to compute? Experiments? Thank you!

Philipp Zschoche (TU Berlin) τ := lifetime 12 / 12