Você está na página 1de 46

What is Artificial Intelligence?

is the study of how to make computers do things


which, at the moment, people do better

What are some of the tasks that fall under the domain of Artificial
Intelligence ?

3 types of task domain


1. Mundane tasks
2. Formal tasks
3. Expert tasks

1. Mundane tasks
all those things which (nearly) all of us can routinely do (to various
abilities) in order to act and interact in the world.
These tasks require complex reasoning

Perception
vision
speech

Natural language
understanding
generation
translation

Commonsense reasoning
Robot control
planning

2. Formal tasks
Games
Chess
Checkers

Mathematics

Geometry
Logic
Integral calculus
Proving properties of programs

3. Expert tasks
Things that only some people are good at, and which require extensive training. It
can be especially useful to automate these tasks, as there may be a shortage of
human experts.

Engineering
Design
Fault finding
Manufacturing planning

Scientific analysis
Medical diagnosis
Financial analysis

Expert Systems are concerned with the automation of these sorts of


tasks

4 questions
1) What are our underlying assumptions about
intelligence?
2) What kinds of techniques will be useful for
solving AI problems?
3) At what level of detail, if at all, are we trying to
model human intelligence?
4) How will we know when we have succeeded in
building an intelligent program?

1) What are our underlying assumptions about


intelligence?
The Physical Symbol System: consists of...
symbols which are physical patterns
Symbol structure a number of instances/tokens of
symbols related in some physical way
Processes which operate on expressions to produce other
expressions.
(creation, modification, reproduction, destruction)

A Physical symbol system is a machine that produces


through time an evolving collection of symbol
structures.

The PSS Hypothesis:A PSS has the necessary and sufficient means
for general intelligent action.

Importance of PSS?
Is a significant theory of nature of human intelligence
Forms the basis of belief that if is possible to build
programs that can perform intelligent tasks

2) What kinds of techniques will be useful for solving


AI problems?
There are several Techniques, for the solution of a variety of problems
Intelligence requires knowledge, which possesses the following
?
s
properties
s
e
s
s
o
p
it is voluminous.
e
g
d
e
l
w
it is hard to characterize accurately.
o
n
k
s
e
o
It is constantly changing.
d
s
e
g being organized in a way that corresponds
a
t
It differs fromadata
by
n
v
d
a
t dis to the ways it will be used.

Wha

AI technique?
is a method that exploits knowledge that should
be represented in such a way that

s
m
e
l
Otherwise called as data
b
o
r
p
I provide it.
It can be understood by people whoAmust
y
b
It can easily be modified.se-to
d
correct errors to reflect changes
o
p
it can be used insgreat
m
many situations.
i
t
n
i
a
It can be
used
to help overcome its own sheer bulk by
r
t
s
n
helping
o
C to narrow the range of possibilities that must
The knowledge captures generalizations.

usually be considered.

Introductory Problem:

Tic-Tac-Toe
Question answering
Series of solutions Increase in
Their complexity
Their use of generalizations
The clarity of their knowledge
The extensibility of their approach.

Introductory Problem:

Tic-Tac-Toe

1 2 3
4 5 6
7 8 9

Introductory Problem:

Tic-Tac-Toe

X
X
o
Blank /

Introductory Problem:

Tic-Tac-Toe

Program 1:
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.

Introductory Problem:
Comments:

Tic-Tac-Toe

1. Efficient in terms of time


2. A lot of space to store the Move-Table.
3. A lot of work to specify all the entries in the
4.

Move-Table.
Difficult to extend.

Introductory Problem:

Tic-Tac-Toe

Program 2:
Turn = 1
Turn = 2
Turn = 3
Turn = 4
.......

Go(1)
If Board[5] is blank, Go(5), else Go(1)
If Board[9] is blank, Go(9), else Go(3)
If Posswin(X) 0, then
Go(Posswin(X))

Introductory Problem:

Tic-Tac-Toe

Comments:

1. Efficient in terms of space


2. Not efficient in time, as it has to check several
3.
4.

conditions before making each move.


Easier to understand the programs strategy.
Hard to generalize.(3D tic-tac-toe)

Introductory Problem:
Program 2:

Tic-Tac-Toe

Magic square

8 3 4
1 5 9
6 7 2

15 (8 + 5)

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.

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.

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.

Introductory Problem:Question Answering


Mary went shopping for a new coat. She found a
red one she really liked. When she got it home,
she discovered that it went perfectly with her
favourite dress.
Q1: What did Mary go shopping for?
Q2: What did Mary find that she liked?
Q3: Did Mary buy anything?

Introductory Problem:Question Answering


Program 1:
1. Match predefined templates to questions to generate
text patterns.
2. Match text patterns to input texts to get answers.
What did X Y

What did Mary go shopping for?

Mary go shopping for Z


Z = a new coat

Introductory Problem:Question Answering


Program 2:
Structured representation of sentences:
Event2:
instance:
tense:
agent:
object:

Finding
Past
Mary
Thing 1

Thing1:
instance:
colour:

Coat
Red

Introductory Problem:Question Answering


Program 3:
Background world knowledge:
C finds M
C leaves L

C buys M
C leaves L
C takes M

What are 3 important AI techniques ?


Basic techniques that used throughout AI
1) Search
It is the best way so far as no better way has been found to
solve the problems and it is also a frame work that direct
techniques can be embedded.
2) Use Of Knowledge
It is a way of finding solutions for complicated problems by
manipulating the structures of the objects that are involved.
3) Abstraction
Finds a way which separates the more important aspects
and modifications from the unimportant ones that would
otherwise confuse any process.

What are the advantages of programs that achieve the 3 techniques


(Search , Use Of Knowledge and abstraction) over those that do not ?
1) By exploiting these techniques the programs are less
delicate. They are less likely to be thrown off completely
by a small disturbance in their input.
2) The knowledge of the programs can easily be
understood by people.
3) These techniques can be used for larger problems
where more direct methods fail.

3) At what level of detail are we trying to model


human intelligence?
AI projects are motivated by 2 goals

Goal 1:
Trying to produce programs that do the tasks the same way
people do.

Goal 2:
Attempting to produce programs that simply do the tasks in
whatever way appears easiest.

Building programs that perform tasks the way people do can be divided
into 2 classes. What are those 2 classes ?

The first class


Programs, to solve problems that do not really fit our definition of an
AI task.
Example: of this class of program is the Elementry Perceiver and
Memorizer (EPAM) ,
which its task is to memorize connected pairs of nonsense
syllables. Memorizing pairs of nonsense syllables is easy for a
computer to do, by just inputing them and to recalling a response
syllable by giving its associated syllable and the computer simply
scans the associated syllable and responds with the one stored
next to it.
In contrast this is a very difficult task for people to do. Many people
find this class very uninteresting, however these programs are useful
for psychologists who want to test theories of human performance.

The second class


Programs, to solve problems that really fall within our definition of
AI tasks

What are the reasons that we might want to model human


performance at AI tasks ?

1) To test psychological theories of human performance.


2) To enable computers to understand human reasoning.
3) To enable people to understand computer reasoning.
4) To accomplish what knowledge we can gather from
people.

4) How will we know when we have succeeded in


building an intelligent program?
``Turing test''
The test involves a human communicating with a
human and with a computer in other rooms, using a computer
for the communication.
The first human can ask the other human/computer
any questions they like, including very subjective questions
like ``What do you think of this Poem''. If the computer
answers so well that the first human can't tell which of the
two others is human, then we say that the computer is
intelligent.

Imitation Game

Human

Human Interrogator
AI System

Can the achievement of AI tasks be measured ?


ans:

YES.

Often it is possible to get a fairly precise and


correct measure of the acheivement of a program.

For example: just as human players can possess a CHESS


rating, programs can do the same. The chess rating for
programs is based on the rating of players whom the program
can beat. Already programs have possessed chess ratings
higher than the great majority of human players.
For other problem areas, not such a precise measure of a programs
acheivement can be measured.

For example: A program called DENDRAL that analyzes


organic compounds to identify their structure. It is very
difficult to posses exact measure of DENDRAL's level of
acheivement in comparison to human chemists, however this
program has produced analyses that have been published as
original research results hence it is definately performing
adequately.

What are AI's most serious dilemmas ?

1) If an AI system wants to handle anything except small


problems then it must contain a lot of knowledge.
2) As time goes by, the amount of knowledge keeps
growing and it becomes difficult to access the
appropriate things when needed so everytime more
knowledge must be added to help and then we shall
have even more knowledge to handle so we keep
adding on more and more knowledge.

AI Programming languages?
LISP (List Processing)
PROLOG (Programming in Logic)

e
h
T

d
n
E

What is AI?
Thinking humanly

Thinking rationally

Acting humanly

Acting rationally

Acting Humanly: The Turing Test


Alan Turing (1912-1954)
Computing Machinery and Intelligence
Imitation Game

(1950)

Human
Interrogator

Huma
n

AI
System

Thinking Humanly: Cognitive


Modelling
Requires testable theories of the workings of the human
mind: cognitive science.
(psychology + linguistics + AI)

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.

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.

Acting Rationally
Acting so as to achieve ones goals, given ones
beliefs.

Does not necessarily involve thinking.


Advantages:
More general than the laws of thought approach.
More amenable to scientific development than
human-based approaches.

Você também pode gostar