0% found this document useful (0 votes)
67 views70 pages

Ch1 AI Intro

This document outlines the course structure for an Artificial Intelligence assessment class, including topics covered, activities and their weights, and a topic schedule that covers introduction to AI, knowledge representation, fuzzy expert systems, neural networks, genetic algorithms, hybrid systems, and data mining. It also provides definitions and overviews of AI, including what constitutes intelligence and discussions of the Turing test and early conversational programs like ELIZA.

Uploaded by

Syazwan 73
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
67 views70 pages

Ch1 AI Intro

This document outlines the course structure for an Artificial Intelligence assessment class, including topics covered, activities and their weights, and a topic schedule that covers introduction to AI, knowledge representation, fuzzy expert systems, neural networks, genetic algorithms, hybrid systems, and data mining. It also provides definitions and overviews of AI, including what constitutes intelligence and discussions of the Turing test and early conversational programs like ELIZA.

Uploaded by

Syazwan 73
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 70

CSF 31103 :

ARTIFICIAL
INTELLIGENT
ASSESSMENT

ACTIVITY WEIGHT CLO


Lab 20% CLO2
Project 20%

Quiz 20% CLO1

Final Exam 40% CLO3

2
TOPIC SCHEDULE

• Topic 1: Introduction to Artificial Intelligence Intelligent System


• Topic 2: Basic Knowledge Representation and Reasoning
• Topic 3: Fuzzy Expert Systems
• Topic 4: Artificial Neural Networks
• Topic 5: Evolutionary Computation (Genetic Algorithms)
• Topic 6: Hybrid Intelligent Systems
• Topic 7: Knowledge Engineering and Data Mining

3
TOPIC 1: INTRODUCTION TO ARTIFICIAL INTELLIGENT

• What is an Artificial Intelligence


• Significance of intelligent systems in business
• Characteristics of intelligent systems
• The field of Artificial Intelligence (AI)
• Prehistoric of AI

• An Overview of Intelligent Technique


– Expert Systems
– Search Algorithm
– Fuzzy Systems
– Artificial Neural Networks
– Genetic Algorithms (GA)
– Hybrid Intelligent System)
– Data Mining

4
AI DEFINITIONS
• The study of how to make programs/computers do Thinking
things that people do better machines or
• The study of how to make computers solve problems
which require knowledge and intelligence
machine
• The exciting new effort to make computers think … intelligence
machines with minds
• The automation of activities that we associate with
human thinking (e.g., decision-making, learning…) Studying
• The art of creating machines that perform functions cognitive
that require intelligence when performed by people faculties
• The study of mental faculties through the use of
computational models
• A field of study that seeks to explain and emulate Problem
intelligent behavior in terms of computational Solving and
processes CS
• The branch of computer science that is concerned with
the automation of intelligent behavior
SO WHAT IS AI?
• AI as a field of study
– Computer Science
– Cognitive Science
– Psychology
– Philosophy
– Linguistics
– Neuroscience
• AI is part science, part engineering
• AI often must study other domains in order to implement systems
– e.g., medicine and medical practices for a medical diagnostic system,
engineering and chemistry to monitor a chemical processing plant
• AI is a belief that the brain is a form of biological computer and that
the mind is computational
• AI has had a concrete impact on society but unlike other areas of CS,
the impact is often
– felt only tangentially (that is, people are not aware that system X has AI)
– felt years after the initial investment in the technology
WHAT IS INTELLIGENCE?
• Is there a “holistic” definition for intelligence?
• Here are some definitions:
– the ability to comprehend; to understand and profit from experience
– a general mental capability that involves the ability to reason, plan, solve
problems, think abstractly, comprehend ideas and language, and learn
– is effectively perceiving, interpreting and responding to the environment
• None of these tells us what intelligence is, so instead, maybe we
can enumerate a list of elements that an intelligence must be able
to perform:
– perceive, reason and infer, solve problems, learn and adapt, apply
common sense, apply analogy, recall, apply intuition, reach emotional
states, achieve self-awareness
• Which of these are necessary for intelligence? Which are
sufficient?
• Artificial Intelligence – should we define this in terms of human
intelligence?
– does AI have to really be intelligent?
– what is the difference between being intelligent and demonstrating
intelligent behavior?
THE TURING TEST
• 1950 – Alan Turing devised a test for
intelligence called the Imitation Game
– Ask questions of two entities, receive
answers from both
– If you can’t tell which of the entities is
human and which is a computer
program, then you are fooled and we
should therefore consider the computer Questions
Answers Answers
to be intelligent

Which is the person?


Which is the computer?
SOLVING THE TURING TEST: ELIZA
• Created by Joseph Weizenbaum
• This system would act like a Rogerian psychoanalyst by holding a dialog with
a person
– the dialog would be consist of the doctor (Eliza) asking questions, the human
responding, and the doctor using the response to ask another question
• Weizenbaum wrote the program so that it would generate an English
response/question based on a group of patterns
– If the user sentence matched a pattern, this pattern would be used to generate the
next sentence/question
– A more recent, and much superior version is called A.L.I.C.E, see
http://alicebot.blogspot.com/
• click on “chat with A.L.I.C.E.”
– H: Men are all alike
– E: In what way?
– H: They’re always bugging us about something or
another.
– E: Can you be more specific?
– H: Well, my boyfriend made me come here.
EXAMPLE
– E: Your boyfriend made you come here?
ELIZA DIALOG
– H: He says I’m depressed much of the time.
– E: I am sorry to hear you are depressed.
– H: It’s true. I am unhappy.
– E: Do you think coming here will help you not to be
unhappy?
– H: I need some help, that much seems certain.
– E: What would it mean to you if you got some help?
– H: Perhaps I could learn to get along with my mother.
– E: Tell me more about your family
(?* ?x) hello (?* ?y) 
(How do you do. Please state your problem.)
(?* ?x) I want (?* ?y) 
(What would it mean if you got ?y)
(Why do you want ?y)
(Suppose you got ?y soon)
(?* ?x) if (?* ?y)  ELIZA
(Do you really think its likely that ?y)
(Do you wish that ?y)
RULES
(What do you think about ?y) (Really-- if ?y)
(?* ?x) no (?* ?y)  (Why not?)
(You are being a bit negative) Eliza also has a
(Are you saying "NO" just to be negative?) rule to swap
(?* ?x) I was (?* ?y)  (Were you really?) ‘I’ and ‘my’
(Perhaps I already knew you were ?y) to ‘you’ and ‘your’
(Why do you tell me you were ?y now?)
(?* ?x) I feel (?* ?y)  (Do you often feel ?y ?)
(?* ?x) I felt (?* ?y) 
(What other feelings do you have?)
ELIZA PATTERN SYNTAX
pat  var match any one expression to a variable
constant or to a constant (see below)
segment-pat match against a sequence
single-pat match against one expression
(pat . pat) match the first and the rest of a list
single-pat 
(?is var predicate) test predicate on one expression
(?or pat1 pat2 …) match on any of the patterns
(?and pat1 pat2 …) match on every of the expressions
(?not pat) match if expression does not match
segment-pat 
((?* var) …) match on zero or more expressions
((?+ var) …) match on one or more expressions
((?? var) …) match zero or one expression
((?if expr) …) test if expression is true
var  ?chars variables of the form ?name
constant  atom symbols, numbers, chars
ALICE DEMO
Jerry: my name is jerry.
ALICE: Hey jerry.
Jerry: do you know Turing?
ALICE: A brilliant and tragic figure in the history of computer science.
Jerry: who else do you know?
ALICE: Hugh Loebner, Robby Garner, and Steven Spielberg
Jerry: which film do you like?
ALICE: My favorite movie is Teknolust. Have you seen it?
Jerry: no.
ALICE: I would recommend you check it out.
Jerry: what is it about?
ALICE: Science fiction.
Jerry: do you remember my name?
ALICE: Your name is jerry, seeker.

Notice unlike Eliza, ALICE has a memory, can handle references


(have you seen it? no. I would recommend it.)
ALICE VS. ELIZA
ALICE talking to ELIZA
ELIZA: I am ELIZA.
ALICE: I am very pleased to meet you ELIZA.
ELIZA: How can I help you?
ALICE: Just keep talking to me as long as you can.
ELIZA: Do you wish to as long as me?
ALICE: OK, I will as long as you.
ELIZA: Do you wish to will as long as me?
ALICE: OK, I will will as long as you.
ELIZA: Do you wish to will will as long as me?
ALICE: OK, I will will will as long as you.
ELIZA: Do you wish to will will will as long as me?
ALICE: OK, I will will will will as long as you.
ELIZA: Do you wish to will will will will as long as me?
ALICE: OK, I will will will will will as long as you.
ELIZA: Do you wish to will will will will will as long as me?

Eliza gets stuck on the phrase “I will” and then ALICE gets stuck
on the same phrase
HOW USEFUL IS THE TURING TEST?
• With Eliza or Alice like rules, we can eventually solve the
Turing Test – it just takes writing enough rules
• Does the system understand what it is responding to?
– No, neither Eliza nor Alice understand the text, its just that Alice
has better, more in depth and wider ranging rules
• However, we could build a representation that models some real-world domain and
knowledge base
– The system can fill in information from the conversation
• this is sort of like a database, or an object with data attributes to be filled in
• we can use a variety of AI representations like scripts, frames, semantic
networks
– Questions can be responded to by looking up the stored data
– In this way, the system is responding, not based merely on
“canned” knowledge, but on knowledge that it has “learned”
• Does this imply that the system knows what it is
discussing?
– What does it mean to know something?
TABLE-LOOKUP VS. REASONING
• Consider two approaches to programming a Tic-Tac-Toe player
– Solution 1: a pre-enumerated list of best moves given the board
configuration
– Solution 2: rules (or a heuristic function) that evaluate a board
configuration, and using these to select the next best move
• Solution 1 is similar to how Eliza works
– This is not practical for most types of problems
– Consider solving the game of chess in this way, or trying to come up with
all of the responses that a Turing Test program might face
• Solution 2 will reason out the best move
– Given the board configuration, it will analyze each available move and
determine which is the best
– Such a player might even be able to “explain” why it chose the move it did
• We can (potentially) build a program that can pass the Turing Test
using table-lookup even though it would be a large undertaking
• Could we build a program that can pass the Turing Test using
reasoning?
– Even if we can, does this necessarily mean that the system is intelligent?
SLOT FILLING
• Roger Schank created the
Script representation
– the script describes typical
sequences of actions and
actors for some real-world
situation
– a story (newspaper article) is
parsed and slots are filled in
– SAM (Script Applier
Mechanism) uses the filled in
script to answer questions
• The Script provides the
knowledge needed to
respond like a human and
thus solve the Turing Test
Schank’s Restaurant script
BRAIN VS. COMPUTER
• In AI, we compare the brain (or the mind) and the
computer
– Our hope: the brain is a form of computer
– Our goal: we can create computer intelligence through
programming just as people become intelligent by learning

But we see that the computer


is not like the brain

The computer performs tasks


without understanding what
its doing

Does the brain understand


what its doing when it solves
problems?
SYMBOL GROUNDING
• One problem with the computer is that it works strictly
syntactically
– Op code: 10011101  translates into a set of microcode
instructions such as: move IR16..31 to MAR, signal memory
read, move MBR to AC
– There is no understanding
• x = y + z; is meaningless to the computer
– the computer doesn’t understand addition, it just knows that a certain op
code means to move values to the adder and move the result elsewhere
• do you know what addition means?
– if so, how do you proscribe meaning to +
– how is this symbol grounded in your brain?
– can computers similarly achieve this?
– Recall Schank’s Restaurant script
• does the computer know what the symbols “waiter” or “PTRANS”
represent? or does it merely have code that tells the computer what to
do when it comes across certain words in the story, or how to respond
to a given question?
TWO AI ASSUMPTIONS
• We can understand and model cognition without
understanding the underlying mechanism
– That is, it is the model of cognition that is important not the
physical mechanism that implements it
– If this is true, then we should be able to create cognition (mind)
out of a computer or a brain or even other entities that can
compute such as a mechanical device
• This is the assumption made by symbolic AI researchers
• Cognition will emerge from the proper mechanism
– That is, the right device, fed with the right inputs, can learn and
perform the problem solving that we, as observers, call
intelligence
– Cognition will arise as the result (or side effect) of the hardware
• This is the assumption made by connectionist AI researchers
• Notice that while the two assumptions differ, neither is
necessarily mutually exclusive and both support the idea
that cognition is computational
PROBLEMS WITH SYMBOLIC AI
APPROACHES
• Scalability
– It can take dozens or more man-years to create a useful
systems
– It is often the case that systems perform well up to a certain
threshold of knowledge (approx. 10,000 rules), after which
performance (accuracy and efficiency) degrade
• Brittleness
– Most symbolic AI systems are programmed to solve a specific
problem, move away from that domain area and the system’s
accuracy drops rapidly rather than achieving a graceful
degradation
• this is often attributed to lack of common sense, but in truth, it is a lack
of any knowledge outside of the domain area
– No or little capacity to learn, so performance (accuracy) is
static
• Lack of real-time performance
PROBLEMS WITH CONNECTIONIST AI
APPROACHES
• No “memory” or sense of temporality
– The first problem can be solved to some extent
– The second problem arises because of a fixed sized input but
leads to poor performance in areas like speech recognition
• Learning is problematic
– Learning times can greatly vary
– Overtraining leads to a system that only performs well on the
training set and undertraining leads to a system that has not
generalized
• No explicit knowledge-base
– So there is no way to tell what a system truly knows or how it
knows something
• No capacity to explain its output
– Explanation is often useful in an AI system so that the user can
trust the system’s answer
SO WHAT DOES AI DO?
• Most AI research has fallen into one of two categories
– Select a specific problem to solve
• study the problem (perhaps how humans solve it)
• come up with the proper representation for any knowledge needed to solve the
problem
• acquire and codify that knowledge
• build a problem solving system
– Select a category of problem or cognitive activity (e.g., learning, natural
language understanding)
• theorize a way to solve the given problem
• build systems based on the model behind your theory as experiments
• modify as needed

• Both approaches require


– one or more representational forms for the knowledge
– some way to select proper knowledge, that is, search
A BRIEF HISTORY OF AI: 1950S
• Computers were thought of as an electronic brains
• Term “Artificial Intelligence” coined by John McCarthy
– John McCarthy also created Lisp in the late 1950s
• Alan Turing defines intelligence as passing the Imitation
Game (Turing Test)
• AI research largely revolves around toy domains
– Computers of the era didn’t have enough power or memory to
solve useful problems
– Problems being researched include
• games (e.g., checkers)
• primitive machine translation
• blocks world (planning and natural language understanding within the toy
domain)
• early neural networks researched: the perceptron
• automated theorem proving and mathematics problem solving
THE 1960S
• AI attempts to move beyond toy domains
• Syntactic knowledge alone does not work, domain
knowledge required
– Early machine translation could translate English to Russian
(“the spirit is willing but the flesh is weak” becomes “the
vodka is good but the meat is spoiled”)
• Earliest expert system created: Dendral
• Perceptron research comes to a grinding halt when it is
proved that a perceptron cannot learn the XOR operator
• US sponsored research into AI targets specific areas – not
including machine translation
• Weizenbaum creates Eliza to demonstrate the futility of
AI
1970S
• AI researchers address real-world problems and solutions through
expert (knowledge-based) systems
– Medical diagnosis
– Speech recognition
– Planning
– Design
• Uncertainty handling implemented
– Fuzzy logic
– Certainty factors
– Bayesian probabilities
• AI begins to get noticed due to these successes
– AI research increased
– AI labs sprouting up everywhere
– AI shells (tools) created
– AI machines available for Lisp programming
• Criticism: AI systems are too brittle, AI systems take too much time
and effort to create, AI systems do not learn
1980S: AI WINTER
• Funding dries up leading to the AI Winter
– Too many expectations were not met
– Expert systems took too long to develop, too much money to
invest, the results did not pay off
• Neural Networks to the rescue!
– Expert systems took programming, and took dozens of man-
years of efforts to develop, but if we could get the computer to
learn how to solve the problem…
– Multi-layered back-propagation networks got around the
problems of perceptrons
– Neural network research heavily funded because it promised to
solve the problems that symbolic AI could not
• By 1990, funding for neural network research was
slowly disappearing as well
– Neural networks had their own problems and largely could not
solve a majority of the AI problems being investigated
– Panic! How can AI continue without funding?
1990S: ALIFE
• The dumbest smart thing you can do is staying alive
– We start over – lets not create intelligence, lets just create “life”
and slowly build towards intelligence
• Alife is the lower bound of AI
– Alife includes
• evolutionary learning techniques (genetic algorithms)
• artificial neural networks for additional forms of learning
• perception and motor control
• adaptive systems
• modeling the environment
• Let’s disguise AI as something new, maybe we’ll get some
funding that way!
– Problems: genetic algorithms are useful in solving some
optimization problems and some search-based problems, but not
very useful for expert problems
– perceptual problems are among the most difficult being solved,
very slow progress
TODAY: THE NEW (OLD) AI
• Look around, who is doing AI research?
• By their own admission, AI researchers are not doing “AI”, they are doing
– Intelligent agents, multi-agent systems/collaboration
– Ontologies
– Machine learning and data mining
– Adaptive and perceptual systems
– Robotics, path planning
– Search engines, filtering, recommendation systems
• Areas of current research interest:
– NLU/Information Retrieval, Speech Recognition
– Planning/Design, Diagnosis/Interpretation
– Sensor Interpretation, Perception, Visual Understanding
– Robotics
• Approaches
– Knowledge-based
– Ontologies
– Probabilistic (HMM, Bayesian Nets)
– Neural Networks, Fuzzy Logic, Genetic Algorithms
INTELLIGENT SYSTEMS IN BUSINESS

• Intelligent systems in business utilise one or more intelligence tools, usually


to aid decision making
• Provides business intelligence to
– Increase productivity
– Gain competitive advantage
• Examples of business intelligence – information on
– Customer behaviour patterns
– Market trend
– Efficiency bottlenecks
• Examples of successful intelligent systems applications in business:
– Customer service (Customer Relations Modelling)
– Scheduling (eg Mine Operations)
– Data mining
– Financial market prediction
– Quality control
30
CHARACTERISTICS OF INTELLIGENT SYSTEMS

• Possess one or more of these:


– Capability to extract and store knowledge
– Human like reasoning process
– Learning from experience (or training)
– Dealing with imprecise expressions of facts
– Finding solutions through processes similar to natural evolution

• Recent trend
– More sophisticated Interaction with the user through
• natural language understanding
• speech recognition and synthesis
• image analysis

• Most current intelligent systems are based on


– rule based expert systems
– one or more of the methodologies belonging to soft computing

31
THE FIELD OF ARTIFICIAL INTELLIGENCE (AI)
• Primary goal:
– Development of software aimed at enabling machines to solve problems
through human-like reasoning

• Attempts to build systems based on a model of knowledge representation and


processing in the human mind

• Encompasses study of the brain to understand its structure and functions

• In existence as a discipline since 1956

• Failed to live up to initial expectations due to


– inadequate understanding of intelligence, brain function
– complexity of problems to be solved

• Expert systems – an AI success story of the 80s

• Case Based Reasoning systems - partial success

32
EXAMPLES

• Recognizing
Playing chessspeech
• Diagnosing
Driving on the
diseases
highway
• Translating
Mowing thelanguages
lawn
• Data
Answering
miningquestions

January 11, 2006 AI: Chapter 1: Introduction 33


OVERVIEW OF
WHAT IS SEARCH?
• We define the state of the problem being solved as the values of the active
variables
– this will include any partial solutions, previous conclusions, user answers to questions,
etc

• while humans are often


able to make intuitive
leaps, or recall solutions
with little thought, the
computer must search
through various
combinations to find a
solution
• To the right is a search space for a
tic-tac-toe game
SEARCH SPACES AND TYPES OF SEARCH
• The search space consists of all possible states of the problem as it is being
solved
– A search space is often viewed as a tree and can very well consist of an exponential
number of nodes making the search process intractable
– Search spaces might be pre-enumerated or generated during the search process
– Some search algorithms may search the entire space until a solution is found,
others will only search parts of the space, possibly selecting where to search
through a heuristic
• Search spaces include
– Game trees like the tic-tac-toe game
– Decision trees (see next slides)
– Combinations of rules to select in a production system
– Networks of various forms (see next slides)
– Other types of spaces
SEARCH ALGORITHMS AND
REPRESENTATIONS
• Breadth-first • We will study various forms of
representation and uncertainty handling in
• Depth-first
the next class period
• Best-first (Heuristic Search)
• Knowledge needs to be represented
• A*
– Production systems of some form are
• Hill Climbing very common
• Limiting the number of Plies • If-then rules
• Predicate calculus rules
• Minimax
• Operators
• Alpha-Beta Pruning
– Other general forms include semantic
• Adding Constraints networks, frames, scripts
• Genetic Algorithms – Knowledge groups
• Forward vs Backward Chaining – Models, cases
– Agents
– Ontologies
SEARCH ALGORITHMS

• Define precisely a “problem” and its “solution,”


• give several examples to illustrate these definitions.
• Describe several general-purpose search algorithms that can be used to solve these problems
• Several uninformed search algorithms—algorithms that are given no information about the
problem other than its definition. Although some of these algorithms can solve any solvable
problem, none of them can do so efficiently.
• Informed search algorithms, on the other hand, can often do quite well given some idea of
where to look for solutions
• An intelligent agent can adopt a goal and aim at satisfying it.
AGENT
• Imagine an agent in the city of KL, enjoying a touring holiday.
• The agent’s performance measure contains many factors: it wants to
improve food hunting place, improve its dialect, take in the sights, enjoy the
beaches, avoid hangovers, and so on. The decision problem is a complex
one involving many tradeoffs and careful reading of guidebooks. Now,
suppose the agent has a nonrefundable ticket to fly out of KLIA the
following day. In that case, it makes sense for the agent to adopt the goal of
getting to KLIA. Courses of action that don’t reach KLIA on time can be
rejected without further consideration and the agent’s decision problem is
greatly simplified. Goals help organize behavior by limiting the objectives
that the agent is trying to achieve and hence the actions it needs to consider.
• Agent must “examining future actions,”
• The environment must be observable, so that the agent always knows the current state.
• For the agent driving in Malaysia , it’s reasonable to suppose that each city on the map has a sign
indicating its presence to arriving drivers.
• Assume the environment is discrete, so that at any given state there are only finitely many actions
to choose from.
• This is true for navigating in Malaysia because each city is connected to a small number of other
cities.
• Assume the environment is known, so that the agent knows which states are reached by each
action. (Having an accurate map suffices to meet this condition for navigation problems.)
• Assume that the environment is deterministic, so that each action has exactly one outcome.
• Under ideal conditions, this is true for the agent in Malaysia—it means that if it chooses to drive
from Gombak to Kota Bharu, it does end up in Kota Bharu.
• Conditions are not always ideal
SIMPLE PROBLEM
S O LV I N G A G E N T
SEARCH ALGORITHM
• A search algorithm takes a problem as input and returns a solution in the form of an action sequence.
• Once a solution is found, the actions it recommends can be carried out. This is called the execution
phase. Thus, we have a simple “formulate, search, execute” design for the agent, as shown in Figure
( Algorithm)
• After formulating a goal and a problem to solve, the agent calls a search procedure to solve it.
• It then uses the solution to guide its actions, doing whatever the solution recommends as the next thing
to do—typically, the first action of the sequence—and then removing that step from the sequence.
• Once the solution has been executed, the agent will formulate a new goal.
• Notice that while the agent is executing the solution sequence it ignores its percepts when choosing
an action because it knows in advance what they will be.
• An agent that carries out its plans with its eyes closed, so to speak, must be quite certain of what is
going on.
• Control theorists call this an open-loop system, because ignoring the percepts breaks the loop between
agent and environment.
TREE SEARCH
UNINFORMED SEARCH

• The term means that they have no additional information about states beyond
that provided in the problem definition.
• All they can do - generate successors and distinguish a goal state from a
nongoal state.
• All search strategies are distinguished by the order in which nodes are
expanded.

January 11, 2006 AI: Chapter 1: Introduction 46


UNINFORMED SEARCH STRATEGIES
1. BREADTH-FIRST SEARCH
• simple strategy in which the root node is expanded first, then all the successors of the root node
are expanded next, then their successors, and so on. In general, all the nodes are expanded at a
given depth in the search tree before any nodes at the next level are expanded.
UNINFORMED SEARCH STRATEGIES
1I. DEPTH-FIRST SEARCH
• always expands the deepest node in the current frontier of the search tree.
• The search proceeds immediately to the deepest level of the search tree, where the nodes have
no successors.
• As those nodes are expanded, they are dropped from the frontier, so then the search “backs up”
to the next deepest node that still has unexplored successors.
• The depth-first search algorithm is an instance of the graph search algorithm whereas breadth-
first-search uses a FIFO queue, depth-first search uses a LIFO queue.
• A LIFO queue means that the most recently generated node is chosen for expansion.
1. DEPTH-FIRST SEARCH
UNINFORMED SEARCH STRATEGIES
1II. ITERATIVE DEEPENING SEARCH
• general strategy often used in combination with depth-first tree search, that finds the best depth
limit.
• It does this by gradually increasing the limit—first 0, then 1, then 2, and so on—until a goal is
found. This will occur when the depth limit reaches d, the depth of the shallowest goal node.
UNINFORMED SEARCH STRATEGIES
1V. BIDIRECTIONAL SEARCH
• The idea behind bidirectional search is to run two simultaneous searches—one forward from
the initial state and the other backward from the goal—stopping when the two searches meet in
the middle
INFORMED SEARCH ( HEURISTIC
SEARCH)
• uses problem-specific knowledge beyond the definition of the problem itself—can
find solutions more efficiently than an uninformed strategy.
• General approach we will consider is called best-first search.
• Best-first search is an instance of the general TREE-SEARCH or GRAPH-SEARCH algorithm in
which a node is selected for expansion based on an evaluation function, f(n).
• The is EVALUATION FUNCTION construed as a cost estimate, so the node with the lowest
evaluation is expanded first. The implementation of best-first search is identical to that for uniform-
cost search (breadth first base), except for the use of f instead of g to order the priority queue.
• Choice of f in best-first search includes breadth-first, depth-first, and uniform-cost search as
special cases.
• Most best-first algorithms include as a component of f a heuristic function.

January 11, 2006 AI: Chapter 1: Introduction 52


HEURISTIC FUNCTION
• h(n) = estimated cost of the cheapest path from the state at node n to a goal state

• GREEDY BEST-FIRST SEARCH tries to expand the node that is closest to the goal, on the
grounds that this is likely to lead to a solution quickly. Thus, it evaluates nodes by using just
the heuristic function: f(n) = h(n).
• A* SEARCH( pronounce as “A star search) : Minimizing the total estimated solution cost. It
evaluates nodes by combining g(n), the cost to reach the node, and h(n), the cost to get from
the node to the goal.
• Memory-bounded heuristic search: The simplest way to reduce memory requirements for A∗
is to adapt the idea of iterative deepening to the heuristic search context, resulting in the
iterative-deepening A∗ (IDA∗ ) algorithm. >Recursive best-first search ( 2 or more
memories)
EXAMPLE: TIC TAC TOE #1
• Precompiled move
table.
move
table

• For each input encode look


up
board, a specific
move (output
board)

• Perfect play, but is


it AI?

January 11, 2006 AI: Chapter 1: Introduction 54


EXAMPLE: TIC TAC TOE #2

• Represent board as a magic square, one integer per square

• If 3 of my pieces sum to 15, I win

• Predefined strategy:
– 1. Win
– 2. Block
– 3. Take center
– 4. Take corner
– 5. Take any open square

January 11, 2006 AI: Chapter 1: Introduction 55


EXAMPLE: TIC TAC TOE #3

• Given a board, consider all possible moves (future boards) and pick the best one

• Look ahead (opponent’s best move, your best move…) until end of game

• Functions needed:
– Next move generator
– Board evaluation function

• Change these 2 functions (only) to play a different game!

January 11, 2006 AI: Chapter 1: Introduction 56


OVERVIEW OF INTELLIGENT SYSTEM METHODOLOGIES
- EXPERT SYSTEMS (ES)

• Designed to solve problems in a specific domain,


– eg, an ES to assist foreign currency traders

• Built by
– interrogating domain experts
– storing acquired knowledge in a form suitable for solving problems,
using simple reasoning

• Used by
– Querying the user for problem-specific information
– Using the information to draw inferences from the knowledge base
– Supplies answers or suggested ways to collect further inputs

57
OVERVIEW OF EXPERT SYSTEMS (CONT’D)

• Usual form of the expert system knowledge base is a collection of IF …


THEN … rules

• Note: not IF statements in procedural code

• Some areas of ES application:


– banking and finance (credit assessment, project viability)
– maintenance (diagnosis of machine faults)
– retail (suggest optimal purchasing pattern)
– emergency services (equipment configuration)
– law (application of law in complex scenarios)

58
ARTIFICIAL NEURAL NETWORKS (ANN)
• Human brain consists of 100 billion densely interconnected simple processing
elements known as neurons

• ANNs are based on a simplified model of the neurons and their operation

• ANNs usually learn from experience – repeated presentation of example


problems with their corresponding solutions

• After learning the ANN is able to solve problems, even with newish input

• The learning phase may or may not involve human intervention (supervised vs
unsupervised learning)

• The problem solving 'model' developed remains implicit and unknown to the user

• Particularly suitable for problems not prone to algorithmic solutions, eg, pattern
recognition, decision support

59
ARTIFICIAL NEURAL NETWORKS (CONT’D)

• Different models of ANNs depending on


– Architecture
– learning method
– other operational characteristics (eg type of activation function)

• Good at pattern recognition and classification problems

• Major strength - ability to handle previously unseen, incomplete or


corrupted data

• Some application examples:


- explosive detection at airports
- face recognition
- financial risk assessment
- optimisation and scheduling

60
GENETIC ALGORITHMS (GA)

• Belongs to a broader field known as evolutionary computation

• Solution obtained by evolving solutions through a process consisting of


– survival of the fittest
– crossbreeding, and
– mutation

• A population of candidate solutions is initialised (the chromosomes)

• New generations of solutions are produced beginning with the intial population, using specific
genetic operations: selection, crossover and mutation

61
GENETIC ALGORITHMS (CONT’D)

• Next generation of solutions produced from the current population using


– crossover (splicing and joining peices of the solution from parents) and
– mutation (random change in the parameters defining the solution)

• The fitness of newly evolved solution evaluated using a fitness function

• The steps of solution generation and evaluation continue until an acceptable


solution is found

• GAs have been used in


– portfolio optimisation
– bankruptcy prediction
– financial forecasting
– design of jet engines
– scheduling

62
FUZZY SYSTEMS

• Traditional logic is two-valued – any proposition is either true


or false

• Problem solving in real-life must deal with partially true or


partially false propositions

• Imposing precision may be difficult and lead to less than


optimal solutions

• Fuzzy systems handle imprecise information by assigning


degrees of truth - using fuzzy logic

63
FUZZY SYSTEMS (CONT’D)

• FL allow us to express knowledge in vague linguistic terms

• Flexibility and power of fuzzy systems now well recognised


(eg simplification of rules in control systems where
imprecision is found)

• Some applications of fuzzy systems:


– Control of manufacturing processes
– appliances such as air conditioners, washing machines and video
cameras
– Used in combination with other intelligent system methodologies to
develop hybrid fuzzy-expert, neuro-fuzzy,
or fuzzy-GA systems

64
CASE-BASED REASONING (CBR)

• CBR systems solve problems by making use of knowledge about similar


problems encountered in the past

• The knowledge used in the past is built up as a case-base

• CBR systems search the case-base for cases with attributes similar to
given problem

• A solution created by synthesizing similar cases, and adjusting to cater for


differences between given problem and similar cases

• Difficult to do well in practice, but very powerful if you can do it

65
CASE-BASED REASONING (CONT’D)

• CBR systems can improve over time by learning from


mistakes made with past problems

• Application examples:
– Utilisation of shop floor expertise in aircraft repairs
– Legal reasoning
– Dispute mediation
– Data mining
– Fault diagnosis
– Scheduling

66
DATA MINING

• The process of exploring and analysing data for discovering


new and useful information

• Huge volumes of mostly point-of-sale (POS) data are


generated or captured electronically every day, eg,
– data generated by bar code scanners
– customer call detail databases
– web log files in e-commerce etc.

• Organizations are ending up with huge amounts of mostly


day-to-day transaction data

67
DATA MINING (CONT’D)
• It is possible to extract useful information on market and customer
behaviour by “mining" the data

• Note: This goes far beyond simple statistical analysis of numerical data, to
classification and analysis of non-numerical data

• Such information might


– reveal important underlying trends and associations in market behaviour, and
– help gain competitive advantage by improving marketing effectiveness

• Techniques such as artificial neural networks and decision trees have


made it possible to perform data mining involving large volumes of data
(from "data warehouses").

• Growing interest in applying data mining in areas such direct target


marketing campaigns, fraud detection, and development of models to aid
in financial predictions, antiterrorism systems

68
INTELLIGENT SOFTWARE AGENTS (ISA)
• ISAs are computer programs that provide active assistance to information
system users

• Help users cope with information overload

• Act in many ways like a personal assistant to the user by attempting to adapt
to the specific needs of the user

• Capable of learning from the user as well as other intelligent software agents

• Application examples:
– News and Email Collection,
Filtering and Management
– Online Shopping
– Event Notification
– Personal scheduling
– Online help desks, interactive characters
– Rapid Response Implementation
69
LANGUAGE TECHNOLOGY (LT)

• “[The] application of knowledge about human language in computer-based


solutions” (Dale 2004)

• Communication between people and computers is an important aspect of any


intelligent information system

• Applications of LT:
– Natural Language Processing (NLP)
– Knowledge Representation
– Speech recognition
– Optical character recognition (OCR)
– Handwriting recognition
– Machine translation
– Text summarisation
– Speech synthesis Hi, I am Cybelle.
What is your name?

• A LT-based system can be the front-end of


information systems themselves based on
other intelligence tools 70

You might also like