Large Scale Network Growth Techniques Valia Mitsou Supervisor

  • Slides: 22
Download presentation
Large Scale Network Growth Techniques Valia Mitsou Supervisor: Prof. Abbe Mowshowitz, City College 1

Large Scale Network Growth Techniques Valia Mitsou Supervisor: Prof. Abbe Mowshowitz, City College 1

Network growth Two major directions of research: • Describe and explain how real-world networks

Network growth Two major directions of research: • Describe and explain how real-world networks grow • Propose a new technique for building large networks with good properties

Introduction • A natural way networks in the real world are built is by

Introduction • A natural way networks in the real world are built is by connecting smaller networks together to form a larger one • It is useful to study binary graph operations that can be used in this concept (two smaller graphs are combined to create a larger one).

Outline • • Definitions of some basic graph operations that can be used for

Outline • • Definitions of some basic graph operations that can be used for creating a larger network from two smaller ones. We will examine the properties of the produced network in terms of the smaller ones. 1. Diameter 2. Vulnerability

Graph Operations • Simple Operations: The size of the resulting graph is of the

Graph Operations • Simple Operations: The size of the resulting graph is of the order of O(n 1 + n 2). • Products: The size of the resulting graph is of the order of O(n 1 · n 2).

Simple Operations • Coalescence. A coalescence of two graphs G 1 and G 2

Simple Operations • Coalescence. A coalescence of two graphs G 1 and G 2 is any graph obtained from the disjoint union of G 1 and G 2 by merging one vertex from G 1 and one from G 2. (Disjoint) • Union. The (disjoint) union of two graphs G 1(V 1, E 1), G 2(V 2, E 2) is a graph G(V, E) where V = V 1 U V 2 and E = E 1 U E 2. • Join. The join of two graphs G 1(V 1, E 1), G 2(V 2, E 2) is a graph G(V, E) where V = V 1 U V 2 and E = E 1 U E 2 U {(x, y) | x Є V 1 & y Є V 2}.

Coalescence Union Join

Coalescence Union Join

Products 1 • Cartesian Product. The cartesian product of two graphs G 1(V 1,

Products 1 • Cartesian Product. The cartesian product of two graphs G 1(V 1, E 1) and G 2(V 2, E 2) is a graph G(V, E) with V = V 1 x V 2 and E = {(u 1, u 2)(v 1, v 2), where (u 1 = v 1 & u 2 v 2 Є E 2) or (u 2 = v 2 & u 1 v 1 Є E 1)}. • Composition (or Lexicographic Product). The composition of two graphs G 1(V 1, E 1) and G 2(V 2, E 2) is a graph G(V, E) with V = V 1 x V 2 and E = {(u 1, u 2)(v 1, v 2), where (u 1 v 1 Є E 1) or (u 1 = v 1 & u 2 v 2 Є E 2)}.

Products 2 • Tensor Product (Direct Product, Categorical Product, Cardinal Product, or Kronecker Product).

Products 2 • Tensor Product (Direct Product, Categorical Product, Cardinal Product, or Kronecker Product). The tensor product of two graphs G 1(V 1, E 1) and G 2(V 2, E 2) is a graph G(V, E) with V = V 1 x V 2 and E = {(u 1, u 2)(v 1, v 2), where u 1 v 1 Є E 1 and u 2 v 2 Є E 2}. • Co-normal Product (Disjunctive Product or Or Product). The co-normal product of two graphs G 1(V 1, E 1) and G 2(V 2, E 2) is a graph G(V, E) with V = V 1 x V 2 and E = {(u 1, u 2)(v 1, v 2), where u 1 v 1 Є E 1 or u 2 v 2 Є E 2}.

Products 3 • Compounding of Graphs. Roughly speaking, compounding of two graphs G(V, E)

Products 3 • Compounding of Graphs. Roughly speaking, compounding of two graphs G(V, E) and H is obtained by taking V copies of H, indexed by the vertices of G, and joining two copies Hu, Hv of H by a single edge whenever (u, v) Є E. • Rooted Product. A special case of compounding. The rooted product of a graph G(V, E) and a rooted graph H is defined as follows: take |V| copies of H and for every vertex vi Є V identify vi with the root node of the ith copy of H.

G 1 G 2 Cartesian Co-normal Composition Rooted Tensor

G 1 G 2 Cartesian Co-normal Composition Rooted Tensor

First Task “Compute the diameter”

First Task “Compute the diameter”

Table (simple operations) Operation Network Size Num. of Edges Union n 1 + n

Table (simple operations) Operation Network Size Num. of Edges Union n 1 + n 2 l 1 + l 2 Join n 1 + n 2 l 1 + l 2 + n 1 n 2 min{2, max{d 1, d 2}} Coalesence n 1 + n 2 - 1 l 1 + l 2 max{d 1, d 2 } ≤ d 1+ 2 d 2 Diameter

Table (products) Operation Net. Size Num. of Edges Diameter Cartesian Product n 1 n

Table (products) Operation Net. Size Num. of Edges Diameter Cartesian Product n 1 n 2 n 1 l 2 + n 2 l 1 d 1 + d 2 Composition n 1 n 2 Tensor n 1 n 2 2 l 1 l 2 d ≥ max{d 1, d 2} Co-Normal Product n 1 n 2 n 12 l 2 + n 22 l 1 –l 1 l 2 min{d 1, d 2} Rooted Product n 1 n 2 l 1 + n 1 l 2 d ≤ d 1 + 2 d 2 Compounding n 1 n 2 l 2 n 1 + l 1 n 22 l 1+n 1 l 2 max{d 1, min{d 2, 2}} d ≤ (d 1 + 1) d 2

Second Task “Vulnerability of Large Scale Networks”

Second Task “Vulnerability of Large Scale Networks”

Parameters • • Knowledge of the adversary: The information an attacker has for the

Parameters • • Knowledge of the adversary: The information an attacker has for the network. It is generally reasonable to assume no a priori knowledge of the network, however we will also examine the other case. Power of the adversary: cost of mounting an attack. Reasonable limitations: – – The attacker can undertake a small number of nodes. The time complexity of the attack should be a relatively small function of n.

Definition of Vulnerability We say that a network is vulnerable for a specific attacker

Definition of Vulnerability We say that a network is vulnerable for a specific attacker if he can address an attack that will isolate an at most logarithmic number of nodes or edges which if we remove then the network is disconnected into two pieces (not necessarily connected components) of the order of n and this procedure can be realized within at most linear time. Vulnerability can be divided into three classes: node, edge, and mixed node and edge.

Node Vulnerability A more formalized way to express node vulnerability would possibly be the

Node Vulnerability A more formalized way to express node vulnerability would possibly be the minimum b-vertex separator problem: Definition: Given a graph G(V, E) and a number 0 < b ≤ ½, find a partition V into disjoint sets A, B, C such that min{A, B} ≥ b ∙ |V| and no node of A is connected to a node of B. We want to optimize the size of the separator, i. e |C|.

Results on Minimum b-Vertex Separator Problem • NP-hard. • Inapproximable within 1+ |V|1/2 –

Results on Minimum b-Vertex Separator Problem • NP-hard. • Inapproximable within 1+ |V|1/2 – ε /OPT for any ε>0, even for graphs of maximum degree 3 (Bui and Jones) • In planar graphs, a graph separator of size O(√|V|) can be found in polynomial time (Lipton and Tarjan)

Further Research Examine the case of networks created using graph operations. Suppose that: –

Further Research Examine the case of networks created using graph operations. Suppose that: – The adversary knows the graphs from which the network was created. – The graphs are vulnerable Can he take advantage of this information to destroy the network?

Further Research Example: For the composition product Cn x Cn 2 n nodes suffice

Further Research Example: For the composition product Cn x Cn 2 n nodes suffice to destroy the network. However it cannot be considered as “node vulnerable” since this amount is the sqrt of the total size of the whole network.

Thank you!

Thank you!