Parallel Patterns for Agent-based Evolutionary Computing
DOI:
https://doi.org/10.7494/csci.2016.17.1.83Keywords:
agent-based computing, functional programming, parallel patternAbstract
Computing applications such as metaheuristics-based optimization can greatly benefit from multi-core architectures available on modern supercomputers. In this paper, we describe an easy and efficient way to implement certain population-based algorithms (in the discussed case, multi-agent computing system) on such runtime environments. Our solution is based on an Erlang software library which implements dedicated parallel patterns. We provide technological details on our approach and discuss experimental results.Downloads
References
Specification of Java Remote Method Invocation. https://jcp.org/en/jsr/detail?id=368.
Specification of the Java Message Service. http://docs.oracle.com/javase/1.5.0/docs/guide/rmi/spec/rmiTOC.html.
Bellifemine F., Poggi A., Rimassa G.: JADE – A FIPA-compliant agent framework. In: Proceedings of PAAM, vol. 99, pp. 97–108, London, 1999.
Bozó I., Főrdős V., Horpácsi D., Horváth Z., Kozsik T., Kőszegi J., Tóth M.: Refactorings to Enable Parallelization. In: Trends in Functional Programming, pp. 104–121, Springer, Berlin, 2015.
Bozó I., Fordós V., Horvath Z., Tóth M., Horpácsi D., Kozsik T., Köszegi J., Barwell A., Brown C., Hammond K.: Discovering parallel pattern candidates in erlang. In: Proceedings of the Thirteenth ACM SIGPLAN workshop on Erlang, pp. 13–23, ACM, 2014.
Braubach L., Lamersdorf W., Pokahr A.: Jadex: Implementing a BDI-infrastructure for JADE agents. Exp, vol. 3(3), pp. 76–85, 2003.
Brown C., Danelutto M., Hammond K., Kilpatrick P., Elliott A.: Cost-directed refactoring for parallel Erlang programs. International Journal of Parallel Programming, vol. 42(4), pp. 564–582, 2014.
Byrski A., Dreżewski R., Siwik L., Kisiel-Dorohinicki M.: Evolutionary Multi-Agent Systems. The Knowledge Engineering Review, vol. 30(02), pp. 171–186, 2012.
Byrski A., Schaefer R., Smołka M., Cotta C.: Asymptotic guarantee of success for multi-agent memetic systems. Bulletin of the Polish Academy of Sciences: Technical Sciences, vol. 61(1), pp. 257–278, 2013.
Cantú-Paz E.: A Survey of Parallel Genetic Algorithms. Calculateurs Paralleles, Reseaux et Systems Repartis, vol. 10(2), pp. 141–171, 1998.
Chen S.H., Kambayashi Y., Sato H.: Multi-Agent Applications with Evolutionary Computation and Biologically Inspired Technologies. IGI Global, Hershey, Pennsylvania, 2011.
Gallardo J.E., Cotta C., Fernández A.J.: Finding low autocorrelation binary sequences with memetic algorithms. Applied Soft Computing, vol. 9(4), pp. 1252–1262, 2009.
Gamma E., Helm R., Johnson R., Vlissides J.: Design patterns: elements of reusable object-oriented software. Pearson Education, Harlow, UK, 1994.
Gutknecht O., Ferber J.: The madkit agent platform architecture. In: Infrastructure for Agents, Multi-Agent Systems, and Scalable Multi-Agent Systems, pp. 48–55, Springer, 2001.
Hammond K., Aldinucci M., Brown C., Cesarini F., Danelutto M., González-Vélez H., Kilpatrick P., Keller R., Rossbory M., Shainer G.: The paraphrase project: Parallel patterns for adaptive heterogeneous multicore systems. In: Formal Methods for Components and Objects, pp. 218–236, Springer, 2013.
Krzywicki D., Byrski A., Kisiel-Dorohinicki M., et al.: Computing agents for decision support systems. Future Generation Computer Systems, vol. 37, pp. 390–400, 2014.
Krzywicki D., Stypka J., Anielski P., Turek W., Byrski A., Kisiel-Dorohinicki M., et al.: Generation-free Agent-based Evolutionary Computing. Procedia Computer Science, vol. 29, pp. 1068–1077, 2014.
Luke S., Cioffi-Revilla C., Panait L., Sullivan K., Balan G.: Mason: A multiagent simulation environment. Simulation, vol. 81(7), pp. 517–527, 2005.
North M.J., Collier N.T., Ozik J., Tatara E.R., Macal C.M., Bragen M., Sydelko P.: Complex adaptive systems modeling with repast simphony. Complex Adaptive Systems Modeling, vol. 1(1), pp. 1–26, 2013.
Pidd M., Cassel R.A.: Three phase simulation in Java. In: Proceedings of the 30th conference on Winter simulation, pp. 367–372, IEEE Computer Society Press, 1998.
Pokahr A., Braubach L., Jander K.: The jadex project: Programming model. In: Multiagent Systems and Applications, pp. 21–53, Springer, Berlin, 2013.
Russell S., Norvig P., Intelligence A.: Artificial Intelligence: A modern approach. Prentice-Hall, Egnlewood Cliffs, 1995.
Sarker R.A., Ray T.: Agent-Based Evolutionary Search, vol. 5. Springer Science & Business Media, 2010.
Uhruski P., Grochowski M., Schaefer R.: Multi-agent computing system in a heterogeneous network. In: Parallel Computing in Electrical Engineering, 2002. PARELEC’02. Proceedings. International Conference on, pp. 233–238, IEEE, 2002.