An Evolutionary Approach to Network Self-Organization and Resilient Data Diffusion

Data diffusion techniques enable a distributed system to replicate and propagate data across a potentially unreliable network in order to provide better data protection and availability. This paper presents a novel evolutionary computation approach to developing network construction algorithms and data diffusion strategies. The proposed approach combines a linear genetic program with a cellular automaton to evolve digital organisms (agents) capable of self-organizing into different types of networks and self-adapting to changes in their surrounding environment, such as link failures and node churn. We assess the effectiveness of the proposed approach by conducting several experiments that explore different network structures under different environmental conditions. The results suggest the combined methods are able to produce self-organizing and self-adaptive agents that construct networks and efficiently distribute data throughout the network, while balancing competing concerns, such as minimizing energy consumption and providing reliability.

[1]  Charles Ofria,et al.  Avida , 2004, Artificial Life.

[2]  Stephen Wolfram,et al.  Cellular automata as models of complexity , 1984, Nature.

[3]  David B. Knoester,et al.  Applying genetic algorithms to decision making in autonomic computing systems , 2009, ICAC '09.

[4]  Antonio Alfredo Ferreira Loureiro,et al.  Simulating large wireless sensor networks using cellular automata , 2005, 38th Annual Simulation Symposium.

[5]  Deborah Estrin,et al.  Directed diffusion for wireless sensor networking , 2003, TNET.

[6]  Dirk Beyer,et al.  Designing for Disasters , 2004, FAST.

[7]  David B. Knoester,et al.  Evolution of robust data distribution among digital organisms , 2009, GECCO '09.

[8]  Andres J. Ramirez,et al.  Automatically generating adaptive logic to balance non-functional tradeoffs during reconfiguration , 2010, ICAC '10.

[9]  John Wilkes,et al.  Seneca: remote mirroring done write , 2003, USENIX Annual Technical Conference, General Track.

[10]  Lizhong Xu,et al.  A Self-Organization Algorithm Based on 1D Cellular Automata for Networking Monitoring , 2009, 2009 First International Conference on Information Science and Engineering.

[11]  Tommaso Toffoli,et al.  Cellular automata machines - a new environment for modeling , 1987, MIT Press series in scientific computation.

[12]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[13]  Roberto Montemanni,et al.  Design patterns from biology for distributed computing , 2006, TAAS.

[14]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[15]  Albert Y. Zomaya,et al.  Evolving Cellular Automata for Location Management in Mobile Computing Networks , 2003, IEEE Trans. Parallel Distributed Syst..

[16]  W. Banzhaf,et al.  1 Linear Genetic Programming , 2007 .

[17]  Jamie Payton,et al.  Simulation environment scenarios using cellular automata for wireless sensor network analysis , 2009, SpringSim '09.

[18]  David B. Knoester,et al.  Cooperative network construction using digital germlines , 2008, GECCO '08.

[19]  Wolfgang Banzhaf,et al.  Linear Genetic Programming (Genetic and Evolutionary Computation) , 2006 .

[20]  Lee Spector,et al.  Genetic Programming and Autoconstructive Evolution with the Push Programming Language , 2002, Genetic Programming and Evolvable Machines.

[21]  John von Neumann,et al.  Theory Of Self Reproducing Automata , 1967 .