Using SOAP and REST web services as communication protocol for distributed evolutionary computation

Designing heterogeneous distributed systems requires of the use of tools that facilitate the deployment and the interaction between platforms. In this paper we propose using Simple Object Access Protocol (SOAP) and REpresentational State Transfer (REST), two main approaches for creating applications based on distributed services, for distributed computation. Our aim is to demonstrate how they could be used to develop evolutionary computation systems on heterogeneous platforms, taking advantage of their ability to deal with heterogeneous infrastructures and environments, and giving support for parallel implementations with a high platform flexibility. Both approaches are different and present some advantages and disadvantages for interfacing to web services: SOAP is conceptually more difficult (has a steeper learning curve) and more ”heavy-weight” than REST, although it lacks of standards support for security. The results obtained on different experiments have shown that both SOAP and REST can be used as communication protocol for distributed evolutionary computation. Results obtained are comparable, however for large amounts of data (big messages), REST communications take longer than SOAP communications.

[1]  D. Ackley A connectionist machine for genetic hillclimbing , 1987 .

[2]  Zbigniew Michalewicz,et al.  Parameter control in evolutionary algorithms , 1999, IEEE Trans. Evol. Comput..

[3]  P. N. Suganthan,et al.  Differential Evolution Algorithm With Strategy Adaptation for Global Numerical Optimization , 2009, IEEE Transactions on Evolutionary Computation.

[4]  Maarten Keijzer,et al.  Evolving Objects: A General Purpose Evolutionary Computation Library , 2001, Artificial Evolution.

[5]  大島 正嗣,et al.  Simple Object Access Protocol と,その応用としてのソフトウェアの組み合わせについて (渡邉昭夫教授退任記念号) , 2001 .

[6]  Juan Julián Merelo Guervós,et al.  G-Prop: Global optimization of multilayer perceptrons using GAs , 2000, Neurocomputing.

[7]  Ivan Janciak,et al.  UK e-Science All Hands Meeting , 2009 .

[8]  Danius T. Michaelides,et al.  Shaping Ramps for Data-Intensive Research , 2010 .

[9]  Marc Parizeau,et al.  Genericity in Evolutionary Computation Software Tools: Principles and Case-study , 2006, Int. J. Artif. Intell. Tools.

[10]  Scott E. Fahlman,et al.  An empirical study of learning speed in back-propagation networks , 1988 .

[11]  Juan Julián Merelo Guervós,et al.  Evolving Multilayer Perceptrons , 2000, Neural Processing Letters.

[12]  Roy Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures"; Doctoral dissertation , 2000 .

[13]  Chulhyun Kim,et al.  Forecasting time series with genetic fuzzy predictor ensemble , 1997, IEEE Trans. Fuzzy Syst..

[14]  Arthur Tay,et al.  Design and implementation of a distributed evolutionary computing software , 2003, IEEE Trans. Syst. Man Cybern. Part C.

[15]  Juan Julián Merelo Guervós,et al.  Assessing speed-ups in commodity cloud storage services for distributed evolutionary algorithms , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[16]  A. Griewank Generalized descent for global optimization , 1981 .

[17]  Juan J. Merelo Fluid evolutionary algorithms , 2010, IEEE Congress on Evolutionary Computation.

[18]  Isaac Siwale ON GLOBAL OPTIMIZATION , 2015 .

[19]  Yuan Zhao,et al.  A distributed pool architecture for genetic algorithms , 2009, 2009 IEEE Congress on Evolutionary Computation.

[20]  Juan Julián Merelo Guervós,et al.  A Distributed Service Oriented Framework for Metaheuristics Using a Public Standard , 2010, NICSO.

[21]  Enrique Alba,et al.  Algorithm::Evolutionary, a flexible Perl module for evolutionary computation , 2010, Soft Comput..

[22]  Juan Julián Merelo Guervós,et al.  Determining the significance and relative importance of parameters of a simulated quenching algorithm using statistical tools , 2011, Applied Intelligence.

[23]  Reiko Tanese,et al.  Parallel Genetic Algorithms for a Hypercube , 1987, ICGA.

[24]  Juan Julián Merelo Guervós,et al.  Using free cloud storage services for distributed evolutionary algorithms , 2011, GECCO '11.

[25]  Matthew R. Pocock,et al.  Taverna: a tool for the composition and enactment of bioinformatics workflows , 2004, Bioinform..

[26]  Steve Vinoski Serendipitous Reuse , 2008, IEEE Internet Computing.

[27]  Seth D. Guikema,et al.  A derivation of the number of minima of the Griewank function , 2008, Appl. Math. Comput..

[28]  Alex S. Fukunaga,et al.  Distributed island-model genetic algorithms using heterogeneous parameter settings , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[29]  Sebastián Lozano,et al.  Metaheuristic optimization frameworks: a survey and benchmarking , 2011, Soft Computing.

[30]  A. E. Eiben,et al.  Comparing parameter tuning methods for evolutionary algorithms , 2009, 2009 IEEE Congress on Evolutionary Computation.

[31]  Mike P. Papazoglou,et al.  Service oriented architectures: approaches, technologies and research issues , 2007, The VLDB Journal.

[32]  Juan-Julián Merelo,et al.  A Perl primer for evolutionary algorithm practitioners , 2010, SEVO.

[33]  Lutz Prechelt,et al.  PROBEN 1 - a set of benchmarks and benchmarking rules for neural network training algorithms , 1994 .

[34]  El-Ghazali Talbi,et al.  ParadisEO: A Framework for the Reusable Design of Parallel and Distributed Metaheuristics , 2004, J. Heuristics.

[35]  Erick Cantú-Paz,et al.  Modeling Idealized Bounding Cases of Parallel Genetic Algorithms , 1996 .

[36]  Roy T. Fielding,et al.  Principled design of the modern Web architecture , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[37]  Wei Cai,et al.  The Limited Mutation Particle Swarm Optimizer , 2007, LSMS.

[38]  Nikolaus Hansen,et al.  Compilation of Results on the 2005 CEC Benchmark Function Set , 2005 .

[39]  Vasant Honavar,et al.  Optimization of Classifiers Using Genetic Algorithms , 2001 .

[40]  Juliana Freire,et al.  Provenance and scientific workflows: challenges and opportunities , 2008, SIGMOD Conference.

[41]  D. Gannon,et al.  Enabling Web Service extensions for scientific workflows , 2006, 2006 Workshop on Workflows in Support of Large-Scale Science.

[42]  D. Box,et al.  Simple object access protocol (SOAP) 1.1 , 2000 .

[43]  T.C. Fogarty,et al.  A Distributed Resource Evolutionary Algorithm Machine (DREAM) , 2000, Proceedings of the 2000 Congress on Evolutionary Computation. CEC00 (Cat. No.00TH8512).

[44]  Ilona Jagielska,et al.  An investigation into the application of neural networks, fuzzy logic, genetic algorithms, and rough sets to automated knowledge acquisition for classification problems , 1999, Neurocomputing.

[45]  John J. Grefenstette,et al.  A Parallel Genetic Algorithm , 1987, ICGA.

[46]  David Abramson,et al.  A PARALLEL GENETIC ALGORITHM FOR SOLVING THE SCHOOL TIMETABLING PROBLEM , 1992 .

[47]  Enrique Alba,et al.  Influence of the Migration Policy in Parallel Distributed GAs with Structured and Panmictic Populations , 2000, Applied Intelligence.

[48]  A. E. Eiben,et al.  Introduction to Evolutionary Computing , 2003, Natural Computing Series.

[49]  David P. Anderson,et al.  Exploiting non-dedicated resources for cloud computing , 2010, 2010 IEEE Network Operations and Management Symposium - NOMS 2010.

[50]  D. Fogel Evolutionary algorithms in theory and practice , 1997, Complex..

[51]  Robert Daigneau,et al.  Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services , 2011 .

[52]  Juan Julián Merelo Guervós,et al.  Implementation Matters: Programming Best Practices for Evolutionary Algorithms , 2011, IWANN.

[53]  Zbigniew Michalewicz,et al.  Parameter Control in Evolutionary Algorithms , 2007, Parameter Setting in Evolutionary Algorithms.

[54]  Jing J. Liang,et al.  Dynamic multi-swarm particle swarm optimizer , 2005, Proceedings 2005 IEEE Swarm Intelligence Symposium, 2005. SIS 2005..

[55]  A. E. Eiben,et al.  Beating the ‘world champion’ evolutionary algorithm via REVAC tuning , 2010, IEEE Congress on Evolutionary Computation.

[56]  Edward A. Lee,et al.  Scientific workflow management and the Kepler system , 2006, Concurr. Comput. Pract. Exp..

[57]  D. Box,et al.  Simple Object Access Protocol (SOAP) 1.1, W3C Note , 2000 .

[58]  Ben Paechter,et al.  A Framework for Distributed Evolutionary Algorithms , 2002, PPSN.

[59]  Ian T. Foster,et al.  Modeling and Managing State in Distributed Systems: The Role of OGSI and WSRF , 2005, Proceedings of the IEEE.

[60]  Gustavo Alonso,et al.  Web Services: Concepts, Architectures and Applications , 2009 .

[61]  Enrique Alba,et al.  Designing heterogeneous distributed GAs by efficiently self-adapting the migration period , 2011, Applied Intelligence.

[62]  Runhe Huang,et al.  Implementing the Genetic Algorithm on Transputer Based Parallel Processing Systems , 1990, PPSN.

[63]  Pedro A. Castillo,et al.  Jeo: a framework for evolving objects in java , 2001 .

[64]  Marc Parizeau,et al.  Analysis of a master-slave architecture for distributed evolutionary computations , 2006, IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics).

[65]  Elizabeth Goodman,et al.  An Introduction to GALOPPS-the "Genetic Algorithm Optimized for Portability and Parallelism" System , 1994 .

[66]  Marc Parizeau,et al.  Distributed Beagle: An Environment For Parallel And Distributed Evolutionary Computations , 2003 .

[67]  Ignacio Rojas,et al.  Statistical analysis of the parameters of a neuro-genetic algorithm , 2002, IEEE Trans. Neural Networks.

[68]  A. E. Eiben,et al.  Using Entropy for Parameter Analysis of Evolutionary Algorithms , 2010, Experimental Methods for the Analysis of Optimization Algorithms.

[69]  Reinhard Männer,et al.  Implementation of Standard Genetic Algorithm on MIMD Machines , 1994, PPSN.

[70]  Pedro A. Castillo,et al.  Distributed Evolutionary Computation Using SOAP and REST Web Services , 2012 .

[71]  Erick Cantú-Paz,et al.  Topologies, Migration Rates, and Multi-Population Parallel Genetic Algorithms , 1999, GECCO.

[72]  Ali Arsanjani,et al.  SOMA: A method for developing service-oriented solutions , 2008, IBM Syst. J..

[73]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[74]  Rory A. Fisher,et al.  THE COMPARISON OF SAMPLES WITH POSSIBLY UNEQUAL VARIANCES , 1939 .

[75]  Jing J. Liang,et al.  Problem Definitions and Evaluation Criteria for the CEC 2005 Special Session on Real-Parameter Optimization , 2005 .

[76]  Juan Julián Merelo Guervós,et al.  Asynchronous distributed genetic algorithms with Javascript and JSON , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[77]  Aimo A. Törn,et al.  Global Optimization , 1999, Science.

[78]  Alessandro Bollini,et al.  Distributed and Persistent Evolutionary Algorithms: A Design Pattern , 1999, EuroGP.

[79]  Erik T. Ray Learning XML - creating self-describing data , 2001 .

[80]  Rory A. Fisher,et al.  Theory of Statistical Estimation , 1925, Mathematical Proceedings of the Cambridge Philosophical Society.

[81]  Jonatan Gómez,et al.  Maintaining genetic diversity in fine-grained parallel genetic algorithms by combining cellular automata, Cambrian explosions and massive extinctions , 2010, IEEE Congress on Evolutionary Computation.

[82]  Erick Cantú-Paz,et al.  Efficient and Accurate Parallel Genetic Algorithms , 2000, Genetic Algorithms and Evolutionary Computation.

[83]  Ajith Abraham,et al.  A Bacterial Evolutionary Algorithm for automatic data clustering , 2009, 2009 IEEE Congress on Evolutionary Computation.

[84]  Juan Julián Merelo Guervós,et al.  Cloud-based Evolutionary Parallel Computation Using Low Cost Storage Services , 2011, 2011 First International Symposium on Network Cloud Computing and Applications.