A General Architecture for a Real-Time Discourse Agent
and a Case Study in Oral Reading Tutoring

User Manual

Table of Contents

Introduction

This user manual describes how to use the Real-Time Discourse Agent Architecture, which allows a discourse agent to participate in real-time (tutorial) discourse, with particular focus on rich turn-taking. At present, the architecture is used only in Project LISTEN's Reading Tutor, so a number of things in this manual will be specific to this project. The purpose of this document is to enable other researchers to experiment with different turn-taking parameters in the Reading Tutor, and to help (along with the System Documentation) in instantiating the architecture in new domains.

About the Architecture

The purpose of the Agent Architecture is to participate in real-time spoken mulitmodal dialogue in a temporally appropriate way. In particular, the architecture supports rich turn-taking, including taking multiple turns, backchanneling, assistive turns, full turns, and overlap.

The Agent has four main components:

Modifying Agent Settings at Run-Time

Only the Turn-Taking Rules can be modified at run-time. You can enable or disable turn-taking rules. Each turn-taking rule, if enabled, has a delay that measures the time between when the rule becomes applicable and when it fires. You can also modify the delays associated with turn-taking rules.

To modify the agent settings while running the Reading Tutor,

You will see a dialog box that has on the left side the six prosodically triggered discourse rules.

Saving and Loading Settings

You can save the current settings, or load previous settings, using the Save and Load buttons on the Discourse Architecture dialog box.

Modifying a Rule

Double-click on the rule that you want to modify. Double-clicking on a rule in the Discourse Architecture dialog box will bring up a Discourse Event Dialog Box for that rule.

Enabling Turn-Taking Rules

To enable that rule, check the Enabled box for that rule.

Parameters

Right now the only parameter that can be changed is the delay time. To change this, change the number next to Wait Time. (Use the keyboard to type in a new number). There are no consistency checks on the delays, so some settings will result in strange behavior. For example, setting the delay for TakeTurn to be less than the delay for Backchannel will result in the Backchannel rule never firing.

Adapting the Agent to a New Domain

Adapting the Events

The actions that trigger some of the events will of course vary from domain to domain. For example, the Agent can take a turn based on silence or based on the Listener hearing the end of the turn. The heuristics for deciding when the Listener has heard the end of the turn will be different depending on the domain.

Adapting the Responses

The responses to events will be different in different domains. Certain responses, such as the Backchannel responses, are likely to be domain-independent. Others, such as the Prompt responses, obviously depend not only on the domain but on the task context.

Other Notes on Domain Adaptation

Once the agent architecture has been adapted to a new domain, the parameter settings will have to be adjusted. Currently the only way to do this is manually, through trial and error.