My research interests focus on developing reliable, highly autonomous systems (especially mobile robots) that operate in rich, uncertain environments. The goal is to create intelligent systems that can operate autonomously for long periods of time in unstructured, natural environments. This necessitates robots that can plan, effectively reason about uncertainty, diagnose and recover from unanticipated errors, and reason about their limitations. In particular, I am interested in architectures for autonomy that combine deliberative and reactive behavior, reliable execution monitoring and error recovery, multi-robot coordination, probabilistic and symbolic planning, formal verification of autonomous systems, and human-robot social interaction.
- Architectures for Autonomy. We are developing the Task Description Language (TDL), an extension of C++ that includes syntax to support task-level control, such as task decomposition, task synchronization, monitoring and exception handling. TDL is based on our earlier work on the Task Control Architecture (TCA), a general-purpose architecture to support distributed planning, execution, error recovery, and task management for autonomous systems. TDL and TCA have been used in over a dozen mobile robot projects at CMU and elsewhere, including NASA and DARPA. At CMU, current testbeds include Xavier, Bullwinkle and Nomad. We are currently extending TDL to integrate within a three-tiered architecture and to handle coordination of multiple robot agents.
We have also developed IPC a message-based package for inter-process communication. IPC features anonymous publish-subscribe messages, client-server messages, automatic serializing and deserializing of message data, including data containing pointers and variable-length arrays.
Click here for a brief history of our research in architectures for task-level control.
- Execution Monitoring and Error Recovery. We are investigating methods for making mobile robots more robust and self-reliant. We are exploring the use of model-based reasoning techniques to detect and diagnose failures, hierarchies of monitors and exception handlers to catch unanticipated situations, and learning of new monitors and exception handlers from experience. The research incorporates symbolic (model-based) reasoning, probabilistic reasoning, interleaving of planning and execution and selective monitoring of relevant environmental features. Testbeds include Xavier and Amelia (office-delivery robots), Nomad (Antarctic exploration rover), and Bullwinkle (a testbed for Mars exploration).
- Multi-Robot Coordination. We are researching issues of how multiple, heterogeneous robots can coordinate to carry out high-level tasks, especially those that cannot be accomplished by a single robot. Issues include having the robots negotiate to dynamically form teams and assign tasks, monitoring each other's performance, and adapting dynamically to changing situations. Testbeds include the Mercator (urban exploration robots) and DIRA (multi-robot assembly and construction) projects.
- Probabilistic Planning and Reasoning. We are exploring advanced planning and reasoning techniques, many of which involve probabilistic reasoning. In particular, we are exploring issues of using information gain metrics to plan how to efficiently explore large areas (both indoors and outdoors), and using partially observable Markov models to navigate robots in office environments.
- Formal Verification of Autonomous Systems. We are developing tools and techniques to enable engineers to use formal methods more easily in the process of designing and implementing autonomous systems. The basic idea is to provide translators that can autonomously convert specialized representation used in autonomous systems into SMV, a formal model-checking language, verify the resulting models, and then translate any counter-examples back into the original representation language. The research also involves developing classes of properties that are useful to verify, automatic explanation and visualization of counter-examples, and advanced model-checking techniques that are relevant to verification of autonomous systems. To date, we have investigated these issues using the Livingstone model-based fault diagnosis system (developed at NASA Ames) and TDL, a language for specifying task-level control strategies for concurrent, distributed systems.
- Human-Robot Social Interaction. The goal here is to make robots more useful and acceptable by enabling them to interact with humans using social rules and conventions. This includes such rules as how to pass people in hallways in a socially acceptable manner, ride in elevators, and how to enter and wait in line. In conjunction with members of the Drama department, we are starting a project to give a robot a personality, and have it converse with people. The goal is to develop a robot that can escort visitors around Newell-Simon Hall and provide useful information naturally and pleasantly.