Remote Agent software on NASAs Deep Space 1 spacecraft is a success
MOUNTAIN VIEW, Calif. NASA`s Deep Space 1 spacecraft may not have taken a close-enough picture of an asteroid this summer, but scientists still consider the mission`s autonomous software, Remote Agent, a success.
MOUNTAIN VIEW, Calif. — NASA`s Deep Space 1 spacecraft may not have taken a close-enough picture of an asteroid this summer, but scientists still consider the mission`s autonomous software, Remote Agent, a success.
Experts from NASA`s Ames Research Center in Mountain View, Calif., and Jet Propulsion Laboratory (JPL) in Pasadena, Calif., pooled their expertise to conduct Remote Agent, an experiment designed to demonstrate spacecraft autonomy.
NASA scientists say the Remote Agent artificial intelligence used on NASA`s Deep Space 1 is the precursor for future self-aware, self-controlled and self-operated robots, exploring rovers and intelligent machines.
"This technology will allow us to pursue Solar System exploration missions that only a few years ago would have been considered too elaborate, too costly, or too dependent on teams of Earth-bound controllers," says Doug Bernard, Remote Agent manager at JPL.
The software package took command of Deep Space 1 during a flight experiment, and the artificial intelligence more than met expectations, NASA officials claim. The software detected, diagnosed, and fixed problems, showing that it can make decisions to keep a mission on track, they say.
However, Remote Agent cannot learn. It plans tasks and diagnoses and fixes problems, but it is not an artificial intelligence that can take the place of a human, Bernard says.
NASA chiefs are not ready to turn over complete control of a multi-million dollar spacecraft to a software program, he adds.
Remote Agent has three components, each of which plays a significant role in controlling the spacecraft:
n the planner and scheduler (PS), which produces flexible plans, specifying the basic activities that must take place to accomplish the mission goals;
n the smart executive (EXEC), which carries out the planned activities; and
n the mode identification and recovery (MIR), also known as Livingston, that monitors the health of the spacecraft and attempts to correct any problems that occur.
The new onboard planner has never been used on a spacecraft before, Bernard says. A goal-based, on-board planner creates flexible plans that can take advantage of unexpected opportunities. The PS also cuts down on the cost caused by planning and scheduling through communication with the Deep Space Network (DSN) on the ground, NASA officials claim.
Bringing these three parts together made the experiment possible, Bernard says.
The process begins with EXEC requesting a plan from PS. PS then produces a plan for a given time based on the general mission goals and the current state of the spacecraft. The EXEC receives the plan from PS, fills in the details of the plans by determining what spacecraft system actions must take place to complete the planned activities, and commands spacecraft systems to take the necessary actions.
Livingston constantly monitors the state of the spacecraft. It identifies failures and suggests recovery actions. EXEC then executes the recovery action or requests a new plan from PS, which will take into account the failure.
Livingston compares the spacecraft status with stored models of how components of spacecraft should work. When a system performs differently from the models, it goes into action, Bernard says. Eventually the Livingston part of the Remote Agent will handle all the problem solving of the crew on the ground, NASA officials believe.
The parts of Remote Agent are constantly communicating — using inter-process communication — with each other and with external components of the spacecraft. MIR receives information regarding the state of different components from monitors located throughout the spacecraft. PS must receive information from planning experts to generate the plan.
For example, the navigation system reports to PS regarding the spacecraft`s current position, and the attitude-control system tells PS how long it will take to turn the spacecraft to a new position. Finally, EXEC sends commands to other pieces of flight software which in turn control the spacecraft`s systems or flight hardware.
Engineers wrote the Remote Agent software in Lisp and C++, Bernard adds.
The software`s ability to diagnose and fix its own problems was handy less than 24 hours into the experiment, when the synthetic intelligence succeeded in firing Deep Space 1`s ion engine, but failed to turn it back off. With 70 percent of objectives met and the experiment paused starting the afternoon of May 18, it was clear that some type of computer bug had settled in and caused this glitch, but NASA engineers were not sure what it was.
"Remote Agent showed us how powerful it is by providing a list of possible reasons for the bug," says computer scientist Nicola Muscettola at Ames.
Scientists determined the computer bug was related to a timing error when two parts of the program were exchanging information — easy to fix permanently in coming months, and safe for completing tests the week of May 17 without immediate modifications, NASA officials say. "After defining the bug, our experiment team was confident we could complete the flight test. We asked Remote Agent to develop a new plan and then to fly Deep Space 1 solo for six more hours," Muscettola says.
The end result — In 29 hours starting at 11 a.m. on Monday, May 17, and in six hours on Friday, May 21, the remote agent team met 100 percent of their experiment objectives, NASA officials claim.
"We ran the program about 3,000 times on Earth before the space test, and this bug never appeared," Muscettola says. "The sudden occurrence of this bug is an example of why we tested the software during space flight instead of only on the ground."
"If had not been for Remote Agent`s ability to do onboard planning, we would not have been able to complete the tests so quickly. It would have taken days for the ground team to come up with a new plan," says Pandu Nayak, deputy manager of Remote Agent development at Ames.
To demonstrate Remote Agent`s versatility, the tests threw different challenges in the software`s path — creating created four simulated failures designed to test Remote Agent`s abilities.
On May 17, the spacecraft`s camera appeared to be stuck in the "on" position. Remote Agent responded by formulating and executing a new plan that accounted for the fact that the camera could not be turned off, thus impacting total spacecraft power availability.
Then, on May 21, "when the artificial intelligence detected that an electronics unit had `failed,` the software fixed the unit by reactivating it, not unlike rebooting a personal computer after the screen freezes," says Marc Rayman, Deep Space 1 deputy mission manager and chief mission engineer at JPL. "Next, a sensor failed, and Remote Agent correctly recognized the sensor was the problem, not the device it was sensing.
"This pair of problems is akin to finding that the engine warning light has come on in your car," Rayman explains. "The light can mean one of two things: either the engine has a problem, or the sensor that triggers the light has a problem. In each case, Remote Agent correctly distinguished which situation it was in."
The final simulated failure was a thruster stuck in the "off" position, which Remote Agent detected and for which it compensated by switching to a different set of thrusters.
Launched October 24, 1998, Deep Space 1 has validated 12 new technologies, including Remote Agent, so scientists can confidently use them during science missions of the 21st century, NASA officials say. The project has exceeded all of its technology validation success criteria, NASA officials claim.
Remote Agent was also named co-winner of NASA`s 1999 Software of the Year award last month. Remote Agent shared the honor with Genoa, a software package that can p redict aging and failure of materials, including those used in airplanes, cars, engines, and bridges. Genoa is a progressive failure analysis software system developed at the NASA Glenn Research Center at Lewis Field in Cleveland, Ohio.