Download presentation
Presentation is loading. Please wait.
Published byShanon Charles Modified over 8 years ago
1
Hybrid Architectures Today: More Planning Tuesday: Examples of Hierarchical Systems Hand-out Midterm How can "natural" interaction with a robot be designed?
2
Pathing: Deliberative Navigation How do you get from point A to point B? –Consider possible paths before moving –Representation of the world –Search through a state space
3
Search: A* f(n) = g(n) + h(n) –g(n) Cost of going from the starting state to state n –h(n) heuristic estimate of the cost of going from state n to the goal state Guaranteed to find a solution if one exists Will find optimal solution –Heuristic must be admissible Variations –IDA* (Iterative Deepening) –Bi-directional –D* (Dynamic Planning) –Hierarchical A*
4
Admissible Heuristics for Pathing Straight Line Distance h(A) = sqrt((A.x-goal.x)^2 + (A.y-goal.y)^2) Manhattan Distance h(A) = (abs(A.x-goal.x) + abs(A.y-goal.y)) Diagonal Distance h(A) = max(abs(A.x-goal.x), abs(A.y-goal.y)) Adjust the magnitude by a heuristic weighting factor to estimate the cost of traversing the terrain.
5
A* Primer Create a node containing the goal state node_goal Create a node containing the start state node_start Put node_start on the open list While the OPEN list is not empty { Get the node off the open list with the lowest f-value and call it node_current Of node_current is the same state as node_goal we have found the solution; return solution Generate each state node_successor that can come after node_current For each node_successor of node_current { Set the cost of this node to be the cost of node_current plus the cost to get to node_successor If this node is on the OPEN list but the existing one is better then discard this successor; break If this node is on the CLOSED list but the existing one is better then discard this successor; break Remove occurrences of this state from OPEN and CLOSED Set the parent of node_successor to node_current Set h-value to be the estimated distance to node_goal Add this node to the OPEN list by f-value } Return failure Do you have to have an OPEN and CLOSED list?
6
A* Example: European Vacation
7
On the Road to Bucharest A* Pathing: Arad to Bucharest
8
Overestimating the Heuristic A* chooses which location to expand based on the value f(n) = g(n) + h(n) If h(n) is admissible, A* will generate all paths that underestimate the actual path cost, thereby guaranteeing that the solution path found is the optimal one.
9
Additional Points Cost of Travel –Additional costs associated with path or region. –Terrain –Uphill & down hill costs A good heuristic estimate will expand fewer nodes –If h 2 (n) >= h 1 (n) for all n then h 2 dominates h 1 –If both are admissible h 1 will expand as many or more nodes than h 2 An efficient data structure is important for storing the Open and Close lists. A* Demo
10
World Representations
11
Obstacles What should the robot do if it cannot complete the plan? Algorithm Complexity –Time ? –Space? –Ways to reduce?
12
Knowledge Representation for Task Plans Knowledge Representation Language KRL = Representation + Inference Method Representation: Language for representing facts about the domain Inference: method(s) for establishing new facts from known facts The store of agent’s knowledge is termed its “knowledge base” –Derived from the idea of a data base –“Knowledge-Based Agents”
13
KRL: Syntax & Semantics Syntax Rule for constructing valid sentences. Valid configuration of symbols that constitute a sentence. Example: X >= YValid Math Sentence =XY>Invalid Math Sentence
14
Example Syntax
16
KRL: Syntax & Semantics Semantics “Meaning” of a sentence. Determines the facts in the agent’s world to which the sentence refers. What an agent “believes”. Example: X >= YFalse if Y is bigger than X True if otherwise
17
KRL Limitations to Meaning
18
Where does meaning come from? What the agent understands: For defeating the blob Gandolf gets: 2 gold * 45 gold Gandolf’s gold = 90 gold What we understand: If nothing is on top of BLOCK_A then BLOCK_A can be picked up If the DOOR between CURRENT_ROOM and NEXT_ROOM is open then NEXT_ROOM can be entered Symbol Grounding Problem –A symbol system is a set of symbols that can be operated on by a set of rules (KRL). There is no need to make use of the meaning, only the syntax. So where does the meaning come from?
19
Planning A plan is a sequence of actions that achieves a goal
20
Approaches to Planning State-space search –Search through the possible future states that can be reached by applying different sequences of actions Plan-space Search –Search through possible plans by applying operators that modify plans
21
STRIPS Planner STRIPS operators –Pre-conditions: what must be true so I can take this action –Deletions: what must be deleted if action is taken –Additions: what must be added if action is taken
23
Means-Ends Analysis
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.