12
A Dialogue System for Robots using VoiceXML Louise Funke & Marc Bauer 2007/12/11 EDA171/DATN06 Language Processing and Computational Linguistics Pierre Nugues

A Dialogue System for Robots using VoiceXML Louise Funke & Marc Bauer 2007/12/11 EDA171/DATN06 Language Processing and Computational Linguistics Pierre

Embed Size (px)

Citation preview

A Dialogue System for Robots

using VoiceXML

Louise Funke & Marc Bauer

2007/12/11EDA171/DATN06

Language Processing and Computational LinguisticsPierre Nugues

Structure

SME robotDialogue systemsExample dialogueVoiceXMLOur programDemoPro & Contra VoiceXMLFuture

SME robot

EU project to develop a robot for small & medium enterprises

Task: a dialogue system to program it!

Dialogue systems

a computer system intended for machine-human interaction

may contain text, speech, graphics, gestures, etc.

our task: program to fill in a form of known limits with

voice Input saved in a file for further processing

Dialogue systems (picture)

Example dialogue

Robot: Welcome to the SME robot voice operating system. Please choose one of the following options. Wood sign process, (...)

Human: (I’d like) wood sign process (please). Robot: You have chosen the wood sign process. Do you want to

continue? Human: Yes. Robot: Step one, configuration of wood sign variables. What kind

of shape do you want? Sharp corners, soft corners or cut corners. Human: Soft corners (please). Robot: You have chosen soft corners. Is that correct? Human: Yes. (...)

VoiceXML

“is the W3C's standard XML format for specifying interactive voice dialogues between a human and a computer.”

Developed in Tellme StudioServer sided interpretation & execution

(speech recognition software already existing in the system)

Client connects via Skype or telephone

Our program (part of code)

<?xml version="1.0" encoding="ISO-8859-1"?><vxml version="2.0"><form id="main">(...)<field name="shape"><prompt>Step one, configuration of wood sign variables. What kind of shape do you want? Sharp corners, soft corners or cut corners.</prompt> <grammar type="application/x-gsl" mode="voice"> <![CDATA[ [ [(sharp corners) (sharp)] {<shape "sharp_corners">} [(soft corners) (soft)] {<shape "soft_corners">} [(cut corners) (cut)] {<shape "cut_corners">} ] ]]> </grammar></field>

Our program (part of code - 2)

<subdialog src="#confirmation" name="oResult"><prompt> You have chosen <value expr="shape"/> Is that correct?</prompt><filled><if cond="oResult.iconf"><if cond="'sharp_corners'==shape">

<goto nextitem="holes"/><elseif cond="'soft_corners'==shape"/><goto nextitem="corner"/><elseif cond="'cut_corners'==shape"/><goto nextitem="corner"/></if><else/> <clear namelist="shape"/><clear namelist="oResult"/></if></filled></subdialog>

Demo

Time for a little demonstration... http://alpha2k.ice-server.com/index.php

Pro & Contra VoiceXML

Pro: Easy to program Listens to key words Extendable with JavaScript, Perl, etc.

Contra: Noise!!! (leading to misinterpretation) Code not flexible - new task == new code

Future

Full integration to the robotComplex exception catching (noise,

dialects)Mixed initiativeMore tasks, more options, more

navigation..Global commandsEtc.