optimizing genetic algorithm strategies for evolving networks

Post on 20-Jan-2016

29 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Optimizing genetic algorithm strategies for evolving networks. Matthew Berryman. Pleiotropy. Single agent performing multiple tasks. Example 1: single protein such as p53 involved in several regulatory pathways. Example 2: single server performing multiple tasks such as email, web server. - PowerPoint PPT Presentation

TRANSCRIPT

Optimizing genetic algorithm strategies for evolving

networksMatthew Berryman

Pleiotropy

• Single agent performing multiple tasks.

• Example 1: single protein such as p53 involved in several regulatory pathways.

• Example 2: single server performing multiple tasks such as email, web server.

Redundancy

• Multiple agents performing same task.

• Example 1: some level of redundancy between bicoid and nanos/caudual in anterior-posterior axis formation in Drosophila.

• Example 2: load-sharing web servers.

Tradeoffs and combinations

• Redundancy: high robustness, high cost.

• Pleiotropy: low robustness, low cost.

• Combine both pleiotropy and redundancy to get an optimal combination of high redundancy and low cost.

Network parameters

• Set of clients, C, and set of servers, S.• Positions of clients and servers set at

random but with minimum spacing.• Each client assigned a traffic value• Each server has a fixed amount of

traffic it can serve, Ts.• Utilization (ideally between

0.75 and 0.85) €

0 < Ti < Tmax

U =

Tii∈C

∑STs

Measuring redundancy and pleiotropy

• Each client i has out degree Oi = number of links out of client

• Each server j has in degree Ij = number of links into server

• Redundancy

• Pleiotropy

D =

Oii∈C

∑S

L =

I jj∈S

C

Fitness function• F=R/P

• R = reliability, P = cost

• Minimize P, maximize R => maximize F

P =

w i, j( )i, j( ) w i, j( )<∞{ }

di, j(n )

i, j( ) d i , j(n ) <∞{ }

R = 1i, j( ) d i , j

(n ) <∞{ }

Origin of the species• Mutations:

– add links, remove links from set of edges, – add servers, remove servers from set S.

• Crossover (mating): – for two networks with sets of nodes (clients and

servers), Na and Nb, and edges, and form a new network

• Selection: only the fittest (5) reproduce.• Population size is kept constant at 15 (rank

selection)

ε

εa ⊆Na2

εb ⊆Nb2

Nc = Na∪Nbεc ⊆εa∪εb

Let’s watch some sex

Previous results - stuck in a rut

ResultsLink failure probability = 0.001%

ResultsLink failure probability = 10%

Results: convergence timesVarying population size

Varying link failure probability

Conclusions and future directions

• Crossover operator allows the GA to converge much faster than mutation alone.

• Cost function improved by using Dijsktra’s algorithm: optimizing towards minimum cost for a given reliability.

• More work needed to analyze the convergence time -- use a simple network with known results, get rid of link failures and server replacement.

• Multi-objective evolutionary algorithms (multiple fitness functions

Dijkstra’s algorithm• Given an adjacency matrix, A, we

compute the distance matrix D in (min,+) matrix multiplications.

log n −1( )⎡ ⎤

A =

0 4 5

4 0 ∞

5 ∞ 0

⎢ ⎢ ⎢

⎥ ⎥ ⎥

D(2) = A2 =

0 4 5

4 0 ∞

5 ∞ 0

⎢ ⎢ ⎢

⎥ ⎥ ⎥

0 4 5

4 0 ∞

5 ∞ 0

⎢ ⎢ ⎢

⎥ ⎥ ⎥

=

min(0,8,10) min(4,4,∞) min(5,∞,5)

min(4,4,∞) min(8,0,∞) min(9,∞,∞)

min(5,∞,5) min(9,∞,∞) min(10,∞,0)

⎢ ⎢ ⎢

⎥ ⎥ ⎥

=

0 4 5

4 0 9

5 9 5

⎢ ⎢ ⎢

⎥ ⎥ ⎥

Alternative approach• Instead of clients, have a set of edge

routers (eg DSL router for a business), connecting a set of data streams di to a server.

di, j = hu t − tl( ) − hu t − tk( )( )tk ,tl( )∈T

T = t1, t2( ), t3, t4( ),K ∈ R2 t1 < t2 < t3 < t4 <K{ }

xs(i) = di, j

j

∑ = m(i) + am(i)W t

x t(s) =

m(i)

li+

am(i)

lii∈S

∑ W t'

i∈S

Alternative approach: in pictures• Instead of clients, have a set of edge routers

(eg DSL router for a business), connecting a set of data streams di to a server.

x1(s)

x2(s)

x2(t )

x3(t )

x4(t )

x5(t )

x1(t )

d1,1

d1,2

d1,3

Alternative fitness function• F=R/P

• R = reliability, P = cost

• Minimize P, maximize R => maximize F

P =m(i)

li+ aδ

m( i)

lii∈S

∑i∈S

R = 1i, j( ) d i , j

(n ) <∞{ }

Results: alternative cost function

Results: alternative cost function

top related