General purpose evolutionary algorithm testbed
Abstract
We developed a "General Purpose Evolutionary Algorithm Testbed" through which a wide variety of evolutionary algorithms can be implemented in hardware, quickly and with a little hardware knowledge. A user interface allows the user to enter parameters needed to choose evolutionary algorithm components such as type of encoding, initial population description, selection type, reproduction type and the type of evaluation and termination criteria. The testbed is programmed based on those parameters and allows the user to make a variety of sensor connections and computer connections through which intrinsic and extrinsic evolutions and debugging are made possible. Our system provides a computer based graphical user interface with different windows showing all possible options for each system description parameter. VHDL code is then generated according to the inputted parameters which implements an FSM which controls the flow of data through the evolutionary algorithm system. The state machine performs all the steps of evolutionary algorithm. The design is run on Xilinx ISE using ModelSim XE-III (MXE-III) simulator and Xilinx® Spartan 3E[TM] starter kit is used as testbed. . A breadboard will be added in future versions to make interfacing to external sensors and test systems less arduous. A RS-232 connection is used to connect the testbed back to computer for debugging purposes. Designers require minimum hardware knowledge to use our graphical user interface, program the testbed, connect the sensors and debugger. With this system we tried to decrease the barrier of evolutionary algorithm designers to implement their designs in hardware and allow for easier debugging, revision and research on evolutionary hardware systems. In this thesis we also evaluate the resources used for various evolutionary algorithm systems. We used subtractive model of color theory as an application where tertiary colors evolve from three basic colors red, yellow and blue. We observed solutions moving towards global maxima instead of looking for local maxima with introduction of randomness. We found that the type of reproduction had an effect on the resources used whereas the change in other parameters such as population, iterations, termination criteria and debug shows normal behavior.
Degree
M.S.