Changes between Version 4 and Version 5 of dialogmanager


Ignore:
Timestamp:
11/26/19 17:44:05 (5 years ago)
Author:
wouter
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • dialogmanager

    v4 v5  
    44
    55== Terminology
     6
     7* Distance between parameters: the euclidean distance (sqrt of the sum of squares) of the difference between the two parameter values, on a per-key basis. Only values for which hoth parameters have the key are compared.
     8
     9
     10The dialog manager contains a number of key objects
     11* Dialog specification. A kind of finite state machine. The nodes are "dialog phases" and each have a unique label. The START and END phase indicate the usual start and end of the dialog.
     12* Dialog phase. Each dialog phase represents a situation where we want the user to answer some question. This question can be formulated in different ways depending on the situation and user's previous answers.  Therefore the phase contains a number of DialogOptions
     13* A DialogOption is a concrete sentence with a question for the user, plus the expected type of the answer (boolean (yes/no), number, text).
    614* Dialog state. The current state of the dialog, comprising the situation and the user's answers so far. Stored as a set of Parameters.
    715* Parameters. A set of key-value pairs where the keys are unique string labels and the values are a ParameterValue (a String, Double, or boolean).
    8 * Distance between parameters: the euclidean distance (sqrt of the sum of squares) of the difference between the two parameter values, on a per-key basis. Only values for which hoth parameters have the key are compared.
    9 * Dialog specification. A kind of finite state machine. The nodes are "dialog phases" and each have a unique label. The START and END phase indicate the usual start and end of the dialog.
    10 * Dialog phase. Each dialog phase represents a situation where we want the user to answer some question. This question can be formulated in different ways depending on the situation and user's previous answers.
    1116
    12 The dialog manager contains a number of key mechanisms
    1317* All data structures can be (de)serialized to JSON.
    1418* Various datastructures available to store key elements for dialog management
     
    1620 * A DialogSpecification represents all possible dialog phases. Useful to storethe entire dialog tree but without the user's answers so far
    1721 * Parameters that store the user's answers so far
    18  * The NextPhase determines the next phase, based on the current parameter settings. The GoToIf selects the phase that has parameters that are smallest distance to the current state ++. The GoTo unconditionally jumps to the given state. 
     22 * The NextPhase mechanism determines the next phase, based on the current parameter settings. The GoToIf selects the phase that has parameters that are smallest distance to the current state ++. The GoTo unconditionally jumps to the given state. 
    1923 * A DialogPhase can have multiple options, from which the one with the smallest distance to the current state++  is chosen.
    2024 * Parameters can be manipulated programmatically, eg to update fields or incorporate data external to the dialog system such as system time, network state, database fields, etc.
    21  * Parameters can be used directly in the sentences and the available options
     25 * Parameters can be used directly in the sentences and the available answers
    2226 * The sentences can contain HTML code.
    2327