450 likes | 691 Views
Advanced Topics in Robotics CS493/790 (X) . Lecture 2 Instructor: Monica Nicolescu. Robot Control. Robot control is the means by which the sensing and action of a robot are coordinated The infinitely many possible robot control programs all fall along a well-defined control spectrum
E N D
Advanced Topics in Robotics CS493/790 (X) Lecture 2 Instructor: Monica Nicolescu
Robot Control • Robot control is the means by which the sensing and action of a robot are coordinated • The infinitely many possible robot control programs all fall along a well-defined control spectrum • The spectrum ranges from reacting to deliberating CS 493/790(X) - Lecture 2
Robot Control Architectures • There are infinitely many ways to program a robot, but there are only few types of robot control: • Deliberative control • Reactive control • Hybrid control • Behavior-based control • Numerous “architectures” are developed, specifically designed for a particular control problem • However, they all fit into one of the categories above CS 493/790(X) - Lecture 2
Spectrum of robot control From “Behavior-Based Robotics” by R. Arkin, MIT Press, 1998 CS 493/790(X) - Lecture 2
Robot control approaches • Reactive Control • Don’t think, (re)act. • Deliberative (Planner-based) Control • Think hard, act later. • Hybrid Control • Think and act separately & concurrently. • Behavior-Based Control (BBC) • Think the way you act. CS 493/790(X) - Lecture 2
Thinking vs. Acting • Thinking/Deliberating • slow, speed decreases with complexity • involves planning (looking into the future) to avoid bad solutions • thinking too long may be dangerous • requires (a lot of) accurate information • flexible for increasing complexity • Acting/Reaction • fast, regardless of complexity • innate/built-in or learned (from looking into the past) • limited flexibility for increasing complexity CS 493/790(X) - Lecture 2
Technique for tightly coupling perception and action to provide fast responses to changing, unstructured environments Collection of stimulus-response rules Limitations No/minimal state No memory No internal representations of the world Unable to plan ahead Unable to learn Advantages Very fast and reactive Powerful method: animals are largely reactive Reactive Control:Don’t think, react! CS 493/790(X) - Lecture 2
Deliberative Control: Think hard, then act! • In DC the robot uses all the available sensory information and stored internal knowledge to create a plan of action: sense plan act (SPA) paradigm • Limitations • Planning requires search through potentially all possible plans these take a long time • Requires a world model, which may become outdated • Too slow for real-time response • Advantages • Capable of learning and prediction • Finds strategic solutions CS 493/790(X) - Lecture 2
Hybrid Control: Think and act independently & concurrently! • Combination of reactive and deliberative control • Reactive layer (bottom): deals with immediate reaction • Deliberative layer (top): creates plans • Middle layer: connects the two layers • Usually called “three-layer systems” • Major challenge: design of the middle layer • Reactive and deliberative layers operate on very different time-scales and representations (signals vs. symbols) • These layers must operate concurrently • Currently one of the two dominant control paradigms in robotics CS 493/790(X) - Lecture 2
Behavior-Based Control:Think the way you act! • An alternative to hybrid control, inspired from biology • Has the same capabilities as hybrid control: • Act reactively and deliberatively • Also built from layers • However, there is no intermediate layer • Components have a uniform representation and time-scale • Behaviors: concurrent processes that take inputs from sensors and other behaviors and send outputs to a robot’s actuators or other behaviors to achieve some goals CS 493/790(X) - Lecture 2
Behavior-Based Control:Think the way you act! • “Thinking” is performed through a network of behaviors • Utilize distributed representations • Respond in real-time • are reactive • Are not stateless • not only reactive • Allow for a variety of behavior coordination mechanisms CS 493/790(X) - Lecture 2
Fundamental Differences of Control • Time-scale: How fast do things happen? • how quickly the robot has to respond to the environment, compared to how quickly it can sense and think • Modularity: What are the components of the control system? • Refers to the way the control system is broken up into modules and how they interact with each other • Representation: What does the robot keep in its brain? • The form in which information is stored or encoded in the robot CS 493/790(X) - Lecture 2
How to Choose a Control Architecture? • For any robot, task, or environment consider: • Is there a lot of sensor noise? • Does the environment change or is static? • Can the robot sense all that it needs? • How quickly should the robot sense or act? • Should the robot remember the past to get the job done? • Should the robot look ahead to get the job done? • Does the robot need to improve its behavior and be able to learn new things? CS 493/790(X) - Lecture 2
Feedback Control • Feedback control = having a system achieve and maintain a desired state by continuously comparing its current and desired states, then adjusting the current state to minimize the difference • Also called closed loop control CS 493/790(X) - Lecture 2
Goal State • Goal driven behavior is used in both control theory and in AI • Goals in AI • Achievement goals: states that the system is trying to reach • Maintenance goals: states that need to be maintained • Control theory: mostly focused on maintenance goals • Goal states can be: • Internal: monitor battery power level • External: get to a particular location in the environment • Combinations of both: balance a pole CS 493/790(X) - Lecture 2
Error • Error = the difference in the current state and desired state of the system • The controller has to minimize the error at all times • Direction of error: • Which way to go to minimize the error • Magnitude of error: • The distance to the goal state • Zero/non-zero error: • Tells whether there is an error or not • The least information we could have • Control is much easier if we know both magnitude and direction CS 493/790(X) - Lecture 2
A Robotic Example • Use feedback to design a wall following robot • What sensors to use, what info will they provide? • Contact: the least information • IR: information about a possible wall, but not distance • Sonar, laser: would provide distance • Bend sensor: would provide distance • Control Ifdistance-to-wall is right, thenkeep going Ifdistance-to-wall is larger thenturn toward the wall elseturn away from the wall CS 493/790(X) - Lecture 2
Overshoot • The system goes beyond its setpoint changes direction before stabilizing on it • For this example overshoot is not a critical problem • Other situations are more critical • A robot arm moving to a particular position • Going beyond the goal position could have collided with some object just beyond the setpoint position CS 493/790(X) - Lecture 2
Oscillations • The robot oscillates around the optimal distance from the wall, getting either too close or too far • In general, the behavior of a feedback system oscillates around the desired state • Decreasing oscillations • Adjust the turning angle • Use a range instead of a fixed distance as the goal state CS 493/790(X) - Lecture 2
Types of Feedback Control There are three types of basic feedback controllers • P: proportional control o = Kpi • PD: proportional derivative control o = Kddi/dt • PID: proportional integral derivative control o = Kpi + Kddi/dt CS 493/790(X) - Lecture 2
Proportional Control • The response of the system is proportional to the amount of the error • The output o is proportional to the input i: o = Kpi • Kp is a proportionality constant (gain) • Control generates a stronger response the farther away the system is from the goal state • Turn sharply toward the wall sharply if far from it, • Turn gently toward the wall if slightly farther from it CS 493/790(X) - Lecture 2
Derivative Control • A derivative controller has an output o proportional to the derivative of its input i: o = Kddi/dt • Kd is a proportionality constant • The intuition behind derivative control: • Controller corrects for the momentum as it approaches the desired state • Slow down a robot and decrease the turning angle while getting closer to the desired state • Decrease the motor power while getting closer to the desired state CS 493/790(X) - Lecture 2
PD Control • Proportional-derivative control • Combination (sum) of proportional and derivative terms o = Kpi + Kddi/dt • PD Control is used extensively in industrial process control • Combination of varying the power input when the system is far away from the setpoint, and correcting for the momentum of the system as it approaches the setpoint is quite effective CS 493/790(X) - Lecture 2
Integral Control • Control system can be improved by introducing an integral term o = Kf i(t)dt • Kf= proportionality constant • Intuition: • System keeps track of its repeatable, steady state errors • These errors are integrated (summed up) over time • When they reach a threshold, the system compensates for them CS 493/790(X) - Lecture 2
PID Control • Proportional integral derivative control • Combination (sum) of proportional, derivative and integral terms o = Kpi + Kddi/dt +Kf i(t)dt CS 493/790(X) - Lecture 2
Feedback Control CS 493/790(X) - Lecture 2
Visual Feedback CS 493/790(X) - Lecture 2
More Feedback CS 493/790(X) - Lecture 2
A Brief History of Robotics • Robotics grew out of the fields of control theory, cyberneticsandAI • Robotics, in the modern sense, can be considered to have started around the time of cybernetics (1940s) • Early AI had a strong impact on how it evolved (1950s-1970s), emphasizing reasoning and abstraction, removal from direct situatedness and embodiment • In the 1980s a new set of methods was introduced and robots were put back into the physical world CS 493/790(X) - Lecture 2
Control Theory • The mathematical study of the properties of automated control systems • Helps understand the fundamental concepts governing all mechanical systems (steam engines, aeroplanes, etc.) • Feedback: measure state and take an action based on it • Thought to have originated with the ancient Greeks • Time measuring devices (water clocks), water systems • Forgotten and rediscovered in Renaissance Europe • Heat-regulated furnaces (Drebbel, Reaumur, Bonnemain) • Windmills • James Watt’s steam engine (the governor) CS 493/790(X) - Lecture 2
Feedback Control • Definition:technique for bringing and maintaining a system in a goal state, as the external conditions vary • Idea: continuously feeding back the current state and comparing it to the desired state, then adjusting the current state to minimize the difference (negative feedback). • The system is said to be self-regulating • E.g.: thermostats • if too hot, turn down, if too cold, turn up CS 493/790(X) - Lecture 2
Cybernetics • Pioneered by Norbert Wiener in the 1940s • Comes from the Greek word “kibernts” – governor, steersman • Combines principles of control theory, information science and biology • Sought principles common to animals and machines, especially with regards to control and communication • Studied the coupling between an organism and its environment CS 493/790(X) - Lecture 2
W. Grey Walter’s Tortoise • Machina Speculatrix” (1953) • 1 photocell, 1 bump sensor, 1 motor, 3 wheels, 1 battery • Behaviors: • seek light • head toward moderate light • back from bright light • turn and push • recharge battery • Uses reactive control, with behavior prioritization CS 493/790(X) - Lecture 2
Principles of Walter’s Tortoise • Parsimony • Simple is better • Exploration or speculation • Never stay still, except when feeding (i.e., recharging) • Attraction (positive tropism) • Motivation to move toward some object (light source) • Aversion (negative tropism) • Avoidance of negative stimuli (heavy obstacles, slopes) • Discernment • Distinguish between productive/unproductive behavior (adaptation) CS 493/790(X) - Lecture 2
Braitenberg Vehicles • Valentino Braitenberg (1980) • Thought experiments • Use direct coupling between sensors and motors • Simple robots (“vehicles”) produce complex behaviors that appear very animal, life-like • Excitatory connection • The stronger the sensory input, the stronger the motor output • Light sensor wheel: photophilic robot (loves the light) • Inhibitory connection • The stronger the sensory input, the weaker the motor output • Light sensor wheel: photophobic robot (afraid of the light) CS 493/790(X) - Lecture 2
Example Vehicles • Wide range of vehicles can be designed, by changing the connections and their strength • Vehicle 1: • One motor, one sensor • Vehicle 2: • Two motors, two sensors • Excitatory connections • Vehicle 3: • Two motors, two sensors • Inhibitory connections Vehicle 1 Being “ALIVE” “FEAR” and “AGGRESSION” Vehicle 2 “LOVE” CS 493/790(X) - Lecture 2
Artificial Intelligence • Officially born in 1956 at Dartmouth University • Marvin Minsky, John McCarthy, Herbert Simon • Intelligence in machines • Internal models of the world • Search through possible solutions • Plan to solve problems • Symbolic representation of information • Hierarchical system organization • Sequential program execution CS 493/790(X) - Lecture 2
AI and Robotics • AI influence to robotics: • Knowledge and knowledge representation are central to intelligence • Perception and action are more central to robotics • New solutions developed: behavior-based systems • “Planning is just a way of avoiding figuring out what to do next” (Rodney Brooks, 1987) • Distributed AI (DAI) • Society of Mind (Marvin Minsky, 1986): simple, multiple agents can generate highly complex intelligence • First robots were mostly influenced by AI (deliberative) CS 493/790(X) - Lecture 2
Shakey • At Stanford Research Institute (late 1960s) • A deliberative system • Visual navigation in a very special world • STRIPS planner • Vision and contact sensors CS 493/790(X) - Lecture 2
Early AI Robots: HILARE • Late 1970s • At LAAS in Toulouse • Video, ultrasound, laser rangefinder • Was in use for almost 2 decades • One of the earliest hybrid architectures • Multi-level spatial representations CS 493/790(X) - Lecture 2
Early Robots: CART/Rover • Hans Moravec’s early robots • Stanford Cart (1977) followed by CMU rover (1983) • Sonar and vision CS 493/790(X) - Lecture 2
Lessons Learned • Move faster, more robustly • Think in such a way as to allow this action • New types of robot control: • Reactive, hybrid, behavior-based • Control theory • Continues to thrive in numerous applications • Cybernetics • Biologically inspired robot control • AI • Non-physical, “disembodied thinking” CS 493/790(X) - Lecture 2
Challenges • Perception • Limited, noisy sensors • Actuation • Limited capabilities of robot effectors • Thinking • Time consuming in large state spaces • Environments • Dynamic, impose fast reaction times CS 493/790(X) - Lecture 2
Key Issues of Behavior-Based Control • Situatedness • Robot is entirely situated in the real world • Embodiment • Robot has a physical body • Emergence: • Intelligence from the interaction with the environment • Grounding in reality • Correlation of symbols with the reality • Scalability • Reaching high-level of intelligence CS 493/790(X) - Lecture 2
Readings • F. Martin: Sections 1.1, 1.2.3, 5 • M. Matarić: Chapters 1, 3, 10 CS 493/790(X) - Lecture 2