440 likes | 592 Views
A Routing Algorithm for Wireless Mesh Networks. Problem Formulation. Available channels. 802.11 card. Problem Formulation. Available channels. R. Problem Formulation. Expected transmission time (ETT): expected time to transmit a packet of fixed size through the link. Available channels.
E N D
Problem Formulation Available channels 802.11 card
Problem Formulation Available channels R
Problem Formulation Expected transmission time (ETT): expected time to transmit a packet of fixed size through the link. Available channels Data rate (R)
Problem Formulation Expected transmission time (ETT) Available channels Data rate (R) Routing Problem: find the optimal path from a source node to a destination node
Related Works 1- Shortest hop path. 2- Shortest Expected Transmission Count (ETX) path [1]. 3- Widest data rate path [2]. 4- Shortest Weighted Cumulative Expected Transmission Time (WCETT) path[3].
Shortest Hop Path • Problems • Does not consider end-to-end delay • May suffer of intra-flow interference
Shortest Expected Transmission Count Path[1] 4 5 1 4 4 3 3 2 1 1 Number of MAC re-transmissions needed to send a frame from 0 to 7 • Problems • Does not consider the data rate of the links • Does not consider end-to-end delay
Widest Data Rate Path [2] Expected transmission time (ETT) Data rate (R) • Problems • May suffer of intra-flow interference • Does not consider end-to-end delay
Weighted Cumulative Expected Transmission Time (WCETT) [3] Tries to minimize the cumulative ETT and the intra-flow interference
Weighted Cumulative Expected Transmission Time (WCETT) Available channels cETT(P1) = 2.1 + 2.3 + 2.5 + 3.7 = 10.6 ms ; MAX{2.1, (2.3+2.5=4.8), 3.7}= 4.8; WCETT(P1) = (1-B)*10.6 + B*4.8 = 7.7 (B=0.5)
Weighted Cumulative Expected Transmission Time (WCETT) Available channels cETT(P1) = 2.1 + 2.3 + 2.5 + 3.7 = 10.6 ms ; MAX{2.1, 4.8, 3.7}= 4.8; WCETT(P1) = (1-B)*10.6 + B*4.8 = 7.7 (B=0.5) cETT(P2) = 2.1 + 2.3 + 2.5 + 3.7 = 10.6 ms ; MAX{2.1, 8.5}= 8.5; WCETT(P2) = (1-B)*10.6 + B*8.5 = 9.5
Weighted Cumulative Expected Transmission Time (WCETT) Available channels cETT(P1) = 2.1 + 2.3 + 2.5 + 3.7 = 10.6 ms ; MAX{2.1, 4.8, 3.7}= 4.8; WCETT(P1) = (1-B)*10.6 + B*4.8 = 7.7 (B=0.5) cETT(P2) = 2.1 + 2.3 + 2.5 + 3.7 = 10.6 ms ; MAX{2.1, 8.5}= 8.5; WCETT(P2) = (1-B)*10.6 + B*8.5 = 9.5 cETT(P3) = 4 + 1.9 + 2 + 2 = 9.9 ms ; MAX{6, 1.9, 2}= 6; WCETT(P3) = (1-B)*9.9 + B*6 = 7.95
Proposal • A genetic algorithm [8, 9, 10] that optimizes: • End-to-end delay (cumulative ETT) • Number of interfering links • Data rate along the path 1- End-to-end delay = 4 + 1.9 + 2 + 2 = 9.9 ms 2- Number of interfering links = 0 3- Data Rate along the path = Min {44, 35, 27, 35} = 27 Mbps
Genetic Algorithm Coding a solution of the problem (i.e., a path from source node to destination node) as a linear string. Priority-based encoding [4, 5]: 0 1 2 3 4 5 6 7 Node ID 5 3 0 2 2 7 4 5 Priority 0 7 6 5 4
Proposed Genetic Algorithm t=0; Initialize P(t); do{ Evaluate P(t); Compute fitness (P); P(t+1) = Select individuals for crossover; P(t+1) = Perform crossover of P(t+1); t = t+1; } while stop criterion is not reached
Proposed Genetic Algorithm Initialize P t=0; Initialize P(t); do{ Evaluate P(t); Compute fitness (P); P(t+1) = Select individuals for crossover; P(t+1) = Perform crossover of P(t+1); t = t+1; } while stop criterion is not reached P
Proposed Genetic Algorithm Evaluate P t=0; Initialize P(t); do{ Evaluate P(t); Compute fitness (P); P(t+1) = Select individuals for crossover; P(t+1) = Perform crossover of P(t+1); t = t+1; } while stop criterion is not reached Compute the objective functions of each solution P
Proposed Genetic Algorithm Compute Fitness t=0; Initialize P(t); do{ Evaluate P(t); Compute fitness (P); P(t+1) = Select individuals for crossover; P(t+1) = Perform crossover of P(t+1); t = t+1; } while stop criterion is not reached Based on the objective functions, compute fitness P The fitness of a solution is a measure that quantifies how good the solution is.
Proposed Genetic Algorithm P(t+1) t=0; Initialize P(t); do{ Evaluate P(t); Compute fitness (P); P(t+1) =Select individuals for crossover; P(t+1) = Perform crossover of P(t+1); t = t+1; } while stop criterion is not reached Selection according to fitness P
Proposed Genetic Algorithm t=0; Initialize P(t); do{ Evaluate P(t); Compute fitness (P); P(t+1) = Select individuals for crossover; P(t+1) =Perform crossover of P(t+1); t = t+1; } while stop criterion is not reached Perform crossover P(t+1) P(t+1) Crossover
Multi-objective Problems A problem with two objective functions. End-to-end delay # of interfering links
Multi-objective Problems A problem with two objective functions. End-to-end delay # of interfering links
Multi-objective Problems A problem with two objective functions. End-to-end delay # of interfering links
Multi-objective Problems A problem with two objective functions. End-to-end delay # of interfering links
Multi-objective Problems A problem with two objective functions. End-to-end delay # of interfering links
Multi-objective Problems Non-dominated (optimal) solutions End-to-end delay # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 3 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 3 5 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 3 5 5 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 3 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 3 + 5 + |P| 3 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 18 5+5+10 3 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 18 20 3 5+10 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 18 5+5+3+10 20 3 15 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 18 23 20 3 5+5+2+10 15 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 3+5+5+2+10 18 23 20 3 22 15 5 5 2 # of interfering links
Multi-objective Problems Fitness computation – SPEA [6] End-to-end delay 25 18 23 20 3 22 15 5 5 2 # of interfering links
Work in Progress • Some preliminary ‘runs’ in random networks to test the algorithm. • The distributed protocol is being developed in CNET[7].
References • D. De Couto, D. Aguayo, J. Bicket, R. Morris. High-throughput path metric for multi-hop wireless routing, in 9th International Conference on Mobile Computing and Networking (Mobicom 2003), September 2003, San Diego, California - USA. • L. Iannone, K. Kabassanow, S. Fdida, Evaluation of cross-layer rate-aware routing in a wireless mesh network test bed, Eurasip journal on wireless communications and networking, vol 2007, Article Id 86510, 2007. • R. Draves, J. Padhye, B. Zill, Routing in multi-radio, multi-hop wireless mesh networks, in: 10th International Conference on Mobile Computing and Networking (Mobicom 2004), September 2004, Philadelphia, PA – USA. • M. Gen, R. Cheng, D. Wang, Genetic algorithms for solving shortest path problems, Proc. IEEE International Conference on Evolutionary Computation, pp. 401-406, 1997. • M. Gen, L. Lin, Multiobjective hybrid genetic algorithm for bicriteria network design problem, 8th Asia Pacific Symposium on Intelligent and Evolutionary Systems, December 2004, Australia. • E. Zitzler, L. Thiele, Multiobjective evolutionary algorithms: a comparative case study and the strength pareto approach. IEEE Trans. on Evolutionary Computation 3, 1999, pp. 257-271. • http://www.csse.uwa.edu.au/cnet3 • C. Coello, D. Van Veldhuizen, G. Lamont, Evolutionary Algorithms for Solving Multi-Objective Problems, Kluwer Academic Publishers; ISBN: 0306467623, May 2002. • http://www.waseda.jp/sem-genlab/prof_gen.html • http://www.lania.mx/~ccoello/EMOO/
Multi-objective Problems Given two solutions u,v, and their objective vectors F(u), F(v), in a minimization context, we can establish the following relations:
Multi-objective Optimization PARETO dominance