Evolving Assembly Programs: How Games Help Microprocessor Validation
IEEE Transactions on Evolutionary Computation, Special Issue on Evolutionary Computation and Games, Dec. 2005, vol. 9, pp. 695-706SILVER MEDAL at the Human-Competitive Awards 2005 (HUMIES)
KEYWORDS:
Approximate Methods,
Corewars,
Evolutionary Algorithms,
Genetic Programming,
MicroGP
ABSTRACT
Core War is a game where two or more programs, called warriors, are executed in the same memory area by a time-sharing processor. The final goal of each warrior is to crash the others by overwriting them with illegal instructions. The game was popularized by A. K. Dewdney in his column on Scientific American in mid- 1980s. In order to automatically devise strong warriors, µGP, a test program generation algorithm, was extended with the ability to assimilate existing code and to detect clones; furthermore, a new selection mechanism for promoting diversity independent from fitness calculations was added. The evolved warriors are the first machine-written programs ever able to become King of the Hill (champion) in all the four main international Tiny Hills. The paper shows how playing Core War may help generate effective test programs for validation and test of microprocessors. Tackling a more mundane problem, the described techniques are currently being exploited for the automatic completion and refinement of existing test programs. Preliminary experimental results are reported.
Notez Bien:
Access to sensible data is granted to domain only. Any use without explicit permission of the CAD group is illegal under the current copyright laws.
Copyright note for papers published by the IEEE Computer Society:
Copyright IEEE. Personal use of this material is permitted. However,
permission to reprint/republish this material for advertising or
promotional purposes or for creating new collective works for resale
or redistribution to servers or lists, or to reuse any copyrighted
component of this work in other works, must be obtained from the IEEE.
[CSSq05] F. Corno, E. Sanchez, G. Squillero, "Evolving Assembly Programs: How Games Help Microprocessor Validation," IEEE Transactions on Evolutionary Computation, Special Issue on Evolutionary Computation and Games, Dec. 2005, vol. 9, pp. 695-706 |