decomposing networks and polya urns with the power of choice joint work with christos amanatidis,...

39
Decomposing Networks and Polya Urns with the Power of Choice Joint work with Christos Amanatidis, Richard Karp, Christos Papadimitriou, Martha Sideri Presented By: Henry Lin

Upload: liliana-strickland

Post on 25-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Decomposing Networks and Polya Urns with the Power of Choice

Joint work with Christos Amanatidis, Richard Karp, Christos Papadimitriou, Martha Sideri

Presented By:

Henry Lin

Overview

Motivations

Linked Decompositions

Preferential Attachment Model

Analysis of a Polya Urns Process

Open Problems

Motivations

The Internet is large and growing rapidly– difficult to manage– routers cannot store too much data

Can we divide up the network into distinct regions that can be managed mostly independently and still route efficiently?

Linked Decomposition

Decompose into c connected components

Each node belongs to 1 or 2 components

Each component has size ~ a

Any two components intersect

Linked Decomposition Example

Decompose into c = 3 connected (small diameter) components

Each node belongs to 1 or 2 components

Each component has size ~ a = 6

Any two components intersect

Routing with Linked Decompositions

How to route to node v in your component(s)?

Store each node in your component(s)

uv

Routing with Linked Decompositions

How to route to node v in your component(s)?

Store each node in your component(s)

How to route to node v outside of component?

Store an intersection node in your component to reach v

u

v

w

Routing with Linked Decompositions

How to route to node v in your component(s)?

Store each node in your component(s)

How to route to node v outside of component?

Store an intersection node in your component to reach v

u

v

w

Requires O(a) storage per node

Requires O(n/a) storage per node

Linked Decompositions Desiderata

Recall: we can route with O(a+n/a) tables

Therefore, we want: size a ~ n and thus number of components c ~ n and diameter ~ log n

Can we do this?

Note: Routing with n tables can be achieved by other means

For example, by compact routing [AGMNT ‘04]

But a linked decomposition is much more than a routing scheme:– It breaks down a network into many largely

independent components, with no harm to routing capabilities

It is also very simple

What about the Internet?

Can we decompose into c ~ n components Each node belongs to 1 or 2 components Each component has diameter ~ log n Each component has size a ~ n Any pair of components intersect

Surprise!

Yes! Our experiments show that the actual Internet graph has a linked decomposition with these approximate parameters

Main point of this paper: A theoretical justification for this phenomenon

By analyzing a well-studied random model of the Internet

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Preferential Attachment Model

PA(m) : Nodes arrive one at a time, each new node:– selects m nodes iid at random, proportional to degree– adds one edge to each of the m selected nodes

Linked Decomposition in PA(m)

Decompose graph into c connected components

Each vertex belongs to 1 or 2 components Each component has diameter d Each component has size about a Any two components intersect

Our Main Result: PA(m) graphs have linked decompositions whp with parameters above– (Note: m depends on ε)

= Θ(n1/2+ε)

= Θ(n1/2-ε)

= log n

Decomposing PA(m) graphs

For each node t є {1, ... ,n1/2-ε}, we assign node t to its own component

n1/2-ε1 …

Decomposing PA(m) graphs

1. For each node t є {n1/2-ε + 1, ... ,n/2}, we look at where the m edges of node t point, and assign node t to the component of lowest total degree

n1/2-ε1 … n1/2-ε+1

Decomposing PA(m) graphs

n1/2-ε1 … n1/2-ε+1 …

2. For each node t є {n1/2-ε + 1, ... ,n/2}, we look at where the m edges of node t point, and assign node t to the component of lowest total degree

Decomposing PA(m) graphs

n1/2-ε1 … n1/2-ε+1 … n/2

2. For each node t є {n1/2-ε + 1, ... ,n/2}, we look at where the m edges of node t point, and assign node t to the component of lowest total degree

Decomposing PA(m) graphs

3. For each node t є {n/2 + 1, ... ,n}, we look at the first two edges of node t, and assign each node t to two components of the endpoints

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1

Decomposing PA(m) graphs

3. For each node t є {n/2 + 1, ... ,n}, we look at the first two edges of node t, and assign each node t to two components of the endpoints

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1

Decomposing PA(m) graphs

3. For each node t є {n/2 + 1, ... ,n}, we look at the first two edges of node t, and assign each node t to two components of the endpoints

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1

Decomposing PA(m) graphs

3. For each node t є {n/2 + 1, ... ,n}, we look at the first two edges of node t, and assign each node t to two components of the endpoints

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1

Decomposing PA(m) graphs

3. For each node t є {n/2 + 1, ... ,n}, we look at the first two edges of node t, and assign each node t to two components of the endpoints

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1

Decomposing PA(m) graphs

3. For each node t є {n/2 + 1, ... ,n}, we look at the first two edges of node t, and assign each node t to two components of the endpoints

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1 n

Decomposing PA(m) graphs

Decompose graph into c=Θ(n1/2-ε) connected components

Each vertex belongs to 1 or 2 components Each component has diameter d=O(log n) Each component has size a=Θ(n1/2+ε) Any two components intersect

n1/2-ε1 … n1/2-ε+1 … n/2 n/2+1 n

Recall: Polya Urns Process

Process starts with:– N bins/urns and1 ball in each bin

At each step, pick a random bin with probability proportional to load– Add one ball to the selected bin

Bin loads become unbalanced whp

Polya Urns with the Power of Choice

Process P starts with:– N bins, O(N) balls– Each bin contains ≥ 1 ball

Pick m bins iid at random, with replacement, probability proportional to load– Add one ball to the least loaded of the m bins

Does this process balance bin loads?

Our Main Technical Result

Theorem: For any ε > 0, there exists an m, s.t. if we run P for Θ(N2+ε) steps, the loads of all bins differ by at most by a factor of (1±ε).

More complicated analysis shows the degree & size of components become balanced after Ω(c2+ε) = n nodes arrive in PA(m)

The main result follows

Polya Urns w/ Choice: Two Bins

Lt = fractional load of low bin at time t

Ht = fractional load of high bin at time t

Key insight: Pr[add ball to high bin] = (Ht )m

< Ht

Pr[add ball to low bin] = (1 - (1-Lt )m ) > Lt

Thus both bins obtain the same load, and stay roughly balanced whp (Azuma’s Inequality)

Can use Chernoff bounds to show fractional load of high bin decreases quickly

Very Rough Proof Sketch

Define a marker bin M Bins with less load than M are low bins

– Show fractional load of low bins increase

Bins with more load than M are high bins– Show fractional load of high bins decrease

Eventually every bin obtains the same load as bin M, and subsequently stays roughly balanced with bin M

Open Problems

Does Polya urns with m=2 choices balance after O(N2+ε) balls? Our proof for m=2 gives O(N3).– New proof being checked…

What are necessary and sufficient conditions for a linked decomposition to exist?

Show linked decomposition routing has limited congestion and is robust against failures?

Incentives for autonomous systems to form a linked decomposition?

Thanks!

Questions?