A comparison of three robotic controllers for navigation
This research provides a comparison of three types of robotic controllers and their suitability in evolutionary robotics. Two novel systems comprised of lookup tables (LUTs) and evolvable hardware (EHW) based controllers are compared against a benchmark single layered artificial neural network (ANN). The controllers have been evolved using a genetic algorithm (GA) to perform the following robotic navigational tasks: light following, object avoidance and the combined behaviour, light following while avoiding obstacles. Five aspects of the evolved robot controllers are evaluated: a) controller performance, assessed both numerically and visually; b) evolutionary efficiency, the number of generations required to obtain a good fitness; c) scalability, based on the controller performance and evolutionary efficiency as the complexity of the task is increased; d) quantization effects as the sampled resolution of the input sensors is varied; and e) operation of the evolved controllers in unknown spaces.
The findings from this research shows that: 1) the evolved controller performance is similar between the LUT, EHW and ANN controllers; 2) the evolutionary efficiency of the ANN and EHW are comparable, whereas the LUT took four times the number of generations to evolve; 3) the scalability of the EHW and ANN controllers were similar with the LUT being the most affected taking twelve times the number of generations to evolve; 4) the quantization effects of the sensors was comparable for all three controller types with a low sensor resolution mostly having an effect as the controller performance was moving towards a maximum; and 5) all the controllers were more robust in unknown environments when evolved in multiple arenas.
Both the EHW and LUT controllers performed far better than the apparent search space would suggest. This was due to the EHW having a large number of possible circuit solutions, effectively allowing solutions to be found quickly, and the LUT requiring only small sections of the LUT to control the robot thereby reducing the GA search space. The selection of which controller to use is determined by the system that it will be used in. The ANN is suited to a processor that contains a floating-point unit, the EHW is suited to a hybrid field programmable gate array (FPGA) with an ARM-based hard-core processor, whereas the LUT is suited to a low cost 8-bit microcontroller based system.