Computer arithmetic: algorithms and hardware designs
Computer arithmetic: algorithms and hardware designs
Microprocessor Architectures: From VLIW to Tta
Microprocessor Architectures: From VLIW to Tta
Principles in the Evolutionary Design of Digital Circuits—Part I
Genetic Programming and Evolvable Machines
Proceedings of the European Conference on Genetic Programming
Neutrality and the Evolvability of Boolean Function Landscape
EuroGP '01 Proceedings of the 4th European Conference on Genetic Programming
Embedded cartesian genetic programming and the lawnmower and hierarchical-if-and-only-if problems
Proceedings of the 8th annual conference on Genetic and evolutionary computation
Optimising variability tolerant standard cell libraries
CEC'09 Proceedings of the Eleventh conference on Congress on Evolutionary Computation
MOVE processors that self-replicate and differentiate
BioADIT'06 Proceedings of the Second international conference on Biologically Inspired Approaches to Advanced Information Technology
The Automatic Acquisition, Evolution and Reuse of Modules in Cartesian Genetic Programming
IEEE Transactions on Evolutionary Computation
GECCO 2011 tutorial: cartesian genetic programming
Proceedings of the 13th annual conference companion on Genetic and evolutionary computation
A self-scaling instruction generator using cartesian genetic programming
EuroGP'11 Proceedings of the 14th European conference on Genetic programming
GECCO 2012 tutorial: cartesian genetic programming
Proceedings of the 14th annual conference companion on Genetic and evolutionary computation
GECCO 2013 tutorial: cartesian genetic programming
Proceedings of the 15th annual conference companion on Genetic and evolutionary computation
Hi-index | 0.00 |
This paper presents for the first time the application of Cartesian Genetic Programming to the evolution of machine code for a simple implementation of a MOVE processor. The effectiveness of the algorithm is demonstrated by evolving machine code for a 4-bit multiplier with three different levels of parallelism. The results show that 100% successful solutions were found by CGP and by further optimising the size of the solutions, it is possible to find efficient implementations of the 4-bit multiplier that have the potential to be "human competitive". Further analysis of the results revealed that the structure of some solutions followed a known general design methodology.