Computer scientist Tom Murphy has developed software that can play old Nintendo Entertainment System (NES) video games. Murphy’s code examines the contents of memory chips inside the NES game console and uses that information to teach itself how to play. The code can be used to play different NES games. Murphy discovered that for almost every aspect of early games such as Super Mario Brothers, numbers held in memory grew larger when the player was doing well. As a result, he used the idea of rising numbers as the means for instructing his code how to know if it was winning. Murphy made that happen via lexicographic ordering, which is a way of ordering data or information based on size or ranking. The rest of the code involves creating commands for actions, such as jumping, at appropriate times. Murphy generated a baseline by playing the game manually for several minutes as a module recorded snapshots of memory. Using that data, the code assumed control, putting data into memory as would normally be done in response to a person manipulating the physical controls. The code emulates human button-pushing, notes the outcomes, and modifies its actions to get the numbers placed in its memory by the game to increase.
More info: PhysOrg.com (04/15/13) Bob Yirka