Robotics and Autonomous Systems 54 (2006) 184–191 www.elsevier.com/locate/robot Scalable robot fault detection and identification Vandi Verma a,∗ , Reid Simmons b a MS 269-1, NASA Ames Research Center, Moffett Field, CA 94043, United States b Robotics Institute, Carnegie Mellon University, 5000 Forbes Avenue, Pittsburgh, PA 15213, United States Received 18 January 2005; accepted 13 September 2005 Abstract Experience has shown that even carefully designed and tested robots may encounter anomalous situations. It is therefore important for robots to monitor their state so that anomalous situations may be detected in a timely manner. Robot fault diagnosis typically requires tracking a very large number of possible faults in complex non-linear dynamic systems with noisy sensors. Traditional methods either ignore the uncertainty or use linear approximations of non-linear system dynamics. Such approximations are often unrealistic, and as a result faults either go undetected or become confused with non-fault conditions. Probability theory provides a natural representation for uncertainty, but an exact Bayesian solution for the diagnosis problem is intractable. Monte Carlo approximations have demonstrated considerable success in application domains such as computer vision and robot localization and mapping. But, classical Monte Carlo methods, such as particle filters, can suffer from substantial computational complexity. This is particularly true with the presence of rare, yet important events, such as many system faults. This paper presents an algorithm that provides an approach for computationally tractable fault diagnosis. Taking advantage of structure in the domain it dynamically concentrates computation in the regions of state space that are currently most relevant without losing track of less likely states. Experiments with a dynamic simulation of a six-wheel rocker-bogie rover show a significant improvement in performance over the classical approach. c 2005 Elsevier B.V. All rights reserved. Keywords: Robot fault diagnosis; Fault protection; Robot fault detection 1. Introduction In this paper a fault is defined as a deviation from expected behavior. Experience has shown that even carefully designed and tested robots may encounter faults [6]. One of the reasons for this is that components degrade over time. Another is that the developers of the robot rarely have complete knowledge of the environment in which it operates and hence may not have accounted for certain situations. Fault Detection and Identification (FDI) for robots is a complex problem. This is because the space of possible faults is very large, robot sensors, actuators, and environment models are uncertain, and there is limited computation time and power. The algorithm presented in this paper uses Monte Carlo methods to gain accuracy. Classical Monte Carlo methods for ∗ Corresponding author. E-mail addresses: vandi@email.arc.nasa.gov (V. Verma), reids@ri.cmu.edu (R. Simmons). dynamic systems, such as particle filters, are capable of tracking complex non-linear systems with noisy measurements. The problem is that estimates from a particle filter tend to have a high variance for small sample sets. Using large sample sets is computationally expensive and defeats the purpose. This paper presents an approach for improving the accuracy of fault monitoring with a computationally tractable set of samples in a particle filter. The combination of two algorithms described in this paper enables monitoring of a wider range and larger number of faults during robot operation than has hitherto been possible. It can handle noisy sensors, non-linear, non- Gaussian models of behavior, and is computationally efficient. 2. Robot fault detection, identification, and monitoring A fault is defined as a deviation from the expected behavior of the system. A failure is a complete interruption of the system’s ability to perform the required operation [12]. Fault detection is defined as the process of determining that a fault 0921-8890/$ - see front matter c 2005 Elsevier B.V. All rights reserved. doi:10.1016/j.robot.2005.09.028