lecture2-old - Computer Science & Engineering

Download Report

Transcript lecture2-old - Computer Science & Engineering

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
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
3
Spectrum of robot control
From “Behavior-Based Robotics” by R. Arkin, MIT Press, 1998
CS 493/790(X) - Lecture 2
4
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
5
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
6
Reactive Control:
Don’t think, react!
• Technique for tightly coupling perception and action to provide
fast responses to changing, unstructured environments
• Collection of stimulus-response rules
• Limitations
• Advantages
– No/minimal state
– Very fast and reactive
– No memory
– Powerful method: animals
are largely reactive
– No internal representations
of the world
– Unable to plan ahead
– Unable to learn
CS 493/790(X) - Lecture 2
7
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
8
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
9
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
10
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
11
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
12
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
13
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
14
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
15
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
16
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
If distance-to-wall is right, then keep going
If distance-to-wall is larger
then turn toward the wall
else turn away from the wall
CS 493/790(X) - Lecture 2
17
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
18
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
19
Types of Feedback Control
There are three types of basic feedback controllers
• P: proportional control
o = Kp  i
• PD: proportional derivative control
o = Kd  di/dt
• PID: proportional integral derivative control
o = Kp  i + Kd  di/dt
CS 493/790(X) - Lecture 2
20
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 = Kp  i
• 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
21
Derivative Control
• A derivative controller has an output o proportional
to the derivative of its input i:
o = Kd  di/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
22
PD Control
• Proportional-derivative control
– Combination (sum) of proportional and derivative terms
o = Kp  i + Kd  di/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
23
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
24
PID Control
• Proportional integral derivative control
– Combination (sum) of proportional, derivative and integral
terms
o = Kp  i + Kd  di/dt + Kf   i(t)dt
CS 493/790(X) - Lecture 2
25
Feedback Control
CS 493/790(X) - Lecture 2
26
Visual Feedback
CS 493/790(X) - Lecture 2
27
More Feedback
CS 493/790(X) - Lecture 2
28
A Brief History of Robotics
• Robotics grew out of the fields of control theory, cybernetics
and AI
• 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
29
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
30
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
31
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
32
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
33
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
34
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
35
Example Vehicles
• Wide range of vehicles can be designed, by changing the
connections and their strength
Vehicle 1
• Vehicle 1: Being “ALIVE”
– One motor, one sensor
• Vehicle 2: “FEAR” and “AGGRESSION”
– Two motors, two sensors
Vehicle 2
– Excitatory connections
• Vehicle 3: “LOVE”
– Two motors, two sensors
– Inhibitory connections
CS 493/790(X) - Lecture 2
36
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
37
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
38
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
39
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
40
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
41
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
42
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
43
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
44
Readings
• F. Martin: Sections 1.1, 1.2.3, 5
• M. Matarić: Chapters 1, 3, 10
CS 493/790(X) - Lecture 2
45