Tennis Court Cleaner
Total Page:16
File Type:pdf, Size:1020Kb
Robotics Overview: The purpose of this session is to learn some basics about autonomous robots. What is a robot? A robot is a specialized kind of intelligent agent. Intelligent agents represent any kind of active decision-making behavior based on achieving some goal. Robots usually mean intelligent agents that are specifically designed to sense and adjust the “real world.” A good example of an intelligent agent that is not a robot would be a smart “physicians assistant” which helps diagnose patients and keeps track of multiple drug interactions. A good example of an intelligent agent that is a robot is the Martian explorer Opportunity. Figure 1: How robots, a type of intelligent agent, typically interact with the world. Figure 1 shows how most robots are designed to interact with the world, known as the feedback control loop. The field of robotics spans many disciplines essentially because of this diagram: sensors and actuators are built using knowledge of chemistry, physics, engineering, medicine and biology. Controls are built using knowledge of computer science, mathematics, and psychology. We will mostly worry about control, or the mind here. A primitive way to implement the idea of memory is to use a state machine. If you think about how you think (a subject of psychology and artificial intelligence) your mind often has these states: when hungry seek pizza, when sleepy seek bedroom, when board call friends, etc. A state diagram formalizes this kind of state-of-mind kind of thinking which helps to design robots to behave “intelligently.” State diagrams can have many states and ways to transition from one state to another. Mathematically they are a directed graph. Figure 2: State Diagrams are directed graphs. The control program moves from state to state (starting at state 0), depending on what it observes through its sensors. Circles represent possible states and the arrows represent legal ways to move from one state to another. Robots which use a state diagrams usually implement them in the following manner: Figure 3: Flowchart showing how to implement a state diagram. Targeted Tennis Trackers, Inc. Due to the high demand for runners in the tennis circuit, smaller courts cannot afford runners to clean balls off the tennis court between games. Your company, Targeted Tennis Trackers, Incorporated, aims to help. As CEO and chief R&D officer of TTTI (it’s a small company after all), you choose to develop a smaller scale robotic solution before investing in larger machines. In this small scale version, you have a robot which aims to move ping-pong balls to the edge of a 4’ square “court.” You decide the best measure of success in this simple case is how long it takes for the Tennis Tracker to find a ball and move it out of the playing field. Your robot control is based on the state machine design, where there are two states of mind: Figure 4: State Diagram for Tennis Tracker. Unfortunately, robot eyes are not as effective as human eyes for finding a ball. Here’s our first plan, or algorithm for how to seek a ball when in state 0: State 0: Move towards black stuff, or randomly if there isn’t much black stuff around. State 1: Move towards white stuff , or straight if there isn’t much white stuff around. It is interesting that, often, random behavior is more effective than fixed behavior. If we had a fixed sweeping pattern, we might miss some area. Random guarantees you will eventually visit every spot. Mosquitoes do this when they are seeking your blood: move randomly unless they sense carbon dioxide (exhaled breath), which they follow by moving upwind. The control rules, or algorithm, for the Tennis Tracker isn’t very specific, but it is the psuedocode which the Mindstorm robots currently have in them. The lack of specificity has to do with • How fast to move. • What’s much white specifically? • What’s much black specifically? The programs have these as parameters which you should try to adjust to optimize the behavior of the robot. Write a 100 word paragraph on the use of robots in your own life. Make sure to include things in your everyday life that at first glance do not seem like robots but really are robots. Summary • Robots are a special kind of intelligent agent that is intended to interact with the “real world.” • Robots often are designed using the feedback control loop: (1) Perceive with sensors. (2) Decide with control. (3) Move with actuators. (4) Repeat. • State machines, which are mathematically directed graphs, helps organize the development of a robot control. They are a limited kind of memory. • Algorithms are specific descriptions on how to accomplish some task, such as how to move actuators based on sensors and past experience. Robotics is an exciting collection of scientific fields: computer science, mathematics, engineering, physics, chemistry, biology, medicine, and psychology all have a role. I hope you have enjoyed this little visit into the vast world of robotics! Figure 5: Team Mojavaton's XBoxx racing autonomously across the desert. www.mojavaton.com .