Abstract
Scientific Computing (SC) is a multidisciplinary field that uses the computational approach to understand and study complex artificial and natural systems belonging many scientific sectors. Optimization via Simulation (OvS) is a fast developing area in SC field. OvS combines classical optimization algorithms and stochastic simulations to face problems with unknown and/or dynamic data distribution. We present Heterogeneous Simulation Optimization (HSO), an architecture that enable to distribute the OvS process on an Heterogeneous Computing systems. HSO is designed according to two levels of heterogeneity: hardware heterogeneity, that is the ability to exploit the computational power of several general-purpose CPUs and/or hardware accelerators such as Graphics Processing Units (GPUs); programming languages heterogeneity, that is the capability to develop the OvS methodology combining different programming languages such as C++, C, Clojure, Erlang, Go, Haskel, Java, Node.js, Objective-C, PHP, Python, Scala and many others. The proposed HSO architecture has been fully developed and is available on a public GitHub repository. We have validated and tested the scalability of HSO developing two different use cases that show both the levels of heterogeneity, and showing how to exploit Optimal Computing Budget Allocation (OCBA) algorithm and a Genetic Algorithm in a OvS process.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Heterogeneous Scalable Multi-Languages Optimization via Simulation GitHub repository, https://github.com/isislab-unisa/hso.
- 2.
ZeroMQ distributed messaging library, http://zeromo a70q.org/.
- 3.
High Performance Dataflow Computing Agent-Based Simulator Wrapper, https://github.com/spagnuolocarmine/swiftlangabm.
- 4.
HSO Zombie use case, https://github.com/isislab-unisa/hso/tree/master/example/Zombie.
- 5.
Zombie: simulation Netlogo, https://github.com/isislab-unisa/hso/tree/master/example/Zombie/Simulation_Netlogo.
- 6.
Distributed Evolutionary Algorithms in Python, https://github.com/deap.
References
Abar, S., Theodoropoulos, G., Lemarinier, P., O’Hare, G.: Agent based modelling and simulation tools: a review of the state-of-art software. Comput. Sci. Rev. 24, 13–33 (2017)
Balan, G., Cioffi-Revilla, C., Luke, S., Panait, L., Paus, S.: MASON: a Java multi-agent simulation library. In: Proceedings of the Agent 2003 Conference (2003)
Bianchi, L., Dorigo, M., Gambardella, L., Gutjahr, W.: A survey on metaheuristics for stochastic combinatorial optimization. Nat. Comput. 8(2), 239–287 (2009)
Carillo, M., Cordasco, G., Serrapica, F., Scarano, V., Spagnuolo, C., Szufel, P.: SOF: zero configuration simulation optimization framework on the cloud. In: 2016 24th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing (PDP), pp. 341–344. IEEE (2016)
Carson, Y., Maria, A.: Simulation optimization: methods and applications. In: Proceedings of the 29th Conference on Winter Simulation, WSC 1997, pp. 118–126. IEEE Computer Society, Washington, DC (1997)
Dakota. https://dakota.sandia.gov. Accessed 2017
David, E., Jon, K.: Networks, Crowds, and Markets: Reasoning About a Highly Connected World. Cambridge University Press, New York (2010)
Donaldson, V., Berman, F., Paturi, R.: Program speedup in a heterogeneous computing network. J. Parallel Distrib. Comput. 21(3), 316–322 (1994)
A Java-based evolutionary computation research system. https://cs.gmu.edu/eclab/projects/ecj/. Accessed 2017
Epstein, J.: Generative Social Science: Studies in Agent-Based Computational Modeling (Princeton Studies in Complexity). Princeton University Press, Princeton (2007)
Fu, M. (ed.): Handbook of Simulation Optimization. Springer, New York (2014). https://doi.org/10.1007/978-1-4939-1384-8
Gabriel, E., et al.: Open MPI: goals, concept, and design of a next generation MPI implementation. In: Kranzlmüller, D., Kacsuk, P., Dongarra, J. (eds.) EuroPVM/MPI 2004. LNCS, vol. 3241, pp. 97–104. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30218-6_19
Gao, S., Xiao, H., Zhou, E., Chen, W.: Optimal computing budget allocation with input uncertainty. In: Proceedings of the 2016 Winter Simulation Conference, WSC 2016, pp. 839–846. IEEE Press, Piscataway (2016)
Goux, J., Kulkarni, K., Linderoth, J., Yoder, M.: An enabling framework for master-worker applications on the computational grid. In: Proceedings the Ninth International Symposium on High-Performance Distributed Computing, pp. 43–50 (2000)
Gulyás, L., Szabó, A., Legéndi, R., Máhr T., Bocsi, R., Kampis, G.: Tools for large scale (distributed) agent-based computational experiments. In: Proceedings of CSSSA (2011)
Heterogeneous scalable multi-languages optimization via simulation GitHUb repository. https://github.com/isislab-unisa/hso. Accessed 2017
Kempe, D., Kleinberg, J., Tardos, E.: Maximizing the spread of influence through a social network. In: Proceedings of the Ninth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD 2003, pp. 137–146. ACM, New York (2003)
Leskovec, J., Adamic, L.A., Huberman, B.A.: The dynamics of viral marketing. ACM Trans. Web 1(1) (2007)
Leskovec, J., Krevl, A.: SNAP datasets: stanford large network dataset collection, June 2014. http://snap.stanford.edu/data
Nickolls, J., Buck, I., Garland, M., Skadron, K.: Scalable parallel programming with CUDA. Queue 6(2), 40–53 (2008)
OptTek metaheuristic optimization. http://www.opttek.com. Accessed 2017
Ozik, J., Collier, N.T., Wozniak, J., Spagnuolo, C.: From desktop to large-scale model exploration with swift/T. In: Proceedings of the 2016 Winter Simulation Conference, WSC 2016, pp. 206–220. IEEE Press, Piscataway (2016)
ParadisEO. http://paradiseo.gforge.inria.fr. Accessed 2017
Reuillon, R., Leclaire, M., Rey-Coyrehourcq, S.: OpenMOLE, a workflow engine specifically tailored for the distributed exploration of simulation models. Futur. Gener. Comput. Syst. 29(8), 1981–1990 (2013)
Richmond, P.: Flame GPU technical report and user guide. Department of Computer Science Technical report CS-11-03 (2011)
Tisue, S., Wilensky, U.: NetLogo: a simple environment for modeling complexity. In: International Conference on Complex Systems, pp. 16–21 (2004)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Cordasco, G., D’Auria, M., Spagnuolo, C., Scarano, V. (2018). Heterogeneous Scalable Multi-languages Optimization via Simulation. In: Li, L., Hasegawa, K., Tanaka, S. (eds) Methods and Applications for Modeling and Simulation of Complex Systems. AsiaSim 2018. Communications in Computer and Information Science, vol 946. Springer, Singapore. https://doi.org/10.1007/978-981-13-2853-4_13
Download citation
DOI: https://doi.org/10.1007/978-981-13-2853-4_13
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-2852-7
Online ISBN: 978-981-13-2853-4
eBook Packages: Computer ScienceComputer Science (R0)