The wall-hugging robot:
Program a toy robot to follow a wall. The figure shown below describes the assumptions. In a simplified version of ‘turtle geometry’, the robot’s world is a grid; any square is either free or occupied by the ‘wall’. The robot, shown as a triangle, is positioned on a free square facing in one of four possible directions. The robot consists of two binary sensors: h (‘head’, a touch sensitive bumper) signals whether the square is in front of the robot is free (0) or occupied by the wall (1); r (right) gives the same information for the square to the right of the robot. Robot is capable of two primitive actions: R turns right by 90° whereas remaining on the same square; F (forward) advances one square in the robot’s present direction.
Figure: i) The city wall and ii) the predicate ‘wall to the rear-right’.
The robot should be programmed to find out a piece of wall, then endlessly cycle all along within the wall, hugging it with right side. The given finite state machine, represented in tabular form, resolves the problem.
Seek: precondition = true, post-condition = ‘wall to the rear-right’
r h Actions Next state1 - Track- 1 RRR Track0 0 F Seek
Track: precondition = post-condition = ‘wall to the rear-right’
r h Actions Next state0 - RF Track1 0 F Track1 1 RRR TrackThe robot begins in state Seek, not knowing anything regarding its position, as stated by the vacuous assertion “precondition = true”. Function of this state is to bring about the post-condition ‘wall to the rear-right’, described in figure above: There is a piece of wall to the right of robot, or diagonally to the rear-right, or both. As long as robot hasn’t sensed any piece of wall (r = 0, h = 0) it moves forward with F. When it senses a wall, either ahead or to the right, it positions itself so as to fulfill the post-condition ‘wall to the rear-right’. With the ‘don’t care’ notation “-” we follow the design principle ‘specify behavior just as far as required’ and make the robot non-deterministic.
The mathematically inclined reader might find it instructive to confirm the program correct by checking that the state Track maintains the invariant ‘wall to the rear-right’, and that, in each and every transition, the robot progresses in his march all along the wall. Here we just point out how some basic ideas of the theory of computation, of algorithms and programs can be described in a simple, playful setting whose rules are rapidly understood.
Latest technology based Theory of Computation Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Theory of Computation help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Theory of Computation, project ideas and tutorials. We provide email based Theory of Computation help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Theory of Computation. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Theory of Computation Homework help and assignment help services. They use their experience, as they have solved thousands of the Theory of Computation assignments, which may help you to solve your complex issues of Theory of Computation. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.
tutorsglobe.com viruses and cancer assignment help-homework help by online viruses tutors
Get high-quality Network Architecture Assignment Help with 24x7 apt tutors at reasonable prices to secure notable grades!!
Stereospecific Polymerization tutorial all along with the key concepts of Polymer Stereochemistry, Structural Isomerism, Orientational isomerism, Configurational Isomerism
tutorsglobe.com nutrition in bacteria assignment help-homework help by online bacteria tutors
tutorsglobe.com chemical agents assignment help-homework help by online control of microorganisms tutors
tutorsglobe.com simple theory of income determination assignment help-homework help by online theory of economics tutors
tutorsglobe.com diatomic helium molecule assignment help-homework help by online molecular orbital energy level diagrams tutors
tutorsglobe.com oxidative phosphorylation assignment help-homework help by online biological oxidation tutors
tutorsglobe.com ascomycotina assignment help-homework help by online division eumycota tutors
tutorsglobe.com modification of taproot assignment help-homework help by online root modifications tutors
tutorsglobe.com high energy phosphates assignment help-homework help by online energy and enzymes tutors
www.tutorsglobe.com offers physical properties of carboxylic derivatives homework help, assignment help, online tutoring assistance, organic chemistry solutions by online qualified tutor's help.
tutorsglobe.com geitonogamy assignment help-homework help by online self pollination tutors
tutorsglobe.com uses of bioinformatics assignment help-homework help by online bioinformatics tutors
Reactions of Chromones tutorial all along with the key concepts of Chemical reactions of Chromones, Chromone Conjugation, Reaction of Chromones and Reactions of Chromones with Nucleophiles
1950628
Questions Asked
3689
Tutors
1446388
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!