next up previous
Next: Dialogue Manager Up: Tracking the Dialogue Previous: Tracking the Dialogue

Topics

First of all, we partition the task space into topics: SCHEDULING, TRAVELING, ACCOMMODATION and ENTERTAINMENT. For each topic we keep structural information about potential incoming data (so-called blueprints) which is used to complete/assemble the semantic chunks of each new utterance (see 4.3).

Each topic stores information in a frame. This information consists of a focus stack and a storage with accepted suggestions. The focus stack keeps track of the most recently mentioned suggestion. As soon as a suggestion is accepted it is also put to the 'accepted' slot. Topic shifts are recognized by using rules that work on current topic, key-words, dialogue act and extracted content. They are managed by the following algorithm:

if
this is the first utterance
then take SCHEDULING as new topic
elsif
dialogue act is INIT
then determine new topic with key-words and content objects
elsif
key-words or content objects indicate other topic than current one
then check evidence
else
retain current topic

In case of a topic shift the respective focus stack is re-instantiated. This locality of focus has proven useful in the final phases of negotiation dialogues where confirmations for different topics are run through once more like in the following transcript:
A01:
so that was Monday the twenty-first at the
check-in counter [SCHEDULING]
B02:
I'll do the flight reservations [TRAVELING]
A03:
and I will let my secretary take care of the
hotel [ACCOMMODATION]

The respective items (flights, hotel) can be found on the local focus stack of the respective topic frame. The topic shift in B02 is recognized using key-word spotting.



Jan Alexandersson
Thu Nov 11 15:15:06 MET 1999