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. 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: loadsharing 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 0 Ti Tmax • Each server has a fixed amount of traffic it can serve, Ts. • Utilization (ideally between Ti 0.75 and 0.85) iC U S Ts 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 O i • Redundancy • Pleiotropy D iC S I L j S C j Fitness function • F=R/P • R = reliability, P = cost • Minimize P, maximize R => maximize F wi, j P i, j wi, j d i, j d R ( n) i, j 1 i, j d (n ) i, j ( n) i, j 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 2 2 N servers), Na and Nb, and edges, a N a and b b form a new network N c N a N b c a b • Selection: only the fittest (5) reproduce. • Population size is kept constant at 15 (rank selection) Let’s watch some sex Previous results - stuck in a rut Results Link failure probability = 0.001% Results Link failure probability = 10% Results: convergence times Varying 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 log n 1 (min,+) matrix multiplications. 0 4 5 A 4 0 5 0 0 D(2) A 2 4 5 min( 0,8,10) min( 4,4,) min( 5,,5) 0 4 5 4 5 0 9 9 5 5 0 4 5 0 4 0 0 5 0 4 min( 5,,5) min( 8,0,) min( 9,,) min( 9,,) min( 10,,0) min( 4,4,) 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 h ut t h ut t l t k ,t l T T t1,t 2 , t 3 ,t 4 , k R2 t1 t 2 t 3 t 4 x di, j m am W t (i) s (i) (i) j (i) m x (s) t iS li am(i) ' l Wt i iS 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) x (s) 2 (t ) 1 x d 1,1 d1,2 x (t2 ) x (t3 ) d1,3 x (t4 ) x (t5 ) Alternative fitness function • F=R/P • R = reliability, P = cost • Minimize P, maximize R => maximize F m (i) P a iS li R 1 ( n) i, j d i , j m (i) l i iS Results: alternative cost function Results: alternative cost function