A floor tracker tracks which dialogue participant has the floor
(i.e. the user or the system) and takes decisions when the floor
should be taken or released
the internal state of the floor tracker:
- user is silent and we're not expecting her to speak
- user is silent but we are expecting her to speak (this may lead to a time-out)
- user is talking (currently no provisions for whether we want her to speak or not)
if people say a direction many times in a row, we initiate
a MAX-action in that direction, in order to speed things up
(and to force them to use the STOP command more often... )
append a continuation to the ongoing installment
// this works as follows:
// * we have linguistic preprocessing generate a full IU structure for both the base words and the continuation
// * we then identify the words which are the continuation part of the full structure:
// * we append the continuation part to the last utterance of the IU
// * we then move backwards in the lists of segments and copy over synthesis information to the old segments
// we call this last step "back-substitution"
apply edits from smoothingQueue if their counter has run out,
add them to edit list and update wordIUs
in contrast to the overridden operation, this looks at *all* enqueued
items (but stopping if it reaches a stay-safe-word),
and if a counter has run out it enqueues also words preceding this word,
for which the counter has not run out.
apply edits from smoothingQueue if their counters have run out,
add them to edit list and update wordIUs
NOTE: this implementation only handles smoothing factors that
are constant for all words:
how it works: going through the list of enqueued edits;
while the word's counter has run out, add them to output,
stop as soon as a counter is still counting
an ASRWordDeltifier (and descendants) can be used
to store the ASR's (or one of the ASR's) current hypothesis
you would usually call deltify() (either on the result or a specific token from the n-best-list)
and afterwards retrieve the WordIUs and edits since the previous call via getIUs() and getEdits()
Descendents of this class implement methods described in NAACL-HLT 2009
Handles interfacing AVM construction/unification
Convenience constructor to create AVPair from one string,
where A and V are separated by a colon, like "size:big"
or from attribute-value input for more
complex AVMs.