introduction topages.cpsc.ucalgary.ca/~jacob/courses/winter2001/... · 7. robo sapiens? [menzel and...

11
1 Introduction to Artificial Intelligence —————————————— Christian Jacob [email protected] Department of Computer Science University of Calgary 1. What is “Artificial Intelligence”? How does the human brain work? How do we emulate the human brain? Who cares? Let’s do some cool and useful stuff! How do we create intelligence? What is intelligence? 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

Upload: others

Post on 15-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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

Page 2: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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

Page 3: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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]

Page 4: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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

Page 5: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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

Page 6: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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]

Page 7: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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

Page 8: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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]

Page 9: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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

Page 10: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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.

Page 11: Introduction topages.cpsc.ucalgary.ca/~jacob/Courses/Winter2001/... · 7. Robo Sapiens? [Menzel and D’Aluisio, 2000] KISMET MIT 7. Robo Sapiens? [Kurzweil, 1990] WABOT, theOrgan

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.