Next: Dialogue Manager
Up: Tracking the Dialogue
Previous: Tracking the Dialogue
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