Title: BISCSIGES Short Course Fuzzy Logic and GAFuzzy
1REPRESENTATION METHODS
Represent the information Animals are generally
divided into birds and mammals. Birds are further
classified into large birds and small birds.
Small birds include sparrows, and crows. The
large birds are ostriches. The mammals include
whales, monkeys, and elephants. Charlie is a
elephant.
2Predicate
- types(Animals, Birds,Mammals)
- types(Birds, Largebirds, Smallbirds)
- Etc
- Unify to answer the queries
- IS THERE ANY OTHER WAY?
3Semantic Nets (Graphical Methods)
Animal
Super Class Animal
IS-A
IS-A
Mammal
IS-A
Bird
Large
IS-A
IS-A
IS-A
small
Elephant
whales
instance
instance
Instance
sparrow
crow
charlie
4Semantic Nets (Graphical Methods)
Animal
IS_A Relation Animal Super Bird Class Mammal
Class
IS-A
IS-A
Mammal
IS-A
Bird
Large
IS-A
IS-A
IS-A
small
Elephant
whales
instance
instance
Instance
sparrow
crow
charlie
5Semantic Nets (Graphical Methods)
Animal
IS-A
IS-A
Mammal
IS-A
Bird
Large
IS-A
IS-A
IS-A
small
Elephant
whales
instance
instance
Instance
sparrow
crow
charlie
Instance defines a specific instance of a class
6Semantic Nets (Graphical Methods)
Animal
IS-A
IS-A
Mammal
IS-A
Bird
Large
IS-A
IS-A
IS-A
small
Elephant
whales
instance
instance
Instance
sparrow
crow
charlie
7Semantic Nets (Graphical Methods)
Animal
IS-A
IS-A
Mammal
IS-A
Bird
Large
IS-A
IS-A
IS-A
small
Elephant
whales
instance
instance
Instance
sparrow
crow
charlie
bananas
likes
Can have attribute link likes for instance,
class, superclass
8SEARCH METHODS
- Formulate a problem as a search
- Can answer queries such as
- Is CHARLIE an animal?
9Search Representation
Animal
Level 0 Root node
Mammal
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
10Search Representation
Animal
Level 0 Root node
Mammal
Level 1
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
11Search Representation
Animal
Level 0 Root node
Mammal
Level 1
Bird
small
Large
Elephant
whales
Level 2
sparrow
crow
charlie
12Search Representation
Animal
Level 0 Root node
Mammal
Level 1
Bird
small
Large
Elephant
whales
Level 2
sparrow
crow
charlie
Level 3
13Answering Queries
Is charlie an animal? Answer Traverse the
tree If charlie node present then answer is YES
otherwise NO
Animal
Level 0 Root node
Mammal
Level 1
Bird
small
Large
Elephant
whales
Level 2
sparrow
crow
charlie
Level 3
14Answering Queries
Is charlie an animal? Answer Traverse the
tree If charlie node present then answer is YES
otherwise NO
Animal
Level 0 Root node
Mammal
Level 1
Bird
small
Large
Elephant
whales
Level 2
sparrow
crow
charlie
Level 3
The way one traverses the tree defines SEARCH
TYPES
15SEARCH METHODS
- Blind Search
- Breadth First
- Depth First
- Iterative Deepening
- Heuristic search
- Hill Climbing
- Best First
- A Search
16Standard Terms
Animal
Root node
Mammal
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
17Standard Terms
Animal
Child of Animal node
Mammal
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
18Standard Terms
Animal
Mammal
Bird
Bird and Mammal are Siblings
small
Large
Elephant
whales
sparrow
crow
charlie
19Standard Terms
Animal
Root node
Mammal
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
GOAL node
Path to a node is the list of nodes from the root
to the goal node.
20Standard Terms
Animal
Root node
Mammal
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
GOAL node
Path to a node is the list of nodes to the goal
node (bold lines).
21How to Traverse the Tree to find PATH?
Animal
Mammal
Bird
small
Large
Elephant
whales
sparrow
crow
charlie
22ANALYSIS OF SEARCH STRATEGIES
Completeness is the strategy guaranteed to find
a solution where there is one? Time
Complexity How long does it take to find a
solution? Space Complexity How much memory
does it need to perform the
search? Optimality Does the strategy find the
highest quality solution when there are
several different solutions?
23- Exhaustive Search
- One can systematically check every state that is
reachable from initial state to end out if it is
a goal state. - Search Space
- The set of all states is the search space
- For simple/small search space exhaustive search
is applicable BRUTE FORCE or BLIND SEARCH - For complex search space HEURISTIC SEARCH is used
24GRAPHS AND TREES
- Graphs-
- Consist of a set of nodes with links between them
- links can be directed / undirected
- Path is the sequence of nodes connected nodes via
links. - Acyclic graphs (Paths linking a node
- with itself are absent)
- Trees???
25- Tree-
- A tree is a special kind of graph with only one
path to each node, usually represented with a
special root node at the top - Relationship between nodes
- Parent
- Children
- Sibling
- Ancestor Node, Descendant Node, Leaf Node
26Graphs VS Trees
- Compare the searches in the two (which is
efficient)
27Relating State and Graph Nodes
- Every physical state of a problem can be
represented as a node in a graph/tree - The link between the nodes represent action
required to change the states - For a navigation problem
- Link driving action
- Node cities
- For the Wumpus world problem
- Link movement of the agent
- Node present position of the agent
288 Puzzle Problem states vs. nodes
- A state is a (representation of) a physical
configuration - A node is a data structure constituting part of a
search tree includes state, parent node, action,
path cost g(x), depth
298 Puzzle Problem states vs. nodes
- A state is a (representation of) a physical
configuration - A node is a data structure constituting part of a
search tree includes state, parent node, action,
path cost g(x), depth
30Tree search algorithms
- Basic idea
- offline, simulated exploration of state space by
generating successors of already-explored states
(a.k.a.expanding states)
31Example Romania
32Example Romania
- On holiday in Romania currently in Arad.
- Flight leaves tomorrow from Bucharest
- Formulate goal
- be in Bucharest
- Formulate problem
- states various cities
- actions drive between cities
- Find solution
- sequence of cities, e.g., Arad, Sibiu, Fagaras,
Bucharest
33Tree search example
34Tree search example
35Tree search example
Keep on expanding unless you reach the goal
36Search strategies
- A search strategy is defined by picking the order
of node expansion - Strategies are evaluated along the following
dimensions - completeness does it always find a solution if
one exists? - time complexity number of nodes generated
- space complexity maximum number of nodes in
memory - optimality does it always find a least-cost
solution? - Time and space complexity are measured in terms
of - b maximum branching factor of the search tree
- d depth of the least-cost solution
- m maximum depth of the state space (may be 8)
37Blind Search Strategies
- Breadth First (Breadth wise expansion)
- Depth First (Depth wise expansion)
- Iterative Deepening (combination)
38Breadth-first search
- Expand shallowest unexpanded node
- Implementation
- FIFO queue, i.e., new successors go at end
39Breadth-first search
40Breadth-first search
41Breadth-first search
42Properties of breadth-first search
- Complete? Yes (if b is finite)
- Time? 1bb2b3 bd b(bd-1) O(bd1)
- Space? O(bd1) (keeps every node in memory)
- Optimal? Yes (if cost 1 per step)
- Space is the bigger problem (more than time)
43Breath First Algorithm
- 1. Start with queue initial - state and found
FALSE - While queue not empty and not found do
- (a) Remove the first node n from queue
- (b) if N is a goal state then found TRUE
- (c ) Find all the successor nodes of X, and put
them on the end of the queue
44Goal D
- Open A closed
- Evaluate A not goal
45Goal D
- Open A closed
- Evaluate A not goal
- Open B,Cclosed A
- Evaluate B not goal
46Goal D
- Open A closed
- Evaluate A not goal
- Open B,Cclosed A
- Evaluate B not goal
- Open C,D,Eclosed B,A
- Evaluate C not goal
47Goal D
- Open A closed
- Evaluate A not goal
- Open B,Cclosed A
- Evaluate B not goal
- Open C,D,Eclosed B,A
- Evaluate C not goal
- Open D,E,G,Fclosed C,B,A
- Evaluate D is goal STOP
Path A B D Path Cost The cost in reaching D
from A Path cost 2 A to B1, B to
D1 (assuming a unit cost between nodes)
48Uniform-cost search
- Expand least-cost unexpanded node
- Implementation
- queue ordered by path cost
- Equivalent to breadth-first if step costs all
equal
49Depth-first search
- Expand deepest unexpanded node
- Implementation
- LIFO queue, i.e., put successors at front
50Depth-first search
51Depth-first search
52Depth-first search
53Depth-first search
54Depth-first search
55Depth-first search
56Depth-first search
57Depth-first search
58Depth-first search
59Depth-first search
60Depth-first search
61Properties of depth-first search
- Complete? No fails in infinite-depth spaces,
spaces with loops - Modify to avoid repeated states along path
- ? complete in finite spaces
- Time? O(bm) terrible if m is much larger than d
- but if solutions are dense, may be much faster
than breadth-first - Space? O(bm), i.e., linear space!
- Optimal? No
62Depth First
1. Start with agenda initial - state and
found FALSE 2. While agenda not empty and not
found do (a) Remove the first node N from
agenda (b) if N is not in visited then (I) Add
N to visited (II) if N is a goal state then
found TRUE (III) Put Ns successors on the
front of the stack
63Goal C
- OpenA,closed
- Evaluate A not a goal
64Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
65Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
66Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
- OpenH,I,E,CclosedD,B,A
- Evaluate H not a goal
67Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
- OpenH,I,E,CclosedD,B,A
- Evaluate H not a goal
- OpenI,E,CclosedH,D,B,A
- Evaluate I not a goal
68Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
- OpenH,I,E,CclosedD,B,A
- Evaluate H not a goal
- OpenI,E,CclosedH,D,B,A
- Evaluate I not a goal
- OpenE,CclosedI,H,D,B,A
- Evaluate E not a goal
69Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
- OpenH,I,E,CclosedD,B,A
- Evaluate H not a goal
- OpenI,E,CclosedH,D,B,A
- Evaluate I not a goal
- OpenE,CclosedI,H,D,B,A
- Evaluate E not a goal
- OpenJ,K,CclosedE,I,H,D,B,A
- Evaluate J not a goal
70Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
- OpenH,I,E,CclosedD,B,A
- Evaluate H not a goal
- OpenI,E,CclosedH,D,B,A
- Evaluate I not a goal
- OpenE,CclosedI,H,D,B,A
- Evaluate E not a goal
- OpenJ,K,CclosedE,I,H,D,B,A
- Evaluate J not a goal
- OpenK,CclosedK, E,I,H,D,B,A
- Evaluate K not a goal
71Goal C
- OpenA,closed
- Evaluate A not a goal
- OpenB,CclosedA
- Evaluate B not a goal
- OpenD,E,CclosedB,A
- Evaluate D not a goal
- OpenH,I,E,CclosedD,B,A
- Evaluate H not a goal
- OpenI,E,CclosedH,D,B,A
- Evaluate I not a goal
- OpenE,CclosedI,H,D,B,A
- Evaluate E not a goal
- OpenJ,K,CclosedE,I,H,D,B,A
- Evaluate J not a goal
- OpenK,CclosedJ,E,I,H,D,B,A
- Evaluate K not a goal
- OpenCclosedK,E,I,H,D,B,A
- Evaluate C is goal STOP
72Depth-limited search
- depth-first search with depth limit L
- nodes at depth L have no successors
- Do not apply depth first after a certain depth
73Iterative deepening search L0
For depth 0, evaluate the root node and stop
74Iterative deepening search L1
75Iterative deepening search L1
76Iterative deepening search L1
77Iterative deepening search L2
78Iterative deepening search L2
79Iterative deepening search L3
80Iterative deepening search
- Number of nodes generated in a depth-limited
search to depth d with branching factor b - NDLS b0 b1 b2 bd-2 bd-1 bd
- Number of nodes generated in an iterative
deepening search to depth d with branching factor
b - NIDS (d1)b0 d b1 (d-1)b2 3bd-2
2bd-1 1bd - For b 10, d 5,
- NDLS 1 10 100 1,000 10,000 100,000
111,111
- NIDS 6 50 400 3,000 20,000 100,000
123,456
- Overhead (123,456 - 111,111)/111,111 11
81Properties of iterative deepening search
- Complete? Yes
- Time? (d1)b0 d b1 (d-1)b2 bd O(bd)
- Space? O(bd)
- Optimal? Yes, if step cost 1
82Summary of algorithms