This preview shows pages 1–5. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: 1 Motion Planning Jana Kosecka Department of Computer Science Discrete planning, graph search, shortest path, A* methods Road map methods Configuration space Slides thanks to http://cs.cmu.edu/~motionplanning , JyhMing Lien State space Set of all possible states is represented as graph Nodes states, links possible transitions between the states We will consider setting now where State space is finite or countable infinite Transition function Set of action in each state Initial and goal state Feasible planning generate a set of actions, if the solution exists it must be found in the finite time Search must be systematic, explore unexplored states, keep track what has been visited Strategy: used graph search algorithms 2 Search in Path Planning Various performance measures of search: Optimality, completeness, time and space complexity Uninformed search blind no information is gathered from the environment wavefront algorithm, BFS, DFS Informed search some evaluation function is used, Djikstra, A*, D* Dijkstras algorithm Single shortest path single destination t (single source) Given pair of vertices what is the shortest path from u to v Example: 45 3 35 30 10 50 10 s v1 v2 v3 v5 v4 15 15 20 20 3 Optimal Substructure Cost of the path sum of the weight of all edges Observation 1: Shortest path has a optimal substructure Problem (we will see greedy and dynamic programming techniques) If p is the shortest path from v1 to vk , v1, v2, vi, . vj, vk. The for any i, j the shortest path from vi to vj is contained in it. Proof: if some subpath is not a shortest path then we can substitute it and obtain shorter path then the original (contradiction) Notion of the shortest path is well defined only when there are No negative weight cycles we will just consider positive weights Relaxation Idea: originally assign the path some upper bound and then keep on decreasing it as until you reach the cost of shortest path, d[u] attribute keeps upper bound on the cost of shortest path Relaxation 4 Running time analysis The values of the array are kept in priority queue (minheap) Updating the heap structure takes at most O(lg V) and there are V of such operations. Building the heap takes O(V). Extract min , we need to fix heap structure V times, V lg V Also relaxation needs to Decrease_key for elements in the heap and still fix the heap structure (that can be done in E lg V) The total running time: O ((V+E) lg V) for sparse graphs O (E lg V) E ~ V sparse graphs O (V lg V + E) with Fibonacci heap decrease key amortized cost is O(1) If the priority queue is maintained as linear array then Extract_min takes O(V) and there are V of such operations Then Extract_min will take total O(V^2) + each edge in the Adj. List is examined, then total running time O(V^2 + E) Hence O(V^2) since E is O(V^2)....
View
Full
Document
This note was uploaded on 04/07/2010 for the course CS 685 taught by Professor Luke,s during the Fall '08 term at George Mason.
 Fall '08
 Luke,S

Click to edit the document details