0 ratings0% found this document useful (0 votes) 316 views67 pagesAI Quick Guide
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here.
Available Formats
Download as PDF or read online on Scribd
Artificial Intelligence - Quick Guide
Artificial Intelligence - Overview
Since the invention of computers or machines, their capability to perform various
tasks went on growing exponentially. Humans have developed the power of
computer systems in terms of their diverse working domains, their increasing speed,
and reducing size with respect to time.
A branch of Computer Science named Artificial Intelligence pursues creating the
computers or machines as intelligent as human beings.
What is Artificial Intelligence?
According to the father of Artificial Intelligence, John McCarthy, it is “The science and
engineering of making intelligent machines, especially intelligent computer
programs”.
Artificial Intelligence is a way of making a computer, a computer-controlled robot,
or a software think intelligently, in the similar manner the intelligent humans think.
Al is accomplished by studying how human brain thinks, and how humans leam,
decide, and work while trying to solve a problem, and then using the outcomes of this
study as a basis of developing intelligent software and systems.
Philosophy of Al
While exploiting the power of the computer systems, the curiosity of human, lead him
to wonder, “Can a machine think and behave like humans do?”
Thus, the development of Al started with the intention of creating similar intelligence
in machines that we find and regard high in humans.
Goals of Al
« To Create Expert Systems - The systems which exhibit intelligent behavior,
learn, demonstrate, explain, and advice its users.
+ To Implement Human Intelligence in Machines - Creating systems that
understand, think, learn, and behave like humans.What Contributes to Al?
Artificial intelligence is a science and technology based on disciplines such as
Computer Science, Biology, Psychology, Linguistics, Mathematics, and Engineering.
A major thrust of Al is in the development of computer functions associated with
human intelligence, such as reasoning, learning, and problem solving
ut of the following areas, one or multiple areas can contribute to build an intelligent
system.
Artificial
Intelligence
Programming Without and With Al
The programming without and with Al is different in following ways ~Programming Without Al Programming With Al
A computer program without Al can ‘A computer program with Al can answer
answer the specific questions it is the generic questions it is meant to
meant to solve. solve,
Al programs can absorb new
modifications by putting highly
Modification in the program leads to independent pieces of information
change in its structure together. Hence you can modify even a
minute piece of information of program
without affecting its structure.
Modification is not quick and easy. It
may lead to affecting the program Quick and Easy program modification.
adversely.
What is Al Technique?
In the real world, the knowledge has some unwelcomed properties -
« Its volume is huge, next to unimaginable.
« — |tis not well-organized or well-formatted.
* — Itkeeps changing constantly.
Al Technique is a manner to organize and use the knowledge efficiently in such a
way that —
* It should be perceivable by the people who provide it.
* It should be easily modifiable to correct errors.
« It should be useful in many situations though it is incomplete or inaccurate.
Al techniques elevate the speed of execution of the complex program it is equipped
with.
Applications of Al
Al has been dominant in various fields such as —
* Gaming - Al plays crucial role in strategic games such as chess, poker, tic-
tac-toe, etc., where machine can think of large number of possible positions
based on heuristic knowledge.
* Natural Language Processing - It is possible to interact with the computer
that understands natural language spoken by humans.« Expert Systems - There are some applications which integrate machine,
software, and special information to impart reasoning and advising. They
provide explanation and advice to the users.
«Vision Systems - These systems understand, interpret, and comprehend
visual input on the computer, For example,
« Aspying aeroplane takes photographs, which are used to figure out
spatial information or map of the areas.
* Doctors use clinical expert system to diagnose the patient.
. Police use computer software that can recognize the face of criminal
with the stored portrait made by forensic artist.
* Speech Recognition - Some intelligent systems are capable of hearing and
comprehending the language in terms of sentences and their meanings
while a human talks to it. It can handle different accents, slang words, noise
in the background, change in human's noise due to cold, etc.
« — Handwriting Recognition - The handwriting recognition software reads the
text written on paper by a pen or on screen by a stylus. It can recognize the
shapes of the letters and convert it into editable text
« Intelligent Robots - Robots are able to perform the tasks given by a
human. They have sensors to detect physical data from the real world such
as light, heat, temperature, movement, sound, bump, and pressure. They
have efficient processors, multiple sensors and huge memory, to exhibit
intelligence. In addition, they are capable of learning from their mistakes and
they can adapt to the new environment.
History of Al
Here is the history of Al during 20th century -Year
1923
1943
1945
1950
1956
1958
1964
1965
1969
1973
1979
1985
Milestone / Innovation
Karel Capek play named “Rossum's Universal Robots” (RUR) opens in
London, first use of the word "robot" in English
Foundations for neural networks laid.
Isaac Asimov, a Columbia University alumni, coined the term Robotics.
Alan Turing introduced Turing Test for evaluation of intelligence and
published Computing Machinery and Intelligence. Claude Shannon
published Detailed Analysis of Chess Playing as a search.
John McCarthy coined the term Artificial Intelligence. Demonstration of the
first running Al program at Carnegie Mellon University.
John McCarthy invents LISP programming language for Al.
Danny Bobrow's dissertation at MIT showed that computers can
understand natural language well enough to solve algebra word problems
correctly.
Joseph Weizenbaum at MIT built ELIZA, an interactive problem that carries
ona dialogue in English
Scientists at Stanford Research Institute Developed Shakey, a robot,
equipped with locomotion, perception, and problem solving.
The Assembly Robotics group at Edinburgh University built Freddy, the
Famous Scottish Robot, capable of using vision to locate and assemble
models.
The first computer-controlled autonomous vehicle, Stanford Cart, was built.
Harold Cohen created and demonstrated the drawing program, Aaron.Major advances in all areas of Al -
* Significant demonstrations in machine learning
* Case-based reasoning
« — Multi-agent planning
1990 * — Scheduling
* — Data mining, Web Crawler
* natural language understanding and translation
« — Vision, Virtual Reality
* Games
The Deep Blue Chess Program beats the then world chess champion,
1997 Garry Kasparov.
Interactive robot pets become commercially available. MIT displays
2000 Kismet, a robot with a face that expresses emotions. The robot Nomad
explores remote regions of Antarctica and locates meteorites.
Artificial Intelligence - Intelligent Systems
While studying artificially intelligence, you need to know what intelligence is. This
chapter covers Idea of intelligence, types, and components of intelligence.
What is Intelligence?
The ability of a system to calculate, reason, perceive relationships and analogies,
learn from experience, store and retrieve information from memory, solve problems,
comprehend complex ideas, use natural language fluently, classify, generalize, and
adapt new situations.
Types of Intelligence
As described by Howard Gardner, an American developmental psychologist, the
Intelligence comes in multifold -Intelligence
Linguistic intelligence
Musical intelligence
Logical-mathematical
intelligence
Spatial intelligence
Bodily-Kinesthetic intelligence
Intra-personal intelligence
Interpersonal intelligence
Description
The ability to speak,
recognize, and use
mechanisms of phonology
(speech sounds), syntax
(grammar), and semantics
(meaning).
The ability to create
communicate with, and
understand meanings made
of sound, understanding of
pitch, rhythm.
The ability of use and
understand relationships in
the absence of action or
objects. Understanding
complex and abstract ideas.
The ability to perceive visual
or spatial information, change
it, and re-create visual images
without reference to the
objects, construct 3D images,
and to move and rotate them.
The ability to use complete or
part of the body to solve
problems or fashion products.
control over fine and coarse
motor skills, and manipulate
the objects.
The ability to distinguish
among one’s own feelings,
intentions, and motivations.
The ability to recognize and
make distinctions among
other people's feelings,
beliefs, and intentions.
Example
Narrators,
Orators
Musicians,
Singers,
Composers
Mathematicians,
Scientists
Map readers,
Astronauts,
Physicists
Players
Dancers
Gautam
Buddhha
Mass
Communicators,
InterviewersYou can say a machine or a system is arti
at least one and at most all intelligences in it.
ally intelligent when it is equipped with
What is Intelligence Composed of?
The intelligence is intangible. It is composed of -
* Reasoning
+ Learning
« — Problem Solving
. Perception
« Linguistic Intelligence
Reasoning
J
C BO
Cross)
mae
Let us go through all the components briefly -
. Reasoning -— It is the set of processes that enables us to provide basis for
judgement, making decisions, and prediction. There are broadly two types —
Inductive Reasoning
It conducts specific observations to
makes broad general statements.
Even if all of the premises are true in a
statement, inductive reasoning allows
for the conclusion to be false.
Example - "Nita is a teacher. Nita is
studious. Therefore, All teachers are
studious."
Deductive Reasoning
It starts with a general statement and
examines the possibilities to reach a
specific, logical conclusion.
If something is true of a class of things
in general, it is also true for all members
of that class.
Example - "All women of age above 60
years are grandmothers. Shalini is 65
years. Therefore, Shalini is a
grandmother."Learning - It is the activity of gaining knowledge or skill by studying,
practising, being taught, or experiencing something. Learning enhances the
awareness of the subjects of the study.
The ability of learning is possessed by humans, some animals, and Al-
enabled systems. Learning is categorized as -
Auditory Learning - It is learning by listening and hearing. For
example, students listening to recorded audio lectures.
Episodic Learning - To learn by remembering sequences of events
that one has witnessed or experienced. This is linear and orderly.
Motor Learning - It is learning by precise movement of muscles.
For example, picking objects, Writing, etc.
Observational Learning — To lean by watching and imitating
others. For example, child tries to learn by mimicking her parent,
Perceptual Learning - It is learning to recognize stimuli that one
has seen before. For example, identifying and classifying objects
and situations.
Relational Learning - It involves learning to differentiate among
various stimuli on the basis of relational properties, rather than
absolute properties. For Example, Adding ‘little less’ salt at the time
of cooking potatoes that came up salty last time, when cooked with
adding say a tablespoon of salt.
Spatial Learning - It is learning through visual stimuli such as
images, colors, maps, etc. For Example, A person can create
roadmap in mind before actually following the road.
Stimulus-Response Learning - It is leaming to perform a
particular behavior when a certain stimulus is present. For example,
a dog raises its ear on hearing doorbell.
Problem Solving - It is the process in which one perceives and tries to
arrive at a desired solution from a present situation by taking some path,
which is blocked by known or unknown hurdles.
Problem solving also includes decision making, which is the process of
selecting the best suitable alternative out of multiple alternatives to reach the
desired goal are available.
Perception - It is the process of acquiring, interpreting, selecting, and
organizing sensory informationPerception presumes sensing. In humans, perception is aided by sensory
organs. In the domain of Al, perception mechanism puts the data acquired
by the sensors together in a meaningful manner.
Linguistic Intelligence - It is one’s ability to use, comprehend, speak, and
write the verbal and written language. It is important in interpersonal
communication.
Difference between Human and Machine Intelligence
Humans perceive by patterns whereas the machines perceive by set of rules
and data.
Humans store and recall information by patterns, machines do it by
searching algorithms. For example, the number 40404040 is easy to
remember, store, and recall as its pattern is simple.
Humans can figure out the complete object even if some part of it is missing
or distorted; whereas the machines cannot do it correctly.
Artificial Intelligence - Research Areas
The domain of artificial intelligence is huge in breadth and width. While proceeding,
we consider the broadly common and prospering research areas in the domain of AlNatural
Language
Processing
Neural
Networks
Artificial
Intelligence
Robotics
Speech and Voice Recognition
These both terms are common in robotics, expert systems and natural language
processing. Though these terms are used interchangeably, their objectives are
different.Speech Recognition Voice Recognition
The speech recognition aims at The objective of voice recognition is to
understanding and comprehending recognize WHO is speaking
WHAT was spoken.
Itis used in hand-free computing, map, _ It is used to identify a person by
or menu navigation analysing its tone, voice pitch, and
accent, etc.
Machine does not need training for This recognition system needs training
Speech Recognition as it is not speaker _as it is person oriented.
dependent.
Speaker independent Speech Speaker dependent Speech
Recognition systems are difficult to Recognition systems are comparatively
develop. easy to develop.
Working of Speech and Voice Recognition Systems
The user input spoken at a microphone goes to sound card of the system. The
converter turns the analog signal into equivalent digital signal for the speech
processing. The database is used to compare the sound patterns to recognize the
words. Finally, a reverse feedback is given to the database.
This source-language text becomes input to the Translation Engine, which converts it
to the target language text. They are supported with interactive GUI, large database
of vocabulary, etc.
Real Life Applications of Research Areas
There is a large array of applications where Al is serving common people in their
day-to-day lives -Sr.No. Research Areas Real Life
Application
Expert Systems
Examples - Flight-tracking systems, Clinical systems
Natural Language Processing
Examples: Google Now feature, speech recognition,
Automatic voice output.
3 Neural Networks
Examples - Pattern recognition systems such as face A
recognition, character recognition, handwriting recognition. Je
4 Robotics
Examples - Industrial robots for moving, spraying,
painting, precision checking, drilling, cleaning, coating,
carving, etc.
5
Fuzzy Logic Systems
Examples - Consumer electronics, automobiles, etc. roi
Task Classification of Al
The domain of Al is classified into Formal tasks, Mundane tasks, and Expert
tasks.Perception
Reasoning
Scientific
Analysis Medical Natural
Diagnosis Language
Processing
Engineering
Maths
Financial
Analysis
ES nh)Task Domains of Artificial Intelligence
Mundane (Ordinary) Formal Tasks Expert Tasks
Tasks
Perception « — Mathematics « — Engineering
+ Computer Vision « Geometry * — Fault Finding
* Speech, Voice * Logic * Manufacturing
* Integration and * — Monitoring
Differentiation
Natural Language Games Scientific Analysis
Processing « Go
« Understanding * Chess (Deep Blue)
+ Language * Ckeckers
Generation
. Language
Translation
Common Sense Verification Financial Analysis
Reasoning Theorem Proving Medical Diagnosis
Planing Creativity
Robotics
« — Locomotive
Humans learn mundane (ordinary) tasks since their birth. They learn by perception,
speaking, using language, and locomotives. They learn Formal Tasks and Expert
Tasks later, in that order.
For humans, the mundane tasks are easiest to learn. The same was considered true
before trying to implement mundane tasks in machines. Earlier, all work of Al was
concentrated in the mundane task domain.
Later, it turned out that the machine requires more knowledge, complex knowledge
representation, and complicated algorithms for handling mundane tasks. This is the
reason why Al work is more prospering in the Expert Tasks domain now, as the
expert task domain needs expert knowledge without common sense, which can be
easier to represent and handle.Al - Agents & Environments
An Al system is composed of an agent and its environment. The agents act in their
environment. The environment may contain other agents.
What are Agent and Environment?
An agent is anything that can perceive its environment through sensors and acts
upon that environment through effectors.
. A human agent has sensory organs such as eyes, ears, nose, tongue and
skin parallel to the sensors, and other organs such as hands, legs, mouth,
for effectors.
«A robotic agent replaces cameras and infrared range finders for the
sensors, and various motors and actuators for effectors.
* Asoftware agent has encoded bit strings as its programs and actions.
Sensors
Percepts
__Effectors
‘Actions
Agent Terminology
* Performance Measure of Agent - It is the criteria, which determines how
successful an agent is.
* Behavior of Agent - It is the action that agent performs after any given
sequence of percepts.
* Percept - It is agent's perceptual inputs at a given instance.
. Percept Sequence - It is the history of all that an agent has perceived till
date.«Agent Function - It is a map from the precept sequence to an action.
Rationality
Rationality is nothing but status of being reasonable, sensible, and having good
sense of judgment.
Rationality is concerned with expected actions and results depending upon what the
agent has perceived. Performing actions with the aim of obtaining useful information
is an important part of rationality.
What is Ideal Rational Agent?
An ideal rational agent is the one, which is capable of doing expected actions to
maximize its performance measure, on the basis of -
* Its percept sequence
* Its built-in knowledge base
Rationality of an agent depends on the following —
« The performance measures, which determine the degree of success.
« Agent's Percept Sequence till now.
« The agent's prior knowledge about the environment.
« The actions that the agent can carry out.
A rational agent always performs right action, where the right action means the
action that causes the agent to be most successful in the given percept sequence.
The problem the agent solves is characterized by Performance Measure,
Environment, Actuators, and Sensors (PEAS).
The Structure of Intelligent Agents
Agent's structure can be viewed as —
«Agent = Architecture + Agent Program
« Architecture = the machinery that an agent executes on.
«Agent Program = an implementation of an agent function.
Simple Reflex Agents
« — They choose actions only based on the current percept.
* They are rational only if a correct decision is made only on the basis of
current precept« — Their environment is completely observable.
Condition-Action Rule — It is a rule that maps a state (condition) to an action.
Sensors
How is the world
like now?
What actions |
need todo?
(ie
Model Based Reflex Agents
Agent
Condition-Action
Rule
Environment
They use a model of the world to choose their actions. They maintain an internal
state.
Model — knowledge about “how the things happen in the world”
Internal State - It is a representation of unobserved aspects of current state
depending on percept history.
Updating the state requires the information about —
« How the world evolves.
* — How the agent's actions affect the world.Sensors
How is the world
like now?
What actions |
need to do?
How world evalves
Condition-Action
Rule
Environment
Goal Based Agents
They choose their actions in order to achieve goals. Goal-based approach is more
flexible than reflex agent since the knowledge supporting a decision is explicitly
modeled, thereby allowing for modifications.
Goal - It is the description of desirable situations.
How is the world like now?
Agent
How world evolves
What happens if | do action A
What actions | need to do?
They choose actions based on a preference (utility) for each state.
Environment
Utility Based AgentsGoals are inadequate when -
« There are conflicting goals, out of which only few can be achieved.
* — Goals have some uncertainty of being achieved and you need to weigh
likelihood of success against the importance of a goal.
Agent
Sensors
A
Fe
How isthe world like now? How world evolves
ore
What my actions do
ee SE
How happy! am by doing action a? } —{ Utility
What actions | need to do?
The Nature of Environments
What happens if | do action A
Environment
‘Some programs operate in the entirely artificial environment confined to keyboard
input, database, computer file systems and character output on a screen
In contrast, some software agents (software robots or softbots) exist in rich, unlimited
softbots domains. The simulator has a very detailed, complex environment. The
software agent needs to choose from a long array of actions in real time. A softbot
designed to scan the online preferences of the customer and show interesting items
to the customer works in the real as well as an artificial environment.
The most famous artificial environment is the Turing Test environment, in which
one real and other artificial agents are tested on equal ground. This is a very
challenging environment as it is highly difficult for a software agent to perform as well
as a human.
Turing Test
The success of an intelligent behavior of a system can be measured with Turing Test.
Two persons and a machine to be evaluated participate in the test. Out of the two
persons, one plays the role of the tester. Each of them sits in different rooms. Thetester is unaware of who is machine and who is a human. He interrogates the
questions by typing and sending them to both intelligences, to which he receives
typed responses.
This test aims at fooling the tester. If the tester fails to determine machine's response
from the human response, then the machine is said to be intelligent.
Properties of Environment
The environment has multifold properties —
Discrete / Continuous - If there are a limited number of distinct, clearly
defined, states of the environment, the environment is discrete (For example,
chess); otherwise it is continuous (For example, driving).
Observable / Partially Observable - If it is possible to determine the
complete state of the environment at each time point from the percepts it is
observable; otherwise it is only partially observable.
Static / Dynamic - If the environment does not change while an agent is
acting, then it is static; otherwise it is dynamic.
Single agent / Multiple agents - The environment may contain other
agents which may be of the same or different kind as that of the agent.
Accessible / Inaccessible - If the agent's sensory apparatus can have
access to the complete state of the environment, then the environment is
accessible to that agent.
Deterministic / Non-deterministic — If the next state of the environment is
completely determined by the current state and the actions of the agent, then
the environment is deterministic; otherwise it is non-deterministic.
Episodic / Non-episodic — In an episodic environment, each episode
consists of the agent perceiving and then acting. The quality of its action
depends just on the episode itself. Subsequent episodes do not depend on
the actions in the previous episodes. Episodic environments are much
simpler because the agent does not need to think ahead.
Al - Popular Search Algorithms
Searching is the universal technique of problem solving in Al. There are some single-
player games such as tile games, Sudoku, crossword, etc. The search algorithms
help you to search for a particular position in such games.Single Agent Pathfinding Problems
The games such as 3X3 eightttile, 4X4 fifteen-tile, and 5X5 twenty four tile puzzles.
are single-agent-path-finding challenges. They consist of a matrix of tiles with a blank
tile. The player is required to arrange the tiles by sliding a tile either vertically or
horizontally into a blank space with the aim of accomplishing some objective
The other examples of single agent pathfinding problems are Travelling Salesman
Problem, Rubik's Cube, and Theorem Proving.
Search Terminology
Problem Space - It is the environment in which the search takes place. (A
set of states and set of operators to change those states)
Problem Instance - It is Initial state + Goal state.
Problem Space Graph - It represents problem state. States are shown by
nodes and operators are shown by edges.
Depth of a problem - Length of a shortest path or shortest sequence of
operators from Initial State to goal state.
Space Complexity - The maximum number of nodes that are stored in
memory.
Time Complexity - The maximum number of nodes that are created.
Admissibility - A property of an algorithm to always find an optimal
solution.
Branching Factor - The average number of child nodes in the problem
space graph.
Depth - Length of the shortest path from initial state to goal state
Brute-Force Search Strategies
They are most simple, as they do not need any domain-specific knowledge. They
work fine with small number of possible states.
Requirements —
State description
Aset of valid operators
Initial state
Goal state descriptionBreadth-First Search
It starts from the root node, explores the neighboring nodes first and moves towards
the next level neighbors. It generates one tree at a time until the solution is found. It
can be implemented using FIFO queue data structure. This method provides shortest
path to the solution.
If branching factor (average number of child nodes for a given node) = b and depth
=d, then number of nodes at level d = b%.
The total no of nodes created in worst case is b + b? +b? +... + bf,
Disadvantage - Since each level of nodes is saved for creating next one, it
consumes a lot of memory space. Space requirement to store nodes is exponential.
Its complexity depends on the number of nodes. It can check duplicate nodes.
Depth-First Search
It is implemented in recursion with LIFO stack data structure. It creates the same set
of nodes as Breadth-First method, only in the different order.
As the nodes on the single path are stored in each iteration from root to leaf node,
the space requirement to store nodes is linear. With branching factor b and depth as
1m, the storage space is bm
Disadvantage - This algorithm may not terminate and go on infinitely on one path.
The solution to this issue is to choose a cut-off depth. If the ideal cut-off is d, and if
chosen cut-off is lesser than d, then this algorithm may fail. If chosen cut-off is more
than d, then execution time increases
Its complexity depends on the number of paths. It cannot check duplicate nodes.Bidirectional Search
It searches forward from initial state and backward from goal state till both meet to
identify a common state.
The path from initial state is concatenated with the inverse path from the goal state.
Each search is done only up to half of the total path
Uniform Cost Search
Sorting is done in increasing cost of the path to a node. It always expands the least
cost node. It is identical to Breadth First search if each transition has the same cost.
It explores paths in the increasing order of cost.
Disadvantage - There can be multiple long paths with the cost < C*. Uniform Cost
search must explore them all.
Iterative Deepening Depth-First Search
It performs depth-first search to level 1, starts over, executes a complete depth-first
search to level 2, and continues in such way till the solution is found
It never creates a node until all lower nodes are generated. It only saves a stack of
nodes. The algorithm ends when it finds a solution at depth d. The number of nodes
created at depth dis b% and at depth d-1 is b+"Comparison of Various Algorithms Complexities
Let us see the performance of algorithms based on various criteria -
cbari, Breadth Depth eye ge Uniform Interactive
Criterion ‘ . Bidirectional
First First Cost Deepening
Time b? b™ pi? be b?
Space bo b™ bv bo bo
Optimality Yes No Yes Yes Yes
Completeness Yes No Yes Yes Yes
Informed (Heuristic) Search Strategies
To solve large problems with large number of possible states, problem-specific
knowledge needs to be added to increase the efficiency of search algorithms
Heuristic Evaluation Functions
They calculate the cost of optimal path between two states. A heuristic function for
sliding-tiles games is computed by counting number of moves that each tile makes
from its goal state and adding these number of moves for all tiles.
Pure Heuristic Search
It expands nodes in the order of their heuristic values. It creates two lists, a closed
list for the already expanded nodes and an open list for the created but unexpandednodes.
In each iteration, a node with a minimum heuristic value is expanded, all its child
nodes are created and placed in the closed list. Then, the heuristic function is applied
to the child nodes and they are placed in the open list according to their heuristic
value. The shorter paths are saved and the longer ones are disposed.
A* Search
It is best-known form of Best First search. It avoids expanding paths that are already
expensive, but expands most promising paths first.
f(n) = g(n) + h(n), where
« g(n) the cost (so far) to reach the node
* h(n) estimated cost to get from the node to the goal
« {(n) estimated total cost of path through n to goal. It is implemented using
priority queue by increasing f(n).
Greedy Best First Search
It expands the node that is estimated to be closest to goal. It expands nodes based
on f(n) = h(n). It is implemented using priority queue.
Disadvantage - It can get stuck in loops. It is not optimal
Local Search Algorithms
They start from a prospective solution and then move to a neighboring solution. They
can return a valid solution even if itis interrupted at any time before they end.
Hil
Climbing Search
It is an iterative algorithm that starts with an arbitrary solution to a problem and
attempts to find a better solution by changing a single element of the solution
incrementally. If the change produces a better solution, an incremental change is
taken as a new solution. This process is repeated until there are no further
improvements.
function Hill-Climbing (problem), returns a state that is a local maximum,
inputs: problem, @ problem
local variables: current, a node
neighbor, a node
current <-Make_Node(Initial-State[problem])
loopdo neighbor <- a highest_valued successor of current
if Value[neighbor] < Value[current] then
return State[current]
current <- neighbor
end
Disadvantage - This algorithm is neither complete, nor optimal.
Local Beam Search
In this algorithm, it holds k number of states at any given time. At the start, these
states are generated randomly. The successors of these k states are computed with
the help of objective function. If any of these successors is the maximum value of the
objective function, then the algorithm stops
Otherwise the (initial k states and k number of successors of the states = 2k) states
are placed in a pool. The pool is then sorted numerically. The highest k states are
selected as new initial states. This process continues until a maximum value is
reached.
function BeamSearch( problem, k), returns a solution state.
start with k randomly generated states
loop
generate all successors of all k states
if any of the states = solution, then return the state
else select the k best successors
end
Simulated Annealing
Annealing is the process of heating and cooling a metal to change its internal
structure for modifying its physical properties. When the metal cools, its new
structure is seized, and the metal retains its newly obtained properties. In simulated
annealing process, the temperature is kept variable.
We initially set the temperature high and then allow it to ‘cool" slowly as the algorithm
proceeds. When the temperature is high, the algorithm is allowed to accept worse
solutions with high frequency.
Start
« Initialize k = 0; L = integer number of variables:
« From i-—j, search the performance difference A.* If A.<=0 then accept else if exp(-A/T(k)) > random(0,1) then accept
* Repeat steps 1 and 2 for L(k) steps.
© kak
Repeat steps 1 through 4 till the criteria is met.
End
Travelling Salesman Problem
In this algorithm, the objective is to find a low-cost tour that starts from a city, visits all
cities en-route exactly once and ends at the same starting city.
Start
Find out all (n -1)! Possible solutions, where n is the total number
Determine the minimum cost by finding out the cost of each of these (
Finally, keep the one with the minimum cost.
end
(3)
5km 5km
7km 7km a
4 ( 4akm
© a~10
( < AAS km Sy
(6 Tkm
Total Distance = 37km Total Distance = 31km
Artificial Intelligence - Fuzzy Logic Systems
Fuzzy Logic Systems (FLS) produce acceptable but definite output in response to
incomplete, ambiguous, distorted, or inaccurate (fuzzy) input.
What is Fuzzy Logic?Fuzzy Logic (FL) is a method of reasoning that resembles human reasoning, The
approach of FL imitates the way of decision making in humans that involves all
intermediate possibilities between digital values YES and NO.
The conventional logic block that a computer can understand takes precise input and
produces a definite output as TRUE or FALSE, which is equivalent to human's YES
or NO
The inventor of fuzzy logic, Lotfi Zadeh, observed that unlike computers, the human
decision making includes a range of possibilities between YES and NO, such as —
|CERTAINLY YES|
POSSIBLY YES
ICANNOT SAY
POSSIBLY NO
|CERTAINLY NO
The fuzzy logic works on the levels of possibilities of input to achieve the definite
output
Implementation
« It can be implemented in systems with various sizes and capabilities ranging
from small micro-controllers to large, networked, workstation-based control
systems
* Itcan be implemented in hardware, software, or a combination of both.
Why Fuzzy Logic?
Fuzzy logic is useful for commercial and practical purposes
* Itcan control machines and consumer products.
+ itmay not give accurate reasoning, but acceptable reasoning
« — Fuzzy logic helps to deal with the uncertainty in engineering.
Fuzzy Logic Systems Architecture
It has four main parts as shown -
. Fuzzification Module - It transforms the system inputs, which are crisp
numbers, into fuzzy sets. It splits the input signal into five steps such as —LP xis Large Positive
MP x is Medium Positive
s xis Small
MN x is Medium Negative
LN xis Large Negative
. Knowledge Base - It stores IF-THEN rules provided by experts.
+ Inference Engine - It simulates the human reasoning process by making
fuzzy inference on the inputs and IF-THEN rules.
. Defuzzification Module - It transforms the fuzzy set obtained by the
inference engine into a crisp value.
Crisp
Input
Fuzzy Fuzzy
Input Output
Set Intelligence Set
The membership functions work on fuzzy sets of variables.
Membership Function
Crisp
Output
Membership functions allow you to quantify linguistic term and represent a fuzzy set
graphically. A membership function for a fuzzy set A on the universe of discourse X
is defined as p,:X — [0,1].
Here, each element of X is mapped to a value between 0 and 1. It is called
membership value or degree of membership. It quantifies the degree of
membership of the element in X to the fuzzy set A.« — xaxis represents the universe of discourse.
* — yaxis represents the degrees of membership in the [0, 1] interval
There can be multiple membership functions applicable to fuzzify a numerical value.
Simple membership functions are used as use of complex functions does not add
more precision in the output.
All membership functions for LP, MP, S, MN, and LN are shown as below —
Membership Function
Input Voltage
-10 5 0 +5 +10
The triangular membership function shapes are most common among various other
membership function shapes such as trapezoidal, singleton, and Gaussian
Here, the input to 5-level fuzzifier varies from -10 volts to +10 volts. Hence the
corresponding output also changes
Example of a Fuzzy Logic System
Let us consider an air conditioning system with 5-level fuzzy logic system. This
system adjusts the temperature of air conditioner by comparing the room
temperature and the target temperature value.Room
Algorithm
« Define linguistic Variables and terms (start)
* — Construct membership functions for them. (start)
* Construct knowledge base of rules (start)
« — Convert crisp data into fuzzy data sets using membership functions.
(fuzzification)
« Evaluate rules in the rule base. (Inference Engine)
+ Combine results from each rule. (Inference Engine)
« — Convert output data into non-fuzzy values. (defuzzification)
Development
Step 1 — Define linguistic variables and termsLinguistic variables are input and output variables in the form of simple words or
sentences. For room temperature, cold, warm, hot, etc., are linguistic terms.
Temperature (t) = {very-cold, cold, warm, very-warm, hot}
Every member of this set is a linguistic term and it can cover some portion of overall
temperature values.
Step 2 - Construct membership functions for them
The membership functions of temperature variable are as shown —
Membership Function
Input
Temperature
° 10 20 30 40
Step3 — Construct knowledge base rules
Create a matrix of room temperature values versus target temperature values that an
air conditioning system is expected to provide.
Rornreet Very_Cold Cold Warm Hot Very_Hot
Very_Cold No_Change Heat Heat Heat Heat
Cold Cool No_Change Heat Heat Heat
Warm Cool Cool No_Change Heat Heat
Hot Cool Cool Cool No_Change Heat
Very_Hot Cool Cool Cool Cool No_Change
Build a set of rules into the knowledge base in the form of IF-THEN-ELSE structures.Sr. No. Condition Action
IF temperature=(Cold OR Very_Cold) AND target=Warm Heat
THEN
IF temperature=(Hot OR Very_Hot) AND target=Warm Cool
2
THEN
3 IF (temperature=Warm) AND (target=Warm) THEN No_Change
Step 4 - Obtain fuzzy value
Fuzzy set operations perform evaluation of rules. The operations used for OR and
AND are Max and Min respectively. Combine all results of evaluation to form a final
result. This result is a fuzzy value.
Step 5 - Perform defuzzification
Defuzzification is then performed according to membership function for output
variable.
Membership Function
Exact Value
Input
Temperature
Application Areas of Fuzzy Logic
The key application areas of fuzzy logic are as given -
Automotive Systems
« — Automatic Gearboxes
. Four-Wheel Steering
« — Vehicle environment controlConsumer Electronic Goods
* — Hi-Fi Systems
* Photocopiers
* Still and Video Cameras
« Television
Domestic Goods
* Microwave Ovens
« — Refrigerators
« — Toasters
* Vacuum Cleaners
* Washing Machines
Environment Control
« — Air Conditioners/Dryers/Heaters
« Humidifiers
Advantages of FLSs
« Mathematical concepts within fuzzy reasoning are very simple.
« You can modify a FLS by just adding or deleting rules due to flexibility of
fuzzy logic.
* Fuzzy logic Systems can take imprecise, distorted, noisy input information.
* FLSs are easy to construct and understand.
* Fuzzy logic is a solution to complex problems in all fields of life, including
medicine, as it resembles human reasoning and decision making
Disadvantages of FLSs
* There is no systematic approach to fuzzy system designing.
* They are understandable only when simple.
« — They are suitable for the problems which do not need high accuracy.
Al - Natural Language Processing
Natural Language Processing (NLP) refers to Al method of communicating with an
intelligent systems using a natural language such as English.Processing of Natural Language is required when you want an intelligent system like
robot to perform as per your instructions, when you want to hear decision from a
dialogue based clinical expert system, etc.
The field of NLP involves making computers to perform useful tasks with the natural
languages humans use. The input and output of an NLP system can be —
« — Speech
* Written Text
Components of NLP
There are two components of NLP as given -
Natural Language Understanding (NLU)
Understanding involves the following tasks -
« — Mapping the given input in natural language into useful representations.
* Analyzing different aspects of the language
Natural Language Generation (NLG)
It is the process of producing meaningful phrases and sentences in the form of
natural language from some internal representation.
It involves -
* Text planning - It includes retrieving the relevant content from knowledge
base.
. Sentence planning - It includes choosing required words, forming
meaningful phrases, setting tone of the sentence.
« Text Realization - It is mapping sentence plan into sentence structure.
The NLU is harder than NLG.
Difficulties in NLU
NL has an extremely rich form and structure.
Itis very ambiguous. There can be different levels of ambiguity -
* Lexical ambiguity - It is at very primitive level such as word-level.
* For example, treating the word “board” as noun or verb?
« Syntax Level ambiguity - A sentence can be parsed in different ways.For example, “He lifted the beetle with red cap.” - Did he use cap to lift the
beetle or he lifted a beetle that had red cap?
Referential ambiguity - Referring to something using pronouns. For
example, Rima went to Gauri. She said, “I am tired.” - Exactly who is tired?
One input can mean different meanings.
Many inputs can mean the same thing.
NLP Terminology
Phonology ~ It is study of organizing sound systematically.
Morphology - It is a study of construction of words from primitive
meaningful units
Morpheme - It is primitive unit of meaning in a language.
Syntax ~ It refers to arranging words to make a sentence. It also involves
determining the structural role of words in the sentence and in phrases.
Semantics — It is concerned with the meaning of words and how to combine
words into meaningful phrases and sentences.
Pragmatics — It deals with using and understanding sentences in different
situations and how the interpretation of the sentence is affected.
Discourse - It deals with how the immediately preceding sentence can
affect the interpretation of the next sentence.
World Knowledge - It includes the general knowledge about the world.
Steps in NLP
There are general five steps -
Lexical Analysis — It involves identifying and analyzing the structure of
words. Lexicon of a language means the collection of words and phrases in
a language. Lexical analysis is dividing the whole chunk of txt into
paragraphs, sentences, and words.
Syntactic Analysis (Parsing) - It involves analysis of words in the
sentence for grammar and arranging words in a manner that shows the
relationship among the words. The sentence such as “The school goes to
boy” is rejected by English syntactic analyzer.