TrindiKit A toolkit for building and experimenting with dialogue move engines and systems, based on the information state approach.

Slides:



Advertisements
Similar presentations
From Model-based to Model-driven Design of User Interfaces.
Advertisements

An information state approach to natural interactive dialogue Staffan Larsson, Robin Cooper Department of linguistics Göteborg University, Sweden.
Negotiative dialogue some definitions and ideas. Negotiation vs. acceptance Clark’s ladder: –1. A attends to B’s utterance –2. A percieves B’s utterance.
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
MIS 5241 SOFTWARE. MIS 5242 Agenda The Stored Program Concept Software as Control Software as Simulation.
Siridus Specification, Interaction and Reconfiguration in Dialogue Understanding Systems an information state approach to flexible spoken dialogue systems.
VoiceXML vs. GoDiS/QPD. free order answering / question accommodation VXML: fields in a form may be filled in any order, given a form-level grammarform-level.
Issues Under Negotiation Staffan Larsson Dept. of linguistics, Göteborg University SigDial, 15/
LE TRINDIKIT A toolkit for building and experimenting with dialogue move engines and systems, based on the information state approach.
Goteborg University Dialogue Systems Lab Introduction to TrindiKit Dialogue Systems 2004 Staffan Larsson.
PDDL: A Language with a Purpose? Lee McCluskey Department of Computing and Mathematical Sciences, The University of Huddersfield.
Goteborg University Dialogue Systems Lab WP1: GoDiS VCR application Edinburgh TALK meeting 7/
Question Accommodation and Information States in Dialogue
Research about dialogue and dialogue systems and the department of linguistics goal: –develop theories about human dialogue which can be used when building.
Application architectures
Information, action and negotiation in dialogue systems Staffan Larsson Kings College, Jan 2001.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
GoDiS (Gothenburg Dialogue System) with application to instructional text and dialogue ESSLLI, Helsinki 21st Aug 2001 Staffan Larsson
Issues Under Negotiation Staffan Larsson Dept. of linguistics, Göteborg University NoDaLiDa, May 2001.
Menu2dialog Staffan Larsson, Robin Cooper, Stina Ericsson Department of linguistics Göteborgs Universitet.
Introduction to the TrindiKit Dialogue Systems 2 GSLT spring 2003 Staffan Larsson
LE A toolkit for building and experimenting with dialogue move engines and systems, based on the information state approach TrindiKit.
© 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang 3-1 Chapter 3 Decision Support Systems:
Introduction to the TrindiKit ESSLLI, Helsinki 20th Aug 2001 Staffan Larsson
Rough schedule Multimodal, multi-party dialogue [30 min] D’Homme, SIRIDUS [10 min] –dialogues with networked devices in a smart house SRI demo (DM), (IBL.
Goteborg University Dialogue Systems Lab GoDiS and TrindiKit MITRE workshop 27/10-03 Staffan Larsson Göteborg University Sweden.
WP1 UGOT demos 2nd year review Saarbrucken Mar 2006.
Domain-Specific Software Architecture
Course Instructor: Aisha Azeem
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
November 2011 At A Glance GREAT is a flexible & highly portable set of mission operations analysis tools that increases the operational value of ground.
Application architectures
User Interface Design Chapter 11. Objectives  Understand several fundamental user interface (UI) design principles.  Understand the process of UI design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
CS-EE 481 Spring Founders Day, 2005 University of Portland School of Engineering Project Pocket Gopher Conversational Learning Agent Team Josh Jones.
Startup – Chapter 1.
Introduction To Computer System
SWE 316: Software Design and Architecture – Dr. Khalid Aljasser Objectives Lecture 11 : Frameworks SWE 316: Software Design and Architecture  To understand.
Information, action and negotiation in dialogue systems Staffan Larsson Kings College, Jan 2001.
The Information State approach to dialogue modelling Staffan Larsson Dundee, Jan 2001.
TrindiKit Staffan Larsson Göteborg University Sweden.
Gary MarsdenSlide 1University of Cape Town Human-Computer Interaction - 3 Programmer Support Gary Marsden ( ) July 2002.
TrindiKit: A Toolkit for Flexible Dialogue Systems Staffan Larsson Kyoto, Japan 2003.
An information state approach to natural interactive dialogue Staffan Larsson, Robin Cooper Department of linguistics Göteborg University, Sweden.
From information exchange to negotiation Staffan Larsson Göteborg University
TrindiKit. TrindiKit architecture & concepts what’s in TrindiKit? comparison with other architectures this talk.
Dept. of Computer Science University of Rochester Rochester, NY By: James F. Allen, Donna K. Byron, Myroslava Dzikovska George Ferguson, Lucian Galescu,
Agenda 1. What we have done on which tasks 2. Further specification of work on all our tasks 3. Planning for deliverable writing this autumn (due in December)
The Information State approach to dialogue modelling + TrindiKit AI-course, Chalmers April 2002 Staffan Larsson.
OPERATING SYSTEM - program that is loaded into the computer and coordinates all the activities among computer hardware devices. -controls the hardware.
© 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang 3-1 Chapter 3 Decision Support Systems:
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.
GoDiS AI-course, Chalmers April 22, 2002 Staffan Larsson.
Information-State Dialogue Modelling in Several Versions HS Dialogmanagement, SS 2002 Universität Saarbrücken Michael Götze.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Dialog Models September 18, 2003 Thomas Harris.
Principles of Information Systems, Sixth Edition Software: Systems and Application Software Chapter 4.
Decision Support Systems: An Overview by Dr.S.Sridhar,Ph.D., RACI(Paris),RZFM(Germany),RMR(USA),RIEEEProc. web-site :
1 Galatea: Open-Source Software for Developing Anthropomorphic Spoken Dialog Agents S. Kawamoto, et al. October 27, 2004.
TrindiKit: A Toolkit for Flexible Dialogue Systems AI course, spring 2003 Staffan Larsson.
Slide 1 Ch 13 Application architectures Generic architectures that can be configured and adapted to create a system that meets specific requirements Can.
CS223: Software Engineering
V7 Foundation Series Vignette Education Services.
Application architectures Advisor : Dr. Moneer Al_Mekhlafi By : Ahmed AbdAllah Al_Homaidi.
September 2003, 7 th EDG Conference, Heidelberg – Roberta Faggian, CERN/IT CERN – European Organization for Nuclear Research The GRACE Project GRid enabled.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Architecture Components
Ch 1 Second Half What is a Language?
CIS16 Application Development – Programming with Visual Basic
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Presentation transcript:

TrindiKit A toolkit for building and experimenting with dialogue move engines and systems, based on the information state approach

The information state approach – key concepts Information states represent information available to dialogue participants, at any given stage of the dialogue Dialogue moves trigger information state updates, formalised as information state update rules Update rules consist of conditions and operations on the information state

The information state is an abstract data structures (record, DRS, set, stack etc.) Modules (dialogue move engine, input, interpretation, generation, output etc.) access the information state DME (Dialogue Move Engine): module or group of modules responsible for integrating and generating dialogue moves Resources (device interface, lexicons, domain knowledge etc.) are hooked up to the information state TrindiKit architecture

input inter- pret Information State device interface control updateselect gene- rate output lexicon domain knowledge DME device manager

A library of datatype definitions (records, DRSs, sets, stacks etc.) A language for writing information state update rules Methods and tools for visualising the information state debugging facilities TrindiKit components

A language for defining update algorithms used by TrindiKit modules to coordinate update rule application A language for defining basic control structure, to coordinate modules A library of basic ready-made modules for input/output, interpretation, generation etc.; A library of ready-made resource interfaces, e.g. to hook up databases, domain knowledge etc. TrindiKit components (cont’d)

TRINDIKIT dialogue theory (IS, rules, moves etc) domain knowledge (resources) domain-specific system Building a system domain-independent DME software engineering (basic types, control flow)

Starting from a theory of dialogue management, build or select from existing components: Type of information state (DRS, record, set of propositions, frame,...) A set of dialogue moves Information state update rules, including rules for integrating and selecting moves DME Module algorithm(s) and basic control algorithm ****** Building a domain-independent DME

Domain-specific system Build or select from existing components: Resources, e.g. –domain (device/database) interface –dialog-related domain knowledge, e.g. plan libraries etc. –grammars, lexicons Modules, e.g. –device action manager –input –interpretation –generation –output

Explicit information state datastructure makes systems more transparent Update rules provide an intuitive way of formalising theories in a way which can be used by a system Domain knowledge encoded in resources; the rest of the system is domain independent –plug-and-play –to adapt system to new domain, build resources (provided the system handles the kind of dialogue needed for the device, e.g. information-seeking, instructional, negotiative etc.) TrindiKit Features

Features, cont’d Allows both serial and asynchronous systems Interfaces to OAA (only available for UNIX) Generic WWW interface Runs on UNIX, Windows, Linux etc. Needs SICStus Prolog Version 2.0 is available, next version expected early 2001 (SIRIDUS)

Asynchronous TrindiKit Uses AE (Agent Environment), basically a stripped-down OAA Can also run on top of to OAA (but this makes it a factor of 10 slower) Can run with AE but still interface to OAA, –by making TrindiKit modules/resources be OAA agents as well OR –by making the whole TrindiKit-based system into an OAA agent

Extensions Modules for speech input and output, for using off-the-shelf products (we currently have ViaVoice speech out on Linux) Extend libraries of ready-made modules and resources *** *** GUI for increased usability and overview, including tools for building systems Improved domain-independent facilities for handling dialogue plans Information states including Nuance semantics (?)

GoDiS and IMDiS – information state based on Questions Under Discussion MIDAS – DRS information state, first-order reasoning EDIS – information state based on PTT Autoroute – information state based on Conversational Game Theory Systems developed using TrindiKit

An experimental dialogue system built using the TrindiKit GoDiS

Information-seeking dialogue Information state based Ginzburg’s notion of Questions Under Discussion (QUD) Dialogue plans to drive dialogue Simpler than general reasoning and planning More versatile than frame-filling and finite automata GoDiS features

PRIVATE =PLAN = AGENDA = { findout(?return) } SHARED = findout(? x.month(x)) findout(? x.class(x)) respond(? x.price(x)) COM = dest(paris) transport(plane) task(get_price_info) QUD = LM = { ask(sys, x.origin(x)) } BEL = { } TMP = (same structure as SHARED) Sample GoDiS information state

integrateAnswer Before an answer can be integrated by the system, it must be matched to a question on QUD pre: eff: in( SHARED.LM, answer(usr, A)) fst( SHARED.QUD, Q) relevant_answer(Q, A) pop( SHARED.QUD ) reduce(Q, A, P) add( SHARED.COM, P) Sample update rule

Typical human-computer dialog S: Hello, how can I help you? U: I want price information please S: Where do you want to go? U: Paris S: How do you want to travel? U: A flight please S: When do you want to travel U: April S: what class did you have in mind? … S: The price is $123

Dialogue plans for information- seeking dialogue Find out how user wants to travel Find out where user wants to go to Find out where user wants to travel from Find out when user wants to travel … Lookup database Tell user the price

Typical human-human dialogue S(alesman), C(ustomer) S: hi C: flights to paris S: when do you want to travel? C: april, as cheap as possible...

Question accommodation If questions are part of the information state, they too can be accommodated If the latest move was an answer, and there is an action in the plan to ask a matching question, put that question on QUD Requires that the number of possible matching questions is not too large (or can be narrowed down by asking clarification question)

Update rule for question accommodation QuAcc pre: eff: in( SHARED.LM, answer(usr, A)) in( PRIVATE.PLAN, findout(Q)) relevant_answer(Q, A) delete( PRIVATE.PLAN, findout(Q)) push( SHARED.QUD, Q)

Question and task accommodation in information-seeking dialogue S: hi U: flights to paris system finds plan containing appropriate questions, and loads it into the plan field in the information state system accommodates questions: how does user want to travel + where does user want to go, and integrates the answers “flight” and “to paris” system proceeds to next question on plan S: when do you want to travel?

Adapted for travel agency and autoroute domains, as well as acting as interface to handheld computer or mobile phone Lexicons for English and Swedish Question and task accommodation to enable mixed initiative (useful also in command dialogue -> Stina) Simple “optimistic” grounding strategy Focus intonation based on information state contents Also being extended to handle negotiative dialogue (SIRIDUS) GoDiS features (cont’d)