Evolving assembly programs: how games help microprocessor validation

  • Authors:
  • F. Corno;E. Sanchez;G. Squillero

  • Affiliations:
  • Politecnico di Torino, Italy;-;-

  • Venue:
  • IEEE Transactions on Evolutionary Computation
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

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.