CS717 Fault-Tolerant Routing: A Genetic Algorithm and CJC Arjun Rao CS 717 November 18, 2004.

Slides:



Advertisements
Similar presentations
Ch. 12 Routing in Switched Networks
Advertisements

Ch. 12 Routing in Switched Networks Routing in Packet Switched Networks Routing Algorithm Requirements –Correctness –Simplicity –Robustness--the.
CS6800 Advanced Theory of Computation
Routing in a Parallel Computer. A network of processors is represented by graph G=(V,E), where |V| = N. Each processor has unique ID between 1 and N.
Minimum Energy Mobile Wireless Networks IEEE JSAC 2001/10/18.
Data and Computer Communications Ninth Edition by William Stallings Chapter 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth.
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
A Novel Cluster-based Routing Protocol with Extending Lifetime for Wireless Sensor Networks Slides by Alex Papadimitriou.
Routing Strategies Fixed Routing
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
Parallel Routing Bruce, Chiu-Wing Sham. Overview Background Routing in parallel computers Routing in hypercube network –Bit-fixing routing algorithm –Randomized.
Dept. of Computer Science Distributed Computing Group Asymptotically Optimal Mobile Ad-Hoc Routing Fabian Kuhn Roger Wattenhofer Aaron Zollinger.
Ant Colony Optimization Optimisation Methods. Overview.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
1 Lecture 25: Interconnection Networks Topics: communication latency, centralized and decentralized switches, routing, deadlocks (Appendix E) Review session,
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Interconnection Networks. Applications of Interconnection Nets Interconnection networks are used everywhere! ◦ Supercomputers – connecting the processors.
Primal-Dual Meets Local Search: Approximating MST’s with Non-uniform Degree Bounds Author: Jochen Könemann R. Ravi From CMU CS 3150 Presentation by Dan.
Distributed Routing Algorithms. In a message passing distributed system, message passing is the only means of interprocessor communication. Unicast, Multicast,
Genetic Algorithm for Multicast in WDM Networks Der-Rong Din.
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Dr.Abeer Mahmoud ARTIFICIAL INTELLIGENCE (CS 461D) Dr. Abeer Mahmoud Computer science Department Princess Nora University Faculty of Computer & Information.
CS717 Application of AI- and ML-Techniques to Fault-Tolerant Routing Arjun Rao CS 717 November 16 and 18, 2004.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
Biologically-inspired ring design in Telecommunications Tony White
Data Communications and Networking Chapter 11 Routing in Switched Networks References: Book Chapters 12.1, 12.3 Data and Computer Communications, 8th edition.
Genetic Algorithms. Evolutionary Methods Methods inspired by the process of biological evolution. Main ideas: Population of solutions Assign a score or.
A New Evolutionary Approach for the Optimal Communication Spanning Tree Problem Sang-Moon Soak Speaker: 洪嘉涓、陳麗徽、李振宇、黃怡靜.
Exact and heuristics algorithms
InterConnection Network Topologies to Minimize graph diameter: Low Diameter Regular graphs and Physical Wire Length Constrained networks Nilesh Choudhury.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Edge Assembly Crossover
ECE 103 Engineering Programming Chapter 52 Generic Algorithm Herbert G. Mayer, PSU CS Status 6/4/2014 Initial content copied verbatim from ECE 103 material.
MAE 552 Heuristic Optimization Instructor: John Eddy Lecture #12 2/20/02 Evolutionary Algorithms.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
CS621: Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 5: Power of Heuristic; non- conventional search.
Joint Power and Channel Minimization in Topology Control: A Cognitive Network Approach J ORGE M ORI A LEXANDER Y AKOBOVICH M ICHAEL S AHAI L EV F AYNSHTEYN.
GENETIC ALGORITHM Basic Algorithm begin set time t = 0;
Innovative and Unconventional Approach Toward Analytical Cadastre – based on Genetic Algorithms Anna Shnaidman Mapping and Geo-Information Engineering.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
2/14/2016  A. Orda, A. Segall, 1 Queueing Networks M nodes external arrival rate (Poisson) service rate in each node (exponential) upon service completion.
HYPERCUBE ALGORITHMS-1
Basic Communication Operations Carl Tropper Department of Computer Science.
Copyright 2007 Koren & Krishna, Morgan-Kaufman Part.12.1 FAULT TOLERANT SYSTEMS Part 12 - Networks.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Breeding Swarms: A GA/PSO Hybrid 簡明昌 Author and Source Author: Matthew Settles and Terence Soule Source: GECCO 2005, p How to get: (\\nclab.csie.nctu.edu.tw\Repository\Journals-
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
Advanced AI – Session 7 Genetic Algorithm By: H.Nematzadeh.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Intelligent Exploration for Genetic Algorithms Using Self-Organizing.
Welcome Final Year Project Oral Presentation
Artificial Intelligence (CS 370D)
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
CS621: Artificial Intelligence
Lecture 14: Interconnection Networks
A Fault-Tolerant Routing Strategy for Fibonacci-Class Cubes
Mesh-Connected Illiac Networks
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
On-time Network On-chip
Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli
Boltzmann Machine (BM) (§6.4)
Searching for solutions: Genetic Algorithms
Presentation transcript:

CS717 Fault-Tolerant Routing: A Genetic Algorithm and CJC Arjun Rao CS 717 November 18, 2004

CS717 Next Paper [1] Loh, Peter K.K., “Artificial Intelligence Search Techniques as Fault-Tolerant Routing Strategies” [2] Loh, Shaw., “A Genetic-Based Fault- Tolerant Routing Strategy for Multiprocessor Networks”

CS717 Our Little Problem… AI search techniques topology- and fault-type independent… …but non-minimal routes utilized Follow-up work shows how genetic algorithms (combined with heuristics) can find minimal routes in presence of network faults

CS717 Genetic Algorithms: Overview Optimization strategy Population of potential solutions evolve over series of generations Each element of population is chromosome; each unit of chromosome is gene Chromosomes undergo crossover and mutation Most fit chromosomes selected for next generation, based upon fitness function

CS717 Abstract Model Same as before (including definitions of S and G) Pure abstraction suffers from same caveats as before Basic idea: Instead of AI search for adaptive route, optimize over population of routes to find best

CS717 Message Packets Simplified version:

CS717 Chromosome Route  Chromosome Node on route  Gene in chromosome Length of route  Size of chromosome –Chromosome size directly reflects routing performance! Distance traversed basis of fitness

CS717 Population Creation

CS717 Mutation and Crossover Mutation: Swap and/or shift Normal crossover destroys routes, messes with source and destination; problem w/ different lengths –Use one-point random crossover

CS717 Fitness Function F = (D max – D route ) / D max +  –D max : Maximum distance between source and destination –D route : Distance traveled by specific route –  : Predefined value to ensure non-zero fitness Higher value  More fit

CS717 Selection Scheme Roulette Wheel –Sum of fitness values * random value from [0,1] –Select chromosomes until fitness sum greater than product Tournament Selection –Most fit chromosomes selected Stochastic Remainder –Probabilities used to select route Which scheme has best performance selecting optimal route?

CS717 Reroute

CS717 Genetic Hybrid Algorithm

CS717 Performance Testing RW, TS, SR tested in concert with RR and HCR (previous algorithm was for RR) 25-node mesh network Varying fault percentages Ten tests, each over 20 generations Variations in mutation and crossover rates

CS717 Performance Testing (cont.) Randomness of RR bad for rerouting Unsuccessful routes increase with number of generations SR + HCR performed best (prevented premature convergence, maintained good diversity)

CS717 Performance Testing (cont.)

CS717 Comparison With AI-only Strategies

CS717 Next (and Final) Paper [3] Loh, Schröder, Hsu., “Fault-Tolerant Routing on Complete Josephus Cubes” (not AI/GA-related but interesting nevertheless)

CS717 What is a Josephus Cube? New network topology –Better embedding, communications performance than hypercube topologies Can be used for processors, node clusters w/ optical channel architectures –In clusters, fault tolerance sacrificed for scalability –Symmetry (which is good for routing) somewhat sacrificed as well

CS717 Complete Josephus Cube (CJC) Augmented (i.e. more links) Josephus Cube Better fault-tolerance Routing efficiency maintained! Properties –Uniform node degree of log 2 N + 2 –N = 2 r, r is order of network –Smaller diameter –Better symmetry –Guaranteed message delivery (w/ up to r + 1 faults) –No deadlocks/livelocks We examine CJC as node cluster topology

CS717 Defining the CJC CJC(N) is an undirected graph G = (V, E) Nodes labeled using function J: –J(1) = 1 –J(2i) = 2J(i) – 1, i  1 –J(2i + 1) = 2J(i) + 1, i  1

CS717 Defining the CJC (cont.) V = {u | J(2 r )  u  J(2 r + 1 – 1)} Three types of edges: H, J, C –E = E H  E J  E C (x,y)  E H iff H(x,y) = 1, where H is the Hamming distance (x,y)  E J iff y = x XOR 6 (x,y)  E C iff y =  (x), where  finds 2’s complement

CS717 Example: CJC(8), r = 3

CS717 Example: CJC(16), r = 4

CS717 Data Vectors Route vector R v (u) = (T r+1 T r …T 1 T 0 ) –Information on paths already traversed –T r+1 = 1 if |u  v| > CEIL(r / 2) else 0 –T r = 1 if v = u (J), where u (J) is 2’s complement of lowest order bits –T k = (u k+1  v k+1 ), 0  k < r

CS717 Data Vectors (cont.) Input link vector I v (w) = (L r+1 L r …L 1 L 0 ) –L i = 0 if message arrives on link i else 1 Fault status vector F v (w) = (S r+1 S r …S 1 S 0 ) –S j = 0 if node on link j or link j itself faulty else 1 Navigation vector N v (u) = R v (u)  I v (u)  F v (w) –Designates optimal (or best-possible) paths from current node

CS717 CJC-FTROUTE() Algorithm 1)Extract route vector from packet header 2)Update current node’s fault status vector 3)If route vector all 0’s, destination reached 4)(Re)Initialize input link vector 5)Compute navigation vector N v (u) 6)If enabled C link not faulty, set R v r+1 (u) to 0, take 2’s complement of R v (u), and route packet 7)Else, do the same with the J link (link r), except complement R v 0 (u) and R v 1 (u) only 8)If both C and J links faulty and/or not enabled, find an H link for routing (or misrouting), set R v r+1 (u) and R v r (u) to 0, and either route or discard

CS717 Example 1: CJC(16)

CS717 Example 2: CJC(16)

CS717 Routing With Bounded Faults Theorem: Routing between a node pair (x, y) is optimal if F T < (r + 2) which includes faulty J and C incident links at x Proof: Let f i faults be encountered at node w i on path of length p. |R(w i )| - f i optimal links left to y; routing from w i to w i+1 optimal if link or |R(w i )| - f i > 0. Generalizing to whole path:

CS717 Maximum Path Distance Define FTR(u, v) = Set of edges of path from u to v Corollary: FTR guarantees path distance of route upper-bounded by H(x, y) if F T < (r + 2) Corollary: FTR guarantees max distance r in order r cluster Proof: Follows from above corollary with H(x, y)  r

CS717 Final Set of Theorems For sub-optimal routing, FTR guarantees max path distance of 2r – H(x, y) + 2 only if F T < (r + 2) (including disabled C and J links at x) FTR guarantees deadlock-free routes FTR guarantees livelock-free routes –Proof of latter two utilizes notion of virtual networks in CJC