Istrazivanja i projektovanja za privreduJournal of Applied Engineering Science

DEVELOPING SELF-MODIFYING CODE MODEL


DOI: 10.5937/jaes14-10931
This is an open access article distributed under the CC BY-NC-ND 4.0 terms and conditions. 
Creative Commons License

Volume 14 article 376 pages: 239-247

Goran Djuric
University of Belgrade, Faculty of mechanical engineering, Belgrade, Serbia

Caslav Mitrovic
University of Belgrade, Faculty of mechanical engineering, Belgrade, Serbia

Goran Vorotovic
University of Belgrade, Faculty of mechanical engineering, Belgrade, Serbia

Ivan Blagojevic
University of Belgrade, Faculty of mechanical engineering, Belgrade, Serbia

Milos Vasic
University of Belgrade, Faculty of mechanical engineering, Belgrade, Serbia

This paper presents the technology of constructing and linearization of binary program utilized for program generation, analysis and transformation into a self-modifying code. An example model of the self-modifying software system and its experimental application in vehicle control have been presented in this paper. The module responsible for vehicle control comprising two subsystems has been created within the simulation software. The first subsystem has emerged through the classical software process developed by a human-programmer. The second subsystem has been created as a result of a separate piece of software substituting the part of a programmer in a software process part. The result of this approach is software creation in conjunction with natural and Artificial Intelligence in addition to experimental integration into the vehicle control system.

View article

Dewdney A.K.: Recreational Mathematics–Core Wars (May 1984). http://www.koth.org/.

Nikos Mavragiannopoulos, Nessim Kisserli, Bart Preneel: A taxonomy of self-modifying code for obfuscation, Computers & Security 30 (2011)

C. Enrique Ortiz: On Self-Modifying Code and the Space Shuttle OS http://weblog.cenriqueortiz.com/computing/2007/08/18/on-self-modifying-code-and-the-space-shuttle-os/

Koza john R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection. Cambridge, MA: The MIT Press

ISO/IEC 12207, http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=43447

Sommerville I: Software Engineering, 7-th Edition. Addison-Wesley, Harlow, England, 2005. http://www.software-engin.com

Booch G., Jacobson I., Rumbaugh J., “UML User Guide”, Addison-Wesley (1998)

B. Wymann, E. Espie, C. Guionneau, C. Dimitrakakis, R. Coulom, A. Sumner. TORCS: The Open Racing Car Simulator, v1.3.5, 2013

D.Loiacono, J.Togelius, P.L.Lanzi: Car Racing Competition WCCI2008, Software Manual, Apr.2008

B.Wymann, http://www.berniw.org/tutorials/robot/

E.Onieva, D.A.Pelta, J.Alonso, V.Milanes, J.Perez: A Modular Parametric Architecture for the TORCS Racing Engine, 2009 IEEE Symposium on Computational Intelligence and Games

Tae Seong Kim, Joong Chae Na, Kyung Joong Kim: Optimization of an Autonomous Car Controller using a Self-Adaptive Evolutionary Strategy, International Journal of Advanced Robotic Systems 2012, Vol.9.73

Yehonatan Shichel, Moshe Sipper:GPRARS: evolving controllers for the Robot

Auto Racing Simulator. Mimetic Computing 3(2): 89-99 (2011)

Marc Ebner and Thorsten Tiede: Evolving Driving Controllers using Genetic Programming. in CIG’09 : Proceedings of the 5th International Conference on Computational Intelligence and Games, pages 279-286, Piscataway, NJ, USA, 2009, IEEE Press

Alexandru Becheru, Catalin Stoean: Optimization of Gear Changing using Simulated Annealing, Annals of the University of Craiova, Vol 39, No 2 (2012)

Extensible Markup Language (XML), https://www.w3.org/XML/