Professional Documents
Culture Documents
Unit-I: Cs8691 - Artificial Intelligence
Unit-I: Cs8691 - Artificial Intelligence
UNIT-I
UNIT I INTRODUCTION 9
Introduction–Definition - Future of Artificial Intelligence – Characteristics of
Intelligent Agents– Typical Intelligent Agents – Problem Solving Approach to
Typical AI problems.
1.1 INTRODUCTION
1.1.1 What is AI?
1.1.2 The foundations of Artificial Intelligence.
1.1.3 The History of Artificial Intelligence
1.1.4 The state of art
-----------------------------------------------------------------------------------------------------------------------
1.1 Introduction to AI
The computer passes the test if a human interrogator,after posing some written questions,cannot tell
whether the written responses come from a person or not. Programming a computer to pass ,the
computer need to possess the following capabilities :
Brains and digital computers perform quite different tasks and have different properties. Tablere 1.1
shows that there are 10000 times more neurons in the typical human brain than there are gates in
the CPU of a typical high-end computer. Moore’s Law predicts that the CPU’s gate count will equal
the brain’s neuron count around 2020.
Psycology(1879 – present)
The origin of scientific psychology are traced back to the wok if German physiologist Hermann von
Helmholtz(1821-1894) and his student Wilhelm Wundt(1832 – 1920)
In 1879,Wundt opened the first laboratory of experimental psychology at the university of Leipzig.
In US,the development of computer modeling led to the creation of the field of cognitive science.
The field can be said to have started at the workshop in September 1956 at MIT.
Linguistics (1957-present)
Modem linguistics and AI, then, were "born" at about the same time, and grew up
together, intersecting in a hybrid field called computational linguistics or natural language
processing.
Figure 1.1 The Tom Evan’s ANALOGY program could solve geometric analogy problems as
shown.
o A human agent has eyes, ears, and other organs for sensors and hands, legs, mouth, and other body
parts for actuators.
o A robotic agent might have cameras and infrared range finders for sensors and various motors for
actuators.
o A software agent receives keystrokes, file contents, and network packets as sensory inputs and acts
on the environment by displaying on the screen, writing files, and sending network packets.
Figure 1.2 Agents interact with environments through sensors and actuators.
Percept
We use the term percept to refer to the agent's perceptual inputs at any given instant.
Percept Sequence
An agent's percept sequence is the complete history of everything the agent has ever perceived.
Agent function
Mathematically speaking, we say that an agent's behavior is described by the agent function
that maps any given percept sequence to an action.
Agent program
Internally, The agent function for an artificial agent will be implemented by an agent program. It is
important to keep these two ideas distinct. The agent function is an abstract mathematical
description; the agent program is a concrete implementation, running on the agent architecture.
To illustrate these ideas, we will use a very simple example-the vacuum-cleaner world
shown in Figure 1.3. This particular world has just two locations: squares A and B. The vacuum
agent perceives which square it is in and whether there is dirt in the square. It can choose to move
left, move right, suck up the dirt, or do nothing. One very simple agent function is the following: if
the current square is dirty, then suck, otherwise move to the other square. A partial tabulation of this
agent function is shown in Figure 1.4.
Figure 1.3 A vacuum-cleaner world with just two
locations.
Agent function
Rational Agent
A rational agent is one that does the right thing-conceptually speaking, every entry in
the table for the agent function is filled out correctly. Obviously, doing the right thing is
better than doing the wrong thing. The right action is the one that will cause the agent to be
most successful.
Performance measures
A performance measure embodies the criterion for success of an agent's behavior. When
an agent is plunked down in an environment, it generates a sequence of actions according
to the percepts it receives. This sequence of actions causes the environment to go through a
sequence of states. If the sequence is desirable, then the agent has performed well.
Rationality
What is rational at any given time depends on four things:
o The performance measure that defines the criterion of success.
o The agent's prior knowledge of the environment.
o The actions that the agent can perform.
o The agent's percept sequence to date.
Task environments
We must think about task environments, which are essentially the "problems" to which rational agents are
the "solutions."
Specifying the task environment
The rationality of the simple vacuum-cleaner agent, needs specification of
o the performance measure
o the environment
o the agent's actuators and sensors.
PEAS
All these are grouped together under the heading of the task environment.
We call this the PEAS (Performance, Environment, Actuators, Sensors) description.
In designing an agent, the first step must always be to specify the task environment as fully
as possible.
Agent Type Performance Environments Actuators Sensors
Measure
Taxi driver Safe: fast, legal, Roads,other Steering,accelerator, Cameras,sonar,
comfortable trip, traffic,pedestrians, brake, Speedometer,GPS,
maximize profits customers Signal,horn,display Odometer,engine
sensors,keyboards,
accelerometer
Figure 1.5 PEAS description of the task environment for an automated taxi.
Figure 1.6 Examples of agent types and their PEAS descriptions.
Agent programs
The agent programs all have the same skeleton: they take the current percept as input from the
sensors and return an action to the actuatom6 Notice the difference between the agent program,
which takes the current percept as input, and the agent function, which takes the entire percept
history. The agent program takes just the current percept as input because nothing more is available
from the environment; if the agent's actions depend on the entire percept sequence, the agent will
have to remember the percepts.
Figure 1.8 The TABLE-DRIVEN-AGENT program is invoked for each new percept and
returns an action each time.
Drawbacks:
• Table lookup of percept-action pairs defining all possible condition-action rules necessary
to interact in an environment
• Problems
– Too big to generate and to store (Chess has about 10^120 states, for example)
– No knowledge of non-perceptual parts of the current state
– Not adaptive to changes in the environment; requires entire table to be updated if
changes occur
– Looping: Can't make actions conditional
The simplest kind of agent is the simple reflex agent. These agents select actions on the basis of the
current percept, ignoring the rest of the percept history. For example, the vacuum agent whose agent function
is tabulated in Figure 1.10 is a simple reflex agent, because its decision is based only on the current location
and on whether that contains dirt.
o Select action on the basis of only the current percept.
E.g. the vacuum-agent
o Large reduction in possible percept/action situations(next page).
o Implemented through condition-action rules
If dirty then suck
A Simple Reflex Agent: Schema
Figure 1.10 A simple reflex agent. It acts according to a rule whose condition matches
the current state, as defined by the percept.
Figure 1.11 The agent program for a simple reflex agent in the two-state vacuum environment. This
program implements the agent function tabulated in the figure 1.4.
Characteristics
o Only works if the environment is fully observable.
o Lacking history, easily get stuck in infinite loops
o One solution is to randomize actions
o
Model-based reflex agents
The most effective way to handle partial observability is for the agent to keep track of the part of the
world it can't see now. That is, the agent should maintain some sort of internal state that depends
on the percept history and thereby reflects at least some of the unobserved aspects of the current
state.
Updating this internal state information as time goes by requires two kinds of knowledge to be
encoded in the agent program. First, we need some information about how the world evolves
independently of the agent-for example, that an overtaking car generally will be closer behind than
it was a moment ago. Second, we need some information about how the agent's own actions affect
the world-for example, that when the agent turns the steering wheel clockwise, the car turns to the
right or that after driving for five minutes northbound on the freeway one is usually about five miles
north of where one was five minutes ago. This knowledge about "how the world working - whether
implemented in simple Boolean circuits or in complete scientific theories-is called a model of the
world. An agent that uses such a MODEL-BASED model is called a model-based agent.
Figure 1.13 Model based reflex agent. It keeps track of the current state of the world using an internal
model. It then chooses an action in the same way as the reflex agent.
Goal-based agents
Knowing about the current state of the environment is not always enough to decide what to do. For example, at a
road junction, the taxi can turn left, turn right, or go straight on. The correct decision depends on where the taxi is
trying to get to. In other words, as well as a current state description, the agent needs some sort of goal
information that describes situations that are desirable-for example, being at the passenger's destination. The agent
program can combine this with information about the results of possible actions (the same information as
was used to update internal state in the reflex agent) in order to choose actions that achieve the goal. Figure
1.13 shows the goal-based agent's structure.
Figure 1.14 A goal based agent
Utility-based agents
Goals alone are not really enough to generate high-quality behavior in most environments. For
example, there are many action sequences that will get the taxi to its destination (thereby achieving
the goal) but some are quicker, safer, more reliable, or cheaper than others. Goals just provide a
crude binary distinction between "happy" and "unhappy" states, whereas a more general
performance measure should allow a comparison of different world states according to exactly
how happy they would make the agent if they could be achieved. Because "happy" does not sound
very scientific, the customary terminology is to say that if one world state is preferred to another,
then it has higher utility for the agent.
Figure 1.15 A model-based, utility-based agent. It uses a model of the world, along with
a utility function that measures its preferences among states of the world. Then it chooses the
action that leads to the best expected utility, where expected utility is computed by averaging
over all possible outcome states, weighted by the probability of the outcome.
• Certain goals can be reached in different ways.
– Some are better, have a higher utility.
• Utility function maps a (sequence of) state(s) onto a real number.
• Improves on goals:
– Selecting between conflicting goals
– Select appropriately between several goals based on likelihood of success.