DocumentCode
1244349
Title
Evolving assembly programs: how games help microprocessor validation
Author
Corno, Fulvio ; Sánchez, Ernesto ; Squillero, Giovanni
Author_Institution
Politecnico di Torino, Italy
Volume
9
Issue
6
fYear
2005
Firstpage
695
Lastpage
706
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 Scientific American column in the 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 four main international Tiny Hills. This 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.
Keywords
computer games; microcomputers; program assemblers; program testing; time-sharing programs; Core War; evolving assembly programs; machine written program; microprocessor validation; test program generation algorithm; time-sharing processor; Assembly; Automatic testing; Buildings; Circuit testing; Clocks; Computer architecture; Costs; Microprocessors; Silicon; System-on-a-chip; Automatic programming; Core War; evolutionary program generation; games; microprocessor testing;
fLanguage
English
Journal_Title
Evolutionary Computation, IEEE Transactions on
Publisher
ieee
ISSN
1089-778X
Type
jour
DOI
10.1109/TEVC.2005.856207
Filename
1545944
Link To Document