-
Notifications
You must be signed in to change notification settings - Fork 3
Manual
Flipper is an Information State (IS) based Dialogue Manager (DM) which provides a set of variables that represent the dialogue state. Based on the possible states the DM will tell a virtual agent what behaviour to display in what situation. This has the advantage over other systems (e.g. a Dialogue tree) in that it is able to adapt to a broad range of situations not following a directed tree approach and can easily adapt to new (unexpected) situations. It does mean that many more situations should be taken care of by the system.
In Flipper the IS is read and modified through templates. A set of preconditions must be met (e.g. the variable $userstate.intention equals greeting) to change the state of the variables (e.g. set $agent.intention = "return_greeting"). In addition to modifying the IS behaviour must be displayed in order to provide feedback to the user. This is done by calling java functions, which can be hooked up to an avatar.
This is thoroughly described on Flipper's own wiki.
An advanced system should be able to recognize and display a broad range of behaviours. In order to make to make such a system practical it is good practice to divide the tasks into different managers. (e.g. a manager for reading retrieving the users utterance, one for emotions, managers to generate the agents behaviours, etc.) The Multi Modal Dialogue System (MMDS) enables the use of multiple managers, each with their specific tasks. Each of them can be loaded as separate modules and configured to make the system very modular, allowing tweaking and mixing the different modules.
All managers share a single Information State, but have their own Flipper templates and other functionality to read and modify the IS and generate different behaviours. This is done on an interval basis to enable managers to run in parallel. (see fig. 1)
No documentation for implementing a MMDS is currently available. However a good understanding can be obtained by checking the Examples page.