Notes from CS 6660 Intelligent
Agents
W Aug 29th 2001
Lecturer: Dr. Goel
Note taker: Christoph Csallner
- Central Dilemmas of Intelligent
Systems
- Almost
all interesting intelligence problems are intractable but almost all
agents have limited computational resources (except God) à
How do we achieve {rapid, efficient, real-time} processing?
- All
computation is local (partial or limited info as perceptually
inaccessible) but all interesting problems are non-local or global à
How do we solve global problems using local computation? à
Problem of local optima arises
- Given
these dilemmas, why should one use reactive agents at all? Need for
- Real-time
processing (ex: tennis player)
- There
are no local optima or costs to get out of them are relatively small
- Behavior-based systems
- Similar
to reactive agents: agent selects between predefined behaviors (each
follows one goal)
- example:
coke-seeking and obstacle-avoiding robot:

- α, β, γ, δ .. gain factors
- Lead
laser far-reaching à α triggers “move
towards coke” and β suppresses “move away from obstacle”
- Sonar
short distance à δ triggers “move away from obstacle” and
γ suppresses “move towards coke”
- Gain
factors are fighting against each other
- But
possibly large number of goals will lead to many conflicts à
in this case design problematic
- Subsumption architecture
- Brooks
- Few
software implementations available
- Arbitrary
number and content of layers

- Lowest
layer is default layer
- ith
layer subsumes jth layer if ith s conditions are
met à
ith layer gets also invoked
- Lower
layers are invoked more often
- Upper
layers are more specialized but dominate when invoked
- Priorization
of goals
- Conflicts
possible à
not suitable for complex problems with many layers
- Neural Networks
- Supervised
learning à
teacher must be available
- Inductive
learning (learning from special example to build general rule
- Example:
produce output “1” upon recogntion of the flashing of “7”

- Weights
are initialized with random values
- The
output of the single 2nd layer neuron is “1” if

and “0” otherwise, where theta is a threshold
- Training procedure:
- Give
it an input
- If
the output is correct: don’t do anything
- If
the output is incorrect: give the correct output as feedback
- Feedback:

- T .. correct feedback given by
the teacher (who has to be reliable)
- O .. output generated by the
single 2nd layer neuron
- h
.. const, typical small value
- Error = (T – O)
- When
applied with training examples the sum of square of errors will decrease
- Problems
of neural networks:
- Lot
of trials necessary e.g. about 1,000 to learn Boole’s AND or several
100,000 to learn Tic-Tac-Toe
- Teacher
necessary for most kinds of neural nets
- Limited
retention as retention is just possible between different epochs of same
task but not between different tasks (e.g. when learning has switched
from “recognize 7” to “recognize 3” no more 7 can be recognized).
- Linear
seperatebility of attacked problem necessary

- x-axis .. number of trials
- y-axis .. input
- A
problem is said to be linearly seperable if in a 2-dim room a straight line
can be drawn which seperates all solid circles (correct answers) from
all hollow circles (incorrect answers) respectively in a higher ordered
room if seperation is possible via a (hyper) plane
- Learning
can be seen as modification of the seperating line, respectively (hyper)
plan.
- O
:= z = (x XOR y) is a simple example of a not linearly seperable
problem:

