Information state and dialogue management in the TRINDI Dialogue Move Engine Toolkit, Larsson and Traum 2000 D&QA Reading Group, Feb 20 th 2007 Genevieve Gorrell
Information State Approach Information state comprises cumulative additions from previous actions in the dialogue “Superset” of finite state approaches since the state can easily be characterised as the information state but the information state is too rich to be rendered as a tractable finite state representation Richer than structural approaches, more transparent than plan-based approaches...
Information state theory of dialogue comprises Informational components Formal representation of the informational components Dialogue moves Update rules Update strategy
Informational Components Choose your own theory BDI? Static/dynamic distinction may prove useful Dialogue Gameboard (Ginzburg) Private/shared elements
Formal Representations of Informational Components Simple abstract data types, logics, statistical systems... Lists, sets, stacks etc.
Dialogue Moves A representation of the input/whatever you are going to update based on Abstracts about the meaning/intention of the input A variety of taxonomies exist Logical forms etc.
Update Rules Formalise information state update Comprise applicability conditions effects
Update Strategy How to apply the rules? Take the first rule that applies Apply each rule (if applicable) in sequence Apply rules according to class Choose among applicable rules using probabilistic information Present choices to user to decide (for development modes)
Example System has agenda item to ask user's destination This meets conditions for update rule that selects “ask” move System asks the question and applies the integrate rule shown earlier Rule moves the question from the private agenda to the shared questions under discussion Sys: Where do you want to go? Usr: Malvern
What is TRINDIKIT? TRINDIKIT is a dialogue move engine toolkit Provides basic architecture Provides facilities for implementing theories of information state Does not provide: User interface Interpretation Generation Control
Example Architecture
Architecture cont. Total Information State (TIS) Information State Hookups to additional resources Dialogue Move Engine (DME) One or more DME modules DME-external modules Control module, synchronous or asynchronous
TRINDIKIT also provides... Datatype definitions Language and format for TIS update rules Methods for accessing the TIS Algorithm definition language for DME and control modules Default modules for input, interpretation, generation and output Methods for converting items from one type to another (?) Methods for visually inspecting the TIS Debugging
GoDiS 1 Simple grounding phenomena Question accommodation Task accommodation 8 dialogue move types ask, answer, repeat, request_repeat, greet, goodbye, thank, quit Private, shared distinction in IS shared information has been explicitly established in the dialogue
GoDiS 2 Shared information comprises: propositions questions under discussion latest dialogue move (speaker, move type, content) Private information comprises beliefs agenda plan (actions that are long term goals, editable during dialogue. How is this different to the agenda?) tmp (mirrors shared fields, however information is not yet grounded)
GoDiS—Accommodation 1 Sys: Welcome to the travel agency! Usr: flights to paris Sys: What city do you want to go from?
GoDiS—Accommodation 2 If the answer A is the answer to a question Q that it is in the plan to raise, then delete that question from the private plan and add the question to the shared questions under discussion (?)
GoDiS Update Algorithm Rule types comprise refill, grounding, integrate, accommodate, database and store
EDIS 1 Information state comprises: common ground obligations social commitments dialogue history conditional statements semi-public grounded discourse units private intentions
EDIS 2 Current and previous discourse units are included Ungrounded discourse units feature
EDIS Update Algorithm Create new DU, add to UDUs Set CDU to the new DU, set PDU to CDU Perform updates on the basis of backward grounding acts If any other type of act is observed add to dialogue history execute appropriate update rule(s) Apply update rules to all parts of the IS with newly added acts
Other TRINDIKIT Systems—MIDAS Discourse Representational Structures Grounding tracking a la Poesio & Traum
Other TRINDIKIT Systems— Autoroute (Lewin) Conversational games formalised as recursive transition networks
Discussion How applicable is the accommodation work in more complex domains? Would the work port to a conversational domain? what would be the key issues? In what ways can machine learning be incorporated? Is there anything missing?