Artificial Intelligence

<<< Previous Introduction Next >>>

Artificial Intelligence (CS607)
Artificial Intelligence
1 Introduction
This booklet is organized as chapters that elaborate on various concepts of
Artificial Intelligence. The field itself is an emerging area of computer sciences
and a lot of work is underway in order to mature the concepts of this field.
In this booklet we will however try to envelop some important aspects and basic
concepts which will help the reader to get an insight into the type of topics that
Artificial Intelligence deals with.
We have used the name of the field i.e. Artificial Intelligence (commonly referred
as AI) without any explanation of the name itself. Let us now look into a simple
but comprehensive way to define the field.
To define AI, let us first try to understand that what is Intelligence?
1.1 What is Intelligence?
If you were asked a simple question; how can we define Intelligence, many of
you would exactly know what it is but most of you won't exactly be able to define
it. Is it something tangible? We all know that it does exist but what actually it is.
Some of us will attribute intelligence to living beings and would be of the view that
all living species are intelligent. But how about these plants and tress, they are
living species but are they also intelligent? So can we say that Intelligence is a
trait of some living species? Let us try to understand the phenomena of
intelligence by using a few examples.
Consider the following image where a mouse is trying to search a maze in order
to find its way from the bottom left to the piece of cheese in the top right corner of
the image.
This problem can be considered as a common real life problem which we deal
with many times in our life, i.e. finding a path, may be to a university, to a friends
house, to a market, or in this case to the piece of cheese. The mouse tries
various paths as shown by arrows and can reach the cheese by more than one
path. In other words the mouse can find more than one solutions to this problem.
The mouse was intelligent enough to find a solution to the problem at hand.
Hence the ability of problem solving demonstrates intelligence.
Let us consider another problem. Consider the sequence of numbers below:
1, 3, 7, 13, 21, ___
4
Artificial Intelligence (CS607)
If you were asked to find the next number in the sequence what would be your
even number to the" i.e. if we add 2 to 1 we get 3, then we add 4 to 3 we get 7,
then we get 6 to 7 we get 13, then we add 8 to 13 we get 21 and finally if we'll
little bit intelligence. The characteristic of intelligence comes in when we try to
solve something, we check various ways to solve it, we check different
combinations, and many other things to solve different problems. All this thinking,
this memory manipulation capability, this numerical processing ability and a lot of
other things add to ones intelligence.
All of you have experienced your college life. It was very easy for us to look at the
timetable and go to the respective classes to attend them. Not even caring that
how that time table was actually developed. In simple cases developing such a
timetable is simple. But in cases where we have 100s of students studying in
different classes, where we have only a few rooms and limited time to schedule
all those classes. This gets tougher and tougher. The person who makes the
timetable has to look into all the time schedule, availability of the teachers,
availability of the rooms, and many other things to fit all the items correctly within
a fixed span of time. He has to look into many expressions and thoughts like "If
room A is free AND teacher B is ready to take the class AND the students of the
class are not studying any other course at that time" THEN "the class can be
scheduled". This is a fairly simple one, things get complex as we add more and
more parameters e.g. if we were to consider that teacher B might teach more
than one course and he might just prefer to teach in room C and many other
things like that. The problem gets more and more complex. We are pretty much
sure than none of us had ever realized the complexity through which our teachers
go through while developing these schedules for our classes. However, like we
know such time tables can be developed. All this information has to reside in the
developer's brain. His intelligence helps him to create such a schedule. Hence
the ability to think, plan and schedule demonstrate intelligence.
Consider a doctor, he checks many patients daily, diagnoses their disease gives
them medicine and prescribes them behaviors that can help them to get cured.
Let us think a little and try to understand that what actually he does. Though
checking a patient and diagnosing the disease is much more complex but we'll try
to keep our discussion very simple and will intentionally miss out stuff from this
discussion.
A person goes to doctor, tells him that he is not feeling well. The doctor asks him
a few questions to clarify the patient's situation. The doctor takes a few
measurements to check the physical status of the person. These measurements
might just include the temperature (T), Blood Pressure (BP), Pulse Rate (PR) and
things like that. For simplicity let us consider that some doctor only checks these
measurements and tries to come up with a diagnosis for the disease. He takes
these measurements and based on his previous knowledge he tries to diagnose
the disease. His previous knowledge is based on rules like: "If the patient has a
high BP and normal T and normal PR then he is not well". "If only the BP is
normal then what ever the other measurements may be the person should be
healthy", and many such other rules.
5
Artificial Intelligence (CS607)
The key thing to notice is that by using such rules the doctor might classify a
person to be healthy or ill and might as well prescribe different medicines to him
using the information observed from the measurements according to his previous
knowledge. Diagnosing a disease has many other complex information and
observations involved, we have just mentioned a very toy case here. However,
the doctor is actually faced with solving a problem of diagnosis having looked at
some specific measurements. It is important to consider that a doctor who would
have a better memory to store all this precious knowledge, better ability of
retrieving the correct portion of the knowledge for the correct patient will be better
able to classify a patient. Hence, telling us that memory and correct and
efficient memory and information manipulation also counts towards ones
intelligence.
Things are not all that simple. People don't think about problems in the same
manner. Let us give you an extremely simple problem. Just tell us about your
height. Are you short, medium or tall? An extremely easy question! Well you
might just think that you are tall but your friend who is taller than you might say
that NO! You are not. The point being that some people might have such a
distribution in their mind that people having height around 4ft are short, around 5ft
are medium and around 6ft are tall. Others might have this distribution that
people having height around 4.5ft are short, around 5.5ft are medium and around
6.5ft are tall. Even having the same measurements different people can get to
completely different results as they approach the problem in different fashion.
Things can be even more complex when the same person, having observed
same measurements solves the same problem in two different ways and reaches
different solutions. But we all know that we answer such fuzzy questions very
efficiently in our daily lives. Our intelligence actually helps us do this. Hence the
ability to tackle ambiguous and fuzzy problems demonstrates intelligence.
Can you recognize a person just by looking at his/her fingerprint? Though we all
know that every human has a distinct pattern of his/her fingerprint but just by
looking at a fingerprint image a human generally can't just tell that this print must
be of person XYZ. On the other hand having distinct fingerprint is really important
information as it serves as a unique ID for all the humans in this world.
Let us just consider 5 different people and ask a sixth one to have a look at
different images of their fingerprints. We ask him to somehow learn the patterns,
which make the five prints distinct in some manner. After having seen the images
a several times, that sixth person might get to find something that is making the
prints distinct. Things like one of them has fever lines in the print, the other one
has sharply curved lines, some might have larger distance between the lines in
the print and some might have smaller displacement between the lines and many
such features. The point being that after some time, which may be in hours or
days or may be even months, that sixth person will be able to look at a new
fingerprint of one of those five persons and he might with some degree of
accuracy recognize that which one amongst the five does it belong. Only with 5
people the problem was hard to solve. His intelligence helped him to learn the
features that distinguish one finger print from the other. Hence the ability to
learn and recognize demonstrates intelligence.
6
Artificial Intelligence (CS607)
Let us give one last thought and then will get to why we have discussed all this. A
lot of us regularly watch television. Consider that you switch off the volume of
your TV set. If you are watching a VU lecture you will somehow perceive that the
person standing in front of you is not singing a song, or anchoring a musical show
or playing some sport. So just by observing the sequence of images of the
person you are able to perceive meaningful information out of the video. Your
intelligence helped you to perceive and understand what was happening on the
TV. Hence the ability to understand and perceive demonstrates intelligence.
1.2 Intelligent Machines
The discussion in the above section has a lot of consequences when we this it
with a different perspective. Let us show you something really interesting now
and hence informally define the field of Artificial Intelligence at the same time.
What if?
A machine searches through a mesh and finds a path?
A machine solves problems like the next number in the sequence?
A machine develops plans?
A machine diagnoses and prescribes?
A machine recognizes fingerprints?
A machine understands?
A machine perceives?
A machine does MANY MORE SUCH THINGS!
A machine behaves as HUMANS do? HUMANOID!!!
We will have to call such a machine Intelligent. Is this real or natural
intelligence? NO! This is Artificial Intelligence.
1.3 Formal Definitions for Artificial Intelligence
In their book "Artificial Intelligence: A Modern Approach" Stuart Russell and Peter
Norvig comment on artificial intelligence in a very comprehensive manner. They
present the definitions of artificial intelligence according to eight recent textbooks.
These definitions can be broadly categorized under two themes. The ones in the
left column of the table below are concerned with thought process and
reasoning, where as the ones in the right column address behavior.
Systems that think like
Systems that act like
humans
humans
"The exciting new effort
"The  art  of  creating
to make computers think
machines that perform
... machines with minds,
functions  that  require
in the full and literal
intelligence
when
sense"
(Haugeland,
performed  by  people"
1985)
(Kurzweil 1990)
"[The  automation  of]
"The study of how to
activities
that
we
make  computers  do
associate with human
things at which, at the
thinking, activities such
moment,  people  are
7
Artificial Intelligence (CS607)
as  decision  making,
better" (Rich and Knight,
problem
solving,
1991)
learning ..." (Bellman,
1978)
"The study of mental
"A field of study that
faculties through the use
seeks to explain and
of
computational
emulate
intelligent
models" (Charniak and
behavior  in  terms  of
McDermott)
computational
processes"  (Schalkoff,
1990)
"The
study
of
"The branch of computer
computation that make it
science
that
is
possible  to  perceive
concerned
with
the
reason
and
act"
automation of intelligent
(Winston 1992)
behavior"  (Luger  and
Stubblefield, 1993)
To make computers think like humans we first need to devise ways to determine
that how humans think. This is not that easy. For this we need to get inside the
actual functioning of the human brain. There are two ways to do this:
Introspection: that is trying to catch out own thoughts as they go by.
Psychological Experiments: that concern with the study of science of
mental life.
Once we accomplish in developing some sort of comprehensive theory that how
humans think, only then can we come up with computer programs that follow the
same rules. The interdisciplinary field of cognitive science brings together
computer models from AI and experimental techniques from psychology to try to
construct precise and testable theories of the working of human mind.
The issue of acting like humans comes up when AI programs have to interact
with people or when they have to do something physically which human usually
do in real life. For instance when a natural language processing system makes a
dialog with a person, or when some intelligent software gives out a medical
diagnosis, or when a robotic arm sorts out manufactured goods over a conveyer
belt and many other such scenarios.
Keeping in view all the above motivations let us give a fairly comprehensive
comment that Artificial Intelligence is an effort to create systems that can learn,
think, perceive, analyze and act in the same manner as real humans.
People have also looked into understanding the phenomena of Artificial
Intelligence from a different view point. They call this strong and weal AI.
Strong AI means that machines act intelligently and they have real conscious
minds. Weak AI says that machines can be made to act as if they are intelligent.
That is Weak AI treats the brain as a black box and just emulates its functionality.
While strong AI actually tries to recreate the functions of the inside of the brain as
opposed to simply emulating behavior.
8
Artificial Intelligence (CS607)
The concept can be explained by an example. Consider you have a very
intelligent machine that does a lot of tasks with a lot of intelligence. On the other
hand you have very trivial specie e.g. a cat. If you throw both of them into a pool
of water, the cat will try to save her life and would swim out of the pool. The
"intelligent" machine would die out in the water without any effort to save itself.
The mouse had strong Intelligence, the machine didn't. If the machine has strong
artificial intelligence, it would have used its knowledge to counter for this totally
new situation in its environment. But the machine only knew what we taught it or
in other wards only knew what was programmed into it. It never had the inherent
capability of intelligence which would have helped it to deal with this new
situation.
Most of the researchers are of the view that strong AI can't actually ever be
created and what ever we study and understand while dealing with the field of AI
is related to weak AI. A few are also of the view that we can get to the essence of
strong AI as well. However it is a standing debate but the purpose was to
introduce you with another aspect of thinking about the field.
1.4 History and Evolution of Artificial Intelligence
AI is a young field. It has inherited its ideas, concepts and techniques from many
disciplines like philosophy, mathematics, psychology, linguistics, biology etc.
From over a long period of traditions in philosophy theories of reasoning and
learning have emerged. From over 400 years of mathematics we have formal
theories of logic, probability, decision-making and computation. From psychology
we have the tools and techniques to investigate the human mind and ways to
represent the resulting theories. Linguistics provides us with the theories of
structure and meaning of language. From biology we have information about the
network structure of a human brain and all the theories on functionalities of
different human organs. Finally from computer science we have tools and
concepts to make AI a reality.
1.4.1 First recognized work on AI
The first work that is now generally recognized as AI was done by Warren
McCulloch and Walter Pitts (1943). Their work based on three sources:
The basic physiology and function of neurons in the human brain
The prepositional logic
The Turing's theory of computation
The proposed an artificial model of the human neuron. Their model proposed a
human neuron to be a bi-state element i.e. on or off and that the state of the
neuron depending on response to stimulation by a sufficient number of
neighboring neurons. They showed, for example, that some network of
connected neurons could compute any computable function, and that all the
logical connectives can be implemented by simple net structures. They also
suggested that suitably connected networks can also learn but they didn't pursue
this idea much at that time. Donald Hebb (1949) demonstrated a simple updating
rile for the modifying the connection strengths between neurons, such that
learning could take place.
9
Artificial Intelligence (CS607)
1.4.2 The name of the field as "Artificial Intelligence"
In 1956 some of the U.S researchers got together and organized a two-month
workshop at Dartmouth. There were altogether only 10 attendees. Allen Newell
and Herbert Simon actually dominated the workshop. Although all the
researchers had some excellent ideas and a few even had some demo programs
like checkers, but Newell and Herbert already had a reasoning program, the
Logic Theorist. The program came up with proofs for logic theorems. The
Dartmouth workshop didn't lead to any new breakthroughs, but it did all the major
people who were working in the field to each other. Over the next twenty years
these people, their students and colleagues at MIT, CMU, Stanford and IBM,
dominated the field of artificial intelligence. The most lasting and memorable thing
that came out of that workshop was an agreement to adopt the new name for the
field: Artificial Intelligence. So this was when the term was actually coined.
1.4.3 First program that though humanly
In the early years AI met drastic success. The researchers were highly motivated
to try out AI techniques to solve problems that were not yet been solved. Many of
them met great successes. Newell and Simon's early success was followed up
with the General Problem Solver. Unlike Logic Theorist, this program was
developed in the manner that it attacked a problem imitating the steps that
human take when solving a problem. Though it catered for a limited class of
problems but it was found out that it addressed those problems in a way very
similar to that as humans. It was probably the first program that imitated human
thinking approach.
1.4.4 Development of Lisp
In 1958 In MIT AI Lab, McCarthy defined the high-level language Lisp that
became the dominant AI programming language in the proceeding years. Though
McCarthy had the required tools with him to implement programs in this language
but access to scarce and expensive computing resources were also a serious
problem. Thus he and other researchers at MIT invented t8ime sharing. Also in
1958 he published a paper titled Programs with Common Sense, in which he
mentioned Advice Taker a hypothetical that can be seen as the first complete AI
system. Unlike the other systems at that time, it was to cater for the general
knowledge of the world. For example he showed that how some simple rules
could help a program generate a plan to drive to an airport and catch the plane.
1.4.5 Microworlds
Marvin Minsky (1963), a researcher at MIT supervised a number of students who
chose limited problems that appeared to require intelligence to solve. These
limited domains became known as Microworlds. Some of them developed
programs that solved calculus problems; some developed programs, which were
able to accept input statements in a very restricted subset of English language,
and generated answers to these statements. An example statement and an
Statement:
If Ali is 2 years younger than Umar and Umar is 23 years old. How old is Ali?
Ali is 21 years old.
10
Artificial Intelligence (CS607)
In the same era a few researchers also met significant successes in building
neural networks but neural networks will be discusses in detail in the section titled
"Learning" in this book.
1.4.6 Researchers started to realize problems
In the beginning the AI researchers very confidently predicted their up coming
successes. Herbert Simon in 1957 said:
It is not my aim to surprise of shock you -- but the simplest way I can
summarize is to say that there are now in the world machines that think,
that learn and that create. Moreover, their ability to do these things is going
to increase rapidly until -- in a visible future ­ the range of problems they
can handle will be coextensive with the range to which human mind has
been applied
In 1958 he predicted that computers would be chess champions, and an
important new mathematical theorem would be proved by machine. But over the
years it was revealed that such statements and claims were really optimistic. A
major problem that AI researchers started to realize was that though their
techniques worked fairly well on one or two simple examples but most of them
turned out to fail when tried out on wider selection of problems and on more
One of the problems was that early programs often didn't have much knowledge
of their subject matter, and succeeded by means of simple syntactic
manipulations e.g. Weizenbaum's ELIZA program (1965), which could apparently
engage in serious conversation on any topic, actually just borrowed and
manipulated the sentences typed into it by a human. Many of the language
translation programs tried to translate sentences by just a replacement of words
without having catered for the context in which they were used, hence totally
failing to maintain the subject matter in the actual sentence, which was to be
translated. The famous retranslation of "the spirit is willing but the flesh is
weak" as "the vodka is good but the meat is rotten" illustrates the difficulties
encountered.
Second kind of difficulty was that many problems that AI was trying to solve were
intractable. Most of the AI programs in the early years tried to attack a problem by
finding different combinations in which a problem can be solved and then
combined different combinations and steps until the right solution was found.
This didn't work always. There were many intractable problems in which this
approach failed.
A third problem arose because of the fundamental limitations on the basic
structures being used to generate intelligent behavior. For example in 1969,
Minsky and Papert's book Perceptrons proved that although perceptrons could
be shown to learn anything they were capable of representing, they could
represent very little.
11
Artificial Intelligence (CS607)
However, in brief different happenings made the researchers realize that as they
tried harder and more complex problem the pace of their success decreased so
they now refrained from making highly optimistic statements.
1.4.7 AI becomes part of Commercial Market
Even after realizing the basic hurdles and problems in the way of achieving
success in this field, the researchers went on exploring grounds and techniques.
The first successful commercial expert system, R1, began operation at Digital
Equipment Corporation (McDermott, 1982). The program basically helped to
configure the orders for new computer systems. Detailed study of what expert
systems are will be dealt later in this book. For now consider expert systems as a
programs that somehow solves a certain problem by using previously stored
information about some rules and fact of the domain to which that problem
belongs.
In 1981, the Japanese announced the "Fifth Generation" project, a 10-year plan
to build intelligent computers running Prolog in much the same way that ordinary
computers run the machine code. The project proposed to achieve full-scale
natural language understanding along with many other ambitious goals.
However, by this time people began to invest in this field and many AI projects
got commercially funded and accepted.
1.4.8 Neural networks reinvented
Although computer science had rejected this concept of neural networks after
Minsky and Papert's Perceptrons book, but in 1980s at least four different
groups reinvented the back propagation learning algorithm which was first found
in 1969 by Bryson and Ho. The algorithm was applied to many learning problem
in computer science and the wide spread dissemination of the results in the
collection Parallel Distributed Processing (Rumelhart and McClelland, 1986)
caused great excitement.
People tried out the back propagation neural networks as a solution to many
learning problems and met great success.
12
Artificial Intelligence (CS607)
The diagram above summarizes the history and evolution of AI in a
comprehensive shape.
1.5 Applications
Artificial finds its application is a lot of areas not only related to computer
sciences but many other fields as well. We will briefly mention a few of the
application areas and throughout the content of this booklet you will find various
applications of the field in detail later.
Many information retrieval systems like Google search engine uses artificially
intelligent crawlers and content based searching techniques to efficiency and
accuracy of the information retrieval.
A lot of computer based games like chess, 3D combat games even many arcade
games use intelligent software to make the user feel as if the machine on which
that game is running is intelligent.
Computer Vision is a new area where people are trying to develop the sense of
visionary perception into a machine.  Computer vision applications help to
establish tasks which previously required human vision capabilities e.g.
recognizing human faces, understanding images and to interpret them, analyzing
medical scan and innumerable amount of other tasks.
Natural language processing is another area which tries to make machines speak
and interact with humans just like humans themselves. This requires a lot from
the field of Artificial Intelligence.
13
Artificial Intelligence (CS607)
Expert systems form probably the largest industrial applications of AI. Software
like MYCIN and XCON/R1 has been successfully employed in medical and
manufacturing industries respectively.
Robotics again forms a branch linked with the applications of AI where people are
trying to develop robots which can be rather called as humanoids. Organizations
have developed robots that act as pets, visitor guides etc.
In short there are vast applications of the field and a lot of research work is going
on around the globe in the sub-branches of the field. Like mentioned previously,
during the course of the booklet you will find details of many application of AI.
1.6 Summary
Intelligence can be understood as a trait of some living species
Many factors and behaviors contribute to intelligence
Intelligent machines can be created
To create intelligent machines we first need to understand how the real
brain functions
Artificial intelligence deals with making machines think and act like
humans
It is difficult to give one precise definition of AI
History of AI is marked by many interesting happenings through which the