!! High-Level Control
MINERVA: Carnegie Mellon's Robotic Tourguide Project Minerva's Image

High-Level Control

When planning a tour of the museum, human beings tend to thing in terms of large-scale actions, such as "seeing the dragster" or "going to Material World". However, the mobile robot operates on a much finer scale -- going to particular position (x, y), or turning ninety degrees. A bridge is needed between the low-level control and the high-level description of the tourguide task.

Completing the six tours are an example of classical Artificial Intelligence planning problems, in that different conditions must be considered and met. The tours are described in a high-level description language called RPL. This language issues commands to the low-level navigation and control software to move to particular points in the environment. The language also determines when to begin describing exhibits or interacting with the audience.

Plans implemented in RPL are show in pictorial form below.

Picture of RPL tasks

Clicking on the image will enlarge it.

This language is reactive, in the sense that planning and execution are mixed; the particular plan being executed can be modified as necessary, due to unforeseeable external events. One example is the behaviour that must be triggered in crowds. If enough people crowd around her, Minerva will be unable to move to the next exhibit safely. Therefore, she must ask people to move out of the way -- this necessity for this behaviour is obvious, but cannot be implemented using a pre-arranged plan.

In this project we apply structured reactive controllers (SRCs) to couple high-level reasoning with continuous low-level control processes. SRCs aim at enabling autonomous robots to accomplish nonrepetitive sets of complex jobs, which are mostly --- but not all --- routine, reliably and without wasting resources. SRCs are collections of concurrent control routines that specify routine activities and can adapt themselves to non-standard situations by means of planning. SRCs execute three kinds of control processes: routine activities that handle standard tasks in standard situations, monitoring processes that detect non-standard situations, and planning processes that adapt, if necessary, routine activities to non-standard situations.

Home The Java-Based Image Stream About this project