Martin Wickham, Mike Precup
Genetic algorithms are ways of creating optimal or near optimal solutions to problems by mimicking the process of evolution and natural selection. In one example we found, the internal components of a clock are represented by what is effectively the DNA of the clock. Based on this, the clocks were tested against each other in sets of three. The worst “died”, and the other two produced offspring. This process continued until useful clocks were reached. Out of an original pool where 98 percent did nothing and the other 2 percent were pendulums, multi hand clocks that accurately kept time evolved. Our goal is do implement something close to this involving keyboards. The layout of a keyboard affects how fast you are able to type, because certain keys are more likely to be used. Optimally, your fingers shouldn’t move very far to press those. So, for our project, we are making a genetic algorithm that will take in large amounts of text, like books, and measure how long it would take to type them based on the keyboards layout. In this way, the best possible keyboard layouts will eventually be created.