10 Pages

l13b_incr_pat_pln

Course: COG 3171, Spring 2005
School: UCLA
Rating:
 
 
 
 
 

Word Count: 4651

Document Preview

Planning Optimal Outline Incremental Path Path Planning in Partially Known Environments. Continuous Optimal Path Planning Dynamic A* Incremental Continuous Planning and Dynamic A* A* (LRTA*) [Appendix] Prof. Brian Williams (help from Ihsiang Shu) 16.412/6.834 Cognitive Robotics March 16 th, 2004 [Zellinsky, 92] Compute Optimal Path 1. Generate global path plan from initial map. J M N O 2....

Register Now

Unformatted Document Excerpt

Coursehero >> California >> UCLA >> COG 3171

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
Planning Optimal Outline Incremental Path Path Planning in Partially Known Environments. Continuous Optimal Path Planning Dynamic A* Incremental Continuous Planning and Dynamic A* A* (LRTA*) [Appendix] Prof. Brian Williams (help from Ihsiang Shu) 16.412/6.834 Cognitive Robotics March 16 th, 2004 [Zellinsky, 92] Compute Optimal Path 1. Generate global path plan from initial map. J M N O 2. Repeat until goal reached or failure: E I L G B D H K S A C F Execute next step in current global path plan Update map based on sensors. If map changed generate new global path from map. Begin Executing Optimal Path Obstacle Encountered! h=4 h=3 h=2 h=1 h=4 h=3 h=1 J M N O J M N O h=3 h=2 h=1 h=0 h=3 h=2 h=1 h=0 h=1 E G E I L G h=2 h=1 h=4 h=3 h=2 h=1 D H K B D H K h=5 h=4 h=3 h=2 h=5 h=4 h=3 h=2 S L h=3 B I h=4 A C F S A C F Robot moves along backpointers towards goal. Uses sensors to detect discrepancies along way. At state A, robot discovers edge from D to H is blocked (cost 5,000 units). Update map and reinvoke planner. 1 Continue Path Execution Second Obstacle, Replan! h=4 h=1 h=4 h=3 h=1 N O J M N O h=2 h=1 h=0 h=3 h=2 h=1 h=0 E I L G E I L G h=4 h=3 h=2 h=1 h=4 h=3 h=2 h=1 B D H K B D H K h=5 h=4 h=3 h=2 h=5 h=4 h=3 h=2 S h=1 M h=3 h=3 J A C F S A C F As previous path is still optimal. Continue moving robot along back pointers. Path Execution Achieves Goal h=4 h=3 h=1 J M N h=3 h=2 h=1 h=1 O h=0 E G h=2 D H h=4 h=5 S A C At C robot discovers blocked edges from C to F and H (cost 5,000 units). Update map and reinvoke planner. Outline Optimal Path Planning in Partially Known Environments. Continuous Optimal Path Planning Dynamic K A* Incremental A* (LRTA*) [Appendix] h=2 F Follow back pointers to goal. No further discrepancies detected; goal achieved! What is Continuous Optimal Path Planning? h=1 h=5 L h=3 B I h=4 h=1 Supports search as a repetitive online process. Exploits similarities between a series of searches to solve much faster than solving each search starting from scratch. Reuses the identical parts of the previous search tree, while updating differences. Solutions guaranteed to be optimal. On the first search, behaves like traditional algorithms. D* behaves exactly like Dijkstras . Incremental A* A* behaves exactly like A*. Dynamic A* (aka D*) [Stenz, 94] 1. 2. Generate global path plan from initial map. Repeat until Goal reached, or failure. Execute next step of current global path plan. Update map based on sensor information. Incrementally update global path plan from map changes . 1 to 3 orders of magnitude speedup relative to a non-incremental path planner. 2 Map and Path Concepts D* Search Concepts c(X,Y) : Cost to move from Y to X. c(X,Y) is undefined if move disallowed. o(G,X) : NEW : has no estimate h. estimate needs to be propagated. estimate propagated. OPEN : CLOSED : Neighbors(X) : State tag t(X) : h(G,X) : Any Y such that c(X,Y) or c(Y,X) is defined. True optimal path cost to Goal from X. States with estimates to be propagated to other states. States on list tagged OPEN Sorted by key function k (defined below). Estimate of optimal path cost to goal from X. OPEN list : b(X) = Y : backpointer from X to Y. Y is the first state on path from X to G. D* Fundamental Search Concepts Minimum of h(G,X) before modification, and all values assumed by h(G,X) since X was placed on the OPEN list. Lowered state : k(G,X) = current h(G,X), Propagate Running D* First Time on Graph k(G,X) : key function decrease to descendants and other nodes. Initially Mark G Open and Queue it Mark all other states New Run Process_States on queue until path found or empty. When edge cost c(X,Y) changes If X is marked Closed, then Raised state : k(G,X) < current h(G,X), Update h(X ) Mark X open and queue with key h(X ). Propagate Try increase to dscendants and other nodes. to find alternate shorter paths. Use D* to Compute Initial Path J N EW Use D* to Compute Initial Path M N O NEW NEW NEW N EW M N O NEW NEW NEW G E NEW I NEW L NEW J OPEN List 1 (0,G) h=0 E NEW I NEW L NEW NEW B D H K NEW NEW NEW NEW S A C NEW NEW B NEW States initially tagged NEW (no cost determined yet). D H K NEW F NEW G OPEN NEW NEW N EW S A C F NEW NEW NEW 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) NEW Add Goal node to the OPEN list. Process OPEN list until the robots current state is CLOSED. 3 Process_State: New or Lowered State Use D* to Compute Initial Path Remove from Open list , state X with lowest k If X is a new/lowered state, its path cost is optimal! Then propagate to each neighbor Y J N EW M N O NEW NEW NEW h=0 E NEW If Y is New, give it an initial path cost and propagate. If Y is a descendant of X, propagate any change. Else, if X can lower Ys path cost, Then do so and propagate. I NEW L NEW G OPEN B D H K NEW NEW NEW N EW S h=1 N EW J M N O NEW NEW OPEN h=1 h=0 E I NEW L OPEN h=1 B K N EW OPEN A C F NEW H NEW S D NEW NEW NEW h =2 O CLOSED h=1 h=0 I OPEN L CLOSED G CLOSED h=2 NEW N OPEN h=2 E h=1 B D H K NEW N EW OPEN CLOSED h=2 S A C F NEW J NEW NEW M N O NEW NEW OPEN h=1 h=0 I NEW L OPEN h=1 G 1 2 3 4 B H K NEW OPEN CLOSED S A C F NEW N EW 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) OPEN h=2 Add new neighbors of K on to the OPEN list Create backpointers . Use D* to Compute Initial Path h=2 OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) J h=1 NEW N O OPEN CLOSED h=1 h=0 I OPEN L CLOSED CLOSED h=2 E M NEW h=2 N EW 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) h=1 G B D H K NEW NEW OPEN OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) 5 (2,H) (2,I) (2,N) (3,C) h=2 S A C F NEW 1 2 3 4 CLOSED h =3 OPEN Add new neighbors of L, then O on to the OPEN list Create backpointers . D NEW OPEN List 1 (0,G) 2 (1,K) (1,L) (1,O) 3 (1,L) (1,O) (2,F) (2,H) CLOSED h =2 NEW h=1 M Add new neighbors of G onto the OPEN list Create backpointers to G. N EW 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) Use D* to Compute Initial Path NEW NEW E NEW Add new neighbors of G onto the OPEN list Create backpointers to G. J F NEW h=1 OPEN List 1 (0,G) 2 (1,K) (1,L) (1,O) N EW N EW C NEW 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) Use D* to Compute Initial Path G CLOSED NEW A NEW Use D* to Compute Initial Path OPEN List 1 (0,G) NEW OPEN CLOSED Continue until current state S is closed. 4 Use D* to Compute Initial Path h=2 J N EW N O OPEN CLOSED h=2 E NEW h=1 M NEW I OPEN h =3 h=1 L CLOSED h=2 h=0 G CLOSED h=1 B H K OPEN CLOSED CLOSED h=3 A C NEW N EW OPEN h=3 E OPEN h=3 h=2 O CLOSED h=2 I CLOSED h=3 K h=3 h=2 F S A C NEW NEW OPEN 1 2 3 4 OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) 5 (2,H) (2,I) (2,N) (3,C) 6 (2,I) (2,N) (3,C) (3,D) 7 (2,N) (3,C) (3,D) (3,E) (3,M) F CLOSED CLOSED h=1 O h=3 h=2 h=1 h=0 E I L G CLOSED CLOSED CLOSED h=3 h=2 h=1 B D H K N EW OPEN CLOSED CLOSED h=3 h=2 S A C F NEW NEW OPEN 1 2 3 4 5 6 7 8 h=3 OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) J N O CLOSED CLOSED h=3 h=2 h=1 h=0 E OPEN I CLOSED L CLOSED G CLOSED h =4 h=3 h=2 h=1 B D H K OPEN CLOSED CLOSED CLOSED h=2 S A C F N EW OPEN CLOSED CLOSED N O CLOSED CLOSED h=3 h=2 h=1 h=0 E I CLOSED L CLOSED CLOSED h=3 h=2 h=1 OPEN G B D H K NEW OPEN CLOSED CLOSED h =4 h=3 h=2 S h=1 M h=1 M OPEN 1 2 3 4 5 6 7 8 9 Continue until current state S is closed.. 10 OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) C F OPEN CLOSED CLOSED 1 2 3 4 OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) 5 6 7 8 (2,H) (2,I) (2,N) (3,C) (2,I) (2,N) (3,C) (3,D) (2,N) (3,C) (3,D) (3,E) (3,M) (3,C) (3,D) (3,E) (3,M) 9 (3,D) (3,E) (3,M) (4,A) Continue until current state S is closed. Use D* to Compute Initial Path h =4 J h=3 h=2 h=1 OPEN M N O OPEN CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h =4 h=3 h=2 h=1 (2,H) (2,I) (2,N) (3,C) (2,I) (2,N) (3,C) (3,D) (2,N) (3,C) (3,D) (3,E) (3,M) (3,C) (3,D) (3,E) (3,M) (3,D) (3,E) (3,M) (4,A) (3,E) (3,M) (4,A) (4,B) A NEW Use D* to Compute Initial Path OPEN h=2 N EW (2,H) (2,I) (2,N) (3,C) (2,I) (2,N) (3,C) (3,D) (2,N) (3,C) (3,D) (3,E) (3,M) (3,C) (3,D) (3,E) (3,M) Continue until current state S is closed. N EW Continue until current state S is closed. Use D* to Compute Initial Path CLOSED h=3 h=1 CLOSED CLOSED h=4 G H N h=2 h=2 h=0 CLOSED CLOSED CLOSED h=3 L D M J h=1 CLOSED OPEN OPEN OPEN h=1 N OPEN B Continue until current state S is closed. J h=2 M OPEN N EW N EW J N EW 5 (2,H) (2,I) (2,N) (3,C) 6 (2,I) (2,N) (3,C) (3,D) Use D* to Compute Initial Path h =3 OPEN List (0,G) (1,K) (1,L) (1,O) (1,L) (1,O) (2,F) (2,H) (2,F) (2,H) (2,I) (2,N) h=2 S D NEW 1 2 3 4 Use D* to Compute Initial Path G B D H K OPEN CLOSED CLOSED 14 CLOSED h=4 h=3 h=2 S A C F NEW OPEN List 10 (3,E) (3,M) (4,A) (4,B) 11 (3,M) (4,A) (4,B) (4,J) 12 13 OPEN CLOSED CLOSED Continue until current state S is closed. 5 Use D* to Compute Initial Path h =4 J OPEN h=3 E h=3 h=2 h=1 M N O CLOSED CLOSED CLOSED h=2 I h=1 L h=0 G CLOSED CLOSED CLOSED CLOSED h=4 h=3 h=2 h=1 OPEN List 10 (3,E) (3,M) (4,A) (4,B) 11 (3,M) (4,A) (4,B) (4,J) 12 (3,M) (4,A) (4,B) 13 Use D* to Compute Initial Path h=4 J OPEN h=3 E h=3 h=2 h=1 M N O CLOSED CLOSED CLOSED h=2 I h=1 L h=0 G CLOSED CLOSED CLOSED CLOSED h=4 h=3 h=2 h=1 14 B D H K B D H K OPEN CLOSED CLOSED CLOSED OPEN CLOSED CLOSED CLOSED h=4 h=3 h=2 h=5 h=4 h=3 S A C F S A C (4,B) (4,J) (5,S) 14 15 F OPEN CLOSED CLOSED OPEN CLOSED CLOSED CLOSED Continue until current state S is closed. Use D* to Compute Initial Path h=4 J h=3 h=2 h=1 OPEN M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED G CLOSED h=4 h=3 h=2 h=1 B D H K CLOSED CLOSED CLOSED CLOSED h=5 h=4 h=3 10 11 12 13 OPEN List (3,E) (3,M) (4,A) (4,B) (3,M) (4,A) (4,B) (4,J) (3,M) (4,A) (4,B) (4,B) (4,J) (5,S) 14 (4,J) (5,S) 15 Continue until current state S is closed. Use D* to Compute Initial Path h=4 J h=3 h=2 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h=4 h=3 h=2 h=1 G B D H K CLOSED CLOSED CLOSED CLOSED h=5 h=2 h=4 h=3 10 11 12 13 OPEN List (3,E) (3,M) (4,A) (4,B) (3,M) (4,A) (4,B) (4,J) (3,M) (4,A) (4,B) (4,B) (4,J) (5,S) 14 (4,J) (5,S) 15 (5,S) h=2 S A C F S A C F OPEN OPEN List (3,E) (3,M) (4,A) (4,B) (3,M) (4,A) (4,B) (4,J) (3,M) (4,A) (4,B) h=2 NEW 10 11 12 13 CLOSED CLOSED CLOSED OPEN CLOSED CLOSED CLOSED Continue until current state S is closed. D* Completed Initial Path h=4 J h=3 h=2 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 E I L h=0 G CLOSED CLOSED CLOSED CLOSED h=4 h=3 h=2 h=1 B D H K CLOSED CLOSED CLOSED CLOSED h=5 h=4 h=3 h=2 10 11 12 13 OPEN (3,M) List (3,E) (4,A) (4,B) (3,M) (4,A) (4,B) (4,J) (3,M) (4,A) (4,B) (4,B) (4,J) (5,S) 14 (4,J) (5,S) 15 (5,S) 16 NULL Continue until current state S is closed. Begin Executing Optimal Path h=4 J h=3 h=2 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 E I L h=0 G CLOSED CLOSED CLOSED CLOSED h=4 h=3 h=2 h=1 B D H K CLOSED CLOSED CLOSED CLOSED h=5 h=4 h=3 h=2 S A C F S A C F CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED Done: Current state S is closed, and Open list is empty. Robot moves along backpointers towards goal Uses sensors to detect discrepancies along way. 6 Obstacle Encountered! h=4 h=3 J h=1 h=1 M h=3 N CLOSED CLOSED h=2 E When edge cost c(X,Y) changes If X is marked Closed, then O CLOSED CLOSED I h=1 L Running D* After Edge Cost Change h=0 G CLOSED CLOSED CLOSED h=4 h=3 h=2 Update h(X) CLOSED h=1 B D H CLOSED OPEN CLOSED h=5 h=4 h=3 h=2 S A C F CLOSED CLOSED CLOSED Mark K CLOSED CLOSED until or h=4 h=3 J h=1 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED G CLOSED h=4 h=3 h=2 OPEN List 1 (2,H) 2 3 4 D* Update From First Obstacle h=4 h=1 B D H K CLOSED CLOSED OPEN CLOSED h=5 h=4 h=3 h=2 S A C F CLOSED CLOSED CLOSED Function: Modify-Cost(X,Y,eval) 1: c(X,Y ) = eval 2: if t(X ) = CLOSED then Insert(X,h(X )) 3: return Get-Kmin() Assign cost of 5,000 for D to H Propagate changes starting at H Process_State: Raised State If X is a raise state its cost might be suboptimal. Try reducing cost of X using an optimal neighbor Y. Propagate Xs cost to each neighbor Y If Y is New, Then give it an initial path cost and propagate. If Y is a descendant of X, Then propagate ANY change . If X can lower Ys path cost, Postpone: Queue X to propagate when optimal (reach current h(X)) O CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h = 5002 h=2 avoids creating cycles. OPEN List 1 (2,H) 2 (3,D) 3 4 h=1 G B D H K CLOSED OPEN CLOSED CLOSED h=5 h=4 h=3 h=2 S A C F CLOSED CLOSED CLOSED 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) CLOSED Raise cost of Hs descendant D, and propagate. D* Update From First Obstacle h=4 J h=3 h=1 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h=4 h h =002 =53 h=2 OPEN List 1 (2,H) 2 (3,D) 3 4 h=1 B CLOSED h=5 D OPEN h=4 G H K CLOSED CLOSED h=3 h=2 S A C CLOSED CLOSED 4: if kold < h(X ) then 5: for each neighbor Y of X: 6: if h(Y ) = kold and h(X ) > h(Y ) + C(Y,X) then 7: b(X ) = Y; h(X ) = h(Y ) + c(Y,X); F CLOSED CLOSED Postpone: Queue Y to propagate when optimal (reach current h(Y )). Postponement h=1 N CLOSED If Y can lower Xs path cost, and Y is suboptimal, h=1 M CLOSED h(Y ) = [h(X ) before it was raised] J h=3 CLOSED h=4 CLOSED path to current state is shown optimal, queue Open List is empty. At state A, robot discovers edge D to H is blocked off (cost 5,0 units). 00 Update map and reinvoke D* D* Update From First Obstacle X open and queue, key is new h(X). Run Process_State on queue D may not be optimal, check neighbors for better path. Transitioning to I is better, and Is path is optimal, so update D. 7 D* Update From First Obstacle h=4 J CLOSED h=3 E CLOSED h=4 h=3 h=1 h=1 M N O CLOSED CLOSED CLOSED h=2 I CLOSED h=3 h=1 L CLOSED h=2 h=0 G CLOSED OPEN List 1 2 (3,D) 3 NULL 4 Continue Path Execution h=4 J CLOSED h=3 E CLOSED h=4 h=1 h=3 h=1 h=1 M N O CLOSED CLOSED CLOSED h=2 I CLOSED h=3 h=1 L CLOSED h=2 h=0 G CLOSED OPEN List 1 2 (3,D) 3 NULL 4 h=1 B D H K B D H K CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED h=5 h=4 h=3 h=2 h=5 h=4 h=3 h=2 S A C F S A C F CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED CLOSED All neighbors of D have consistent h -values. No further propagation needed. Second Obstacle! h=4 J h=3 h=1 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED G CLOSED h=4 h=3 h=2 D* Update From Second Obstacle OPEN List 1 (2,F) (2,H) 2 3 4 h=4 h=1 B D H K CLOSED CLOSED OPEN CLOSED h=5 h=4 h=3 h=2 S A C F CLOSED CLOSED CLOSED Function: Modify-Cost(X,Y,eval) 1: c(X,Y ) = eval 2: if t(X ) = CLOSED then Insert(X,h(X )) 3: return Get-Kmin() D* Update From Second Obstacle h=4 J h=3 h=1 h=1 M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED G CLOSED h=4 h=3 h=2 B D H K CLOSED CLOSED CLOSED h=5 h=4 h = 5002 h =5 h=2 S A C F CLOSED Closed Open OPEN List 1 (2,F) (2,H) 2 (3,C) 3 4 O CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h=3 h=2 4: if kold < h(X ) then 5: for each neighbor Y of X: 6: if h(Y ) = kold and h(X ) > h(Y ) + C(Y,X) then 7 : b(X ) = Y; h(X ) = h(Y ) + c(Y,X); C may be suboptimal, check neighbors; Better path through A! However, A may be suboptimal, and updating would create a loop! OPEN List 1 (2,F) (2,H) 2 (3,C) 3 4 h=1 G B D H K CLOSED CLOSED CLOSED CLOSED h=4 h = 5002 h=5 h=2 S A C F CLOSED OPEN 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) CLOSED Processing F raises descendant Cs cost, and propagates. Processing H does nothing. D* Update From Second Obstacle h=4 J h=3 h=1 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h=4 CLOSED h=1 N CLOSED h=1 CLOSED h=1 M CLOSED CLOSED At C robot discovers blocked edges C to F and H (cost 5,000 units). Update map and reinvoke D* until H(current position optimal). CLOSED J h=3 CLOSED h=4 OPEN As path optimal. Continue moving robot along backpointers. h=3 h=2 OPEN List 1 (2,F) (2,H) 2 (3,C) 3 (4,A) 4 h=1 G B D H K CLOSED CLOSED CLOSED CLOSED h=5 h = 5003 h = 5002 h=2 S A C F CLOSED OPEN CLOSED CLOSED 15: for each neighbor Y of X: 16: if t(Y) = NEW or (b(Y) = X and h(Y) ? h(X) + c(X,Y)) 17: then b(Y) = X; Insert(Y,h(X) + c(X,Y)) 18: Dont change Cs path to A (yet). Instead, propagate increase to A. 8 Process_State: Raised State If X is a raise state its cost might be suboptimal. Try reducing cost of X using an optimal neighbor Y. propagate Xs cost to each neighbor Y h=4 J CLOSED h(Y ) = [h(X ) before it was raised] h=3 If Y is New, Then give it an initial path cost and propagate. If Y is a descendant of X, Then propagate ANY change . If X can lower Ys path cost, D* Update From Second Obstacle Postpone: Queue X to propagate when optimal (reach current h(X)) E CLOSED h=4 h=4 J h=3 h=1 h=1 M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 h=0 E CLOSED I CLOSED L CLOSED CLOSED h=4 h=3 h=2 OPEN List 1 (2,F) (2,H) 2 (3,C) 3 (4,A) 4 B D H K CLOSED CLOSED CLOSED CLOSED h=5 h =4 h = 5002 h=2 S A C F CLOSED OPEN CLOSED I h=3 h=1 L CLOSED h=2 h=0 G CLOSED OPEN List 1 (2,F) (2,H) 2 (3,C) 3 (4,A) 4 h=1 H K CLOSED CLOSED h=5 h = 5003 h = 5002 h=2 S A C F CLOSED OPEN CLOSED 4: if kold < h(X ) then 5: for each neighbor Y of X: 6: if h(Y ) = kold and h(X ) > h(Y ) + C(Y,X) then 7: b(X ) = Y; h(X ) = h(Y ) + c(Y,X ); CLOSED A may not be optimal, check neighbors for better path. Transitioning to D is better, and Ds path is optimal, so update A. Process_State: New or Lowered State h=1 G h=2 CLOSED D CLOSED O CLOSED CLOSED D* Update From Second Obstacle h=1 N CLOSED B Postpone: Queue Y to propagate when optimal (reach current h(Y )). avoids creating cycles. h=1 M CLOSED If Y can lower Xs path cost, and Y is suboptimal, Postponement h=3 CLOSED Remove from Open list , state X with lowest k If X is a new/lowered state its path cost is optimal, Then propagate to each neighbor Y If Y is New, give it an initial path cost and propagate. Y is a descendant of X, propagate any change. Else, if X can lower Ys path cost, Then do so and propagate. If 4: if kold < h(X ) then 5: for each neighbor Y of X: 6: if h(Y ) = kold and h(X ) > h(Y ) + C(Y,X) then 7: b(X ) = Y; h(X ) = h(Y ) + c(Y,X ); CLOSED A may not be optimal, check neighbors for better path. Transitioning to D is better, and Ds path is optimal, so update A. D* Update From Second Obstacle h=4 J h=3 h=1 h=1 CLOSED M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 E I L h=0 G CLOSED CLOSED CLOSED CLOSED h=4 h=3 h=2 1 2 3 4 OPEN List (2,F) (2,H) (3,C) (4,A) (5,C) D* Update From Second Obstacle h=4 J B D H K CLOSED CLOSED CLOSED h=5 h =4 h=5 h=2 S A C F CLOSED CLOSED OPEN CLOSED A can improve neighbor C, so queue C. h=1 h=1 M N O CLOSED CLOSED CLOSED h=3 h=2 h=1 E I L h=0 G CLOSED CLOSED CLOSED CLOSED h=4 h=3 h=2 h=1 h=1 CLOSED h=3 CLOSED for each neighbor Y of X: 17: if (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y )) then 18: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) 19: else 20: if b(Y ) ? X and h(Y ) > h(X ) + c(X,Y) then 21: Insert(X,h(X )) B D H K CLOSED CLOSED CLOSED CLOSED h=5 h=4 h=5 h=2 S A C F CLOSED CLOSED OPEN CLOSED OPEN List 1 2 3 4 (2,F) (2,H) (3,C) (4,A) (5,C) 5 8: if kold = h(X ) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: (b(Y ) = X and h(Y ) ? h(X ) + c(X,Y)) or 12: (b(Y ) ? X and h(Y ) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y )) C lowered to optimal; no neighbors affected. Current state reached, so Process_State terminates. 9 Complete Path Execution h=4 J h=3 M h=1 N CLOSED CLOSED CLOSED h=3 h=2 h=1 E CLOSED h=4 I CLOSED h=3 L CLOSED h=2 O CLOSED h=0 G CLOSED h=1 B D CLOSED CLOSED CLOSED CLOSED h=5 h=4 h=5 h=2 S CLOSED A CLOSED H h=1 C CLOSED K F CLOSED Follow back pointers to Goal. No further discrepancies detected; goal achieved! Recap: Continuous Optimal Planning D* Pseudo Code Function: Process- State() 1: X = Min-State() 2: if X=NULL then return -1 3: kold = Get -Kmin(); Delete(X ) 4: if kold < h(X) then 5: for each neighbor Y of X: 6: if h(Y ) = kold and h(X) > h(Y ) + C(Y,X) then 7: b(X ) = Y; h(X ) = h(Y ) + c(Y,X); 8: if kold = h(X) then 9: for each neighbor Y of X: 10: if t(Y ) = NEW or 11: ( b(Y) = X and h(Y) ? h(X ) + c(X,Y)) or 12: ( b(Y) ? X and h(Y) > h(X ) + c(X,Y)) then 13: b(Y ) = X; Insert(Y,h(X ) + c(X,Y)) 14: else 15: for each neighbor Y of X: if t(Y ) = NEW or 16: ( b(Y) = X and h(Y) ? h(X ) + c(X,Y)) then 17: b(Y ) = X; Insert(Y,h(X ) + c(X,Y)) 18: 19: else if b(Y) ? X and h(X) > h(X ) + c(X,Y ) then 20: Insert(X,h(X)) 21: 22: else if b(Y) ? X and h(X) > h(Y ) + c(Y,X ) and 23: t(Y) = CLOSED and h(Y ) > kold then 24: Insert(Y,h(Y)) 25: 26: return Get -Kmin() 2. Supports search as a repetitive online process. Exploits similarities between a series of searches to solve much faster than from scratch. Reuses the identical parts of the previous search tree, while updating differences. Solutions guaranteed to be optimal. On the first search, behaves like traditional Dijkstra. Generate global path plan from initial map. Repeat until Goal reached, or failure. Execute next step of current global path plan. Update map based on sensor information. Incrementally update global path plan from map changes. Function: Insert(X , h new) 1: if t(X ) = NEW then k(x ) = hnew 2: else if t(X) = OPEN then k(X ) = min(k(X ), hnew) 3: else k(X) = min(h(X ), h new) 4: h(X) = h new; 5: t(X) = OPEN Recap: Dynamic A* 1. Function: Modify -Cost(X,Y,eval) 1: c(X,Y) = eval 2: if t(X ) = CLOSED then Insert(X,h(X)) 3: return Get -Kmin() 1 to 3 orders of magnitude speedup relative to a non-incremental path planner. 10
Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

UCLA - COG - 3171
Visual Interpretation using Probabilistic Grammars Paul RobertsonModel-Based Vision What do the models look like Where do the models come from How are the models utilized2The Problem345Optimization/Search ProblemFind the most likely interpret
UCLA - COG - 3171
Dialogue as aDecision Making ProcessChallenges of Autonomy in the RealWorldWide range of sensorsNoisy sensorsWorld dynamicsAdaptabilityIncomplete informationNicholas RoyRobustness underuncertaintyMinervaPearlPredicted Health Care NeedsSpoke
FAU - ACCOUNTING - 3141
Chapter 10 - Sole Proprietorships, Partnerships, LLCs, and SCorporationsChapter10QuestionsandProblemsforDiscussion1.Asoleproprietorshipisnotalegalentitybutmerelyabusinessactivitycarriedonbyanindividual.Theproprietorispersonallyliabletothebusinesscre
FAU - ACCOUNTING - 3141
FactorsSole Prop (SP) Unlimite d Liability and can loose assets-General Partnership GP equally liable unless the agreement Says otherwiseLimited Partnership (LLP)Personal LiabilityLimited Liability Company (LLC) Unlimited Members are personal not lia
FAU - ACCOUNTING - 3141
Marcia and Dave are separated and negotiating a divorce agreement. They live in a common law state and have two children who will remain with Marcia. Dave is willing to transfer the jointly owned home to Marcia. He wishes to keep the couple's jointly own
FAU - ACCOUNTING - 4041
The mission of the FASB is to establish and improve standards of financial accounting and reporting that foster financial reporting by nongovernmental entities that provides decision-useful information to investors and other users of financial reports. Th
FAU - TAX - 4001
The Earned Income Credit (EIC) is a refundable tax credit available to eligible taxpayers who do not earn high incomes. The purpose of the EIC is to reduce the tax burden and supplement the wages of working families whose earnings are less than the maximu
FAU - TAX - 4001
User Submitted Name Status ScoreDanielle Shaw 7/26/10 7:41 PM Ex310Su2 Completed 88 out of 100 pointsTime Elapsed 0 hours, 43 minutes, and 54 seconds out of 1 hours and 5 minutes allowed. Instructions Question 1 A Greenfield investment _. Selected Answe
FAU - MAN - 3600
SWOTLOCALEStrengths:oANAYLSISReasonable climate and scenic beauty. As with food precautions, climate security allows the natives of Australia an opportunity to treat their financial and resource needs with leniency.oLow population densities except
Rutgers - MATH - 640:244
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt; &lt;Worksheet&gt;&lt;Version major=&quot;6&quot; minor=&quot;0&quot;/&gt;&lt;View-Properties&gt;&lt;Zoom percentage=&quot;100&quot;/&gt;&lt;/View-Properties&gt;&lt;Styles&gt;&lt;Layout alignment=&quot;left&quot; bullet=&quot;none&quot; name=&quot;Warning&quot;/&gt;&lt;Layout alignment=&quot;left&quot; bullet=&quot;none&quot; name=&quot;Heading
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
Rutgers - MATH - 640:244
University of Illinois, Urbana Champaign - ECON 102 - 102
Name: _ Date: _1. The marginal product of labor is the change in:A) labor divided by the change in total product.B) total output divided by the change in the quantity of labor.C) average output divided by the change in the quantity of labor.D) total
University of Illinois, Urbana Champaign - ECON 102 - 102
Name: _ Date: _1. The short-run supply curve for a perfectly competitive firm is:A) the average total cost curve above the break-even price.B) the average variable cost curve above the shut-down price.C) the marginal cost curve above the break-even pr
University of Illinois, Urbana Champaign - ECON 102 - 102
Name: _ Date: _Use the following to answer question 1:Figure: Monopolist1. (Figure: Monopolist) The deadweight loss associated with this monopoly can bemeasured as the area:A) 1/2(P1 P2)(Q2 Q1).B) 1/2(P2 P4)(Q4 Q2).C) 1/2(P1 P3)Q3.D) 1/2(P1 P3)Q2.
University of Illinois, Urbana Champaign - ECON 102 - 102
Name: _ Date: _1. A situation in which a player has an incentive to cheat regardless of what the otherplayer does, and in which, if both players act in this manner, both players will be worseoff, is referred to as:A) prisoners' dilemma.B) tit-for-tat