1
Introduction toArtificial Intelligence
——————————————
Christian [email protected]
Department of Computer Science
University of Calgary
1. What is “Artificial Intelligence”?
How doesthe humanbrain work?
How do weemulate the
human brain?
Who cares? Let’sdo some cool and
useful stuff!
How do wecreate
intelligence?What isintelligence?
2. Basic Problem-Solving Strategies
✦ Basic search techniques✦ Problem decompositon and AND/OR
graphs✦ Searching with problem-specific
knowledge
2. Basic Problem-Solving Strategies
✦ Basic search techniques✦ Problem decompositon and AND/OR
graphs✦ Searching with problem-specific
knowledge
2.1 Basic Search Techniques
✦ Greedy search✦ Gradient descent or ascent✦ Stochastic search
– Simulated annealing– Evolutionary search
✦ Depth-first vs. breadth-first search
local maxima
local maxima
In search for the highest landmark ...
global maximum
2
2. Basic Problem-Solving Strategies
✦ Basic search techniques✦ Problem decompositon and AND/OR
graphs✦ Searching with problem-specific
knowledge
2.2 Problem Decomposition andAND/OR Graphs
[Bratko, 2001] [Bratko, 2001]
2. Basic Problem-Solving Strategies
✦ Basic search techniques✦ Problem decompositon and AND/OR
graphs✦ Searching with problem-specific
knowledge
2.3 Searching with Problem-SpecificKnowledge
75
118
111
140
80
97
99
101
211
A
B
C
D
E F
G
H I
State h(n)
A 366B 374C 329D 244E 253F 178G 193H 98I 0
A
E BC
h=253 h=329 h=374
2.3 Searching with Problem-SpecificKnowledge (2)
[Newborn, 1997][Kurzweil, 1990]
Anatoly Karpow and Gary Kasparow, 1986
3. Knowledge Representation,Reasoning, and Planning
✦ Knowledge representation✦ Reasoning and planning✦ Knowledge soup
3
3. Knowledge Representation,Reasoning, and Planning
✦ Knowledge representation✦ Reasoning and planning✦ Knowledge soup
3.1 Knowledge Representation
[Sowa, 2000]
3. Knowledge Representation,Reasoning, and Planning
✦ Knowledge representation✦ Reasoning and planning✦ Knowledge soup
3.2 Reasoning and Planning
Start
Finish
At(Home), Rents(Rogers, Video), Sells(Store, Bread)
At(Home), Have(Video), Have(Bread)
Rent(Video) Buy(Bread)At(Rogers), Rents(Rogers, Video) At(Store), Sells(Store, Bread)
Go(Rogers) Go(Store)At(Home) At(Home)
3. Knowledge Representation,Reasoning, and Planning
✦ Knowledge representation✦ Reasoning and planning✦ Knowledge soup
3.3 Knowledge Soup
✦ Vagueness, uncertainty, randomness,ignorance
[Sowa, 2000]
4
4. Machine Learning and PatternRecognition
✦ Fuzzy logic and fuzzy sets✦ Artificial neural networks
– Single- and multilayer perceptrons
– Backpropagation networks– Self-organizing feature maps– Recurrent networks
✦ Neuro-fuzzy systems
4. Machine Learning and PatternRecognition
✦ Fuzzy logic and fuzzy sets✦ Artificial neural networks
– Single- and multilayer perceptrons
– Backpropagation networks– Self-organizing feature maps– Recurrent networks
✦ Neuro-fuzzy systems
4.1 Fuzziness
✦ What is hot? What is cold?✦ What is young? What is old?
[Sowa, 2000]
4. Machine Learning and PatternRecognition
✦ Fuzzy logic and fuzzy sets✦ Artificial neural networks
– Single- and multilayer perceptrons
– Backpropagation networks– Self-organizing feature maps– Recurrent networks
✦ Neuro-fuzzy systems
4.2 Artificial Neural Networks:Modeling the Brain
[Stevens et al ., 1988]
Visual Cortex of a Cat
4.2 Artificial Neural Networks (2)
[Kurzweil, 1990] [Spektrum, 1993]
Schematic Perceptron
Feed-forward network
5
Modeling the Brain?
[Spektrum, 1993] [Kurzweil, 1990]
Optical Character Recognition
[Spektrum, 1993]Input
Hidden
Output
4. Machine Learning and PatternRecognition
✦ Fuzzy logic and fuzzy sets✦ Artificial neural networks
– Single- and multilayer perceptrons
– Backpropagation networks– Self-organizing feature maps– Recurrent networks
✦ Neuro-fuzzy systems
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5.1 Evolution Strategies
[Rechenberg, 1994]
Evolution of a Jet Nozzle
Evolutionary Engineering
6
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5.2 Evolutionary ProgrammingA0 A0 outputInput
A1 A2 A3
A1 output A2 output A3 output
Evolutionof
FiniteState
Automata
[Jacob, 2001]
5.2 Evolutionary Programming
Gen. 0
Gen. 40
Gen. 70
Gen. 0
Gen. 40
Gen. 70
Gen. 120
[Jacob, 2001]
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5.3 Genetic Algorithms
Genotype
{1,0,1,1,0,1,0,0,1,0,1,1}{0,1,1,1,1,0,0,1,0,0,0,1}{0,0,1,1,0,101,1,0,1,0,0}
...{1,1,0,0,0,1,0,1,0,1,0,0}...
{1,0,1,0,0,1,1,1,0,1,1,1}{0,0,1,1,0,1,1,1,0,1,0,0}{1,0,0,1,0,1,1,1,0,0,0,1}
Binary Vector
Decoding
Interpretation
Phenotype
5.3 Genetic AlgorithmsGeneration 0
Generation 10
Generation 11
Generation 30 [Jacob, 2001]
7
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5.4 Genetic Programming
sprout[3]
Axiom
[]
LEFT
F[_]
PRED
B[.38]
leaf[0]
sprout[2]
F[1.4] YL[30] leaf[0]
Seq bloom[1]
Stack
Seq RL[20] F[4.9]
Stack
SUCC
[]
RIGHT
LRule
...
LRule
LRules
LSystem
sprout[3]
Axiom
[]
LEFT _PRED
[]
RIGHT _SUCC
LRule
sproutIndex
sprout
PRED
_SEQ _STACK
Alternative
SUCC
_sprout _stalk ... _YL _SEQ
Alternative
BlankSequence
SEQ
__LRule
LRules
_Axiom _LRules
LSystem
AntTracker[
seq[seq[advance],
ifSensor[dust][seq[seq[stop]], seq[advance]],
seq[
ifSensor[dust][seq[turnLeft, again], seq[nop]],
seq[seq[advance],
ifSensor[wall][
seq[seq[stop], seq[nop],
ifSensor[phero][seq[turnLeft], seq[stop]]],
seq[turnRight]]],
seq[nop]]
]]
Gen. 5
Gen. 16
AntTracker[
seq[
ifSensor[wall][
seq[turnLeft, again], seq[turnRight]],
seq[
ifSensor[dust][seq[turnLeft, again],seq[nop]],
seq[
ifSensor[wall][
seq[seq[turnLeft, again], seq[nop],
ifSensor[phero][seq[stop]]],
seq[seq[advance]]]],
seq[nop]]
]]
Gen. 22
AntTracker[
seq[
ifSensor[wall][
seq[turnLeft, turnLeft, again],
seq[
ifSensor[wall][seq[turnLeft, again], seq[turnRight]],
seq[
seq[
ifSensor[wall][
seq[seq[turnLeft, again], seq[nop],
ifSensor[wall][seq[again], seq[seq[nop], seq[nop]]]],
seq[seq[advance]]]]]]],
seq[
ifSensor[dust][seq[turnLeft, again]],
seq[
ifSensor[wall][seq[ifSensor[dust][seq[advance]]],
seq[ifSensor[dust][seq[turnLeft, again]],
seq[ifSensor[wall][
seq[seq[turnLeft, again], seq[nop],
ifSensor[dust][seq[stop], seq[stop], seq[turnLeft]]],
seq[seq[advance]]]],
seq[nop]]]
]]]]
Gen. 59
Gen. 1
AntTracker[
seq[advance]
]
AntTracker[
seq[seq[advance],
ifSensor[wall][
seq[seq[stop], seq[nop],
ifSensor[phero][seq[turnLeft], seq[advance]]],
seq[turnRight]],
seq[ifSensor[dust][seq[turnLeft, again],seq[nop]],
seq[ifSensor[wall][
seq[seq[turnLeft, again], seq[nop],
ifSensor[phero][seq[stop]]],
seq[seq[advance]]]],
seq[nop]]]]
Fitness Generation
5945
AntTracker[
seq[
ifSensor[wall][
seq[turnLeft, turnLeft, again],
seq[
ifSensor[wall][seq[turnLeft, again],seq[turnRight]],
seq[
seq[
ifSensor[wall][
seq[seq[turnLeft, again], seq[nop],
ifSensor[wall][seq[again],seq[seq[nop], seq[nop]]]],
seq[seq[advance]]]]]]],
seq[
ifSensor[dust][seq[turnLeft, again]],
seq[
ifSensor[wall][seq[ifSensor[dust][
seq[advance]]],
seq[ifSensor[dust][seq[turnLeft,again]],
seq[ifSensor[wall][
seq[seq[turnLeft, again], seq[nop],
ifSensor[dust][seq[stop], seq[stop], seq[turnLeft]]],
seq[seq[advance]]]],
seq[nop]]]
]]]] [Jacob, 2001]
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5.5 Learning Classifier Systems
✦ A classifier system to emulate a frog. The frog reacts to objects it sees.
MovingOn theGround
Large Far Striped Flee! Pursue!
Input: Output:
1 _ _ _ _ 1 0
1 0 0 0 _ 0 1
1 0 0 0 1 0 0
8
5. Evolutionary Computing
✦ Evolution Strategies✦ Evolutionary Programming✦ Genetic Algorithms✦ Genetic Programming✦ Learning Classifier Systems✦ Evolutionary Design
5.6 Evolutionary Design: Objects
Scaffold
Lifting Loads
[Funes and Pollack, 1999]
5.6 Evolutionary Design: Art
MutationsHölldobler & Wilson, 1990
6. Swarm Intelligence andComplex Adaptive Systems
✦ Social Models✦ Swarms and Emergent System
Behaviour✦ Immune System Computing
6. Swarm Intelligence andComplex Adaptive Systems
✦ Social Models✦ Swarms and Emergent System
Behaviour✦ Immune System Computing
6.1 Social Models:Competition and Cooperation
[Ernst, 1998][Nuridsany & Pérennou, 1996]
9
6. Swarm Intelligence andComplex Adaptive Systems
✦ Social Models✦ Swarms and Emergent System
Behaviour✦ Immune System Computing
6.2 Swarms: The Ants Paradigm
[Hölldobler & Wilson, 1990]
6.2 Swarms and Emergent SystemBehaviour
6. Swarm Intelligence andComplex Adaptive Systems
✦ Social Models✦ Swarms and Emergent System
Behaviour✦ Immune System Computing
6.3 Immune System Computing
✦ Distinguishing self from non-self
[Hofmeyr and Forrest, 1999]
Intrusiondetectionin a LAN
7. Robo Sapiens?
[Kurzweil, 1990]
Seymour Papert
LOGO Robot
10
7. Robo Sapiens?
[Menzel and D’Aluisio, 2000]
KISMET
MIT
7. Robo Sapiens?
[Kurzweil, 1990]
WABOT, theOrgan Player
Ichiro Kato,Waseda-University,Tokyo
ArtificialIntelligence
in Action
If we don’t know howit works, then it’s AI.
When we find outhow it works, it’s not
AI anymore…
References
• Bratko, I. (2001). PROLOG Programming forArtificial Intelligence. New York, Addison-Wesley.
• Rechenberg, I. (1994). Evolutionsstrategie’94.Stuttgart, Frommann-Holzboog.
• Sowa, J. F. (2000). KnowledgeRepresentation. Pacific Grove, Brooks/Cole.
• Kurzweil, R. (1990). The Age of IntelligentMachines. Cambridge, MA, MIT Press.
References (2)
• P. Menzel and F. D’Aluisio (2000). Robosapiens — Evolution of a New Species.Cambridge, MA, MIT Press.
• Spektrum der Wissenschaft: Spezial. Gehirnund Geist. Heidelberg, SpektrumAkademischer Verlag,1993.
• Hofmeyr, S. and Forrest, S. (1999). Immunityby Design: An Artificial Immune System. InGECCO’99.
• Stevens, C. F., et al. (1988). Gehirn undNervensystem. Heidelberg, SpektrumAkademischer Verlag.
11
References (3)
• Ernst, A. M., ed. (1998). Digest: Kooperationund Konkurrenz, Heidelberg, SpektrumAkademischer Verlag.
• Nuridsany, C., and Pérennou, M. (1996).Microcosmos: The Invisible World of Insects.New York, Stewart, Tabori & Chang.
• Newborn, M. (1997). Kasparov versus DeepBlue. Berlin, Springer-Verlag.
• Jacob, C. (2001). Illustrating EvolutionaryComputation with Mathematica. SanFrancisco, Morgan Kaufmann.
References (4)
✦ Hölldobler, B., and Wilson, E. O. (1990). The Ants.Cambridge, MA, Harvard University Press.
✦ Todd, S. and Latham, W. (1992). Evolutionary Artand Computers. London, Academic Press.
✦ Funes, P. and Pollack, J. (1999). ComputerEvolution of Buildable Objects. In: P. Bentley (ed.).Evolutionary Design by Computers. San Francisco,Morgan Kaufmann.