Obstacle avoidance is carried out using both vision and
ultrasonic sensing. While our ultimate goal is to use
only vision for obstacle avoidance, due to the limitations
of the computing hardware available to the mobile
robot, at this time vision can only be used for the
detection of stationary obstacles. So, in the current
implementation, the detection of moving obstacles is
left to ultrasonic sensors.