You are on page 1of 16

Artificial Intelligence

Learning
AI systems cannot be called Intelligent until they are able to learn to do
new things and to adapt to new situations.
Learning in terms of Simon[1983], changes in the system that are
adaptive on the sense that they enable the system to do the same task
or tasks drawn from the same population more efficiently and more
effectively the next time.
Learning covers a wide range of phenomenon
Skill Refinement
Knowledge Acquisition
Rote Learning [ databases ]
Taking advice from others
Learning by own problem solving experience.[any]

10/1/2010
Artificial Intelligence

Learning
At times Learning may be the difference between solving a problem
rapidly and not solving it at all. Moreover, the programs that learnt
through problem solving experience may be able to come up with
qualitatively better solutions in the future.
Another form of learning is – learning from examples. [ cat and dog
example]
Always consider that – Learning in itself is a problem solving approach.
There is no definite definition of Learning, we will combine both problem-
solving mechanisms and the knowledge representation techniques to
illustrate the concepts.

10/1/2010
Artificial Intelligence

Learning
Rote Learning :
When a computer stores a piece of data, it is performing a
rudimentary(basic/simple) form of learning.
It allows the program to perform better in future.
In the case of Data Caching, we store computed values, so that we do
not have to re compute them later. – This caching known as ROTE
LEARNING.
Rote learning as stated earlier, is very simple. It does not appear to
involve any sophisticated problem solving capabilities.
But even it needs capabilities that will become increasingly important in
more complex learning systems. The capabilities are discussed in the
next slide.

10/1/2010
Artificial Intelligence

Learning
The capabilities are as
Organized Storage of Information : In order to access a stored value in
a faster manner , there must be a way to access the appropriate stored
value quickly ( if we are not re computing it). This can be done by
indexing and any other storage/retrieval method we can think of.
Generalization : The number of distinct objects that might be stored can
be very large. To keep this number down, some kind of generalization is
required.

10/1/2010
Artificial Intelligence

Learning
Learning by taking advice :
When a programmer writes a program (series of instructions) into a
computer, a simple kind of learning takes place. The programmer acts as
a teacher and the computer acts as a student.
Now the computer can do something, which it could not do earlier.
Imagine a code written in HLL LISP, some interpreter or compiler must
change the code into machine level language.
Let us work on a program called FOO, which accepts advice for playing
hearts, a card game. A human user first translates the advice from
English into a representation that FOO can understand.
Eg : Avoid taking points - (avoid ( take-points me) trick))

10/1/2010
Artificial Intelligence

Learning
Learning by taking advice :
FOO must operationalize this advice by turning it into an expression that
contains concepts and actions FOO can use when playing the game of
hearts.
The gist is that the system is learning by taking advice, what ever it is
instructed it does and is able to replicate the same thing again in future.
To put it in step by step process :
Understand the trick.
Play the game (do the task) in a better way after understanding .
Correct mistakes, learn from advice and redo the process again and
again.

10/1/2010
Artificial Intelligence

Learning
Learning in Problem Solving :
Previously, we have seen that how a problem-solver could improve its
performance by taking advice from a teacher. Here, we will talk about,
how can a program get better without the aid of a teacher. We can do
this by generalizing from its own experiences.
Learning by Parameter Adjustment
Learning with Macro-Operators
Learning by Chunking
The utility Problem

10/1/2010
Artificial Intelligence

Learning
Learning by Parameter Adjustment
Many programs rely on an evaluation procedure that combines
information from several sources into a single summary statistic.
Eg is the Game Playing programs. A piece advantage and mobility are
combined into a single score reflecting the desirability of a particular
board position.
In designing such programs, it is often difficult to know a priori, how
much weight should be attached to each feature being used.
One way of finding the correct weights is to begin with some estimate of
the correct settings and then to let the program modify the settings on
the basis of its experience.
Features that appear to be good predictors of overall success will have
their weights increased, while those that do not , will have their weights
decreased.

10/1/2010
Artificial Intelligence

Learning
Learning with Macro-Operators
As we did in the previous techniques , the idea is to avoid expensive re
computation.
Car example .
START-CAR can be treated as an atomic action, even though it really
consists of several actions – sitting down, adjusting the seat/mirror,
inserting the key, turning the key.
This sequence of actions that can be treated as a whole are called
macro-operators.
Example is early problem solving systems like STRIPS

10/1/2010
Artificial Intelligence

Learning
Learning with Macro-Operators
It is now stated that the set of problems for which macro-operations are
critical are exactly those problems with non serializable subgoals.
Non-serailizability means that working on one subgoal will necessarily
interfere with previous solution of another subgoal.
Macro-operations can be useful in such cases, since one macro-operator
can produce a small global change in the world, even though the
individual operators that make it up produce many undesirable local
changes.

10/1/2010
Artificial Intelligence

Learning
Learning by Chunking
Chunking is similar to macro-operators.
The idea comes from the psychological literature on memory and
problem solving.
To understand this first we need to learn about the system called SOAR.
SOAR is a general architecture for building intelligent systems. It is
based on a set of specific, cognitively motivated hypotheses about the
structure of human problem solving.
In SOAR, long term memory is stored as a set of productions. (or rules)
Short-Term memory (working memory) is a buffer and serves as a
storage area for facts deduced by rules in long term memory.
All problem activity takes place at state space traversal and results are
remembered ( or chunked) for future reference.

10/1/2010
Artificial Intelligence

Learning by Chunking
Learning
SOAR uses chunking to enhance its performance using experience.
SOAR solves problems by firing productions, which are stored in long-
term memory. Some firings turn out to be more useful than others.
When SOAR detects a useful sequence of production firings, it creates a
chunk, which is essentially a large production that does the work of an
entire sequence of smaller ones.
Several chunks may encode a single macro-operator and one chunk
may participate in a number of macro sequences.
Chunks are generally applicable towards any goal state whereas the
macro tables are structured towards reaching a particular goal state from
any initial state.
Chunks emphasizes on how learning can occur during problem solving,
while macro table are usually built during a pre-processor state.

10/1/2010
Artificial Intelligence

Learning
The Utility Problem
Here, we quota example of device called PRODIGY which works on a
technique called EBL ( Explanation-based –learning)
It can examine a trace of its own problem-solving behavior and try to
explain why certain path failed. Then it uses those explanations to
formulate control rules that help avoid those paths in the future.
So, SOAR learned from examples of successful problem solving,
PRODIGY learns from failures.
It helps identifying the utility problem in learning systems.

10/1/2010
Artificial Intelligence

Learning
The Utility Problem
New search control knowledge can be of great benefit in solving future
problems efficiently, there are also some downsides.
The learned control rules can take up large amounts of memory and the
search programs must take the time to consider each rule at each step
during problem solving.
This is a time-consuming process.
So, we have to do a trade-off between using the best search methods
and reducing time as well, PRODIGY maintains a utility measure for
each control rule, i.e. it records average savings provided by the rule, the
frequency of its application, cost of matching etc.
If a proposed rule has negative utility, it is discarded, else it is placed in
long term memory, the usage is then continuously monitored.

10/1/2010
Artificial Intelligence

Learning
Discovery
Is the restricted form of learning, in which one entity acquires knowledge
without the help of a teacher( sometimes, there is no body in the world
who has knowledge about a specific topic, in that case, the kind of action
taken is called scientific discovery.)
We are going to discuss three type of automated discovery systems
AM : Theory Driven Discovery
BACON : Data Driven Discovery
Clustering

10/1/2010
Artificial Intelligence

Learning
Discovery ( AM : Theory Driven Discovery)
Discovery is certainly learning, but it is more inclined towards problem
solving.
A program was written known as AM, which worked from a few basic
concepts of set theory to discover a good deal of standard number
theory.
AM exploits a variety of general-purpose AI techniques. It used a frame
system to represent mathematical concepts.

10/1/2010

You might also like