recap_IntelRob_evol

advertisement
Lecture 1:
What is a robot?
1 – not nowadays (example: slide with different ‘robots’)
3 – right one (important: reprogrammable -> leads to multipurpose)
Sales of robots are increasing every year
South Korea has most of the robots. Then Japan, Germany, …
Robots out there are mostly employed in Automotive Industry, production of
electronics/metal structures/chemicals
Lecture 2 (Adaptation & Behaviour-Based Robotics):
In
the
Subsumpton Archictecture
for
building
intelligent
control
systems
the
decompositon
is in
terms of behaviour
generatng
modules
each
of
which
connects
sensing
to
acton.
Layers
are
added
incrementally, and
newer
layers
may
depend
on earlier layers operatng successfully, but do
not call them
as explicit
subroutnes.
Additional papers
1) Sowbug (BBR)
Abstract
Reintroduces & evaluates Sowbug, proposed in 1930s (based on purposive
behaviorism and implements behavior-based architecture). Sowbug navigates
environment based on 2 vectors: orientation & progression.
Something else of Tolman’s: Concept of cognitive map, introduced by Tolman.
Tolman studied how people and rats store information of their physical
location with the respect to the environment (past/present/future)
Initially, Tolman’s purposive behaviorism, behavior implied performance. In
other words, goal was to investigate how motivation, cognition, and purpose
were interconnected with stimulus and response.
Tolman derived formula to compute value of
behavior from environment stimuli,
psychological drive,
heredity,
previous training and
age
Purposive behaviorism considers same issues as behavior-based robotics
(modern)
How to produce intelligent behavior from multiple, concurrent and parallel
sensori-motor pathways
How to interpret outputs
How to introduce goal-oriented behavior
How to include motivation & emotion
How to support developmental growth to influence behavior
Answer: Sowbug model (based on purposive behaviorism)
a) Receptor Organ – photo-sensors that perceive light in environment
b) Orientation Distribution, Orientation need, and Orientation tension
a. Orientation Distribution – Output of photo-sensors – affects
curve on the front of the Sowbug
b. Orientation Need – connected with orientation tension
c. Orientation Tension – motivational demand (if hungry, the
tension is higher if Sowbug sees food)
c) Orientation Vector – Interaction between various Orientations (causes
only rotational movements of Sowbug)
d) Progression Distribution, Hypothesis, Progression Tension
e) Progression Vector
With combination of Orientation Vector & Progression Vector, Sowbug
expected to respond to the stimulus in the environment (rotating + moving
[based on Orientation Need])
Orientation Need is an internal state of the Sowbug
Sowbug is inspired by Lewin’s “psychological life space” and Loeb’s “tropism
theory”. Lewin attempted to form equation which could predict behavior of a
person for some event.
Phototactic behavior – connect motors to opposite light sensors – record &
compare statistical results
Behavior-based robotics architecture – subsumption architecture
Implementation of Sowbug
2) A Robust Layered Control System For a Mobile Robot
Abstract
New architecture for controlling mobile robots
Asynchronous layers of control system. Each level is a simple computational
machine
Higher-level layers can subsume lower-level layers by suppressing their
outputs
Introduction
Completely autonomous mobile robot must be able to perform many complex
information processing tasks in the environment (boundary of the
environment is changing rapidly)
Usual way to build control system for mobile autonomous robots is to
decompose the whole environment perceived by sensors into series
(roughly) of functional units (vertical slicing)
Use task-achieving behaviors to decompose a problem (horizontal slicing)
Vertical slicing (old) as opposed to Horizontal slicing (new)
Each slice is implemented explicitly & tied together to form a robot controller
Horizontal slicing is more robust
Requirements for a controller of an autonomous mobile robot:
Multiple Goals
Some goals may be conflicting
Example: Reach destination while avoiding obstacles
Relative importance of goals
System must be responsive to high-priority goals while still
servicing necessary “low-level” goals (i.e. getting off the tracks, while still
maintaining balance)
Multiple Sensors
All sensors have error information in their reading
Some sensors will overlap in data they measure
Robustness
When some sensors fail, robot must adapt and cope by relying on
those that are still functioning
When environment changes frastically, robot must still achieve
some sensible behavior
Ideally, robot must still function even if it has faults in its
processor
Extensibility
Robot needs more processing power as new sensors/capabilities
are added
Other approaches:
New language designed to support multiple objectives
It seems that the data from one sensor tends to dominate others
(sensors are not combined)
Little has been done on robustness of a processor
Assumptions
Complex behavior does not have to be a product of complex
controller
Things should be simple
We want to be able to build cheap robots that can do things
autonomously
Robot must model world as 3D to be able to be integrated in
human environment
Relational maps are more useful than absolute maps
Visual data is much better for interaction than sonar data
Robot must perform well even if sensors fail. Recovery must be
fast (self-calibration must be occuring all the time) -> we try to make all
processing steps self-calibrating
We are interested in building artificial robots that can survive for a
long time without human assistance
There are many approaches for building an autonomous robot:
Traditional one is to decompose the real-world problem into subproblems, solving each sub-problem independently
This approach does things differently
Traditional robots slice problem into: (Horizontal decomposition
into vertical slices)
 sensing
 mapping sensor data onto real-world
 planning
 task execution
 motor control
sensing -> mapping -> planning -> execution -> action (from
environment -> through the robot -> to the environment) ->
feedback loop + internal feedback loop
Disadvantage: instance of each slice must be built for a robot to
operate. If changes are done, changes to connected levels could be
required as well
Level of competence of a robot is a specification of a class of behavior of a
robot for all environments it might encounter -> needed for vertical
decomposition (which is presented in this paper)
Higher level of competence means more specialized class of behaviors
(higher level <-> more specific behaviors)
Levels of competences used: (each level includes earlier level [as its
subset]. Higher levels provide additional constrants)
0) Avoid contact with objects
1) Wander aimlessly around without hitting things
2) Explore the world by seeing things in front and approaching
them
3) Build a map of the environment and plan routes around
4) Notice changes in static environment
5) Reason about the environment in terms of identified objects
6) Formulate and execute plans that would change the state of the
world in some desireable way
7) Reason about the behavior of objects and modify plans with
respect to possible objects’ behaviors
Key Idea: can build layers of a control system corresponding to each level of
competence (and add new layer to move to higher level of overall
competence)
We start buildingour robot with level 0 competence (we never alter that
system later) and then we build on top of preceding level. Preceding level
is unaware of the level above itself
^^^ called a subsumption architecture ^^^
In sumsumption architecture, we have a working controller very early –
when we have first layer
With subsumption architecture:
Multiple goals:
Individual layers can work on individual goals cuncurrently
Advantage: No need to know in advance which goal is to be
pursued (pursuing all the goals can lead to the ultimate solution)
Multiple sensors:
Can ignore sensors data fusion – not all sensors need to
feed into (only those that are extremely reliable can be considered)
Other layers may be processing other sensor’s values
(fairness to sensors exists)
Robustness:
1) Multiple sensors + multiple objectives at different layers
2) Lower levels continue to function when higher levels
are added (higher levels do not suppress lower levels,
they only produce results at lower level of competence)
Extensibility:
Each level can run on separate processor
When we construct each level, we do not need to account for EVERY desired
perception/processing/generated behavior
Example:
Level 1 – does local navigation + avoids obstacles
Level 2 – delivers robot to a desired location
Suppressor -> layer higher in competency can suppress signal of layer lower
Inhibitor -> layer lower in competency can inhibit signal of layer higher in
organization
Lecture 3 (Adaptation X Learning X Evolution):
Lamarckism evolution is the idea that an organism can pass on
characteristics that it acquired during its lifetime to its offspring
Lecture 4 (ER):
BBR Issue – it is hard to tell whether particular action was produced by a
particular behaviour. Sometimes many behaviours are operating
simultaneously and switching rapidly.
ER issues to be concerned about:
Emergence of communication – paper reports on experiments conducted to
evolve communication between robots in a flock.
 efficient communication requires tight coevolution
between the signal emitted and the response
elicited
 experimental evolution with robots that could
produce visual signals to provide informa- tion on
food location
 environment containing a food and a poison source
that both emitted red light and could only be
discriminated at close range
 foraging efficiency can potentially be increased if
robots transmit information on food and poison
location
Lecture 6 (ER):
ANN are:






flexible – dynamicly adaptable to changes in
environment
robust – small malfunction (absence of components)
does not have much affect on the overall behaviour
robot can shape its own structure to exploit its sensorimotor features or select and use only those sensors and
motors that are best suited for accomplishing a task
tolerable to noise (sometimes noise even enhances
performance or is an essential component to learning,
e.g. in self-organising neural networks)
if we do not put any limits for e.g. having recurrent
connections or
small changes in ANN result in small changes in
behaviour (for feed-forward architectures)
Lecture 7:
https://www.youtube.com/watch?v=5lz_HnOLBW4
http://www.youtube.com/watch?v=kf4nr7CCJI0
Download