ABSTRACT
Approaches in the area of Search Based Software Engineering (SBSE) have seen Genetic Programming (GP) algorithms applied to the optimisation of software. While the potential of GP for this task has been demonstrated, the complexity of real-world software code bases poses a scalability problem for its serious application. To address this scalability problem, we inspect a form of GP which incorporates a mechanism to focus operators to relevant locations within a program code base. When creating offspring individuals, we introduce operator node selection bias by allocating values to nodes within an individual. Offspring values are inherited and updated when a difference in behaviour between offspring and parent is found. We argue that this approach may scale to find optimal solutions in more complex code bases under further development.
- P. Angeline. Two self-adaptive crossover operations for genetic programming. 1995.Google Scholar
- W. Banzhaf and J. Miller. The challenge of complexity. Frontiers of Evolutionary Computation, pages 243--260, 2004.Google ScholarCross Ref
- E. de Jong, R. Watson, and D. Thierens. On the complexity of hierarchical problem solving. In Proceedings of the 2005 conference on Genetic and evolutionary computation, pages 1201--1208. ACM, 2005. Google ScholarDigital Library
- M. Kuperberg, M. Krogmann, and R. Reussner. ByCounter: Portable Runtime Counting of Bytecode Instructions and Method Invocations. In Proceedings of the 3rd International Workshop on Bytecode Semantics, Verification, Analysis and Transformation , Budapest, Hungary, 5th April 2008 (ETAPS 2008, 11th European Joint Conferences on Theory and Practice of Software), 2008.Google Scholar
- W. B. Langdon and M. Harman. Genetically improving 50000 lines of C++ Research Note RN/12/09, Department of Computer Science, University College London, Gower Street, London WC1E 6BT, UK, 19 Sept. 2012.Google Scholar
- The Eclipse Foundation. Java development tools. http://www.eclipse.org/jdt/, Nov. 2012.Google Scholar
- W. Weimer, S. Forrest, C. Le Goues, and T. Nguyen. Automatic program repair with evolutionary computation. Communications of the ACM, 53(5):109--116, 2010. Google ScholarDigital Library
- D. White, A. Arcuri, and J. Clark. Evolutionary improvement of programs. Evolutionary Computation, IEEE Transactions on, (99):1--24, 2011. Google ScholarDigital Library
- Self-focusing genetic programming for software optimisation
Recommendations
Self-tuning geometric semantic Genetic Programming
The process of tuning the parameters that characterize evolutionary algorithms is difficult and can be time consuming. This paper presents a self-tuning algorithm for dynamically updating the crossover and mutation probabilities during a run of genetic ...
Neural network crossover in genetic algorithms using genetic programming
AbstractThe use of genetic algorithms (GAs) to evolve neural network (NN) weights has risen in popularity in recent years, particularly when used together with gradient descent as a mutation operator. However, crossover operators are often omitted from ...
An Efficient Structural Diversity Technique for Genetic Programming
GECCO '15: Proceedings of the 2015 Annual Conference on Genetic and Evolutionary ComputationGenetic diversity plays an important role in avoiding premature convergence, which is a phenomenon that stifles the search effectiveness of evolutionary algorithms. However, approaches that avoid premature convergence by maintaining genetic diversity ...
Comments