project image or logo
The Athena test rover during a Self-Reliant Rover demonstration


2018 SRR walkabout campaign in the Mars Yard
2018 SRR walkabout campaign in the Mars Yard

Achieving consistently high levels of productivity has been a challenge for Mars surface missions. While the rovers have made major discoveries and dramatically increased our understanding of Mars, they often require a great deal of effort from the operations teams, and achieving mission objectives can take longer than anticipated. The objective of this work is to identify changes to flight software and ground operations that enable high levels of productivity with reduced reliance on ground interactions. This will enable the development of Self-Reliant Rovers: rovers that make use of high-level guidance from operators to select their own situational activities and respond to unexpected conditions, all with reduced reliance on ground intervention.


Current Mars rovers rely heavily on a ground operations team to schedule the actions that the rover needs to perform during each Mars day, or "sol" [Gaines et al. 2016] . The rover's schedule must be balanced between achieving mission objectives, maintaining rover health, and taking advantage of communication opportunities from rover to ground. To minimize the risk of the rover failing to follow its schedule, operators often must make conservative estimates of time and energy usage. When unexpected circumstances occur, the rover often has to stop and wait for ground operators to assess the situation, delaying an objective by hours or even by multiple sols.

These and other issues are identified in the Case Study technical report [Gaines et al. 2016] .


The development and research work in this task has concluded. In 2018, the project conducted an extensive experiment involving JPL scientists to perform a "walkabout" campaign exploring the JPL Mars Yard testing facility, with the system running on the JPL Athena test rover [Russino et al. 2019]. This demonstration simulated limited communication with the rover over multiple sols, with the objective of characterizing multiple rock formations and outcrops spread across a few locations. The rover must autonomously navigate through high-slip terrain, geometric hazards, and slopes to reach the targets.

SRR team formulating objectives with scientists
SRR team formulating objectives with scientists

Results from the evaluation demonstrated an 80% reduction in the number of sols required by MSL, to achieve a similar walkabout campaign outcome that includes successful visits to all targets [Russino et al. 2019]. Scientists felt that the approach is well-suited for walkabouts and long-distance drive objectives.


SRR software architecture
SRR software architecture

The Self-Reliant Rovers system is divided into three layers that order from highest degree of autonomy to lowest, following the Jet Propulsion Laboratory flight software architecture [Gaines et al. 2018]. The SRR system primarily focuses on five main components that span these layers.

Onboard Planning

At the behavioral level, an onboard Goal Planner accepts high-level objectives, or "campaign intents" from ground operations and generates activity plans to achieve those mission goals. One example of a campaign would be to characterize and take observations of features in multiple nearby locations. The Goal Planner is capable of producing a schedule that includes drive activities, wakeups/shutdowns, and observations, while respecting communication windows and time and resource constraints. At its core, the Goal Planner uses the Pathogen engine to perform a search over schedules that satisfy campaign intents as much as possible, achieving the highest "utility" without violating any constraints.

Once a schedule has been produced, the Executive component dispatches the activities at their scheduled times. Because it takes a nontrivial amount of time for the Goal Planner to produce a schedule whenever it replans, the Executive's role is to enforce constraints between activities if they run longer or shorter than expected, or failed to complete successfully.

Scientist-Guided Autonomous Science

At the activity level, Self-Reliant Rovers have the ability to autonomously identify science targets that may be worth additional measurements of. The Autonomous Science component can analyze panoramas to find geological features matching those specified in the campaign intent, and propose follow-up observations of those features to the Goal Planner. The areas that best match the TextureCam models provided by the scientists [Thompson et al. 2012] can be given more weight, and a campaign may be considered fulfilled once a certain number of high quality follow-up observations have been taken, satisfying the original scientific intent. This process increases science productivity by reducing reliance on ground-in-the-loop to instruct the rover on what to take more observations of.

Slip-Aware Navigation

The project also targeted rover navigation capabilities. Existing rovers only have the ability to reason about geometric hazards, avoiding obstacles that present physical harm to the rover. The Mobility Manager is implemented with the SPOC terrain classifier [Rothrock et al. 2016] that assesses the upcoming terrain into classes with different slip characteristics. The texture information is taken into account during traversability computation, allowing the rover to avoid hazardous, high slip areas and take paths with more stable terrain.

Health Assessment

Another techology introduced to the SRR system is model-based fault detection and isolation during drive activities. Due to limited knowledge of terrain, the rover often encounters unexpected resistance or slip when driving, triggering software "faults" or alarms that abort the drive. The root causes for these are typically benign, but existing practice favors caution by preferring to wait for ground-in-the-loop to assess the situation, before continuing. To attack this source of productivity loss, SRR includes a Mobility Health Manager that is capable of diagnosing the cause of drive faults using a model-based reasoning system called MONSID [Kolcio and Fesq 2016]. Once the fault can be explained, the health manager can assess whether it is safe to simply resume the drive with an updated set of expectations.

Global Localization

An important goal of SRR is allowing the rover to independently traverse long distances over multiple sols. One difficulty hindering this is the accumulation of error in the rover's estimated position as it moves around and over fields and terrain. While this drift can be corrected by manually matching orbital imagery to onboard camera panorama, to avoid ground-in-the-loop, this procedure must be performed by the rover. The Global Localization module has the job of matching orthographic projections from surface images and orbital images to ascertain a much more accurate estimation of the rover's position.



  • Dan Gaines (PI)
  • Ryan Mackey (Co-I)
  • Gregg Rabideau (Co-I)
  • Ashwin Vasavada (Co-I)
  • Bob Anderson
  • Ali Agha
  • Gary Doran
  • Chet Joswig
  • Heather Justice
  • Ksenia Kolcio (Okean)
  • Mike Paton
  • Brandon Rothrock
  • Joe Russino
  • Jacek Sawoniewicz
  • Steve Schaffer
  • Vincent Wong
  • Kathryn Yu
  • Issa Nesnas (Initiative Lead)
  • Magdy Bareh
  • Lorraine Fesq
  • Mark Maimone