Abstract
A peer-to-peer (P2P) network is a complex system whose elements (peer nodes, or simply peers) cooperate to implement scalable distributed services. From a general point of view, the activities of a P2P system are consequences of external inputs coming from the environment, and of the internal feedbacks among nodes. The reaction of a peer to direct or indirect inputs from the environment is dictated by its functional structure, which is usually defined in terms of static rules (protocols) shared among peers. The introduction of artificial evolution mechanisms may improve the efficiency of P2P networks, with respect to resource consumption, while preserving high performance in response to the environmental needs. In this paper, we propose the distributed remodeling framework (DRF), a general approach for the design of efficient environment-driven peer-to-peer networks. As a case study, we consider an ultra-large-scale storage and computing system whose nodes perform lookups for resources provided by other nodes, to cope with task execution requests that cannot be fulfilled locally. Thanks to the DRF, workload modifications trigger reconfigurations at the level of single peers, from which global system adaptation emerges without centralized control.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
D. Schoder, K. Fischbach, in Peer-to-Peer Paradigm, ed. Proceedings of the 37th Annual Hawaii IEEE International Conference on System Sciences (HICSS’04) (Big Island, Hawaii, USA, 2004)
B. Paechter, T. Back, M. Schoenauer, M. Sebag, A. E. Eiben, J. J. Merelo, T.C. Fogarty, in A Distributed Resource Evolutionary Algorithm Machine (DREAM), ed. Proceedings of the IEEE Congress on Evolutionary Computation (CEC 2000) (San Diego, CA, USA, 2000), pp. 951–958
M. Amoretti, a survey of peer-to-peer overlay schemes: effectiveness, efficiency and security. Recent Pat. Comput. Sci. 2(3), 195–213 (2009)
J. M. Ottino, Engineering complex systems. Nature 427, 399 (2004)
M. Mitchell, Complex systems: network thinking. Artif. Intell. 170(18), 1194–1212 (2006)
S. Camazine, J.-L. Deneubourg, N.R. Franks, J. Sneyd, G. Theraulaz, E. Bonabeau, Self-Organization in Biological Systems. (Princeton University Press, Princeton, 2001)
F. Heylighen, in Self-Organization, Emergence and the Architecture of Complexity, ed. Proceedings of the 1st European Conference on System Science (AFCET, Paris, 1989), pp. 23–32
F. Heylighen, in Principles of Systems and Cybernetics: An Evolutionary Perspective, ed. Proceedings of the Cybernetics and Systems (World Science, 1992), pp. 3–10
M. Baranger, Chaos, Complexity and Entropy: A Physics Talk for Non-Physicists, 2002, http://necsi.org/projects/baranger/cce.pdf
Y. Bar-Yam, Dynamics of Complex Systems, ed. (Addison-Wesley, 1997)
F. Heylighen, in The Science of Self-organization and Adaptivity, Knowledge Management, Organizational Intelligence and Learning, and Complexity, ed. by D. Kiel The Encyclopedia of Life Support Systems (EOLSS) (Eolss Publishers, 2001)
L. Onana Alima, S. El-Ansary S, P. Brand, S. Haridi, in DKS(N,k,f): A Family of Low Communication, Scalable and Fault-Tolerant Infrastructures for p2p Communications, ed. Proceedings of the 3rd IEEE/ACM Inter Symposium on Cluster Computing and the Grid (CCGRID ’03), (Tokyo, Japan, 2003)
I. Stoica, R. Morris, D. Liben-Nowell, D.R. Karger, M.F. Kaashoek, F. Dabek, H. Balakrishnan, Chord: a scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans Netw. 11(1), 17–32 (2003)
L. Steels, Modeling the cultural evolution of language. Phys. Life. Rev. 8, 339–356 (2011)
M. Sipper, E. Sanchez, D. Mange, M. Tomassini, A. Perez-Uribe, A. Stauffer, A phylogenetic, ontogenetic, and epigenetic view of bio-inspired hardware systems. IEEE Trans. Evol. Comput. 1(1), 83–97 (1997)
A. Rowstron, P. Druschel, in Pastry: Scalable, Decentralized Object Location and Routing for Large-Scale Peer-to-Peer Systems, ed. Proceedings of the 3rd IFIP/ACM Int’l Conference on Middleware (ACM, Heildelberg, Germany, 2001), pp. 329–350
E. Kalyvianki, I. Pratt, in Building Adaptive Peer-to-Peer Systems, ed. Proceedings of the 4th IEEE Int’l Conference on Peer-to-Peer Computing (P2P’04) (Zurich, Switzerland, 2004), pp. 268–269
J. Holland, Adaptation in Natural and Artificial Systems. (The MIT Press, Cambridge, 1992)
R. Poli, W.B. Langdon, N.F. McPhee, in A Field Guide to Genetic Programming (Lulu Enterprises, 2008)
A. Engelbrecht, Computational Intelligence: An Introduction, 2nd edn. (Wiley, Hoboken, 2007)
T. Hu, J.L. Payne, W. Banzhaf, J.H. Moore, Evolutionary dynamics on multiple scales: a quantitative analysis of the interplay between genotype, phenotype, and fitness in linear genetic programming. Genet. Program. Evol. Mach. 13(3), 305–337 (2012)
A. E. Eiben, in Evolutionary Computing and Autonomic Computing: Shared Problems, Shared Solutions? ed. Self-Star Properties in Complex Information Systems, LNCS No. 3460 (Springer, 2005), pp. 36–48
W. Wickramasinghe, M. van Steen, A. E. Eiben, in Peer-to-Peer Evolutionary Algorithms with Adaptive Autonomous Selection. ed. Proceedings 9th Annual Conference on Genetic and Evolutionary Computation (GECCO 2007) (ACM, 2007), pp. 1460–1467
M. Jelasity, M. Preuβ, M. Van Steen, B. Paechter, in Maintaining Connectivity in a Scalable and Robust Distributed Environment, ed. Proceedings of the 2nd IEEE/ACM Int’l Symposium on Cluster Computing and the Grid (Berlin, Germany, May 2002), pp. 389–394
D. Hales, in From Selfish Nodes to Cooperative Networks-Emergent Link-Based Incentives in Peer-to-Peer Networks, ed. Proceedings of the 4th IEEE Int’l Conference on Peer-to-Peer Computing (P2P’04) (Zurich, Switzerland, 2004), pp. 151–158
D. Devescovi, E. Di Nitto, D. Dubois, R. Mirandola, in Self-Organization Algorithms for Autonomic Systems in the SelfLet Approach, ed. Proceedings of the 1st International Conference on Autonomic Computing and Communication Systems (Rome, Italy, 2007)
G. Tyson, P. Grace, A. Mauthe, S. Kaune, in The Survival of the Fittest: An Evolutionary Approach to Deploying Adaptive Functionality in Peer-to-Peer Systems, ed. Proceedings of the 7th workshop on Reflective and adaptive middleware (ACM, Leuven, Belgium, 2008), pp. 23–28
T. Nakano, T. Suda, Self-organizing network services with evolutionary adaptation. IEEE Trans. Neural Netw. 16(5), 1269–1278 (2005)
WUALA. http://www.wuala.com
SopCast. http://www.sopcast.com
P.T. Eugster, R. Guerraoui, A.-M. Kermarrec, L. Massoulie, From epidemics to distributed computing. IEEE Comput. 37(5), 60–67 (2004)
E. Ahi, M. Caglar, O. Ozkasap, in Stepwise fair-share buffering underneath bio-inspired P2P data dissemination, ed. Proceedings of the 6th IEEE International Symposium on Parallel and Distributed Computing (ISPDC’07) (Hagenberg, Austria, 2007), pp. 177–184
The Gnutella Protocol Specification 0.4. http://rfc-gnutella.sourceforge.net/developer/stable/index.html
J. L. Laredo, A. E. Eiben, M. Steen, J. J. Merelo, EvAg: a scalable peer-to-peer evolutionary algorithm. Genet. Program. Evol. Mach. Arch. 11(2), 227–246
M. Amoretti, M. Agosti, F. Zanichelli, in DEUS: a Discrete Event Universal Simulator, ed. Proceedings of the 2nd ICST/ACM International Conference on Simulation Tools and Techniques (SIMUTools 2009) (ICST, Roma, Italy, 2009)
A.-L. Barabasi, R. Albert, Emergence of scaling in random networks. Science. 286(5439):509–512 (1999)
Acknowledgments
The author would like to thank prof. Stefano Cagnoni for the interesting and useful discussions, and for his suggestions for improving the quality of this research work.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Amoretti, M. Introducing artificial evolution into peer-to-peer networks with the distributed remodeling framework. Genet Program Evolvable Mach 14, 127–153 (2013). https://doi.org/10.1007/s10710-013-9182-0
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10710-013-9182-0