  Enhanced AutoNav (ENav), the baseline surface navigation software for NASA's
Perseverance rover, sorts a list of candidate paths for the rover to traverse,
then uses the Approximate Clearance Evaluation (ACE) algorithm to evaluate
whether the most highly ranked paths are safe. ACE is crucial for maintaining
the safety of the rover, but is computationally expensive. If the most
promising candidates in the list of paths are all found to be infeasible, ENav
must continue to search the list and run time-consuming ACE evaluations until a
feasible path is found. In this paper, we present two heuristics that, given a
terrain heightmap around the rover, produce cost estimates that more
effectively rank the candidate paths before ACE evaluation. The first heuristic
uses Sobel operators and convolution to incorporate the cost of traversing
high-gradient terrain. The second heuristic uses a machine learning (ML) model
to predict areas that will be deemed untraversable by ACE. We used physics
simulations to collect training data for the ML model and to run Monte Carlo
trials to quantify navigation performance across a variety of terrains with
various slopes and rock distributions. Compared to ENav's baseline performance,
integrating the heuristics can lead to a significant reduction in ACE
evaluations and average computation time per planning cycle, increase path
efficiency, and maintain or improve the rate of successful traverses. This
strategy of targeting specific bottlenecks with ML while maintaining the
original ACE safety checks provides an example of how ML can be infused into
planetary science missions and other safety-critical software.
