AI in Robotics
Kevin Cormier
Tyler Magalhaes
Kristopher Schlemmer
AI in Robotics
Topics:
What is learning?
Why do we care?
What types of learning are there?
How do we apply it?
What is Learning
The cognitive process of acquiring
knowledge
Learning is the acquisition and development
of memories and behaviors, including skills,
knowledge, understanding, values, and
wisdom.
Learning for a Robot
The ability of a machine to improve its
performance based on previous results.
Extraction of knowledge from examples
Execution of algorithms modified during
runtime automatically.
Learning – Why it matters
Because the world is A robot, if it's to be
dynamic and no autonomous and
programmer has useful, must be able
experienced to learn from it's
everything, a environment,
program cannot be determine what data
written to handle is important, and
every single possible adjust it's behaviors
encounter a robot based on it's findings
may have in the real while ignoring
world. unimportant data.
Learning
Many types
Supervised
Bayesian
Unsupervised
Reinforcement
Supervised Learning
Uses inputs with
known outputs to
learn a function.
Two types:
Regression – A
continuous
function
Classification –
Grouping of data
Supervised Learning - Benefits
No algorithm/problem understanding
necessary
Can reason about some things it's never
seen before (make inferences)
Able to find complex relationships without
user interaction.
Has teacher or training algorithm to help
ensure learning based on desired output.
Supervised Learning - Pitfalls
If the training data doesn't contain the necessary info to learn the
function, algorithm will never converge on a solution
A proper algorithm and structure must be chosen. Too complex a
problem and you can't learn it. Too complex an
algorithm/structure and it will take far longer than it has to to learn
everything.
Have to have training/testing datasets
Takes time to train
Can be slow
Can be over trained
Back Propagating
Neural Network
Feed forward training inputs
Compare to outputs
Slightly correct network
Repeat
Uses already computed datasets
Teaching algorithm determines how much to
correct based on error and training info.
Forced to generalize rules
Decision Trees
Uses best classifying characteristics to build
decisions trees
Great for classification problems
Uses already classified data to determine
best attributes to calculate the data best.
Teaching algorithm determines what's “best”
(speed, accuracy...)
Applications
Classification
Is that object too large to climb over?
Is the ground soft or hard?
Is that bridge safe to cross?
Regression
Steering
Safe speed calculation
Real World Applications
Path finding
localization done used rfid tags and
scanners. Neural nets used to recognize and
approach rfid tags
Goal Recognizing
used for some image processing, recognizing
goals in different environments
Real World Applications
Threat Detection
Agent is given feature data about different objects in a
terrain path and needs to decide if they are threats to be
avoided (ex. Fire, tree, land mine...) or if they are benign
(puddle, small rock, shadow)
Bayesian Learning
Represents variables and the probabilities
that they're independent
Can be used for speech recognition
Used to model knowledge, information
retrieval, and image processing
Most others train, then put into use.
Bayesian networks can learn while in use
(learn from real world experience as well as
training data)
Unsupervised Learning
Involves learning a pattern among presented inputs
without being provided desired outputs.
Agent may be able to learn patterns in a given input set, but
will not have a concept of “right or wrong” without being told
examples of desired and undesired outputs.
Used for development of probabilistic reasoning systems
(e.g. weather prediction).
Example: autonomous combat planes can predict tactical
maneuvers of targets and provide effective
countermeasures.
Reinforcement Learning
Very similar to supervised learning, except feedback is
provided by the environment, rather than the
developer.
Example – combat plane is presented with different
training scenarios and asked to shoot down targets. It
would receive points for shooting enemy targets and
lose points for shooting friendly targets.
Example – Vacuuming robot accumulates points for
vacuuming up dirt, no points for going over clean
areas, and loses points on a steady time scale (to
provide sense of urgency).
Neural Networks
Models the brain’s cognitive system to solve problems,
make decisions, and prompt actuators.
Series of feature data provided by sensors are presented to
the neural network. Different configurations of networks
provide different types of outputs (YES/NO decisions or
linear predictions).
Can be done supervised (using back-propagation) or
unsupervised.
In today’s practice, neural networks are most suitable for
classification problems. This would be useful for a combat
plane to identify friendly fire vs. valid targets.
Other AI Topics
Inductive Learning – Make greater than first-order
conclusions. Used to map way-point plan for
achieving a goal.
Ensemble Learning – Making integrated conclusions
by combining sensor data. Learn weighting functions.
Are all inputs required to make conclusions?
Committees of Agents
References
http://cs.nyu.edu/~raia/docs/proposal.pdf
http://en.wikipedia.org/wiki/Unsupervised_learning
Stuart Russel, Peter Norvig - Artificial Intelligence A Modern Approach Second
Edition
Google Definitions