Abstract
The adjustment of the previously developed algebra-algorithmic tools towards the automated design and generation of programs that use neuroevolutionary algorithms is proposed. Neuroevolution is a set of machine learning techniques that apply evolutionary algorithms to facilitate the solving of complex tasks, such as games, robotics, and simulation of natural processes. The developed program design toolkit provides automated construction of high-level algorithm specifications represented in Glushkov’s system of algorithmic algebra and synthesis of corresponding programs based on implementation templates in a target programming language. The adjustment of the toolkit for designing neuroevolutionary algorithms consists in adding the descriptions and software implementations of the relevant elementary operators and predicates to a database of the toolkit. The use of the toolkit is illustrated by an example of designing and generating a program for the single-pole balancing problem, which applies the neuroevolutionary algorithm of the NEAT-Python library. The results of the experiment consisting in the execution of the program generated with the algebra-algorithmic toolkit are given.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Subbotin, S.O., Oliinyk, A.O., Oliinyk, O.O.: Non-iterative, evolutionary and multi-agent methods for synthesis of fuzzy and neural network models. ZNTU, Zaporizhzhia (2009). (in Ukrainian)
Stanley, K.O., Clune, J., Lehman, J., Miikkulainen, R.: Designing neural networks through neuroevolution. Nat. Mach. Intell. 1, 24–35 (2019). https://doi.org/10.1038/s42256-018-0006-z
Stanley, K.O.: Neuroevolution: a different kind of deep learning. https://www.oreilly.com/radar/neuroevolution-a-different-kind-of-deep-learning. Accessed 05 May 2023
Doroshenko, A.Y., Achour, I.Z., Yatsenko, O.A.: Parameter-driven generation of evaluation program for a neuroevolution algorithm on a binary multiplexer example. Radio Electron. Comput. Sci. Control (1), 80–88 (2023). https://doi.org/10.15588/1607-3274-2023-1-8
Stanley, K.O., Miikkulainen, R.: Evolving neural networks through augmenting topologies. Evol. Comput. 10(2), 99–127 (2002). https://doi.org/10.1162/106365602320169811
Omelianenko, I.: Hands-on Neuroevolution with Python. Packt, Birmingham (2019)
Doroshenko, A., Yatsenko, O.: Formal and Adaptive Methods for Automation of Parallel Programs Construction: Emerging Research and Opportunities. IGI Global, Hershey (2021). https://doi.org/10.4018/978-1-5225-9384-3
Andon, P.I., Doroshenko, A.Yu., Zhereb, K.A., Yatsenko, O.A.: Algebra-algorithmic models and methods of parallel programming. Akademperiodyka, Kyiv (2018). https://doi.org/10.15407/akademperiodyka.367.192
NEAT-Python. https://github.com/CodeReclaimers/neat-python. Accessed 05 May 2023
Chang, O., Kwiatkowski, R., Chen, S., Lipson, H.: Agent embeddings: a latent representation for pole-balancing networks. In: AAMAS 2019. International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC, pp. 656–664 (2019). https://doi.org/10.48550/arXiv.1811.04516
Lawrence, W.M.: Solving XOR and Pole-balancing problems using a multi-population NEAT. A thesis presented for the degree of Master of Philosophy. De Montfort University, Leicester (2020). https://dora.dmu.ac.uk/bitstream/handle/2086/20731/William-Lawrence.pdf?sequence=1
SharpNEAT. Evolution of Neural Networks. https://sharpneat.sourceforge.io. Accessed 05 May 2023
PyTorch-NEAT. https://github.com/uber-research/PyTorch-NEAT. Accessed 05 May 2023
MultiNEAT: Portable NeuroEvolution Library. https://github.com/peter-ch/MultiNEAT. Accessed 05 May 2023
NEAT Java (JNEAT). https://nn.cs.utexas.edu/soft-view.php?SoftID=5. Accessed 05 May 2023
Doroshenko, A., Shymkovych, V., Yatsenko, O., Mamedov, T.: Automated software design for FPGAs on an example of developing a genetic algorithm. In: Burov, O., Ignatenko, O., Kharchenko, V., Kobets, V., et al. (eds.) ICTERI 2021. CCIS, vol. 1635, pp. 74–85. Springer, Cham (2021)
Doroshenko, A., Zhereb, K., Yatsenko, O.: Using algebra-algorithmic and term rewriting tools for developing efficient parallel programs. In: Ermolayev, V., Mayr, H.C., Nikitchenko, M., Spivakovsky, A. (eds.) ICTERI 2013. CCIS, vol. 1000, pp. 38–46. Springer, Cham (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Doroshenko, A., Achour, I., Yatsenko, O. (2023). Automated Design of a Neuroevolution Program Using Algebra-Algorithmic Tools. In: Antoniou, G., et al. Information and Communication Technologies in Education, Research, and Industrial Applications. ICTERI 2023. Communications in Computer and Information Science, vol 1980. Springer, Cham. https://doi.org/10.1007/978-3-031-48325-7_2
Download citation
DOI: https://doi.org/10.1007/978-3-031-48325-7_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-48324-0
Online ISBN: 978-3-031-48325-7
eBook Packages: Computer ScienceComputer Science (R0)