CS424/580A Optional LEJOS Lab Use the LEJOS Navigator and Behavior interfaces to program a LEGO RCX robot with differential steering (i.e., can turn in place) to perform according to a subsumption behavior architecture that has four simple behaviors used to navigate a 1 meter square area. The lowest priority behavior will cause the robot to randomly move from one place to another within the 1 meter square. At any time while the robot is moving to a point, if one of its bumpers hits an object it should react by backing up 10 centimeters. After 25 seconds elapse, the robot should return to the point of origin and stop. The Behavior descriptions are as follows: Condition Action Suppress Priority ------------------------------------------------------------------------------------- Always Move to random Stop & update Lowest points inside square coordinates Left Bump Back up 10 cm. Stop Intermediate Right Bump Back up 10 cm. Stop Intermediate 25 seconds elapsed Seek point of origin Stop Highest You should use either the TimingNavigator or RotationNavigator class in your solution. In the latter case you will need to attach a rotation sensor to each motor and do the appropriate calibration. You will also need to use a timer.