Artificial Intelligence
Download
Report
Transcript Artificial Intelligence
Artificial Intelligence
An Introductory Course
1
Outline
1. Introduction
2. Problems and Search
3. Knowledge Representation
4. Advanced Topics
- Game Playing
- Uncertainty and Imprecision
- Planning
- Machine Learning
2
References
• Artificial Intelligence (1991)
Elaine Rich & Kevin Knight, Second Ed, Tata McGraw Hill
• Decision Support Systems and Intelligent Systems
Turban and Aronson, Sixth Ed, PHI
3
Introduction
• What is AI?
• The foundations of AI
• A brief history of AI
• The state of the art
• Introductory problems
4
What is AI?
5
What is AI?
• Intelligence: “ability to learn, understand and think”
(Oxford dictionary)
• AI is the study of how to make computers make
things which at the moment people do better.
• Examples: Speech recognition, Smell, Face, Object,
Intuition, Inferencing, Learning new skills, Decision
making, Abstract thinking
6
What is AI?
Thinking humanly
Thinking rationally
Acting humanly
Acting rationally
7
Acting Humanly: The Turing Test
• Alan Turing (1912-1954)
• “Computing Machinery and Intelligence” (1950)
Imitation Game
Human
Human Interrogator
AI System
8
Acting Humanly: The Turing Test
• Predicted that by 2000, a machine might have a 30%
chance of fooling a lay person for 5 minutes.
• Anticipated all major arguments against AI in
following 50 years.
• Suggested major components of AI: knowledge,
reasoning, language, understanding, learning.
9
Thinking Humanly: Cognitive Modelling
• Not content to have a program correctly solving a
problem.
More concerned with comparing its reasoning steps
to traces of human solving the same problem.
• Requires testable theories of the workings of the
human mind: cognitive science.
10
Thinking Rationally: Laws of Thought
• Aristotle was one of the first to attempt to codify “right
thinking”, i.e., irrefutable reasoning processes.
• Formal logic provides a precise notation and rules for
representing and reasoning with all kinds of things in
the world.
• Obstacles:
- Informal knowledge representation.
- Computational complexity and resources.
11
Acting Rationally
• Acting so as to achieve one’s goals, given one’s
beliefs.
• Does not necessarily involve thinking.
• Advantages:
- More general than the “laws of thought” approach.
- More amenable to scientific development than humanbased approaches.
12
The Foundations of AI
• Philosophy (423 BC - present):
- Logic, methods of reasoning.
- Mind as a physical system.
- Foundations of learning, language, and rationality.
• Mathematics (c.800 - present):
- Formal representation and proof.
- Algorithms, computation, decidability, tractability.
- Probability.
13
The Foundations of AI
• Psychology (1879 - present):
- Adaptation.
- Phenomena of perception and motor control.
- Experimental techniques.
• Linguistics (1957 - present):
- Knowledge representation.
- Grammar.
14
A Brief History of AI
• The gestation of AI (1943 - 1956):
- 1943: McCulloch & Pitts: Boolean circuit model of brain.
- 1950: Turing’s “Computing Machinery and Intelligence”.
- 1956: McCarthy’s name “Artificial Intelligence” adopted.
• Early enthusiasm, great expectations (1952 - 1969):
- Early successful AI programs: Samuel’s checkers,
Newell & Simon’s Logic Theorist, Gelernter’s Geometry
Theorem Prover.
- Robinson’s complete algorithm for logical reasoning.
15
A Brief History of AI
• A dose of reality (1966 - 1974):
- AI discovered computational complexity.
- Neural network research almost disappeared after
Minsky & Papert’s book in 1969.
• Knowledge-based systems (1969 - 1979):
- 1969: DENDRAL by Buchanan et al..
- 1976: MYCIN by Shortliffle.
- 1979: PROSPECTOR by Duda et al..
16
A Brief History of AI
• AI becomes an industry (1980 - 1988):
- Expert systems industry booms.
- 1981: Japan’s 10-year Fifth Generation project.
• The return of NNs and novel AI (1986 - present):
- Mid 80’s: Back-propagation learning algorithm reinvented.
- Expert systems industry busts.
- 1988: Resurgence of probability.
- 1988: Novel AI (ALife, GAs, Soft Computing, …).
- 1995: Agents everywhere.
- 2003: Human-level AI back on the agenda.
17
Task Domains of AI
•
Mundane Tasks:
– Perception
• Vision
• Speech
– Natural Languages
• Understanding
• Generation
• Translation
– Common sense reasoning
– Robot Control
•
Formal Tasks
•
Expert Tasks:
– Games : chess, checkers etc
– Mathematics: Geometry, logic,Proving properties of programs
–
–
–
–
Engineering ( Design, Fault finding, Manufacturing planning)
Scientific Analysis
Medical Diagnosis
Financial Analysis
18
AI Technique
• Intelligence requires Knowledge
• Knowledge posesses less desirable properties such as:
–
–
–
–
Voluminous
Hard to characterize accurately
Constantly changing
Differs from data that can be used
• AI technique is a method that exploits knowledge that should be
represented in such a way that:
–
–
–
–
Knowledge captures generalization
It can be understood by people who must provide it
It can be easily modified to correct errors.
It can be used in variety of situations
19
The State of the Art
• Computer beats human in a chess game.
• Computer-human conversation using speech
recognition.
• Expert system controls a spacecraft.
• Robot can walk on stairs and hold a cup of water.
• Language translation for webpages.
• Home appliances use fuzzy logic.
• ......
20
Tic Tac Toe
• Three programs are presented :
–
–
–
–
–
Series increase
Their complexity
Use of generalization
Clarity of their knowledge
Extensability of their approach
21
Introductory Problem: Tic-Tac-Toe
X
X
o
22
Introductory Problem: Tic-Tac-Toe
Program 1:
Data Structures:
• Board: 9 element vector representing the board, with 1-9 for each
square. An element contains the value 0 if it is blank, 1 if it is filled by
X, or 2 if it is filled with a O
• Movetable: A large vector of 19,683 elements ( 3^9), each element is
9-element vector.
Algorithm:
1.
View the vector as a ternary number. Convert it to a
decimal number.
2.
Use the computed number as an index into
Move-Table and access the vector stored there.
3.
Set the new board to that vector.
23
Introductory Problem: Tic-Tac-Toe
Comments:
This program is very efficient in time.
1. A lot of space to store the Move-Table.
2. A lot of work to specify all the entries in the
Move-Table.
3. Difficult to extend.
24
Introductory Problem: Tic-Tac-Toe
1 2 3
4 5 6
7 8 9
25
Introductory Problem: Tic-Tac-Toe
Program 2:
Data Structure: A nine element vector representing the board. But instead
of using 0,1 and 2 in each element, we store 2 for blank, 3 for X and 5
for O
Functions:
Make2: returns 5 if the center sqaure is blank. Else any other balnk sq
Posswin(p): Returns 0 if the player p cannot win on his next move;
otherwise it returns the number of the square that constitutes a
winning move. If the product is 18 (3x3x2), then X can win. If the
product is 50 ( 5x5x2) then O can win.
Go(n): Makes a move in the square n
Strategy:
Turn = 1 Go(1)
Turn = 2 If Board[5] is blank, Go(5), else Go(1)
Turn = 3 If Board[9] is blank, Go(9), else Go(3)
Turn = 4 If Posswin(X) 0, then Go(Posswin(X))
.......
26
Introductory Problem: Tic-Tac-Toe
Comments:
1. Not efficient in time, as it has to check several
conditions before making each move.
2. Easier to understand the program’s strategy.
3. Hard to generalize.
27
Introductory Problem: Tic-Tac-Toe
8 3 4
1 5 9
6 7 2
15 - (8 + 5)
28
Introductory Problem: Tic-Tac-Toe
Comments:
1. Checking for a possible win is quicker.
2. Human finds the row-scan approach easier, while
computer finds the number-counting approach more
efficient.
29
Introductory Problem: Tic-Tac-Toe
Program 3:
1. If it is a win, give it the highest rating.
2. Otherwise, consider all the moves the opponent
could make next. Assume the opponent will make
the move that is worst for us. Assign the rating of
that move to the current node.
3. The best node is then the one with the highest
rating.
30
Introductory Problem: Tic-Tac-Toe
Comments:
1. Require much more time to consider all possible
moves.
2. Could be extended to handle more complicated
games.
31
Exercises
1. Characterize the definitions of AI:
"The exciting new effort to make computers think ...
machines with minds, in the full and literal senses"
(Haugeland, 1985)
"[The automation of] activities that we associate with
human thinking, activities such as decision-making,
problem solving, learning ..."
(Bellman, 1978)
32
Exercises
"The study of mental faculties, through the use of
computational models"
(Charniak and McDermott, 1985)
"The study of the computations that make it possible to
perceive, reason, and act"
(Winston, 1992)
"The art of creating machines that perform functions that
require intelligence when performed by people"
(Kurzweil, 1990)
33
Exercises
"The study of how to make computers do things at which,
at the moment, people are better"
(Rich and Knight, 1991)
"A field of study that seeks to explain and emulate
intelligent behavior in terms of computationl processes"
(Schalkoff, 1990)
"The branch of computer science that is concerned with
the automation of intelligent behaviour"
(Luger and Stubblefield, 1993)
34
Exercises
"A collection of algorithms that are computationally
tractable, adequate approximations of intractabiliy
specified problems"
(Partridge, 1991)
"The enterprise of constructing a physical symbol
system that can reliably pass the Turing test"
(Ginsberge, 1993)
"The f ield of computer science that studies how
machines can be made to act intelligently"
(Jackson, 1986)
35