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.
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:
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 can save the current settings, or load previous settings, using the Save and Load buttons on the Discourse Architecture dialog box.
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.
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.
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.
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.