Temporal Vertex Cover with a Sliding Time Window George B. Mertzios - - PowerPoint PPT Presentation

temporal vertex cover with a sliding time window
SMART_READER_LITE
LIVE PREVIEW

Temporal Vertex Cover with a Sliding Time Window George B. Mertzios - - PowerPoint PPT Presentation

Temporal Vertex Cover with a Sliding Time Window George B. Mertzios Durham University These results have been presented in ICALP 2018 Joint work with: Eleni C. Akrida, University of Liverpool, Paul G. Spirakis, University of Liverpool, Viktor


slide-1
SLIDE 1

Temporal Vertex Cover with a Sliding Time Window

George B. Mertzios Durham University

These results have been presented in ICALP 2018 Joint work with: Eleni C. Akrida, University of Liverpool, Paul G. Spirakis, University of Liverpool, Viktor Zamaraev, Durham University

AlgoUK, University of Liverpool September 2018

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 1 / 40

slide-2
SLIDE 2

Static and Temporal Graphs

Modern networks are highly dynamic: Social networks: friendships are added/removed, individuals leave, new ones enter Transportation networks: transportation units change with time their position in the network Physical systems: e.g. systems of interacting particles The common characteristic in all these applications: the graph topology is subject to discrete changes over time ⇒ the notion of vertex adjacency must be appropriately re-defined (by introducing the time dimension in the graph definition) Various graph concepts (e.g. reachability, connectivity): crucially depend on the exact temporal ordering of the edges

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 2 / 40

slide-3
SLIDE 3

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-4
SLIDE 4

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function.

temporal graph: temporal instances:

1,4 2,4 3

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-5
SLIDE 5

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function.

temporal graph: temporal instances:

1,4 2,4 3

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-6
SLIDE 6

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function.

temporal graph: temporal instances:

1,4 2,4 3

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-7
SLIDE 7

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function.

temporal graph: temporal instances:

1,4 2,4 3

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-8
SLIDE 8

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function.

temporal graph: temporal instances:

1,4 2,4 3

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-9
SLIDE 9

Temporal graphs

Formally:

Definition (Temporal Graph)

A temporal graph is a pair (G, λ) where: G = (V, E) is an underlying (di)graph and λ : E → 2N is a discrete time-labeling function. Alternatively, we can view it as a sequence of static graphs, the snapshots:

c u v

1

c u v

2

c u v

3

c u v

4

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 3 / 40

slide-10
SLIDE 10

Example: static vs temporal graphs

From paths to temporal paths:

C A B G D E F

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 4 / 40

slide-11
SLIDE 11

Example: static vs temporal graphs

From paths to temporal paths:

C A B G D E F

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 4 / 40

slide-12
SLIDE 12

Example: static vs temporal graphs

From paths to temporal paths:

C A B G D E F 4 6 2 8 3 7 4 1 2 3 3 4

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 4 / 40

slide-13
SLIDE 13

Example: static vs temporal graphs

From paths to temporal paths:

C A B G D E F 4 6 2 8 3 7 4 1 2 3 3 4

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 4 / 40

slide-14
SLIDE 14

Overview

Basic definitions Temporal vertex cover Temporal vertex cover with a sliding time window Open problems

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 5 / 40

slide-15
SLIDE 15

Basic definitions I

To specify a temporal graph class, we can: either restrict the underlying graph G,

  • r restrict the labeling λ : E → 2N (or both)

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 6 / 40

slide-16
SLIDE 16

Basic definitions I

To specify a temporal graph class, we can: either restrict the underlying graph G,

  • r restrict the labeling λ : E → 2N (or both)

Definition (Temporal Graph Classes)

For a class X of static graphs we say that a temporal graph (G, λ) is X temporal, if G ∈ X; always X temporal, if Gi ∈ X for every i ∈ [T] = {1, 2, . . . , T}.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 6 / 40

slide-17
SLIDE 17

Basic definitions I

To specify a temporal graph class, we can: either restrict the underlying graph G,

  • r restrict the labeling λ : E → 2N (or both)

Definition (Temporal Graph Classes)

For a class X of static graphs we say that a temporal graph (G, λ) is X temporal, if G ∈ X; always X temporal, if Gi ∈ X for every i ∈ [T] = {1, 2, . . . , T}.

Definition (Temporal Vertex Subset)

A pair (u, t) ∈ V × [T] is called the appearance of vertex u at time t. A temporal vertex subset of (G, λ) is a set S ⊆ V × [T] of vertex appearances in (G, λ).

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 6 / 40

slide-18
SLIDE 18

Basic definitions II

Definition (Edge is Temporally Covered)

A vertex appearance (w, t) temporally covers an edge e if: (i) w covers e, i.e. w ∈ e, and (ii) t ∈ λ(e), i.e. the edge e is active during the time slot t.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 7 / 40

slide-19
SLIDE 19

Basic definitions II

Definition (Edge is Temporally Covered)

A vertex appearance (w, t) temporally covers an edge e if: (i) w covers e, i.e. w ∈ e, and (ii) t ∈ λ(e), i.e. the edge e is active during the time slot t. Example:

c u v w

G1

c u v w

G2

c u v w

G3

c u v w

G4

c u v w

G5

c u v w

G6

c u v w

G7

c u v w

G8

– (c, 3) temporally covers edge cv, but – (c, 3) temporally covers neither cu, nor cw.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 7 / 40

slide-20
SLIDE 20

Basic definitions: Temporal Vertex Cover

Definition (Temporal Vertex Cover)

A temporal vertex cover of (G, λ) is a temporal vertex subset S of (G, λ) such that every edge e ∈ E(G) is temporally covered by at least one vertex appearance in S.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 8 / 40

slide-21
SLIDE 21

Basic definitions: Temporal Vertex Cover

Definition (Temporal Vertex Cover)

A temporal vertex cover of (G, λ) is a temporal vertex subset S of (G, λ) such that every edge e ∈ E(G) is temporally covered by at least one vertex appearance in S. Example

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

– {(c, 2), (c, 3), (c, 8)} is a Temporal Vertex Cover

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 8 / 40

slide-22
SLIDE 22

Basic definitions: Temporal Vertex Cover

Definition (Temporal Vertex Cover)

A temporal vertex cover of (G, λ) is a temporal vertex subset S of (G, λ) such that every edge e ∈ E(G) is temporally covered by at least one vertex appearance in S. Example

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

– {(c, 2), (c, 3), (c, 8)} is a Temporal Vertex Cover – {(c, 5)} is a minimum Temporal Vertex Cover

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 8 / 40

slide-23
SLIDE 23

Basic definitions: Temporal Vertex Cover

Definition (Temporal Vertex Cover)

A temporal vertex cover of (G, λ) is a temporal vertex subset S of (G, λ) such that every edge e ∈ E(G) is temporally covered by at least one vertex appearance in S. Example

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

Temporal Vertex Cover (TVC) Input: A temporal graph (G, λ). Output: A temporal vertex cover S of (G, λ) with the minimum |S|.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 8 / 40

slide-24
SLIDE 24

Basic definitions: Sliding Window Temporal Vertex Cover

Definition (Time Windows)

1 For every time slot t ∈ [1, T − ∆ + 1]:

the time window Wt = [t, t + ∆ − 1] is the sequence of the ∆ consecutive time slots t, t + 1, . . . , t + ∆ − 1.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 9 / 40

slide-25
SLIDE 25

Basic definitions: Sliding Window Temporal Vertex Cover

Definition (Time Windows)

1 For every time slot t ∈ [1, T − ∆ + 1]:

the time window Wt = [t, t + ∆ − 1] is the sequence of the ∆ consecutive time slots t, t + 1, . . . , t + ∆ − 1.

2 E[Wt] =

i∈Wt Ei is the union of all edges appearing at least once in

the time window Wt.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 9 / 40

slide-26
SLIDE 26

Basic definitions: Sliding Window Temporal Vertex Cover

Definition (Time Windows)

1 For every time slot t ∈ [1, T − ∆ + 1]:

the time window Wt = [t, t + ∆ − 1] is the sequence of the ∆ consecutive time slots t, t + 1, . . . , t + ∆ − 1.

2 E[Wt] =

i∈Wt Ei is the union of all edges appearing at least once in

the time window Wt.

3 S[Wt] = {(w, t) ∈ S : t ∈ Wt} is the restriction of the temporal

vertex subset S to the window Wt.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 9 / 40

slide-27
SLIDE 27

Basic definitions: Sliding Window Temporal Vertex Cover

Definition (Sliding ∆-Window Temporal Vertex Cover)

A sliding ∆-window temporal vertex cover of (G, λ) is a temporal vertex subset S of (G, λ) such that: for every time window Wt and for every edge e ∈ E[Wt], e is temporally covered by at least one vertex appearance (w, t) ∈ S[Wt].

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 10 / 40

slide-28
SLIDE 28

Basic definitions: Sliding Window Temporal Vertex Cover

Example (∆ = 4)

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

– {(c, 2), (c, 3), (c, 6), (c, 8)} is not a sliding ∆-window temporal vertex cover,

as edges cv, cw ∈ E[W4] are not temporally covered in window W4.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 11 / 40

slide-29
SLIDE 29

Basic definitions: Sliding Window Temporal Vertex Cover

Example (∆ = 4)

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

– {(c, 2), (c, 3), (c, 6), (c, 8)} is not a sliding ∆-window temporal vertex cover,

as edges cv, cw ∈ E[W4] are not temporally covered in window W4.

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

– {(c, 1), (c, 5)} is a sliding ∆-window temporal vertex cover.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 11 / 40

slide-30
SLIDE 30

Basic definitions: Sliding Window Temporal Vertex Cover

Sliding Window Temporal Vertex Cover (SW-TVC) Input: A temporal graph (G, λ) with lifetime T, and an integer ∆ ≤ T. Output: A sliding ∆-window temporal vertex cover S of (G, λ) with the minimum |S|.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 12 / 40

slide-31
SLIDE 31

Overview

Basic definitions Temporal vertex cover Temporal vertex cover with a sliding time window Open problems

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 13 / 40

slide-32
SLIDE 32

Temporal Vertex Cover: the star temporal case

Lemma

TVC on star temporal graphs is equivalent to Set Cover. leafs of the underlying star ↔ ground set of the Set Cover instance each snapshot graph ↔ a set in the Set Cover instance Goal: Choose sets (snapshots) to cover all elements (leafs’ edges) Example:

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 14 / 40

slide-33
SLIDE 33

Temporal Vertex Cover: the star temporal case

Lemma

TVC on star temporal graphs is equivalent to Set Cover. leafs of the underlying star ↔ ground set of the Set Cover instance each snapshot graph ↔ a set in the Set Cover instance Goal: Choose sets (snapshots) to cover all elements (leafs’ edges) Example:

c u v w

1

c u v w

2

c u v w

3

c u v w

4

c u v w

5

c u v w

6

c u v w

7

c u v w

8

1 Universe: {u, v, w} 2 Sets: S1 = {u, v, w}, S2 = {u}, S3 = {v}, S4 = {w}, . . . George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 14 / 40

slide-34
SLIDE 34

Temporal Vertex Cover: the star temporal case

Lemma

TVC on star temporal graphs is equivalent to Set Cover.

Lemma

TVC on star temporal graphs is equivalent to Hitting Set.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 15 / 40

slide-35
SLIDE 35

Temporal Vertex Cover: the star temporal case

Lemma

TVC on star temporal graphs is equivalent to Set Cover.

Lemma

TVC on star temporal graphs is equivalent to Hitting Set. Consequences:

1 TVC is NP-complete even on star temporal graphs. 2 For any ε < 1, TVC on star temporal graphs cannot be optimally

solved in O(2εT ) time, unless SETH fails (due to Hitting Set).

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 15 / 40

slide-36
SLIDE 36

Temporal Vertex Cover: the star temporal case

Lemma

TVC on star temporal graphs is equivalent to Set Cover.

Lemma

TVC on star temporal graphs is equivalent to Hitting Set. Consequences:

1 TVC is NP-complete even on star temporal graphs. 2 For any ε < 1, TVC on star temporal graphs cannot be optimally

solved in O(2εT ) time, unless SETH fails (due to Hitting Set).

3 TVC does not admit a polynomial-time (1 − ε) ln n-approximation

algorithm, unless NP has nO(log log n)-time deterministic algorithms.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 15 / 40

slide-37
SLIDE 37

Temporal Vertex Cover: the star temporal case

Lemma

TVC on star temporal graphs is equivalent to Set Cover.

Lemma

TVC on star temporal graphs is equivalent to Hitting Set. Consequences:

1 TVC is NP-complete even on star temporal graphs. 2 For any ε < 1, TVC on star temporal graphs cannot be optimally

solved in O(2εT ) time, unless SETH fails (due to Hitting Set).

3 TVC does not admit a polynomial-time (1 − ε) ln n-approximation

algorithm, unless NP has nO(log log n)-time deterministic algorithms.

4 TVC on star temporal graphs can be ln n-approximated in

polynomial time.

5 For general graphs: 2 ln n-approximation algorithm by a similar

reduction from TVC to Set Cover

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 15 / 40

slide-38
SLIDE 38

Overview

Basic definitions Alternative models Temporal vertex cover Temporal vertex cover with a sliding time window Open problems

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 16 / 40

slide-39
SLIDE 39

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-40
SLIDE 40

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-41
SLIDE 41

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-42
SLIDE 42

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-43
SLIDE 43

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-44
SLIDE 44

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

On always star temporal graphs, a minimum size SW-TVC contains at most one vertex (the star center) in each snapshot ⇒ we assign a Boolean variable xi ∈ {0, 1} for the snapshot at time i

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-45
SLIDE 45

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

On always star temporal graphs, a minimum size SW-TVC contains at most one vertex (the star center) in each snapshot ⇒ we assign a Boolean variable xi ∈ {0, 1} for the snapshot at time i For variables x1, x2, . . . , x∆ we define f(t; x1, x2, . . . , x∆) to be the smallest cardinality of a sliding ∆-window temporal vertex cover S of (G, λ)|[1,t+∆−1], such that the solution at times t, t + 1, . . . , t + ∆ − 1 is defined by the variables x1, x2, . . . , x∆.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-46
SLIDE 46

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

f(6; 1, 0, 1) On always star temporal graphs, a minimum size SW-TVC contains at most one vertex (the star center) in each snapshot ⇒ we assign a Boolean variable xi ∈ {0, 1} for the snapshot at time i For variables x1, x2, . . . , x∆ we define f(t; x1, x2, . . . , x∆) to be the smallest cardinality of a sliding ∆-window temporal vertex cover S of (G, λ)|[1,t+∆−1], such that the solution at times t, t + 1, . . . , t + ∆ − 1 is defined by the variables x1, x2, . . . , x∆.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-47
SLIDE 47

SW-TVC: always star temporal graphs

1 2 3 4 5 6 7 8

f(6; 1, 0, 1) On always star temporal graphs, a minimum size SW-TVC contains at most one vertex (the star center) in each snapshot ⇒ we assign a Boolean variable xi ∈ {0, 1} for the snapshot at time i For variables x1, x2, . . . , x∆ we define f(t; x1, x2, . . . , x∆) to be the smallest cardinality of a sliding ∆-window temporal vertex cover S of (G, λ)|[1,t+∆−1], such that the solution at times t, t + 1, . . . , t + ∆ − 1 is defined by the variables x1, x2, . . . , x∆.

Lemma (dynamic programming)

f(t; x1, x2, . . . , x∆) = x∆ + min

y∈{0,1}{f(t − 1; y, x1, x2, . . . , x∆−1)}

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 17 / 40

slide-48
SLIDE 48

SW-TVC: always star temporal graphs Theorem

SW-TVC on always star temporal graphs can be solved in O(T∆(n + m) · 2∆) time.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 18 / 40

slide-49
SLIDE 49

SW-TVC: always star temporal graphs Theorem

SW-TVC on always star temporal graphs can be solved in O(T∆(n + m) · 2∆) time. Algorithm SW-TVC on always star temporal graphs

Input: An always star temporal graph (G, λ) with lifetime T and a natural ∆ ≤ T. Output: The cardinality of a minimum sliding ∆-window temporal vertex cover in (G, λ). for t = 1 to T − ∆ + 1 do for all x1, x2, . . . , x∆ ∈ {0, 1} do if {(ct+i−1, t + i − 1) | xi = 1} is a TVC of (G, λ)|[t,t+∆−1] then if t = 1 then f(t; x1, . . . , x∆) ← ∆

i=1 xi

else f(t; x1, . . . , x∆) ← x∆ + miny∈{0,1} {f(t − 1; y, x1, . . . , x∆−1)} else f(t; x1, . . . , x∆) ← ∞ return minx1,...,x∆∈{0,1} {f(T − ∆ + 1; x1, . . . , x∆)}

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 18 / 40

slide-50
SLIDE 50

SW-TVC: the general case

Theorem

SW-TVC on general temporal graphs can be solved in O(T∆(n + m) · 2n(∆+1)) time.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 19 / 40

slide-51
SLIDE 51

SW-TVC: the general case

Theorem

SW-TVC on general temporal graphs can be solved in O(T∆(n + m) · 2n(∆+1)) time. Main idea: for each of the ∆ snapshots in the (currently) last ∆-window, we enumerate all 2n vertex subsets, instead of just enumerating over the truth values of ∆ Boolean variables (“always star” case)

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 19 / 40

slide-52
SLIDE 52

SW-TVC: the general case

Theorem

SW-TVC on general temporal graphs can be solved in O(T∆(n + m) · 2n(∆+1)) time. Algorithm SW-TVC on general temporal graphs

Input: A temporal graph (G, λ) with lifetime T and a natural ∆ ≤ T. Output: The smallest cardinality of a sliding ∆-window temporal vertex cover in (G, λ). 1: for t = 1 to T − ∆ + 1 do 2: for all A1, A2, . . . , A∆ ⊆ V do 3: if ∆

i=1(Ai, t + i − 1) is a TVC of (G, λ)|[t,t+∆−1] then

4: if t = 1 then 5: f(t; A1, . . . , A∆) ← ∆

i=1 |Ai|

6: else 7: f(t; A1, . . . , A∆) ← |A∆| + minX⊆V {f(t − 1; X, A1, . . . , A∆−1)} 8: else 9: f(t; A1, . . . , A∆) ← ∞ return minA1,...,A∆⊆V {f(T − ∆ + 1; A1, . . . , A∆)}

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 19 / 40

slide-53
SLIDE 53

SW-TVC: Optimality under ETH

Theorem

For any two (arbitrarily growing) functions f : N → N and g : N → N, there exists a constant ε ∈ (0, 1) such that SW-TVC cannot be solved in f(T) · 2εn·g(∆) time assuming ETH.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 20 / 40

slide-54
SLIDE 54

SW-TVC: Optimality under ETH

Theorem

For any two (arbitrarily growing) functions f : N → N and g : N → N, there exists a constant ε ∈ (0, 1) such that SW-TVC cannot be solved in f(T) · 2εn·g(∆) time assuming ETH. Proof (idea): reduction from Vertex Cover T = ∆ = 2 G1 = G; G2 is an independent set given f and g, choose appropriate ε

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 20 / 40

slide-55
SLIDE 55

SW-TVC: Optimality under ETH

Theorem

For any two (arbitrarily growing) functions f : N → N and g : N → N, there exists a constant ε ∈ (0, 1) such that SW-TVC cannot be solved in f(T) · 2εn·g(∆) time assuming ETH. Proof (idea): reduction from Vertex Cover T = ∆ = 2 G1 = G; G2 is an independent set given f and g, choose appropriate ε

Corollary

Our O(T∆(n + m) · 2n(∆+1))-time algorithm is asymptotically almost

  • ptimal.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 20 / 40

slide-56
SLIDE 56

SW-TVC: always bounded vertex cover number temporal graphs

Let Ck be the class of graphs with the vertex cover number at most k.

Theorem

SW-TVC on always Ck temporal graphs can be solved in O(T∆(n + m) · nk(∆+1)) time.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 21 / 40

slide-57
SLIDE 57

SW-TVC: always bounded vertex cover number temporal graphs

Let Ck be the class of graphs with the vertex cover number at most k.

Theorem

SW-TVC on always Ck temporal graphs can be solved in O(T∆(n + m) · nk(∆+1)) time. Main idea: in the optimal solution, the choice at step i is a subset of a minimum vertex cover at this snapshot ⇒ for each of the ∆ last snapshots, enumerate all nk vertex subsets (candidates for vertex cover at snapshot i)

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 21 / 40

slide-58
SLIDE 58

∆-TVC

If the parameter ∆ (the size of a sliding window) is fixed, we refer to SW-TVC as ∆-TVC (i.e. ∆ is a part of the problem name).

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 22 / 40

slide-59
SLIDE 59

∆-TVC

If the parameter ∆ (the size of a sliding window) is fixed, we refer to SW-TVC as ∆-TVC (i.e. ∆ is a part of the problem name).

Observation

(∆ + 1)-TVC is at least as hard as ∆-TVC.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 22 / 40

slide-60
SLIDE 60

∆-TVC

If the parameter ∆ (the size of a sliding window) is fixed, we refer to SW-TVC as ∆-TVC (i.e. ∆ is a part of the problem name).

Observation

(∆ + 1)-TVC is at least as hard as ∆-TVC.

t = 1 t = 2 t = ∆ t = ∆ + 1 t = ∆ + 2 G1 G2 . . . G∆ ∅ G∆+1 . . . ∅ G2∆ t = 2∆ + 1 t = 2∆ + 2 . . . . . . . . . t = T + ⌊ T

∆⌋

. . .

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 22 / 40

slide-61
SLIDE 61

2-TVC is hard to approximate

Let X be the class of graphs whose connected components are induced subgraphs of graph Ψ. Ψ

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 23 / 40

slide-62
SLIDE 62

2-TVC is hard to approximate

Let X be the class of graphs whose connected components are induced subgraphs of graph Ψ. Ψ Clearly, Vertex Cover is linearly solvable on graphs from X.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 23 / 40

slide-63
SLIDE 63

2-TVC is hard to approximate

Let X be the class of graphs whose connected components are induced subgraphs of graph Ψ. Ψ Clearly, Vertex Cover is linearly solvable on graphs from X.

Theorem

There is no PTAS for 2-TVC on always X temporal graphs.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 23 / 40

slide-64
SLIDE 64

2-TVC is hard to approximate

Theorem

There is no PTAS for 2-TVC on always X temporal graphs. Proof (sketch):

1 Let Y be the class of graphs which can be obtained from cubic graphs

by subdividing every edge exactly 4 times.

2 There is no PTAS for Vertex Cover on Y. 3 Reduce Vertex Cover on Y to 2-TVC on always X temporal

graphs such that optimal solutions of both problems have same size.

K4 The 4-subdivision of K4 Snapshot G1 Snapshot G2

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 24 / 40

slide-65
SLIDE 65

SW-TVC: approximation algorithms I

Reduction from SW-TVC to Set Cover.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 25 / 40

slide-66
SLIDE 66

SW-TVC: approximation algorithms I

Reduction from SW-TVC to Set Cover.

1 The universe: the set of all pairs (e, t) ∈ E × [T − ∆ + 1] such that e

appears (and so must be temporally covered) within window Wt.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 25 / 40

slide-67
SLIDE 67

SW-TVC: approximation algorithms I

Reduction from SW-TVC to Set Cover.

1 The universe: the set of all pairs (e, t) ∈ E × [T − ∆ + 1] such that e

appears (and so must be temporally covered) within window Wt.

2 The sets: for every vertex appearance (v, s) we define Cv,s to be the

set of elements (e, t) in the universe, such that (v, s) temporally covers e in window Wt.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 25 / 40

slide-68
SLIDE 68

SW-TVC: approximation algorithms I

Reduction from SW-TVC to Set Cover.

1 The universe: the set of all pairs (e, t) ∈ E × [T − ∆ + 1] such that e

appears (and so must be temporally covered) within window Wt.

2 The sets: for every vertex appearance (v, s) we define Cv,s to be the

set of elements (e, t) in the universe, such that (v, s) temporally covers e in window Wt. Consequences:

1 O(ln n + ln ∆)-approximation

(every set Cv,s has at most n∆ elements ⇒ approximation factor Hn∆ − 1

2 ≈ ln n + ln ∆)

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 25 / 40

slide-69
SLIDE 69

SW-TVC: approximation algorithms I

Reduction from SW-TVC to Set Cover.

1 The universe: the set of all pairs (e, t) ∈ E × [T − ∆ + 1] such that e

appears (and so must be temporally covered) within window Wt.

2 The sets: for every vertex appearance (v, s) we define Cv,s to be the

set of elements (e, t) in the universe, such that (v, s) temporally covers e in window Wt. Consequences:

1 O(ln n + ln ∆)-approximation

(every set Cv,s has at most n∆ elements ⇒ approximation factor Hn∆ − 1

2 ≈ ln n + ln ∆)

2 2k-approximation, where k is the maximum edge ∆-frequency

(just take both vertex appearances for every appearance of an edge)

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 25 / 40

slide-70
SLIDE 70

SW-TVC: approximation algorithms I

Reduction from SW-TVC to Set Cover.

1 The universe: the set of all pairs (e, t) ∈ E × [T − ∆ + 1] such that e

appears (and so must be temporally covered) within window Wt.

2 The sets: for every vertex appearance (v, s) we define Cv,s to be the

set of elements (e, t) in the universe, such that (v, s) temporally covers e in window Wt. Consequences:

1 O(ln n + ln ∆)-approximation

(every set Cv,s has at most n∆ elements ⇒ approximation factor Hn∆ − 1

2 ≈ ln n + ln ∆)

2 2k-approximation, where k is the maximum edge ∆-frequency

(just take both vertex appearances for every appearance of an edge) ⇒ 2∆-approximation

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 25 / 40

slide-71
SLIDE 71

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

slide-72
SLIDE 72

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

slide-73
SLIDE 73

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 26 / 40

slide-74
SLIDE 74

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 27 / 40

slide-75
SLIDE 75

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 28 / 40

slide-76
SLIDE 76

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

slide-77
SLIDE 77

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 29 / 40

slide-78
SLIDE 78

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 30 / 40

slide-79
SLIDE 79

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 31 / 40

slide-80
SLIDE 80

SW-TVC: approximation algorithms II

Single-edge temporal graph: exact algorithm

Algorithm SW-TVC on single-edge temporal graphs

Input: A temporal graph (G, λ) of lifetime T with V (G) = {u, v}; and ∆ ≤ T. Output: A minimum-cardinality sliding ∆-window temporal vertex cover S of (G, λ). 1: S ← ∅ 2: t = 1 3: while t ≤ T − ∆ + 1 do 4: if ∃ r ∈ [t, t + ∆ − 1] such that uv ∈ Er then 5: choose maximum such r and add (u, r) to S 6: t ← r + 1 7: else 8: t ← t + 1 return S

greedy algorithm linear time

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 32 / 40

slide-81
SLIDE 81

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm Main idea: solve independently each single-edge subgraph of G take the union of the solutions

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 33 / 40

slide-82
SLIDE 82

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 34 / 40

slide-83
SLIDE 83

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 34 / 40

slide-84
SLIDE 84

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 34 / 40

slide-85
SLIDE 85

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

1 2 3 4 5 6 7 8

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 34 / 40

slide-86
SLIDE 86

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

1 2 3 4 5 6 7 8

· · ·

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 34 / 40

slide-87
SLIDE 87

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

1 2 3 4 5 6 7 8

· · ·

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 35 / 40

slide-88
SLIDE 88

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

Algorithm d-approximation of SW-TVC on always degree at most d temporal graphs

Input: An always degree at most d temporal graph (G, λ) of lifetime T, and ∆ ≤ T. Output: A sliding ∆-window temporal vertex cover S of (G, λ). 1: for every edge uv ∈ E(G) do 2: Compute an optimal solution Suv of the problem for (G[{u, v}], λ)] 3: S ← S ∪ Suv return S

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 36 / 40

slide-89
SLIDE 89

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

Algorithm d-approximation of SW-TVC on always degree at most d temporal graphs

Input: An always degree at most d temporal graph (G, λ) of lifetime T, and ∆ ≤ T. Output: A sliding ∆-window temporal vertex cover S of (G, λ). 1: for every edge uv ∈ E(G) do 2: Compute an optimal solution Suv of the problem for (G[{u, v}], λ)] 3: S ← S ∪ Suv return S

Lemma The above algorithm is a O (mT)-time d-approximation algorithm for SW-TVC on always degree at most d temporal graphs.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 36 / 40

slide-90
SLIDE 90

SW-TVC: approximation algorithms II

Always degree at most d temporal graphs: d-approx. algorithm

Algorithm d-approximation of SW-TVC on always degree at most d temporal graphs

Input: An always degree at most d temporal graph (G, λ) of lifetime T, and ∆ ≤ T. Output: A sliding ∆-window temporal vertex cover S of (G, λ). 1: for every edge uv ∈ E(G) do 2: Compute an optimal solution Suv of the problem for (G[{u, v}], λ)] 3: S ← S ∪ Suv return S

Lemma The above algorithm is a O (mT)-time d-approximation algorithm for SW-TVC on always degree at most d temporal graphs. Corollary SW-TVC can be optimally solved in O(mT) time on the class of always degree at most 1 (matching) temporal graphs.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 36 / 40

slide-91
SLIDE 91

Overview

Basic definitions Alternative models Temporal vertex cover Temporal vertex cover with a sliding time window Open problems

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 37 / 40

slide-92
SLIDE 92

Open Problems

Problem 1

Determine the complexity status of ∆-TVC on degree at most 2 temporal graphs.

1 ∆-TVC on always degree at most 1 can be solved in linear time. George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 38 / 40

slide-93
SLIDE 93

Open Problems

Problem 1

Determine the complexity status of ∆-TVC on degree at most 2 temporal graphs.

1 ∆-TVC on always degree at most 1 can be solved in linear time. 2 ∆-TVC on always degree at most 3: no PTAS George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 38 / 40

slide-94
SLIDE 94

Open Problems

Problem 1

Determine the complexity status of ∆-TVC on degree at most 2 temporal graphs.

1 ∆-TVC on always degree at most 1 can be solved in linear time. 2 ∆-TVC on always degree at most 3: no PTAS, even when: 1

the underlying graph has degree at most 3; and

2

connected components of snapshots have at most 7 vertices.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 38 / 40

slide-95
SLIDE 95

Open Problems

Problem 1

Determine the complexity status of ∆-TVC on degree at most 2 temporal graphs.

1 ∆-TVC on always degree at most 1 can be solved in linear time. 2 ∆-TVC on always degree at most 3: no PTAS, even when: 1

the underlying graph has degree at most 3; and

2

connected components of snapshots have at most 7 vertices.

Problem 2

Can ∆-TVC on general graphs be approximated within a factor better than 2∆?

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 38 / 40

slide-96
SLIDE 96

Open Problems

Problem 1

Determine the complexity status of ∆-TVC on degree at most 2 temporal graphs.

1 ∆-TVC on always degree at most 1 can be solved in linear time. 2 ∆-TVC on always degree at most 3: no PTAS, even when: 1

the underlying graph has degree at most 3; and

2

connected components of snapshots have at most 7 vertices.

Problem 2

Can ∆-TVC on general graphs be approximated within a factor better than 2∆?

Problem 3

Can ∆-TVC on always degree at most d temporal graphs be approximated within a factor better than d?

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 38 / 40

slide-97
SLIDE 97

Open Problems

Problem 4

FPT results for ∆-TVC with respect to ∆ on general temporal graphs?

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 39 / 40

slide-98
SLIDE 98

Open Problems

Problem 4

FPT results for ∆-TVC with respect to ∆ on general temporal graphs?

1 SW-TVC on general temporal graphs can be solved in

O(T∆(n + m) · 2n(∆+1)) time.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 39 / 40

slide-99
SLIDE 99

Open Problems

Problem 4

FPT results for ∆-TVC with respect to ∆ on general temporal graphs?

1 SW-TVC on general temporal graphs can be solved in

O(T∆(n + m) · 2n(∆+1)) time.

Problem 5

FPT results for SW-TVC with respect to the maximum vertex cover number k of snapshots?

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 39 / 40

slide-100
SLIDE 100

Open Problems

Problem 4

FPT results for ∆-TVC with respect to ∆ on general temporal graphs?

1 SW-TVC on general temporal graphs can be solved in

O(T∆(n + m) · 2n(∆+1)) time.

Problem 5

FPT results for SW-TVC with respect to the maximum vertex cover number k of snapshots?

1 SW-TVC on always vertex cover number at most k temporal graphs

can be solved in O(T∆(n + m) · nk(∆+1)) time.

George B. Mertzios Temporal Vertex Cover AlgoUK Liverpool, Sept. 2018 39 / 40

slide-101
SLIDE 101

Thank you!