slide1
Download
Skip this Video
Download Presentation
REPRESENTATION METHODS

Loading in 2 Seconds...

play fullscreen
1 / 82

Lecture - PowerPoint PPT Presentation


  • 278 Views
  • Uploaded on

REPRESENTATION METHODS. Represent the information:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Lecture' - Angelica


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

REPRESENTATION 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.

CS 331/531 Dr M M Awais

slide2

Predicate

  • types(Animals, Birds,Mammals)
  • types(Birds, Largebirds, Smallbirds)
  • Etc…
  • Unify to answer the queries
  • IS THERE ANY OTHER WAY?

CS 331/531 Dr M M Awais

slide3

Semantic Nets (Graphical Methods)

Animal

Super Class: Animal

IS-A

IS-A

IS-A

Mammal

Bird

Large

IS-A

IS-A

IS-A

small

Elephant

whales

instance

instance

Instance

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide4

Semantic Nets (Graphical Methods)

Animal

IS_A: Relation

Animal: Super

Bird: Class

Mammal: Class

IS-A

IS-A

IS-A

Mammal

Bird

Large

IS-A

IS-A

IS-A

small

Elephant

whales

instance

instance

Instance

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide5

Semantic Nets (Graphical Methods)

Animal

IS-A

IS-A

IS-A

Mammal

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

CS 331/531 Dr M M Awais

slide6

Semantic Nets (Graphical Methods)

Animal

IS-A

IS-A

IS-A

Mammal

Bird

Large

IS-A

IS-A

IS-A

small

Elephant

whales

instance

instance

Instance

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide7

Semantic Nets (Graphical Methods)

Animal

IS-A

IS-A

IS-A

Mammal

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

CS 331/531 Dr M M Awais

slide8

SEARCH METHODS

  • Formulate a problem as a search
  • Can answer queries such as:
  • Is CHARLIE an animal?

CS 331/531 Dr M M Awais

slide9

Search Representation

Animal

Level 0: Root node

Mammal

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide10

Search Representation

Animal

Level 0: Root node

Mammal

Level 1

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide11

Search Representation

Animal

Level 0: Root node

Mammal

Level 1

Bird

Large

small

Elephant

whales

Level 2

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide12

Search Representation

Animal

Level 0: Root node

Mammal

Level 1

Bird

Large

small

Elephant

whales

Level 2

sparrow

crow

charlie

Level 3

CS 331/531 Dr M M Awais

slide13

Answering 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

Large

small

Elephant

whales

Level 2

sparrow

crow

charlie

Level 3

CS 331/531 Dr M M Awais

slide14

Answering 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

Large

small

Elephant

whales

Level 2

sparrow

crow

charlie

Level 3

The way one traverses the tree defines SEARCH TYPES

CS 331/531 Dr M M Awais

slide15

SEARCH METHODS

  • Blind Search
    • Breadth First
    • Depth First
    • Iterative Deepening
  • Heuristic search
    • Hill Climbing
    • Best First
    • A* Search

CS 331/531 Dr M M Awais

slide16

Standard Terms

Animal

Root node

Mammal

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide17

Standard Terms

Animal

Childof Animal node

Mammal

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide18

Standard Terms

Animal

Mammal

Bird

Bird and Mammal are Siblings

Large

small

Elephant

whales

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide19

Standard Terms

Animal

Root node

Mammal

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

GOAL node

Path to a node is the list of nodes from the root to the goal node.

CS 331/531 Dr M M Awais

slide20

Standard Terms

Animal

Root node

Mammal

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

GOAL node

Path to a node is the list of nodes to the goal node (bold lines).

CS 331/531 Dr M M Awais

slide21

How to Traverse the Tree to find PATH?

Animal

Mammal

Bird

Large

small

Elephant

whales

sparrow

crow

charlie

CS 331/531 Dr M M Awais

slide22

ANALYSIS 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?

CS 331/531 Dr M M Awais

slide23

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

CS 331/531 Dr M M Awais

slide24

GRAPHS 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???

CS 331/531 Dr M M Awais

slide25

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

CS 331/531 Dr M M Awais

graphs vs trees

d

a

c

a

b

c

d

g

f

e

b

Graphs VS Trees
  • Compare the searches in the two (which is efficient)

CS 331/531 Dr M M Awais

relating state and graph nodes
Relating 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

CS 331/531 Dr M M Awais

8 puzzle problem states vs nodes
8 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 costg(x), depth

CS 331/531 Dr M M Awais

8 puzzle problem states vs nodes29
8 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 costg(x), depth

CS 331/531 Dr M M Awais

tree search algorithms
Tree search algorithms
  • Basic idea:
    • offline, simulated exploration of state space by generating successors of already-explored states (a.k.a.~expanding states)

CS 331/531 Dr M M Awais

example romania
Example: Romania

CS 331/531 Dr M M Awais

example romania32
Example: 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

CS 331/531 Dr M M Awais

tree search example
Tree search example

CS 331/531 Dr M M Awais

tree search example34
Tree search example

CS 331/531 Dr M M Awais

tree search example35
Tree search example

Keep on expanding unless you reach the goal

CS 331/531 Dr M M Awais

search strategies
Search 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 ∞)

CS 331/531 Dr M M Awais

blind search strategies
Blind Search: Strategies
  • Breadth First (Breadth wise expansion)
  • Depth First (Depth wise expansion)
  • Iterative Deepening (combination)

CS 331/531 Dr M M Awais

breadth first search
Breadth-first search
  • Expand shallowest unexpanded node
  • Implementation:
    • FIFO queue, i.e., new successors go at end

CS 331/531 Dr M M Awais

breadth first search39
Breadth-first search

CS 331/531 Dr M M Awais

breadth first search40
Breadth-first search

CS 331/531 Dr M M Awais

breadth first search41
Breadth-first search

CS 331/531 Dr M M Awais

properties of breadth first search
Properties of breadth-first search
  • Complete?Yes (if b is finite)
  • Time?1+b+b2+b3+… +bd + b(bd-1) = O(bd+1)
  • Space?O(bd+1) (keeps every node in memory)
  • Optimal? Yes (if cost = 1 per step)
  • Space is the bigger problem (more than time)

CS 331/531 Dr M M Awais

breath first algorithm
Breath 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

CS 331/531 Dr M M Awais

slide44

Goal: D

  • Open = [A]; closed = []
    • Evaluate A not goal

CS 331/531 Dr M M Awais

slide45

Goal: D

  • Open = [A]; closed = []
    • Evaluate A not goal
  • Open = [B,C];closed =[A]
    • Evaluate B not goal

CS 331/531 Dr M M Awais

slide46

Goal: D

  • Open = [A]; closed = []
    • Evaluate A not goal
  • Open = [B,C];closed =[A]
    • Evaluate B not goal
  • Open = [C,D,E];closed = [B,A]
    • Evaluate C not goal

CS 331/531 Dr M M Awais

slide47

Goal: D

  • Open = [A]; closed = []
    • Evaluate A not goal
  • Open = [B,C];closed =[A]
    • Evaluate B not goal
  • Open = [C,D,E];closed = [B,A]
    • Evaluate C not goal
  • Open = [D,E,G,F];closed = [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 B=1, B to D=1

(assuming a unit cost between nodes)

CS 331/531 Dr M M Awais

uniform cost search
Uniform-cost search
  • Expand least-cost unexpanded node
  • Implementation:
    • queue ordered by path cost
  • Equivalent to breadth-first if step costs all equal

CS 331/531 Dr M M Awais

depth first search
Depth-first search
  • Expand deepest unexpanded node
  • Implementation:
    • LIFO queue, i.e., put successors at front

CS 331/531 Dr M M Awais

depth first search50
Depth-first search

CS 331/531 Dr M M Awais

depth first search51
Depth-first search

CS 331/531 Dr M M Awais

depth first search52
Depth-first search

CS 331/531 Dr M M Awais

depth first search53
Depth-first search

CS 331/531 Dr M M Awais

depth first search54
Depth-first search

CS 331/531 Dr M M Awais

depth first search55
Depth-first search

CS 331/531 Dr M M Awais

depth first search56
Depth-first search

CS 331/531 Dr M M Awais

depth first search57
Depth-first search

CS 331/531 Dr M M Awais

depth first search58
Depth-first search

CS 331/531 Dr M M Awais

depth first search59
Depth-first search

CS 331/531 Dr M M Awais

depth first search60
Depth-first search

CS 331/531 Dr M M Awais

properties of depth first search
Properties 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

CS 331/531 Dr M M Awais

depth first
Depth 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 N’s successors on the front of the stack

CS 331/531 Dr M M Awais

slide63

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal

CS 331/531 Dr M M Awais

slide64

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal

CS 331/531 Dr M M Awais

slide65

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal

CS 331/531 Dr M M Awais

slide66

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal
  • Open=[H,I,E,C];closed=[D,B,A]
    • Evaluate H not a goal

CS 331/531 Dr M M Awais

slide67

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal
  • Open=[H,I,E,C];closed=[D,B,A]
    • Evaluate H not a goal
  • Open=[I,E,C];closed=[H,D,B,A]
    • Evaluate I not a goal

CS 331/531 Dr M M Awais

slide68

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal
  • Open=[H,I,E,C];closed=[D,B,A]
    • Evaluate H not a goal
  • Open=[I,E,C];closed=[H,D,B,A]
    • Evaluate I not a goal
  • Open=[E,C];closed=[I,H,D,B,A]
    • Evaluate E not a goal

CS 331/531 Dr M M Awais

slide69

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal
  • Open=[H,I,E,C];closed=[D,B,A]
    • Evaluate H not a goal
  • Open=[I,E,C];closed=[H,D,B,A]
    • Evaluate I not a goal
  • Open=[E,C];closed=[I,H,D,B,A]
    • Evaluate E not a goal
  • Open=[J,K,C];closed=[E,I,H,D,B,A]
    • Evaluate J not a goal

CS 331/531 Dr M M Awais

slide70

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal
  • Open=[H,I,E,C];closed=[D,B,A]
    • Evaluate H not a goal
  • Open=[I,E,C];closed=[H,D,B,A]
    • Evaluate I not a goal
  • Open=[E,C];closed=[I,H,D,B,A]
    • Evaluate E not a goal
  • Open=[J,K,C];closed=[E,I,H,D,B,A]
    • Evaluate J not a goal
  • Open=[K,C];closed=[K, E,I,H,D,B,A]
    • Evaluate K not a goal

CS 331/531 Dr M M Awais

slide71

Goal: C

  • Open=[A],closed=[]
    • Evaluate A not a goal
  • Open=[B,C];closed=[A]
    • Evaluate B not a goal
  • Open=[D,E,C];closed=[B,A]
    • Evaluate D not a goal
  • Open=[H,I,E,C];closed=[D,B,A]
    • Evaluate H not a goal
  • Open=[I,E,C];closed=[H,D,B,A]
    • Evaluate I not a goal
  • Open=[E,C];closed=[I,H,D,B,A]
    • Evaluate E not a goal
  • Open=[J,K,C];closed=[E,I,H,D,B,A]
    • Evaluate J not a goal
  • Open=[K,C];closed=[J,E,I,H,D,B,A]
    • Evaluate K not a goal
  • Open=[C];closed=[K,E,I,H,D,B,A]
    • Evaluate C is goal: STOP

CS 331/531 Dr M M Awais

depth limited search
Depth-limited search
  • depth-first search with depth limit L
  • nodes at depth Lhave no successors
  • Do not apply depth first after a certain depth

CS 331/531 Dr M M Awais

iterative deepening search l 0
Iterative deepening search L=0

For depth 0, evaluate the root node and stop

CS 331/531 Dr M M Awais

iterative deepening search l 1
Iterative deepening search L=1

CS 331/531 Dr M M Awais

iterative deepening search l 175
Iterative deepening search L=1

CS 331/531 Dr M M Awais

iterative deepening search l 176
Iterative deepening search L=1

CS 331/531 Dr M M Awais

iterative deepening search l 2
Iterative deepening search L=2

CS 331/531 Dr M M Awais

iterative deepening search l 278
Iterative deepening search L=2

CS 331/531 Dr M M Awais

iterative deepening search l 3
Iterative deepening search L=3

CS 331/531 Dr M M Awais

iterative deepening search
Iterative 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 = (d+1)b0 + d b^1 + (d-1)b^2 + … + 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%

CS 331/531 Dr M M Awais

properties of iterative deepening search
Properties of iterative deepening search
  • Complete? Yes
  • Time?(d+1)b0 + d b1 + (d-1)b2 + … + bd = O(bd)
  • Space?O(bd)
  • Optimal? Yes, if step cost = 1

CS 331/531 Dr M M Awais

summary of algorithms
Summary of algorithms

CS 331/531 Dr M M Awais

ad