ARTIFICIAL INTELLIGENCE
Prescribed Textbook:
Artificial Intelligence, A modern approach – 2nd edition by Stuart Russell and Peter Norvig
Definition of knowledge –
Large collection of symbols is called as data.
Large collection of data is called as information.
If you have lot of information it is knowledge.
If you have lot of knowledge then you are an intelligent.
If you are an intelligent person then you have wisdom.
Knowledge is defined as the piece of information that helps in decision-making.
Intelligence can be defined as the ability to draw useful inferences from the available knowledge.
Knowledge Relation: Wisdom
Intelligence
Knowledge
Information
Data
Symbol
The following are characteristics in a list of essential abilities for intelligence.
1. To respond to situations very flexibility.
2. To make sense out of ambiguous or contradictory messages.
3. To recognize the relative importance of different elements of a situation.
4. To find similarities between situations despite differences, which may separate them.
5. To draw distinctions between situations despite similarities, which may link them.
Turing Test - Turing proposed an „imitation game‟ which was later modified to Turing test. In the
imitation game the players are three humans- a male, a female and an interrogator. The interrogator who
is shielded from the other two, asks questions to both of them and based on their typewritten answers
determines who is female. The aim of the male is to imitate the female and deceive the interrogator and
the role of female is to provide replies that would inform the interrogator about her true sex.
Room A Room B
Room C
Turing proposed that if the human interrogator in Room C is not able to identify who is in Room A or in
Room B, then the machine possesses intelligence. Turing considered this is a sufficient test for attributing
thinking capacity to a machine. As of today, Turing test is the ultimate test a machine must pass in order
to be called as intelligent test.
Importance of Turing test:
It gives a standard for determining intelligence.
It also helps in eliminating any bias in favor of living organism, because the interrogator focuses slowly
on the content of the answers to the questions.
Definition of AI –
Study of how to make computer do things
(or)
Study of computations that is possible to perceive, reason and action
(or)
Part of Computer Science concerned with designing intelligent systems that exhibit the
characteristics we associate with intelligence in human behavior.
(or)
AI is defined as the study of agents that receive percepts from the environment and perform
actions. Each such agent implements a function that maps percept sequences to actions.
Areas of AI research –
Expert system - An expert system is a computer program designed to act as an expert in a particular
domain also known as knowledge based system. An expert system is a set of programs that manipulate
encoded knowledge to solve problems in a specialized domain that normally requires human expertise.
The system performs their inference through symbolic computations.
Expert systems are currently designed to assist experts not to replace them. They have
proven to be useful in diverse areas such as medical diagnosis, chemical analysis, and geological
exploration and computer system configuration.
Natural Language processing - The goal of natural language processing is to enable people and
computers to communicate in a natural (human) language such as English rather in a computer language.
The field of N.L.P is divided into 2 sub fields:
1. Natural language understanding which investigates methods of allowing the computer to comprehend
instructions given in ordinary English so computers can understand people more easily.
2. Natural-language generations, which strives to have, computers produce ordinary English language so
that people can understand computers more easily.
Speech recognition - The goal of speech recognition research is to allow computers to understand human
speech so that they can hear our voice and recognize the words. We are speaking speech recognition
research seeks to advance the goal of natural language processing by simplifying the process of
interactive communication between people and computers.
Computer Vision - The goal of computer vision research is to give computers this same facility for
understanding their surroundings.
Robotics - A robot is an electro mechanical device that can be programmed to perform manual tasks. The
robotic industries association formally defines a robot as “a re - programmable multi functional
manipulator designed to move material, parts, roots or specialized devices through variable programmed
motions for the performance of a variety of tasks”.
A robot that performs only the actions it has been pre programmed to perform is considered to be a
„dumb‟ robot processing no more intelligence.
An intelligent robot includes some kind of sensory apparatus such as a camera that allows it to respond to
changes in its environment, rather than just to allow instructions „mindlessly‟.
Intelligent Computer Assisted Instruction - AI methods are being applied to the development of
intelligent computer –assisted instruction in an attempt to create computerized “tutors” that shape their
teaching techniques to fit the learning patterns of individual students.
Automatic programming - The goal of automatic programming is to create special programs that act as
intelligent “tool” to assist programmers and expedite each phase of the programming process. The
ultimate aim of automatic programming is computer system that could develop programs by itself, in
response to and in accordance with the specifications of a program developer.
Planning and decision support - Intelligent planning programs are designed to provide active assistance
in the planning process and are expected to be particularly helpful to managers with decision-making
responsibilities.
3
From the perspective of goals AI can be viewed as part of engineering and part of science. The
engineering goal of AI is to solve real world problems using AI as an armamentarium of ideas
about presenting knowledge; using knowledge and assembling system explain various sorts of
intelligence.
Characteristics of AI problems:
1. The problems that AI tackles have combinational explosion of solutions.
2. AI programs manipulate symbolic information to a larger extent, in contrast to conventional programs,
which deal with numeric processing.
3. To cope with the combinational explosion of solutions, AI programs use heuristics to search tree.
4. In order to classify system as an AI program, the fundamental criterion is that it must have vast
quantities of knowledge must be represented in such a form that the system work on it can easily
manipulate it.
5. AI programs deal with real life problems to a large extent. They assist humans in taking right decisions.
Just a human expert has the capacity to handle uncertain, incomplete and irrelevant information.
6. A very vital characteristic of an AI program is its ability to learn.
Problems representation in AI:
Before a solution can be found, the prime condition is that the problem must be very precisely defined. To
build a system to solve a particular problem, we need to do four things.
1. Define the problem precisely: this definition must include precise specifications of what the
initial situations will be as well as what final situations constitute acceptable solutions to the
problem.
2. Analyze the problem.
3. Isolate and represent the last knowledge that is necessary to solve the problem.
4. Choose the last problem solving techniques and apply it to the particular problem.
The most common methods of problem representation in AI are
1. State space representation
2. Problem reduction
State space representation:
A set of all possible states for a given problem is known as the state space of the problem. State
space representations are highly beneficial in AI because they provide all possible states, operations and
goals. If the entire state space representation for a problem is given, it is possible to trace the path from
the initial state to the Goal State and identify the sequence of operators necessary for doing it. The major
deficiency of this method is that it is not possible to visualize all states for a given problem. To overcome
the deficiencies of this method, problem reduction technique comes handy.
Example1: Water
Boiled
Boiling Water
Added coffee Milk powder
Decoction Milk
Coffee
Added sugar
Palatable coffee
Problem Reduction: In this method a complex problem is broken down or decomposed into a set of
preemptive sub problems. Solutions for these preemptive subprograms are easily obtained. The solutions
for all the sub-problems collectively give the solution for the complex problem.
Example:
Evaluate (x2+3x+sin2xcos2x)dx
We can solve this by breaking down into smaller problems.
(X2 + 3x + sin2x cos2x) dx
x2 dx 3x dx sin2x cos2x dx
x3 /3 3 x2/2 dx (1-cos2x)cos2x dx
3 x2 /2 (cos2x – cos4x) dx
The individual values can be combined (Integrated) to get the final result.
What is AI?
Definitions of AI vary according to “thought process and reasoning” and “behavior”.
Thinking humanly - Cognitive modeling approach
Getting inside the actual working of human mind –
a) Introspection – catching our own thoughts
b) Psychological experiments.
Thinking rationally – the laws of thought approach
Laws of thought governed the operation of mind.
Acting humanly – Turing Test
While programming a computer to pass the Turing Test, it has to possess the following
capabilities –
- NLP to communicate successfully in English.
- Knowledge representation to store what it knows or hears
- Automated reasoning to use stored information
- Machine learning to adapt to new circumstances
Acting rationally – The rational agent approach
An agent is something that acts, that is operating under autonomous control, perceiving their
environment, persisting over a prolonged time period, adapting to change and being capable of
taking on another‟s goals. A rational agent is one that acts so as to achieve the best expected
outcome.
Study of AI as rational agent has 2 advantages –
a) It is more general than the laws of thought approach because correct inference is just one of
the several possible mechanisms for achieving rationality.
b) It is more amenable to scientific development than are approaches based on human behavior or
human thought because the standard of rationality is clearly defined and general.
Intelligent systems
AI is a combination of computer science, physiology, and philosophy. AI is a broad topic, consisting of
different fields, from machine vision to expert systems. John McCarthy was one of the founders of AI
field who started that AI is the science and engineering of making intelligent machines, especially
intelligent computer programs.
In brief, we can define ASD study of making computers do things intelligently. AI programs must have
capability and characteristics of Intelligence such as learning reasoning, inferencing, perceiving and
comprehending information. Understanding of AI: it requires an understanding of related terms such as
intelligence, knowledge, reasoning, cognition, learning, and a number of other computer related terms. AI
shows best on complex problems for which general principles do not help much, though there are a few
useful general principles.
There are two views of AI goals.
The first view is that AI is about duplicating what the (human) brain DOES (cognitive science).
The second view is that AI is about duplicating what the (human) brain should do, that is, doing things
logically or rationally.
In order to classify systems as intelligent, it is necessary to define intelligence. The earliest best method to
get the intelligence of a system was the turning test that was proposed by Alan Turing in 1950. Alan
Turing defined intelligent behavior as the ability to achieve human level performance in all cognitive
tasks, sufficient to fool an interrogator.
ELIZA
Eliza was a program that converts to user in English. People were amazed to see this program. The
program was able to convert about any subject, because it is stored subject information in data banks.
Another future of Eliza was its ability to pick up speech patterns from users questions and provide
response using those patterns.
Since then lot many versions of Aliza have been developed and are available on the internet. The main
characteristics of a Aliza are briefly mention here:
Simulation of Intelligence: These programs simulate intelligent behaviour quite effectively by
recognizing key words and phrases.
Quality of response: It is limited by the sophistication of the ways in which they can process the input text
at a syntactic level.
Coherence: Any sense of Intelligence depends strongly on the coherence of the conversation as judged by
the user.
Semantics: Such systems have no semantic representation of the content of either the user's input or the
reply.
Categorization of intelligent systems
In order to design intelligent systems, it is important to categorise these systems. These are four possible
categories of such systems.
system that think like humans
system that acts like humans
system that think rationally
system that acts rationally
System that thinks like human request cognitive modeling approaches. One has to know the functioning of
the brain and its mechanism for processing information. It is an area of cognitive science.
System that acts like human requires that the overall behavior of the system should be human like which
could be achieved by observation. Turning test is an example.
System which think rationally relies on logic rather than human to measure correctness. For thinking
rationally or logically, logical formulae and theories are used for synthesizing outcomes.
System that was rationally is the final category of intelligent system where by rational behavior we mean
doing the right thing.
Components of AI program
Any AI program should have knowledge base, and navigational capability which contains control strategy
and inference mechanism.
Knowledge base: AI programs should be learning in nature and update its knowledge accordingly.
Knowledge base generally consists of facts and rules.
Control strategy: It determines which rule to be applied. To know this rule, some heuristics or thumb rules
based on problem domain may be used.
Inference mechanism: it requires search through knowledge base and derives new knowledge using the
existing knowledge with the help of inference rules.
Foundations of AI –
Commonly used techniques and theories or rule based, fuzzy logic , neural networks, decision theory,
statistics, probability theory, genetic algorithms, etc. Since AI is interdisciplinary in nature, foundations of
AI in various fields such as:
Mathematics
Neuroscience
Control theory
Linguistics
Mathematics: AI systems used formal logical methods and Boolean logic, analysis of limits to what can
be computed, probability theory, uncertainty that forms the basis for most modern approaches to AI, fuzzy
logic etc.
Neuroscience: designs of medicine helps in studying the functioning of brains.
Control theory: machines can modify their behavior in response to the environment (sense/action loop).
Linguistics : speech demonstrates so much of human Intelligence.
Sub-areas of AI
AI is an interdisciplinary area having numerous diverse of fields.
knowledge representation models
theorem proving mechanisms
game playing methodologies
common sense reasoning dealing with uncertainty and decision making
learning models, inference techniques, pattern reorganization, search and matching, etc
logic (fuzzy, temporal, modal)
planning and scheduling
natural language understanding, speech recognization and understanding spoken utterances
computer vision
models for intelligent tutoring systems
robotics
data mining
expert problem solving
neutral networks, AI tools, etc
web agents
AI prehistory
Applications
AI finds applications in almost all areas of real life applications. Broadly speaking, business,
engineering, medicine, education and manufacturing are the main areas.
business: financial strategies, give advice
engineering: check design, offer suggestions to create new product, expert systems for all
Engineering applications
manufacturing: assembly, inspection, and maintenance
medicine: monitoring, diagnosing, and prescribing
education: in teaching
fraud detection
object identification
Space Shuttle scheduling
Information retrieval
Let us take an example of a two player game named Tic-Tac-Toe. We will see different approaches
that move toward being representation of AI techniques
Tic-Tac-Toe Game Playing
Let us consider Tic-Tac-Toe game problem and three approaches for solving it. It is a two player game
with one player marking O and other marking X, at their turn in the spaces in a
3x3 grid. The player who succeeds in placing the respective marks in any horizontal, vertical or diagonal
rows wins the [Link] we are considering one human player and the other player to be a computer
program. The objective to play this game using computer is to write a program which never losses. We
present here three approaches to play this game which increase in
complexity
use of generalisation
clarity of their knowledge
extensibility of their approach
Example-1: Tic-Tac-Toe
1.1 The first approach (simple)
The Tic-Tac-Toe game consists of a nine element vector called BOARD; it represents the numbers 1 to 9 in
three rows.
An element contains the value 0 for blank, 1 for X and 2 for O. A MOVETABLE vector consists of 19,683
elements (39) and is needed where each element is a nine element vector. The contents of the vector are
especially chosen to help the algorithm.
The algorithm makes moves by pursuing the following:
1. View the vector as a ternary number. Convert it to a decimal number.
2. Use the decimal number as an index in MOVETABLE and access the vector.
3. Set BOARD to this vector indicating how the board looks after the move. This approach is capable in time
but it has several disadvantages. It takes more space and requires stunning effort to calculate the decimal
numbers. This method is specific to this game and cannot be completed.
1.2 The second approach
The structure of the data is as before but we use 2 for a blank, 3 for an X and 5 for an O. A variable
called TURN indicates 1 for the first move and 9 for the last. The algorithm consists of three actions:
MAKE2 which returns 5 if the centre square is blank; otherwise it returns any blank non- corner
square, i.e. 2, 4, 6 or 8. POSSWIN (p) returns 0 if player p cannot win on the next move and otherwise
returns the number of the square that gives a winning move.
It checks each line using products 3*3*2 = 18 gives a win for X, 5*5*2=50 gives a win for O, and
the winning move is the holder of the blank. GO (n) makes a move to square n setting BOARD[n] to 3 or 5.
This algorithm is more involved and takes longer but it is more efficient in storage which
compensates for its longer time. It depends on the programmer’s skill.
1.3 The final approach
The structure of the data consists of BOARD which contains a nine element vector, a list of board
positions that could result from the next move and a number representing an estimation of how the board
position leads to an ultimate win for the player to move.
This algorithm looks ahead to make a decision on the next move by deciding which the most
promising move or the most suitable move at any stage would be and selects the same.
Consider all possible moves and replies that the program can make. Continue this process for as
long as time permits until a winner emerges, and then choose the move that leads to the computer program
winning, if possible in the shortest time.
Actually this is most difficult to program by a good limit but it is as far that the technique can be
extended to in any game. This method makes relatively fewer loads on the programmer in terms of the
game technique but the overall game strategy must be known to the adviser.
Current Trends in AI:
Artificial Intelligence is going to be the most dominant feature of every business. Everyone is curious about
latest trends in Artificial Intelligence (AI).
Let us try to understand the current trends of AI.
Automation
Every business needs automation to be more efficient, less dependent on manual intervention and more
seamless than ever.
Personalization
Every business wants to offer personalized recommendation, notification and applications.
Cognitive services
People want to move towards cognitive services that include human like chatbots, speech to text and vice versa
applications which is more human and more friendly than ever.
Natural Language Processing(NLP)
NLP takes care of language modelling, document intelligence, understanding the intents and contexts, sentiment
analysis and enabler of chatbots.
Optimization
Optimization of resources, revenue and cost would be always central point of all businesses.
Internet of Things (IoT)
Internet of Things enable machine to talk to other machines and/or humans. It is powerful enough to do
preventive maintenance and predictive analytics based on the data generated from the IOT devices. This helps
bring the smart in smart car, smart home and smart buildings. for example, Smart Car would know the faults it
is yet to face, or enable car to be autonomous based on sensor inputs. Smart home would know the pattern of
needs of its resident provide preventive maintenance. Smart building would understand the energy optimization,
safety benchmarks and fault detection to offer more efficient and secure building ever.