Problem: Your task is to program robots with varyingbehaviors. The robots try to escape a maze, such as the following:
A robot has a position and a method void move (Maze m) thatmodifies the position. Provide a common superclass Robot whose move method does nothing. Provide subclassesRandomRobot, RightHandRuleRobot, and MemoryRobot. Each of these robots has adifferent strategy for escaping. The RandomRobot simply makes random moves. The RightHandRuleRobot movesaround the maze so that it's right hand always touches a wall. The MemoryRobot remembersall positions that it has previously occupied and never goes back to a position that it knows to be adead end.