Maximum Betweenness Centrality: Approximability and Tractable Cases - - PowerPoint PPT Presentation

maximum betweenness centrality approximability and
SMART_READER_LITE
LIVE PREVIEW

Maximum Betweenness Centrality: Approximability and Tractable Cases - - PowerPoint PPT Presentation

Maximum Betweenness Centrality: Approximability and Tractable Cases Martin Fink and Joachim Spoerhase Universit at W urzburg A Centrality Problem Imagine an abstract network. computer network transportation network This network can be


slide-1
SLIDE 1

Maximum Betweenness Centrality: Approximability and Tractable Cases

Martin Fink and Joachim Spoerhase Universit¨ at W¨ urzburg

slide-2
SLIDE 2

A Centrality Problem

Imagine an abstract network. computer network transportation network This network can be modeled by a graph.

slide-3
SLIDE 3

A Centrality Problem

Imagine an abstract network. computer network transportation network This network can be modeled by a graph. Occupy some of the nodes. As much communication as possible should be detected.

slide-4
SLIDE 4

Overview

Maximum Betweenness Centrality Approximating MBC APX-Completeness MBC on Trees Conclusion

slide-5
SLIDE 5

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V v

Shortest Path

slide-6
SLIDE 6

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V choose communicating pair s, t ∈ V uniformly at random s t v

Shortest Path

slide-7
SLIDE 7

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V choose communicating pair s, t ∈ V uniformly at random choose one shortest s–t path P uniformly at random s t v

Shortest Path

slide-8
SLIDE 8

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V choose communicating pair s, t ∈ V uniformly at random choose one shortest s–t path P uniformly at random probability that v lies on P? s t v

Shortest Path

slide-9
SLIDE 9

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V choose communicating pair s, t ∈ V uniformly at random choose one shortest s–t path P uniformly at random probability that v lies on P? s t v set C ⊆ V a node v ∈ C lies on P?

slide-10
SLIDE 10

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V choose communicating pair s, t ∈ V uniformly at random choose one shortest s–t path P uniformly at random probability that v lies on P? s t v set C ⊆ V a node v ∈ C lies on P? GBC(C) :=

  • s,t∈V |s=t

σs,t(C) σs,t σs,t, σs,t(C): #shortest s–t paths (using a node of C)

slide-11
SLIDE 11

Group Betweenness Centrality

Given a graph G = (V , E) and a node v ∈ V choose communicating pair s, t ∈ V uniformly at random choose one shortest s–t path P uniformly at random probability that v lies on P? s t v set C ⊆ V a node v ∈ C lies on P? GBC(C) :=

  • s,t∈V |s=t

σs,t(C) σs,t σs,t, σs,t(C): #shortest s–t paths (using a node of C)

slide-12
SLIDE 12

Previous Results

The Shortest Path Betweenness Centrality of all nodes can be computed in O(nm) time.

  • Theorem. [Brandes, 2001]

Theorem. The Group Betweenness Centrality of one set C ⊆ V can be computed in O(n3) time. [Puzis et. al., 2007]

slide-13
SLIDE 13

Previous Results

The Shortest Path Betweenness Centrality of all nodes can be computed in O(nm) time.

  • Theorem. [Brandes, 2001]

Theorem. The Group Betweenness Centrality of one set C ⊆ V can be computed in O(n3) time. [Puzis et. al., 2007] Method: iteratively add nodes, O(n2) update time for each step

slide-14
SLIDE 14

Maximum Betweenness Centrality

Input: A Graph G = (V , E), node costs c : V → R+

0 ,

budget b ∈ R+

slide-15
SLIDE 15

Maximum Betweenness Centrality

Input: Task: A Graph G = (V , E), node costs c : V → R+

0 ,

budget b ∈ R+ Find a set C ⊆ V with c(C) ≤ b maximizing GBC(C)

slide-16
SLIDE 16

Maximum Betweenness Centrality

Input: Task:

  • Theorem. [Puzis et al., 2007]

(unit-cost) MBC is NP-hard.

  • Theorem. [Dolev et al., 2009]

A simple greedy-algorithm computes a (1 − 1/e)-approximation for unit-cost MBC in O(n3) time. A Graph G = (V , E), node costs c : V → R+

0 ,

budget b ∈ R+ Find a set C ⊆ V with c(C) ≤ b maximizing GBC(C)

slide-17
SLIDE 17

Approximating MBC

Reduce MBC to (budgeted) Maximum Coverage. Use existing results for Maximum Coverage. implicit reduction

slide-18
SLIDE 18

(budgeted) Maximum Coverage and MBC

Input: set S, weight function w : S → R+ family F of subsets of S; costs c′ : F → R+

0 and a budget b ≥ 0

slide-19
SLIDE 19

(budgeted) Maximum Coverage and MBC

Input: Task: Find a collection C ′ ⊆ F with c′(C ′) ≤ b maximizing the total weight w(C ′) of the ground elements covered by C ′ set S, weight function w : S → R+ family F of subsets of S; costs c′ : F → R+

0 and a budget b ≥ 0

slide-20
SLIDE 20

(budgeted) Maximum Coverage and MBC

Input: Task: Find a collection C ′ ⊆ F with c′(C ′) ≤ b maximizing the total weight w(C ′) of the ground elements covered by C ′ set S, weight function w : S → R+ family F of subsets of S; costs c′ : F → R+

0 and a budget b ≥ 0

shortest s–t path P weight w(P) :=

1 σs,t

slide-21
SLIDE 21

(budgeted) Maximum Coverage and MBC

Input: Task: Find a collection C ′ ⊆ F with c′(C ′) ≤ b maximizing the total weight w(C ′) of the ground elements covered by C ′ set S, weight function w : S → R+ family F of subsets of S; costs c′ : F → R+

0 and a budget b ≥ 0

shortest s–t path P weight w(P) :=

1 σs,t

v ∈ V : set S(v) of all shortest paths containing v costs c′(S(v)) = c(v)

slide-22
SLIDE 22

(budgeted) Maximum Coverage and MBC

Input: Task: Find a collection C ′ ⊆ F with c′(C ′) ≤ b maximizing the total weight w(C ′) of the ground elements covered by C ′ set S, weight function w : S → R+ family F of subsets of S; costs c′ : F → R+

0 and a budget b ≥ 0

shortest s–t path P weight w(P) :=

1 σs,t

v ∈ V : set S(v) of all shortest paths containing v costs c′(S(v)) = c(v) w(S(C)) = GBC(C) for set C ⊆ V :

slide-23
SLIDE 23

Approximation Algorithms for MBC

H := ∅ foreach C ⊆ V with |C| ≤ 3 and c(C) ≤ b do U := V \ C while U = ∅ do u = node with maximal GBC(C+u)−GBC(C)

c(u)

if c(C + u) ≤ b then C := C + u U := U − u if GBC(C) > GBC(H) then H := C return H

slide-24
SLIDE 24

Approximation Algorithms for MBC

H := ∅ foreach C ⊆ V with |C| ≤ 3 and c(C) ≤ b do U := V \ C while U = ∅ do u = node with maximal GBC(C+u)−GBC(C)

c(u)

if c(C + u) ≤ b then C := C + u U := U − u if GBC(C) > GBC(H) then H := C return H

  • Theorem. [Dolev et al., 2009]

(1 − 1/e)-approximation for unit-cost MBC in O(n3) time.

slide-25
SLIDE 25

Approximation Algorithms for MBC

H := ∅ foreach C ⊆ V with |C| ≤ 3 and c(C) ≤ b do U := V \ C while U = ∅ do u = node with maximal GBC(C+u)−GBC(C)

c(u)

if c(C + u) ≤ b then C := C + u U := U − u if GBC(C) > GBC(H) then H := C return H

  • Theorem. [Dolev et al., 2009]

(1 − 1/e)-approximation for unit-cost MBC in O(n3) time.

  • Theorem. [Khuller et al., 1999]

simple greedy approach: (1 − 1/√e)-approximation for Maximum Coverage ((1 − 1/e) for unit-cost version) reduction to Maximum Coverage simplifies the proof

slide-26
SLIDE 26

Approximation Algorithms for MBC

H := ∅ foreach C ⊆ V with |C| ≤ 3 and c(C) ≤ b do U := V \ C while U = ∅ do u = node with maximal GBC(C+u)−GBC(C)

c(u)

if c(C + u) ≤ b then C := C + u U := U − u if GBC(C) > GBC(H) then H := C return H

  • Theorem. [Dolev et al., 2009]

(1 − 1/e)-approximation for unit-cost MBC in O(n3) time.

  • Theorem. [Khuller et al., 1999]

simple greedy approach: (1 − 1/√e)-approximation for Maximum Coverage ((1 − 1/e) for unit-cost version) reduction to Maximum Coverage simplifies the proof better approximation for arbitrary costs?

slide-27
SLIDE 27

Approximation Algorithms for MBC

H := ∅ foreach C ⊆ V with |C| ≤ 3 and c(C) ≤ b do U := V \ C while U = ∅ do u = node with maximal GBC(C+u)−GBC(C)

c(u)

if c(C + u) ≤ b then C := C + u U := U − u if GBC(C) > GBC(H) then H := C return H Extended greedy approach

slide-28
SLIDE 28

Approximation Algorithms for MBC

  • Theorem. [Khuller et al., 1999]

The extended greedy approach yields an approximation factor of (1 − 1/e) for Maximum Coverage.

slide-29
SLIDE 29

Approximation Algorithms for MBC

  • Theorem. [Khuller et al., 1999]

The extended greedy approach yields an approximation factor of (1 − 1/e) for Maximum Coverage.

  • Theorem. A (1 − 1/e)-approximative solution for MBC can be

computed in O(n6) using the extended greedy approach. reduction

slide-30
SLIDE 30

Approximation Algorithms for MBC

  • Theorem. [Khuller et al., 1999]

The extended greedy approach yields an approximation factor of (1 − 1/e) for Maximum Coverage.

  • Theorem. A (1 − 1/e)-approximative solution for MBC can be

computed in O(n6) using the extended greedy approach.

  • Theorem. [Khuller et al., 1999]

The approximation factor of (1 − 1/e) of the greedy algorithm for Maximum Coverage is tight. reduction

slide-31
SLIDE 31

Approximation Algorithms for MBC

  • Theorem. [Khuller et al., 1999]

The extended greedy approach yields an approximation factor of (1 − 1/e) for Maximum Coverage.

  • Theorem. A (1 − 1/e)-approximative solution for MBC can be

computed in O(n6) using the extended greedy approach.

  • Theorem. [Khuller et al., 1999]

The approximation factor of (1 − 1/e) of the greedy algorithm for Maximum Coverage is tight.

  • Theorem. The approximation factor of (1 − 1/e) of the greedy

algorithm for MBC is tight. reduction

slide-32
SLIDE 32

MBC is APX-complete

Maximum Vertex Cover: Input: Graph G = (V , E), number k ≤ n = |V | Task: find a set C ⊆ V with |C| = k maximizing the number

  • f covered edges
slide-33
SLIDE 33

MBC is APX-complete

Maximum Vertex Cover: Input: Graph G = (V , E), number k ≤ n = |V | Task: find a set C ⊆ V with |C| = k maximizing the number

  • f covered edges

Maximum Vertex Cover u v w

slide-34
SLIDE 34

MBC is APX-complete

Maximum Vertex Cover: Input: Graph G = (V , E), number k ≤ n = |V | Task: find a set C ⊆ V with |C| = k maximizing the number

  • f covered edges

Maximum Vertex Cover MBC u v w u v w copies u1, . . . , ul in a clique

slide-35
SLIDE 35

MBC is APX-complete

Maximum Vertex Cover: Input: Graph G = (V , E), number k ≤ n = |V | Task: find a set C ⊆ V with |C| = k maximizing the number

  • f covered edges

Maximum Vertex Cover MBC u v w u v w copies u1, . . . , ul in a clique zuw zvw

slide-36
SLIDE 36

MBC is APX-complete

u v w u1, . . . , ul zuw zvw Only paths between copies of distinct nodes are essential (for large l): – u covers shortest path for all l2 pairs (ui, vj) – number of other pairs only linear in l

slide-37
SLIDE 37

MBC is APX-complete

u v w u1, . . . , ul zuw zvw Only paths between copies of distinct nodes are essential (for large l): – u covers shortest path for all l2 pairs (ui, vj) – number of other pairs only linear in l Only original nodes from G are relevant candidates for the inclusion in set C with high GBC.

slide-38
SLIDE 38

MBC is APX-complete

u v w zuw zvw Only paths between copies of distinct nodes are essential (for large l): – u covers shortest path for all l2 pairs (ui, vj) – number of other pairs only linear in l Only original nodes from G are relevant candidates for the inclusion in set C with high GBC. For C ⊆ V : GBC(C) ≈ l2× #covered edges in G

slide-39
SLIDE 39

MBC is APX-complete

u v w zuw zvw Only paths between copies of distinct nodes are essential (for large l): – u covers shortest path for all l2 pairs (ui, vj) – number of other pairs only linear in l Only original nodes from G are relevant candidates for the inclusion in set C with high GBC. For C ⊆ V : GBC(C) ≈ l2× #covered edges in G C approximative solution for MBC ⇒ C approximative solution for Maximum Vertex Cover

slide-40
SLIDE 40

MBC is APX-complete

  • Theorem. [Petrank, 1994]

Maximum Vertex Cover is APX-complete.

  • Theorem. (Unit-cost) Maximum Betweenness Centrality is

APX-complete. Not much hope for a PTAS

slide-41
SLIDE 41

MBC on Trees

For tree T = (V , E): Exactly one (shortest) path between each pair of nodes. GBC(C) = #paths covered by C

slide-42
SLIDE 42

MBC on Trees

For tree T = (V , E): Exactly one (shortest) path between each pair of nodes. GBC(C) = #paths covered by C Use dynamic programming. v Tv GBCv(C) = #internal paths in Tv covered by C

slide-43
SLIDE 43

MBC on Trees

For tree T = (V , E): Exactly one (shortest) path between each pair of nodes. GBC(C) = #paths covered by C Use dynamic programming. v Tv GBCv(C) = #internal paths in Tv covered by C Some paths from Tv to nodes

  • utside might already be covered.
slide-44
SLIDE 44

MBC on Trees

v1 m1 external paths already covered top nodes

slide-45
SLIDE 45

MBC on Trees

B[v1, σ1, m1]

v1 m1 σ1 ≤ GBCv1(C) ≤ n2 internal GBC

slide-46
SLIDE 46

MBC on Trees

B[v1, σ1, m1]

v1 m1 σ1 ≤ GBCv1(C) ≤ n2 internal GBC cost of cheapest set C ⊆ V providing these values σ1, m1

slide-47
SLIDE 47

MBC on Trees

B[v1, σ1, m1] B[v2, σ2, m2] B[v, σ, m]

v1 m1 v2 m2 v

slide-48
SLIDE 48

MBC on Trees

B[v1, σ1, m1] B[v2, σ2, m2] B[v, σ, m]

v1 m1 v2 m2 v u v

slide-49
SLIDE 49

MBC on Trees

B[v1, σ1, m1] B[v2, σ2, m2] B[v, σ, m]

v1 m1 v2 m2 v v u

slide-50
SLIDE 50

MBC on Trees

B[v1, σ1, m1] B[v2, σ2, m2] B[v, σ, m]

v1 m1 v2 m2 v u v

slide-51
SLIDE 51

MBC on Trees

B[v1, σ1, m1] B[v2, σ2, m2] B[v, σ, m]

v1 m1 v2 m2 v u v

slide-52
SLIDE 52

MBC on Trees

B[v1, σ1, m1] B[v2, σ2, m2] B[v, σ, m]

v1 m1 v2 m2 v Computation of B[v, σ, m]: split m, σ among Tv1, Tv2, v m = 0 needs special handling

  • O(n3) combinations
slide-53
SLIDE 53

MBC on Trees

Computation of B[v, σ, m]: split m, σ among Tv1, Tv2, v m = 0 needs special handling

  • O(n3) combinations

(v, σ, m): O(n · n2 · n) = O(n4) combinations

slide-54
SLIDE 54

MBC on Trees

Computation of B[v, σ, m]: split m, σ among Tv1, Tv2, v m = 0 needs special handling

  • O(n3) combinations
  • Theorem. MBC can be solved in O(n7) time on trees.

(v, σ, m): O(n · n2 · n) = O(n4) combinations

slide-55
SLIDE 55

Conclusion

Approximation Algorithm for Maximum Betweenness Centrality: tight approximation factor of 1 − 1/e

slide-56
SLIDE 56

Conclusion

Approximation Algorithm for Maximum Betweenness Centrality: tight approximation factor of 1 − 1/e Approximability 1 − 1 e < α < 1 − ǫ

slide-57
SLIDE 57

Conclusion

Approximation Algorithm for Maximum Betweenness Centrality: tight approximation factor of 1 − 1/e Approximability 1 − 1 e < α < 1 − ǫ α ? not possible for Maximum Coverage

slide-58
SLIDE 58

Conclusion

Approximation Algorithm for Maximum Betweenness Centrality: tight approximation factor of 1 − 1/e Approximability 1 − 1 e < α < 1 − ǫ α ? not possible for Maximum Coverage Polynomial-time Algorithm for trees Also possible for other classes of graphs?

slide-59
SLIDE 59

Conclusion

Approximation Algorithm for Maximum Betweenness Centrality: tight approximation factor of 1 − 1/e Approximability 1 − 1 e < α < 1 − ǫ α ? not possible for Maximum Coverage Polynomial-time Algorithm for trees Also possible for other classes of graphs?

Thank you!