GRACE: The Social Robot

Graduate Robot Attending a ConferencE

In the fall of 2001, a group of researchers from several universities, colleges, and research institutions decided to pool their resources and tackle the AAAI Robot Challenge in July of 2002. The 2002 group includes students, faculty, and researchers from Carnegie Mellon University, the Naval Research Laboratory, Metrica Inc., Northwestern University, and Swarthmore College.

GRACE, shown to the right, is a B21R Mobile Robot built by RWI. She has an expressive face on a panning platform as well as a large array of sensors. The sensors include a microphone, touch sensors, infrared sensors, sonar sensors, a scanning laser range finder, a stereo camera head on a pan-tilt unit, and a single color camera with pan-tilt-zoom capability. GRACE can speak using a high-quality speech synthesizer, and understand responses using her microphone and speech recognition software.

GRACE in Action

On July 31st, 2002, at the Shaw Conference Center in Edmonton, Alberta, GRACE successfully completed all of the tasks in the challenge. She began just inside the door of the conference center (it was raining outside at the time) and found her way into the elevator by engaging in a conversation with one of the team members, Matt MacMahon. Upon arriving at the meeting level, she continued to follow Matt's directions until she reached the edge of the lobby with the registration desk.

Upon reaching the lobby, GRACE switched modes and began to look for the registration desk, which was marked with a large pink sign saying "Robots". She used the small camera with the zoom set very high to find the sign at a distance of about 25m. Once she found the sign, she moved directly to the counter.

Several "volunteers" were standing in a line at the counter, so now GRACE switched modes once again and tried to find the end of the line. She started at the beginning of the line and started to work her way back. Unfortunately, GRACE did not seem to perceive Leslie Kaelbling (MIT), who was standing third in the line, and GRACE pushed her out of line and took her place. Many onlookers described it as perhaps the most "human" of her actions during the challenge run. GRACE then waited patiently in line as the people in front of her moved forward.

Once at the desk, GRACE interacted with the AAAI staff member and demanded a name tag, fancy bag, and directions to the talk area. When she had what she wanted, she proceeded to navigate through the crowd to the talk location. For this part of the navigation GRACE used an electronic map which she was able to access after registering.

Once in the talk area, GRACE gave a 15-20 minute presentation on her hardware and software to a crowd of several hundred AI researchers. At the end she received a loud ovation, as did the 20+ team members at the conference. Overall, GRACE exceeded the expectations of both the crowd and the team members and represents a milestone in robotics. We all hope to improve upon GRACE's capabilities next year at IJCAI-03 in Alcapulco, Mexico.

GRACE starting out GRACE going to the elevator GRACE starting across the lobby GRACE giving her talk

Current News

  • 26 July: Stories about GRACE
  • 26 July: Grace is in transit to Edmonton, Alberta for AAAI02.
  • 27 July: Grace arrives in Edmonton, re-assembly and testing begin.
  • 28-29 July: Continuing to work on final integration.
  • 29 July: Grace goes in and out of the elevator for the first time.
  • 31 July: Grace starts at the top of the convention center (had to start inside because of the rain), rides the elevator, locates and moves up to the registration desk, stands in line (but she's kind of pushy), registers for the conference, travels to the talk venue, and gives a talk about what she did. The crowd goes wild!
  • 1 August: Grace is getting shipped back to CMU.

Pictures from AAAI 2002

The Challenge

In short, the task for the robots entering the AAAI challenge is to:

    Attend the National Conference on AI.

Yes, that's an ambitious task, but that's why it's the Robot Challenge. AAAI doesn't expect anyone to completely accomplish the task in the next few years. But they do hope researchers will make significant strides in parts of the task and share and build upon each other's contributions.

GRACE will be the first autonomous entry in the robot challenge that will attempt all of the various tasks: finding the registration booth, riding an elevator to get there, reading signs and interacting with people along the way, finding the location to give a talk, giving the talk, and answering questions at the end.

Here is a high-level scenario of how the challenge will run (along with the team members responsible for each phase of the scenario).

  • Start inside conference center, on same floor as registration area.
  • Robot interacts with people to find registration area (NRL, Metrica, Swarthmore).
    Possibly rides elevator (CMU).
  • When in vicinity, looks for registration booth signs (Swarthmore).
  • Finds appropriate line and queues up, if necessary (CMU)
  • Interacts with registration person to get materials and map (CMU)
  • Navigates to exhibition hall, interacting with people along the way (CMU, Swarthmore)
  • Gives a talk about itself (Northwestern).

Division of Labor

Each institution is contributing different skills and abilities to GRACE's repertoire. Below is a breakdown of the various contributions.

Team Member



Carnegie Mellon University

Reid Simmons

Overall hardware and software integration lead.
Get robot to find registration booth, wait in line, and register.
Get robot to ride in elevators.
Navigation and mapping software (Sebastian Thrun, Nick Roy, Mike Montemerlo).
Human robot social interaction (with Illah Nourbakhsh, Allison Bruce).

Naval Research Laboratory

Alan Schultz

Speech recognition and parsing.
Multi-modal input (speech and gesture).
Human-robot interaction.
Navigation and mapping software.
Get robot to navigate from front of conference center to registration area.

Metrica Inc.

David Kortenkamp

Vision-based gesture recognition.
People tracking and following

Northwestern University

Ian Horswill

Get the robot to give a talk about itself.

Swarthmore College

Bruce Maxwell

Reading signs at the registration area.
Reading name tags to recognize individuals.
Human-robot interaction

GRACE: The Challenges of Building a Social Robot

GRACE is unique in the robot world because of the tremendous amount of integration required to get her working at all, let alone getting her to successfully undertake the challenge. This integration has come in several forms: people, communication, and software and hardware integration.

First, GRACE's developers had to get together and decide who would undertake what tasks. Assigning tasks occurred at a meeting at Carnegie Mellon University in March of 2002. The discussions largely covered who could do what by when, and which people had to work together to make sure the software and hardware could communicate.

Second, the developers had to decide on how the different software programs would communicate with one another, and then they had to let everyone know the protocols. GRACE's actions are not controlled by just a single program that watches the sensors and runs everything. Instead, her software consists of many programs running simultaneously that communicate via a common inteface called IPC, developed by Reid Simmons at CMU. The various programs pass messages to one another that contain sensor information, commands, or acknowledgements of events starting or finishing.

Very early in the development process, all the developers had to let everyone else know how to communicate with their programs. They did this by sharing files that defined all the messages that could be sent to a program or that would be sent by a program. While most of these have evolved over the course of two months of development, the basic message definitions gave everyone enough information to get start.

Access to the internet and software development tools made it possible for most of the integration and development to occur at different sites. Developers obtain the latest copies of each other's code from a central repository maintained by CMU. This also ensures that everyone's work is backed up at more than one location.

The third form of integration is still in progress, and will be up until GRACE begins the challenge. This is the final integration process when everything starts running on the same robot at the same time. Intevitably, programs don't all talk to one another the right way and bugs crop up that never appeared before. Robots and the real world are always the most difficult testing environment, and you have to be prepared for last minute changes or fixes to get the whole system running.