Improving network robustness using distance-based graph measures - - PowerPoint PPT Presentation

improving network robustness
SMART_READER_LITE
LIVE PREVIEW

Improving network robustness using distance-based graph measures - - PowerPoint PPT Presentation

Improving network robustness using distance-based graph measures Sander Jurgens November 10, 2014 dr. K.A. Buchin dr. D.T.H. Worm Eindhoven University of Technology TNO ICT, Delft Department of Math and Computer Science Performance of


slide-1
SLIDE 1

Improving network robustness

using distance-based graph measures Sander Jurgens November 10, 2014

  • dr. K.A. Buchin
  • dr. D.T.H. Worm

Eindhoven University of Technology TNO ICT, Delft Department of Math and Computer Science Performance of Network and Systems

slide-2
SLIDE 2

Table of Contents

Motivation Graph measures Complexity Approximation Conclusion

Sander Jurgens Improving network robustness 2 / 28

slide-3
SLIDE 3

Motivation Graph measures Complexity Approximation Conclusion Graph theory Robustness

Motivation

Sander Jurgens Improving network robustness 3 / 28

slide-4
SLIDE 4

Motivation Graph measures Complexity Approximation Conclusion Graph theory Robustness

What is a graph?

A network consisting of:

◮ Vertices ◮ Edges

Additional properties:

◮ Connected ◮ Undirected ◮ Weighted Sander Jurgens Improving network robustness 4 / 28

slide-5
SLIDE 5

Motivation Graph measures Complexity Approximation Conclusion Graph theory Robustness

What can graphs do?

Model relations and processes Many domains:

◮ Communication ◮ Energy ◮ Transportation ◮ ... Sander Jurgens Improving network robustness 5 / 28

slide-6
SLIDE 6

Motivation Graph measures Complexity Approximation Conclusion Graph theory Robustness

What can graphs do?

Model relations and processes Many domains:

◮ Communication ◮ Energy ◮ Transportation ◮ ... Sander Jurgens Improving network robustness 6 / 28

slide-7
SLIDE 7

Motivation Graph measures Complexity Approximation Conclusion Graph theory Robustness

What is robustness?

Networks contain weaknesses

Definition

Robustness is the ability of a network to continue performing well when it is subject to attacks and random failures.

Sander Jurgens Improving network robustness 7 / 28

slide-8
SLIDE 8

Motivation Graph measures Complexity Approximation Conclusion Graph theory Robustness

Research questions

Research question How can we determine the robustness of a simple, connected, undirected, weighted graph, and use the resulting measures in the improvement process? Secondary research questions

◮ Which graph measures are suited for measuring network robustness? ◮ How viable are distance-based measures in measuring the network robustness? ◮ What complexity class does robustness improvement, i.e. distance-based measure

minimization, belong to?

◮ How do we go about approximating the optimal robustness improvements? ◮ What approximation ratios can we achieve for robustness improvements? Sander Jurgens Improving network robustness 8 / 28

slide-9
SLIDE 9

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Graph measures

Sander Jurgens Improving network robustness 9 / 28

slide-10
SLIDE 10

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Measure types

Different types:

◮ Distance ◮ Centrality ◮ Connectivity ◮ Spectral Sander Jurgens Improving network robustness 10 / 28

slide-11
SLIDE 11

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Measure types

Different types:

◮ Distance ◮ Centrality ◮ Connectivity ◮ Spectral

(a) Complete (b) Cycle (c) Star (d) Line (e) Empty Figure: Graph topologies in order of decreasing robustness.

Sander Jurgens Improving network robustness 10 / 28

slide-12
SLIDE 12

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Measure types

Different types:

◮ Distance (viable, good correlation) ◮ Centrality (viable) ◮ Connectivity (not viable, no distinct values) ◮ Spectral (viable, but not intuitive)

(a) Complete (b) Cycle (c) Star (d) Line (e) Empty Figure: Graph topologies in order of decreasing robustness.

Sander Jurgens Improving network robustness 10 / 28

slide-13
SLIDE 13

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Measure types

Different types:

◮ Distance (viable, good correlation) ◮ Centrality (viable) ◮ Connectivity (not viable, no distinct values) ◮ Spectral (viable, but not intuitive)

Distance

The distance d(u, v) is the combined weight of all edges that make up the shortest path between vertex u ∈ V and vertex v ∈ V . d : V × V → R+

Sander Jurgens Improving network robustness 10 / 28

slide-14
SLIDE 14

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Distance measures

Eccentricity

Eccentricity, for a vertex v ∈ V , represents the greatest distance between v and some

  • ther vertex in the graph:

ǫ(v) = max

u∈V d(v, u).

Sander Jurgens Improving network robustness 11 / 28

slide-15
SLIDE 15

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Distance measures

Eccentricity

Eccentricity, for a vertex v ∈ V , represents the greatest distance between v and some

  • ther vertex in the graph:

ǫ(v) = max

u∈V d(v, u).

Radius

The radius of a graph is the minimum eccentricity over all of its vertices: R = min

v∈V ǫ(v).

Diameter

The diameter of a graph is the maximum eccentricity over all of its vertices: D = max

v∈V ǫ(v).

Sander Jurgens Improving network robustness 11 / 28

slide-16
SLIDE 16

Motivation Graph measures Complexity Approximation Conclusion Measure types Distance measures

Distance measures

Single Source Average Shortest Path (SS-ASP)

The single source average shortest path length of a vertex is the average over the shortest paths to all other vertices in the graph: Davg(v) = 1 n − 1

  • u∈V

d(u, v)

Average Shortest Path (ASP)

The average shortest path length of a graph is the average over the shortest paths between all combinations of vertices: Davg = 1 n

  • u∈V

Davg(u) = 1 n(n − 1)

  • u∈V
  • v∈V

d(u, v).

Sander Jurgens Improving network robustness 12 / 28

slide-17
SLIDE 17

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

Complexity

Sander Jurgens Improving network robustness 13 / 28

slide-18
SLIDE 18

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

Minimization problem

Eccentricity

Eccentricity, for a vertex v ∈ V , represents the greatest distance between v and some

  • ther vertex in the graph:

ǫ(v) = max

u∈V d(v, u).

Problem

Name: Eccentricity Minimization (em) Instance: An undirected graph G = (V , E), a distance function d : V × V → R+

0 , a vertex v ∈ V , and a bound k ∈ N.

Problem: Finding a set F of non-existing edges, with |F| ≤ k, such that eccentricity for vertex v, ǫG′(v), is minimized in supergraph G ′ = (V , E ∪ F).

Sander Jurgens Improving network robustness 13 / 28

slide-19
SLIDE 19

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

What is computational complexity?

Classifying computational problems according to their difficulty

Non-deterministic polynomial time (NP)

For a given problem C:

◮ Any given solution to C can be verified quickly (in polynomial time) ◮ The time required to solve C increases quickly as the size of the problem grows

To prove that a problem C is NP-complete we need to show that

  • 1. a candidate solution to C is verifiable in polynomial time, and
  • 2. every problem in NP is reducible to C in polynomial time.

Sander Jurgens Improving network robustness 14 / 28

slide-20
SLIDE 20

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

Cover by 3-sets

Name: Cover by 3-sets (3c) Instance: Given a set X with |X| = 3k and a collection C of 3-element subsets of X such that each element of X occurs in at least one member of C. Problem: Finding an exact cover of X in C, i.e. a subcollection C ′ ⊂ C with |C ′| = k, such that every element of X occurs in at least

  • ne member of C ′.

c1 cl C: . . . . . . x1 X: x3k

Figure: Graph representing the 3c problem.

Sander Jurgens Improving network robustness 15 / 28

slide-21
SLIDE 21

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

Cover by 3-sets

Name: Cover by 3-sets (3c) Instance: Given a set X with |X| = 3k and a collection C of 3-element subsets of X such that each element of X occurs in at least one member of C. Problem: Finding an exact cover of X in C, i.e. a subcollection C ′ ⊂ C with |C ′| = k, such that every element of X occurs in at least

  • ne member of C ′.

c1 cl C: . . . . . . x1 X: x3k C′

Figure: Graph representing the 3c problem.

Sander Jurgens Improving network robustness 15 / 28

slide-22
SLIDE 22

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

Reduction

C contains a subset C ′ ⊂ C, with |C ′| = k, such that every element of X occurs in at least one element of C ′ ⇔ G has a supergraph G ′, obtained by adding all k edges from set F, where ǫG′(a) ≤ 2

c1 cl C: b a . . . . . . x1 X: x3k

Figure: Graph used in the proof of complexity for em.

Sander Jurgens Improving network robustness 16 / 28

slide-23
SLIDE 23

Motivation Graph measures Complexity Approximation Conclusion Minimization problem NP-completeness Proof of complexity

Reduction

C contains a subset C ′ ⊂ C, with |C ′| = k, such that every element of X occurs in at least one element of C ′ ⇔ G has a supergraph G ′, obtained by adding all k edges from set F, where ǫG′(a) ≤ 2

c1 cl C: b a . . . . . . x1 X: x3k C′

Figure: Graph used in the proof of complexity for em.

Sander Jurgens Improving network robustness 16 / 28

slide-24
SLIDE 24

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Approximation

Sander Jurgens Improving network robustness 17 / 28

slide-25
SLIDE 25

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

What is an approximation algorithm?

Unlike heuristics, we want a provable solution quality Two types of results:

◮ Computed result (′) ◮ Optimal result (∗)

Approximation ratio ρ is an upper bound on the factor between the computed and

  • ptimal result:

OPT ≤ f (x) ≤ ρ · OPT ǫ∗(v) ≤ ǫ′(v) ≤ ρ · ǫ∗(v)

Sander Jurgens Improving network robustness 18 / 28

slide-26
SLIDE 26

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Approach

Problem

Minimize the distance measure (e.g. eccentricity) by adding k edges to a given graph Approximation approach (for a given v ∈ V ):

  • 1. Locate k vertices which are heads of clusters distant from v.
  • 2. Let set F contain the k new edges between v and these heads.

v

Figure: Illustration of approach for k = 2.

Sander Jurgens Improving network robustness 19 / 28

slide-27
SLIDE 27

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Approach

Problem

Minimize the distance measure (e.g. eccentricity) by adding k edges to a given graph Approximation approach (for a given v ∈ V ):

  • 1. Locate k vertices which are heads of clusters distant from v.
  • 2. Let set F contain the k new edges between v and these heads.

v

Figure: Illustration of approach for k = 2.

Sander Jurgens Improving network robustness 19 / 28

slide-28
SLIDE 28

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Approach

Problem

Minimize the distance measure (e.g. eccentricity) by adding k edges to a given graph Approximation approach (for a given v ∈ V ):

  • 1. Locate k vertices which are heads of clusters distant from v.
  • 2. Let set F contain the k new edges between v and these heads.

v

Figure: Illustration of approach for k = 2.

Sander Jurgens Improving network robustness 19 / 28

slide-29
SLIDE 29

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Clustering

Locate vertices which are heads of clusters distant from a given v ∈ V Clustering to minimize objective function: max

u∈V min h∈H dG (u, h)

Cluster(G, d, v, k) (1) h1 ← v (2) B1 ← V (3) for i = 2 to k (4) Let u be the vertex furthest away from a head (5) hi ← u (6) Bi ← {u} (7) foreach w ∈ (B1 ∪ · · · ∪ Bi−1) (8) Let j be such that w ∈ Bj (9) if d(w, hi) ≤ d(w, hj) (10) Bj ← Bj \ {w} (11) Bi ← Bi ∪ {w} (12) return (h1, . . . , hk)

Sander Jurgens Improving network robustness 20 / 28

slide-30
SLIDE 30

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Improvement

Let set F contain the new edges between v and the heads from the clustering ApproxSource(G, d, v, k) (1) H ← Cluster(G, d, v, k + 1) (2) F ← { (h1, hi) | 1 < i ≤ k + 1 } (3) return F

Sander Jurgens Improving network robustness 21 / 28

slide-31
SLIDE 31

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Improvement

Let set F contain the new edges between v and the heads from the clustering. ApproxSource(G, d, v, k) (1) H ← Cluster(G, d, v, k + 1) (2) F ← { (h1, hi) | 1 < i ≤ k + 1 } (3) return F

Definition

The additional edge weight ω is given by the maximum edge weight in set F, where F is the set of edges to be added.

Sander Jurgens Improving network robustness 21 / 28

slide-32
SLIDE 32

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Improvement

Let set F contain the new edges between v and the heads from the clustering. ApproxSource(G, d, v, k) (1) H ← Cluster(G, d, v, k + 1) (2) F ← { (h1, hi) | 1 < i ≤ k + 1 } (3) return F Given R(Bi) ≤ D∗ ≤ 2R∗ ≤ 2ǫ∗(v), for 1 ≤ i ≤ k + 1, we have the following: Our eccentricity: 2ǫ∗(v) + ω Optimal eccentricity: ǫ∗(v)

  • 2ǫ∗(v) + ω

ǫ∗(v) = 2 + ω ǫ∗(v)

R(B1) R(Bi) ω h1 hi

Figure: Graph illustrating the eccentricity bound.

Sander Jurgens Improving network robustness 21 / 28

slide-33
SLIDE 33

Motivation Graph measures Complexity Approximation Conclusion Basics Approach Clustering Improvement

Improvement

Similar results have been proven for other measures using the following algorithm ApproxGeneral(G, d, k, M) (1) F ← { }, m ← ∞ (2) foreach v ∈ V (3) F ′ ← ApproxSource(G, d, v, k) (4) G ′ ← (V , E ∪ F ′) (5) if MG′ < m (6) F ← F ′ (7) m ← MG′ (8) return F

Sander Jurgens Improving network robustness 22 / 28

slide-34
SLIDE 34

Motivation Graph measures Complexity Approximation Conclusion Results Future work Questions

Conclusion

Sander Jurgens Improving network robustness 23 / 28

slide-35
SLIDE 35

Motivation Graph measures Complexity Approximation Conclusion Results Future work Questions

Results

Research question How can we determine the robustness of a simple, connected, undirected, weighted graph, and use the resulting measures in the improvement process? Secondary research questions

◮ Which graph measures are suited for measuring network robustness? ◮ How viable are distance-based measures in measuring the network robustness? ◮ What complexity class does robustness improvement, i.e. distance-based measure

minimization, belong to?

◮ How do we go about approximating the optimal robustness improvements? ◮ What approximation ratios can we achieve for robustness improvements? Sander Jurgens Improving network robustness 24 / 28

slide-36
SLIDE 36

Motivation Graph measures Complexity Approximation Conclusion Results Future work Questions

Results

Which graph measures are suited for measuring network robustness?

◮ Distance, Centrality and Spectral.

How viable are distance-based measures in measuring the network robustness?

◮ Very viable, partially due to their correlation.

What complexity class does robustness improvement, i.e. distance-based measure minimization, belong to?

◮ All minimization problems were proven to be NP-hard. Sander Jurgens Improving network robustness 25 / 28

slide-37
SLIDE 37

Motivation Graph measures Complexity Approximation Conclusion Results Future work Questions

Results

How do we go about approximating the optimal robustness improvements?

◮ Connect given vertex to distant cluster heads.

What approximation ratios can we achieve for robustness improvements? Approximation ratio Time complexity Eccentricity 2 +

ω ǫ∗(v)

O(kn) Radius 2 +

ω R∗

O(n4) Diameter 2 + 2ω

D∗

O(n4) SS-ASP 2 O(kn) ASP 4 O(n4)

Table: Results of the approximation algorithms.

Sander Jurgens Improving network robustness 26 / 28

slide-38
SLIDE 38

Motivation Graph measures Complexity Approximation Conclusion Results Future work Questions

Future work

Network properties:

◮ Expand to directed networks

Approximation ratios:

◮ Improve approximation ratios ◮ Prove approximation ratio tightness

Improvement technique:

◮ Introduction of potential targets Sander Jurgens Improving network robustness 27 / 28

slide-39
SLIDE 39

Motivation Graph measures Complexity Approximation Conclusion Results Future work Questions

Questions?

Sander Jurgens Improving network robustness 28 / 28