Planning in Domains with Cost Function Dependent Actions

Size: px
Start display at page:

Download "Planning in Domains with Cost Function Dependent Actions"

Transcription

1 Planning in Domains with Cost Function Dependent Actions Mike Phillips and Maxim Likhachev Carnegie Mellon University Content Area Constraints, Satisfiability, and Search::Heuristic Search Robotics::Motion and Path Planning Reasoning about Plans, Processes and Actions::Planning Algorithms Abstract In a number of graph search-based planning problems, the value of the cost function that is being minimized also affects the set of possible actions at some or all the states in the graph. For example, in path planning for a robot with a limited battery power, a common cost function is energy consumption, whereas the level of remaining energy affects the navigational capabilities of the robot. Similarly, in path planning for a robot navigating dynamic environments, a total traversal time is a common cost function whereas the timestep affects whether a particular transition is valid. In such planning problems, the cost function typically becomes one of the state variables thereby increasing the dimensionality of the planning problem, and consequently the size of the graph that represents the problem. In this paper, we show how to avoid this increase in the dimensionality for the planning problems whenever the availability of the actions is monotonically non-increasing with the increase in the cost function. We present three variants of A* search for dealing with such planning problems: a provably optimal version, a suboptimal version that scales to larger problems while maintaining a bound on suboptimality, and finally a version that relaxes our assumption on the relationship between the cost function and action space. Our experimental analysis on several domains shows that the presented algorithms achieve up to several orders of magnitude speed up over the alternative approaches to planning. Introduction In certain planning problems, the resource whose usage is being minimized also affects the availability of actions. Moreover, it affects it in such a way that the smaller resource level leads to the same or smaller set of available actions. For example, a robot with a limited battery is able to perform fewer and fewer actions, especially the actions that involve moving uphill, as its battery level approaches zero. Consequently, minimizing energy consumption is a common cost function in planning for mobile robots. Another example is planning for a downhill racecar that runs on its initial potential energy but loses it to friction as it moves. Yet another Copyright c, Association for the Advancement of Artificial Intelligence ( All rights reserved. example is planning for unpowered gliders. Minimizing energy loss allows the glider to stay in the air longer and go farther distances. All of these planning problems possess an important property that with every action, the resource, and consequently the set of available actions, is monotonically non-increasing. In planning problems represented as a graph search, this property enables us to remove the value of the remaining resource from the variables defining each state in the searchspace without affecting the completeness and optimality of the planner (Tompkins 5). This can be done because the cost function that is being minimized is equal to the value of the variable that is being removed, and when planning with optimal graph search such as A* search, we are already keeping all and only states with the smallest cost function. There is no need to also compute the states whose cost function, and consequently the remaining level of the resource, is suboptimal. This however, is not true for planning with suboptimal graph searches such as weighted A*, which are important tools for achieving real-time performance and scalability to large problems. Unfortunately, dropping the state variable that represents the objective function leads to the loss of guarantees on completeness and sub-optimality. In this paper, we develop an optimal search called Cost Function Dependent Actions A* (CFDA-A*) and then its suboptimal version, called Weighted CFDA-A*, that does allow us to drop the state variable that represents the cost function without sacrificing completeness or sub-optimality bounds. Furthermore, we extend the algorithm to the problems in which our assumption on the relationship between the cost function and action space may sometimes be violated. The theoretical analysis shows that all three variants of CFDA-A* possess all the properties normally expected of A* and weighted A*. Our experimental analysis on two different domains shows that CFDA-A* and its variants can be over times faster than searching the original statespace with A* or its weighted variant. Related Work Somewhat related to our work is the existing work on planning in domains with state dominance relations (Fujino and Fujiwara 99; Bhattacharya, Roy, and Bhattacharya 998; Yu and Wah 988). A state s dominates another s if knowing that s is reachable guarantees that s cannot be in the

2 optimal solution. In other words, the cost of an optimal solution that passes through s must be guaranteed to be less than an optimal solution that passes through s. This concept allows dominated states to be pruned and reduces the number of states to be examined. Most of the work on planning with state dominance relations however was done not in the context of planning with heuristic search-based planning. Within the area of planning with heuristic searches, there were also several graph searches developed that exploited the dominance relations to gain speedups (Tompkins 5; Korsah, Stentz, and Dias 7; Gonzalez and Stentz 5; Xu and Yue 9). For instance, similarly to our algorithm, the ISE framework (Tompkins 5) reduces the dimensionality of a graph search problem by removing the cost function from the set of state variables under certain conditions. DD* Lite (Korsah, Stentz, and Dias 7) on the other hand does not remove any dimensions but prunes dominated states as it discovers them during the search. The other algorithms (Gonzalez and Stentz 5; Xu and Yue 9) exploit the state dominance relations to speedup a heuristic search in the context of specific planning domains. To the best of our knowledge however, none of these algorithms are addressing the use of suboptimal heuristic searches such as weighted A*, which are highly beneficial in scaling to large planning problems and/or achieving realtime performance (Gaschnig 979; Zhou and Hansen ; Likhachev, Gordon, and Thrun ; Bonet and Geffner ). Filling this gap is the main contribution of our paper. Notations and Assumptions We assume the planning problem is represented as searching a directed graph G = (S, E) where S is the state space, or set of vertices, and E is the set of directed edges in the graph. We use A(s) s S to denote the set of actions available at state s. The function succ(s, a) takes a state s and action a and returns the resulting state. In other words, (s, succ(s, a)) corresponds to an edge in E. We assume strictly positive costs c(s, s ) >, for every (s, s ) E. The objective of the search is to find a least-cost path from state s start to state s goal (or set of goal states). For any s, s S, we define c (s, s ) to be cost of a least-cost path from state s to state s. We will denote x d as the state variable that corresponds to the cost function, and x i as the set of all other state variables. To model the fact that one of the state variables is the cost function, we define the set of state variables x as x = {x i, x d }, where x d = c (s start, s). The main assumption we are making is that for any given x i, the set of actions is monotonically non-increasing as the cost increases. Formally, for any s, s S such that x i (s) = x i (s ), if x d (s) < x d (s ), then A(s ) A(s) (assumption ). An example of when this assumption holds would be planning for a robot with a limited battery. The cost function is the amount of energy consumed and as the battery is used up there are fewer actions the robot can perform. For instance, there may be steeper parts of the terrain that can only be climbed if the robot has enough charge left. g(ŝ start) = ; OPEN = ; insert ŝ start into OPEN with f(ŝ start) = h(ŝ start); while(ŝ goal is not expanded) 4 remove ŝ with the smallest f-value from OPEN; 5 s = {x i(ŝ), g(ŝ)}; 6 for each a in A(s) 7 s = succ(s, a) 8 ŝ = {x i(s )} 9 if ŝ was not visited before then f(ŝ ) = g(ŝ ) = ; if g(ŝ ) > g(ŝ) + c(s, s ) g(ŝ ) = g(ŝ) + c(s, s ); f(ŝ ) = g(ŝ ) + h(ŝ ); 4 insert ŝ into OPEN with f(ŝ ); Figure : Optimal CFDA-A* Optimal CFDA-A* In A*, discovered states s are put into a priority queue called the OPEN list and are sorted by the function f(s) = g(s) + h(s), where g(s) is the cost function representing the best path found so far from the start state to s, and h(s) is a heuristic estimate of the cost from s to the goal. The heuristic must not overestimate the actual cost to the goal and must satisfy the triangle inequality. Initially, the start state is put into OPEN. On each iteration, the state s with lowest f(s) is removed from OPEN and gets expanded. During expansion, A* iterates over the successors of s. If any of these states have not been discovered previously or if a cheaper path to them was found, they are put/re-inserted into OPEN with their updated f-values. Every state expanded under A* has the optimal (minimum) g-value. Therefore, when the goal is expanded, A* finds the optimal solution. In optimal A* a state cannot be re-expanded since a shorter path to a state cannot be found after the state has been expanded. Therefore, it is not necessary to maintain a list of states that have already been expanded (often called the CLOSED list). An optimal version of CFDA-A*, shown in Figure, is basically an A* search except that it is executed on a new graph Ĝ which has a reduced state space Ŝ. In Ŝ, the dimension x d is removed, and therefore each state ŝ Ŝ is only defined by x i. In other words, the search maps each state s = {x i, x d } in the original state space S onto a state ŝ = {x i } in the new state space Ŝ (line 8) and maps each state ŝ Ŝ onto s S with the smallest g-value that is reachable during the graph search (line 5). The transitions between ŝ and ŝ are defined as the transitions between the corresponding states s and s in the original state space (line 7). Theorem The algorithm terminates, and when it does, the found path from ŝ start to ŝ goal corresponds to the least-cost path from s start to s goal in S Proof Sketch: The path ˆp Ĝ from ŝ start to ŝ goal corresponds to the path p G from s start to s goal by taking each state ŝ k = {x i } ˆp and making it s k = {x i, g(ŝ)} p. Assume ˆp does not correspond to a least-cost path p. Then p must contain a state s that CFDA-A* did not consider or else it would have found the same path. However, the only states from S that CFDA-A* ignores are ones that have larger (less optimal) x d. In other words, there is a cheaper path to x i (s),

3 Some s s s graph Long path Edge only exists for g(s )<α Some s s s graph Edge only exists for g(s )<α Figure : Running normal weighted A* on this graph may return no solution if s is expanded sub-optimally such that its g-value exceeds α. For a similar reason, the suboptimality bound can be violated on this graph if the cost of the long path is greater than ɛ times the minimum cost of the lower path. then the one in p. More detailed proofs can be found in our tech report (Phillips and Likhachev ). Weighted CFDA-A* with bounded sub-optimality Weighted A* is a common generalization of the A* algorithm which puts states s into the OPEN list according to f(s) = g(s) + ɛ h(s) (Pohl 97). The scalar ɛ > inflates the heuristic. As ɛ increases, the f function becomes more heavily driven by the heuristic component and will often find the solution by expanding far fewer states. While the solution is no longer guaranteed to be optimal, its cost is guaranteed to be no more than ɛ times the cost of an optimal solution (Pohl 97). While normal weighted A* allows a state to be expanded more than once (whenever a shorter path to the state is found), it turns out that the same guarantees can be provided even if we allow each state to be expanded only once (Likhachev, Gordon, and Thrun ). The limit helps in assuring the run-time complexity, since without it, the number of state expansions can be exponential in the number of states. Running CFDA-A*, as described in the previous section, but with the inflated heuristics, destroys its guarantees on completeness and solution quality. Figure demonstrates this problem. The issue occurs when a state s is expanded sub-optimally (due to the inflated heuristic) and its suboptimal g-value leads to the absence of a critical action between s and s. Figure shows how the ɛ bound on the solution quality may also get ignored. The example shows that if there is more than one path to the goal, and the lowercost path is not found due to sub-optimal expansions, then the algorithm will find a longer path to the goal and terminate, independently of how much costlier it is. Weighted CFDA-A* shown in Figure solves this problem by introducing two versions of each state ŝ, an optimal version and a sub-optimal version. To achieve this, we redefine ŝ as ŝ = {x i, o}, where o is a boolean variable representing the optimality of ŝ. The invariant that Weighted CFDA-A* maintains is that when expanding any state ŝ whose o(ŝ) = true, the algorithm guarantees that its g(ŝ) is optimal. Similarly, when expanding any state ŝ whose o(ŝ) = false, the algorithm guarantees that its g(ŝ) is no more than ɛ times the optimal g-value. When expanding, optimal states generate both optimal and sub-optimal successors, but sub-optimal states generate only sub-optimal successors. Sub-optimal states go into the OPEN list with the usual f = g + ɛ h, but optimal states go in with an inflated f = ɛ (g + h). The following can be said about this ordering. First, sub-optimal states tend to come out earlier than optimal ones because optimal states have both terms of the f-value inflated instead of inflating just the heuristics for sub-optimal states. This is beneficial for runtime because a sub-optimal search usually finds a path to goal much faster due to the drive of the inflated heuristic. Second, the optimal states, with respect to each other, are expanded in the exact same order as they would be in the optimal A* search. The only difference is that their f-values are just scaled by a positive constant, but this has no effect on the relative ordering of the optimal states. This property restores the completeness guarantee to our algorithm: even if the sub-optimal states get blocked from the goal such as in Figure, the optimal states will expand in exactly the order they would in the optimal algorithm and will therefore get past this trap. As soon as an optimal state is expanded at the blocking point, it will generate optimal and sub-optimal successors past the block, and the sub-optimal states can again move quickly towards the goal. For the same reasons, this approach also restores the bound on sub-optimality, as stated in Theorem. Figure shows the weighted CFDA-A* variant. There are a few differences from the pseudocode of optimal CFDA- A* explained previously. The addition of a CLOSED list on lines,4, ensures that a state can only be expanded at most once. On lines 6, 9, and we see that if an optimal state is being expanded, we generate both optimal and suboptimal versions of each successor. But if a suboptimal state is being expanded, then only suboptimal successors are generated. Also, lines 5-8 now reflect how the f-value can be set in one of two ways depending on whether the successor is optimal or not. Theorem The algorithm terminates, and when it does, the found path from ŝ start to ŝ goal corresponds to a path from s start to s goal that has a cost no greater than ɛ c (s start, s goal ). Proof: If we can show that the path from ŝ start to ŝ goal has a cost no greater than ɛ c (ŝ start, ŝ goal ), then we can apply Theorem to prove the claim. Let c (ŝ start, ŝ) = g (s). Assume for sake of contradiction that upon expansion of ŝ goal, g(ŝ goal ) is greater than ɛ times the optimal g-value (g(ŝ goal ) > ɛ g (ŝ goal )). Then g(ŝ goal) ɛ > g (ŝ goal ) be-

4 g(ŝ start) = ; O(ŝ start) = true; OPEN = ; CLOSED = ; insert ŝ start into OPEN with f(ŝ start) = ɛ h(ŝ start); while(ŝ goal is not expanded) 4 remove ŝ with the smallest f-value from OPEN and insert ŝ in CLOSED; 5 s = {x i(ŝ), g(ŝ)}; 6 If O(ŝ) = true then Opt = {true, false}, else Opt = {false} 7 for each a in A(s) 8 s = succ(s, a) 9 for o in Opt ŝ = {x i(s ), o} if ŝ was not visited before then f(ŝ ) = g(ŝ ) = ; if g(ŝ ) > g(ŝ) + c(s, s ) and s / CLOSED 4 g(ŝ ) = g(ŝ) + c(s, s ); 5 if O(ŝ ) 6 f(ŝ ) = ɛ (g(ŝ ) + h(ŝ )); 7 else 8 f(ŝ ) = g(ŝ ) + ɛ h(ŝ ); 9 insert ŝ into OPEN with f(ŝ ); Figure : Weighted CFDA-A* s s s s s 4 s 5 s ' s 5' h=5 h=4 h= h= h= h= s s s s s 4 s 5 g(s ) < Dimension x d removed Figure 4: The original graph (top) is reduced (bottom) by removing dimension x d. In this example, running the normal weighted A* on the reduced graph will return no solution because of the edge that depends on the g-value. Weighted CFDA-A* resolves this problem. cause ɛ is positive. Now any state ŝ on the optimal path satisfies g (ŝ) + h(ŝ) g (ŝ goal ). By substitution, g (ŝ) + h(ŝ) g(ŝ goal) ɛ. Therefore, ɛ (g (ŝ) + h(ŝ)) g(ŝ goal ). This ɛ (g + h) is how we sort optimal states in the OPEN list. Since g (ŝ start ) is the first state in the OPEN list, by induction, g (ŝ goal ) would be discovered and expanded before g(ŝ goal ). Therefore, when the goal state is expanded, g(ŝ goal ) would be optimal, which is a contradiction. This means that the optimal goal state would have to be expanded before a suboptimal state that is not bounded by ɛ. The following theorem relates the complexity of Weighted CFDA-A*, in particular, that it reduces the dimension x d to a binary value, since for every x i, we now have only two states: an optimal state and a suboptimal state. Theorem For every collection of states with the same x i in S, Weighted CFDA-A* performs at most two expansions. Example Using the example in Figure 4, we demonstrate how our algorithm avoids the pitfalls shown in Figure using optimal states. We assume that ɛ =.. The heuristic function is just the number of edges to the goal. The top graph represents the original graph. The states grouped in dotted boxes have the same x i but different x d. In the bottom graph, this dimension has been removed. Thus, s and s have become the same state, as have s 5 and s 5. However, this has caused a cost dependent edge between s and s. The start state is s and the goal is s 5. Weighted CFDA- A* first expands s opt, ssub, and s sub, where the superscript opt denotes an optimal state and sub denotes a suboptimal state. Since, the g-value of s sub at time of expansion is, it does not generate any successors. The state s sub also generates no successors because s sub has already been expanded. If we were running regular weighted A*, the search would have ended here and declared that there was no solution. However, in weighted CFDA-A*, s opt, and sopt are still in the OPEN list. s opt would be expanded first, updating the g-value of s opt to. Then, when s opt is expanded, it generates both optimal and sub-optimal versions of state s. Now, the lower-priority sub-optimal states will again be expanded starting with s sub, followed by the goal state s sub 5. Weighted CFDA-A* with Proper Intervals The final extension to our algorithm allows it to work on the problems where assumption may sometimes be violated. We assumed that for any pair of states s = {x i, x d }, s = {x i, x d }, if x i = x i and x d < x d, then A(s ) A(s) in G, and since s has a worse g-value, we can replace both of these states with ŝ in Ĝ. This is not true if for some x i the valid values of x d are not one contiguous interval, because they are separated by invalid states in G. In these cases, the broken assumption leads to incompleteness. In Figure 5, s represents the state with the smallest g-value in x i that is reachable. When expanding this state, the action that moves to x i only generates s but not s. In some scenarios the later interval may be the only way to the goal. Not generating this successor causes incompleteness. However, if the planning problem includes a spend action that increments x d without changing x i, then CFDA-A* regains its guarantees. In Figure 5, this allows s to reach a higher (downward in the figure) g-value before executing the action so that it generates s and s. We now define a proper interval as a maximal contiguous series of valid values of x d for a particular x i. In Figure 5, x i has two proper intervals. With the addition of a spend operation that allows positive movement along x d, the only state in a proper interval that matters is the one with the smallest g-value. We can therefore augment states for Ĝ with a variable that identifies the proper interval for the x i. More formally, a state is now defined as ŝ = {x i, p, o}, where p is the proper interval index. In Figure 5(c), the intervals have been converted to a graph. There are two states for x i with interval index p being and. State s has an action that goes to s if g(s ) < 4 and the same action always goes to s, but sometimes requires a spend operation to get it past the collision period (g(s ) < 6). With the intervals and spend operation we once again have the guarantee that the set of successors is monotonically non-increasing as the

5 x i x i x i s (x i,p=) Exists if g(s ) < 4 s (x i,p=) s (x i,p=) (c) x i x i x i s s s t=4 t=6 s 4 s 4 (x i,p=) Figure 5: A scenario with three locations (x i, x i, x i ) and a train which arrives at x i at time 4 and leaves at time 6. The intervals shown for the three locations. Since x i and x i are free for all time, they each have one interval (therefore one state). Location x i has a safe interval before the train passes (t < 4) and after (t > 6) resulting in two states for this location (s, s ). (c) The intervals converted into a graph with a cost function dependent action. The edge (s, s ) only exists if g(s ) < 4. The edge going to s always exists due to the spend operation. cost increases. Figure 6 shows the algorithm for CFDA-A* with proper intervals. On line 9 we see that after getting the successor state s S we iterate over the proper intervals for that x i. After forming ŝ for this interval, on line 4 we compute c spend which is how much the g-value needs to be incremented before executing action a in order to arrive at interval p at the smallest g-value. This value may not exist indicated on lines 5-6 either because the interval we are trying to get to ends before g(ŝ) + c(s, s ) (we already missed it) or the smallest g-value we could arrive at interval p would require incrementing g(ŝ) past the end of its proper interval before executing the action. If such a c spend does exist, then on lines 7-8, it is used as an additional cost in the g-value update step. Theorem 4 The algorithm terminates, and when it does, the found path from ŝ start to ŝ goal corresponds to a path from s start to s goal that has a cost no greater than ɛ c (s start, s goal ). Proof Sketch: We can apply Theorem if assumption applies. For some s, s S, where x i = x i and x d < x d, s does not have a superset of the actions of s because an action a could lead to an invalid state for s but a valid one for s due to invalid intervals along minimized dimension. This is remedied by adding a proper interval index as part of the state and a spend operation so that the state s can have all the successors of s by spending until s before executing a. g(ŝ start) = ; O(ŝ start) = true; OPEN = ; CLOSED = ; insert ŝ start into OPEN with f(ŝ start) = ɛ h(ŝ start); while(ŝ goal is not expanded) 4 remove ŝ with the smallest f-value from OPEN and insert ŝ in CLOSED; 5 s = {x i(ŝ), g(ŝ)}; 6 If O(ŝ) = true then Opt = {true, false}, else Opt = {false} 7 for each a in A(s) 8 s = succ(s, a) 9 for each proper interval p in x i(s ) for o in Opt ŝ = {x i(s ), p, o} if ŝ was not visited before then f(ŝ ) = g(ŝ ) = ; 4 c spend = extra increment before a to arrive in p with smallest g-value; 5 if c spend does not exist 6 continue; 7 if g(ŝ ) > g(ŝ) + c(s, s ) + c spend and s / CLOSED 8 g(ŝ ) = g(ŝ) + c(s, s ) + c spend ; 9 if O(ŝ ) f(ŝ ) = ɛ (g(ŝ ) + h(ŝ )); else f(ŝ ) = g(ŝ ) + ɛ h(ŝ ); insert ŝ into OPEN with f(ŝ ); log(expands) Figure 6: Weighted CFDA-A* with Proper Intervals Weighted A* 4 Weighted CFDA A* 4 5 log(time (s)) Weighted CFDA A* <_ 4 Weighted A* 4 5 Figure 7: Planning for a limited battery comparing the full state space and our reduced state space over various ɛ. Average expansions (on the log scale). Average seconds (on the log scale). When the plot drops below the breaks, the planning time was less than or equal to. ( 4 on the log scale) seconds and was too small to measure. Experimental Analysis We performed simulation experiments in two domains to show the benefits of using our algorithms. Robot with a Limited Battery The domain of the robot with a limited battery exhibits the benefits of weighted CFDA-A* (without the need of proper intervals). The original state space of this domain is x, y, energy consumed. There is an energy consumption limit (when the battery is exhausted). The environments are randomly generated fractal costmaps commonly used to model outdoor environments (Yahja et al. 998). The robot had to move from the upper left corner to the lower right. The cost of any cell ranges from to 6. The cost of traversing a cell is the distance traveled (in cells) times the cost of the cell. This cost is assumed to be the energy consumed by that action. The heuristic used was Euclidean distance. We ran two sets of experiments. The first experiments compare the full state space

6 expands 4 x 6 Weighted CFDA A* =. = side length time (s) Weighted CFDA A* =. = side length Figure 8: Planning for a limited battery with a reduced state space comparing ɛ =. and ɛ =. over various map size. Average expansions Average seconds log(expands) Indoor, Weighted A* Indoor, Weighted CFDA A* Outdoor, Weighted A* Outdoor, Weighted CFDA A* Figure : Average expansions (log scale) for indoor (black) and outdoor (gray) dynamic environments comparing full state space (dashed line) to CFDA-A* (solid line) for varying ɛ. Figure 9: Examples of random indoor, outdoor maps used for planning in dynamic environments. weighted A* against our weighted CFDA-A*. We generated 5, 5-by-5 random fractal environments. For much larger environments, the full state space search didn t find solutions most of the time (especially for low ɛ). The graph shown in Figure 7 shows the average number of expansions for various values of ɛ on a log scale. CFDA-A* shows up to times less expansions for smaller ɛ. After ɛ = 4., the two are similar, because the cost function becomes so dominated by the heuristic (particularly because the max cell cost is only 6) that both methods end up expanding a straight line from the start to the goal. Figure 7 shows that the actual planning times have roughly the same speed up as the expansions. After ɛ = 4. the planninng times become too small to measure. Our second experiment shows the advantage of using weighted CFDA-A* over optimal CFDA-A*. To test this we compared the weighted CFDA-A* (with ɛ =.) against the optimal on maps of varying size ranging from -by- to 49-by-49. For each map size we had 5 trials (to average out noise). We tried 7 different map sizes so there were 5 trials in total. The graph in Figure 8 shows the average number of expansions for various map sizes. This plot shows that having an inflated heuristic produces a significant speed up over optimal planning in spite of the fact that the state space is two times larger (optimal and sub-optimal states) in order to maintain the guarantees. Figure 8 shows similar results for the corresponding planning times. Planning in Dynamic Environments Planning in dynamic environments is the problem of finding a collision free path from the start location and time to a goal location. There are both static and moving obstacles in the environment and in order to find an optimal path, planning Student Version of MATLAB must be done in the space-time state space. Also, for many robots, the direction they are facing affects where their motions take them so we ve incorporated θ into the search space as well. The planning in dynamic environments domain requires proper intervals in order for our weighted A* variant to maintain guarantees. This experiment shows the benefits of using our weighted CFDA-A* with proper intervals. The original state space is x, y, θ, time. The maps we ran on were 5-by-5 with θ discretized into 6 angles and time discretized into. seconds. We assumed we knew the trajectories of the dynamic obstacles in advance. For each map, there were dynamic obstacles with randomly generated time parameterized paths to follow. We ran two types of experiments, on indoor maps and outdoor maps. The indoor maps were comprised of randomly generated narrow hallways and rooms. The halls were narrow enough that some dynamic obstacles filled the entire width and could not be passed by the robot. An example of this type of environment is shown in Figure 9. The outdoor maps were more open with about percent of the map covered with circles of varying size. An example of an outdoor map is shown in Figure 9. Backward D Dijkstra search that accounted for static obstacles (but no dynamic obstacles) was used as the heuristic. Our experiments compared a planner on the original full state space against Weighted CFDA-A* with proper intervals. The black curves in Figure show the average expands for the indoor trials across various values for ɛ. The plot shows times fewer expansions not only for optimal but also for the weighted CFDA-A*. It is also important to note that weighted CFDA-A* runs significantly faster than optimal CFDA-A* search. The gray curves in Figure show the average expands for the outdoor trials across various values for ɛ. There is also an improvement here, however it is not as dramatic. This is because in the indoor case the robot must wait for obstacles to pass (because of the tight hallways) very often. For our algorithm, a wait (i.e., spend

7 log(time (s)) Indoor, Weighted A* Indoor, Weighted CFDA A* Outdoor, Weighted A* Outdoor, Weighted CFDA A* Figure : Average seconds (log scale) for indoor (black) and outdoor (gray) dynamic environments comparing full state space (dashed line) to CFDA-A* (solid line) for varying ɛ. Student Version of MATLAB operation) of arbitrary length is handled intelligently with a single successor, but for the full state space, waiting in place requires many expansions along the time dimension (one for each timestep). In the outdoor case this matters less because the environment is so open it is almost always faster to dodge around dynamic obstacles instead of waiting them out. In Figure, the actual planning times show roughly the same speed up as the expansions. Acknowledgements This research was partially sponsored by the ONR grant N and DARPA grant NAP. We also thank Willow Garage for their partial support of this work. Conclusions Many domains minimize a cost function that is also a dimension in the search space, because it affects the possible actions. Our algorithm allows for the removal of this dimension from the search space resulting in a graph with Cost Function Dependent Actions. CFDA-A* can solve these types of graphs in the optimal case. Weighted CFDA-A* uses optimal and suboptimal states with a clever expansion order in order to continue to provide this reduction in the size of the state space while maintaining the theoretical properties of completeness and bounded sub-optimality. Finally, our algorithm can be extended to handle more complicated problems that violate our key assumption overall, but still maintain it within proper intervals. This replaces the dimension in question with a more compact representation that works with both optimal and weighted CFDA- A*. We ve shown strong theoretical guarantees on all of our algorithms as well as significant experimental results from two domains: planning with a limited battery and planning in dynamic environments. While not addressed directly in our paper, the guarantee of bounded sub-optimality easily allows our method to be extended to anytime planning methods like ARA* (Likhachev, Gordon, and Thrun ). References Bhattacharya, S.; Roy, R.; and Bhattacharya, S An exact depth-first algorithm for the pallet loading problem. European Journal of Operational Research ():6 65. Bonet, B., and Geffner, H.. Planning as heuristic search. Artificial Intelligence 9(-):5. Fujino, T., and Fujiwara, H. 99. An efficient test generation algorithm based on search state dominance. In FTCS, Gaschnig, J Performance measurement and analysis of certain search algorithms. Tech. Rep. CMU-CS-79-4, Carnegie Mellon University. Gonzalez, J. P., and Stentz, A. 5. Planning with uncertainty in position: An optimal and efficient planner. In in Proceedings of the IEEE International Conference on Intelligent Robots and Systems (IROS 5), Korsah, G. A.; Stentz, A. T.; and Dias, M. B. 7. Dd* lite: Efficient incremental search with state dominance. Technical Report CMU-RI-TR-7-, Robotics Institute, Pittsburgh, PA. Likhachev, M.; Gordon, G.; and Thrun, S.. ARA*: Anytime A* with provable bounds on sub-optimality. In Advances in Neural Information Processing Systems (NIPS) 6. Cambridge, MA: MIT Press. Phillips, M., and Likhachev, M.. Planning in domains with cost function dependent actions: Formal analysis. Pohl, I. 97. First results on the effect of error in heuristic search. Machine Intelligence 5:9 6. Tompkins, P. 5. Mission-Directed Path Planning for Planetary Rover Exploration. Ph.D. Dissertation, Robotics Institute, Carnegie Mellon University, Pittsburgh, PA. Xu, Y., and Yue, W. 9. A generalized framework for bdd-based replanning a* search. In SNPD, 9. Yahja, A.; Stentz, A.; Singh, S.; and Brumitt, B. L Framed-quadtree path planning for mobile robots operating in sparse environments. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Yu, C. F., and Wah, B. W Learning dominance relations in combinatorial search problems. IEEE Trans. Software Eng. 4(8): Zhou, R., and Hansen, E. A.. Multiple sequence alignment using A*. In Proceedings of the National Conference on Artificial Intelligence (AAAI). Student abstract.

Planning for Markov Decision Processes with Sparse Stochasticity

Planning for Markov Decision Processes with Sparse Stochasticity Planning for Markov Decision Processes with Sparse Stochasticity Maxim Likhachev Geoff Gordon Sebastian Thrun School of Computer Science School of Computer Science Dept. of Computer Science Carnegie Mellon

More information

Search-Based Planning with Provable Suboptimality Bounds for Continuous State Spaces

Search-Based Planning with Provable Suboptimality Bounds for Continuous State Spaces Search-Based Planning with Provable Suboptimality Bounds Juan Pablo Gonzalez for Continuous State Spaces Maxim Likhachev Autonomous Perception Research Robotics Institute General Dynamics Robotic Systems

More information

Anytime Search in Dynamic Graphs

Anytime Search in Dynamic Graphs Anytime Search in Dynamic Graphs Maxim Likhachev a, Dave Ferguson b,c, Geoff Gordon c, Anthony Stentz c, and Sebastian Thrun d a Computer and Information Science, University of Pennsylvania, Philadelphia,

More information

Real-Time Adaptive A*

Real-Time Adaptive A* Real-Time Adaptive A* Sven Koenig Computer Science Department University of Southern California Los Angeles, CA - skoenig@usc.edu Maxim Likhachev Computer Science Department Carnegie Mellon University

More information

Anytime search in dynamic graphs

Anytime search in dynamic graphs University of Pennsylvania ScholarlyCommons Lab Papers (GRASP) General Robotics, Automation, Sensing and Perception Laboratory 9-2008 Anytime search in dynamic graphs Maxim Likhachev University of Pennsylvania,

More information

R* Search. Anthony Stentz The Robotics Institute Carnegie Mellon University Pittsburgh, PA

R* Search. Anthony Stentz The Robotics Institute Carnegie Mellon University Pittsburgh, PA R* Search Maxim Likhachev Computer and Information Science University of Pennsylvania Philadelphia, PA 19104 maximl@seas.upenn.edu Anthony Stentz The Robotics Institute Carnegie Mellon University Pittsburgh,

More information

Search-based Planning with Motion Primitives. Maxim Likhachev Carnegie Mellon University

Search-based Planning with Motion Primitives. Maxim Likhachev Carnegie Mellon University Search-based Planning with Motion Primitives Maxim Likhachev Carnegie Mellon University generate a graph representation of the planning problem search the graph for a solution What is Search-based Planning

More information

Combining Global and Local Planning with Guarantees on Completeness

Combining Global and Local Planning with Guarantees on Completeness Combining Global and Local Planning with Guarantees on Completeness Haojie Zhang, Jonathan Butzke, Maxim Likhachev Abstract Planning with kinodynamic constraints is often required for mobile robots operating

More information

Improving MPGAA* for Extended Visibility Ranges

Improving MPGAA* for Extended Visibility Ranges Proceedings of the Twenty-Seventh International Conference on Automated Planning and Scheduling (ICAPS 2017) Improving MPGAA* for Extended Visibility Ranges Carlos Hernández Depto. de Ciencias de la Ingeniería

More information

Anytime, Dynamic Planning in High-dimensional Search Spaces

Anytime, Dynamic Planning in High-dimensional Search Spaces 2007 IEEE International Conference on Robotics and Automation Roma, Italy, 10-14 April 2007 WeD11.2 Anytime, Dynamic Planning in High-dimensional Search Spaces Dave Ferguson Intel Research Pittsburgh 4720

More information

1 Project: Fast Trajectory Replanning for Computer Games

1 Project: Fast Trajectory Replanning for Computer Games Project: Fast rajectory Replanning for omputer Games Figure : otal nnihilation by avedog onsider characters in real-time computer games, such as otal nnihilation shown in Figure. o make them easy to control,

More information

Sub-Optimal Heuristic Search ARA* and Experience Graphs

Sub-Optimal Heuristic Search ARA* and Experience Graphs Robot Autonomy (16-662, S13) Lecture#09 (Wednesday Feb 13, 2013) Lecture by: Micheal Phillips Sub-Optimal Heuristic Search ARA* and Experience Graphs Scribes: S.Selvam Raju and Adam Lebovitz Contents 1

More information

Computer Game Programming Basic Path Finding

Computer Game Programming Basic Path Finding 15-466 Computer Game Programming Basic Path Finding Robotics Institute Path Planning Sven Path Planning needs to be very fast (especially for games with many characters) needs to generate believable paths

More information

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz Humanoid Robotics Path Planning and Walking Maren Bennewitz 1 Introduction Given the robot s pose in a model of the environment Compute a path to a target location First: 2D path in a 2D grid map representation

More information

Cognitive Robotics Robot Motion Planning Matteo Matteucci

Cognitive Robotics Robot Motion Planning Matteo Matteucci Cognitive Robotics Robot Motion Planning Robot Motion Planning eminently necessary since, by definition, a robot accomplishes tasks by moving in the real world. J.-C. Latombe (1991) Robot Motion Planning

More information

Reusing Previously Found A* Paths for Fast Goal-Directed Navigation in Dynamic Terrain

Reusing Previously Found A* Paths for Fast Goal-Directed Navigation in Dynamic Terrain Reusing Previously Found A* Paths for Fast Goal-Directed Navigation in Dynamic Terrain Carlos Hernández Depto. de Ingeniería Informática Univ. Católica de la Ssma. Concepción Concepción, Chile Roberto

More information

Informed search. Soleymani. CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016

Informed search. Soleymani. CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016 Informed search CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Outline Best-first search Greedy

More information

PPCP: Efficient Probabilistic Planning with Clear Preferences in Partially-Known Environments

PPCP: Efficient Probabilistic Planning with Clear Preferences in Partially-Known Environments PPCP: Efficient Probabilistic Planning with Clear Preferences in Partially-Known Environments Maxim Likhachev The Robotics Institute Carnegie Mellon University Pittsburgh, PA 15213 maxim+@cs.cmu.edu Anthony

More information

Anytime Path Planning and Replanning in Dynamic Environments

Anytime Path Planning and Replanning in Dynamic Environments Anytime Path Planning and Replanning in Dynamic Environments Jur van den Berg Department of Information and Computing Sciences Universiteit Utrecht The Netherlands berg@cs.uu.nl Dave Ferguson and James

More information

ANA*: Anytime Nonparametric A*

ANA*: Anytime Nonparametric A* ANA*: Anytime Nonparametric A* Jur van den Berg 1 and Rajat Shah 2 and Arthur Huang 2 and Ken Goldberg 2 1 University of North Carolina at Chapel Hill. E-mail: berg@cs.unc.edu. 2 University of California,

More information

Path Planning in Dynamic Environments with Adaptive Dimensionality

Path Planning in Dynamic Environments with Adaptive Dimensionality Proceedings of the Ninth International Symposium on Combinatorial Search (SoCS 2016) Path Planning in Dynamic Environments with Adaptive Dimensionality Anirudh Vemula, Katharina Muelling, and Jean Oh Robotics

More information

Robot Motion Control Matteo Matteucci

Robot Motion Control Matteo Matteucci Robot Motion Control Open loop control A mobile robot is meant to move from one place to another Pre-compute a smooth trajectory based on motion segments (e.g., line and circle segments) from start to

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

3D Field D*: Improved Path Planning and Replanning in Three Dimensions

3D Field D*: Improved Path Planning and Replanning in Three Dimensions Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems October 9-15, 2006, Beijing, China 3D Field D*: Improved Path Planning and Replanning in Three Dimensions Joseph

More information

Anytime RRTs. Dave Ferguson and Anthony Stentz Robotics Institute Carnegie Mellon University Pittsburgh, Pennsylvania

Anytime RRTs. Dave Ferguson and Anthony Stentz Robotics Institute Carnegie Mellon University Pittsburgh, Pennsylvania Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems October 9-15, 2006, Beijing, China Anytime RRTs Dave Ferguson and Anthony Stentz Robotics Institute Carnegie

More information

Planning & Decision-making in Robotics Case Study: Planning for Autonomous Driving

Planning & Decision-making in Robotics Case Study: Planning for Autonomous Driving 16-782 Planning & Decision-making in Robotics Case Study: Planning for Autonomous Driving Maxim Likhachev Robotics Institute Carnegie Mellon University Typical Planning Architecture for Autonomous Vehicle

More information

Anytime Incremental Planning with E-Graphs

Anytime Incremental Planning with E-Graphs Anytime Incremental Planning with E-Graphs Mike Phillips 1 and Andrew Dornbush 1 and Sachin Chitta 2 and Maxim Likhachev 1 Abstract Robots operating in real world environments need to find motion plans

More information

Informed Search A* Algorithm

Informed Search A* Algorithm Informed Search A* Algorithm CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2018 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Most slides have

More information

Today s s lecture. Lecture 3: Search - 2. Problem Solving by Search. Agent vs. Conventional AI View. Victor R. Lesser. CMPSCI 683 Fall 2004

Today s s lecture. Lecture 3: Search - 2. Problem Solving by Search. Agent vs. Conventional AI View. Victor R. Lesser. CMPSCI 683 Fall 2004 Today s s lecture Search and Agents Material at the end of last lecture Lecture 3: Search - 2 Victor R. Lesser CMPSCI 683 Fall 2004 Continuation of Simple Search The use of background knowledge to accelerate

More information

Probabilistic Planning with Clear Preferences on Missing Information

Probabilistic Planning with Clear Preferences on Missing Information Probabilistic Planning with Clear Preferences on Missing Information Maxim Likhachev a and Anthony Stentz b a Computer and Information Science, University of Pennsylvania, Philadelphia, PA, USA b The Robotics

More information

Graph-based Planning Using Local Information for Unknown Outdoor Environments

Graph-based Planning Using Local Information for Unknown Outdoor Environments Graph-based Planning Using Local Information for Unknown Outdoor Environments Jinhan Lee, Roozbeh Mottaghi, Charles Pippin and Tucker Balch {jinhlee, roozbehm, cepippin, tucker}@cc.gatech.edu Center for

More information

Sub-optimal Heuristic Search and its Application to Planning for Manipulation

Sub-optimal Heuristic Search and its Application to Planning for Manipulation Sub-optimal Heuristic Search and its Application to Planning for Manipulation Mike Phillips Slides adapted from Planning for Mobile Manipulation What planning tasks are there? robotic bartender demo at

More information

Incremental A. S. Koenig and M. Likhachev Georgia Institute of Technology College of Computing Atlanta, GA skoenig,

Incremental A. S. Koenig and M. Likhachev Georgia Institute of Technology College of Computing Atlanta, GA skoenig, Incremental A S. Koenig and M. Likhachev Georgia Institute of Technology College of Computing Atlanta, GA 30312-0280 skoenig, mlikhach @cc.gatech.edu Abstract Incremental search techniques find optimal

More information

4 INFORMED SEARCH AND EXPLORATION. 4.1 Heuristic Search Strategies

4 INFORMED SEARCH AND EXPLORATION. 4.1 Heuristic Search Strategies 55 4 INFORMED SEARCH AND EXPLORATION We now consider informed search that uses problem-specific knowledge beyond the definition of the problem itself This information helps to find solutions more efficiently

More information

Anytime Tree-Restoring Weighted A* Graph Search

Anytime Tree-Restoring Weighted A* Graph Search Proceedings of the Seventh Annual Symposium on Combinatorial Search (SoCS 2014) Anytime Tree-Restoring Weighted A* Graph Search Kalin Gochev University of Pennsylvania Alla Safonova University of Pennsylvania

More information

Framed-Quadtree Path Planning for Mobile Robots Operating in Sparse Environments

Framed-Quadtree Path Planning for Mobile Robots Operating in Sparse Environments In Proceedings, IEEE Conference on Robotics and Automation, (ICRA), Leuven, Belgium, May 1998. Framed-Quadtree Path Planning for Mobile Robots Operating in Sparse Environments Alex Yahja, Anthony Stentz,

More information

Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots

Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots 15-887 Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots Maxim Likhachev Robotics Institute Carnegie Mellon University Two Examples Planning

More information

Efficient Interpolated Path Planning of Mobile Robots based on Occupancy Grid Maps

Efficient Interpolated Path Planning of Mobile Robots based on Occupancy Grid Maps Efficient Interpolated Path Planning of Mobile Robots based on Occupancy Grid Maps Marija Ðakulović Mijo Čikeš Ivan Petrović University of Zagreb, Faculty of Electrical Engineering and Computing, Department

More information

CS 161 Lecture 11 BFS, Dijkstra s algorithm Jessica Su (some parts copied from CLRS) 1 Review

CS 161 Lecture 11 BFS, Dijkstra s algorithm Jessica Su (some parts copied from CLRS) 1 Review 1 Review 1 Something I did not emphasize enough last time is that during the execution of depth-firstsearch, we construct depth-first-search trees. One graph may have multiple depth-firstsearch trees,

More information

CS 4700: Artificial Intelligence

CS 4700: Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Fall 2017 Instructor: Prof. Haym Hirsh Lecture 7 Extra Credit Opportunity: Lecture Today 4:15pm Gates G01 Learning to See Without a Teacher Phillip Isola

More information

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2. Problem Solving Agents. Problem Solving Agents: Assumptions

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2. Problem Solving Agents. Problem Solving Agents: Assumptions Class Overview COMP 3501 / COMP 4704-4 Lecture 2 Prof. JGH 318 Problem Solving Agents Problem Solving Agents: Assumptions Requires a goal Assume world is: Requires actions Observable What actions? Discrete

More information

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions. CS 787: Advanced Algorithms NP-Hardness Instructor: Dieter van Melkebeek We review the concept of polynomial-time reductions, define various classes of problems including NP-complete, and show that 3-SAT

More information

Dynamic Fringe-Saving A*

Dynamic Fringe-Saving A* ynamic ringe-saving * Xiaoxun Sun William Yeoh Sven Koenig omputer Science epartment University of Southern alifornia Los ngeles, 90089-0781, US {xiaoxuns, wyeoh, skoenig}@usc.edu bstract ringe-saving

More information

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Ramin Zabih Computer Science Department Stanford University Stanford, California 94305 Abstract Bandwidth is a fundamental concept

More information

Time-bounded Lattice for Efficient Planning in Dynamic Environments

Time-bounded Lattice for Efficient Planning in Dynamic Environments Time-bounded Lattice for Efficient Planning in Dynamic Environments Aleksandr Kushleyev Electrical and Systems Engineering University of Pennsylvania Philadelphia, PA 19104 akushley@seas.upenn.edu Maxim

More information

Recent Results in Path Planning for Mobile Robots Operating in Vast Outdoor Environments

Recent Results in Path Planning for Mobile Robots Operating in Vast Outdoor Environments In Proc. 1998 Symposium on Image, Speech, Signal Processing and Robotics, The Chinese University of Hong Kong, September,1998. Recent Results in Path Planning for Mobile Robots Operating in Vast Outdoor

More information

An algorithm for Performance Analysis of Single-Source Acyclic graphs

An algorithm for Performance Analysis of Single-Source Acyclic graphs An algorithm for Performance Analysis of Single-Source Acyclic graphs Gabriele Mencagli September 26, 2011 In this document we face with the problem of exploiting the performance analysis of acyclic graphs

More information

Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control

Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control Yoshiaki Kuwata and Jonathan P. How Space Systems Laboratory Massachusetts Institute of Technology {kuwata,jhow}@mit.edu

More information

Visual Navigation for Flying Robots. Motion Planning

Visual Navigation for Flying Robots. Motion Planning Computer Vision Group Prof. Daniel Cremers Visual Navigation for Flying Robots Motion Planning Dr. Jürgen Sturm Motivation: Flying Through Forests 3 1 2 Visual Navigation for Flying Robots 2 Motion Planning

More information

Searching with Partial Information

Searching with Partial Information Searching with Partial Information Above we (unrealistically) assumed that the environment is fully observable and deterministic Moreover, we assumed that the agent knows what the effects of each action

More information

Path Planning. CMPS 146, Fall Josh McCoy

Path Planning. CMPS 146, Fall Josh McCoy Path Planning CMPS 46, Fall 203 Josh McCoy Readings Reading Path Planning: 97-255 Dijkstra and graphs early. CMPS 46, Fall 203 Pathfinding Why search? Consider this problem given a set of integers, we

More information

Solutions to relevant spring 2000 exam problems

Solutions to relevant spring 2000 exam problems Problem 2, exam Here s Prim s algorithm, modified slightly to use C syntax. MSTPrim (G, w, r): Q = V[G]; for (each u Q) { key[u] = ; key[r] = 0; π[r] = 0; while (Q not empty) { u = ExtractMin (Q); for

More information

A Framework for Space and Time Efficient Scheduling of Parallelism

A Framework for Space and Time Efficient Scheduling of Parallelism A Framework for Space and Time Efficient Scheduling of Parallelism Girija J. Narlikar Guy E. Blelloch December 996 CMU-CS-96-97 School of Computer Science Carnegie Mellon University Pittsburgh, PA 523

More information

Planning for Landing Site Selection in the Aerial Supply Delivery

Planning for Landing Site Selection in the Aerial Supply Delivery Planning for Landing Site Selection in the Aerial Supply Delivery Aleksandr Kushleyev ESE Department University of Pennsylvania Brian MacAllister CIS Department University of Pennsylvania Maxim Likhachev

More information

Planning, Execution and Learning Heuristics and Multi-Heuristic A*

Planning, Execution and Learning Heuristics and Multi-Heuristic A* 15-887 Planning, Execution and Learning Heuristics and Multi-Heuristic A* Maxim Likhachev Robotics Institute Carnegie Mellon University Design of Informative Heuristics Example problem: move picture frame

More information

CSE-571. Deterministic Path Planning in Robotics. Maxim Likhachev 1. Motion/Path Planning. Courtesy of Maxim Likhachev University of Pennsylvania

CSE-571. Deterministic Path Planning in Robotics. Maxim Likhachev 1. Motion/Path Planning. Courtesy of Maxim Likhachev University of Pennsylvania Motion/Path Planning CSE-57 Deterministic Path Planning in Robotics Courtesy of Maxim Likhachev University of Pennsylvania Tas k : find a feasible (and cost-minimal) path/motion from the current configuration

More information

Map-Based Strategies for Robot Navigation in Unknown Environments

Map-Based Strategies for Robot Navigation in Unknown Environments Map-Based trategies for Robot Navigation in Unknown Environments Anthony tentz Robotics Institute Carnegie Mellon University Pittsburgh, Pennsylvania 15213 U.. A. Abstract Robot path planning algorithms

More information

Navigation and Metric Path Planning

Navigation and Metric Path Planning Navigation and Metric Path Planning October 4, 2011 Minerva tour guide robot (CMU): Gave tours in Smithsonian s National Museum of History Example of Minerva s occupancy map used for navigation Objectives

More information

The Dynamic Hungarian Algorithm for the Assignment Problem with Changing Costs

The Dynamic Hungarian Algorithm for the Assignment Problem with Changing Costs The Dynamic Hungarian Algorithm for the Assignment Problem with Changing Costs G. Ayorkor Mills-Tettey Anthony Stentz M. Bernardine Dias CMU-RI-TR-07-7 July 007 Robotics Institute Carnegie Mellon University

More information

ANA*: Anytime Nonparametric A*

ANA*: Anytime Nonparametric A* ANA*: Anytime Nonparametric A* Jur van den Berg 1 and Rajat Shah 2 and Arthur Huang 2 and Ken Goldberg 2 1 University of North Carolina at Chapel Hill. E-mail: berg@cs.unc.edu. 2 University of California,

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

A Comparison of Fast Search Methods for Real-Time Situated Agents

A Comparison of Fast Search Methods for Real-Time Situated Agents A Comparison of Fast Search Methods for Real-Time Situated Agents Sven Koenig Computer Science Department, University of Southern California 941 W 37th Street, Los Angeles, California 90089-0781 skoenig@usc.edu

More information

Heuristic (Informed) Search

Heuristic (Informed) Search Heuristic (Informed) Search (Where we try to choose smartly) R&N: Chap., Sect..1 3 1 Search Algorithm #2 SEARCH#2 1. INSERT(initial-node,Open-List) 2. Repeat: a. If empty(open-list) then return failure

More information

Heuristic Search and Advanced Methods

Heuristic Search and Advanced Methods Heuristic Search and Advanced Methods Computer Science cpsc322, Lecture 3 (Textbook Chpt 3.6 3.7) May, 15, 2012 CPSC 322, Lecture 3 Slide 1 Course Announcements Posted on WebCT Assignment1 (due on Thurs!)

More information

Autonomous robot motion path planning using shortest path planning algorithms

Autonomous robot motion path planning using shortest path planning algorithms IOSR Journal of Engineering (IOSRJEN) e-issn: 2250-3021, p-issn: 2278-8719 Vol. 3, Issue 1 (Jan. 2013), V1 PP 65-69 Autonomous robot motion path planning using shortest path planning algorithms T. Ravi

More information

Optimizing Schedules for Prioritized Path Planning of Multi-Robot Systems

Optimizing Schedules for Prioritized Path Planning of Multi-Robot Systems Proceedings of the 20 IEEE International Conference on Robotics & Automation Seoul, Korea May 21-26, 20 Optimizing Schedules for Prioritized Path Planning of Multi-Robot Systems Maren Bennewitz y Wolfram

More information

Lecture 3: Art Gallery Problems and Polygon Triangulation

Lecture 3: Art Gallery Problems and Polygon Triangulation EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified

More information

Rollout Algorithms for Discrete Optimization: A Survey

Rollout Algorithms for Discrete Optimization: A Survey Rollout Algorithms for Discrete Optimization: A Survey by Dimitri P. Bertsekas Massachusetts Institute of Technology Cambridge, MA 02139 dimitrib@mit.edu August 2010 Abstract This chapter discusses rollout

More information

22 Elementary Graph Algorithms. There are two standard ways to represent a

22 Elementary Graph Algorithms. There are two standard ways to represent a VI Graph Algorithms Elementary Graph Algorithms Minimum Spanning Trees Single-Source Shortest Paths All-Pairs Shortest Paths 22 Elementary Graph Algorithms There are two standard ways to represent a graph

More information

Informed search methods

Informed search methods Informed search methods Tuomas Sandholm Computer Science Department Carnegie Mellon University Read Section 3.5-3.7 of Russell and Norvig Informed Search Methods Heuristic = to find, to discover Heuristic

More information

Replanning with Uncertainty in Position: Sensor Updates vs. Prior Map Updates Juan P. Gonzalez and Anthony Stentz, Member, IEEE

Replanning with Uncertainty in Position: Sensor Updates vs. Prior Map Updates Juan P. Gonzalez and Anthony Stentz, Member, IEEE Replanning with Uncertainty in Position: Sensor Updates vs. Prior Map Updates Juan P. Gonzalez and Anthony Stentz, Member, IEEE Abstract This paper presents two new approaches to planning with uncertainty

More information

A CSP Search Algorithm with Reduced Branching Factor

A CSP Search Algorithm with Reduced Branching Factor A CSP Search Algorithm with Reduced Branching Factor Igor Razgon and Amnon Meisels Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel {irazgon,am}@cs.bgu.ac.il

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Information Systems and Machine Learning Lab (ISMLL) Tomáš Horváth 16 rd November, 2011 Informed Search and Exploration Example (again) Informed strategy we use a problem-specific

More information

Column Generation Method for an Agent Scheduling Problem

Column Generation Method for an Agent Scheduling Problem Column Generation Method for an Agent Scheduling Problem Balázs Dezső Alpár Jüttner Péter Kovács Dept. of Algorithms and Their Applications, and Dept. of Operations Research Eötvös Loránd University, Budapest,

More information

CS510 \ Lecture Ariel Stolerman

CS510 \ Lecture Ariel Stolerman CS510 \ Lecture02 2012-10-03 1 Ariel Stolerman Midterm Evan will email about that after the lecture, at least 2 lectures from now. The exam will be given in a regular PDF (not an online form). We will

More information

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano   tel: Marcello Restelli Dipartimento di Elettronica e Informazione Politecnico di Milano email: restelli@elet.polimi.it tel: 02 2399 3470 Path Planning Robotica for Computer Engineering students A.A. 2006/2007

More information

Planning Long Dynamically-Feasible Maneuvers for Autonomous Vehicles

Planning Long Dynamically-Feasible Maneuvers for Autonomous Vehicles Planning Long Dynamically-Feasible Maneuvers for Autonomous Vehicles Maxim Likhachev School of Computer Science University of Pennsylvania Philadelphia, PA maximl@seas.upenn.edu Dave Ferguson Intel Research

More information

Real-Time Search in Dynamic Worlds

Real-Time Search in Dynamic Worlds Real-Time Search in Dynamic Worlds David M. Bond, Niels A. Widger, Wheeler Ruml Department of Computer Science University of New Hampshire Durham, NH 0384 USA david.bond at iol.unh.edu niels.widger, ruml

More information

Workspace-Guided Rapidly-Exploring Random Tree Method for a Robot Arm

Workspace-Guided Rapidly-Exploring Random Tree Method for a Robot Arm WorkspaceGuided RapidlyExploring Random Tree Method for a Robot Arm Jaesik Choi choi31@cs.uiuc.edu August 12, 2007 Abstract Motion planning for robotic arms is important for real, physical world applications.

More information

CS 170 Spring 2000 Solutions and grading standards for exam 1 Clancy

CS 170 Spring 2000 Solutions and grading standards for exam 1 Clancy CS 170 Spring 2000 Solutions and grading standards for exam 1 Clancy Exam information 179 students took the exam. Scores ranged from 5 to 30, with a median of 16 and an average of 16.3. There were 19 scores

More information

General properties of staircase and convex dual feasible functions

General properties of staircase and convex dual feasible functions General properties of staircase and convex dual feasible functions JÜRGEN RIETZ, CLÁUDIO ALVES, J. M. VALÉRIO de CARVALHO Centro de Investigação Algoritmi da Universidade do Minho, Escola de Engenharia

More information

Search-based Planning Library SBPL. Maxim Likhachev Robotics Institute Carnegie Mellon University

Search-based Planning Library SBPL. Maxim Likhachev Robotics Institute Carnegie Mellon University Search-based Planning Library SBPL Maxim Likhachev Robotics Institute Carnegie Mellon University Outline Overview Few SBPL-based planners in details - 3D (x,y,θ) lattice-based planning for navigation (available

More information

CS 4700: Foundations of Artificial Intelligence

CS 4700: Foundations of Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Bart Selman selman@cs.cornell.edu Informed Search Readings R&N - Chapter 3: 3.5 and 3.6 Search Search strategies determined by choice of node (in queue)

More information

3 SOLVING PROBLEMS BY SEARCHING

3 SOLVING PROBLEMS BY SEARCHING 48 3 SOLVING PROBLEMS BY SEARCHING A goal-based agent aims at solving problems by performing actions that lead to desirable states Let us first consider the uninformed situation in which the agent is not

More information

INTRODUCTION TO HEURISTIC SEARCH

INTRODUCTION TO HEURISTIC SEARCH INTRODUCTION TO HEURISTIC SEARCH What is heuristic search? Given a problem in which we must make a series of decisions, determine the sequence of decisions which provably optimizes some criterion. What

More information

Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA*

Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA* 6-350 Planning Techniques for Robotics Search Algorithms: Multi-goal A*, IDA* Maxim Likhachev Robotics Institute Agenda A* with multiple goals Iterative Deepening A* (IDA*) 2 Support for Multiple Goal

More information

Discrete Motion Planning

Discrete Motion Planning RBE MOTION PLANNING Discrete Motion Planning Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Announcement Homework 1 is out Due Date - Feb 1 Updated

More information

Formal Model. Figure 1: The target concept T is a subset of the concept S = [0, 1]. The search agent needs to search S for a point in T.

Formal Model. Figure 1: The target concept T is a subset of the concept S = [0, 1]. The search agent needs to search S for a point in T. Although this paper analyzes shaping with respect to its benefits on search problems, the reader should recognize that shaping is often intimately related to reinforcement learning. The objective in reinforcement

More information

FastA & the chaining problem

FastA & the chaining problem FastA & the chaining problem We will discuss: Heuristics used by the FastA program for sequence alignment Chaining problem 1 Sources for this lecture: Lectures by Volker Heun, Daniel Huson and Knut Reinert,

More information

A Provably Good Approximation Algorithm for Rectangle Escape Problem with Application to PCB Routing

A Provably Good Approximation Algorithm for Rectangle Escape Problem with Application to PCB Routing A Provably Good Approximation Algorithm for Rectangle Escape Problem with Application to PCB Routing Qiang Ma Hui Kong Martin D. F. Wong Evangeline F. Y. Young Department of Electrical and Computer Engineering,

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Information Systems and Machine Learning Lab (ISMLL) Tomáš Horváth 10 rd November, 2010 Informed Search and Exploration Example (again) Informed strategy we use a problem-specific

More information

Common Misconceptions Concerning Heuristic Search

Common Misconceptions Concerning Heuristic Search Common Misconceptions Concerning Heuristic Search Robert C. Holte Computing Science Department, University of Alberta Edmonton, Canada T6G 2E8 (holte@cs.ualberta.ca Abstract This paper examines the following

More information

Final Exam Solutions

Final Exam Solutions Introduction to Algorithms December 14, 2010 Massachusetts Institute of Technology 6.006 Fall 2010 Professors Konstantinos Daskalakis and Patrick Jaillet Final Exam Solutions Final Exam Solutions Problem

More information

FastA and the chaining problem, Gunnar Klau, December 1, 2005, 10:

FastA and the chaining problem, Gunnar Klau, December 1, 2005, 10: FastA and the chaining problem, Gunnar Klau, December 1, 2005, 10:56 4001 4 FastA and the chaining problem We will discuss: Heuristics used by the FastA program for sequence alignment Chaining problem

More information

COMP9414: Artificial Intelligence Informed Search

COMP9414: Artificial Intelligence Informed Search COMP9, Wednesday March, 00 Informed Search COMP9: Artificial Intelligence Informed Search Wayne Wobcke Room J- wobcke@cse.unsw.edu.au Based on slides by Maurice Pagnucco Overview Heuristics Informed Search

More information

Any-Angle Search Case Study: Theta* slides by Alex Nash / with contributions by Sven Koenig

Any-Angle Search Case Study: Theta* slides by Alex Nash / with contributions by Sven Koenig Any-Angle Search Case Study: Theta* slides by Alex Nash anash@usc.edu / alexwnash@gmail.com with contributions by Sven Koenig skoenig@usc.edu Table of Contents o Introduction o Analysis of Path Lengths

More information

Algorithms and Data Structures

Algorithms and Data Structures Algorithms and Data Structures Spring 2019 Alexis Maciel Department of Computer Science Clarkson University Copyright c 2019 Alexis Maciel ii Contents 1 Analysis of Algorithms 1 1.1 Introduction.................................

More information

Clustering Using Graph Connectivity

Clustering Using Graph Connectivity Clustering Using Graph Connectivity Patrick Williams June 3, 010 1 Introduction It is often desirable to group elements of a set into disjoint subsets, based on the similarity between the elements in the

More information

Efficient Cost Computation in Cost Map Planning for Non-Circular Robots

Efficient Cost Computation in Cost Map Planning for Non-Circular Robots Efficient Cost Computation in Cost Map Planning for Non-Circular Robots Jennifer King Computer and Information Science University of Pennsylvania Philadelphia, PA 904 jeking@seas.upenn.edu Maxim Likhachev

More information

Chapter 3: Informed Search and Exploration. Dr. Daisy Tang

Chapter 3: Informed Search and Exploration. Dr. Daisy Tang Chapter 3: Informed Search and Exploration Dr. Daisy Tang Informed Search Definition: Use problem-specific knowledge beyond the definition of the problem itself Can find solutions more efficiently Best-first

More information