Search Reduction through Conservative Abstract-Space Based Heuristic

The efficiency of heuristic search depends dramatically on the quality of the heuristic function used. For an optimal heuristic search, heuristics that estimate cost-to-goal better typically lead to faster search times. For a sub-optimal heuristic search such as weighted A* on the other hand, the search speed depends more on the correlation between the heuristic function and the true cost-to-goal function. In this extended abstract, we discuss our preliminary work on computing heuristic functions that exploit this fact and aim to reduce the number of states expanded by weighted A* search before it finds a path to the goal. Introduction and Problem Description It is desired to have a heuristic function that leads the search to the goal with minimum number of expansions possible. To achieve this, it is common for a heuristic function to be computed on a graph derived by abstracting the original graph. Cases have been shown (Wilt and Ruml 2015) where heuristics designed for optimal searches may not be suited for sub-optimal searches and a strong correlation of the heuristic with the true cost-to-goal or the node-distanceto-goal (Wilt and Ruml 2012) can result in a quicker search by reducing inefficient expansions, defined as the expansion of nodes that do not appear in the final path given by the search. A weak correlation may lead to a local minima and a lot of inefficient expansions. This motivates us to come up with a heuristic function that serves the aforementioned purpose. Our contribution is in defining the notion of conservative and non − conservative edges. Two abstract states are connected by a conservative edge in the abstract space, only if all corresponding pairs of states in the original state space are also connected via a direct edge. In the context of weighted A* with a sufficiently large inflation of heuristic, a heuristic function that leads the search along the paths in the abstract space that maximize the usage of the conservative edges results in the search that is more likely to find a path to the goal without getting stuck in local minima. The planning problem is defined as searching a graph G = (S,E) where S is the set of states, and E is the set of edges in the graph. (s, s′) denotes an edge in E connecting Copyright c © 2017, Association for the Advancement of Artificial Intelligence (www.aaai.org). All rights reserved. states s, s′ ∈ S. We assume all edge costs are finite. The objective of the search is to find a path from state sstart to the goal state sg in G. To illustrate some concepts, we will use the 3D navigation planning domain with the robot having three degrees of freedom,i.e, S = {(x, y, θ(heading)) | x ∈ {1, ..., n}, y ∈ {1, ...,m}, θ ∈ {1, ..., 8}}, where n = width and m = height of the environment represented as an 8-connected grid. We assume that the robot can turn in place and can move in any direction on the 8-connected grid. Let λ : S → S̃ be the many-to-one mapping representing the abstraction of each state in S to the abstract space S̃, defined by:λ(s) = s̃, where s ∈ S, s̃ ∈ S̃ s.t |S̃| ≤ |S|. λ−1 is the inverse one-to-many mapping from S̃ to S defined by: λ−1(s̃) = {s ∈ S | λ(s) = s̃} For example, in the 3D navigation domain we use the mapping λ((x, y, θ)) = (x, y), by dropping the third degree of freedom θ. The abstract space is also a graph G̃ = {S̃, Ẽ}. Each edge has a flag indicating if it is conservative or not. An edge (s̃, s̃′) for s̃, s̃′ ∈ S̃ is conservative if the following can be guaranteed: ∀s ∈ λ−1(s̃), ∃ at least one (s, s′) ∈ E s.t s′ ∈ λ−1(s̃′). For example, in 3D navigation domain, G̃ is an 8-connected grid in which the obstacles in the map are inflated by the inscribed radius of the robot footprint to exclude those states where the robot center cannot physically lie. The edges that are labeled as conservative on the other hand are those that connect cells that remain to be valid for all possible orientations of the robot. To determine which edges are conservative, we construct a conservative representation of the space, also a graph, as an 8-connected grid in which we inflate the obstacles by the radius of the circle that circumscribes the footprint. More generally, a conservative graph is a subset of G̃ that consists purely of conservative edges. Given G and G̃ with edges flagged as conservative, we aim to compute a heuristic function h: S → N that reduces the efforts weighted A* performs to find a path to the goal. Heuristic computation Ideally, for a sufficiently large weight of the heuristic in weighted A* search, if h(s) can make the weighted A* search expand only those successors s ∈ S of state s′ ∈ S for which it holds that (λ(s), λ(s′)) is a conservative edge in the abstract space then the search would always be proProceedings of the Tenth International Symposium on Combinatorial Search (SoCS 2017)