ELIZA,  PARRY, A.L.I.C.E., Cleverbot
EXTRACTIVE
In this section we discuss the state of the art on conversational systems in three perspectives: types of interactions, types of architecture, and types of context reasoning. Then we present a table that consolidates and compares all of them. ELIZA BIBREF11 was one of the first softwares created to understand natural language processing. Joseph Weizenbaum created it at the MIT in 1966 and it is well known for acting like a psychotherapist and it had only to reflect back onto patient's statements. ELIZA was created to tackle five "fundamental technical problems": the identification of critical words, the discovery of a minimal context, the choice of appropriate transformations, the generation of appropriate responses to the transformation or in the absence of critical words, and the provision of an ending capacity for ELIZA scripts. Right after ELIZA came PARRY, developed by Kenneth Colby, who is psychiatrist at Stanford University in the early 1970s. The program was written using the MLISP language (meta-lisp) on the WAITS operating system running on a DEC PDP-10 and the code is non-portable. Parts of it were written in PDP-10 assembly code and others in MLISP. There may be other parts that require other language translators. PARRY was the first system to pass the Turing test - the psychiatrists were able to make the correct identification only 48 percent of the time, which is the same as a random guessing. A.L.I.C.E. (Artificial Linguistic Internet Computer Entity) BIBREF12 appeared in 1995 but current version utilizes AIML, an XML language designed for creating stimulus-response chat robots BIBREF13 . A.L.I.C.E. bot has, at present, more than 40,000 categories of knowledge, whereas the original ELIZA had only about 200. The program is unable to pass the Turing test, as even the casual user will often expose its mechanistic aspects in short conversations. Cleverbot (1997-2014) is a chatbot developed by the British AI scientist Rollo Carpenter. It passed the 2011 Turing Test at the Technique Techno-Management Festival held by the Indian Institute of Technology Guwahati. Volunteers participate in four-minute typed conversations with either Cleverbot or humans, with Cleverbot voted 59.3 per cent human, while the humans themselves were rated just 63.3 per cent human BIBREF14 .
1705.01214
Introduction </s> Back Ġto Ġ42 ĠBC , Ġthe Ġphilosopher ĠCic ero Ġhas Ġraised Ġthe Ġissue Ġthat Ġalthough Ġthere Ġwere Ġmany ĠOr atory Ġclasses , Ġthere Ġwere Ġnone Ġfor ĠConvers ational Ġskills ĠB IB REF 0 Ġ. ĠHe Ġhighlighted Ġhow Ġimportant Ġthey Ġwere Ġnot Ġonly Ġfor Ġpolitics , Ġbut Ġalso Ġfor Ġeducational Ġpurpose . ĠAmong Ġother Ġconvers ational Ġnorms , Ġhe Ġclaimed Ġthat Ġpeople Ġshould Ġbe Ġable Ġto Ġknow Ġwhen Ġto Ġtalk Ġin Ġa Ġconversation , Ġwhat Ġto Ġtalk Ġdepending Ġon Ġthe Ġsubject Ġof Ġthe Ġconversation , Ġand Ġthat Ġthey Ġshould Ġnot Ġtalk Ġabout Ġthemselves . </s> Norm s Ġsuch Ġas Ġthese Ġmay Ġbecome Ġsocial Ġconventions Ġand Ġare Ġnot Ġlearnt Ġat Ġhome Ġor Ġat Ġschool . ĠSocial Ġconventions Ġare Ġdynamic Ġand Ġmay Ġchange Ġaccording Ġto Ġcontext , Ġculture Ġand Ġlanguage . ĠIn Ġonline Ġcommunication , Ġnew Ġcommons ense Ġpractices Ġare Ġevolved Ġfaster Ġand Ġaccepted Ġas Ġa Ġnorm ĠB IB REF 1 Ġ, ĠB IB REF 2 Ġ. ĠThere Ġis Ġnot Ġa Ġdiscipline Ġfor Ġthat Ġon Ġelementary Ġor Ġhigh Ġschools Ġand Ġthere Ġare Ġfew Ġlingu istics Ġresearchers Ġdoing Ġresearch Ġon Ġthis Ġfield . </s> On Ġthe Ġother Ġhand , Ġwithin Ġthe ĠArtificial ĠIntelligence Ġarea , Ġsome ĠConvers ational ĠSystems Ġhave Ġbeen Ġcreated Ġin Ġthe Ġpast Ġdecades Ġsince Ġthe Ġtest Ġproposed Ġby ĠAlan ĠTuring Ġin Ġ1950 . ĠThe Ġtest Ġconsists Ġof Ġa Ġmachine 's Ġability Ġto Ġexhibit Ġintelligent Ġbehavior Ġequivalent Ġto , Ġor Ġindistinguishable Ġfrom Ġthat Ġof Ġa Ġhuman ĠB IB REF 3 Ġ. ĠTuring Ġproposed Ġthat Ġa Ġhuman Ġeval u ator Ġwould Ġjudge Ġnatural Ġlanguage Ġconversations Ġbetween Ġa Ġhuman Ġand Ġa Ġmachine Ġthat Ġis Ġdesigned Ġto Ġgenerate Ġhuman - like Ġresponses . ĠSince Ġthen , Ġmany Ġsystems Ġhave Ġbeen Ġcreated Ġto Ġpass Ġthe ĠTuring 's Ġtest . ĠSome Ġof Ġthem Ġhave Ġwon Ġprizes , Ġsome Ġnot ĠB IB REF 4 Ġ. ĠAlthough Ġin Ġthis Ġpaper Ġwe Ġdo Ġnot Ġfocus Ġon Ġcreating Ġa Ġsolution Ġthat Ġis Ġable Ġto Ġbuild Ġconvers ational Ġsystems Ġthat Ġpass Ġthe ĠTuring 's Ġtest , Ġwe Ġfocus Ġon ĠN DS . ĠFrom ĠB IB REF 5 Ġ, Ġ" N DS Ġare Ġsystems Ġthat Ġtry Ġto Ġimprove Ġusability Ġand Ġuser Ġsatisfaction Ġby Ġim itating Ġhuman Ġbehavior ". ĠWe Ġrefer Ġto ĠConvers ational ĠSystems Ġas ĠN DS , Ġwhere Ġthe Ġdialog ues Ġare Ġexpressed Ġas Ġnatural Ġlanguage Ġtexts , Ġeither Ġfrom Ġartificial Ġintelligent Ġagents Ġ( a . k . a . Ġbots ) Ġor Ġfrom Ġhumans . </s> That Ġsaid , Ġthe Ġcurrent Ġpopular Ġname Ġto Ġsystems Ġthat Ġhave Ġthe Ġability Ġto Ġmake Ġa Ġconversation Ġwith Ġhumans Ġusing Ġnatural Ġlanguage Ġis ĠChat bot . ĠChat bots Ġare Ġtypically Ġused Ġin Ġconvers ational Ġsystems Ġfor Ġvarious Ġpractical Ġpurposes , Ġincluding Ġcustomer Ġservice Ġor Ġinformation Ġacquisition . ĠChat bots Ġare Ġbecoming Ġmore Ġwidely Ġused Ġby Ġsocial Ġmedia Ġsoftware Ġvendors . ĠFor Ġexample , ĠFacebook Ġrecently Ġannounced Ġthat Ġit Ġwould Ġmake ĠFacebook ĠMessenger Ġ( its Ġ900 - million - user Ġmessaging Ġapp Ġby Ġ2016 ), Ġinto Ġa Ġfull - fledged Ġplatform Ġthat Ġallows Ġbusinesses Ġto Ġcommunicate Ġwith Ġusers Ġvia Ġchat bots . ĠGoogle Ġis Ġalso Ġbuilding Ġa Ġnew Ġmobile - mess aging Ġservice Ġthat Ġuses Ġartificial Ġintelligence Ġknow - how Ġand Ġchat bot Ġtechnology . ĠIn Ġaddition , Ġaccording Ġto Ġthe ĠWall ĠStreet ĠJournal , Ġthere Ġare Ġmore Ġthan Ġ2 Ġbillion Ġusers Ġof Ġmobile Ġapps . ĠStill , Ġpeople Ġcan Ġbe Ġreluctant Ġto Ġinstall Ġapps . ĠSo Ġit Ġis Ġbelieved Ġthat Ġsocial Ġmessaging Ġcan Ġbe Ġa Ġplatform Ġand Ġchat bots Ġmay Ġprovide Ġa Ġnew Ġconvers ational Ġinterface Ġfor Ġinteracting Ġwith Ġonline Ġservices , Ġas Ġchat bots Ġare Ġeasier Ġto Ġbuild Ġand Ġdeploy Ġthan Ġapps ĠB IB REF 6 Ġ. </s> China Ġseems Ġto Ġbe Ġthe Ġplace Ġwhere Ġchat bots Ġadoption Ġand Ġuse Ġis Ġmost Ġadvanced Ġtoday . ĠFor Ġexample , ĠChina 's Ġpopular ĠWe Chat Ġmessaging Ġplatform Ġcan Ġtake Ġpayments , Ġscan ĠQR Ġcodes , Ġand Ġintegrate Ġchat bot Ġsystems . ĠWe Chat Ġintegrates Ġe - mail , Ġchat , Ġvide oc alls Ġand Ġsharing Ġof Ġlarge Ġmultimedia Ġfiles . ĠUsers Ġcan Ġbook Ġflights Ġor Ġhotels Ġusing Ġa Ġmixed , Ġmultimedia Ġinteraction Ġwith Ġactive Ġbots . ĠWe Chat Ġwas Ġfirst Ġreleased Ġin Ġ2011 Ġby ĠTec ent , Ġa ĠChinese Ġonline - gaming Ġand Ġsocial - media Ġfirm , Ġand Ġtoday Ġmore Ġthan Ġ700 Ġmillion Ġpeople Ġuse Ġit , Ġbeing Ġone Ġof Ġthe Ġmost Ġpopular Ġmessaging Ġapps Ġin Ġthe Ġworld Ġ( The ĠEconomist Ġ2016 ). ĠWe Chat Ġhas Ġa Ġmixture Ġof Ġreal - live Ġcustomer Ġservice Ġagents Ġand Ġautomated Ġreplies Ġ( Ol son Ġ2016 ). </s> Still , Ġcurrent Ġexisting Ġchat bot Ġengines Ġdo Ġnot Ġproperly Ġhandle Ġa Ġgroup Ġchat Ġwith Ġmany Ġusers Ġand Ġmany Ġchat bots . ĠThis Ġmakes Ġthe Ġchat bots Ġconsiderably Ġless Ġsocial , Ġwhich Ġis Ġa Ġproblem Ġsince Ġthere Ġis Ġa Ġstrong Ġdemand Ġof Ġhaving Ġsocial Ġchat bots Ġthat Ġare Ġable Ġto Ġprovide Ġdifferent Ġkinds Ġof Ġservices , Ġfrom Ġtraveling Ġpackages Ġto Ġfinance Ġadvisors . ĠThis Ġhappens Ġbecause Ġthere Ġis Ġa Ġlack Ġof Ġmethods Ġand Ġtools Ġto Ġdesign Ġand Ġengineer Ġthe Ġcoordination Ġand Ġmediation Ġamong Ġchat bots Ġand Ġhumans , Ġas Ġwe Ġpresent Ġin ĠSections Ġ2 Ġand Ġ3 . ĠIn Ġthis Ġpaper , Ġwe Ġrefer Ġto Ġconvers ational Ġsystems Ġthat Ġare Ġable Ġto Ġinteract Ġwith Ġone Ġor Ġmore Ġpeople Ġor Ġchat bots Ġin Ġa Ġmulti - party Ġchat Ġas ĠMP CS . ĠAlt ogether , Ġthis Ġpaper Ġis Ġnot Ġmeant Ġto Ġadvance Ġthe Ġstate Ġof Ġthe Ġart Ġon Ġthe Ġnorms Ġfor ĠMP CS . ĠInstead , Ġthe Ġmain Ġcontributions Ġof Ġthis Ġpaper Ġare Ġthree fold : </s> We Ġthen Ġpresent Ġsome Ġdiscussion Ġand Ġfuture Ġwork Ġin Ġthe Ġlast Ġsection . </s> Chall enges Ġon ĠCh attering </s> There Ġare Ġplenty Ġof Ġchallenges Ġin Ġconversation Ġcontexts , Ġand Ġeven Ġbigger Ġones Ġwhen Ġpeople Ġand Ġmachines Ġparticipate Ġin Ġthose Ġcontexts . ĠConversation Ġis Ġa Ġspecialized Ġform Ġof Ġinteraction , Ġwhich Ġfollows Ġsocial Ġconventions . ĠSocial Ġinteraction Ġmakes Ġit Ġpossible Ġto Ġinform , Ġcontext , Ġcreate , Ġrat ify , Ġrefute , Ġand Ġasc ribe , Ġamong Ġother Ġthings , Ġpower , Ġclass , Ġgender , Ġethnicity , Ġand Ġculture ĠB IB REF 2 Ġ. ĠSocial Ġstructures Ġare Ġthe Ġnorms Ġthat Ġemerge Ġfrom Ġthe Ġcontact Ġpeople Ġhave Ġwith Ġothers ĠB IB REF 7 Ġ, Ġfor Ġexample , Ġthe Ġcommun icative Ġnorms Ġof Ġa Ġnegotiation , Ġtaking Ġturns Ġin Ġa Ġgroup , Ġthe Ġcultural Ġidentity Ġof Ġa Ġperson , Ġor Ġpower Ġrelationships Ġin Ġa Ġwork Ġcontext . </s> Con ventions , Ġnorms Ġand Ġpatterns Ġfrom Ġeveryday Ġreal Ġconversations Ġare Ġapplied Ġwhen Ġdesigning Ġthose Ġsystems Ġto Ġresult Ġin Ġadoption Ġand Ġmatch Ġuser 's Ġexpectations . ĠB IB REF 8 Ġdescribes Ġimplicit Ġinteractions Ġin Ġa Ġframework Ġof Ġinteractions Ġbetween Ġhumans Ġand Ġmachines . ĠThe Ġframework Ġis Ġbased Ġon Ġthe Ġtheory Ġof Ġimplicit Ġinteractions Ġwhich Ġpos its Ġthat Ġpeople Ġrely Ġon Ġconventions Ġof Ġinteraction Ġto Ġcommunicate Ġqueries , Ġoffers , Ġresponses , Ġand Ġfeedback Ġto Ġone Ġanother . ĠCon ventions Ġand Ġpatterns Ġdrive Ġour Ġexpectations Ġabout Ġinteractive Ġbehaviors . ĠThis Ġframework Ġhelps Ġdesigners Ġand Ġdevelopers Ġcreate Ġinteractions Ġthat Ġare Ġmore Ġsocially Ġappropriate . ĠAccording Ġto Ġthe Ġauthor , Ġwe Ġhave Ġinterfaces Ġwhich Ġare Ġbased Ġon Ġexplicit Ġinteraction Ġand Ġimplicit Ġones . ĠThe Ġexplicit Ġare Ġthe Ġinteractions Ġor Ġinterfaces Ġwhere Ġpeople Ġrely Ġon Ġexplicit Ġinput Ġand Ġoutput , Ġwhereas Ġimplicit Ġinteractions Ġare Ġthe Ġones Ġthat Ġoccur Ġwithout Ġuser Ġawareness Ġof Ġthe Ġcomputer Ġbehavior . </s> Social Ġpractices Ġand Ġactions Ġare Ġessential Ġfor Ġa Ġconversation Ġto Ġtake Ġplace Ġduring Ġthe Ġturn - by - turn Ġmoments Ġof Ġcommunication . ĠB IB REF 9 Ġhighlights Ġthat Ġa Ġdistinguishing Ġfeature Ġof Ġordinary Ġconversation Ġis Ġ" the Ġlocal , Ġmoment - by - mom ent Ġmanagement Ġof Ġthe Ġdistribution Ġof Ġturns , Ġof Ġtheir Ġsize , Ġand Ġwhat Ġgets Ġdone Ġin Ġthem , Ġthose Ġthings Ġbeing Ġaccomplished Ġin Ġthe Ġcourse Ġof Ġeach Ġcurrent Ġspeaker 's Ġturn ." ĠManagement Ġof Ġturns Ġand Ġsubject Ġchange Ġin Ġeach Ġcourse Ġis Ġa Ġsituation Ġthat Ġoccurs Ġin Ġreal Ġlife Ġconversations Ġbased Ġon Ġcircumstances Ġ( internal Ġand Ġexternal ) Ġto Ġspeakers Ġin Ġa Ġdialogue . ĠNow adays , Ġmachines Ġare Ġnot Ġprepared Ġto Ġfully Ġunderstand Ġcontext Ġand Ġchange Ġthe Ġcourse Ġof Ġconversations Ġas Ġhumans . ĠManaging Ġdialog ues Ġwith Ġmachines Ġis Ġchallenging , Ġwhich Ġincreases Ġeven Ġmore Ġwhen Ġmore Ġthan Ġone Ġconvers ational Ġagent Ġis Ġpart Ġof Ġthe Ġsame Ġconversation . ĠSome Ġof Ġthose Ġchallenges Ġin Ġthe Ġdialogue Ġflow Ġwere Ġaddressed Ġby ĠB IB REF 10 Ġ. ĠAccording Ġto Ġthem , Ġwe Ġhave Ġsystem - in iti ative , Ġuser - in iti ative , Ġand Ġmixed - in iti ative Ġsystems . </s> In Ġthe Ġfirst Ġcase , Ġsystem - in iti ative Ġsystems Ġrestrict Ġuser Ġoptions , Ġasking Ġdirect Ġquestions , Ġsuch Ġas Ġ( Table ĠT AB REF 5 Ġ): Ġ" What Ġis Ġthe Ġinitial Ġamount Ġof Ġinvestment ?" ĠDoing Ġso , Ġthose Ġtypes Ġof Ġsystems Ġare Ġmore Ġsuccessful Ġand Ġeasier Ġto Ġanswer Ġto . ĠOn Ġthe Ġother Ġhand , Ġuser - in iti ative Ġsystems Ġare Ġthe Ġones Ġwhere Ġusers Ġhave Ġfreedom Ġto Ġask Ġwhat Ġthey Ġwish . ĠIn Ġthis Ġcontext , Ġusers Ġmay Ġfeel Ġuncertain Ġof Ġthe Ġcapabilities Ġof Ġthe Ġsystem Ġand Ġstarting Ġasking Ġquestions Ġor Ġrequesting Ġinformation Ġor Ġservices Ġwhich Ġmight Ġbe Ġquite Ġfar Ġfrom Ġthe Ġsystem Ġdomain Ġand Ġunderstanding Ġcapacity , Ġleading Ġto Ġuser Ġfrustration . ĠThere Ġis Ġalso Ġa Ġmixed - in iti ative Ġapproach , Ġthat Ġis , Ġa Ġgoal - oriented Ġdialogue Ġwhich Ġusers Ġand Ġcomputers Ġparticipate Ġinteract ively Ġusing Ġa Ġconvers ational Ġparadigm . ĠChallenges Ġof Ġthis Ġlast Ġclassification Ġare Ġto Ġunderstand Ġinterrupt ions , Ġhuman Ġutter ances , Ġand Ġunclear Ġsentences Ġthat Ġwere Ġnot Ġalways Ġgoal - oriented . </s> The Ġdialog Ġin ĠTable ĠT AB REF 5 Ġhas Ġthe Ġsystem Ġinitiative Ġin Ġa Ġquestion Ġand Ġanswer Ġmode , Ġwhile Ġthe Ġone Ġin ĠTable ĠT AB REF 7 Ġis Ġa Ġnatural Ġdialogue Ġsystem Ġwhere Ġboth Ġthe Ġuser Ġand Ġthe Ġsystem Ġtake Ġthe Ġinitiative . ĠIf Ġwe Ġadd Ġanother Ġuser Ġin Ġthe Ġchat , Ġthen Ġwe Ġface Ġother Ġchallenges . </s> In ĠTable ĠT AB REF 12 Ġ, Ġline Ġ4 , Ġthe Ġuser ĠU 1 Ġinvites Ġanother Ġperson Ġto Ġthe Ġchat Ġand Ġthe Ġsystem Ġdoes Ġnot Ġreply Ġto Ġthis Ġutter ance , Ġnor Ġto Ġutter ances Ġon Ġlines Ġ6 , Ġ7 Ġand Ġ8 Ġwhich Ġare Ġthe Ġones Ġwhen Ġonly Ġthe Ġusers Ġ( wife Ġand Ġhusband ) Ġshould Ġreply Ġto . ĠOn Ġthe Ġother Ġhand , Ġwhen Ġthe Ġcouple Ġagrees Ġon Ġthe Ġperiod Ġand Ġinitial Ġvalue Ġof Ġthe Ġinvestment Ġ( line Ġ9 ), Ġthen Ġthe Ġsystem ĠS 1 Ġ( at Ġthe Ġtime Ġthe Ġonly Ġsystem Ġin Ġthe Ġchat ) Ġreplies Ġindicating Ġthat Ġit Ġwill Ġinvite Ġmore Ġsystems Ġ( chat bots ) Ġthat Ġare Ġexperts Ġon Ġthis Ġkind Ġof Ġpair ĠIN LINE FORM 0 Ġperiod , Ġinitial Ġvalue ĠIN LINE FORM 1 Ġ. ĠThey Ġthen Ġjoin Ġthe Ġchat Ġand Ġstart Ġinteracting Ġwith Ġeach Ġother . ĠAt Ġthe Ġend , Ġon Ġline Ġ17 , Ġthe Ġuser ĠU 2 Ġinteracts Ġwith ĠU 1 Ġand Ġthey Ġagree Ġwith Ġthe Ġcertificate Ġoption . ĠThen , Ġthe Ġchat bot Ġresponsible Ġfor Ġthat , ĠS 3 , Ġis Ġthe Ġonly Ġone Ġthat Ġreplies Ġindicating Ġhow Ġto Ġinvest . </s> Table ĠT AB REF 12 Ġis Ġone Ġexample Ġof Ġinteractions Ġon Ġwhich Ġthe Ġchat bots Ġrequire Ġknowledge Ġof Ġwhen Ġto Ġreply Ġgiven Ġthe Ġcontext Ġof Ġthe Ġdialog . ĠIn Ġgeneral , Ġwe Ġacknowledge Ġthat Ġexist Ġfour Ġdimensions Ġof Ġunderstanding Ġand Ġrep lying Ġto Ġan Ġutter ance Ġin ĠMP CS Ġwhich Ġa Ġchat bot Ġthat Ġinteracts Ġin Ġa Ġmulti - party Ġchat Ġgroup Ġshould Ġfulfill : </s> In Ġthe Ġnext Ġsection Ġwe Ġpresent Ġthe Ġstate Ġof Ġthe Ġart Ġand Ġhow Ġthey Ġfull fil Ġsome Ġof Ġthese Ġdimensions . </s> Con vers ational ĠSystems </s> In Ġthis Ġsection Ġwe Ġdiscuss Ġthe Ġstate Ġof Ġthe Ġart Ġon Ġconvers ational Ġsystems Ġin Ġthree Ġperspectives : Ġtypes Ġof Ġinteractions , Ġtypes Ġof Ġarchitecture , Ġand Ġtypes Ġof Ġcontext Ġreasoning . ĠThen Ġwe Ġpresent Ġa Ġtable Ġthat Ġconsolid ates Ġand Ġcompares Ġall Ġof Ġthem . </s> EL IZ A ĠB IB REF 11 Ġwas Ġone Ġof Ġthe Ġfirst Ġsoft w ares Ġcreated Ġto Ġunderstand Ġnatural Ġlanguage Ġprocessing . ĠJoseph ĠWe izen baum Ġcreated Ġit Ġat Ġthe ĠMIT Ġin Ġ1966 Ġand Ġit Ġis Ġwell Ġknown Ġfor Ġacting Ġlike Ġa Ġpsych other apist Ġand Ġit Ġhad Ġonly Ġto Ġreflect Ġback Ġonto Ġpatient 's Ġstatements . ĠEL IZ A Ġwas Ġcreated Ġto Ġtackle Ġfive Ġ" fund amental Ġtechnical Ġproblems ": Ġthe Ġidentification Ġof Ġcritical Ġwords , Ġthe Ġdiscovery Ġof Ġa Ġminimal Ġcontext , Ġthe Ġchoice Ġof Ġappropriate Ġtransformations , Ġthe Ġgeneration Ġof Ġappropriate Ġresponses Ġto Ġthe Ġtransformation Ġor Ġin Ġthe Ġabsence Ġof Ġcritical Ġwords , Ġand Ġthe Ġprovision Ġof Ġan Ġending Ġcapacity Ġfor ĠEL IZ A Ġscripts . </s> Right Ġafter ĠEL IZ A Ġcame ĠPAR RY , Ġdeveloped Ġby ĠKenneth ĠCol by , Ġwho Ġis Ġpsychiatrist Ġat ĠStanford ĠUniversity Ġin Ġthe Ġearly Ġ1970 s . ĠThe Ġprogram Ġwas Ġwritten Ġusing Ġthe ĠML IS P Ġlanguage Ġ( meta - l isp ) Ġon Ġthe ĠWA ITS Ġoperating Ġsystem Ġrunning Ġon Ġa ĠDEC ĠP DP - 10 Ġand Ġthe Ġcode Ġis Ġnon - port able . ĠParts Ġof Ġit Ġwere Ġwritten Ġin ĠP DP - 10 Ġassembly Ġcode Ġand Ġothers Ġin ĠML IS P . ĠThere Ġmay Ġbe Ġother Ġparts Ġthat Ġrequire Ġother Ġlanguage Ġtransl ators . ĠPAR RY Ġwas Ġthe Ġfirst Ġsystem Ġto Ġpass Ġthe ĠTuring Ġtest Ġ- Ġthe Ġpsychiatrists Ġwere Ġable Ġto Ġmake Ġthe Ġcorrect Ġidentification Ġonly Ġ48 Ġpercent Ġof Ġthe Ġtime , Ġwhich Ġis Ġthe Ġsame Ġas Ġa Ġrandom Ġguessing . </s> A . L . I . C . E . Ġ( Art ificial ĠL ingu istic ĠInternet ĠComputer ĠEntity ) ĠB IB REF 12 Ġappeared Ġin Ġ1995 Ġbut Ġcurrent Ġversion Ġutilizes ĠA IM L , Ġan ĠXML Ġlanguage Ġdesigned Ġfor Ġcreating Ġstimulus - response Ġchat Ġrobots ĠB IB REF 13 Ġ. ĠA . L . I . C . E . Ġbot Ġhas , Ġat Ġpresent , Ġmore Ġthan Ġ40 , 000 Ġcategories Ġof Ġknowledge , Ġwhereas Ġthe Ġoriginal ĠEL IZ A Ġhad Ġonly Ġabout Ġ200 . ĠThe Ġprogram Ġis Ġunable Ġto Ġpass Ġthe ĠTuring Ġtest , Ġas Ġeven Ġthe Ġcasual Ġuser Ġwill Ġoften Ġexpose Ġits Ġmechan istic Ġaspects Ġin Ġshort Ġconversations . </s> Cle ver bot Ġ( 1997 - 2014 ) Ġis Ġa Ġchat bot Ġdeveloped Ġby Ġthe ĠBritish ĠAI Ġscientist ĠRoll o ĠCarpenter . ĠIt Ġpassed Ġthe Ġ2011 ĠTuring ĠTest Ġat Ġthe ĠTechnique ĠTechn o - Management ĠFestival Ġheld Ġby Ġthe ĠIndian ĠInstitute Ġof ĠTechnology ĠGu w ah ati . ĠVolunteers Ġparticipate Ġin Ġfour - minute Ġtyped Ġconversations Ġwith Ġeither ĠClever bot Ġor Ġhumans , Ġwith ĠClever bot Ġvoted Ġ59 . 3 Ġper Ġcent Ġhuman , Ġwhile Ġthe Ġhumans Ġthemselves Ġwere Ġrated Ġjust Ġ63 . 3 Ġper Ġcent Ġhuman ĠB IB REF 14 Ġ. </s> Types Ġof ĠInter actions </s> Although Ġmost Ġpart Ġof Ġthe Ġresearch Ġliterature Ġfocuses Ġon Ġthe Ġdialogue Ġof Ġtwo Ġpersons , Ġthe Ġreality Ġof Ġeveryday Ġlife Ġinteractions Ġshows Ġa Ġsubstantial Ġpart Ġof Ġmulti - user Ġconversations , Ġsuch Ġas Ġin Ġmeetings , Ġclasses , Ġfamily Ġdinners , Ġchats Ġin Ġbars Ġand Ġrestaurants , Ġand Ġin Ġalmost Ġevery Ġcollaborative Ġor Ġcompetitive Ġenvironment Ġsuch Ġas Ġhospitals , Ġschools , Ġoffices , Ġsports Ġteams , Ġetc . ĠThe Ġability Ġof Ġhuman Ġbeings Ġto Ġorganize , Ġmanage , Ġand Ġ( mostly ) Ġmake Ġproductive Ġsuch Ġcomplex Ġinteractive Ġstructures Ġwhich Ġare Ġmulti - user Ġconversations Ġis Ġnothing Ġless Ġthan Ġremarkable . ĠThe Ġadvent Ġof Ġsocial Ġmedia Ġplatforms Ġand Ġmessaging Ġsystems Ġsuch Ġas ĠWhatsApp Ġin Ġthe Ġfirst Ġ15 Ġyears Ġof Ġthe Ġ21 st Ġcentury Ġexpanded Ġour Ġability Ġas Ġa Ġsociety Ġto Ġhave Ġasynchronous Ġconversations Ġin Ġtext Ġform , Ġfrom Ġfamily Ġand Ġfriends Ġchat groups Ġto Ġwhole Ġnations Ġconvers ing Ġin Ġa Ġhighly Ġdistributed Ġform Ġin Ġsocial Ġmedia ĠB IB REF 15 Ġ. </s> In Ġthis Ġcontext , Ġmany Ġtechnological Ġadvances Ġin Ġthe Ġearly Ġ2010 s Ġin Ġnatural Ġlanguage Ġprocessing Ġ( spe ar headed Ġby Ġthe ĠIBM ĠWatson 's Ġvictory Ġin ĠJe opard y ĠB IB REF 16 Ġ) Ġspurred Ġthe Ġavailability Ġin Ġthe Ġearly Ġ2010 s Ġof Ġtext - based Ġchat bots Ġin Ġwebsites Ġand Ġapps Ġ( not ably Ġin ĠChina ĠB IB REF 17 Ġ) Ġand Ġspoken Ġspeech Ġinterfaces Ġsuch Ġas ĠSiri Ġby ĠApple , ĠCortana Ġby ĠMicrosoft , ĠAlexa Ġby ĠAmazon , Ġand ĠAll o Ġby ĠGoogle . ĠHowever , Ġthe Ġabsolute Ġmajority Ġof Ġthose Ġchat bot Ġdeployments Ġwere Ġin Ġcontexts Ġof Ġdy adic Ġdialog , Ġthat Ġis , Ġa Ġconversation Ġbetween Ġa Ġsingle Ġchat bot Ġwith Ġa Ġsingle Ġuser . ĠMost Ġof Ġthe Ġfirst Ġtool k its Ġfor Ġchat bot Ġdesign Ġand Ġdevelopment Ġof Ġthis Ġinitial Ġperiod Ġimplicit Ġassume Ġthat Ġan Ġutter ance Ġfrom Ġthe Ġuser Ġis Ġfollowed Ġby Ġan Ġutter ance Ġof Ġthe Ġchat bot , Ġwhich Ġgreatly Ġsimpl ifies Ġthe Ġmanagement Ġof Ġthe Ġconversation Ġas Ġdiscussed Ġin Ġmore Ġdetails Ġlater . ĠTherefore , Ġfrom Ġthe Ġinteraction Ġpoint Ġof Ġview , Ġthere Ġare Ġtwo Ġtypes : Ġ1 ) Ġone Ġin Ġwhich Ġthe Ġchat bot Ġwas Ġdesigned Ġto Ġchat Ġwith Ġone Ġperson Ġor Ġchat bot , Ġand Ġ2 ) Ġother Ġin Ġwhich Ġthe Ġchat bot Ġcan Ġinteract Ġwith Ġmore Ġthan Ġtwo Ġmembers Ġin Ġthe Ġchat . </s> D y adic ĠChat bot </s> A ĠDy adic ĠChat bot Ġis Ġa Ġchat bot Ġthat Ġdoes Ġknow Ġwhen Ġto Ġtalk . ĠIf Ġit Ġreceives Ġan Ġutter ance , Ġit Ġwill Ġalways Ġhandle Ġand Ġtry Ġto Ġreply Ġto Ġthe Ġreceived Ġutter ance . ĠFor Ġthis Ġchat bot Ġto Ġbehave Ġproperly , Ġeither Ġthere Ġare Ġonly Ġtwo Ġmembers Ġin Ġthe Ġchat , Ġand Ġthe Ġchat bot Ġis Ġone Ġof Ġthem , Ġor Ġthere Ġare Ġmore , Ġbut Ġthe Ġchat bot Ġreplies Ġonly Ġwhen Ġits Ġname Ġor Ġnickname Ġis Ġmentioned . ĠThis Ġmeans Ġthat Ġa Ġdy adic Ġchat bot Ġdoes Ġnot Ġknow Ġhow Ġto Ġcoordinate Ġwith Ġmany Ġmembers Ġin Ġa Ġchat Ġgroup . ĠIt Ġlacks Ġthe Ġsocial Ġability Ġof Ġknowing Ġwhen Ġit Ġis Ġmore Ġsuitable Ġto Ġanswer Ġor Ġnot . ĠAlso , Ġnote Ġthat Ġwe Ġare Ġnot Ġconsidering Ġhere Ġthe Ġones Ġthat Ġwould Ġuse Ġthis Ġsocial Ġability Ġas Ġan Ġadvantage Ġin Ġthe Ġconversation , Ġbecause Ġif Ġthe Ġchat bot Ġis Ġdoing Ġwith Ġthis Ġintention , Ġit Ġmeans Ġthat Ġthe Ġchat bot Ġwas Ġdesigned Ġto Ġbe Ġaware Ġof Ġthe Ġsocial Ġissues Ġregarding Ġa Ġchat Ġwith Ġmultiple Ġmembers , Ġwhich Ġis Ġnot Ġthe Ġcase Ġof Ġa Ġdy adic Ġchat bot . ĠMost Ġexisting Ġchat bots , Ġfrom Ġthe Ġfirst Ġsystem , ĠEL IZ A ĠB IB REF 11 Ġ, Ġuntil Ġmodern Ġstate - of - the - art Ġones Ġfall Ġinto Ġthis Ġcategory . </s> Mult ip arty ĠConvers ations </s> In Ġmultip arty Ġconversations Ġbetween Ġpeople Ġand Ġcomputer Ġsystems , Ġnatural Ġlanguage Ġbecomes Ġthe Ġcommunication Ġprotocol Ġexchanged Ġnot Ġonly Ġby Ġthe Ġhuman Ġusers , Ġbut Ġalso Ġamong Ġthe Ġbots Ġthemselves . ĠWhen Ġevery Ġactor , Ġcomputer Ġor Ġuser , Ġunderstands Ġhuman Ġlanguage Ġand Ġis Ġable Ġto Ġengage Ġeffectively Ġin Ġa Ġconversation , Ġa Ġnew , Ġuniversal Ġcomputer Ġprotocol Ġof Ġcommunication Ġis Ġfeasible , Ġand Ġone Ġfor Ġwhich Ġpeople Ġare Ġextremely Ġgood Ġat . </s> There Ġare Ġmany Ġdifferences Ġbetween Ġdy adic Ġand Ġmultip arty Ġconversations , Ġbut Ġchiefly Ġamong Ġthem Ġis Ġturn - taking , Ġthat Ġis , Ġhow Ġa Ġparticipant Ġdetermines Ġwhen Ġit Ġis Ġappropriate Ġto Ġmake Ġan Ġutter ance Ġand Ġhow Ġthat Ġis Ġaccomplished . ĠThere Ġare Ġmany Ġsocial Ġsettings , Ġsuch Ġas Ġassemblies , Ġdebates , Ġone - channel Ġradio Ġcommunications , Ġand Ġsome Ġformal Ġmeetings , Ġwhere Ġthere Ġare Ġclear Ġand Ġexplicit Ġnorms Ġof Ġwho , Ġwhen , Ġand Ġfor Ġlong Ġa Ġparticipant Ġcan Ġspeak . </s> The Ġstate Ġof Ġthe Ġart Ġfor Ġthe Ġcreation Ġof Ġchat bots Ġthat Ġcan Ġparticipate Ġon Ġmultip arty Ġconversations Ġcurrently Ġis Ġa Ġcombination Ġof Ġthe Ġresearch Ġon Ġthe Ġcreation Ġof Ġchat bots Ġand Ġresearch Ġon Ġthe Ġcoordination Ġor Ġgovernance Ġof Ġmulti - agents Ġsystems . ĠA Ġdefinition Ġthat Ġmixes Ġboth Ġconcepts Ġherein Ġpresent Ġis : ĠA Ġchat bot Ġis Ġan Ġagent Ġthat Ġinteracts Ġthrough Ġnatural Ġlanguage . ĠAlthough Ġthese Ġareas Ġcomplement Ġeach Ġother , Ġthere Ġis Ġa Ġlack Ġof Ġsolutions Ġfor Ġcreating Ġmultip arty - aware Ġchat bots Ġor Ġgoverned Ġchat bots , Ġwhich Ġcan Ġlead Ġto Ġhigher Ġdegree Ġof Ġsystem Ġtrust . </s> Multi - D y adic ĠChat bots </s> Turn - taking Ġin Ġgeneric , Ġmultip arty Ġspoken Ġconversation Ġhas Ġbeen Ġstudied Ġby , Ġfor Ġexample , ĠS acks Ġet Ġal . ĠB IB REF 18 Ġ. ĠIn Ġbroad Ġterms , Ġit Ġwas Ġfound Ġthat Ġparticipants Ġin Ġgeneral Ġdo Ġnot Ġoverlap Ġtheir Ġutter ances Ġand Ġthat Ġthe Ġstructure Ġof Ġthe Ġlanguage Ġand Ġthe Ġnorms Ġof Ġconversation Ġcreate Ġspecific Ġmoments , Ġcalled Ġtransition - re lev ance Ġplaces , Ġwhere Ġturns Ġcan Ġoccur . ĠIn Ġmany Ġcases , Ġthe Ġlast Ġutter ances Ġmake Ġclear Ġto Ġthe Ġparticipants Ġwho Ġshould Ġbe Ġthe Ġnext Ġspeaker Ġ( selected - next - spe aker ), Ġand Ġhe Ġor Ġshe Ġcan Ġtake Ġthat Ġmoment Ġto Ġstart Ġto Ġtalk . ĠOtherwise , Ġany Ġother Ġparticipant Ġcan Ġstart Ġspeaking , Ġwith Ġpreference Ġfor Ġthe Ġfirst Ġstarter Ġto Ġget Ġthe Ġturn ; Ġor Ġthe Ġcurrent Ġspeaker Ġcan Ġcontinue ĠB IB REF 18 Ġ. </s> A Ġkey Ġpart Ġof Ġthe Ġchallenge Ġis Ġto Ġdetermine Ġwhether Ġthe Ġcontext Ġof Ġthe Ġconversation Ġso Ġfar Ġhave Ġor Ġhave Ġnot Ġdetermined Ġthe Ġnext Ġspeaker . ĠIn Ġits Ġsimplest Ġform , Ġa Ġvoc ative Ġsuch Ġas Ġthe Ġname Ġof Ġthe Ġnext Ġspeaker Ġis Ġuttered . ĠAlso , Ġthere Ġis Ġa Ġstrong Ġbias Ġtowards Ġthe Ġspeaker Ġbefore Ġthe Ġcurrent Ġbeing Ġthe Ġmost Ġlikely Ġcandidate Ġto Ġbe Ġthe Ġnext Ġspeaker . </s> In Ġgeneral Ġthe Ġdetection Ġof Ġtransition - re lev ance Ġplaces Ġand Ġof Ġthe Ġselected - next - spe aker Ġis Ġstill Ġa Ġchallenge Ġfor Ġspeech - based Ġmachine Ġconvers ational Ġsystems . ĠHowever , Ġin Ġthe Ġcase Ġof Ġtext Ġmessage Ġchats , Ġtransition - re lev ance Ġplaces Ġare Ġoften Ġdetermined Ġby Ġthe Ġacting Ġof Ġposting Ġa Ġmessage , Ġso Ġthe Ġmain Ġproblem Ġfacing Ġmultip arty - enabled Ġtextual Ġchat bots Ġis Ġin Ġfact Ġdetermining Ġwhether Ġthere Ġis Ġand Ġwho Ġis Ġthe Ġselected - next - spe aker . ĠIn Ġother Ġwords , Ġchat bots Ġhave Ġto Ġknow Ġwhen Ġto Ġshut Ġup . ĠBoh us Ġand ĠHorowitz ĠB IB REF 19 Ġhave Ġproposed Ġa Ġcomputational Ġprob abil istic Ġmodel Ġfor Ġspeech - based Ġsystems , Ġbut Ġwe Ġare Ġnot Ġaware Ġof Ġany Ġwork Ġdealing Ġwith Ġmodeling Ġturn - taking Ġin Ġtextual Ġchats . </s> Co ord ination Ġof ĠMulti - Agent ĠSystems </s> A Ġmulti - agent Ġsystem Ġ( MAS ) Ġcan Ġbe Ġdefined Ġas Ġa Ġcomputational Ġenvironment Ġin Ġwhich Ġindividual Ġsoftware Ġagents Ġinteract Ġwith Ġeach Ġother , Ġin Ġa Ġcooperative Ġmanner , Ġor Ġin Ġa Ġcompetitive Ġmanner , Ġand Ġsometimes Ġautonom ously Ġpursuing Ġtheir Ġindividual Ġgoals . ĠDuring Ġthis Ġprocess , Ġthey Ġaccess Ġthe Ġenvironment 's Ġresources Ġand Ġservices Ġand Ġoccasionally Ġproduce Ġresults Ġfor Ġthe Ġentities Ġthat Ġinitiated Ġthese Ġsoftware Ġagents . ĠAs Ġthe Ġagents Ġinteract Ġin Ġa Ġconcurrent , Ġasynchronous Ġand Ġdecentralized Ġmanner , Ġthis Ġkind Ġof Ġsystem Ġcan Ġbe Ġcategorized Ġas Ġa Ġcomplex Ġsystem ĠB IB REF 20 Ġ. </s> Research Ġin Ġthe Ġcoordination Ġof Ġmulti - agent Ġsystems Ġarea Ġdoes Ġnot Ġaddress Ġcoordination Ġusing Ġnatural Ġdialogue , Ġas Ġusually Ġall Ġmessages Ġare Ġstructured Ġand Ġformal ized Ġso Ġthe Ġagents Ġcan Ġreason Ġand Ġcoordinate Ġthemselves . ĠOn Ġthe Ġother Ġhand , Ġchat bots Ġcoordination Ġhave Ġsome Ġrelations Ġwith Ġgeneral Ġcoordination Ġmechanisms Ġof Ġmulti - agent Ġsystems Ġin Ġthat Ġthey Ġspecify Ġand Ġcontrol Ġinteractions Ġbetween Ġagents . ĠHowever , Ġchat bots Ġcoordination Ġmechanisms Ġis Ġmeant Ġto Ġregulate Ġinteractions Ġand Ġactions Ġfrom Ġa Ġsocial Ġperspective , Ġwhereas Ġgeneral Ġcoordination Ġlanguages Ġand Ġmechanisms Ġfocus Ġon Ġmeans Ġfor Ġexpressing Ġsynchronization Ġand Ġcoordination Ġof Ġactivities Ġand Ġexchange Ġof Ġinformation , Ġat Ġa Ġlower Ġcomputational Ġlevel . </s> In Ġopen Ġmulti - agent Ġsystems Ġthe Ġdevelopment Ġtakes Ġplace Ġwithout Ġa Ġcentralized Ġcontrol , Ġthus Ġit Ġis Ġnecessary Ġto Ġensure Ġthe Ġreliability Ġof Ġthese Ġsystems Ġin Ġa Ġway Ġthat Ġall Ġthe Ġinteractions Ġbetween Ġagents Ġwill Ġoccur Ġaccording Ġto Ġthe Ġspecification Ġand Ġthat Ġthese Ġagents Ġwill Ġobey Ġthe Ġspecified Ġscenario . ĠFor Ġthis , Ġthese Ġapplications Ġmust Ġbe Ġbuilt Ġupon Ġa Ġlaw - govern ed Ġarchitecture . </s> M insky Ġpublished Ġthe Ġfirst Ġideas Ġabout Ġlaws Ġin Ġ1987 ĠB IB REF 21 Ġ. ĠConsidering Ġthat Ġa Ġlaw Ġis Ġa Ġset Ġof Ġnorms Ġthat Ġgovern Ġthe Ġinteraction , Ġafterwards , Ġhe Ġpublished Ġa Ġseminal Ġpaper Ġwith Ġthe ĠLaw - Govern ed ĠInter action Ġ( L GI ) Ġconceptual Ġmodel Ġabout Ġthe Ġrole Ġof Ġinteraction Ġlaws Ġon Ġdistributed Ġsystems ĠB IB REF 22 Ġ. ĠSince Ġthen , Ġhe Ġconducted Ġfurther Ġwork Ġand Ġexperimentation Ġbased Ġon Ġthose Ġideas ĠB IB REF 23 Ġ. ĠAlthough Ġat Ġthe Ġlow Ġlevel Ġa Ġmultip arty Ġconversation Ġsystem Ġis Ġa Ġdistributed Ġsystem Ġand Ġthe ĠLG I Ġconceptual Ġmodel Ġcan Ġbe Ġused Ġin Ġa Ġvariety Ġof Ġapplication Ġdomains , Ġit Ġis Ġcomposed Ġof Ġabstract ions Ġbasically Ġrelated Ġto Ġlow Ġlevel Ġinformation Ġabout Ġcommunication Ġissues Ġof Ġdistributed Ġsystems Ġ( like Ġthe Ġprim itives Ġdisconnected , Ġreconnect ed , Ġforward , Ġand Ġsending Ġor Ġreceiving Ġof Ġmessages ), Ġlacking Ġthe Ġability Ġto Ġexpress Ġhigh Ġlevel Ġinformation Ġof Ġsocial Ġsystems . </s> Following Ġthe Ġsame Ġapproach , Ġthe ĠElectronic ĠInstitution Ġ( E I ) ĠB IB REF 24 Ġsolution Ġalso Ġprovides Ġsupport Ġfor Ġinteraction Ġnorms . ĠAn ĠE I Ġhas Ġa Ġset Ġof Ġhigh - level Ġabstract ions Ġthat Ġallow Ġfor Ġthe Ġspecification Ġof Ġlaws Ġusing Ġconcepts Ġsuch Ġas Ġagent Ġroles , Ġnorms Ġand Ġscenes . </s> Still Ġat Ġthe Ġagent Ġlevel Ġbut Ġmore Ġat Ġthe Ġsocial Ġlevel , Ġthe ĠXML aw Ġdescription Ġlanguage Ġand Ġthe ĠM - Law Ġframework ĠB IB REF 25 ĠB IB REF 26 Ġwere Ġproposed Ġand Ġdeveloped Ġto Ġsupport Ġlaw - govern ed Ġmechanism . ĠThey Ġimplement Ġa Ġlaw Ġenforcement Ġapproach Ġas Ġan Ġobject - oriented Ġframework Ġand Ġit Ġallows Ġnormative Ġbehavior Ġthrough Ġthe Ġcombination Ġbetween Ġnorms Ġand Ġclocks . ĠThe ĠM - Law Ġframework ĠB IB REF 26 Ġworks Ġby Ġintercept ing Ġmessages Ġexchanged Ġbetween Ġagents , Ġverifying Ġthe Ġcompliance Ġof Ġthe Ġmessages Ġwith Ġthe Ġlaws Ġand Ġsubsequently Ġredirect ing Ġthe Ġmessage Ġto Ġthe Ġreal Ġadd res see , Ġif Ġthe Ġlaws Ġallow Ġit . ĠIf Ġthe Ġmessage Ġis Ġnot Ġcompliant , Ġthen Ġthe Ġmedi ator Ġblocks Ġthe Ġmessage Ġand Ġapplies Ġthe Ġconsequences Ġspecified Ġin Ġthe Ġlaw , Ġif Ġany . ĠThey Ġare Ġcalled Ġlaws Ġin Ġthe Ġsense Ġthat Ġthey Ġenforce Ġthe Ġnorms , Ġwhich Ġrepresent Ġwhat Ġcan Ġbe Ġdone Ġ( per missions ), Ġwhat Ġcannot Ġbe Ġdone Ġ( pro hib itions ) Ġand Ġwhat Ġmust Ġbe Ġdone Ġ( ob lig ations ). </s> Co ord inated ĠAware ĠChat bots Ġin Ġa ĠMult ip arty ĠConversation </s> With Ġregard Ġto Ġchat bot Ġengines , Ġthere Ġis Ġa Ġlack Ġof Ġresearch Ġdirected Ġto Ġbuilding Ġcoordination Ġlaws Ġintegrated Ġwith Ġnatural Ġlanguage . ĠTo Ġthe Ġbest Ġof Ġour Ġknowledge , Ġthe Ġarchitecture Ġproposed Ġin Ġthis Ġpaper Ġis Ġthe Ġfirst Ġone Ġin Ġthe Ġstate Ġof Ġthe Ġart Ġdesigned Ġto Ġsupport Ġthe Ġdesign Ġand Ġdevelopment Ġof Ġcoordinated Ġaware Ġchat bots Ġin Ġa Ġmultip arty Ġconversation . </s> Types Ġof ĠArchitect ures </s> There Ġare Ġmainly Ġthree Ġtypes Ġof Ġarchitectures Ġwhen Ġbuilding Ġconvers ational Ġsystems : Ġtotally Ġrule - oriented , Ġtotally Ġdata - oriented , Ġand Ġa Ġmix Ġof Ġrules Ġand Ġdata - oriented . </s> Rule - oriented </s> A Ġrule - oriented Ġarchitecture Ġprovides Ġa Ġmanually Ġcoded Ġreply Ġfor Ġeach Ġrecognized Ġutter ance . ĠClassical Ġexamples Ġof Ġrule - based Ġchat bots Ġinclude ĠEl iza Ġand ĠPar ry . ĠEl iza Ġcould Ġalso Ġextract Ġsome Ġwords Ġfrom Ġsentences Ġand Ġthen Ġcreate Ġanother Ġsentence Ġwith Ġthese Ġwords Ġbased Ġon Ġtheir Ġsynt atic Ġfunctions . ĠIt Ġwas Ġa Ġrule - based Ġsolution Ġwith Ġno Ġreasoning . ĠEl iza Ġcould Ġnot Ġ" under stand " Ġwhat Ġshe Ġwas Ġparsing . ĠMore Ġsophisticated Ġrule - oriented Ġarchitectures Ġcontain Ġgram m ars Ġand Ġm appings Ġfor Ġconverting Ġsentences Ġto Ġappropriate Ġsentences Ġusing Ġsome Ġsort Ġof Ġknowledge . ĠThey Ġcan Ġbe Ġimplemented Ġwith Ġpropos itional Ġlogic Ġor Ġfirst - order Ġlogic Ġ( F OL ). ĠPro pos itional Ġlogic Ġassumes Ġthe Ġworld Ġcontains Ġfacts Ġ( which Ġrefer Ġto Ġevents , Ġphenomena , Ġsymptoms Ġor Ġactivities ). ĠUsually , Ġa Ġset Ġof Ġfacts Ġ( stat ements ) Ġis Ġnot Ġsufficient Ġto Ġdescribe Ġa Ġdomain Ġin Ġa Ġcomplete Ġmanner . ĠOn Ġthe Ġother Ġhand , ĠF OL Ġassumes Ġthe Ġworld Ġcontains ĠObjects Ġ( e . g ., Ġpeople , Ġhouses , Ġnumbers , Ġetc .), ĠRelations Ġ( e . g . Ġred , Ġprime , Ġbrother Ġof , Ġpart Ġof , Ġcomes Ġbetween , Ġetc .), Ġand ĠFunctions Ġ( e . g . Ġfather Ġof , Ġbest Ġfriend , Ġetc .), Ġnot Ġonly Ġfacts Ġas Ġin Ġpropos itional Ġlogic . ĠMoreover , ĠF OL Ġcontains Ġpred icates , Ġquant ifiers Ġand Ġvariables , Ġwhich Ġrange Ġover Ġindividuals Ġ( which Ġare Ġdomain Ġof Ġdiscourse ). </s> Pro log Ġ( from ĠFrench : ĠProgram m ation Ġen ĠLog ique ) Ġwas Ġone Ġof Ġthe Ġfirst Ġlogic Ġprogramming Ġlanguages Ġ( created Ġin Ġthe Ġ1970 s ), Ġand Ġit Ġis Ġone Ġof Ġthe Ġmost Ġimportant Ġlanguages Ġfor Ġexpressing Ġphrases , Ġrules Ġand Ġfacts . ĠA ĠPro log Ġprogram Ġconsists Ġof Ġlogical Ġformulas Ġand Ġrunning Ġa Ġprogram Ġmeans Ġproving Ġa Ġtheorem . ĠKnowledge Ġbases , Ġwhich Ġinclude Ġrules Ġin Ġaddition Ġto Ġfacts , Ġare Ġthe Ġbasis Ġfor Ġmost Ġrule - oriented Ġchat bots Ġcreated Ġso Ġfar . </s> In Ġgeneral , Ġa Ġrule Ġis Ġpresented Ġas Ġfollows : ĠDIS PLAY FORM 0 </s> Pro log Ġmade Ġit Ġpossible Ġto Ġperform Ġthe Ġlanguage Ġof ĠHorn Ġclauses Ġ( impl ications Ġwith Ġonly Ġone Ġconclusion ). ĠThe Ġconcept Ġof ĠPro log Ġis Ġbased Ġon Ġpredicate Ġlogic , Ġand Ġproving Ġthe ore ms Ġinvolves Ġa Ġres olute Ġsystem Ġof Ġden ials . ĠPro log Ġcan Ġbe Ġdistinguished Ġfrom Ġclassic Ġprogramming Ġlanguages Ġdue Ġto Ġits Ġpossibility Ġof Ġinterpreting Ġthe Ġcode Ġin Ġboth Ġa Ġprocedural Ġand Ġdecl ar ative Ġway . ĠAlthough ĠPro log Ġis Ġa Ġset Ġof Ġspecifications Ġin ĠF OL , Ġit Ġadop ts Ġthe Ġclosed - world Ġassumption , Ġi . e . Ġall Ġknowledge Ġof Ġthe Ġworld Ġis Ġpresent Ġin Ġthe Ġdatabase . ĠIf Ġa Ġterm Ġis Ġnot Ġin Ġthe Ġdatabase , ĠPro log Ġassumes Ġit Ġis Ġfalse . </s> In Ġcase Ġof ĠPro log , Ġthe ĠF OL - based Ġset Ġof Ġspecifications Ġ( form ulas ) Ġtogether Ġwith Ġthe Ġfacts Ġcompose Ġthe Ġknowledge Ġbase Ġto Ġbe Ġused Ġby Ġa Ġrule - oriented Ġchat bot . ĠHowever Ġan ĠOnt ology Ġcould Ġbe Ġused . ĠFor Ġinstance , ĠOnt Bot ĠB IB REF 27 Ġuses Ġmapping Ġtechnique Ġto Ġtransform Ġont ologies Ġand Ġknowledge Ġinto Ġrelational Ġdatabase Ġand Ġthen Ġuse Ġthat Ġknowledge Ġto Ġdrive Ġits Ġchats . ĠOne Ġof Ġthe Ġmain Ġissues Ġcurrently Ġfacing Ġsuch Ġa Ġhuge Ġamount Ġof Ġont ologies Ġstored Ġin Ġa Ġdatabase Ġis Ġthe Ġlack Ġof Ġeasy Ġto Ġuse Ġinterfaces Ġfor Ġdata Ġretrieval , Ġdue Ġto Ġthe Ġneed Ġto Ġuse Ġspecial Ġquery Ġlanguages Ġor Ġapplications . </s> In Ġrule - oriented Ġchat bots , Ġthe Ġdegree Ġof Ġintelligent Ġbehavior Ġdepends Ġon Ġthe Ġknowledge Ġbase Ġsize Ġand Ġquality Ġ( which Ġrepresents Ġthe Ġinformation Ġthat Ġthe Ġchat bot Ġknows ), Ġpoor Ġones Ġlead Ġto Ġweak Ġchat bot Ġresponses Ġwhile Ġgood Ġones Ġdo Ġthe Ġopposite . ĠHowever , Ġgood Ġknowledge Ġbases Ġmay Ġrequire Ġyears Ġto Ġbe Ġcreated , Ġdepending Ġon Ġthe Ġdomain . </s> Data - oriented </s> As Ġopposed Ġto Ġrule - oriented Ġarchitectures , Ġwhere Ġrules Ġhave Ġto Ġbe Ġexplicitly Ġdefined , Ġdata - oriented Ġarchitectures Ġare Ġbased Ġon Ġlearning Ġmodels Ġfrom Ġsamples Ġof Ġdialog ues , Ġin Ġorder Ġto Ġreproduce Ġthe Ġbehavior Ġof Ġthe Ġinteraction Ġthat Ġare Ġobserved Ġin Ġthe Ġdata . ĠSuch Ġkind Ġof Ġlearning Ġcan Ġbe Ġdone Ġby Ġmeans Ġof Ġmachine Ġlearning Ġapproach , Ġor Ġby Ġsimply Ġextracting Ġrules Ġfrom Ġdata Ġinstead Ġof Ġmanually Ġcoding Ġthem . </s> Among Ġthe Ġdifferent Ġtechnologies Ġon Ġwhich Ġthese Ġsystem Ġcan Ġbe Ġbased , Ġwe Ġcan Ġhighlight Ġclassical Ġinformation Ġretrieval Ġalgorithms , Ġneural Ġnetworks ĠB IB REF 28 Ġ, ĠHidden ĠMark ov ĠModels Ġ( H MM ) ĠB IB REF 29 Ġ, Ġand ĠPart ially ĠObserv able ĠMark ov ĠDecision ĠProcess Ġ( P OM DP ) ĠB IB REF 30 Ġ. ĠExamples Ġinclude ĠClever bot Ġand ĠTay ĠB IB REF 31 Ġ. ĠTay Ġwas Ġa Ġchat bot Ġdeveloped Ġby ĠMicrosoft Ġthat Ġafter Ġone Ġday Ġlive Ġlearning Ġfrom Ġinteraction Ġwith Ġteenagers Ġon ĠTwitter , Ġstarted Ġrep lying Ġimp ol ite Ġutter ances . ĠMicrosoft Ġhas Ġdeveloped Ġothers Ġsimilar Ġchat bots Ġin ĠChina Ġ( X ia oice ) Ġand Ġin ĠJapan Ġ( R in na ). ĠMicrosoft Ġhas Ġnot Ġassociated Ġits Ġpublications Ġwith Ġthese Ġchat bots , Ġbut Ġthey Ġhave Ġpublished Ġa Ġdata - oriented Ġapproach ĠB IB REF 32 Ġthat Ġproposes Ġa Ġunified Ġmulti - turn Ġmulti - task Ġspoken Ġlanguage Ġunderstanding Ġ( SL U ) Ġsolution Ġcapable Ġof Ġhandling Ġmultiple Ġcontext Ġsensitive Ġclassification Ġ( intent Ġdetermination ) Ġand Ġsequence Ġlabeling Ġ( slot Ġfilling ) Ġtasks Ġsimultaneously . ĠThe Ġproposed Ġarchitecture Ġis Ġbased Ġon Ġrecurrent Ġconv olution al Ġneural Ġnetworks Ġ( RC NN ) Ġwith Ġshared Ġfeature Ġlayers Ġand Ġglobally Ġnormalized Ġsequence Ġmodeling Ġcomponents . </s> A Ġsurvey Ġof Ġpublic Ġavailable Ġcorpor a Ġfor Ġcan Ġbe Ġfound Ġin ĠB IB REF 33 Ġ. ĠA Ġcorpus Ġcan Ġbe Ġclassified Ġinto Ġdifferent Ġcategories , Ġaccording Ġto : Ġthe Ġtype Ġof Ġdata , Ġwhether Ġit Ġis Ġspoken Ġdialog ues , Ġtranscripts Ġof Ġspoken Ġdialog ues , Ġor Ġdirectly Ġwritten ; Ġthe Ġtype Ġof Ġinteraction , Ġif Ġit Ġis Ġhuman - human Ġor Ġhuman - machine ; Ġand Ġthe Ġdomain , Ġwhether Ġit Ġis Ġrestricted Ġor Ġuncon str ained . ĠTwo Ġwell - known Ġcorpor a Ġare Ġthe ĠSwitch board Ġdataset , Ġwhich Ġconsists Ġof Ġtranscripts Ġof Ġspoken , Ġuncon str ained , Ġdialog ues , Ġand Ġthe Ġset Ġof Ġtasks Ġfor Ġthe ĠDial og ĠState ĠTracking ĠChallenge Ġ( D ST C ), Ġwhich Ġcontain Ġmore Ġconstrained Ġtasks , Ġfor Ġinstance Ġthe Ġrestaurant Ġand Ġtravel Ġinformation Ġsets . </s> Rule Ġand ĠData - oriented </s> The Ġmodel Ġof Ġlearning Ġin Ġcurrent ĠA . L . I . C . E . ĠB IB REF 13 Ġis Ġincremental Ġor / and Ġinteractive Ġlearning Ġbecause Ġa Ġperson Ġmonitors Ġthe Ġrobot 's Ġconversations Ġand Ġcreates Ġnew ĠA IM L Ġcontent Ġto Ġmake Ġthe Ġresponses Ġmore Ġappropriate , Ġaccurate , Ġbelievable , Ġ" human ", Ġor Ġwhatever Ġhe / she Ġintends . ĠThere Ġare Ġalgorithms Ġfor Ġautomatic Ġdetection Ġof Ġpatterns Ġin Ġthe Ġdialogue Ġdata Ġand Ġthis Ġprocess Ġprovides Ġthe Ġperson Ġwith Ġnew Ġinput Ġpatterns Ġthat Ġdo Ġnot Ġhave Ġspecific Ġreplies Ġyet , Ġpermitting Ġa Ġprocess Ġof Ġalmost Ġcontinuous Ġsupervised Ġrefinement Ġof Ġthe Ġbot . </s> As Ġalready Ġmentioned , ĠA . L . I . C . E . Ġconsists Ġof Ġroughly Ġ41 , 000 Ġelements Ġcalled Ġcategories Ġwhich Ġis Ġthe Ġbasic Ġunit Ġof Ġknowledge Ġin ĠA IM L . ĠEach Ġcategory Ġconsists Ġof Ġan Ġinput Ġquestion , Ġan Ġoutput Ġanswer , Ġand Ġan Ġoptional Ġcontext . ĠThe Ġquestion , Ġor Ġstimulus , Ġis Ġcalled Ġthe Ġpattern . ĠThe Ġanswer , Ġor Ġresponse , Ġis Ġcalled Ġthe Ġtemplate . ĠThe Ġtwo Ġtypes Ġof Ġoptional Ġcontext Ġare Ġcalled Ġthat Ġand Ġtopic . ĠThe Ġkeyword Ġthat Ġrefers Ġto Ġthe Ġrobot 's Ġprevious Ġutter ance . ĠThe ĠA IM L Ġpattern Ġlanguage Ġconsists Ġonly Ġof Ġwords , Ġspaces , Ġand Ġthe Ġwild card Ġsymbols Ġ"_ " Ġand Ġ" * ". ĠThe Ġwords Ġmay Ġconsist Ġonly Ġof Ġletters Ġand Ġnumer als . ĠThe Ġpattern Ġlanguage Ġis Ġcase Ġinvari ant . ĠWords Ġare Ġseparated Ġby Ġa Ġsingle Ġspace , Ġand Ġthe Ġwild card Ġcharacters Ġfunction Ġlike Ġwords , Ġsimilar Ġto Ġthe Ġinitial Ġpattern Ġmatching Ġstrategy Ġof Ġthe ĠEl iza Ġsystem . ĠMore Ġgenerally , ĠA IM L Ġtags Ġtransform Ġthe Ġreply Ġinto Ġa Ġmini Ġcomputer Ġprogram Ġwhich Ġcan Ġsave Ġdata , Ġactivate Ġother Ġprograms , Ġgive Ġconditional Ġresponses , Ġand Ġrec urs ively Ġcall Ġthe Ġpattern Ġmat cher Ġto Ġinsert Ġthe Ġresponses Ġfrom Ġother Ġcategories . ĠMost ĠA IM L Ġtags Ġin Ġfact Ġbelong Ġto Ġthis Ġtemplate Ġside Ġsub language ĠB IB REF 13 Ġ. </s> A IM L Ġlanguage Ġallows : </s> Sy mb olic Ġreduction : ĠReduce Ġcomplex Ġgram matical Ġforms Ġto Ġsimpler Ġones . </s> Div ide Ġand Ġconquer : ĠSplit Ġan Ġinput Ġinto Ġtwo Ġor Ġmore Ġsub parts , Ġand Ġcombine Ġthe Ġresponses Ġto Ġeach . </s> Syn onyms : ĠMap Ġdifferent Ġways Ġof Ġsaying Ġthe Ġsame Ġthing Ġto Ġthe Ġsame Ġreply . </s> Spe lling Ġor Ġgrammar Ġcorrections : Ġthe Ġbot Ġboth Ġcorrect s Ġthe Ġclient Ġinput Ġand Ġacts Ġas Ġa Ġlanguage Ġtutor . </s> Detect ing Ġkeywords Ġanywhere Ġin Ġthe Ġinput Ġthat Ġact Ġlike Ġtriggers Ġfor Ġa Ġreply . </s> Condition als : ĠCertain Ġforms Ġof Ġbranching Ġto Ġproduce Ġa Ġreply . </s> Any Ġcombination Ġof Ġ( 1 )- ( 6 ). </s> When Ġthe Ġbot Ġchats Ġwith Ġmultiple Ġclients , Ġthe Ġpred icates Ġare Ġstored Ġrelative Ġto Ġeach Ġclient ĠID . ĠFor Ġexample , Ġthe Ġmarkup ĠIN LINE FORM 0 Ġset Ġname ĠIN LINE FORM 1 Ġ" name " ĠIN LINE FORM 2 ĠMatthew ĠIN LINE FORM 3 Ġ/ set ĠIN LINE FORM 4 Ġstores Ġthe Ġstring ĠMatthew Ġunder Ġthe Ġpredicate Ġnamed Ġ" name ". ĠSub sequent Ġactiv ations Ġof ĠIN LINE FORM 5 Ġget Ġname =" name " ĠIN LINE FORM 6 Ġreturn Ġ" Matthew ". ĠIn Ġaddition , Ġone Ġof Ġthe Ġsimple Ġtricks Ġthat Ġmakes ĠEL IZ A Ġand ĠA . L . I . C . E . Ġso Ġbelievable Ġis Ġa Ġpronoun Ġswapping Ġsubstitution . ĠFor Ġinstance : </s> U : ĠMy Ġhusband Ġwould Ġlike Ġto Ġinvest Ġwith Ġme . </s> S : ĠWho Ġelse Ġin Ġyour Ġfamily Ġwould Ġlike Ġto Ġinvest Ġwith Ġyou ? </s> Types Ġof ĠIntent ions </s> According Ġto Ġthe Ġtypes Ġof Ġintentions , Ġconvers ational Ġsystems Ġcan Ġbe Ġclassified Ġinto Ġtwo Ġcategories : Ġa ) Ġgoal - driven Ġor Ġtask Ġoriented , Ġand Ġb ) Ġnon - goal - driven Ġor Ġend - to - end Ġsystems . </s> In Ġa Ġgoal - driven Ġsystem , Ġthe Ġmain Ġobjective Ġis Ġto Ġinteract Ġwith Ġthe Ġuser Ġso Ġthat Ġback - end Ġtasks , Ġwhich Ġare Ġapplication Ġspecific , Ġare Ġexecuted Ġby Ġa Ġsupporting Ġsystem . ĠAs Ġan Ġexample Ġof Ġapplication Ġwe Ġcan Ġcite Ġtechnical Ġsupport Ġsystems , Ġfor Ġinstance Ġair Ġticket Ġbooking Ġsystems , Ġwhere Ġthe Ġconversation Ġsystem Ġmust Ġinteract Ġwith Ġthe Ġuser Ġuntil Ġall Ġthe Ġrequired Ġinformation Ġis Ġknown , Ġsuch Ġas Ġorigin , Ġdestination , Ġdeparture Ġdate Ġand Ġreturn Ġdate , Ġand Ġthe Ġsupporting Ġsystem Ġmust Ġbook Ġthe Ġticket . ĠThe Ġmost Ġwidely Ġused Ġapproaches Ġfor Ġdeveloping Ġthese Ġsystems Ġare ĠPart ially - ob served ĠDecision ĠProcess es Ġ( P OM DP ) ĠB IB REF 30 Ġ, ĠHidden ĠMark ov ĠModels Ġ( H MM ) ĠB IB REF 29 Ġ, Ġand Ġmore Ġrecently , ĠMemory ĠNetworks ĠB IB REF 28 Ġ. ĠGiven Ġthat Ġthese Ġapproaches Ġare Ġdata - oriented , Ġa Ġmajor Ġissue Ġis Ġto Ġcollect Ġa Ġlarge Ġcorpor a Ġof Ġannot ated Ġtask - specific Ġdialog s . ĠFor Ġthis Ġreason , Ġit Ġis Ġnot Ġtrivial Ġto Ġtransfer Ġthe Ġknowledge Ġfrom Ġone Ġto Ġdomain Ġto Ġanother . ĠIn Ġaddition , Ġit Ġmight Ġbe Ġdifficult Ġto Ġscale Ġup Ġto Ġlarger Ġsets Ġof Ġtasks . </s> Non - goal - driven Ġsystems Ġ( also Ġsometimes Ġcalled Ġreactive Ġsystems ), Ġon Ġthe Ġother Ġhand , Ġgenerate Ġutter ances Ġin Ġaccordance Ġto Ġuser Ġinput , Ġe . g . Ġlanguage Ġlearning Ġtools Ġor Ġcomputer Ġgames Ġcharacters . ĠThese Ġsystems Ġhave Ġbecome Ġmore Ġpopular Ġin Ġrecent Ġyears , Ġmainly Ġowning Ġto Ġthe Ġincrease Ġof Ġpopularity Ġof ĠNeural ĠNetworks , Ġwhich Ġis Ġalso Ġa Ġdata - oriented Ġapproach . ĠThe Ġmost Ġrecent Ġstate Ġof Ġthe Ġart Ġto Ġdevelop Ġsuch Ġsystems Ġhave Ġemployed ĠRec urrent ĠNeural ĠNet w ors Ġ( R NN ) ĠB IB REF 34 Ġ, ĠDynamic ĠContext - S ensitive ĠGeneration ĠB IB REF 35 Ġ, Ġand ĠMemory ĠNetworks ĠB IB REF 36 Ġ, Ġjust Ġto Ġname Ġa Ġfew . ĠNevertheless , Ġprob abil istic Ġmethods Ġsuch Ġas ĠHidden ĠTopic ĠMark ov ĠModels Ġ( HT MM ) ĠB IB REF 37 Ġhave Ġalso Ġbeen Ġevaluated . ĠGoal - driven Ġapproach Ġcan Ġcreate Ġboth Ġpro - active Ġand Ġreactive Ġchat bots , Ġwhile Ġnon - goal - driven Ġapproach Ġcreates Ġreactive Ġchat bots . ĠIn Ġaddition , Ġthey Ġcan Ġserve Ġas Ġa Ġtool Ġto Ġgoal - driven Ġsystems Ġas Ġin ĠB IB REF 28 Ġ. ĠThat Ġis , Ġwhen Ġtrained Ġon Ġcorpor a Ġof Ġa Ġgoal - driven Ġsystem , Ġnon - goal - driven Ġsystems Ġcan Ġbe Ġused Ġto Ġsimulate Ġuser Ġinteraction Ġto Ġthen Ġtrain Ġgoal - driven Ġmodels . </s> Types Ġof ĠContext ĠReason ing </s> A Ġdialogue Ġsystem Ġmay Ġsupport Ġthe Ġcontext Ġreasoning Ġor Ġnot . ĠContext Ġreasoning Ġis Ġnecessary Ġin Ġmany Ġoccasions . ĠFor Ġinstance , Ġwhen Ġpartial Ġinformation Ġis Ġprovided Ġthe Ġchat bot Ġneeds Ġto Ġbe Ġable Ġto Ġinteract Ġone Ġor Ġmore Ġturns Ġin Ġorder Ġto Ġget Ġthe Ġcomplete Ġinformation Ġin Ġorder Ġto Ġbe Ġable Ġto Ġproperly Ġanswer . ĠIn ĠB IB REF 38 Ġ, Ġthe Ġauthors Ġpresent Ġa Ġtax onomy Ġof Ġerrors Ġin Ġconvers ational Ġsystems . ĠThe Ġones Ġregarding Ġcontext - level Ġerrors Ġare Ġthe Ġones Ġthat Ġare Ġperceived Ġas Ġthe Ġtop - 10 Ġconfusing Ġand Ġthey Ġare Ġmainly Ġdivided Ġinto Ġthe Ġfollowing : </s> Ex cess / l ack Ġof Ġproposition : Ġthe Ġutter ance Ġdoes Ġnot Ġprovide Ġany Ġnew Ġproposition Ġto Ġthe Ġdiscourse Ġcontext Ġor Ġprovides Ġexcessive Ġinformation Ġthan Ġrequired . </s> Cont rad iction : Ġthe Ġutter ance Ġcontains Ġpropositions Ġthat Ġcontradict Ġwhat Ġhas Ġbeen Ġsaid Ġby Ġthe Ġsystem Ġor Ġby Ġthe Ġuser . </s> Non - relevant Ġtopic : Ġthe Ġtopic Ġof Ġthe Ġutter ance Ġis Ġirrelevant Ġto Ġthe Ġcurrent Ġcontext Ġsuch Ġas Ġwhen Ġthe Ġsystem Ġsuddenly Ġjumps Ġto Ġsome Ġother Ġtopic Ġtriggered Ġby Ġsome Ġparticular Ġword Ġin Ġthe Ġprevious Ġuser Ġutter ance . </s> Un clear Ġrelation : Ġalthough Ġthe Ġutter ance Ġmight Ġrelate Ġto Ġthe Ġprevious Ġuser Ġutter ance , Ġits Ġrelation Ġto Ġthe Ġcurrent Ġtopic Ġis Ġunclear . </s> Topic Ġswitch Ġerror : Ġthe Ġutter ance Ġdisplays Ġthe Ġfact Ġthat Ġthe Ġsystem Ġmissed Ġthe Ġswitch Ġin Ġtopic Ġby Ġthe Ġuser , Ġcontinuing Ġwith Ġthe Ġprevious Ġtopic . </s> Rule - oriented </s> In Ġthe Ġstate Ġof Ġthe Ġart Ġmost Ġof Ġthe Ġproposed Ġapproaches Ġfor Ġcontext Ġreasoning Ġlies Ġon Ġrules Ġusing Ġlog ics Ġand Ġknowledge Ġbases Ġas Ġdescribed Ġin Ġthe ĠRule - oriented Ġarchitecture Ġsub - section . ĠGiven Ġa Ġset Ġof Ġfacts Ġextracted Ġfrom Ġthe Ġdialogue Ġhistory Ġand Ġencoded Ġin , Ġfor Ġinstance , ĠF OL Ġstatements , Ġa Ġqueries Ġcan Ġbe Ġposed Ġto Ġthe Ġinference Ġengine Ġand Ġproduce Ġanswers . ĠFor Ġinstance , Ġsee Ġthe Ġexample Ġin ĠTable ĠT AB REF 37 Ġ. ĠThe Ġsentences Ġwere Ġextracted Ġfrom ĠB IB REF 36 Ġ( which Ġdoes Ġnot Ġuse Ġa Ġrule - oriented Ġapproach ), Ġand Ġthe Ġfirst Ġfive Ġstatements Ġare Ġtheir Ġrespective Ġfacts . ĠThe Ġsystem Ġthen Ġapply Ġcontext Ġreasoning Ġfor Ġthe Ġquery ĠQ : ĠWhere Ġis Ġthe Ġapple . </s> If Ġstatements Ġabove Ġare Ġreceived Ġon Ġthe Ġorder Ġpresent Ġin ĠTable ĠT AB REF 37 Ġ, Ġif Ġthe Ġquery ĠQ : ĠWhere Ġis Ġthe Ġapple Ġis Ġsent , Ġthe Ġinference Ġengine Ġwill Ġproduce Ġthe Ġanswer ĠA : ĠBed room Ġ( i . e ., Ġthe Ġstatement ĠIN LINE FORM 0 Ġis Ġfound Ġby Ġthe Ġmodel Ġand Ġreturned Ġas ĠTrue ). </s> Now adays , Ġthe Ġmost Ġcommon Ġway Ġto Ġstore Ġknowledge Ġbases Ġis Ġon Ġtriple Ġstores , Ġor ĠR DF Ġ( Resource ĠDescription ĠFramework ) Ġstores . ĠA Ġtriple Ġstore Ġis Ġa Ġknowledge Ġbase Ġfor Ġthe Ġstorage Ġand Ġretrieval Ġof Ġtri ples Ġthrough Ġsemantic Ġqueries . ĠA Ġtriple Ġis Ġa Ġdata Ġentity Ġcomposed Ġof Ġsubject - pred icate - object , Ġlike Ġ" Sam Ġis Ġat Ġthe Ġkitchen " Ġor Ġ" The Ġapple Ġis Ġwith ĠSam ", Ġfor Ġinstance . ĠA Ġquery Ġlanguage Ġis Ġneeded Ġfor Ġstoring Ġand Ġretrieving Ġdata Ġfrom Ġa Ġtriple Ġstore . ĠWhile ĠSP AR QL Ġis Ġa ĠR DF Ġquery Ġlanguage , ĠR ya Ġis Ġan Ġopen Ġsource Ġscalable ĠR DF Ġtriple Ġstore Ġbuilt Ġon Ġtop Ġof ĠApache ĠAcc um ulo . ĠOriginally Ġdeveloped Ġby Ġthe ĠLaboratory Ġfor ĠTele communication ĠSciences Ġand ĠUS ĠNaval ĠAcademy , ĠR ya Ġis Ġcurrently Ġbeing Ġused Ġby Ġa Ġnumber Ġof Ġameric an Ġgovernment Ġagencies Ġfor Ġstoring , Ġinf eren cing , Ġand Ġquer ying Ġlarge Ġamounts Ġof ĠR DF Ġdata . </s> A ĠSP AR QL Ġquery Ġhas Ġa ĠSQL - like Ġsyntax Ġfor Ġfinding Ġtri ples Ġmatching Ġspecific Ġpatterns . ĠFor Ġinstance , Ġsee Ġthe Ġquery Ġbelow . ĠIt Ġretrie ves Ġall Ġthe Ġpeople Ġthat Ġworks Ġat ĠIBM Ġand Ġlives Ġin ĠNew ĠYork : </s> SELECT Ġ? people </s> WHERE Ġ{ </s> ? people Ġ< works At > Ġ< IB M > Ġ. </s> ? people Ġ< l ives In > Ġ< New ĠYork >. </s> } </s> Since Ġtriple Ġstores Ġcan Ġbecome Ġhuge , ĠR ya Ġprovides Ġthree Ġtriple Ġtable Ġindex ĠB IB REF 39 Ġto Ġhelp Ġspeeding Ġup Ġqueries : </s> SP O : Ġsubject , Ġpredicate , Ġobject </s> POS : Ġpredicate , Ġobject , Ġsubject </s> OSP : Ġobject , Ġsubject , Ġpredicate </s> While ĠR ya Ġis Ġan Ġexample Ġof Ġan Ġoptimized Ġtriple Ġstore , Ġa Ġrule - oriented Ġchat bot Ġcan Ġmake Ġuse Ġof ĠR ya Ġor Ġany Ġtriple Ġstore Ġand Ġcan Ġcall Ġthe Ġsemantic Ġsearch Ġengine Ġin Ġorder Ġto Ġinference Ġand Ġgenerate Ġproper Ġanswers . </s> Data - oriented </s> Recent Ġpapers Ġhave Ġused Ġneural Ġnetworks Ġto Ġpredict Ġthe Ġnext Ġutter ance Ġon Ġnon - goal - driven Ġsystems Ġconsidering Ġthe Ġcontext , Ġfor Ġinstance Ġwith ĠMemory ĠNetworks ĠB IB REF 40 Ġ. ĠIn Ġthis Ġwork ĠB IB REF 36 Ġ, Ġfor Ġexample Ġthe Ġauthors Ġwere Ġable Ġto Ġgenerate Ġanswers Ġfor Ġdialogue Ġlike Ġbelow : </s> Sam Ġwalks Ġinto Ġthe Ġkitchen . </s> Sam Ġpicks Ġup Ġan Ġapple . </s> Sam Ġwalks Ġinto Ġthe Ġbedroom . </s> Sam Ġdrops Ġthe Ġapple . </s> Q : ĠWhere Ġis Ġthe Ġapple ? </s> A : ĠBed room </s> S uk h ba atar 's Ġmodel Ġrepresents Ġthe Ġsentence Ġas Ġa Ġvector Ġin Ġa Ġway Ġthat Ġthe Ġorder Ġof Ġthe Ġwords Ġmatter , Ġand Ġthe Ġmodel Ġenc odes Ġthe Ġtemporal Ġcontext Ġenhancing Ġthe Ġmemory Ġvector Ġwith Ġa Ġmatrix Ġthat Ġcontains Ġthe Ġtemporal Ġinformation . ĠDuring Ġthe Ġexecution Ġphase , ĠSu kh ba atar 's Ġmodel Ġtakes Ġa Ġdiscrete Ġset Ġof Ġinputs ĠIN LINE FORM 0 Ġthat Ġare Ġto Ġbe Ġstored Ġin Ġthe Ġmemory , Ġa Ġquery ĠIN LINE FORM 1 Ġ, Ġand Ġoutputs Ġan Ġanswer ĠIN LINE FORM 2 Ġ. ĠEach Ġof Ġthe ĠIN LINE FORM 3 Ġ, ĠIN LINE FORM 4 Ġ, Ġand ĠIN LINE FORM 5 Ġcontains Ġsymbols Ġcoming Ġfrom Ġa Ġdictionary Ġwith ĠIN LINE FORM 6 Ġwords . ĠThe Ġmodel Ġwrites Ġall ĠIN LINE FORM 7 Ġto Ġthe Ġmemory Ġup Ġto Ġa Ġfixed Ġbuffer Ġsize , Ġand Ġthen Ġfinds Ġa Ġcontinuous Ġrepresentation Ġfor Ġthe ĠIN LINE FORM 8 Ġand ĠIN LINE FORM 9 Ġ. ĠThe Ġcontinuous Ġrepresentation Ġis Ġthen Ġprocessed Ġvia Ġmultiple Ġcomputational Ġsteps Ġto Ġoutput ĠIN LINE FORM 10 Ġ. ĠThis Ġallows Ġback Ġpropagation Ġof Ġthe Ġerror Ġsignal Ġthrough Ġmultiple Ġmemory Ġaccess es Ġback Ġto Ġthe Ġinput Ġduring Ġtraining . ĠSu kh ba atar 's Ġalso Ġpresents Ġthe Ġstate Ġof Ġthe Ġart Ġof Ġrecent Ġefforts Ġthat Ġhave Ġexplored Ġways Ġto Ġcapture Ġdialogue Ġcontext , Ġtreated Ġas Ġlong - term Ġstructure Ġwithin Ġsequences , Ġusing ĠR NN s Ġor ĠL ST M - based Ġmodels . ĠThe Ġproblem Ġof Ġthis Ġapproach Ġis Ġthat Ġit Ġis Ġhas Ġnot Ġbeen Ġtested Ġfor Ġgoal - oriented Ġsystems . ĠIn Ġaddition , Ġit Ġworks Ġwith Ġa Ġset Ġof Ġsentences Ġbut Ġnot Ġnecessary Ġfrom Ġmulti - party Ġbots . </s> Platform s </s> Regarding Ġcurrent Ġplatforms Ġto Ġsupport Ġthe Ġdevelopment Ġof Ġconvers ational Ġsystems , Ġwe Ġcan Ġcategor ize Ġthem Ġinto Ġthree Ġtypes : Ġplatforms Ġfor Ġplug ging Ġchat bots , Ġfor Ġcreating Ġchat bots Ġand Ġfor Ġcreating Ġservice Ġchat bots . ĠThe Ġplatforms Ġfor Ġplug ging Ġchat bots Ġprovide Ġtools Ġfor Ġintegrating Ġthem Ġanother Ġsystem , Ġlike ĠSlack . ĠThe Ġchat bots Ġneed Ġto Ġreceive Ġand Ġsend Ġmessages Ġin Ġa Ġspecific Ġway , Ġwhich Ġdepends Ġon Ġthe ĠAPI Ġand Ġthere Ġis Ġno Ġsupport Ġfor Ġactually Ġhelping Ġon Ġbuilding Ġchat bots Ġbehavior Ġwith Ġnatural Ġlanguage Ġunderstanding . ĠThe Ġplatforms Ġfor Ġcreating Ġchat bots Ġmainly Ġprovide Ġtools Ġfor Ġadding Ġand Ġtraining Ġintentions Ġtogether Ġwith Ġdialogue Ġflow Ġspecification Ġand Ġsome Ġentities Ġextraction , Ġwith Ġno Ġreasoning Ġsupport . ĠOnce Ġthe Ġmodels Ġare Ġtrained Ġand Ġthe Ġdialogue Ġflow Ġspecified , Ġthe Ġchat bots Ġare Ġable Ġto Ġreply Ġto Ġthe Ġreceived Ġintention . ĠThe Ġplatforms Ġfor Ġcreating Ġservice Ġchat bots Ġprovide Ġthe Ġsame Ġfunctional ities Ġas Ġthe Ġlast Ġone Ġand Ġalso Ġprovide Ġsupport Ġfor Ġdefining Ġactions Ġto Ġbe Ġexecuted Ġby Ġthe Ġchat bots Ġwhen Ġthey Ġare Ġanswering Ġto Ġan Ġutter ance . ĠTable ĠT AB REF 43 Ġsummarizes Ġcurrent Ġplatforms Ġon Ġthe Ġmarket Ġaccordingly Ġto Ġthese Ġcategories . ĠThere Ġis Ġa Ġlack Ġon Ġplatforms Ġthat Ġallow Ġto Ġcreate Ġchat bots Ġthat Ġcan Ġbe Ġcoordinated Ġin Ġa Ġmultip arty Ġchat Ġwith Ġgovernance Ġor Ġmediation . </s> A ĠConcept ual ĠArchitecture Ġfor ĠMult ip arty - A ware ĠChat bots </s> In Ġthis Ġsection Ġthe Ġconceptual Ġarchitecture Ġfor Ġcreating Ġa Ġhybrid Ġrule Ġand Ġmachine Ġlearning - based ĠMP CS Ġis Ġpresented . ĠThe ĠMP CS Ġis Ġdefined Ġby Ġthe Ġthe Ġentities Ġand Ġrelationships Ġillustrated Ġin ĠFig . ĠFIG REF 44 Ġwhich Ġrepresents Ġthe Ġchat bot 's Ġknowledge . ĠA ĠChat ĠGroup Ġcontains Ġseveral ĠMembers Ġthat Ġjoin Ġthe Ġgroup Ġwith Ġa ĠRole . ĠThe Ġrole Ġmay Ġconst rain Ġthe Ġbehavior Ġof Ġthe Ġmember Ġin Ġthe Ġgroup . ĠChat bot Ġis Ġa Ġtype Ġof ĠRole , Ġto Ġdifferentiate Ġfrom Ġpersons Ġthat Ġmay Ġalso Ġjoin Ġwith Ġdifferent Ġroles . ĠFor Ġinstance , Ġa Ġperson Ġmay Ġassume Ġthe Ġrole Ġof Ġthe Ġowner Ġof Ġthe Ġgroup , Ġor Ġsomeone Ġthat Ġwas Ġinvited Ġby Ġthe Ġowner , Ġor Ġa Ġdomain Ġrole Ġlike Ġan Ġexpert , Ġteacher Ġor Ġother . </s> When Ġa ĠMember Ġjoins Ġthe ĠChat ĠGroup , Ġit / he / she Ġcan Ġsend ĠUt ter ances . ĠThe ĠMember Ġthen Ġclass ifies Ġeach ĠUt ter ance Ġwith Ġan ĠIntent Ġwhich Ġhas Ġa ĠSpeech ĠAct . ĠThe ĠIntent Ġclass , ĠSpeech ĠAct Ġclass Ġand Ġthe ĠIntent ĠFlow Ġtrigger Ġthe ĠAction Ġclass Ġto Ġbe Ġexecuted Ġby Ġthe ĠMember Ġthat Ġis Ġa ĠChat bot . ĠThe ĠChat bots Ġassociated Ġto Ġthe ĠInt ention Ġare Ġthe Ġonly Ġones Ġthat Ġknow Ġhow Ġto Ġanswer Ġto Ġit Ġby Ġexecuting ĠActions . ĠThe ĠAction , Ġwhich Ġimplements Ġone ĠSpeech ĠAct , Ġproduces Ġanswers Ġwhich Ġare ĠUt ter ances , Ġso , Ġfor Ġinstance , Ġthe ĠGet _ News Ġaction Ġproduces Ġan ĠUt ter ance Ġfor Ġwhich ĠInt ention 's Ġspeech Ġact Ġis ĠInform _ News . ĠThe ĠIntent ĠFlow Ġholds Ġthe Ġintent 's Ġclass Ġconversation Ġgraph Ġwhich Ġmaps Ġthe Ġdialog Ġstate Ġas Ġa Ġdecision Ġtree . ĠThe Ġanswer 's Ġintention Ġclass Ġis Ġmapped Ġin Ġthe ĠIntent ĠFlow Ġas Ġa Ġdirected Ġgraph ĠG Ġdefined Ġas Ġfollowing : ĠDIS PLAY FORM 0 </s> From Ġthe Ġgraph Ġdefinitions , ĠIN LINE FORM 0 Ġis Ġfor Ġvert ices Ġand ĠIN LINE FORM 1 Ġis Ġfor Ġrelations , Ġwhich Ġare Ġthe Ġarrows Ġin Ġthe Ġgraph . ĠAnd Ġin ĠEqu ation ĠEQ REF 46 Ġ: </s> IN LINE FORM 0 Ġis Ġthe Ġset Ġof Ġintentions Ġpairs , </s> IN LINE FORM 0 Ġis Ġthe Ġset Ġof Ġpaths Ġto Ġnavigate Ġthrough Ġthe Ġintentions , </s> IN LINE FORM 0 Ġis Ġthe Ġarrow 's Ġhead , Ġand </s> IN LINE FORM 0 Ġis Ġthe Ġarrow 's Ġtail . </s> This Ġarrow Ġrepresents Ġa Ġturn Ġfrom Ġan Ġutter ance Ġwith ĠIN LINE FORM 0 Ġintention Ġclass Ġwhich Ġis Ġrep lying Ġto Ġan Ġutter ance Ġwith ĠIN LINE FORM 1 Ġintention Ġclass Ġto Ġthe Ġstate Ġwhich Ġan Ġutter ance Ġwith ĠIN LINE FORM 2 Ġintention 's Ġclass Ġis Ġsent . </s> IN LINE FORM 0 Ġis Ġthe Ġintention Ġclass Ġof Ġthe Ġanswer Ġto Ġbe Ġprovided Ġto Ġthe Ġreceived ĠIN LINE FORM 1 Ġintention Ġclass . </s> In Ġaddition , Ġeach Ġintent 's Ġclass Ġmay Ġrefer Ġto Ġmany ĠEnt ities Ġwhich , Ġin Ġturn , Ġmay Ġbe Ġassociated Ġto Ġseveral ĠFeatures . ĠFor Ġinstance , Ġthe Ġutter ance </s> " I Ġwould Ġlike Ġto Ġinvest ĠUSD 10 , 000 Ġin ĠSavings ĠAccount Ġfor Ġ2 Ġyears " </s> cont ains Ġone Ġentity ĠâĢĵ Ġthe ĠSavings ĠAccount 's Ġinvestment Ġoption ĠâĢĵ Ġand Ġtwo Ġfeatures ĠâĢĵ Ġmoney Ġ( USD 10 , 000 ) Ġand Ġperiod Ġof Ġtime Ġ( 2 Ġyears ). ĠThe ĠIntent ĠFlow Ġmay Ġneed Ġthis Ġinformation Ġto Ġchoose Ġthe Ġnext Ġnode Ġwhich Ġwill Ġgive Ġthe Ġnext Ġanswer . ĠTherefore , Ġif Ġthe Ġexample Ġis Ġchanged Ġa Ġlittle , Ġlike </s> " I Ġwould Ġlike Ġto Ġinvest Ġin ĠSavings ĠAccount ", </s> IN LINE FORM 0 Ġis Ġconstrained Ġby Ġthe Ġ" Sav ings ĠAccount " Ġentity Ġwhich Ġrequires Ġthe Ġtwo Ġaforementioned Ġfeatures . ĠHence , Ġa Ġpossible Ġanswer Ġby Ġone ĠMember Ġof Ġthe Ġgroup Ġwould Ġbe </s> " Sure , ĠI Ġcan Ġsimulate Ġfor Ġyou , Ġwhat Ġwould Ġbe Ġthe Ġinitial Ġamount Ġand Ġthe Ġperiod Ġof Ġtime Ġof Ġthe Ġinvestment ?" </s> With Ġthese Ġconceptual Ġmodel 's Ġelements , Ġa ĠMP CS Ġsystem Ġcan Ġbe Ġbuilt Ġwith Ġmultiple Ġchat bots . ĠNext Ġsubsection Ġfurther Ġdescribes Ġthe Ġcomponents Ġworkflow . </s> Work flow </s> Figure ĠFIG REF 48 Ġillustrates Ġfrom Ġthe Ġmoment Ġthat Ġan Ġutter ance Ġis Ġsent Ġin Ġa Ġchat Ġgroup Ġto Ġthe Ġmoment Ġa Ġreply Ġis Ġgenerated Ġin Ġthe Ġsame Ġchat Ġgroup , Ġif Ġthe Ġcase . ĠOne Ġor Ġmore Ġperson Ġmay Ġbe Ġin Ġthe Ġchat , Ġwhile Ġone Ġor Ġmore Ġchat bots Ġtoo . ĠThere Ġis Ġa ĠHub Ġthat Ġis Ġresponsible Ġfor Ġbroadcasting Ġthe Ġmessages Ġto Ġevery ĠMember Ġin Ġthe Ġgroup , Ġif Ġthe Ġcase . ĠThe Ġflow Ġstarts Ġwhen Ġa ĠMember Ġsends Ġthe Ġutter ance Ġwhich Ġgoes Ġto Ġthe ĠHub Ġand , Ġif Ġallowed , Ġis Ġbroadcast ed . ĠMany Ġor Ġnone Ġinteractions Ġnorms Ġcan Ġbe Ġenforced Ġat Ġthis Ġlevel Ġdepending Ġon Ġthe Ġapplication . ĠHere in , Ġa Ġnorm Ġcan Ġbe Ġa Ġprohibition , Ġobligation Ġor Ġpermission Ġto Ġsend Ġan Ġutter ance Ġin Ġthe Ġchat Ġgroup . </s> Once Ġthe Ġutter ance Ġis Ġbroadcast ed , Ġa Ġchat bot Ġneeds Ġto Ġhandle Ġthe Ġutter ance . ĠIn Ġorder Ġto Ġproperly Ġhandle Ġit , Ġthe Ġchat bot Ġpars es Ġthe Ġutter ance Ġwith Ġseveral Ġpars ers Ġin Ġthe ĠPars ing Ġphase : Ġa ĠTopic ĠClass ifier , Ġthe ĠDepend ency ĠPars ing , Ġwhich Ġincludes ĠPart - of - Spe ech Ġtags Ġand Ġsemantics Ġtags , Ġand Ġany Ġother Ġthat Ġcan Ġextract Ġmetadata Ġfrom Ġthe Ġutter ance Ġuseful Ġfor Ġthe Ġreasoning . ĠAll Ġthese Ġmetadata , Ġtogether Ġwith Ġmore Ġcriteria , Ġmay Ġbe Ġused Ġin Ġthe ĠFrame Ġparsing Ġwhich Ġis Ġuseful Ġfor Ġcontext Ġreasoning . ĠAll Ġknowledge Ġgenerated Ġin Ġthis Ġphase Ġcan Ġbe Ġstored Ġin Ġthe ĠContext . ĠThen , Ġthe ĠIntent ĠClass ifier Ġtries Ġto Ġdetect Ġthe Ġintent Ġclass Ġof Ġthe Ġutter ance . ĠIf Ġdetected , Ġthe ĠSpeech ĠAct Ġis Ġalso Ġretrieved . ĠAnd Ġan ĠEvent ĠDet ector Ġcan Ġalso Ġcheck Ġif Ġthere Ġis Ġany Ġdialog Ġinconsistency Ġduring Ġthis Ġphase . </s> After Ġthat , Ġthe ĠFil tering Ġphase Ġreceives Ġthe Ġobject Ġcontaining Ġthe Ġutter ance , Ġthe Ġdetected Ġintent , Ġand Ġall Ġmetadata Ġextracted Ġso Ġfar Ġand Ġdecides Ġif Ġan Ġaction Ġshould Ġbe Ġperformed Ġto Ġreply Ġto Ġthe Ġutter ance . ĠIf Ġyes , Ġit Ġis Ġsent Ġto Ġthe ĠActing Ġphase Ġwhich Ġperforms Ġseveral Ġsteps . ĠFirst Ġthe ĠAction ĠClass ifier Ġtries Ġto Ġdetect Ġthe Ġaction Ġto Ġbe Ġperformed . ĠIf Ġdetected , Ġthe Ġaction Ġis Ġexecuted . ĠAt Ġthis Ġstep , Ġmany Ġsubst eps Ġmay Ġbe Ġperformed , Ġlike Ġsearching Ġfor Ġan Ġinformation , Ġcomputing Ġmaths , Ġor Ġgenerating Ġinformation Ġto Ġcreate Ġthe Ġanswer . ĠAll Ġof Ġthis Ġmay Ġrequire Ġa Ġsearch Ġin Ġthe ĠContext Ġand Ġalso Ġmay Ġactivate Ġthe ĠError ĠDet ector Ġcomponent Ġto Ġcheck Ġif Ġthe Ġdialog Ġdid Ġnot Ġrun Ġinto Ġa Ġwrong Ġstate . ĠAfter Ġthe Ġanswer Ġis Ġgenerated , Ġthe ĠFil tering Ġphase Ġis Ġactivated Ġagain Ġto Ġcheck Ġif Ġthe Ġreply Ġshould Ġbe Ġreally Ġsent . ĠIf Ġso , Ġit Ġis Ġsent Ġto Ġthe ĠHub Ġwhich , Ġagain Ġmay Ġcheck Ġif Ġit Ġcan Ġbe Ġbroadcast ed Ġbefore Ġactually Ġdoing Ġit . </s> The Ġtopic Ġclass ifier Ġis Ġdomain - dependent Ġand Ġis Ġnot Ġmandatory . ĠHowever , Ġthe Ġchat bot Ġcan Ġbetter Ġreact Ġwhen Ġthe Ġintent Ġor Ġaction Ġis Ġnot Ġdetected , Ġwhich Ġmeans Ġthat Ġit Ġdoes Ġnot Ġknow Ġhow Ġto Ġanswer . ĠMany Ġreasons Ġmight Ġexplain Ġthis Ġsituation : Ġthe Ġset Ġof Ġint ents Ġmight Ġbe Ġincomplete , Ġthe Ġaction Ġmight Ġnot Ġhave Ġproduced Ġthe Ġproper Ġbehavior , Ġmisunderstanding Ġmight Ġhappen , Ġor Ġthe Ġchat bot Ġwas Ġnot Ġdesigned Ġto Ġreply Ġto Ġa Ġparticular Ġtopic . ĠIn Ġall Ġcases , Ġit Ġmust Ġbe Ġable Ġto Ġproduce Ġa Ġproper Ġreply , Ġif Ġneeded . ĠBecause Ġthis Ġmight Ġhappen Ġthroughout Ġthe Ġworkflow , Ġthe Ġsooner Ġthat Ġinformation Ġis Ġavailable , Ġthe Ġbetter Ġthe Ġchat bot Ġreacts . ĠTherefore Ġit Ġis Ġone Ġof Ġthe Ġfirst Ġexecutions Ġof Ġthe Ġflow . </s> D epend ency Ġis Ġthe Ġnotion Ġthat Ġlinguistic Ġunits , Ġe . g . Ġwords , Ġare Ġconnected Ġto Ġeach Ġother Ġby Ġdirected Ġlinks . ĠThe Ġ( f inite ) Ġverb Ġis Ġtaken Ġto Ġbe Ġthe Ġstructural Ġcenter Ġof Ġclause Ġstructure . ĠAll Ġother Ġsynt actic Ġunits Ġ( words ) Ġare Ġeither Ġdirectly Ġor Ġindirectly Ġconnected Ġto Ġthe Ġverb Ġin Ġterms Ġof Ġthe Ġdirected Ġlinks , Ġwhich Ġare Ġcalled Ġdependencies . ĠIt Ġis Ġa Ġone - to - one Ġcorrespondence : Ġfor Ġevery Ġelement Ġ( e . g . Ġword Ġor Ġmorph ) Ġin Ġthe Ġsentence , Ġthere Ġis Ġexactly Ġone Ġnode Ġin Ġthe Ġstructure Ġof Ġthat Ġsentence Ġthat Ġcorresponds Ġto Ġthat Ġelement . ĠThe Ġresult Ġof Ġthis Ġone - to - one Ġcorrespondence Ġis Ġthat Ġdependency Ġgram m ars Ġare Ġword Ġ( or Ġmorph ) Ġgram m ars . ĠAll Ġthat Ġexist Ġare Ġthe Ġelements Ġand Ġthe Ġdependencies Ġthat Ġconnect Ġthe Ġelements Ġinto Ġa Ġstructure . ĠDepend ency Ġgrammar Ġ( D G ) Ġis Ġa Ġclass Ġof Ġmodern Ġsynt actic Ġtheories Ġthat Ġare Ġall Ġbased Ġon Ġthe Ġdependency Ġrelation . </s> Sem antic Ġdependencies Ġare Ġunderstood Ġin Ġterms Ġof Ġpred icates Ġand Ġtheir Ġarguments . ĠMorph ological Ġdependencies Ġobtain Ġbetween Ġwords Ġor Ġparts Ġof Ġwords . ĠTo Ġfacilitate Ġfuture Ġresearch Ġin Ġun super vised Ġinduction Ġof Ġsynt actic Ġstructure Ġand Ġto Ġstandard ize Ġbest - pract ices , Ġa Ġtag set Ġthat Ġconsists Ġof Ġtwelve Ġuniversal Ġpart - of - speech Ġcategories Ġwas Ġproposed ĠB IB REF 41 Ġ. </s> D epend ency Ġpars ers Ġhave Ġto Ġcope Ġwith Ġa Ġhigh Ġdegree Ġof Ġambiguity Ġand Ġnond etermin ism Ġwhich Ġlet Ġto Ġdifferent Ġtechniques Ġthan Ġthe Ġones Ġused Ġfor Ġparsing Ġwell - defined Ġformal Ġlanguages . ĠCurrently Ġthe Ġmainstream Ġapproach Ġuses Ġalgorithms Ġthat Ġderive Ġa Ġpotentially Ġvery Ġlarge Ġset Ġof Ġanalyses Ġin Ġparallel Ġand Ġwhen Ġdis amb ig uation Ġis Ġrequired , Ġthis Ġapproach Ġcan Ġbe Ġcoupled Ġwith Ġa Ġstatistical Ġmodel Ġfor Ġparse Ġselection Ġthat Ġranks Ġcompeting Ġanalyses Ġwith Ġrespect Ġto Ġplaus ibility ĠB IB REF 42 Ġ. </s> Below Ġwe Ġpresent Ġan Ġexample Ġof Ġa Ġdependency Ġtree Ġfor Ġthe Ġutter ance : </s> " I Ġwant Ġto Ġinvest Ġ10 Ġthousands ": </s> [ s ] "" blue [ l ]: black </s> " tree ": Ġ{ </s> " want ĠVER B ĠRO OT ": Ġ{ </s> " I ĠPR ON Ġn sub j ": Ġ{ }, </s> " to ĠAD P Ġmark ": Ġ{ }, </s> " invest ĠVER B Ġn mod ": Ġ{ </s> " th ousands ĠN OUN Ġn mod ": Ġ{ </s> " 10 ĠNUM Ġnum mod ": Ġ{} </s> } </s> } </s> } </s> The Ġcoarse - gr ained Ġpart - of - speech Ġtags , Ġor Ġmorph ological Ġdependencies Ġ( VER B , ĠPR ON , ĠAD P , ĠN OUN Ġand ĠNUM ) Ġencode Ġbasic Ġgram matical Ġcategories Ġand Ġthe Ġgram matical Ġrelationships Ġ( ns ub js , Ġn mod , Ġnum mod ) Ġare Ġdefined Ġin Ġthe ĠUniversal ĠDepend encies Ġproject ĠB IB REF 41 Ġ. </s> In Ġthis Ġmodule , Ġthe Ġdependency Ġtree Ġgenerated Ġis Ġused Ġtogether Ġwith Ġa Ġset Ġof Ġrules Ġto Ġextract Ġinformation Ġthat Ġis Ġsaved Ġin Ġthe Ġcontext Ġusing Ġthe ĠFrame - based Ġapproach . ĠThis Ġapproach Ġfills Ġthe Ġslots Ġof Ġthe Ġframe Ġwith Ġthe Ġextracted Ġvalues Ġfrom Ġthe Ġdialogue . ĠFrames Ġare Ġlike Ġforms Ġand Ġslots Ġare Ġlike Ġfields . ĠUsing Ġthe Ġknowledge 's Ġconceptual Ġmodel , Ġthe Ġfields Ġare Ġrepresented Ġby Ġthe Ġelements ĠEnt ities Ġand ĠFeatures . ĠIn Ġthe Ġdependency Ġtree Ġexample , Ġthe Ġentity Ġwould Ġbe Ġthe Ġimplicit Ġconcept : Ġthe Ġinvestment Ġoption , Ġand Ġthe Ġfeature Ġis Ġthe Ġimplicit Ġconcept : Ġinitial Ġamount ĠâĢĵ Ġ10 Ġthousands . ĠSince Ġthe Ġgoal Ġis Ġto Ġinvest , Ġand Ġthere Ġare Ġmore Ġentities Ġneeded Ġfor Ġthat Ġ( i . e ., Ġfields Ġto Ġbe Ġfilled ), Ġthe Ġnext Ġnode Ġin Ġthe ĠInt ention ĠFlow Ġtree Ġwould Ġreturn Ġan Ġutter ance Ġwhich Ġasks Ġthe Ġuser Ġthe Ġtime Ġof Ġinvestment , Ġif Ġhe / she Ġhas Ġnot Ġprovided Ġyet . </s> This Ġmodule Ġcould Ġbe Ġimplemented Ġusing Ġdifferent Ġapproaches Ġaccording Ġto Ġthe Ġdomain , Ġbut Ġtree Ġsearch Ġalgorithms Ġwill Ġbe Ġnecessary Ġfor Ġdoing Ġthe Ġtree Ġparsing . </s> The ĠIntent ĠClass ifier Ġcomponent Ġaims Ġat Ġrecognizing Ġnot Ġonly Ġthe ĠIntent Ġbut Ġthe Ġgoal Ġof Ġthe Ġutter ance Ġsent Ġby Ġa ĠMember , Ġso Ġit Ġcan Ġproperly Ġreact . ĠThe Ġdevelopment Ġof Ġan Ġintent Ġclass ifier Ġneeds Ġto Ġdeal Ġwith Ġthe Ġfollowing Ġsteps : </s> i ) Ġthe Ġcreation Ġof Ġdataset Ġof Ġint ents , Ġto Ġtrain Ġthe Ġclassification Ġalgorithm ; </s> ii ) Ġthe Ġdesign Ġof Ġa Ġclassification Ġalgorithm Ġthat Ġprovides Ġa Ġreasonable Ġlevel Ġof Ġaccuracy ; </s> iii ) Ġthe Ġcreation Ġof Ġdataset Ġof Ġtrees Ġof Ġint ents , Ġthe Ġsame Ġas Ġdefined Ġin Ġi ) Ġand Ġwhich Ġmaps Ġthe Ġgoals ; </s> iv ) Ġthe Ġdesign Ġof Ġa Ġplan - graph Ġsearch Ġalgorithm Ġthat Ġmaps Ġthe Ġgoal 's Ġstate Ġto Ġa Ġnode Ġin Ġthe Ġgraph ; </s> There Ġare Ġseveral Ġapproaches Ġto Ġcreate Ġtraining Ġsets Ġfor Ġdialog ues : Ġfrom Ġan Ġincremental Ġapproach Ġto Ġcrowds ourcing . ĠIn Ġthe Ġincremental Ġapproach , Ġthe ĠWizard Ġof ĠOz Ġmethod Ġcan Ġbe Ġapplied Ġto Ġa Ġset Ġof Ġpotential Ġusers Ġof Ġthe Ġsystem , Ġand Ġfrom Ġthis Ġstudy , Ġa Ġset Ġof Ġquestions Ġthat Ġthe Ġusers Ġasked Ġposted Ġto Ġthe Ġ` fake ' Ġsystem Ġcan Ġbe Ġcollected . ĠThese Ġquestions Ġhave Ġto Ġbe Ġmanually Ġclassified Ġinto Ġa Ġset Ġof Ġintent Ġclasses , Ġand Ġused Ġto Ġtrain Ġthe Ġfirst Ġversion Ġof Ġthe Ġsystem . ĠNext , Ġthis Ġset Ġhas Ġto Ġbe Ġincreased Ġboth Ġin Ġterms Ġof Ġnumber Ġof Ġclasses Ġand Ġsamples Ġper Ġclass . </s> The ĠSpeech ĠAct ĠClass ifier Ġcan Ġbe Ġimplemented Ġwith Ġmany Ġspeech Ġact Ġclasses Ġas Ġneeded Ġby Ġthe Ġapplication . ĠThe Ġmore Ġclasses , Ġthe Ġmore Ġflexible Ġthe Ġchat bot Ġis . ĠIt Ġcan Ġbe Ġbuilt Ġbased Ġon Ġdiction aries , Ġor Ġa Ġmachine Ġlearning - based Ġclass ifier Ġcan Ġbe Ġtrained . ĠIn Ġthe Ġtable Ġbelow Ġwe Ġpresent Ġthe Ġmain Ġand Ġmore Ġgeneral Ġspeech Ġact Ġclasses ĠB IB REF 43 Ġused Ġin Ġthe ĠChat bots Ġwith Ġexamples Ġto Ġdifferentiate Ġone Ġfrom Ġanother : </s> There Ġare Ġat Ġleast Ġas Ġmany ĠAction Ġclasses Ġas ĠSpeech ĠAct Ġclasses , Ġsince Ġthe Ġaction Ġis Ġthe Ġrealization Ġof Ġa Ġspeech Ġact . ĠThe Ġdomain Ġspecific Ġclasses , Ġlike Ġ" In form _ News " Ġor Ġ" In form _ Fact oids ", Ġenhance Ġthe Ġcapabilities Ġof Ġanswering Ġof Ġa Ġchat bot . </s> The ĠAction ĠClass ifier Ġcan Ġbe Ġdefined Ġas Ġa Ġmulti - class Ġclass ifier Ġwith Ġthe Ġtuple ĠDIS PLAY FORM 0 </s> where ĠIN LINE FORM 0 Ġis Ġthe Ġintent Ġof Ġthe Ġanswer Ġdefined Ġin Ġ( ĠEQ REF 46 Ġ), ĠIN LINE FORM 1 Ġis Ġthe Ġspeech Ġact Ġof Ġthe Ġanswer , ĠIN LINE FORM 2 Ġand ĠIN LINE FORM 3 Ġare Ġthe Ġsets Ġof Ġentities Ġand Ġfeatures Ġneeded Ġto Ġproduce Ġthe Ġanswer , Ġif Ġneeded , Ġrespectively . </s> This Ġcomponent Ġis Ġresponsible Ġfor Ġimplementing Ġthe Ġbehavior Ġof Ġthe ĠAction Ġclass . ĠBasic Ġbehaviors Ġmay Ġexist Ġand Ġbe Ġshared Ġamong Ġdifferent Ġchat bots , Ġlike Ġthe Ġones Ġthat Ġimplement Ġthe Ġgreet ings , Ġthanks Ġor Ġnot Ġunderstood . ĠAlthough Ġthey Ġcan Ġbe Ġgeneric , Ġthey Ġcan Ġalso Ġbe Ġpersonalized Ġto Ġdifferentiate Ġthe Ġbot Ġfrom Ġone Ġanother Ġand Ġalso Ġto Ġmake Ġit Ġmore Ġ" real ". ĠOther Ġcases Ġlike Ġto Ġinform , Ġto Ġsend Ġa Ġquery , Ġto Ġsend Ġa Ġproposal , Ġthey Ġare Ġall Ġdomain - dependent Ġand Ġmay Ġrequire Ġspecific Ġimplementations . </s> Anyway , Ġfigure ĠFIG REF 59 Ġshows Ġat Ġthe Ġhigh Ġlevel Ġthe Ġgeneric Ġworkflow . ĠIf Ġaction Ġclass Ġdetected Ġis Ġtask - oriented , Ġthe Ġsystem Ġwill Ġimplement Ġthe Ġexecution Ġof Ġthe Ġtask , Ġsay Ġto Ġguide Ġa Ġcar , Ġto Ġmove Ġa Ġrobot 's Ġarm , Ġor Ġto Ġcompute Ġthe Ġreturn Ġof Ġinvestments . ĠThe Ġexecution Ġmight Ġneed Ġto Ġaccess Ġan Ġexternal Ġservice Ġin Ġthe ĠInternet Ġin Ġorder Ġto Ġcomplete Ġthe Ġtask , Ġlike Ġgetting Ġthe Ġinflation Ġrate , Ġor Ġthe Ġinterest Ġrate , Ġor Ġto Ġget Ġinformation Ġabout Ġthe Ġenvironment , Ġor Ġany Ġexternal Ġfactor . ĠDuring Ġthe Ġexecution Ġor Ġafter Ġit Ġis Ġfinished , Ġthe Ġutter ance Ġis Ġgenerated Ġas Ġa Ġreply Ġand , Ġif Ġno Ġmore Ġtasks Ġare Ġneeded , Ġthe Ġaction Ġexecution Ġis Ġfinished . </s> In Ġthe Ġcase Ġof Ġcoordination Ġof Ġchat bots , Ġone Ġor Ġmore Ġchat bots Ġwith Ġthe Ġrole Ġof Ġmedi ator Ġmay Ġexist Ġin Ġthe Ġchat Ġgroup Ġand , Ġat Ġthis Ġstep , Ġit Ġis Ġable Ġto Ġinvite Ġone Ġor Ġmore Ġchat bots Ġto Ġthe Ġchat Ġgroup Ġand Ġit Ġis Ġalso Ġable Ġto Ġredirect Ġthe Ġutter ances , Ġif Ġthe Ġcase . </s> The Ġproposed Ġarchitecture Ġaddresses Ġthe Ġchallenges Ġas Ġthe Ġfollowing : </s> What Ġis Ġthe Ġmessage / utter ance Ġabout ? Ġsolved Ġby Ġthe ĠPars ing Ġphase ; </s> Who Ġshould Ġreply Ġto Ġthe Ġutter ance ? Ġsolved Ġby Ġthe ĠFil tering Ġphase Ġand Ġmay Ġbe Ġenforced Ġby Ġthe ĠHub ; </s> How Ġthe Ġreply Ġshould Ġbe Ġbuilt / generated ? Ġsolved Ġby Ġthe ĠActing Ġphase ; </s> When Ġshould Ġthe Ġreply Ġbe Ġsent ? Ġmay Ġbe Ġsolved Ġby Ġthe ĠActing Ġphase Ġor Ġthe ĠFil tering Ġphase , Ġand Ġmay Ġbe Ġenforced Ġby Ġthe ĠHub ; </s> And ĠContext Ġand ĠLog ging Ġmodule Ġis Ġused Ġthroughout Ġall Ġphases . </s> Arch itect ure ĠImplementation Ġand ĠEvaluation </s> This Ġsection Ġpresents Ġone Ġimplementation Ġof Ġthe Ġconceptual Ġarchitecture Ġpresented Ġin Ġlast Ġsection . ĠAfter Ġmany Ġref actor ings , Ġa Ġframework Ġcalled ĠSA BI A Ġ( Spe ech - Act - Based ĠIntelligent ĠAgents ĠFramework ) Ġhas Ġbeen Ġdeveloped Ġand ĠCogn IA Ġ( C ognitive ĠInvestment ĠAdvisor ) Ġapplication Ġhas Ġbeen Ġdeveloped Ġas Ġan Ġinstant iation Ġof ĠSA BI A Ġframework . ĠWe Ġpresent Ġthen Ġthe Ġaccuracy Ġand Ġsome Ġautomated Ġtests Ġof Ġthis Ġimplementation . </s> Spe ech - Act - based ĠIntelligent ĠAgents ĠFramework </s> SA BI A Ġwas Ġdeveloped Ġon Ġtop Ġof ĠAk ka Ġmiddle ware . ĠAk ka Ġis Ġa Ġtool kit Ġand Ġruntime Ġthat Ġimplements Ġthe ĠActor ĠModel Ġon Ġthe ĠJ VM . ĠAk ka 's Ġfeatures , Ġlike Ġconc urrency , Ġdistributed Ġcomputing , Ġresilience , Ġand Ġmessage - pass ing Ġwere Ġinspired Ġby ĠEr lang 's Ġactor Ġmodel ĠB IB REF 44 ĠB IB REF 45 Ġ. ĠThe Ġactor Ġmodel Ġis Ġa Ġmathematical Ġmodel Ġof Ġconcurrent Ġcomputation Ġthat Ġtreats Ġ" act ors " Ġas Ġthe Ġuniversal Ġprim itives Ġof Ġconcurrent Ġcomputation . ĠIn Ġresponse Ġto Ġa Ġmessage Ġthat Ġit Ġreceives , Ġan Ġactor Ġcan : Ġmake Ġlocal Ġdecisions , Ġcreate Ġmore Ġactors , Ġsend Ġmore Ġmessages , Ġand Ġdetermine Ġhow Ġto Ġrespond Ġto Ġthe Ġnext Ġreceived Ġmessage . ĠAct ors Ġmay Ġmodify Ġprivate Ġstate , Ġbut Ġcan Ġonly Ġaffect Ġeach Ġother Ġthrough Ġmessages Ġ( avoid ing Ġthe Ġneed Ġfor Ġany Ġlocks ). ĠAk ka Ġmiddle ware Ġmanages Ġthe Ġactors Ġlife Ġcycle Ġand Ġactors Ġlook Ġup Ġby Ġtheirs Ġname , Ġlocally Ġor Ġremotely . </s> We Ġimplemented Ġeach ĠMember Ġof Ġthe ĠChat ĠGroup Ġas Ġan ĠActor Ġby Ġextending Ġthe ĠUnt yp ed Actor Ġclass Ġof ĠAk ka Ġmiddle ware . ĠYet , Ġwe Ġcreated Ġand Ġimplemented Ġthe ĠSab ia Actor System Ġas Ġa Ġsingle ton Ġ( i . e ., Ġa Ġsingle Ġinstance Ġof Ġit Ġexists Ġin Ġthe Ġsystem ) ĠB IB REF 46 Ġthat Ġhas Ġa Ġreference Ġto ĠAk ka 's ĠActor System . ĠDuring ĠSab ia Actor System 's Ġinitialization , Ġall Ġpars ers Ġthat Ġconsume Ġtoo Ġmuch Ġmemory Ġduring Ġtheir Ġinitialization Ġto Ġload Ġmodels Ġare Ġinstant iated Ġas Ġsing let ons . ĠIn Ġthis Ġway , Ġwe Ġsave Ġtime Ġon Ġtheir Ġcalls Ġduring Ġthe Ġruntime . ĠMoreover , Ġall Ġchat Ġgroup Ġmanagement , Ġlike Ġto Ġjoin Ġor Ġleave Ġthe Ġgroup , Ġor Ġto Ġbroadcast Ġor Ġfilter Ġa Ġmessage Ġat Ġthe ĠHub Ġlevel Ġis Ġimplemented Ġin ĠSA BI A Ġthrough Ġthe ĠChat ĠGroup Ġbehavior . </s> This Ġis Ġimplemented Ġin ĠSA BI A Ġas Ġa Ġsingle ton Ġthat Ġis Ġinitialized Ġduring Ġthe ĠSab ia Actor System Ġinitialization Ġwith Ġthe ĠURL Ġof Ġthe Ġservice Ġthat Ġimplements Ġthe Ġdependency Ġparsing Ġand Ġis Ġused Ġon Ġeach Ġutter ance 's Ġarrival Ġthrough Ġthe Ġexecution Ġof Ġthe Ġtag Ut ter ance Ġmethod . ĠThe Ġservice Ġmust Ġretrieve Ġa ĠJSON ĠObject Ġwith Ġthe Ġdependency Ġtree Ġwhich Ġis Ġthen Ġparsed Ġusing Ġdepth - first Ġsearch . </s> SA BI A Ġdoes Ġnot Ġsupport Ġinvari ants Ġfor Ġframe Ġparsing . ĠWe Ġare Ġleaving Ġthis Ġtask Ġto Ġthe Ġinstant iated Ġapplication . </s> There Ġare Ġtwo Ġintent Ġclass ifiers Ġthat Ġcan Ġbe Ġloaded Ġwith Ġtrained Ġmodels Ġin Ġorder Ġto Ġbe Ġready Ġto Ġbe Ġused Ġat Ġruntime : Ġthe Ġ1 - ne arest - ne igh bor Ġ( 1 NN ) Ġand Ġthe ĠS VM - based Ġclass ifier . </s> SA BI A Ġimplements Ġthe ĠAction ĠClass ifier Ġassuming Ġthat Ġthe Ġapplication Ġuses Ġa Ġrelational Ġdatabase Ġwith Ġa Ġdata Ġschema Ġthat Ġimplements Ġthe Ġconceptual Ġmodel Ġpresented Ġin ĠFigure ĠFIG REF 44 Ġ. ĠThen Ġthe Ġinvari ants Ġparts Ġthat Ġuse ĠSQL Ġare Ġalready Ġpresent Ġand Ġthe Ġapplication Ġonly Ġneeds Ġto Ġimplement Ġthe Ġdatabase Ġconnection Ġand Ġfollow Ġthe Ġrequired Ġdata Ġschema . </s> SA BI A Ġprovides Ġpartial Ġimplemented Ġbehavior Ġfor Ġthe ĠAction Ġthrough Ġthe ĠTemplate Ġmethod Ġdesign Ġpattern ĠB IB REF 46 Ġ, Ġwhich Ġimplements Ġthe Ġinvari ants Ġparts Ġof Ġthe Ġaction Ġexecution Ġand Ġleaves Ġplace holders Ġfor Ġcustomization . </s> C ogn IA : ĠA ĠCognitive ĠInvestment ĠAdvisor </s> We Ġdeveloped ĠCogn IA , Ġwhich Ġis Ġan Ġinstant iation Ġof ĠSab ia Ġframework . ĠA Ġconversation Ġis Ġcomposed Ġof Ġa Ġgroup Ġchat Ġthat Ġcan Ġcontain Ġmultiple Ġusers Ġand Ġmultiple Ġchat bots . ĠThis Ġexample , Ġin Ġparticular , Ġhas Ġa Ġmedi ator Ġthat Ġcan Ġhelp Ġusers Ġon Ġfinancial Ġmatters , Ġmore Ġspecifically Ġon Ġinvestment Ġoptions . ĠFor Ġexample , Ġconsider Ġthe Ġfollowing Ġdialogue Ġin Ġthe Ġtable Ġbelow : </s> The ĠTable ĠT AB REF 71 Ġshows Ġan Ġexample Ġthat Ġuses Ġthe Ġmixed - in iti ative Ġdialogue Ġstrategy , Ġand Ġa Ġdialogue Ġmedi ator Ġto Ġprovide Ġcoordination Ġcontrol . ĠIn Ġthis Ġexample Ġof Ġan Ġapplication , Ġthere Ġare Ġmany Ġtypes Ġof Ġintentions Ġthat Ġshould Ġbe Ġanswered : ĠQ & A Ġ( question Ġand Ġanswer ) Ġabout Ġdefinitions , Ġinvestment Ġoptions , Ġand Ġabout Ġthe Ġcurrent Ġfinance Ġindexes , Ġsimulation Ġof Ġinvestments , Ġwhich Ġis Ġtask - oriented Ġand Ġrequires Ġcomputation , Ġand Ġopinions , Ġwhich Ġcan Ġbe Ġhighly Ġsubjective . </s> In ĠTable ĠSEC REF 72 Ġ, Ġwe Ġpresent Ġthe Ġinteraction Ġnorms Ġthat Ġwere Ġneeded Ġin ĠCogn ia . ĠThe ĠTrigger Ġcolumn Ġdescribes Ġthe Ġevent Ġthat Ġtriggers Ġthe ĠBehavior Ġspecified Ġin Ġthe Ġthird Ġcolumn . ĠThe ĠPre - Cond itions Ġcolumn Ġspecifies Ġwhat Ġmust Ġhappen Ġin Ġorder Ġto Ġstart Ġthe Ġbehavior Ġexecution . ĠSo , Ġfor Ġinstance , Ġline Ġ2 , Ġwhen Ġthe Ġuser Ġsends Ġan Ġutter ance Ġin Ġthe Ġchat Ġgroup , Ġan Ġevent Ġis Ġtriggered Ġand , Ġif Ġthe Ġutter ance 's Ġtopic Ġis ĠCD B Ġ( Cert ificate Ġof ĠDeposit Ġwhich Ġis Ġa Ġfixed Ġrate Ġinvestment ) Ġor Ġif Ġit Ġis Ġabout Ġthe ĠSavings ĠAccount Ġinvestment Ġoption Ġand Ġthe Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation Ġand Ġthe ĠCD B Ġand ĠSavings ĠAccount Ġmembers Ġare Ġnot Ġin Ġthe Ġchat , Ġthen Ġthe Ġbehavior Ġis Ġactivated . ĠThe Ġbot Ġmembers Ġthat Ġimplement Ġthese Ġbehaviors Ġare Ġcalled Ġc db g uru Ġand Ġp oup anc ag uru . ĠTherefore Ġthese Ġnames Ġare Ġused Ġwhen Ġthere Ġis Ġa Ġmention . </s> Note Ġthat Ġthese Ġinteractions Ġnorms Ġare Ġnot Ġexplicitly Ġdefined Ġas Ġobligations , Ġpermissions , Ġand Ġprohibitions . ĠThey Ġare Ġimpl ict Ġfrom Ġthe Ġbehavior Ġdescribed . ĠDuring Ġthis Ġimplementation , Ġwe Ġdid Ġnot Ġworry Ġabout Ġexplicitly Ġdefining Ġthe Ġnorms , Ġbecause Ġthe Ġgoal Ġwas Ġto Ġevaluate Ġthe Ġoverall Ġarchitecture , Ġnot Ġto Ġenhance Ġthe Ġstate Ġof Ġthe Ġart Ġon Ġnorms Ġspecification Ġfor Ġconvers ational Ġsystems . ĠIn Ġaddition , ĠCogn IA Ġhas Ġonly Ġthe Ġpresented Ġinteraction Ġnorms Ġdefined Ġin ĠTable ĠSEC REF 72 Ġ, Ġwhich Ġis Ġa Ġvery Ġsmall Ġset Ġthat Ġthat Ġdoes Ġnot Ġrequired Ġmodel Ġchecking Ġor Ġverification Ġof Ġconflicts . </s> | p 2 cm | p 5 . 0 cm | p 5 . 0 cm | C ogn ia ĠInter action ĠNorm s C ogn ia ĠInter action ĠNorm s </s> Trigger ĠPre - Cond itions ĠBehavior </s> On Ġgroup Ġchat Ġcreation ĠCogn ia Ġchat bot Ġis Ġavailable ĠCogn ia Ġchat bot Ġjoins Ġthe Ġchat Ġwith Ġthe Ġmedi ator Ġrole Ġand Ġuser Ġjoins Ġthe Ġchat Ġwith Ġthe Ġowner _ user Ġrole </s> On Ġutter ance Ġsent Ġby Ġuser ĠUt ter ance 's Ġtopic Ġis ĠCD B Ġ( c db g uru ) Ġor ĠSavings ĠAccount Ġ( p oup anc ag uru ) Ġand Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation Ġand Ġthey Ġare Ġnot Ġin Ġthe Ġchat ĠCogn ia Ġinvites Ġexperts Ġto Ġthe Ġchat Ġand Ġrepeats Ġthe Ġutter ance Ġto Ġthem </s> On Ġutter ance Ġsent Ġby Ġuser ĠUt ter ance 's Ġtopic Ġis ĠCD B Ġ( c db g uru ) Ġor ĠSavings ĠAccount Ġ( p oup anc ag uru ) Ġand Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation Ġand Ġthey Ġare Ġin Ġthe Ġchat ĠCogn ia Ġwaits Ġfor Ġwhile Ġand Ġc db g uru Ġor Ġp oup anc ag uru Ġrespectively Ġhandles Ġthe Ġutter ance . ĠIf Ġthey Ġdon 't Ġunderstand , Ġthey Ġdon 't Ġreply </s> On Ġutter ance Ġsent Ġby Ġthe Ġexperts ĠIf ĠCogn ia Ġis Ġwaiting Ġfor Ġthem Ġand Ġhas Ġreceived Ġboth Ġreplies ĠCogn ia Ġdoes Ġnot Ġwait Ġanymore </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġc db g uru Ġor Ġp oup anc ag uru Ġc db g uru Ġor Ġp oup anc ag uru Ġrespectively Ġhandles Ġthe Ġutter ance </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġc db g uru Ġor Ġp oup anc ag uru Ġand Ġthey Ġdon 't Ġreply Ġafter Ġa Ġwhile Ġand Ġspeech Ġact Ġis ĠQuery _ Cal culation ĠCogn ia Ġsends ĠI Ġcan Ġonly Ġchat Ġabout Ġinvestments ... </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġc db g uru Ġor Ġp oup anc ag uru Ġand Ġthey Ġdon 't Ġreply Ġafter Ġwhile Ġand Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation ĠCogn ia Ġsends ĠI Ġdidn 't Ġunderstand </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġperiod Ġor Ġinitial Ġamount Ġof Ġinvestment Ġwere Ġnot Ġspecified ĠCogn ia Ġasks Ġthe Ġuser Ġthe Ġmissing Ġinformation </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġperiod Ġand Ġinitial Ġamount Ġof Ġinvestment Ġwere Ġspecified Ġand Ġthe Ġexperts Ġare Ġnot Ġin Ġthe Ġchat ĠCogn ia Ġinvites Ġexperts Ġto Ġthe Ġchat Ġand Ġrepeats Ġthe Ġutter ance Ġto Ġthem </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġperiod Ġand Ġinitial Ġamount Ġof Ġinvestment Ġwere Ġspecified Ġand Ġthe Ġexperts Ġare Ġin Ġthe Ġchat ĠCogn ia Ġrepeats Ġthe Ġutter ance Ġto Ġexperts </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation ĠCogn ia Ġextracts Ġvariables Ġand Ġsaves Ġthe Ġcontext </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġthe Ġexperts Ġare Ġin Ġthe Ġchat Ġand Ġthe Ġexperts Ġare Ġmentioned ĠExperts Ġextract Ġinformation , Ġsave Ġin Ġthe Ġcontext , Ġcompute Ġcalculation Ġand Ġsend Ġinformation </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠInform _ Cal culation Ġand ĠCogn ia Ġreceived Ġall Ġreplies ĠCogn ia Ġcompares Ġthe Ġresults Ġand Ġinform Ġcomparison </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġa Ġchat bot Ġbut Ġhas Ġno Ġother Ġtext ĠThe Ġchat bot Ġreplies ĠHow Ġcan ĠI Ġhelp Ġyou ? </s> On Ġutter ance Ġsent ĠUt ter ance Ġis Ġnot Ġunderstood Ġand Ġspeech Ġact Ġis ĠQuestion ĠThe Ġchat bot Ġreplies ĠI Ġdon 't Ġknow ... ĠI Ġcan Ġonly Ġtalk Ġabout Ġtopic ĠX </s> On Ġutter ance Ġsent ĠUt ter ance Ġis Ġnot Ġunderstood Ġand Ġspeech Ġact Ġis Ġnot ĠQuestion ĠThe Ġchat bot Ġreplies ĠI Ġdidn 't Ġunderstand </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis Ġone Ġof Ġ{ ĠG reetings , ĠThank , ĠBye Ġ} ĠAll Ġchat bots Ġreply Ġto Ġutter ance </s> On Ġgroup Ġchat Ġend ĠAll Ġchat bots Ġleave Ġthe Ġchat , Ġand Ġthe Ġdate Ġand Ġtime Ġof Ġthe Ġend Ġof Ġchat Ġis Ġregistered </s> We Ġinstant iated ĠSA BI A Ġto Ġdevelop ĠCogn IA Ġas Ġfollows : Ġthe ĠMed iator , ĠSavings ĠAccount , ĠCD B Ġand ĠUser ĠAct ors Ġare Ġthe ĠMembers Ġof Ġthe ĠChat ĠGroup . ĠThe ĠHub Ġwas Ġimplemented Ġusing Ġtwo Ġservers : ĠSocket . io Ġand ĠNode . JS Ġwhich Ġis Ġa Ġsocket Ġclient Ġof Ġthe ĠSocket . io Ġserver . ĠThe ĠCogn IA Ġsystem Ġhas Ġalso Ġone ĠSocket ĠClient Ġfor Ġreceiving Ġthe Ġbroadcast Ġand Ġforwarding Ġto Ġthe ĠGroup ĠChat ĠManager . ĠThe Ġformer Ġwill Ġactually Ġdo Ġthe Ġbroadcast Ġto Ġevery Ġmember Ġafter Ġenforcing Ġthe Ġnorms Ġthat Ġapplies Ġspecified Ġin ĠTable ĠSEC REF 72 Ġ. ĠEach ĠMember Ġwill Ġbehave Ġaccording Ġto Ġthis Ġtable Ġtoo . ĠFor Ġeach Ġuser Ġof Ġthe Ġchat Ġgroup , Ġon Ġa Ġmobile Ġor Ġa Ġdesktop , Ġthere Ġis Ġits Ġcorresponding Ġactor Ġrepresented Ġby Ġthe ĠUser ĠActor Ġin Ġthe Ġfigure . ĠIts Ġmain Ġjob Ġis Ġto Ġreceive ĠAk ka 's Ġbroadcast Ġand Ġforward Ġto Ġthe ĠSocket . io Ġserver , Ġso Ġit Ġcan Ġbe Ġfinally Ġpropag ated Ġto Ġthe Ġusers . </s> All Ġthe Ġint ents , Ġactions , Ġfactual Ġanswers , Ġcontext Ġand Ġlogging Ġdata Ġare Ġsaved Ġin ĠDash DB Ġ( a Ġrelational ĠDatabase - as - a - Service Ġsystem ). ĠWhen Ġan Ġanswer Ġis Ġnot Ġretrieved , Ġa Ġservice Ġwhich Ġexecutes Ġthe Ġmodule ĠSearch ĠFinance Ġon ĠSocial ĠMedia Ġon Ġa Ġseparate Ġserver Ġis Ġcalled . ĠThis Ġservice Ġwas Ġimplemented Ġwith Ġthe Ġassumption Ġthat Ġfinance Ġexperts Ġpost Ġrelevant Ġquestions Ġand Ġanswers Ġon Ġsocial Ġmedia . ĠFurther Ġdetails Ġare Ġexplained Ġin Ġthe ĠAction Ġexecution Ġsub - section . </s> We Ġbuilt Ġa Ġsmall Ġdictionary - based Ġtopic Ġclass ifier Ġto Ġidentify Ġif Ġan Ġutter ance Ġrefers Ġto Ġfinance Ġor Ġnot , Ġand Ġif Ġit Ġrefers Ġto Ġthe Ġtwo Ġinvestment Ġoptions Ġ( CD B Ġor ĠSavings ĠAccount ) Ġor Ġnot . </s> The Ġdependency Ġparsing Ġis Ġextremely Ġimportant Ġfor Ġcomputing Ġthe Ġreturn Ġof Ġinvestment Ġwhen Ġthe Ġuser Ġsends Ġan Ġutter ance Ġwith Ġthis Ġintention . ĠOur Ġfirst Ġimplementation Ġused Ġregular Ġexpressions Ġwhich Ġled Ġto Ġa Ġvery Ġfragile Ġapproach . ĠThen Ġwe Ġused Ġa ĠT ensor Flow Ġimplementation ĠB IB REF 47 Ġof Ġa ĠSynt ax Net Ġmodel Ġfor ĠPortuguese Ġand Ġused Ġit Ġto Ġgenerate Ġthe Ġdependency Ġparse Ġtrees Ġof Ġthe Ġutter ances . ĠThe ĠSynt ax Net Ġmodel Ġis Ġa Ġfeed - forward Ġneural Ġnetwork Ġthat Ġoperates Ġon Ġa Ġtask - specific Ġtransition Ġsystem Ġand Ġachieves Ġthe Ġstate - of - the - art Ġon Ġpart - of - speech Ġtagging , Ġdependency Ġparsing Ġand Ġsentence Ġcompression Ġresults ĠB IB REF 48 Ġ. ĠBelow Ġwe Ġpresent Ġoutput Ġof Ġthe Ġservice Ġfor Ġthe Ġutter ance : </s> " I Ġwant Ġto Ġinvest Ġ10 Ġthousands Ġin Ġ40 Ġmonths ": </s> [ s ] "" blue [ l ]: black </s> { Ġ" original ": Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ10 Ġthousands Ġin Ġ40 Ġmonths ", </s> " start _ pos ": Ġ[ </s> 23 , </s> 32 ], </s> " end _ pos ": Ġ[ </s> 27 , </s> 33 ], </s> " dig its ": Ġ[ </s> 10000 , </s> 40 ], </s> " con verted ": Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ10000 Ġin Ġ40 Ġmonths ", </s> " tree ": Ġ{ </s> " like ĠVER B ĠRO OT ": Ġ{ </s> " I ĠPR ON Ġn sub j ": Ġ{ }, </s> " would ĠMD Ġaux ": { </s> " invest ĠVER B Ġx comp ": { </s> " to ĠTO Ġaux ": Ġ{ }, </s> " 10000 ĠNUM Ġdo bj ": Ġ{ }, </s> " in ĠIN Ġprep ": Ġ{ </s> " months ĠN OUN Ġp obj ": { </s> " 40 ĠNUM Ġnum ": Ġ{ }} }} }}} </s> The Ġservice Ġreturns Ġa ĠJSON ĠObject Ġcontaining Ġsix Ġfields : Ġoriginal , Ġstart _ pos , Ġend _ pos , Ġdigits , Ġconverted Ġand Ġtree . ĠThe Ġoriginal Ġfield Ġcontains Ġthe Ġoriginal Ġutter ance Ġsent Ġto Ġthe Ġservice . ĠThe Ġconverted Ġfield Ġcontains Ġthe Ġutter ance Ġreplaced Ġwith Ġdecimal Ġnumbers , Ġif Ġthe Ġcase Ġ( for Ġinstance , Ġ" 10 Ġthousands " Ġwas Ġconverted Ġto Ġ" 10000 " Ġand Ġreplaced Ġin Ġthe Ġutter ance ). ĠThe Ġstart _ pos Ġand Ġend _ pos Ġare Ġarrays Ġthat Ġcontain Ġthe Ġstart Ġand Ġend Ġchar Ġpositions Ġof Ġthe Ġnumbers Ġin Ġthe Ġconverted Ġutter ance . ĠWhile Ġthe Ġtree Ġcontains Ġthe Ġdependency Ġparse Ġtree Ġfor Ġthe Ġconverted Ġutter ance . </s> Given Ġthe Ġdependency Ġtree , Ġwe Ġimplemented Ġthe Ġframe Ġparsing Ġwhich Ġfirst Ġextracts Ġthe Ġentities Ġand Ġfeatures Ġfrom Ġthe Ġutter ance Ġand Ġsaves Ġthem Ġin Ġthe Ġcontext . ĠThen , Ġit Ġreplaces Ġthe Ġextracted Ġentities Ġand Ġfeatures Ġfor Ġreserved Ġcharacters . </s> ext ract _ period _ of _ invest ment Ġ( utter ance Tree ) Ġ[ 1 ] Ġ[ t ] Ġnumbers N odes ĠIN LINE FORM 0 Ġutter ance Tree . get Numbers N odes (); Ġ[ t ] Ġfore ach ( number Node Ġin Ġnumbers N odes ) Ġdo Ġ[ t ] Ġparents Of Numbers Node ĠIN LINE FORM 1 Ġnumbers Node . get Parents () Ġ[ t ] Ġfore ach ( parent Ġin Ġparents Of Numbers N odes ) Ġdo Ġ[ t ] Ġif Ġ( Ġparent . name Ġcontains Ġ{ Ġ" day ", Ġ" month ", Ġ" year "} Ġ) Ġthen Ġ[ t ] Ġparent Of Parent ĠIN LINE FORM 2 Ġparent . get Parent () Ġ[ t ] Ġif Ġ( Ġparent Of Parent Ġis Ġnot Ġnull Ġand </s> parent Of Parent . get Pos Tag == Ver b Ġand </s> parent Of Parent . name Ġin Ġinvestment Ver bs Set Ġ) Ġthen Ġ[ t ] Ġreturn Ġnumber Node </s> Therefore Ġan Ġutter ance Ġlike Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ10 Ġthousands Ġin Ġ3 Ġyears " Ġbecomes Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ# v Ġin Ġ# dt Ġyears ". ĠOr Ġ" 10 Ġin Ġ3 Ġyears " Ġbecomes Ġ"# v Ġin Ġ# dt Ġyears ", Ġand Ġboth Ġint ents Ġhave Ġthe Ġsame Ġintent Ġclass . </s> For Ġdoing Ġthat Ġwe Ġimplemented Ġa Ġfew Ġrules Ġusing Ġa Ġdepth - first Ġsearch Ġalgorithm Ġcombined Ġwith Ġthe Ġrules Ġas Ġdescribed Ġin ĠAl gorithm ĠUID 79 Ġ, ĠAl gorithm ĠUID 79 Ġand ĠAl gorithm ĠUID 79 Ġ. ĠNote Ġthat Ġour Ġparser Ġworks Ġonly Ġfor Ġshort Ġtexts Ġon Ġwhich Ġthe Ġuser 's Ġutter ance Ġmentions Ġonly Ġone Ġperiod Ġof Ġtime Ġand / Ġor Ġinitial Ġamount Ġof Ġinvestment Ġin Ġthe Ġsame Ġutter ance . </s> ext ract _ initial _ amount _ of _ invest ment Ġ( utter ance Tree ) Ġ[ 1 ] Ġ[ t ] Ġnumbers N odes ĠIN LINE FORM 0 Ġutter ance Tree . get Numbers N odes (); Ġ[ t ] Ġfore ach ( number Node Ġin Ġnumbers N odes ) Ġdo Ġ[ t ] Ġparents Of Numbers Node ĠIN LINE FORM 1 Ġnumbers Node . get Parents () Ġ[ t ] Ġfore ach ( parent Ġin Ġparents Of Numbers N odes ) Ġdo Ġ[ t ] Ġif Ġ( Ġparent . name Ġdoes Ġnot Ġcontain Ġ{ Ġ" day ", Ġ" month ", Ġ" year "} Ġ) Ġthen Ġ[ t ] Ġreturn Ġnumber Node </s> frame _ p ars ing ( utter ance , Ġutter ance Tree ) Ġ[ 1 ] Ġ[ t ] Ġperiod ĠIN LINE FORM 0 Ġextract _ period _ of _ invest ment Ġ( utter ance Tree ) Ġ[ t ] Ġsave _ period _ of _ invest ment ( period ) Ġ[ t ] Ġvalue ĠIN LINE FORM 1 Ġextract _ initial _ amount _ of _ invest ment Ġ( utter ance Tree ) Ġ[ t ] Ġsave _ initial _ amount _ of _ invest ment ( value ) Ġ[ t ] Ġnew _ intent ĠIN LINE FORM 2 Ġreplace ( new _ intent , Ġperiod , Ġ"# dt ") Ġ[ t ] Ġnew _ intent ĠIN LINE FORM 3 Ġreplace ( new _ intent , Ġvalue , Ġ"# v ") </s> In ĠCogn IA Ġwe Ġhave Ġcomple mented Ġthe Ġspeech Ġact Ġclasses Ġwith Ġthe Ġones Ġrelated Ġto Ġthe Ġexecution Ġof Ġspecific Ġactions . ĠTherefore , Ġif Ġthe Ġchat bot Ġneeded Ġto Ġcompute Ġthe Ġreturn Ġof Ġinvestment , Ġthen , Ġonce Ġit Ġis Ġcomputed , Ġthe Ġspeech Ġact Ġof Ġthe Ġreply Ġwill Ġbe ĠInform _ Cal culation Ġand Ġthe Ġone Ġthat Ġrepresents Ġthe Ġquery Ġfor Ġthat Ġis ĠQuery _ Cal culation . ĠIn Ġtable ĠT AB REF 81 Ġwe Ġlist Ġthe Ġspecific Ġones . </s> Given Ġthat Ġthere Ġis Ġno Ġpublic Ġdataset Ġavailable Ġwith Ġfinancial Ġint ents Ġin ĠPortuguese , Ġwe Ġhave Ġemployed Ġthe Ġincremental Ġapproach Ġto Ġcreate Ġour Ġown Ġtraining Ġset Ġfor Ġthe ĠIntent ĠClass ifier . ĠFirst , Ġwe Ġapplied Ġthe ĠWizard Ġof ĠOz Ġmethod Ġand Ġfrom Ġthis Ġstudy , Ġwe Ġhave Ġcollected Ġa Ġset Ġof Ġ124 Ġquestions Ġthat Ġthe Ġusers Ġasked . ĠNext , Ġafter Ġthese Ġquestions Ġhave Ġbeen Ġmanually Ġclassified Ġinto Ġa Ġset Ġof Ġintent Ġclasses , Ġand Ġused Ġto Ġtrain Ġthe Ġfirst Ġversion Ġof Ġthe Ġsystem , Ġthis Ġset Ġhas Ġbeen Ġincreased Ġboth Ġin Ġterms Ġof Ġnumber Ġof Ġclasses Ġand Ġsamples Ġper Ġclass , Ġresulting Ġin Ġa Ġtraining Ġset Ġwith Ġ37 Ġclasses Ġof Ġint ents , Ġand Ġa Ġtotal Ġ415 Ġsamples , Ġwith Ġsamples Ġper Ġclass Ġranging Ġfrom Ġ3 Ġto Ġ37 . </s> We Ġhave Ġdefined Ġour Ġclassification Ġmethod Ġbased Ġon Ġfeatures Ġextracted Ġfrom Ġword Ġvectors . ĠWord Ġvectors Ġconsist Ġof Ġa Ġway Ġto Ġencode Ġthe Ġsemantic Ġmeaning Ġof Ġthe Ġwords , Ġbased Ġon Ġtheir Ġfrequency Ġof Ġco - occ urrence . ĠTo Ġcreate Ġdomain - specific Ġword Ġvectors , Ġa Ġset Ġof Ġthousand Ġdocuments Ġare Ġneeded Ġrelated Ġto Ġdesired Ġdomain . ĠThen Ġeach Ġintent Ġfrom Ġthe Ġtraining Ġset Ġneeds Ġto Ġbe Ġencoded Ġwith Ġits Ġcorresponding Ġmean Ġword Ġvector . ĠThe Ġmean Ġword Ġvector Ġis Ġthen Ġused Ġas Ġfeature Ġvector Ġfor Ġstandard Ġclass ifiers . </s> We Ġhave Ġcreated Ġdomain - specific Ġword Ġvectors Ġby Ġconsidering Ġa Ġset Ġ246 , 9 45 Ġdocuments , Ġcorresponding Ġto Ġof Ġ184 , 001 ĠTwitter Ġposts Ġand Ġand Ġ62 , 949 Ġnews Ġarticles , Ġall Ġrelated Ġto Ġfinance Ġ. </s> The Ġset Ġof Ġtweets Ġhas Ġbeen Ġcrawled Ġfrom Ġthe Ġfeeds Ġof Ġblog Ġusers Ġwho Ġare Ġconsidered Ġexperts Ġin Ġthe Ġfinance Ġdomain . ĠThe Ġnews Ġarticle Ġhave Ġbeen Ġextracted Ġfrom Ġlinks Ġincluded Ġin Ġthese Ġtweets . ĠThis Ġset Ġcontained Ġa Ġtotal Ġof Ġ63 , 270 , 124 Ġword Ġoccurrences , Ġwith Ġa Ġvocabulary Ġof Ġ97 , 616 Ġdistinct Ġwords . ĠWith Ġthe Ġaforementioned Ġword Ġvectors , Ġeach Ġintent Ġfrom Ġthe Ġtraining Ġset Ġhas Ġbeen Ġencoded Ġwith Ġits Ġcorresponding Ġmean Ġword Ġvector . ĠThe Ġmean Ġword Ġvector Ġhas Ġbeen Ġthen Ġused Ġas Ġfeature Ġvector Ġfor Ġstandard Ġclass ifiers . </s> As Ġthe Ġbase Ġclass ifier , Ġwe Ġhave Ġpursued Ġwith Ġa Ġtwo - step Ġapproach . ĠIn Ġthe Ġfirst Ġstep , Ġthe Ġmain Ġgoal Ġwas Ġto Ġmake Ġuse Ġof Ġa Ġclass ifier Ġthat Ġcould Ġbe Ġeasily Ġret rained Ġto Ġinclude Ġnew Ġclasses Ġand Ġint ents . ĠFor Ġthis Ġreason , Ġthe Ġfirst Ġimplementation Ġof Ġthe Ġsystem Ġconsidered Ġan Ġ1 - ne arest - ne igh bor Ġ( 1 NN ) Ġclass ifier , Ġwhich Ġis Ġsimply Ġa ĠK - ne arest - ne igh bor Ġclass ifier Ġwith ĠK Ġset Ġto Ġ1 . ĠWith Ġ1 NN , Ġthe Ġdeveloper Ġof Ġthe Ġsystem Ġcould Ġsimply Ġadd Ġnew Ġint ents Ġand Ġclasses Ġto Ġthe Ġclass ifier , Ġby Ġmeans Ġof Ġinserting Ġnew Ġlines Ġinto Ġthe Ġdatabase Ġstoring Ġthe Ġtraining Ġset . ĠOnce Ġwe Ġhave Ġconsidered Ġthat Ġthe Ġtraining Ġset Ġwas Ġstable Ġenough Ġfor Ġthe Ġsystem , Ġwe Ġmoved Ġthe Ġfocus Ġto Ġan Ġapproach Ġthat Ġwould Ġbe Ġable Ġto Ġprovide Ġhigher Ġaccuracy Ġrates Ġthan Ġ1 NN . ĠFor Ġthis , Ġwe Ġhave Ġemployed ĠSupport ĠVector ĠMachines Ġ( S VM ) Ġwith Ġa ĠGa ussian Ġkernel , Ġthe Ġparameters Ġof Ġwhich Ġare Ġoptimized Ġby Ġmeans Ġof Ġa Ġgrid Ġsearch . </s> We Ġmanually Ġmapped Ġthe Ġintent Ġclasses Ġused Ġto Ġtrain Ġthe Ġintent Ġclass ifier Ġto Ġaction Ġclasses Ġand Ġthe Ġdependent Ġentities Ġand Ġfeatures , Ġwhen Ġthe Ġcase . ĠTable ĠT AB REF 85 Ġsummarizes Ġthe Ġnumber Ġof Ġintent Ġclasses Ġper Ġaction Ġclass Ġthat Ġwe Ġused Ġin ĠCogn IA . </s> For Ġthe Ġmajority Ġof Ġaction Ġclasses Ġwe Ġused ĠSA BI A 's Ġdefault Ġbehavior . ĠFor Ġinstance , ĠG reet Ġand ĠBye Ġactions Ġclasses Ġare Ġimplemented Ġusing Ġrapport , Ġwhich Ġmeans Ġthat Ġif Ġthe Ġuser Ġsays Ġ" Hi " Ġthe Ġchat bot Ġwill Ġreply Ġ" Hi ". </s> The ĠSearch ĠNews , ĠComp ute Ġand ĠAsk ĠMore Ġclasses Ġare Ġthe Ġones Ġthat Ġrequire Ġspecific Ġimplement ion Ġfor ĠCogn IA Ġas Ġfollowing : </s> Search ĠNews : Ġsearch Ġfinance Ġon Ġsocial Ġmedia Ġservice ĠB IB REF 49 Ġ, ĠB IB REF 50 Ġreceives Ġthe Ġutter ance Ġas Ġinput , Ġsearches Ġon Ġpreviously Ġindexed ĠTwitter Ġdata Ġfor Ġfinance Ġfor ĠPortuguese Ġand Ġreturn Ġto Ġthe Ġone Ġwhich Ġhas Ġthe Ġhighest Ġscore , Ġif Ġfound . </s> Ask ĠMore : ĠIf Ġthe Ġuser Ġsends Ġan Ġutter ance Ġthat Ġhas Ġthe Ġintention Ġclass Ġof Ġsim ulating Ġthe Ġreturn Ġof Ġinvestment , Ġwhile Ġnot Ġall Ġvariables Ġto Ġcompute Ġthe Ġreturn Ġof Ġinvestment Ġare Ġextracted Ġfrom Ġthe Ġdialogue , Ġthe Ġmedi ator Ġkeeps Ġasking Ġthe Ġuser Ġthese Ġinformation Ġbefore Ġit Ġactually Ġredirect s Ġthe Ġquery Ġto Ġthe Ġexperts . ĠThis Ġaction Ġthen Ġchecks Ġthe Ġstate Ġof Ġthe Ġcontext Ġgiven Ġthe Ġspecified Ġintent Ġflow Ġas Ġdescribed Ġin Ġ( ĠEQ REF 46 Ġ) Ġand Ġ( ĠEQ REF 57 Ġ) Ġin Ġsection ĠSEC REF 4 Ġto Ġdecide Ġwhich Ġvariables Ġare Ġmissing . ĠFor ĠCogn IA Ġwe Ġmanually Ġadded Ġthese Ġdependencies Ġon Ġthe Ġdatabase . </s> Comp ute : ĠEach Ġexpert ĠChat bot Ġimplements Ġthis Ġaction Ġaccording Ġto Ġits Ġexpertise . ĠThe Ġsavings Ġaccount Ġchat bot Ġcomp utes Ġthe Ġformula Ġ( ĠEQ REF 90 Ġ) Ġand Ġthe Ġcertificate Ġof Ġdeposit Ġcomp utes Ġthe Ġformula Ġ( ĠEQ REF 92 Ġ). ĠBoth Ġare Ġcurrently Ġformulas Ġfor Ġestimating Ġin ĠBrazil . ĠDIS PLAY FORM 0 </s> where ĠIN LINE FORM 0 Ġis Ġthe Ġreturn Ġof Ġinvestment Ġfor Ġthe Ġsavings Ġaccount , ĠIN LINE FORM 1 Ġis Ġthe Ġinitial Ġvalue Ġof Ġinvestment , ĠIN LINE FORM 2 Ġis Ġthe Ġsavings Ġaccount Ġinterest Ġrate Ġand ĠIN LINE FORM 3 Ġis Ġthe Ġsavings Ġaccount Ġrate Ġbase . ĠDIS PLAY FORM 0 </s> where ĠIN LINE FORM 0 Ġis Ġthe Ġreturn Ġof Ġinvestment Ġfor Ġcertificate Ġof Ġdeposit , ĠIN LINE FORM 1 Ġis Ġthe Ġinitial Ġvalue Ġof Ġinvestment , ĠIN LINE FORM 2 Ġis Ġthe ĠInter bank ĠDeposit Ġrate Ġ( DI Ġin ĠPortuguese ), ĠIN LINE FORM 3 Ġis Ġthe ĠID 's Ġpercent ual Ġpay ed Ġby Ġthe Ġbank Ġ( v aries Ġfrom Ġ90 % Ġto Ġ120 %), ĠIN LINE FORM 4 Ġis Ġthe Ġnumber Ġof Ġdays Ġthe Ġmoney Ġis Ġinvested , Ġand Ġfinally ĠIN LINE FORM 5 Ġis Ġthe Ġincome Ġtax Ġon Ġthe Ġearnings . </s> Int ention ĠClass ifier ĠAccuracy </s> In ĠTable ĠT AB REF 95 Ġwe Ġpresent Ġthe Ġcomparison Ġof Ġsome Ġdistinct Ġclassification Ġon Ġthe Ġfirst Ġversion Ġof Ġthe Ġtraining Ġset , Ġi . e . Ġthe Ġset Ġused Ġto Ġdeploy Ġthe Ġfirst Ġclass ifier Ġinto Ġthe Ġsystem . ĠRough ly Ġspeaking , Ġthe Ġ1 NN Ġclass ifier Ġhas Ġbeen Ġable Ġto Ġachieve Ġa Ġlevel Ġof Ġaccuracy Ġthat Ġis Ġhigher Ġthan Ġother Ġwell - known Ġclass ifiers , Ġsuch Ġas ĠLog istic ĠReg ression Ġand ĠNa Ã¯ve ĠBay es , Ġshowing Ġthat Ġ1 NN Ġis Ġsuitable Ġas Ġa Ġdevelopment Ġclass ifier . ĠNevertheless , Ġa ĠS VM Ġcan Ġperform Ġconsiderable Ġbetter Ġthan Ġ1 NN , Ġreaching Ġaccur acies Ġof Ġabout Ġ12 Ġpercentage Ġpoints Ġhigher , Ġwhich Ġdemonstrates Ġthat Ġthis Ġtype Ġof Ġbase Ġclass ifier Ġis Ġa Ġbetter Ġchoice Ġto Ġbe Ġdeployed Ġonce Ġthe Ġsystem Ġis Ġstable Ġenough . ĠIt Ġis Ġworth Ġmentioning Ġthat Ġthese Ġresults Ġconsider Ġthe Ġleave - one - out Ġvalidation Ġprocedure , Ġgiven Ġthe Ġvery Ġlow Ġnumber Ġof Ġsamples Ġin Ġsome Ġclasses . </s> As Ġwe Ġmentioned , Ġthe Ġuse Ġof Ġan Ġ1 NN Ġclass ifier Ġhas Ġallowed Ġthe Ġdeveloper Ġof Ġthe Ġsystem Ġto Ġeasily Ġadd Ġnew Ġintent Ġclasses Ġand Ġsamples Ġwhenever Ġthey Ġjudged Ġit Ġnecessary , Ġso Ġthat Ġthe Ġsystem Ġcould Ġpresent Ġnew Ġactions , Ġor Ġthe Ġunderstanding Ġof Ġthe Ġint ents Ġcould Ġbe Ġimproved . ĠAs Ġa Ġconsequence , Ġthe Ġinitial Ġtraining Ġset Ġgrew Ġfrom Ġ37 Ġto Ġ63 Ġclasses , Ġand Ġfrom Ġ415 Ġto Ġ6 59 Ġsamples , Ġwith Ġthe Ġnumber Ġof Ġsamples Ġper Ġclass Ġvarying Ġfrom Ġ2 Ġto Ġ63 . ĠFor Ġvisual izing Ġthe Ġimpact Ġon Ġthe Ġaccuracy Ġof Ġthe Ġsystem , Ġin ĠTable ĠT AB REF 96 Ġwe Ġpresent Ġthe Ġaccuracy Ġof Ġthe Ġsame Ġclass ifiers Ġused Ġin Ġthe Ġprevious Ġevaluation , Ġin Ġthe Ġnew Ġset . ĠIn Ġthis Ġcase , Ġwe Ġobserve Ġsome Ġdrop Ġin Ġaccuracy Ġfor Ġ1 NN , Ġshowing Ġthat Ġthis Ġclass ifier Ġsuffers Ġin Ġdealing Ġwith Ġscal ability . ĠOn Ġthe Ġother Ġhand , ĠS VM Ġhas Ġshown Ġto Ġscale Ġvery Ġwell Ġto Ġmore Ġclasses Ġand Ġsamples , Ġsince Ġits Ġaccuracy Ġkept Ġat Ġa Ġvery Ġsimilar Ġlevel Ġthan Ġthat Ġwith Ġthe Ġother Ġset , Ġwith Ġa Ġdifference Ġof Ġabout Ġonly Ġ1 Ġpercentage Ġpoint . </s> Testing ĠSA BI A </s> In Ġthis Ġsection , Ġwe Ġdescribe Ġthe Ġvalidation Ġframework Ġthat Ġwe Ġcreated Ġfor Ġintegration Ġtests . ĠFor Ġthis , Ġwe Ġdeveloped Ġit Ġas Ġa Ġnew Ġcomponent Ġof ĠSA BI A 's Ġsystem Ġarchitecture Ġand Ġit Ġprovides Ġa Ġhigh Ġlevel Ġlanguage Ġwhich Ġis Ġable Ġto Ġspecify Ġinteraction Ġscenarios Ġthat Ġsimulate Ġusers Ġinteracting Ġwith Ġthe Ġdeployed Ġchat bots . ĠThe Ġsystem Ġtesters Ġprovide Ġa Ġset Ġof Ġutter ances Ġand Ġtheir Ġcorresponding Ġexpected Ġresponses , Ġand Ġthe Ġframework Ġautomatically Ġsim ulates Ġusers Ġinteracting Ġwith Ġthe Ġbots Ġand Ġcollect Ġmetrics , Ġsuch Ġas Ġtime Ġtaken Ġto Ġanswer Ġan Ġutter ance Ġand Ġother Ġresource Ġconsumption Ġmetrics Ġ( e . g ., Ġmemory , ĠCPU , Ġnetwork Ġbandwidth ). ĠOur Ġgoal Ġwas Ġto : Ġ( i ) Ġprovide Ġa Ġtool Ġfor Ġintegration Ġtests , Ġ( ii ) Ġto Ġvalidate ĠCogn IA 's Ġimplementation , Ġand Ġ( iii ) Ġto Ġsupport Ġthe Ġsystem Ġdevelopers Ġin Ġunderstanding Ġthe Ġbehavior Ġof Ġthe Ġsystem Ġand Ġwhich Ġaspects Ġcan Ġbe Ġimproved . ĠThus , Ġwhenever Ġdevelopers Ġmodify Ġthe Ġsystem 's Ġsource Ġcode , Ġthe Ġmodifications Ġmust Ġfirst Ġpass Ġthe Ġautomatic Ġtest Ġbefore Ġactual Ġdeployment . </s> The Ġtest Ġframework Ġworks Ġas Ġfollows . ĠThe Ġsystem Ġtesters Ġprovide Ġa Ġset ĠIN LINE FORM 0 Ġof Ġdialog ues Ġas Ġinput . ĠEach Ġdialogue ĠIN LINE FORM 1 ĠIN LINE FORM 2 ĠIN LINE FORM 3 Ġis Ġan Ġordered Ġset Ġwhose Ġelements Ġare Ġrepresented Ġby ĠIN LINE FORM 4 Ġ, Ġwhere ĠIN LINE FORM 5 Ġis Ġthe Ġuser Ġutter ance Ġand ĠIN LINE FORM 6 Ġis Ġan Ġordered Ġset Ġof Ġpairs ĠIN LINE FORM 7 Ġthat Ġlists Ġeach Ġresponse ĠIN LINE FORM 8 Ġeach Ġchat bot ĠIN LINE FORM 9 Ġshould Ġrespond Ġwhen Ġthe Ġuser Ġsays ĠIN LINE FORM 10 Ġ. ĠFor Ġinstance , ĠTable ĠUID 98 Ġshows Ġa Ġtypical Ġdialogue Ġ( ĠIN LINE FORM 11 Ġ) Ġbetween Ġa Ġuser Ġand Ġthe ĠCogn IA Ġsystem . ĠNote Ġthat Ġwe Ġare Ġo mitting Ġpart Ġof Ġthe Ġexpected Ġanswer Ġwith Ġ" ..." Ġjust Ġto Ġbetter Ġvisualize Ġthe Ġcontent Ġof Ġthe Ġtable . </s> | p 3 . 6 cmp 0 . 4 cmp 4 . 5 cmp 3 . 2 cm | Content Ġof Ġdialogue ĠIN LINE FORM 0 Ġ( example Ġof Ġdialogue Ġin ĠCogn IA ) Content Ġof Ġdialogue ĠIN LINE FORM 1 Ġ( example Ġof Ġdialogue Ġin ĠCogn IA </s> User Ġutter ance ĠIN LINE FORM 0 Ġr Id ĠEx pected Ġresponse ĠIN LINE FORM 1 ĠChat bot ĠIN LINE FORM 2 </s> gray ! 25 Ġhello Ġ1 ĠHello ĠMed iator </s> white Ġwhat Ġis Ġc db ? Ġ2 Ġ@ CD B Ex pert Ġwhat Ġis Ġc db ? ĠMed iator </s> white Ġ3 ĠCD B Ġis Ġa Ġtype Ġof Ġinvestment Ġthat ... ĠCD B ĠExpert </s> gray ! 25 Ġwhich Ġis Ġbetter : Ġc db Ġor Ġsavings Ġaccount ? Ġ4 ĠI Ġfound Ġa Ġpost Ġin Ġthe Ġsocial Ġmedia Ġfor .... ĠMed iator </s> white Ġi Ġwould Ġlike Ġto Ġinvest ĠR $ Ġ50 Ġin Ġsix Ġmonths Ġ5 Ġ@ Sav ings Account Ex pert Ġand Ġ@ CD B Ex pert , Ġcould Ġyou Ġdo Ġa Ġsimulation ... ĠMed iator </s> white Ġ6 ĠIf Ġyou Ġinvest Ġin ĠSavings ĠAccount , Ġ... ĠSavings ĠAccount ĠExp . </s> white Ġ7 ĠIf Ġyou Ġinvest Ġin ĠCD B ,... ĠCD B ĠExpert </s> white Ġ8 ĠThanks ĠMed iator </s> white Ġ9 Ġ@ User , Ġthere Ġis Ġno Ġsignificant Ġdifference .. ĠMed iator </s> gray ! 25 Ġso Ġi Ġwant Ġto Ġinvest ĠR $ Ġ10000 Ġin Ġ2 Ġyears Ġ10 Ġ@ Sav ings Account Ex pert Ġand Ġ@ CD B Ex pert , Ġcould Ġyou Ġdo Ġa Ġsimulation ... ĠMed iator </s> gray ! 25 Ġ11 ĠIf Ġyou Ġinvest Ġin ĠSavings ĠAccount ,... ĠSavings ĠAccount ĠExp . </s> gray ! 25 Ġ12 ĠIf Ġyou Ġinvest Ġin ĠCD B ,... ĠCD B ĠExpert </s> gray ! 25 Ġ13 ĠThanks ĠMed iator </s> gray ! 25 Ġ14 Ġ@ User , Ġin Ġthat Ġcase , Ġit Ġis Ġbetter ... ĠMed iator </s> white Ġwhat Ġif Ġi Ġinvest ĠR $ 10 , 000 Ġin Ġ5 Ġyears ? Ġ15 Ġ@ Sav ings Account Ex pert Ġand Ġ@ CD B Ex pert , Ġcould Ġyou Ġdo Ġa Ġsimulation ... ĠMed iator </s> white Ġ16 ĠIf Ġyou Ġinvest Ġin ĠSaving ĠAccount ,... ĠSavings ĠAccount ĠExp . </s> white Ġ17
Introduction Back to 42 BC, the philosopher Cicero has raised the issue that although there were many Oratory classes, there were none for Conversational skills BIBREF0 . He highlighted how important they were not only for politics, but also for educational purpose. Among other conversational norms, he claimed that people should be able to know when to talk in a conversation, what to talk depending on the subject of the conversation, and that they should not talk about themselves. Norms such as these may become social conventions and are not learnt at home or at school. Social conventions are dynamic and may change according to context, culture and language. In online communication, new commonsense practices are evolved faster and accepted as a norm BIBREF1 , BIBREF2 . There is not a discipline for that on elementary or high schools and there are few linguistics researchers doing research on this field. On the other hand, within the Artificial Intelligence area, some Conversational Systems have been created in the past decades since the test proposed by Alan Turing in 1950. The test consists of a machine's ability to exhibit intelligent behavior equivalent to, or indistinguishable from that of a human BIBREF3 . Turing proposed that a human evaluator would judge natural language conversations between a human and a machine that is designed to generate human-like responses. Since then, many systems have been created to pass the Turing's test. Some of them have won prizes, some not BIBREF4 . Although in this paper we do not focus on creating a solution that is able to build conversational systems that pass the Turing's test, we focus on NDS. From BIBREF5 , "NDS are systems that try to improve usability and user satisfaction by imitating human behavior". We refer to Conversational Systems as NDS, where the dialogues are expressed as natural language texts, either from artificial intelligent agents (a.k.a. bots) or from humans. That said, the current popular name to systems that have the ability to make a conversation with humans using natural language is Chatbot. Chatbots are typically used in conversational systems for various practical purposes, including customer service or information acquisition. Chatbots are becoming more widely used by social media software vendors. For example, Facebook recently announced that it would make Facebook Messenger (its 900-million-user messaging app by 2016), into a full-fledged platform that allows businesses to communicate with users via chatbots. Google is also building a new mobile-messaging service that uses artificial intelligence know-how and chatbot technology. In addition, according to the Wall Street Journal, there are more than 2 billion users of mobile apps. Still, people can be reluctant to install apps. So it is believed that social messaging can be a platform and chatbots may provide a new conversational interface for interacting with online services, as chatbots are easier to build and deploy than apps BIBREF6 . China seems to be the place where chatbots adoption and use is most advanced today. For example, China's popular WeChat messaging platform can take payments, scan QR codes, and integrate chatbot systems. WeChat integrates e-mail, chat, videocalls and sharing of large multimedia files. Users can book flights or hotels using a mixed, multimedia interaction with active bots. WeChat was first released in 2011 by Tecent, a Chinese online-gaming and social-media firm, and today more than 700 million people use it, being one of the most popular messaging apps in the world (The Economist 2016). WeChat has a mixture of real-live customer service agents and automated replies (Olson 2016). Still, current existing chatbot engines do not properly handle a group chat with many users and many chatbots. This makes the chatbots considerably less social, which is a problem since there is a strong demand of having social chatbots that are able to provide different kinds of services, from traveling packages to finance advisors. This happens because there is a lack of methods and tools to design and engineer the coordination and mediation among chatbots and humans, as we present in Sections 2 and 3. In this paper, we refer to conversational systems that are able to interact with one or more people or chatbots in a multi-party chat as MPCS. Altogether, this paper is not meant to advance the state of the art on the norms for MPCS. Instead, the main contributions of this paper are threefold: We then present some discussion and future work in the last section. Challenges on Chattering There are plenty of challenges in conversation contexts, and even bigger ones when people and machines participate in those contexts. Conversation is a specialized form of interaction, which follows social conventions. Social interaction makes it possible to inform, context, create, ratify, refute, and ascribe, among other things, power, class, gender, ethnicity, and culture BIBREF2 . Social structures are the norms that emerge from the contact people have with others BIBREF7 , for example, the communicative norms of a negotiation, taking turns in a group, the cultural identity of a person, or power relationships in a work context. Conventions, norms and patterns from everyday real conversations are applied when designing those systems to result in adoption and match user's expectations. BIBREF8 describes implicit interactions in a framework of interactions between humans and machines. The framework is based on the theory of implicit interactions which posits that people rely on conventions of interaction to communicate queries, offers, responses, and feedback to one another. Conventions and patterns drive our expectations about interactive behaviors. This framework helps designers and developers create interactions that are more socially appropriate. According to the author, we have interfaces which are based on explicit interaction and implicit ones. The explicit are the interactions or interfaces where people rely on explicit input and output, whereas implicit interactions are the ones that occur without user awareness of the computer behavior. Social practices and actions are essential for a conversation to take place during the turn-by-turn moments of communication. BIBREF9 highlights that a distinguishing feature of ordinary conversation is "the local, moment-by-moment management of the distribution of turns, of their size, and what gets done in them, those things being accomplished in the course of each current speaker's turn." Management of turns and subject change in each course is a situation that occurs in real life conversations based on circumstances (internal and external) to speakers in a dialogue. Nowadays, machines are not prepared to fully understand context and change the course of conversations as humans. Managing dialogues with machines is challenging, which increases even more when more than one conversational agent is part of the same conversation. Some of those challenges in the dialogue flow were addressed by BIBREF10 . According to them, we have system-initiative, user-initiative, and mixed-initiative systems. In the first case, system-initiative systems restrict user options, asking direct questions, such as (Table TABREF5 ): "What is the initial amount of investment?" Doing so, those types of systems are more successful and easier to answer to. On the other hand, user-initiative systems are the ones where users have freedom to ask what they wish. In this context, users may feel uncertain of the capabilities of the system and starting asking questions or requesting information or services which might be quite far from the system domain and understanding capacity, leading to user frustration. There is also a mixed-initiative approach, that is, a goal-oriented dialogue which users and computers participate interactively using a conversational paradigm. Challenges of this last classification are to understand interruptions, human utterances, and unclear sentences that were not always goal-oriented. The dialog in Table TABREF5 has the system initiative in a question and answer mode, while the one in Table TABREF7 is a natural dialogue system where both the user and the system take the initiative. If we add another user in the chat, then we face other challenges. In Table TABREF12 , line 4, the user U1 invites another person to the chat and the system does not reply to this utterance, nor to utterances on lines 6, 7 and 8 which are the ones when only the users (wife and husband) should reply to. On the other hand, when the couple agrees on the period and initial value of the investment (line 9), then the system S1 (at the time the only system in the chat) replies indicating that it will invite more systems (chatbots) that are experts on this kind of pair INLINEFORM0 period, initial value INLINEFORM1 . They then join the chat and start interacting with each other. At the end, on line 17, the user U2 interacts with U1 and they agree with the certificate option. Then, the chatbot responsible for that, S3, is the only one that replies indicating how to invest. Table TABREF12 is one example of interactions on which the chatbots require knowledge of when to reply given the context of the dialog. In general, we acknowledge that exist four dimensions of understanding and replying to an utterance in MPCS which a chatbot that interacts in a multi-party chat group should fulfill: In the next section we present the state of the art and how they fullfil some of these dimensions. Conversational Systems In this section we discuss the state of the art on conversational systems in three perspectives: types of interactions, types of architecture, and types of context reasoning. Then we present a table that consolidates and compares all of them. ELIZA BIBREF11 was one of the first softwares created to understand natural language processing. Joseph Weizenbaum created it at the MIT in 1966 and it is well known for acting like a psychotherapist and it had only to reflect back onto patient's statements. ELIZA was created to tackle five "fundamental technical problems": the identification of critical words, the discovery of a minimal context, the choice of appropriate transformations, the generation of appropriate responses to the transformation or in the absence of critical words, and the provision of an ending capacity for ELIZA scripts. Right after ELIZA came PARRY, developed by Kenneth Colby, who is psychiatrist at Stanford University in the early 1970s. The program was written using the MLISP language (meta-lisp) on the WAITS operating system running on a DEC PDP-10 and the code is non-portable. Parts of it were written in PDP-10 assembly code and others in MLISP. There may be other parts that require other language translators. PARRY was the first system to pass the Turing test - the psychiatrists were able to make the correct identification only 48 percent of the time, which is the same as a random guessing. A.L.I.C.E. (Artificial Linguistic Internet Computer Entity) BIBREF12 appeared in 1995 but current version utilizes AIML, an XML language designed for creating stimulus-response chat robots BIBREF13 . A.L.I.C.E. bot has, at present, more than 40,000 categories of knowledge, whereas the original ELIZA had only about 200. The program is unable to pass the Turing test, as even the casual user will often expose its mechanistic aspects in short conversations. Cleverbot (1997-2014) is a chatbot developed by the British AI scientist Rollo Carpenter. It passed the 2011 Turing Test at the Technique Techno-Management Festival held by the Indian Institute of Technology Guwahati. Volunteers participate in four-minute typed conversations with either Cleverbot or humans, with Cleverbot voted 59.3 per cent human, while the humans themselves were rated just 63.3 per cent human BIBREF14 . Types of Interactions Although most part of the research literature focuses on the dialogue of two persons, the reality of everyday life interactions shows a substantial part of multi-user conversations, such as in meetings, classes, family dinners, chats in bars and restaurants, and in almost every collaborative or competitive environment such as hospitals, schools, offices, sports teams, etc. The ability of human beings to organize, manage, and (mostly) make productive such complex interactive structures which are multi-user conversations is nothing less than remarkable. The advent of social media platforms and messaging systems such as WhatsApp in the first 15 years of the 21st century expanded our ability as a society to have asynchronous conversations in text form, from family and friends chatgroups to whole nations conversing in a highly distributed form in social media BIBREF15 . In this context, many technological advances in the early 2010s in natural language processing (spearheaded by the IBM Watson's victory in Jeopardy BIBREF16 ) spurred the availability in the early 2010s of text-based chatbots in websites and apps (notably in China BIBREF17 ) and spoken speech interfaces such as Siri by Apple, Cortana by Microsoft, Alexa by Amazon, and Allo by Google. However, the absolute majority of those chatbot deployments were in contexts of dyadic dialog, that is, a conversation between a single chatbot with a single user. Most of the first toolkits for chatbot design and development of this initial period implicit assume that an utterance from the user is followed by an utterance of the chatbot, which greatly simplifies the management of the conversation as discussed in more details later. Therefore, from the interaction point of view, there are two types: 1) one in which the chatbot was designed to chat with one person or chatbot, and 2) other in which the chatbot can interact with more than two members in the chat. Dyadic Chatbot A Dyadic Chatbot is a chatbot that does know when to talk. If it receives an utterance, it will always handle and try to reply to the received utterance. For this chatbot to behave properly, either there are only two members in the chat, and the chatbot is one of them, or there are more, but the chatbot replies only when its name or nickname is mentioned. This means that a dyadic chatbot does not know how to coordinate with many members in a chat group. It lacks the social ability of knowing when it is more suitable to answer or not. Also, note that we are not considering here the ones that would use this social ability as an advantage in the conversation, because if the chatbot is doing with this intention, it means that the chatbot was designed to be aware of the social issues regarding a chat with multiple members, which is not the case of a dyadic chatbot. Most existing chatbots, from the first system, ELIZA BIBREF11 , until modern state-of-the-art ones fall into this category. Multiparty Conversations In multiparty conversations between people and computer systems, natural language becomes the communication protocol exchanged not only by the human users, but also among the bots themselves. When every actor, computer or user, understands human language and is able to engage effectively in a conversation, a new, universal computer protocol of communication is feasible, and one for which people are extremely good at. There are many differences between dyadic and multiparty conversations, but chiefly among them is turn-taking, that is, how a participant determines when it is appropriate to make an utterance and how that is accomplished. There are many social settings, such as assemblies, debates, one-channel radio communications, and some formal meetings, where there are clear and explicit norms of who, when, and for long a participant can speak. The state of the art for the creation of chatbots that can participate on multiparty conversations currently is a combination of the research on the creation of chatbots and research on the coordination or governance of multi-agents systems. A definition that mixes both concepts herein present is: A chatbot is an agent that interacts through natural language. Although these areas complement each other, there is a lack of solutions for creating multiparty-aware chatbots or governed chatbots, which can lead to higher degree of system trust. Multi-Dyadic Chatbots Turn-taking in generic, multiparty spoken conversation has been studied by, for example, Sacks et al. BIBREF18 . In broad terms, it was found that participants in general do not overlap their utterances and that the structure of the language and the norms of conversation create specific moments, called transition-relevance places, where turns can occur. In many cases, the last utterances make clear to the participants who should be the next speaker (selected-next-speaker), and he or she can take that moment to start to talk. Otherwise, any other participant can start speaking, with preference for the first starter to get the turn; or the current speaker can continue BIBREF18 . A key part of the challenge is to determine whether the context of the conversation so far have or have not determined the next speaker. In its simplest form, a vocative such as the name of the next speaker is uttered. Also, there is a strong bias towards the speaker before the current being the most likely candidate to be the next speaker. In general the detection of transition-relevance places and of the selected-next-speaker is still a challenge for speech-based machine conversational systems. However, in the case of text message chats, transition-relevance places are often determined by the acting of posting a message, so the main problem facing multiparty-enabled textual chatbots is in fact determining whether there is and who is the selected-next-speaker. In other words, chatbots have to know when to shut up. Bohus and Horowitz BIBREF19 have proposed a computational probabilistic model for speech-based systems, but we are not aware of any work dealing with modeling turn-taking in textual chats. Coordination of Multi-Agent Systems A multi-agent system (MAS) can be defined as a computational environment in which individual software agents interact with each other, in a cooperative manner, or in a competitive manner, and sometimes autonomously pursuing their individual goals. During this process, they access the environment's resources and services and occasionally produce results for the entities that initiated these software agents. As the agents interact in a concurrent, asynchronous and decentralized manner, this kind of system can be categorized as a complex system BIBREF20 . Research in the coordination of multi-agent systems area does not address coordination using natural dialogue, as usually all messages are structured and formalized so the agents can reason and coordinate themselves. On the other hand, chatbots coordination have some relations with general coordination mechanisms of multi-agent systems in that they specify and control interactions between agents. However, chatbots coordination mechanisms is meant to regulate interactions and actions from a social perspective, whereas general coordination languages and mechanisms focus on means for expressing synchronization and coordination of activities and exchange of information, at a lower computational level. In open multi-agent systems the development takes place without a centralized control, thus it is necessary to ensure the reliability of these systems in a way that all the interactions between agents will occur according to the specification and that these agents will obey the specified scenario. For this, these applications must be built upon a law-governed architecture. Minsky published the first ideas about laws in 1987 BIBREF21 . Considering that a law is a set of norms that govern the interaction, afterwards, he published a seminal paper with the Law-Governed Interaction (LGI) conceptual model about the role of interaction laws on distributed systems BIBREF22 . Since then, he conducted further work and experimentation based on those ideas BIBREF23 . Although at the low level a multiparty conversation system is a distributed system and the LGI conceptual model can be used in a variety of application domains, it is composed of abstractions basically related to low level information about communication issues of distributed systems (like the primitives disconnected, reconnected, forward, and sending or receiving of messages), lacking the ability to express high level information of social systems. Following the same approach, the Electronic Institution (EI) BIBREF24 solution also provides support for interaction norms. An EI has a set of high-level abstractions that allow for the specification of laws using concepts such as agent roles, norms and scenes. Still at the agent level but more at the social level, the XMLaw description language and the M-Law framework BIBREF25 BIBREF26 were proposed and developed to support law-governed mechanism. They implement a law enforcement approach as an object-oriented framework and it allows normative behavior through the combination between norms and clocks. The M-Law framework BIBREF26 works by intercepting messages exchanged between agents, verifying the compliance of the messages with the laws and subsequently redirecting the message to the real addressee, if the laws allow it. If the message is not compliant, then the mediator blocks the message and applies the consequences specified in the law, if any. They are called laws in the sense that they enforce the norms, which represent what can be done (permissions), what cannot be done (prohibitions) and what must be done (obligations). Coordinated Aware Chatbots in a Multiparty Conversation With regard to chatbot engines, there is a lack of research directed to building coordination laws integrated with natural language. To the best of our knowledge, the architecture proposed in this paper is the first one in the state of the art designed to support the design and development of coordinated aware chatbots in a multiparty conversation. Types of Architectures There are mainly three types of architectures when building conversational systems: totally rule-oriented, totally data-oriented, and a mix of rules and data-oriented. Rule-oriented A rule-oriented architecture provides a manually coded reply for each recognized utterance. Classical examples of rule-based chatbots include Eliza and Parry. Eliza could also extract some words from sentences and then create another sentence with these words based on their syntatic functions. It was a rule-based solution with no reasoning. Eliza could not "understand" what she was parsing. More sophisticated rule-oriented architectures contain grammars and mappings for converting sentences to appropriate sentences using some sort of knowledge. They can be implemented with propositional logic or first-order logic (FOL). Propositional logic assumes the world contains facts (which refer to events, phenomena, symptoms or activities). Usually, a set of facts (statements) is not sufficient to describe a domain in a complete manner. On the other hand, FOL assumes the world contains Objects (e.g., people, houses, numbers, etc.), Relations (e.g. red, prime, brother of, part of, comes between, etc.), and Functions (e.g. father of, best friend, etc.), not only facts as in propositional logic. Moreover, FOL contains predicates, quantifiers and variables, which range over individuals (which are domain of discourse). Prolog (from French: Programmation en Logique) was one of the first logic programming languages (created in the 1970s), and it is one of the most important languages for expressing phrases, rules and facts. A Prolog program consists of logical formulas and running a program means proving a theorem. Knowledge bases, which include rules in addition to facts, are the basis for most rule-oriented chatbots created so far. In general, a rule is presented as follows: DISPLAYFORM0 Prolog made it possible to perform the language of Horn clauses (implications with only one conclusion). The concept of Prolog is based on predicate logic, and proving theorems involves a resolute system of denials. Prolog can be distinguished from classic programming languages due to its possibility of interpreting the code in both a procedural and declarative way. Although Prolog is a set of specifications in FOL, it adopts the closed-world assumption, i.e. all knowledge of the world is present in the database. If a term is not in the database, Prolog assumes it is false. In case of Prolog, the FOL-based set of specifications (formulas) together with the facts compose the knowledge base to be used by a rule-oriented chatbot. However an Ontology could be used. For instance, OntBot BIBREF27 uses mapping technique to transform ontologies and knowledge into relational database and then use that knowledge to drive its chats. One of the main issues currently facing such a huge amount of ontologies stored in a database is the lack of easy to use interfaces for data retrieval, due to the need to use special query languages or applications. In rule-oriented chatbots, the degree of intelligent behavior depends on the knowledge base size and quality (which represents the information that the chatbot knows), poor ones lead to weak chatbot responses while good ones do the opposite. However, good knowledge bases may require years to be created, depending on the domain. Data-oriented As opposed to rule-oriented architectures, where rules have to be explicitly defined, data-oriented architectures are based on learning models from samples of dialogues, in order to reproduce the behavior of the interaction that are observed in the data. Such kind of learning can be done by means of machine learning approach, or by simply extracting rules from data instead of manually coding them. Among the different technologies on which these system can be based, we can highlight classical information retrieval algorithms, neural networks BIBREF28 , Hidden Markov Models (HMM) BIBREF29 , and Partially Observable Markov Decision Process (POMDP) BIBREF30 . Examples include Cleverbot and Tay BIBREF31 . Tay was a chatbot developed by Microsoft that after one day live learning from interaction with teenagers on Twitter, started replying impolite utterances. Microsoft has developed others similar chatbots in China (Xiaoice) and in Japan (Rinna). Microsoft has not associated its publications with these chatbots, but they have published a data-oriented approach BIBREF32 that proposes a unified multi-turn multi-task spoken language understanding (SLU) solution capable of handling multiple context sensitive classification (intent determination) and sequence labeling (slot filling) tasks simultaneously. The proposed architecture is based on recurrent convolutional neural networks (RCNN) with shared feature layers and globally normalized sequence modeling components. A survey of public available corpora for can be found in BIBREF33 . A corpus can be classified into different categories, according to: the type of data, whether it is spoken dialogues, transcripts of spoken dialogues, or directly written; the type of interaction, if it is human-human or human-machine; and the domain, whether it is restricted or unconstrained. Two well-known corpora are the Switchboard dataset, which consists of transcripts of spoken, unconstrained, dialogues, and the set of tasks for the Dialog State Tracking Challenge (DSTC), which contain more constrained tasks, for instance the restaurant and travel information sets. Rule and Data-oriented The model of learning in current A.L.I.C.E. BIBREF13 is incremental or/and interactive learning because a person monitors the robot's conversations and creates new AIML content to make the responses more appropriate, accurate, believable, "human", or whatever he/she intends. There are algorithms for automatic detection of patterns in the dialogue data and this process provides the person with new input patterns that do not have specific replies yet, permitting a process of almost continuous supervised refinement of the bot. As already mentioned, A.L.I.C.E. consists of roughly 41,000 elements called categories which is the basic unit of knowledge in AIML. Each category consists of an input question, an output answer, and an optional context. The question, or stimulus, is called the pattern. The answer, or response, is called the template. The two types of optional context are called that and topic. The keyword that refers to the robot's previous utterance. The AIML pattern language consists only of words, spaces, and the wildcard symbols "_" and "*". The words may consist only of letters and numerals. The pattern language is case invariant. Words are separated by a single space, and the wildcard characters function like words, similar to the initial pattern matching strategy of the Eliza system. More generally, AIML tags transform the reply into a mini computer program which can save data, activate other programs, give conditional responses, and recursively call the pattern matcher to insert the responses from other categories. Most AIML tags in fact belong to this template side sublanguage BIBREF13 . AIML language allows: Symbolic reduction: Reduce complex grammatical forms to simpler ones. Divide and conquer: Split an input into two or more subparts, and combine the responses to each. Synonyms: Map different ways of saying the same thing to the same reply. Spelling or grammar corrections: the bot both corrects the client input and acts as a language tutor. Detecting keywords anywhere in the input that act like triggers for a reply. Conditionals: Certain forms of branching to produce a reply. Any combination of (1)-(6). When the bot chats with multiple clients, the predicates are stored relative to each client ID. For example, the markup INLINEFORM0 set name INLINEFORM1 "name" INLINEFORM2 Matthew INLINEFORM3 /set INLINEFORM4 stores the string Matthew under the predicate named "name". Subsequent activations of INLINEFORM5 get name="name" INLINEFORM6 return "Matthew". In addition, one of the simple tricks that makes ELIZA and A.L.I.C.E. so believable is a pronoun swapping substitution. For instance: U: My husband would like to invest with me. S: Who else in your family would like to invest with you? Types of Intentions According to the types of intentions, conversational systems can be classified into two categories: a) goal-driven or task oriented, and b) non-goal-driven or end-to-end systems. In a goal-driven system, the main objective is to interact with the user so that back-end tasks, which are application specific, are executed by a supporting system. As an example of application we can cite technical support systems, for instance air ticket booking systems, where the conversation system must interact with the user until all the required information is known, such as origin, destination, departure date and return date, and the supporting system must book the ticket. The most widely used approaches for developing these systems are Partially-observed Decision Processes (POMDP) BIBREF30 , Hidden Markov Models (HMM) BIBREF29 , and more recently, Memory Networks BIBREF28 . Given that these approaches are data-oriented, a major issue is to collect a large corpora of annotated task-specific dialogs. For this reason, it is not trivial to transfer the knowledge from one to domain to another. In addition, it might be difficult to scale up to larger sets of tasks. Non-goal-driven systems (also sometimes called reactive systems), on the other hand, generate utterances in accordance to user input, e.g. language learning tools or computer games characters. These systems have become more popular in recent years, mainly owning to the increase of popularity of Neural Networks, which is also a data-oriented approach. The most recent state of the art to develop such systems have employed Recurrent Neural Networs (RNN) BIBREF34 , Dynamic Context-Sensitive Generation BIBREF35 , and Memory Networks BIBREF36 , just to name a few. Nevertheless, probabilistic methods such as Hidden Topic Markov Models (HTMM) BIBREF37 have also been evaluated. Goal-driven approach can create both pro-active and reactive chatbots, while non-goal-driven approach creates reactive chatbots. In addition, they can serve as a tool to goal-driven systems as in BIBREF28 . That is, when trained on corpora of a goal-driven system, non-goal-driven systems can be used to simulate user interaction to then train goal-driven models. Types of Context Reasoning A dialogue system may support the context reasoning or not. Context reasoning is necessary in many occasions. For instance, when partial information is provided the chatbot needs to be able to interact one or more turns in order to get the complete information in order to be able to properly answer. In BIBREF38 , the authors present a taxonomy of errors in conversational systems. The ones regarding context-level errors are the ones that are perceived as the top-10 confusing and they are mainly divided into the following: Excess/lack of proposition: the utterance does not provide any new proposition to the discourse context or provides excessive information than required. Contradiction: the utterance contains propositions that contradict what has been said by the system or by the user. Non-relevant topic: the topic of the utterance is irrelevant to the current context such as when the system suddenly jumps to some other topic triggered by some particular word in the previous user utterance. Unclear relation: although the utterance might relate to the previous user utterance, its relation to the current topic is unclear. Topic switch error: the utterance displays the fact that the system missed the switch in topic by the user, continuing with the previous topic. Rule-oriented In the state of the art most of the proposed approaches for context reasoning lies on rules using logics and knowledge bases as described in the Rule-oriented architecture sub-section. Given a set of facts extracted from the dialogue history and encoded in, for instance, FOL statements, a queries can be posed to the inference engine and produce answers. For instance, see the example in Table TABREF37 . The sentences were extracted from BIBREF36 (which does not use a rule-oriented approach), and the first five statements are their respective facts. The system then apply context reasoning for the query Q: Where is the apple. If statements above are received on the order present in Table TABREF37 , if the query Q: Where is the apple is sent, the inference engine will produce the answer A: Bedroom (i.e., the statement INLINEFORM0 is found by the model and returned as True). Nowadays, the most common way to store knowledge bases is on triple stores, or RDF (Resource Description Framework) stores. A triple store is a knowledge base for the storage and retrieval of triples through semantic queries. A triple is a data entity composed of subject-predicate-object, like "Sam is at the kitchen" or "The apple is with Sam", for instance. A query language is needed for storing and retrieving data from a triple store. While SPARQL is a RDF query language, Rya is an open source scalable RDF triple store built on top of Apache Accumulo. Originally developed by the Laboratory for Telecommunication Sciences and US Naval Academy, Rya is currently being used by a number of american government agencies for storing, inferencing, and querying large amounts of RDF data. A SPARQL query has a SQL-like syntax for finding triples matching specific patterns. For instance, see the query below. It retrieves all the people that works at IBM and lives in New York: SELECT ?people WHERE { ?people <worksAt> <IBM> . ?people <livesIn> <New York>. } Since triple stores can become huge, Rya provides three triple table index BIBREF39 to help speeding up queries: SPO: subject, predicate, object POS: predicate, object, subject OSP: object, subject, predicate While Rya is an example of an optimized triple store, a rule-oriented chatbot can make use of Rya or any triple store and can call the semantic search engine in order to inference and generate proper answers. Data-oriented Recent papers have used neural networks to predict the next utterance on non-goal-driven systems considering the context, for instance with Memory Networks BIBREF40 . In this work BIBREF36 , for example the authors were able to generate answers for dialogue like below: Sam walks into the kitchen. Sam picks up an apple. Sam walks into the bedroom. Sam drops the apple. Q: Where is the apple? A: Bedroom Sukhbaatar's model represents the sentence as a vector in a way that the order of the words matter, and the model encodes the temporal context enhancing the memory vector with a matrix that contains the temporal information. During the execution phase, Sukhbaatar's model takes a discrete set of inputs INLINEFORM0 that are to be stored in the memory, a query INLINEFORM1 , and outputs an answer INLINEFORM2 . Each of the INLINEFORM3 , INLINEFORM4 , and INLINEFORM5 contains symbols coming from a dictionary with INLINEFORM6 words. The model writes all INLINEFORM7 to the memory up to a fixed buffer size, and then finds a continuous representation for the INLINEFORM8 and INLINEFORM9 . The continuous representation is then processed via multiple computational steps to output INLINEFORM10 . This allows back propagation of the error signal through multiple memory accesses back to the input during training. Sukhbaatar's also presents the state of the art of recent efforts that have explored ways to capture dialogue context, treated as long-term structure within sequences, using RNNs or LSTM-based models. The problem of this approach is that it is has not been tested for goal-oriented systems. In addition, it works with a set of sentences but not necessary from multi-party bots. Platforms Regarding current platforms to support the development of conversational systems, we can categorize them into three types: platforms for plugging chatbots, for creating chatbots and for creating service chatbots. The platforms for plugging chatbots provide tools for integrating them another system, like Slack. The chatbots need to receive and send messages in a specific way, which depends on the API and there is no support for actually helping on building chatbots behavior with natural language understanding. The platforms for creating chatbots mainly provide tools for adding and training intentions together with dialogue flow specification and some entities extraction, with no reasoning support. Once the models are trained and the dialogue flow specified, the chatbots are able to reply to the received intention. The platforms for creating service chatbots provide the same functionalities as the last one and also provide support for defining actions to be executed by the chatbots when they are answering to an utterance. Table TABREF43 summarizes current platforms on the market accordingly to these categories. There is a lack on platforms that allow to create chatbots that can be coordinated in a multiparty chat with governance or mediation. A Conceptual Architecture for Multiparty-Aware Chatbots In this section the conceptual architecture for creating a hybrid rule and machine learning-based MPCS is presented. The MPCS is defined by the the entities and relationships illustrated in Fig. FIGREF44 which represents the chatbot's knowledge. A Chat Group contains several Members that join the group with a Role. The role may constrain the behavior of the member in the group. Chatbot is a type of Role, to differentiate from persons that may also join with different roles. For instance, a person may assume the role of the owner of the group, or someone that was invited by the owner, or a domain role like an expert, teacher or other. When a Member joins the Chat Group, it/he/she can send Utterances. The Member then classifies each Utterance with an Intent which has a Speech Act. The Intent class, Speech Act class and the Intent Flow trigger the Action class to be executed by the Member that is a Chatbot. The Chatbots associated to the Intention are the only ones that know how to answer to it by executing Actions. The Action, which implements one Speech Act, produces answers which are Utterances, so, for instance, the Get_News action produces an Utterance for which Intention's speech act is Inform_News. The Intent Flow holds the intent's class conversation graph which maps the dialog state as a decision tree. The answer's intention class is mapped in the Intent Flow as a directed graph G defined as following: DISPLAYFORM0 From the graph definitions, INLINEFORM0 is for vertices and INLINEFORM1 is for relations, which are the arrows in the graph. And in Equation EQREF46 : INLINEFORM0 is the set of intentions pairs, INLINEFORM0 is the set of paths to navigate through the intentions, INLINEFORM0 is the arrow's head, and INLINEFORM0 is the arrow's tail. This arrow represents a turn from an utterance with INLINEFORM0 intention class which is replying to an utterance with INLINEFORM1 intention class to the state which an utterance with INLINEFORM2 intention's class is sent. INLINEFORM0 is the intention class of the answer to be provided to the received INLINEFORM1 intention class. In addition, each intent's class may refer to many Entities which, in turn, may be associated to several Features. For instance, the utterance "I would like to invest USD10,000 in Savings Account for 2 years" contains one entity – the Savings Account's investment option – and two features – money (USD10,000) and period of time (2 years). The Intent Flow may need this information to choose the next node which will give the next answer. Therefore, if the example is changed a little, like "I would like to invest in Savings Account", INLINEFORM0 is constrained by the "Savings Account" entity which requires the two aforementioned features. Hence, a possible answer by one Member of the group would be "Sure, I can simulate for you, what would be the initial amount and the period of time of the investment?" With these conceptual model's elements, a MPCS system can be built with multiple chatbots. Next subsection further describes the components workflow. Workflow Figure FIGREF48 illustrates from the moment that an utterance is sent in a chat group to the moment a reply is generated in the same chat group, if the case. One or more person may be in the chat, while one or more chatbots too. There is a Hub that is responsible for broadcasting the messages to every Member in the group, if the case. The flow starts when a Member sends the utterance which goes to the Hub and, if allowed, is broadcasted. Many or none interactions norms can be enforced at this level depending on the application. Herein, a norm can be a prohibition, obligation or permission to send an utterance in the chat group. Once the utterance is broadcasted, a chatbot needs to handle the utterance. In order to properly handle it, the chatbot parses the utterance with several parsers in the Parsing phase: a Topic Classifier, the Dependency Parsing, which includes Part-of-Speech tags and semantics tags, and any other that can extract metadata from the utterance useful for the reasoning. All these metadata, together with more criteria, may be used in the Frame parsing which is useful for context reasoning. All knowledge generated in this phase can be stored in the Context. Then, the Intent Classifier tries to detect the intent class of the utterance. If detected, the Speech Act is also retrieved. And an Event Detector can also check if there is any dialog inconsistency during this phase. After that, the Filtering phase receives the object containing the utterance, the detected intent, and all metadata extracted so far and decides if an action should be performed to reply to the utterance. If yes, it is sent to the Acting phase which performs several steps. First the Action Classifier tries to detect the action to be performed. If detected, the action is executed. At this step, many substeps may be performed, like searching for an information, computing maths, or generating information to create the answer. All of this may require a search in the Context and also may activate the Error Detector component to check if the dialog did not run into a wrong state. After the answer is generated, the Filtering phase is activated again to check if the reply should be really sent. If so, it is sent to the Hub which, again may check if it can be broadcasted before actually doing it. The topic classifier is domain-dependent and is not mandatory. However, the chatbot can better react when the intent or action is not detected, which means that it does not know how to answer. Many reasons might explain this situation: the set of intents might be incomplete, the action might not have produced the proper behavior, misunderstanding might happen, or the chatbot was not designed to reply to a particular topic. In all cases, it must be able to produce a proper reply, if needed. Because this might happen throughout the workflow, the sooner that information is available, the better the chatbot reacts. Therefore it is one of the first executions of the flow. Dependency is the notion that linguistic units, e.g. words, are connected to each other by directed links. The (finite) verb is taken to be the structural center of clause structure. All other syntactic units (words) are either directly or indirectly connected to the verb in terms of the directed links, which are called dependencies. It is a one-to-one correspondence: for every element (e.g. word or morph) in the sentence, there is exactly one node in the structure of that sentence that corresponds to that element. The result of this one-to-one correspondence is that dependency grammars are word (or morph) grammars. All that exist are the elements and the dependencies that connect the elements into a structure. Dependency grammar (DG) is a class of modern syntactic theories that are all based on the dependency relation. Semantic dependencies are understood in terms of predicates and their arguments. Morphological dependencies obtain between words or parts of words. To facilitate future research in unsupervised induction of syntactic structure and to standardize best-practices, a tagset that consists of twelve universal part-of-speech categories was proposed BIBREF41 . Dependency parsers have to cope with a high degree of ambiguity and nondeterminism which let to different techniques than the ones used for parsing well-defined formal languages. Currently the mainstream approach uses algorithms that derive a potentially very large set of analyses in parallel and when disambiguation is required, this approach can be coupled with a statistical model for parse selection that ranks competing analyses with respect to plausibility BIBREF42 . Below we present an example of a dependency tree for the utterance: "I want to invest 10 thousands": [s]""blue[l]:black "tree": { "want VERB ROOT": { "I PRON nsubj": {}, "to ADP mark": {}, "invest VERB nmod": { "thousands NOUN nmod": { "10 NUM nummod": {} } } } The coarse-grained part-of-speech tags, or morphological dependencies (VERB, PRON, ADP, NOUN and NUM) encode basic grammatical categories and the grammatical relationships (nsubjs, nmod, nummod) are defined in the Universal Dependencies project BIBREF41 . In this module, the dependency tree generated is used together with a set of rules to extract information that is saved in the context using the Frame-based approach. This approach fills the slots of the frame with the extracted values from the dialogue. Frames are like forms and slots are like fields. Using the knowledge's conceptual model, the fields are represented by the elements Entities and Features. In the dependency tree example, the entity would be the implicit concept: the investment option, and the feature is the implicit concept: initial amount – 10 thousands. Since the goal is to invest, and there are more entities needed for that (i.e., fields to be filled), the next node in the Intention Flow tree would return an utterance which asks the user the time of investment, if he/she has not provided yet. This module could be implemented using different approaches according to the domain, but tree search algorithms will be necessary for doing the tree parsing. The Intent Classifier component aims at recognizing not only the Intent but the goal of the utterance sent by a Member, so it can properly react. The development of an intent classifier needs to deal with the following steps: i) the creation of dataset of intents, to train the classification algorithm; ii) the design of a classification algorithm that provides a reasonable level of accuracy; iii) the creation of dataset of trees of intents, the same as defined in i) and which maps the goals; iv) the design of a plan-graph search algorithm that maps the goal's state to a node in the graph; There are several approaches to create training sets for dialogues: from an incremental approach to crowdsourcing. In the incremental approach, the Wizard of Oz method can be applied to a set of potential users of the system, and from this study, a set of questions that the users asked posted to the `fake' system can be collected. These questions have to be manually classified into a set of intent classes, and used to train the first version of the system. Next, this set has to be increased both in terms of number of classes and samples per class. The Speech Act Classifier can be implemented with many speech act classes as needed by the application. The more classes, the more flexible the chatbot is. It can be built based on dictionaries, or a machine learning-based classifier can be trained. In the table below we present the main and more general speech act classes BIBREF43 used in the Chatbots with examples to differentiate one from another: There are at least as many Action classes as Speech Act classes, since the action is the realization of a speech act. The domain specific classes, like "Inform_News" or "Inform_Factoids", enhance the capabilities of answering of a chatbot. The Action Classifier can be defined as a multi-class classifier with the tuple DISPLAYFORM0 where INLINEFORM0 is the intent of the answer defined in ( EQREF46 ), INLINEFORM1 is the speech act of the answer, INLINEFORM2 and INLINEFORM3 are the sets of entities and features needed to produce the answer, if needed, respectively. This component is responsible for implementing the behavior of the Action class. Basic behaviors may exist and be shared among different chatbots, like the ones that implement the greetings, thanks or not understood. Although they can be generic, they can also be personalized to differentiate the bot from one another and also to make it more "real". Other cases like to inform, to send a query, to send a proposal, they are all domain-dependent and may require specific implementations. Anyway, figure FIGREF59 shows at the high level the generic workflow. If action class detected is task-oriented, the system will implement the execution of the task, say to guide a car, to move a robot's arm, or to compute the return of investments. The execution might need to access an external service in the Internet in order to complete the task, like getting the inflation rate, or the interest rate, or to get information about the environment, or any external factor. During the execution or after it is finished, the utterance is generated as a reply and, if no more tasks are needed, the action execution is finished. In the case of coordination of chatbots, one or more chatbots with the role of mediator may exist in the chat group and, at this step, it is able to invite one or more chatbots to the chat group and it is also able to redirect the utterances, if the case. The proposed architecture addresses the challenges as the following: What is the message/utterance about? solved by the Parsing phase; Who should reply to the utterance? solved by the Filtering phase and may be enforced by the Hub; How the reply should be built/generated? solved by the Acting phase; When should the reply be sent? may be solved by the Acting phase or the Filtering phase, and may be enforced by the Hub; And Context and Logging module is used throughout all phases. Architecture Implementation and Evaluation This section presents one implementation of the conceptual architecture presented in last section. After many refactorings, a framework called SABIA (Speech-Act-Based Intelligent Agents Framework) has been developed and CognIA (Cognitive Investment Advisor) application has been developed as an instantiation of SABIA framework. We present then the accuracy and some automated tests of this implementation. Speech-Act-based Intelligent Agents Framework SABIA was developed on top of Akka middleware. Akka is a toolkit and runtime that implements the Actor Model on the JVM. Akka's features, like concurrency, distributed computing, resilience, and message-passing were inspired by Erlang's actor model BIBREF44 BIBREF45 . The actor model is a mathematical model of concurrent computation that treats "actors" as the universal primitives of concurrent computation. In response to a message that it receives, an actor can: make local decisions, create more actors, send more messages, and determine how to respond to the next received message. Actors may modify private state, but can only affect each other through messages (avoiding the need for any locks). Akka middleware manages the actors life cycle and actors look up by theirs name, locally or remotely. We implemented each Member of the Chat Group as an Actor by extending the UntypedActor class of Akka middleware. Yet, we created and implemented the SabiaActorSystem as a singleton (i.e., a single instance of it exists in the system) BIBREF46 that has a reference to Akka's ActorSystem. During SabiaActorSystem's initialization, all parsers that consume too much memory during their initialization to load models are instantiated as singletons. In this way, we save time on their calls during the runtime. Moreover, all chat group management, like to join or leave the group, or to broadcast or filter a message at the Hub level is implemented in SABIA through the Chat Group behavior. This is implemented in SABIA as a singleton that is initialized during the SabiaActorSystem initialization with the URL of the service that implements the dependency parsing and is used on each utterance's arrival through the execution of the tagUtterance method. The service must retrieve a JSON Object with the dependency tree which is then parsed using depth-first search. SABIA does not support invariants for frame parsing. We are leaving this task to the instantiated application. There are two intent classifiers that can be loaded with trained models in order to be ready to be used at runtime: the 1-nearest-neighbor (1NN) and the SVM-based classifier. SABIA implements the Action Classifier assuming that the application uses a relational database with a data schema that implements the conceptual model presented in Figure FIGREF44 . Then the invariants parts that use SQL are already present and the application only needs to implement the database connection and follow the required data schema. SABIA provides partial implemented behavior for the Action through the Template method design pattern BIBREF46 , which implements the invariants parts of the action execution and leaves placeholders for customization. CognIA: A Cognitive Investment Advisor We developed CognIA, which is an instantiation of Sabia framework. A conversation is composed of a group chat that can contain multiple users and multiple chatbots. This example, in particular, has a mediator that can help users on financial matters, more specifically on investment options. For example, consider the following dialogue in the table below: The Table TABREF71 shows an example that uses the mixed-initiative dialogue strategy, and a dialogue mediator to provide coordination control. In this example of an application, there are many types of intentions that should be answered: Q&A (question and answer) about definitions, investment options, and about the current finance indexes, simulation of investments, which is task-oriented and requires computation, and opinions, which can be highly subjective. In Table SECREF72 , we present the interaction norms that were needed in Cognia. The Trigger column describes the event that triggers the Behavior specified in the third column. The Pre-Conditions column specifies what must happen in order to start the behavior execution. So, for instance, line 2, when the user sends an utterance in the chat group, an event is triggered and, if the utterance's topic is CDB (Certificate of Deposit which is a fixed rate investment) or if it is about the Savings Account investment option and the speech act is not Query_Calculation and the CDB and Savings Account members are not in the chat, then the behavior is activated. The bot members that implement these behaviors are called cdbguru and poupancaguru. Therefore these names are used when there is a mention. Note that these interactions norms are not explicitly defined as obligations, permissions, and prohibitions. They are implict from the behavior described. During this implementation, we did not worry about explicitly defining the norms, because the goal was to evaluate the overall architecture, not to enhance the state of the art on norms specification for conversational systems. In addition, CognIA has only the presented interaction norms defined in Table SECREF72 , which is a very small set that that does not required model checking or verification of conflicts. |p2cm|p5.0cm|p5.0cm|Cognia Interaction NormsCognia Interaction Norms Trigger Pre-Conditions Behavior On group chat creation Cognia chatbot is available Cognia chatbot joins the chat with the mediator role and user joins the chat with the owner_user role On utterance sent by user Utterance's topic is CDB (cdbguru) or Savings Account (poupancaguru) and speech act is not Query_Calculation and they are not in the chat Cognia invites experts to the chat and repeats the utterance to them On utterance sent by user Utterance's topic is CDB (cdbguru) or Savings Account (poupancaguru) and speech act is not Query_Calculation and they are in the chat Cognia waits for while and cdbguru or poupancaguru respectively handles the utterance. If they don't understand, they don't reply On utterance sent by the experts If Cognia is waiting for them and has received both replies Cognia does not wait anymore On utterance sent Utterance mentions cdbguru or poupancaguru cdbguru or poupancaguru respectively handles the utterance On utterance sent Utterance mentions cdbguru or poupancaguru and they don't reply after a while and speech act is Query_Calculation Cognia sends I can only chat about investments... On utterance sent Utterance mentions cdbguru or poupancaguru and they don't reply after while and speech act is not Query_Calculation Cognia sends I didn't understand On utterance sent Utterance's speech act is Query_Calculation and period or initial amount of investment were not specified Cognia asks the user the missing information On utterance sent Utterance's speech act is Query_Calculation and period and initial amount of investment were specified and the experts are not in the chat Cognia invites experts to the chat and repeats the utterance to them On utterance sent Utterance's speech act is Query_Calculation and period and initial amount of investment were specified and the experts are in the chat Cognia repeats the utterance to experts On utterance sent Utterance's speech act is Query_Calculation Cognia extracts variables and saves the context On utterance sent Utterance's speech act is Query_Calculation and the experts are in the chat and the experts are mentioned Experts extract information, save in the context, compute calculation and send information On utterance sent Utterance's speech act is Inform_Calculation and Cognia received all replies Cognia compares the results and inform comparison On utterance sent Utterance mentions a chatbot but has no other text The chatbot replies How can I help you? On utterance sent Utterance is not understood and speech act is Question The chatbot replies I don't know... I can only talk about topic X On utterance sent Utterance is not understood and speech act is not Question The chatbot replies I didn't understand On utterance sent Utterance's speech act is one of { Greetings, Thank, Bye } All chatbots reply to utterance On group chat end All chatbots leave the chat, and the date and time of the end of chat is registered We instantiated SABIA to develop CognIA as follows: the Mediator, Savings Account, CDB and User Actors are the Members of the Chat Group. The Hub was implemented using two servers: Socket.io and Node.JS which is a socket client of the Socket.io server. The CognIA system has also one Socket Client for receiving the broadcast and forwarding to the Group Chat Manager. The former will actually do the broadcast to every member after enforcing the norms that applies specified in Table SECREF72 . Each Member will behave according to this table too. For each user of the chat group, on a mobile or a desktop, there is its corresponding actor represented by the User Actor in the figure. Its main job is to receive Akka's broadcast and forward to the Socket.io server, so it can be finally propagated to the users. All the intents, actions, factual answers, context and logging data are saved in DashDB (a relational Database-as-a-Service system). When an answer is not retrieved, a service which executes the module Search Finance on Social Media on a separate server is called. This service was implemented with the assumption that finance experts post relevant questions and answers on social media. Further details are explained in the Action execution sub-section. We built a small dictionary-based topic classifier to identify if an utterance refers to finance or not, and if it refers to the two investment options (CDB or Savings Account) or not. The dependency parsing is extremely important for computing the return of investment when the user sends an utterance with this intention. Our first implementation used regular expressions which led to a very fragile approach. Then we used a TensorFlow implementation BIBREF47 of a SyntaxNet model for Portuguese and used it to generate the dependency parse trees of the utterances. The SyntaxNet model is a feed-forward neural network that operates on a task-specific transition system and achieves the state-of-the-art on part-of-speech tagging, dependency parsing and sentence compression results BIBREF48 . Below we present output of the service for the utterance: "I want to invest 10 thousands in 40 months": [s]""blue[l]:black { "original": "I would like to invest 10 thousands in 40 months", "start_pos": [ 23, 32], "end_pos": [ 27, 33], "digits": [ 10000, 40], "converted": "I would like to invest 10000 in 40 months", "tree": { "like VERB ROOT": { "I PRON nsubj": {}, "would MD aux":{ "invest VERB xcomp":{ "to TO aux": {}, "10000 NUM dobj": {}, "in IN prep": { "months NOUN pobj":{ "40 NUM num": {}}}}}}} The service returns a JSON Object containing six fields: original, start_pos, end_pos, digits, converted and tree. The original field contains the original utterance sent to the service. The converted field contains the utterance replaced with decimal numbers, if the case (for instance, "10 thousands" was converted to "10000" and replaced in the utterance). The start_pos and end_pos are arrays that contain the start and end char positions of the numbers in the converted utterance. While the tree contains the dependency parse tree for the converted utterance. Given the dependency tree, we implemented the frame parsing which first extracts the entities and features from the utterance and saves them in the context. Then, it replaces the extracted entities and features for reserved characters. extract_period_of_investment (utteranceTree) [1] [t] numbersNodes INLINEFORM0 utteranceTree.getNumbersNodes(); [t] foreach(numberNode in numbersNodes) do [t] parentsOfNumbersNode INLINEFORM1 numbersNode.getParents() [t] foreach(parent in parentsOfNumbersNodes) do [t] if ( parent.name contains { "day", "month", "year"} ) then [t] parentOfParent INLINEFORM2 parent.getParent() [t] if ( parentOfParent is not null and parentOfParent.getPosTag==Verb and parentOfParent.name in investmentVerbsSet ) then [t] return numberNode Therefore an utterance like "I would like to invest 10 thousands in 3 years" becomes "I would like to invest #v in #dt years". Or "10 in 3 years" becomes "#v in #dt years", and both intents have the same intent class. For doing that we implemented a few rules using a depth-first search algorithm combined with the rules as described in Algorithm UID79 , Algorithm UID79 and Algorithm UID79 . Note that our parser works only for short texts on which the user's utterance mentions only one period of time and/ or initial amount of investment in the same utterance. extract_initial_amount_of_investment (utteranceTree) [1] [t] numbersNodes INLINEFORM0 utteranceTree.getNumbersNodes(); [t] foreach(numberNode in numbersNodes) do [t] parentsOfNumbersNode INLINEFORM1 numbersNode.getParents() [t] foreach(parent in parentsOfNumbersNodes) do [t] if ( parent.name does not contain { "day", "month", "year"} ) then [t] return numberNode frame_parsing(utterance, utteranceTree) [1] [t] period INLINEFORM0 extract_period_of_investment (utteranceTree) [t] save_period_of_investment(period) [t] value INLINEFORM1 extract_initial_amount_of_investment (utteranceTree) [t] save_initial_amount_of_investment(value) [t] new_intent INLINEFORM2 replace(new_intent, period, "#dt") [t] new_intent INLINEFORM3 replace(new_intent, value, "#v") In CognIA we have complemented the speech act classes with the ones related to the execution of specific actions. Therefore, if the chatbot needed to compute the return of investment, then, once it is computed, the speech act of the reply will be Inform_Calculation and the one that represents the query for that is Query_Calculation. In table TABREF81 we list the specific ones. Given that there is no public dataset available with financial intents in Portuguese, we have employed the incremental approach to create our own training set for the Intent Classifier. First, we applied the Wizard of Oz method and from this study, we have collected a set of 124 questions that the users asked. Next, after these questions have been manually classified into a set of intent classes, and used to train the first version of the system, this set has been increased both in terms of number of classes and samples per class, resulting in a training set with 37 classes of intents, and a total 415 samples, with samples per class ranging from 3 to 37. We have defined our classification method based on features extracted from word vectors. Word vectors consist of a way to encode the semantic meaning of the words, based on their frequency of co-occurrence. To create domain-specific word vectors, a set of thousand documents are needed related to desired domain. Then each intent from the training set needs to be encoded with its corresponding mean word vector. The mean word vector is then used as feature vector for standard classifiers. We have created domain-specific word vectors by considering a set 246,945 documents, corresponding to of 184,001 Twitter posts and and 62,949 news articles, all related to finance . The set of tweets has been crawled from the feeds of blog users who are considered experts in the finance domain. The news article have been extracted from links included in these tweets. This set contained a total of 63,270,124 word occurrences, with a vocabulary of 97,616 distinct words. With the aforementioned word vectors, each intent from the training set has been encoded with its corresponding mean word vector. The mean word vector has been then used as feature vector for standard classifiers. As the base classifier, we have pursued with a two-step approach. In the first step, the main goal was to make use of a classifier that could be easily retrained to include new classes and intents. For this reason, the first implementation of the system considered an 1-nearest-neighbor (1NN) classifier, which is simply a K-nearest-neighbor classifier with K set to 1. With 1NN, the developer of the system could simply add new intents and classes to the classifier, by means of inserting new lines into the database storing the training set. Once we have considered that the training set was stable enough for the system, we moved the focus to an approach that would be able to provide higher accuracy rates than 1NN. For this, we have employed Support Vector Machines (SVM) with a Gaussian kernel, the parameters of which are optimized by means of a grid search. We manually mapped the intent classes used to train the intent classifier to action classes and the dependent entities and features, when the case. Table TABREF85 summarizes the number of intent classes per action class that we used in CognIA. For the majority of action classes we used SABIA's default behavior. For instance, Greet and Bye actions classes are implemented using rapport, which means that if the user says "Hi" the chatbot will reply "Hi". The Search News, Compute and Ask More classes are the ones that require specific implemention for CognIA as following: Search News: search finance on social media service BIBREF49 , BIBREF50 receives the utterance as input, searches on previously indexed Twitter data for finance for Portuguese and return to the one which has the highest score, if found. Ask More: If the user sends an utterance that has the intention class of simulating the return of investment, while not all variables to compute the return of investment are extracted from the dialogue, the mediator keeps asking the user these information before it actually redirects the query to the experts. This action then checks the state of the context given the specified intent flow as described in ( EQREF46 ) and ( EQREF57 ) in section SECREF4 to decide which variables are missing. For CognIA we manually added these dependencies on the database. Compute: Each expert Chatbot implements this action according to its expertise. The savings account chatbot computes the formula ( EQREF90 ) and the certificate of deposit computes the formula ( EQREF92 ). Both are currently formulas for estimating in Brazil. DISPLAYFORM0 where INLINEFORM0 is the return of investment for the savings account, INLINEFORM1 is the initial value of investment, INLINEFORM2 is the savings account interest rate and INLINEFORM3 is the savings account rate base. DISPLAYFORM0 where INLINEFORM0 is the return of investment for certificate of deposit, INLINEFORM1 is the initial value of investment, INLINEFORM2 is the Interbank Deposit rate (DI in Portuguese), INLINEFORM3 is the ID's percentual payed by the bank (varies from 90% to 120%), INLINEFORM4 is the number of days the money is invested, and finally INLINEFORM5 is the income tax on the earnings. Intention Classifier Accuracy In Table TABREF95 we present the comparison of some distinct classification on the first version of the training set, i.e. the set used to deploy the first classifier into the system. Roughly speaking, the 1NN classifier has been able to achieve a level of accuracy that is higher than other well-known classifiers, such as Logistic Regression and Naïve Bayes, showing that 1NN is suitable as a development classifier. Nevertheless, a SVM can perform considerable better than 1NN, reaching accuracies of about 12 percentage points higher, which demonstrates that this type of base classifier is a better choice to be deployed once the system is stable enough. It is worth mentioning that these results consider the leave-one-out validation procedure, given the very low number of samples in some classes. As we mentioned, the use of an 1NN classifier has allowed the developer of the system to easily add new intent classes and samples whenever they judged it necessary, so that the system could present new actions, or the understanding of the intents could be improved. As a consequence, the initial training set grew from 37 to 63 classes, and from 415 to 659 samples, with the number of samples per class varying from 2 to 63. For visualizing the impact on the accuracy of the system, in Table TABREF96 we present the accuracy of the same classifiers used in the previous evaluation, in the new set. In this case, we observe some drop in accuracy for 1NN, showing that this classifier suffers in dealing with scalability. On the other hand, SVM has shown to scale very well to more classes and samples, since its accuracy kept at a very similar level than that with the other set, with a difference of about only 1 percentage point. Testing SABIA In this section, we describe the validation framework that we created for integration tests. For this, we developed it as a new component of SABIA's system architecture and it provides a high level language which is able to specify interaction scenarios that simulate users interacting with the deployed chatbots. The system testers provide a set of utterances and their corresponding expected responses, and the framework automatically simulates users interacting with the bots and collect metrics, such as time taken to answer an utterance and other resource consumption metrics (e.g., memory, CPU, network bandwidth). Our goal was to: (i) provide a tool for integration tests, (ii) to validate CognIA's implementation, and (iii) to support the system developers in understanding the behavior of the system and which aspects can be improved. Thus, whenever developers modify the system's source code, the modifications must first pass the automatic test before actual deployment. The test framework works as follows. The system testers provide a set INLINEFORM0 of dialogues as input. Each dialogue INLINEFORM1 INLINEFORM2 INLINEFORM3 is an ordered set whose elements are represented by INLINEFORM4 , where INLINEFORM5 is the user utterance and INLINEFORM6 is an ordered set of pairs INLINEFORM7 that lists each response INLINEFORM8 each chatbot INLINEFORM9 should respond when the user says INLINEFORM10 . For instance, Table UID98 shows a typical dialogue ( INLINEFORM11 ) between a user and the CognIA system. Note that we are omitting part of the expected answer with "..." just to better visualize the content of the table. |p3.6cmp0.4cmp4.5cmp3.2cm|Content of dialogue INLINEFORM0 (example of dialogue in CognIA)Content of dialogue INLINEFORM1 (example of dialogue in CognIA User utterance INLINEFORM0 rId Expected response INLINEFORM1 Chatbot INLINEFORM2 gray!25 hello 1 Hello Mediator white what is cdb? 2 @CDBExpert what is cdb? Mediator white 3 CDB is a type of investment that... CDB Expert gray!25 which is better: cdb or savings account? 4 I found a post in the social media for.... Mediator white i would like to invest R$ 50 in six months 5 @SavingsAccountExpert and @CDBExpert, could you do a simulation... Mediator white 6 If you invest in Savings Account, ... Savings Account Exp. white 7 If you invest in CDB,... CDB Expert white 8 Thanks Mediator white 9 @User, there is no significant difference.. Mediator gray!25 so i want to invest R$ 10000 in 2 years 10 @SavingsAccountExpert and @CDBExpert, could you do a simulation... Mediator gray!25 11 If you invest in Savings Account,... Savings Account Exp. gray!25 12 If you invest in CDB,... CDB Expert gray!25 13 Thanks Mediator gray!25 14 @User, in that case, it is better... Mediator white what if i invest R$10,000 in 5 years? 15 @SavingsAccountExpert and @CDBExpert, could you do a simulation... Mediator white 16 If you invest in Saving Account,... Savings Account Exp. white 17 If you invest in CDB,... CDB Expert white 18 Thanks Mediator white 19 @User, in that case, it is better... Mediator gray!25 how about 15 years? 20 @SavingsAccountExpert and @CDBExpert, could you do a simulation... Mediator gray!25 21 If you invest in Savings Account,... Savings Account Exp gray!25 22 If you invest in CDB,... CDB Expert gray!25 23 Thanks Mediator gray!25 24 @User, in that case, it is better... Mediator white and 50,0000? 25 @SavingsAccountExpert and @CDBExpert, could you do a simulation... Mediator white 26 If you invest in Savings Account,... Savings Account Exp. white 27 If you invest in CDB,... CDB Expert white 28 Thanks Mediator white 29 @User, in that case, it is better.. Mediator gray!25 I want to invest in 50,000 for 15 years in CDB 30 Sure, follow this link to your bank... Mediator white thanks 31 You are welcome. Mediator The testers may also inform the number of simulated users that will concurrently use the platform. Then, for each simulated user, the test framework iterates over the dialogues in INLINEFORM0 and iterates over the elements in each dialogue to check if each utterance INLINEFORM1 was correctly responded with INLINEFORM2 by the chatbot INLINEFORM3 . There is a maximum time to wait. If a bot does not respond with the expected response in the maximum time (defined by the system developers), an error is raised and the test is stopped to inform the developers about the error. Otherwise, for each correct bot response, the test framework collects the time taken to respond that specific utterance by the bot for that specific user and continues for the next user utterance. Other consumption resource metrics (memory, CPU, network, disk). The framework is divided into two parts. One part is responsible to gather resource consumption metrics and it resides inside SABIA. The other part works as clients (users) interacting with the server. It collects information about time taken to answer utterances and checks if the utterances are answered correctly. By doing this, we not only provide a sanity test for the domain application (CognIA) developed in SABIA framework, but also a performance analysis of the platform. That is, we can: validate if the bots are answering correctly given a pre-defined set of known dialogues, check if they are answering in a reasonable time, and verify the amount of computing resources that were consumed to answer a specific utterance. Given the complexity of CognIA, these tests enable debugging of specific features like: understanding the amount of network bandwidth to use external services, or analyzing CPU and memory consumption when responding a specific utterance. The later may happen when the system is performing more complex calculations to indicate the investment return, for instance. CognIA was deployed on IBM Bluemix, a platform as a service, on a Liberty for Java Cloud Foundry app with 3 GB RAM memory and 1 GB disk. Each of the modules shown in Figure FIGREF74 are deployed on separate Bluemix servers. Node.JS and Socket.IO servers are both deployed as Node Cloud Foundry apps, with 256 MB RAM memory and 512 MB disk each. Search Finance on Social Media is on a Go build pack Cloud Foundry app with 128 MB RAM memory and 128 GB disk. For the framework part that simulates clients, we instantiated a virtual machine with 8 cores on IBM's SoftLayer that is able to communicate with Bluemix. Then, the system testers built two dialogues, i.e., INLINEFORM0 . The example shown in Table UID98 is the dialogue test INLINEFORM1 . For the dialogue INLINEFORM2 , although it also has 10 utterances, the testers varied some of them to check if other utterances in the finance domain (different from the ones in dialogue INLINEFORM3 ) are being responded as expected by the bots. Then, two tests are performed and the results are analyzed next. All tests were repeated until the standard deviation of the values was less than 1%. The results presented next are the average of these values within the 1% margin. Test 1: The first test consists of running both dialogues INLINEFORM0 and INLINEFORM1 for only one user for sanity check. We set 30 seconds as the maximum time a simulated user should wait for a bot correct response before raising an error. The result is that all chatbots (Mediator, CDBExpert, and SavingsAccountExpert) responded all expected responses before the maximum time. Additionally, the framework collected how long each chatbot took to respond an expected answer. In Figure FIGREF101 , we show the results for those time measurements for dialogue INLINEFORM0 , as for the dialogue INLINEFORM1 the results are approximately the same. The x-axis (Response Identifier) corresponds to the second column (Resp. Id) in Table UID98 . We can see, for example, that when the bot CDBExpert responds with the message 3 to the user utterance "what is cdb?", it is the only bot that takes time different than zero to answer, which is the expected behavior. We can also see that the Mediator bot is the one that takes the longest, as it is responsible to coordinate the other bots and the entire dialogue with the user. Moreover, when the expert bots (CDBExpert and SavingsAccountExpert) are called by the Mediator to respond to the simulation calculations (this happens in responses 6, 7, 11, 12, 16, 17, 21, 22, 26, 27), they take approximately the same to respond. Finally, we see that when the concluding responses to the simulation calculations are given by the Mediator (this happens in responses 9, 14, 19, 24, 29), the response times reaches the greatest values, being 20 seconds the greatest value in response 19. These results support the system developers to understand the behavior of the system when simulated users interact with it and then focus on specific messages that are taking longer. Test 2: This test consists of running dialogue INLINEFORM0 , but now using eight concurrent simulated users. We set the maximum time to wait to 240 seconds, i.e., eight times the maximum set up for the single user in Test 1. The results are illustrated in Figure FIGREF102 , where we show the median time for the eight users. The maximum and minimum values are also presented with horizontal markers. Note that differently than what has been shown in Figure FIGREF101 , where each series represents one specific chatbot, in Figure FIGREF102 , the series represents the median response time for the responses in the order (x-axis) they are responded, regardless the chatbot. Comparing the results in Figure FIGREF102 with the ones in Figure FIGREF101 , we can see that the bots take longer to respond when eight users are concurrently using the platform than when a single user uses it, as expected. For example, CDBExpert takes approximately 5 times longer to respond response 3 to eight users than to respond to one user. On average, the concluding responses to the simulation questions (i.e., responses 9, 14, 19, 24, 29) take approximately 7.3 times more to be responded with eight users than with one user, being the response 9 the one that presented greatest difference (11.4 times longer with eight users than with one). These results help the system developers to diagnose the scalability of the system architecture and to plan sizing and improvements. Conclusions and Future Work In this article, we explored the challenges of engineering MPCS and we have presented a hybrid conceptual architecture and its implementation with a finance advisory system. We are currently evolving this architecture to be able to support decoupled interaction norms specification, and we are also developing a multi-party governance service that uses that specification to enforce exchange of compliant utterances. In addition, we are exploring a micro-service implementation of SABIA in order to increase its scalability and performance, so thousands of members can join the system within thousands of conversations. Acknowledgments The authors would like to thank Maximilien de Bayser, Ana Paula Appel, Flavio Figueiredo and Marisa Vasconcellos, who contributed with discussions during SABIA and CognIA's implementation.
What is the state of the art described in the paper?
dd76130ec5fac477123fe8880472d03fbafddef6
What Ġis Ġthe Ġstate Ġof Ġthe Ġart Ġdescribed Ġin Ġthe Ġpaper ?
EL IZ A , Ġ ĠPAR RY , ĠA . L . I . C . E ., ĠClever bot
<s> What Ġis Ġthe Ġstate Ġof Ġthe Ġart Ġdescribed Ġin Ġthe Ġpaper ? </s> Introduction </s> Back Ġto Ġ42 ĠBC , Ġthe Ġphilosopher ĠCic ero Ġhas Ġraised Ġthe Ġissue Ġthat Ġalthough Ġthere Ġwere Ġmany ĠOr atory Ġclasses , Ġthere Ġwere Ġnone Ġfor ĠConvers ational Ġskills ĠB IB REF 0 Ġ. ĠHe Ġhighlighted Ġhow Ġimportant Ġthey Ġwere Ġnot Ġonly Ġfor Ġpolitics , Ġbut Ġalso Ġfor Ġeducational Ġpurpose . ĠAmong Ġother Ġconvers ational Ġnorms , Ġhe Ġclaimed Ġthat Ġpeople Ġshould Ġbe Ġable Ġto Ġknow Ġwhen Ġto Ġtalk Ġin Ġa Ġconversation , Ġwhat Ġto Ġtalk Ġdepending Ġon Ġthe Ġsubject Ġof Ġthe Ġconversation , Ġand Ġthat Ġthey Ġshould Ġnot Ġtalk Ġabout Ġthemselves . </s> Norm s Ġsuch Ġas Ġthese Ġmay Ġbecome Ġsocial Ġconventions Ġand Ġare Ġnot Ġlearnt Ġat Ġhome Ġor Ġat Ġschool . ĠSocial Ġconventions Ġare Ġdynamic Ġand Ġmay Ġchange Ġaccording Ġto Ġcontext , Ġculture Ġand Ġlanguage . ĠIn Ġonline Ġcommunication , Ġnew Ġcommons ense Ġpractices Ġare Ġevolved Ġfaster Ġand Ġaccepted Ġas Ġa Ġnorm ĠB IB REF 1 Ġ, ĠB IB REF 2 Ġ. ĠThere Ġis Ġnot Ġa Ġdiscipline Ġfor Ġthat Ġon Ġelementary Ġor Ġhigh Ġschools Ġand Ġthere Ġare Ġfew Ġlingu istics Ġresearchers Ġdoing Ġresearch Ġon Ġthis Ġfield . </s> On Ġthe Ġother Ġhand , Ġwithin Ġthe ĠArtificial ĠIntelligence Ġarea , Ġsome ĠConvers ational ĠSystems Ġhave Ġbeen Ġcreated Ġin Ġthe Ġpast Ġdecades Ġsince Ġthe Ġtest Ġproposed Ġby ĠAlan ĠTuring Ġin Ġ1950 . ĠThe Ġtest Ġconsists Ġof Ġa Ġmachine 's Ġability Ġto Ġexhibit Ġintelligent Ġbehavior Ġequivalent Ġto , Ġor Ġindistinguishable Ġfrom Ġthat Ġof Ġa Ġhuman ĠB IB REF 3 Ġ. ĠTuring Ġproposed Ġthat Ġa Ġhuman Ġeval u ator Ġwould Ġjudge Ġnatural Ġlanguage Ġconversations Ġbetween Ġa Ġhuman Ġand Ġa Ġmachine Ġthat Ġis Ġdesigned Ġto Ġgenerate Ġhuman - like Ġresponses . ĠSince Ġthen , Ġmany Ġsystems Ġhave Ġbeen Ġcreated Ġto Ġpass Ġthe ĠTuring 's Ġtest . ĠSome Ġof Ġthem Ġhave Ġwon Ġprizes , Ġsome Ġnot ĠB IB REF 4 Ġ. ĠAlthough Ġin Ġthis Ġpaper Ġwe Ġdo Ġnot Ġfocus Ġon Ġcreating Ġa Ġsolution Ġthat Ġis Ġable Ġto Ġbuild Ġconvers ational Ġsystems Ġthat Ġpass Ġthe ĠTuring 's Ġtest , Ġwe Ġfocus Ġon ĠN DS . ĠFrom ĠB IB REF 5 Ġ, Ġ" N DS Ġare Ġsystems Ġthat Ġtry Ġto Ġimprove Ġusability Ġand Ġuser Ġsatisfaction Ġby Ġim itating Ġhuman Ġbehavior ". ĠWe Ġrefer Ġto ĠConvers ational ĠSystems Ġas ĠN DS , Ġwhere Ġthe Ġdialog ues Ġare Ġexpressed Ġas Ġnatural Ġlanguage Ġtexts , Ġeither Ġfrom Ġartificial Ġintelligent Ġagents Ġ( a . k . a . Ġbots ) Ġor Ġfrom Ġhumans . </s> That Ġsaid , Ġthe Ġcurrent Ġpopular Ġname Ġto Ġsystems Ġthat Ġhave Ġthe Ġability Ġto Ġmake Ġa Ġconversation Ġwith Ġhumans Ġusing Ġnatural Ġlanguage Ġis ĠChat bot . ĠChat bots Ġare Ġtypically Ġused Ġin Ġconvers ational Ġsystems Ġfor Ġvarious Ġpractical Ġpurposes , Ġincluding Ġcustomer Ġservice Ġor Ġinformation Ġacquisition . ĠChat bots Ġare Ġbecoming Ġmore Ġwidely Ġused Ġby Ġsocial Ġmedia Ġsoftware Ġvendors . ĠFor Ġexample , ĠFacebook Ġrecently Ġannounced Ġthat Ġit Ġwould Ġmake ĠFacebook ĠMessenger Ġ( its Ġ900 - million - user Ġmessaging Ġapp Ġby Ġ2016 ), Ġinto Ġa Ġfull - fledged Ġplatform Ġthat Ġallows Ġbusinesses Ġto Ġcommunicate Ġwith Ġusers Ġvia Ġchat bots . ĠGoogle Ġis Ġalso Ġbuilding Ġa Ġnew Ġmobile - mess aging Ġservice Ġthat Ġuses Ġartificial Ġintelligence Ġknow - how Ġand Ġchat bot Ġtechnology . ĠIn Ġaddition , Ġaccording Ġto Ġthe ĠWall ĠStreet ĠJournal , Ġthere Ġare Ġmore Ġthan Ġ2 Ġbillion Ġusers Ġof Ġmobile Ġapps . ĠStill , Ġpeople Ġcan Ġbe Ġreluctant Ġto Ġinstall Ġapps . ĠSo Ġit Ġis Ġbelieved Ġthat Ġsocial Ġmessaging Ġcan Ġbe Ġa Ġplatform Ġand Ġchat bots Ġmay Ġprovide Ġa Ġnew Ġconvers ational Ġinterface Ġfor Ġinteracting Ġwith Ġonline Ġservices , Ġas Ġchat bots Ġare Ġeasier Ġto Ġbuild Ġand Ġdeploy Ġthan Ġapps ĠB IB REF 6 Ġ. </s> China Ġseems Ġto Ġbe Ġthe Ġplace Ġwhere Ġchat bots Ġadoption Ġand Ġuse Ġis Ġmost Ġadvanced Ġtoday . ĠFor Ġexample , ĠChina 's Ġpopular ĠWe Chat Ġmessaging Ġplatform Ġcan Ġtake Ġpayments , Ġscan ĠQR Ġcodes , Ġand Ġintegrate Ġchat bot Ġsystems . ĠWe Chat Ġintegrates Ġe - mail , Ġchat , Ġvide oc alls Ġand Ġsharing Ġof Ġlarge Ġmultimedia Ġfiles . ĠUsers Ġcan Ġbook Ġflights Ġor Ġhotels Ġusing Ġa Ġmixed , Ġmultimedia Ġinteraction Ġwith Ġactive Ġbots . ĠWe Chat Ġwas Ġfirst Ġreleased Ġin Ġ2011 Ġby ĠTec ent , Ġa ĠChinese Ġonline - gaming Ġand Ġsocial - media Ġfirm , Ġand Ġtoday Ġmore Ġthan Ġ700 Ġmillion Ġpeople Ġuse Ġit , Ġbeing Ġone Ġof Ġthe Ġmost Ġpopular Ġmessaging Ġapps Ġin Ġthe Ġworld Ġ( The ĠEconomist Ġ2016 ). ĠWe Chat Ġhas Ġa Ġmixture Ġof Ġreal - live Ġcustomer Ġservice Ġagents Ġand Ġautomated Ġreplies Ġ( Ol son Ġ2016 ). </s> Still , Ġcurrent Ġexisting Ġchat bot Ġengines Ġdo Ġnot Ġproperly Ġhandle Ġa Ġgroup Ġchat Ġwith Ġmany Ġusers Ġand Ġmany Ġchat bots . ĠThis Ġmakes Ġthe Ġchat bots Ġconsiderably Ġless Ġsocial , Ġwhich Ġis Ġa Ġproblem Ġsince Ġthere Ġis Ġa Ġstrong Ġdemand Ġof Ġhaving Ġsocial Ġchat bots Ġthat Ġare Ġable Ġto Ġprovide Ġdifferent Ġkinds Ġof Ġservices , Ġfrom Ġtraveling Ġpackages Ġto Ġfinance Ġadvisors . ĠThis Ġhappens Ġbecause Ġthere Ġis Ġa Ġlack Ġof Ġmethods Ġand Ġtools Ġto Ġdesign Ġand Ġengineer Ġthe Ġcoordination Ġand Ġmediation Ġamong Ġchat bots Ġand Ġhumans , Ġas Ġwe Ġpresent Ġin ĠSections Ġ2 Ġand Ġ3 . ĠIn Ġthis Ġpaper , Ġwe Ġrefer Ġto Ġconvers ational Ġsystems Ġthat Ġare Ġable Ġto Ġinteract Ġwith Ġone Ġor Ġmore Ġpeople Ġor Ġchat bots Ġin Ġa Ġmulti - party Ġchat Ġas ĠMP CS . ĠAlt ogether , Ġthis Ġpaper Ġis Ġnot Ġmeant Ġto Ġadvance Ġthe Ġstate Ġof Ġthe Ġart Ġon Ġthe Ġnorms Ġfor ĠMP CS . ĠInstead , Ġthe Ġmain Ġcontributions Ġof Ġthis Ġpaper Ġare Ġthree fold : </s> We Ġthen Ġpresent Ġsome Ġdiscussion Ġand Ġfuture Ġwork Ġin Ġthe Ġlast Ġsection . </s> Chall enges Ġon ĠCh attering </s> There Ġare Ġplenty Ġof Ġchallenges Ġin Ġconversation Ġcontexts , Ġand Ġeven Ġbigger Ġones Ġwhen Ġpeople Ġand Ġmachines Ġparticipate Ġin Ġthose Ġcontexts . ĠConversation Ġis Ġa Ġspecialized Ġform Ġof Ġinteraction , Ġwhich Ġfollows Ġsocial Ġconventions . ĠSocial Ġinteraction Ġmakes Ġit Ġpossible Ġto Ġinform , Ġcontext , Ġcreate , Ġrat ify , Ġrefute , Ġand Ġasc ribe , Ġamong Ġother Ġthings , Ġpower , Ġclass , Ġgender , Ġethnicity , Ġand Ġculture ĠB IB REF 2 Ġ. ĠSocial Ġstructures Ġare Ġthe Ġnorms Ġthat Ġemerge Ġfrom Ġthe Ġcontact Ġpeople Ġhave Ġwith Ġothers ĠB IB REF 7 Ġ, Ġfor Ġexample , Ġthe Ġcommun icative Ġnorms Ġof Ġa Ġnegotiation , Ġtaking Ġturns Ġin Ġa Ġgroup , Ġthe Ġcultural Ġidentity Ġof Ġa Ġperson , Ġor Ġpower Ġrelationships Ġin Ġa Ġwork Ġcontext . </s> Con ventions , Ġnorms Ġand Ġpatterns Ġfrom Ġeveryday Ġreal Ġconversations Ġare Ġapplied Ġwhen Ġdesigning Ġthose Ġsystems Ġto Ġresult Ġin Ġadoption Ġand Ġmatch Ġuser 's Ġexpectations . ĠB IB REF 8 Ġdescribes Ġimplicit Ġinteractions Ġin Ġa Ġframework Ġof Ġinteractions Ġbetween Ġhumans Ġand Ġmachines . ĠThe Ġframework Ġis Ġbased Ġon Ġthe Ġtheory Ġof Ġimplicit Ġinteractions Ġwhich Ġpos its Ġthat Ġpeople Ġrely Ġon Ġconventions Ġof Ġinteraction Ġto Ġcommunicate Ġqueries , Ġoffers , Ġresponses , Ġand Ġfeedback Ġto Ġone Ġanother . ĠCon ventions Ġand Ġpatterns Ġdrive Ġour Ġexpectations Ġabout Ġinteractive Ġbehaviors . ĠThis Ġframework Ġhelps Ġdesigners Ġand Ġdevelopers Ġcreate Ġinteractions Ġthat Ġare Ġmore Ġsocially Ġappropriate . ĠAccording Ġto Ġthe Ġauthor , Ġwe Ġhave Ġinterfaces Ġwhich Ġare Ġbased Ġon Ġexplicit Ġinteraction Ġand Ġimplicit Ġones . ĠThe Ġexplicit Ġare Ġthe Ġinteractions Ġor Ġinterfaces Ġwhere Ġpeople Ġrely Ġon Ġexplicit Ġinput Ġand Ġoutput , Ġwhereas Ġimplicit Ġinteractions Ġare Ġthe Ġones Ġthat Ġoccur Ġwithout Ġuser Ġawareness Ġof Ġthe Ġcomputer Ġbehavior . </s> Social Ġpractices Ġand Ġactions Ġare Ġessential Ġfor Ġa Ġconversation Ġto Ġtake Ġplace Ġduring Ġthe Ġturn - by - turn Ġmoments Ġof Ġcommunication . ĠB IB REF 9 Ġhighlights Ġthat Ġa Ġdistinguishing Ġfeature Ġof Ġordinary Ġconversation Ġis Ġ" the Ġlocal , Ġmoment - by - mom ent Ġmanagement Ġof Ġthe Ġdistribution Ġof Ġturns , Ġof Ġtheir Ġsize , Ġand Ġwhat Ġgets Ġdone Ġin Ġthem , Ġthose Ġthings Ġbeing Ġaccomplished Ġin Ġthe Ġcourse Ġof Ġeach Ġcurrent Ġspeaker 's Ġturn ." ĠManagement Ġof Ġturns Ġand Ġsubject Ġchange Ġin Ġeach Ġcourse Ġis Ġa Ġsituation Ġthat Ġoccurs Ġin Ġreal Ġlife Ġconversations Ġbased Ġon Ġcircumstances Ġ( internal Ġand Ġexternal ) Ġto Ġspeakers Ġin Ġa Ġdialogue . ĠNow adays , Ġmachines Ġare Ġnot Ġprepared Ġto Ġfully Ġunderstand Ġcontext Ġand Ġchange Ġthe Ġcourse Ġof Ġconversations Ġas Ġhumans . ĠManaging Ġdialog ues Ġwith Ġmachines Ġis Ġchallenging , Ġwhich Ġincreases Ġeven Ġmore Ġwhen Ġmore Ġthan Ġone Ġconvers ational Ġagent Ġis Ġpart Ġof Ġthe Ġsame Ġconversation . ĠSome Ġof Ġthose Ġchallenges Ġin Ġthe Ġdialogue Ġflow Ġwere Ġaddressed Ġby ĠB IB REF 10 Ġ. ĠAccording Ġto Ġthem , Ġwe Ġhave Ġsystem - in iti ative , Ġuser - in iti ative , Ġand Ġmixed - in iti ative Ġsystems . </s> In Ġthe Ġfirst Ġcase , Ġsystem - in iti ative Ġsystems Ġrestrict Ġuser Ġoptions , Ġasking Ġdirect Ġquestions , Ġsuch Ġas Ġ( Table ĠT AB REF 5 Ġ): Ġ" What Ġis Ġthe Ġinitial Ġamount Ġof Ġinvestment ?" ĠDoing Ġso , Ġthose Ġtypes Ġof Ġsystems Ġare Ġmore Ġsuccessful Ġand Ġeasier Ġto Ġanswer Ġto . ĠOn Ġthe Ġother Ġhand , Ġuser - in iti ative Ġsystems Ġare Ġthe Ġones Ġwhere Ġusers Ġhave Ġfreedom Ġto Ġask Ġwhat Ġthey Ġwish . ĠIn Ġthis Ġcontext , Ġusers Ġmay Ġfeel Ġuncertain Ġof Ġthe Ġcapabilities Ġof Ġthe Ġsystem Ġand Ġstarting Ġasking Ġquestions Ġor Ġrequesting Ġinformation Ġor Ġservices Ġwhich Ġmight Ġbe Ġquite Ġfar Ġfrom Ġthe Ġsystem Ġdomain Ġand Ġunderstanding Ġcapacity , Ġleading Ġto Ġuser Ġfrustration . ĠThere Ġis Ġalso Ġa Ġmixed - in iti ative Ġapproach , Ġthat Ġis , Ġa Ġgoal - oriented Ġdialogue Ġwhich Ġusers Ġand Ġcomputers Ġparticipate Ġinteract ively Ġusing Ġa Ġconvers ational Ġparadigm . ĠChallenges Ġof Ġthis Ġlast Ġclassification Ġare Ġto Ġunderstand Ġinterrupt ions , Ġhuman Ġutter ances , Ġand Ġunclear Ġsentences Ġthat Ġwere Ġnot Ġalways Ġgoal - oriented . </s> The Ġdialog Ġin ĠTable ĠT AB REF 5 Ġhas Ġthe Ġsystem Ġinitiative Ġin Ġa Ġquestion Ġand Ġanswer Ġmode , Ġwhile Ġthe Ġone Ġin ĠTable ĠT AB REF 7 Ġis Ġa Ġnatural Ġdialogue Ġsystem Ġwhere Ġboth Ġthe Ġuser Ġand Ġthe Ġsystem Ġtake Ġthe Ġinitiative . ĠIf Ġwe Ġadd Ġanother Ġuser Ġin Ġthe Ġchat , Ġthen Ġwe Ġface Ġother Ġchallenges . </s> In ĠTable ĠT AB REF 12 Ġ, Ġline Ġ4 , Ġthe Ġuser ĠU 1 Ġinvites Ġanother Ġperson Ġto Ġthe Ġchat Ġand Ġthe Ġsystem Ġdoes Ġnot Ġreply Ġto Ġthis Ġutter ance , Ġnor Ġto Ġutter ances Ġon Ġlines Ġ6 , Ġ7 Ġand Ġ8 Ġwhich Ġare Ġthe Ġones Ġwhen Ġonly Ġthe Ġusers Ġ( wife Ġand Ġhusband ) Ġshould Ġreply Ġto . ĠOn Ġthe Ġother Ġhand , Ġwhen Ġthe Ġcouple Ġagrees Ġon Ġthe Ġperiod Ġand Ġinitial Ġvalue Ġof Ġthe Ġinvestment Ġ( line Ġ9 ), Ġthen Ġthe Ġsystem ĠS 1 Ġ( at Ġthe Ġtime Ġthe Ġonly Ġsystem Ġin Ġthe Ġchat ) Ġreplies Ġindicating Ġthat Ġit Ġwill Ġinvite Ġmore Ġsystems Ġ( chat bots ) Ġthat Ġare Ġexperts Ġon Ġthis Ġkind Ġof Ġpair ĠIN LINE FORM 0 Ġperiod , Ġinitial Ġvalue ĠIN LINE FORM 1 Ġ. ĠThey Ġthen Ġjoin Ġthe Ġchat Ġand Ġstart Ġinteracting Ġwith Ġeach Ġother . ĠAt Ġthe Ġend , Ġon Ġline Ġ17 , Ġthe Ġuser ĠU 2 Ġinteracts Ġwith ĠU 1 Ġand Ġthey Ġagree Ġwith Ġthe Ġcertificate Ġoption . ĠThen , Ġthe Ġchat bot Ġresponsible Ġfor Ġthat , ĠS 3 , Ġis Ġthe Ġonly Ġone Ġthat Ġreplies Ġindicating Ġhow Ġto Ġinvest . </s> Table ĠT AB REF 12 Ġis Ġone Ġexample Ġof Ġinteractions Ġon Ġwhich Ġthe Ġchat bots Ġrequire Ġknowledge Ġof Ġwhen Ġto Ġreply Ġgiven Ġthe Ġcontext Ġof Ġthe Ġdialog . ĠIn Ġgeneral , Ġwe Ġacknowledge Ġthat Ġexist Ġfour Ġdimensions Ġof Ġunderstanding Ġand Ġrep lying Ġto Ġan Ġutter ance Ġin ĠMP CS Ġwhich Ġa Ġchat bot Ġthat Ġinteracts Ġin Ġa Ġmulti - party Ġchat Ġgroup Ġshould Ġfulfill : </s> In Ġthe Ġnext Ġsection Ġwe Ġpresent Ġthe Ġstate Ġof Ġthe Ġart Ġand Ġhow Ġthey Ġfull fil Ġsome Ġof Ġthese Ġdimensions . </s> Con vers ational ĠSystems </s> In Ġthis Ġsection Ġwe Ġdiscuss Ġthe Ġstate Ġof Ġthe Ġart Ġon Ġconvers ational Ġsystems Ġin Ġthree Ġperspectives : Ġtypes Ġof Ġinteractions , Ġtypes Ġof Ġarchitecture , Ġand Ġtypes Ġof Ġcontext Ġreasoning . ĠThen Ġwe Ġpresent Ġa Ġtable Ġthat Ġconsolid ates Ġand Ġcompares Ġall Ġof Ġthem . </s> EL IZ A ĠB IB REF 11 Ġwas Ġone Ġof Ġthe Ġfirst Ġsoft w ares Ġcreated Ġto Ġunderstand Ġnatural Ġlanguage Ġprocessing . ĠJoseph ĠWe izen baum Ġcreated Ġit Ġat Ġthe ĠMIT Ġin Ġ1966 Ġand Ġit Ġis Ġwell Ġknown Ġfor Ġacting Ġlike Ġa Ġpsych other apist Ġand Ġit Ġhad Ġonly Ġto Ġreflect Ġback Ġonto Ġpatient 's Ġstatements . ĠEL IZ A Ġwas Ġcreated Ġto Ġtackle Ġfive Ġ" fund amental Ġtechnical Ġproblems ": Ġthe Ġidentification Ġof Ġcritical Ġwords , Ġthe Ġdiscovery Ġof Ġa Ġminimal Ġcontext , Ġthe Ġchoice Ġof Ġappropriate Ġtransformations , Ġthe Ġgeneration Ġof Ġappropriate Ġresponses Ġto Ġthe Ġtransformation Ġor Ġin Ġthe Ġabsence Ġof Ġcritical Ġwords , Ġand Ġthe Ġprovision Ġof Ġan Ġending Ġcapacity Ġfor ĠEL IZ A Ġscripts . </s> Right Ġafter ĠEL IZ A Ġcame ĠPAR RY , Ġdeveloped Ġby ĠKenneth ĠCol by , Ġwho Ġis Ġpsychiatrist Ġat ĠStanford ĠUniversity Ġin Ġthe Ġearly Ġ1970 s . ĠThe Ġprogram Ġwas Ġwritten Ġusing Ġthe ĠML IS P Ġlanguage Ġ( meta - l isp ) Ġon Ġthe ĠWA ITS Ġoperating Ġsystem Ġrunning Ġon Ġa ĠDEC ĠP DP - 10 Ġand Ġthe Ġcode Ġis Ġnon - port able . ĠParts Ġof Ġit Ġwere Ġwritten Ġin ĠP DP - 10 Ġassembly Ġcode Ġand Ġothers Ġin ĠML IS P . ĠThere Ġmay Ġbe Ġother Ġparts Ġthat Ġrequire Ġother Ġlanguage Ġtransl ators . ĠPAR RY Ġwas Ġthe Ġfirst Ġsystem Ġto Ġpass Ġthe ĠTuring Ġtest Ġ- Ġthe Ġpsychiatrists Ġwere Ġable Ġto Ġmake Ġthe Ġcorrect Ġidentification Ġonly Ġ48 Ġpercent Ġof Ġthe Ġtime , Ġwhich Ġis Ġthe Ġsame Ġas Ġa Ġrandom Ġguessing . </s> A . L . I . C . E . Ġ( Art ificial ĠL ingu istic ĠInternet ĠComputer ĠEntity ) ĠB IB REF 12 Ġappeared Ġin Ġ1995 Ġbut Ġcurrent Ġversion Ġutilizes ĠA IM L , Ġan ĠXML Ġlanguage Ġdesigned Ġfor Ġcreating Ġstimulus - response Ġchat Ġrobots ĠB IB REF 13 Ġ. ĠA . L . I . C . E . Ġbot Ġhas , Ġat Ġpresent , Ġmore Ġthan Ġ40 , 000 Ġcategories Ġof Ġknowledge , Ġwhereas Ġthe Ġoriginal ĠEL IZ A Ġhad Ġonly Ġabout Ġ200 . ĠThe Ġprogram Ġis Ġunable Ġto Ġpass Ġthe ĠTuring Ġtest , Ġas Ġeven Ġthe Ġcasual Ġuser Ġwill Ġoften Ġexpose Ġits Ġmechan istic Ġaspects Ġin Ġshort Ġconversations . </s> Cle ver bot Ġ( 1997 - 2014 ) Ġis Ġa Ġchat bot Ġdeveloped Ġby Ġthe ĠBritish ĠAI Ġscientist ĠRoll o ĠCarpenter . ĠIt Ġpassed Ġthe Ġ2011 ĠTuring ĠTest Ġat Ġthe ĠTechnique ĠTechn o - Management ĠFestival Ġheld Ġby Ġthe ĠIndian ĠInstitute Ġof ĠTechnology ĠGu w ah ati . ĠVolunteers Ġparticipate Ġin Ġfour - minute Ġtyped Ġconversations Ġwith Ġeither ĠClever bot Ġor Ġhumans , Ġwith ĠClever bot Ġvoted Ġ59 . 3 Ġper Ġcent Ġhuman , Ġwhile Ġthe Ġhumans Ġthemselves Ġwere Ġrated Ġjust Ġ63 . 3 Ġper Ġcent Ġhuman ĠB IB REF 14 Ġ. </s> Types Ġof ĠInter actions </s> Although Ġmost Ġpart Ġof Ġthe Ġresearch Ġliterature Ġfocuses Ġon Ġthe Ġdialogue Ġof Ġtwo Ġpersons , Ġthe Ġreality Ġof Ġeveryday Ġlife Ġinteractions Ġshows Ġa Ġsubstantial Ġpart Ġof Ġmulti - user Ġconversations , Ġsuch Ġas Ġin Ġmeetings , Ġclasses , Ġfamily Ġdinners , Ġchats Ġin Ġbars Ġand Ġrestaurants , Ġand Ġin Ġalmost Ġevery Ġcollaborative Ġor Ġcompetitive Ġenvironment Ġsuch Ġas Ġhospitals , Ġschools , Ġoffices , Ġsports Ġteams , Ġetc . ĠThe Ġability Ġof Ġhuman Ġbeings Ġto Ġorganize , Ġmanage , Ġand Ġ( mostly ) Ġmake Ġproductive Ġsuch Ġcomplex Ġinteractive Ġstructures Ġwhich Ġare Ġmulti - user Ġconversations Ġis Ġnothing Ġless Ġthan Ġremarkable . ĠThe Ġadvent Ġof Ġsocial Ġmedia Ġplatforms Ġand Ġmessaging Ġsystems Ġsuch Ġas ĠWhatsApp Ġin Ġthe Ġfirst Ġ15 Ġyears Ġof Ġthe Ġ21 st Ġcentury Ġexpanded Ġour Ġability Ġas Ġa Ġsociety Ġto Ġhave Ġasynchronous Ġconversations Ġin Ġtext Ġform , Ġfrom Ġfamily Ġand Ġfriends Ġchat groups Ġto Ġwhole Ġnations Ġconvers ing Ġin Ġa Ġhighly Ġdistributed Ġform Ġin Ġsocial Ġmedia ĠB IB REF 15 Ġ. </s> In Ġthis Ġcontext , Ġmany Ġtechnological Ġadvances Ġin Ġthe Ġearly Ġ2010 s Ġin Ġnatural Ġlanguage Ġprocessing Ġ( spe ar headed Ġby Ġthe ĠIBM ĠWatson 's Ġvictory Ġin ĠJe opard y ĠB IB REF 16 Ġ) Ġspurred Ġthe Ġavailability Ġin Ġthe Ġearly Ġ2010 s Ġof Ġtext - based Ġchat bots Ġin Ġwebsites Ġand Ġapps Ġ( not ably Ġin ĠChina ĠB IB REF 17 Ġ) Ġand Ġspoken Ġspeech Ġinterfaces Ġsuch Ġas ĠSiri Ġby ĠApple , ĠCortana Ġby ĠMicrosoft , ĠAlexa Ġby ĠAmazon , Ġand ĠAll o Ġby ĠGoogle . ĠHowever , Ġthe Ġabsolute Ġmajority Ġof Ġthose Ġchat bot Ġdeployments Ġwere Ġin Ġcontexts Ġof Ġdy adic Ġdialog , Ġthat Ġis , Ġa Ġconversation Ġbetween Ġa Ġsingle Ġchat bot Ġwith Ġa Ġsingle Ġuser . ĠMost Ġof Ġthe Ġfirst Ġtool k its Ġfor Ġchat bot Ġdesign Ġand Ġdevelopment Ġof Ġthis Ġinitial Ġperiod Ġimplicit Ġassume Ġthat Ġan Ġutter ance Ġfrom Ġthe Ġuser Ġis Ġfollowed Ġby Ġan Ġutter ance Ġof Ġthe Ġchat bot , Ġwhich Ġgreatly Ġsimpl ifies Ġthe Ġmanagement Ġof Ġthe Ġconversation Ġas Ġdiscussed Ġin Ġmore Ġdetails Ġlater . ĠTherefore , Ġfrom Ġthe Ġinteraction Ġpoint Ġof Ġview , Ġthere Ġare Ġtwo Ġtypes : Ġ1 ) Ġone Ġin Ġwhich Ġthe Ġchat bot Ġwas Ġdesigned Ġto Ġchat Ġwith Ġone Ġperson Ġor Ġchat bot , Ġand Ġ2 ) Ġother Ġin Ġwhich Ġthe Ġchat bot Ġcan Ġinteract Ġwith Ġmore Ġthan Ġtwo Ġmembers Ġin Ġthe Ġchat . </s> D y adic ĠChat bot </s> A ĠDy adic ĠChat bot Ġis Ġa Ġchat bot Ġthat Ġdoes Ġknow Ġwhen Ġto Ġtalk . ĠIf Ġit Ġreceives Ġan Ġutter ance , Ġit Ġwill Ġalways Ġhandle Ġand Ġtry Ġto Ġreply Ġto Ġthe Ġreceived Ġutter ance . ĠFor Ġthis Ġchat bot Ġto Ġbehave Ġproperly , Ġeither Ġthere Ġare Ġonly Ġtwo Ġmembers Ġin Ġthe Ġchat , Ġand Ġthe Ġchat bot Ġis Ġone Ġof Ġthem , Ġor Ġthere Ġare Ġmore , Ġbut Ġthe Ġchat bot Ġreplies Ġonly Ġwhen Ġits Ġname Ġor Ġnickname Ġis Ġmentioned . ĠThis Ġmeans Ġthat Ġa Ġdy adic Ġchat bot Ġdoes Ġnot Ġknow Ġhow Ġto Ġcoordinate Ġwith Ġmany Ġmembers Ġin Ġa Ġchat Ġgroup . ĠIt Ġlacks Ġthe Ġsocial Ġability Ġof Ġknowing Ġwhen Ġit Ġis Ġmore Ġsuitable Ġto Ġanswer Ġor Ġnot . ĠAlso , Ġnote Ġthat Ġwe Ġare Ġnot Ġconsidering Ġhere Ġthe Ġones Ġthat Ġwould Ġuse Ġthis Ġsocial Ġability Ġas Ġan Ġadvantage Ġin Ġthe Ġconversation , Ġbecause Ġif Ġthe Ġchat bot Ġis Ġdoing Ġwith Ġthis Ġintention , Ġit Ġmeans Ġthat Ġthe Ġchat bot Ġwas Ġdesigned Ġto Ġbe Ġaware Ġof Ġthe Ġsocial Ġissues Ġregarding Ġa Ġchat Ġwith Ġmultiple Ġmembers , Ġwhich Ġis Ġnot Ġthe Ġcase Ġof Ġa Ġdy adic Ġchat bot . ĠMost Ġexisting Ġchat bots , Ġfrom Ġthe Ġfirst Ġsystem , ĠEL IZ A ĠB IB REF 11 Ġ, Ġuntil Ġmodern Ġstate - of - the - art Ġones Ġfall Ġinto Ġthis Ġcategory . </s> Mult ip arty ĠConvers ations </s> In Ġmultip arty Ġconversations Ġbetween Ġpeople Ġand Ġcomputer Ġsystems , Ġnatural Ġlanguage Ġbecomes Ġthe Ġcommunication Ġprotocol Ġexchanged Ġnot Ġonly Ġby Ġthe Ġhuman Ġusers , Ġbut Ġalso Ġamong Ġthe Ġbots Ġthemselves . ĠWhen Ġevery Ġactor , Ġcomputer Ġor Ġuser , Ġunderstands Ġhuman Ġlanguage Ġand Ġis Ġable Ġto Ġengage Ġeffectively Ġin Ġa Ġconversation , Ġa Ġnew , Ġuniversal Ġcomputer Ġprotocol Ġof Ġcommunication Ġis Ġfeasible , Ġand Ġone Ġfor Ġwhich Ġpeople Ġare Ġextremely Ġgood Ġat . </s> There Ġare Ġmany Ġdifferences Ġbetween Ġdy adic Ġand Ġmultip arty Ġconversations , Ġbut Ġchiefly Ġamong Ġthem Ġis Ġturn - taking , Ġthat Ġis , Ġhow Ġa Ġparticipant Ġdetermines Ġwhen Ġit Ġis Ġappropriate Ġto Ġmake Ġan Ġutter ance Ġand Ġhow Ġthat Ġis Ġaccomplished . ĠThere Ġare Ġmany Ġsocial Ġsettings , Ġsuch Ġas Ġassemblies , Ġdebates , Ġone - channel Ġradio Ġcommunications , Ġand Ġsome Ġformal Ġmeetings , Ġwhere Ġthere Ġare Ġclear Ġand Ġexplicit Ġnorms Ġof Ġwho , Ġwhen , Ġand Ġfor Ġlong Ġa Ġparticipant Ġcan Ġspeak . </s> The Ġstate Ġof Ġthe Ġart Ġfor Ġthe Ġcreation Ġof Ġchat bots Ġthat Ġcan Ġparticipate Ġon Ġmultip arty Ġconversations Ġcurrently Ġis Ġa Ġcombination Ġof Ġthe Ġresearch Ġon Ġthe Ġcreation Ġof Ġchat bots Ġand Ġresearch Ġon Ġthe Ġcoordination Ġor Ġgovernance Ġof Ġmulti - agents Ġsystems . ĠA Ġdefinition Ġthat Ġmixes Ġboth Ġconcepts Ġherein Ġpresent Ġis : ĠA Ġchat bot Ġis Ġan Ġagent Ġthat Ġinteracts Ġthrough Ġnatural Ġlanguage . ĠAlthough Ġthese Ġareas Ġcomplement Ġeach Ġother , Ġthere Ġis Ġa Ġlack Ġof Ġsolutions Ġfor Ġcreating Ġmultip arty - aware Ġchat bots Ġor Ġgoverned Ġchat bots , Ġwhich Ġcan Ġlead Ġto Ġhigher Ġdegree Ġof Ġsystem Ġtrust . </s> Multi - D y adic ĠChat bots </s> Turn - taking Ġin Ġgeneric , Ġmultip arty Ġspoken Ġconversation Ġhas Ġbeen Ġstudied Ġby , Ġfor Ġexample , ĠS acks Ġet Ġal . ĠB IB REF 18 Ġ. ĠIn Ġbroad Ġterms , Ġit Ġwas Ġfound Ġthat Ġparticipants Ġin Ġgeneral Ġdo Ġnot Ġoverlap Ġtheir Ġutter ances Ġand Ġthat Ġthe Ġstructure Ġof Ġthe Ġlanguage Ġand Ġthe Ġnorms Ġof Ġconversation Ġcreate Ġspecific Ġmoments , Ġcalled Ġtransition - re lev ance Ġplaces , Ġwhere Ġturns Ġcan Ġoccur . ĠIn Ġmany Ġcases , Ġthe Ġlast Ġutter ances Ġmake Ġclear Ġto Ġthe Ġparticipants Ġwho Ġshould Ġbe Ġthe Ġnext Ġspeaker Ġ( selected - next - spe aker ), Ġand Ġhe Ġor Ġshe Ġcan Ġtake Ġthat Ġmoment Ġto Ġstart Ġto Ġtalk . ĠOtherwise , Ġany Ġother Ġparticipant Ġcan Ġstart Ġspeaking , Ġwith Ġpreference Ġfor Ġthe Ġfirst Ġstarter Ġto Ġget Ġthe Ġturn ; Ġor Ġthe Ġcurrent Ġspeaker Ġcan Ġcontinue ĠB IB REF 18 Ġ. </s> A Ġkey Ġpart Ġof Ġthe Ġchallenge Ġis Ġto Ġdetermine Ġwhether Ġthe Ġcontext Ġof Ġthe Ġconversation Ġso Ġfar Ġhave Ġor Ġhave Ġnot Ġdetermined Ġthe Ġnext Ġspeaker . ĠIn Ġits Ġsimplest Ġform , Ġa Ġvoc ative Ġsuch Ġas Ġthe Ġname Ġof Ġthe Ġnext Ġspeaker Ġis Ġuttered . ĠAlso , Ġthere Ġis Ġa Ġstrong Ġbias Ġtowards Ġthe Ġspeaker Ġbefore Ġthe Ġcurrent Ġbeing Ġthe Ġmost Ġlikely Ġcandidate Ġto Ġbe Ġthe Ġnext Ġspeaker . </s> In Ġgeneral Ġthe Ġdetection Ġof Ġtransition - re lev ance Ġplaces Ġand Ġof Ġthe Ġselected - next - spe aker Ġis Ġstill Ġa Ġchallenge Ġfor Ġspeech - based Ġmachine Ġconvers ational Ġsystems . ĠHowever , Ġin Ġthe Ġcase Ġof Ġtext Ġmessage Ġchats , Ġtransition - re lev ance Ġplaces Ġare Ġoften Ġdetermined Ġby Ġthe Ġacting Ġof Ġposting Ġa Ġmessage , Ġso Ġthe Ġmain Ġproblem Ġfacing Ġmultip arty - enabled Ġtextual Ġchat bots Ġis Ġin Ġfact Ġdetermining Ġwhether Ġthere Ġis Ġand Ġwho Ġis Ġthe Ġselected - next - spe aker . ĠIn Ġother Ġwords , Ġchat bots Ġhave Ġto Ġknow Ġwhen Ġto Ġshut Ġup . ĠBoh us Ġand ĠHorowitz ĠB IB REF 19 Ġhave Ġproposed Ġa Ġcomputational Ġprob abil istic Ġmodel Ġfor Ġspeech - based Ġsystems , Ġbut Ġwe Ġare Ġnot Ġaware Ġof Ġany Ġwork Ġdealing Ġwith Ġmodeling Ġturn - taking Ġin Ġtextual Ġchats . </s> Co ord ination Ġof ĠMulti - Agent ĠSystems </s> A Ġmulti - agent Ġsystem Ġ( MAS ) Ġcan Ġbe Ġdefined Ġas Ġa Ġcomputational Ġenvironment Ġin Ġwhich Ġindividual Ġsoftware Ġagents Ġinteract Ġwith Ġeach Ġother , Ġin Ġa Ġcooperative Ġmanner , Ġor Ġin Ġa Ġcompetitive Ġmanner , Ġand Ġsometimes Ġautonom ously Ġpursuing Ġtheir Ġindividual Ġgoals . ĠDuring Ġthis Ġprocess , Ġthey Ġaccess Ġthe Ġenvironment 's Ġresources Ġand Ġservices Ġand Ġoccasionally Ġproduce Ġresults Ġfor Ġthe Ġentities Ġthat Ġinitiated Ġthese Ġsoftware Ġagents . ĠAs Ġthe Ġagents Ġinteract Ġin Ġa Ġconcurrent , Ġasynchronous Ġand Ġdecentralized Ġmanner , Ġthis Ġkind Ġof Ġsystem Ġcan Ġbe Ġcategorized Ġas Ġa Ġcomplex Ġsystem ĠB IB REF 20 Ġ. </s> Research Ġin Ġthe Ġcoordination Ġof Ġmulti - agent Ġsystems Ġarea Ġdoes Ġnot Ġaddress Ġcoordination Ġusing Ġnatural Ġdialogue , Ġas Ġusually Ġall Ġmessages Ġare Ġstructured Ġand Ġformal ized Ġso Ġthe Ġagents Ġcan Ġreason Ġand Ġcoordinate Ġthemselves . ĠOn Ġthe Ġother Ġhand , Ġchat bots Ġcoordination Ġhave Ġsome Ġrelations Ġwith Ġgeneral Ġcoordination Ġmechanisms Ġof Ġmulti - agent Ġsystems Ġin Ġthat Ġthey Ġspecify Ġand Ġcontrol Ġinteractions Ġbetween Ġagents . ĠHowever , Ġchat bots Ġcoordination Ġmechanisms Ġis Ġmeant Ġto Ġregulate Ġinteractions Ġand Ġactions Ġfrom Ġa Ġsocial Ġperspective , Ġwhereas Ġgeneral Ġcoordination Ġlanguages Ġand Ġmechanisms Ġfocus Ġon Ġmeans Ġfor Ġexpressing Ġsynchronization Ġand Ġcoordination Ġof Ġactivities Ġand Ġexchange Ġof Ġinformation , Ġat Ġa Ġlower Ġcomputational Ġlevel . </s> In Ġopen Ġmulti - agent Ġsystems Ġthe Ġdevelopment Ġtakes Ġplace Ġwithout Ġa Ġcentralized Ġcontrol , Ġthus Ġit Ġis Ġnecessary Ġto Ġensure Ġthe Ġreliability Ġof Ġthese Ġsystems Ġin Ġa Ġway Ġthat Ġall Ġthe Ġinteractions Ġbetween Ġagents Ġwill Ġoccur Ġaccording Ġto Ġthe Ġspecification Ġand Ġthat Ġthese Ġagents Ġwill Ġobey Ġthe Ġspecified Ġscenario . ĠFor Ġthis , Ġthese Ġapplications Ġmust Ġbe Ġbuilt Ġupon Ġa Ġlaw - govern ed Ġarchitecture . </s> M insky Ġpublished Ġthe Ġfirst Ġideas Ġabout Ġlaws Ġin Ġ1987 ĠB IB REF 21 Ġ. ĠConsidering Ġthat Ġa Ġlaw Ġis Ġa Ġset Ġof Ġnorms Ġthat Ġgovern Ġthe Ġinteraction , Ġafterwards , Ġhe Ġpublished Ġa Ġseminal Ġpaper Ġwith Ġthe ĠLaw - Govern ed ĠInter action Ġ( L GI ) Ġconceptual Ġmodel Ġabout Ġthe Ġrole Ġof Ġinteraction Ġlaws Ġon Ġdistributed Ġsystems ĠB IB REF 22 Ġ. ĠSince Ġthen , Ġhe Ġconducted Ġfurther Ġwork Ġand Ġexperimentation Ġbased Ġon Ġthose Ġideas ĠB IB REF 23 Ġ. ĠAlthough Ġat Ġthe Ġlow Ġlevel Ġa Ġmultip arty Ġconversation Ġsystem Ġis Ġa Ġdistributed Ġsystem Ġand Ġthe ĠLG I Ġconceptual Ġmodel Ġcan Ġbe Ġused Ġin Ġa Ġvariety Ġof Ġapplication Ġdomains , Ġit Ġis Ġcomposed Ġof Ġabstract ions Ġbasically Ġrelated Ġto Ġlow Ġlevel Ġinformation Ġabout Ġcommunication Ġissues Ġof Ġdistributed Ġsystems Ġ( like Ġthe Ġprim itives Ġdisconnected , Ġreconnect ed , Ġforward , Ġand Ġsending Ġor Ġreceiving Ġof Ġmessages ), Ġlacking Ġthe Ġability Ġto Ġexpress Ġhigh Ġlevel Ġinformation Ġof Ġsocial Ġsystems . </s> Following Ġthe Ġsame Ġapproach , Ġthe ĠElectronic ĠInstitution Ġ( E I ) ĠB IB REF 24 Ġsolution Ġalso Ġprovides Ġsupport Ġfor Ġinteraction Ġnorms . ĠAn ĠE I Ġhas Ġa Ġset Ġof Ġhigh - level Ġabstract ions Ġthat Ġallow Ġfor Ġthe Ġspecification Ġof Ġlaws Ġusing Ġconcepts Ġsuch Ġas Ġagent Ġroles , Ġnorms Ġand Ġscenes . </s> Still Ġat Ġthe Ġagent Ġlevel Ġbut Ġmore Ġat Ġthe Ġsocial Ġlevel , Ġthe ĠXML aw Ġdescription Ġlanguage Ġand Ġthe ĠM - Law Ġframework ĠB IB REF 25 ĠB IB REF 26 Ġwere Ġproposed Ġand Ġdeveloped Ġto Ġsupport Ġlaw - govern ed Ġmechanism . ĠThey Ġimplement Ġa Ġlaw Ġenforcement Ġapproach Ġas Ġan Ġobject - oriented Ġframework Ġand Ġit Ġallows Ġnormative Ġbehavior Ġthrough Ġthe Ġcombination Ġbetween Ġnorms Ġand Ġclocks . ĠThe ĠM - Law Ġframework ĠB IB REF 26 Ġworks Ġby Ġintercept ing Ġmessages Ġexchanged Ġbetween Ġagents , Ġverifying Ġthe Ġcompliance Ġof Ġthe Ġmessages Ġwith Ġthe Ġlaws Ġand Ġsubsequently Ġredirect ing Ġthe Ġmessage Ġto Ġthe Ġreal Ġadd res see , Ġif Ġthe Ġlaws Ġallow Ġit . ĠIf Ġthe Ġmessage Ġis Ġnot Ġcompliant , Ġthen Ġthe Ġmedi ator Ġblocks Ġthe Ġmessage Ġand Ġapplies Ġthe Ġconsequences Ġspecified Ġin Ġthe Ġlaw , Ġif Ġany . ĠThey Ġare Ġcalled Ġlaws Ġin Ġthe Ġsense Ġthat Ġthey Ġenforce Ġthe Ġnorms , Ġwhich Ġrepresent Ġwhat Ġcan Ġbe Ġdone Ġ( per missions ), Ġwhat Ġcannot Ġbe Ġdone Ġ( pro hib itions ) Ġand Ġwhat Ġmust Ġbe Ġdone Ġ( ob lig ations ). </s> Co ord inated ĠAware ĠChat bots Ġin Ġa ĠMult ip arty ĠConversation </s> With Ġregard Ġto Ġchat bot Ġengines , Ġthere Ġis Ġa Ġlack Ġof Ġresearch Ġdirected Ġto Ġbuilding Ġcoordination Ġlaws Ġintegrated Ġwith Ġnatural Ġlanguage . ĠTo Ġthe Ġbest Ġof Ġour Ġknowledge , Ġthe Ġarchitecture Ġproposed Ġin Ġthis Ġpaper Ġis Ġthe Ġfirst Ġone Ġin Ġthe Ġstate Ġof Ġthe Ġart Ġdesigned Ġto Ġsupport Ġthe Ġdesign Ġand Ġdevelopment Ġof Ġcoordinated Ġaware Ġchat bots Ġin Ġa Ġmultip arty Ġconversation . </s> Types Ġof ĠArchitect ures </s> There Ġare Ġmainly Ġthree Ġtypes Ġof Ġarchitectures Ġwhen Ġbuilding Ġconvers ational Ġsystems : Ġtotally Ġrule - oriented , Ġtotally Ġdata - oriented , Ġand Ġa Ġmix Ġof Ġrules Ġand Ġdata - oriented . </s> Rule - oriented </s> A Ġrule - oriented Ġarchitecture Ġprovides Ġa Ġmanually Ġcoded Ġreply Ġfor Ġeach Ġrecognized Ġutter ance . ĠClassical Ġexamples Ġof Ġrule - based Ġchat bots Ġinclude ĠEl iza Ġand ĠPar ry . ĠEl iza Ġcould Ġalso Ġextract Ġsome Ġwords Ġfrom Ġsentences Ġand Ġthen Ġcreate Ġanother Ġsentence Ġwith Ġthese Ġwords Ġbased Ġon Ġtheir Ġsynt atic Ġfunctions . ĠIt Ġwas Ġa Ġrule - based Ġsolution Ġwith Ġno Ġreasoning . ĠEl iza Ġcould Ġnot Ġ" under stand " Ġwhat Ġshe Ġwas Ġparsing . ĠMore Ġsophisticated Ġrule - oriented Ġarchitectures Ġcontain Ġgram m ars Ġand Ġm appings Ġfor Ġconverting Ġsentences Ġto Ġappropriate Ġsentences Ġusing Ġsome Ġsort Ġof Ġknowledge . ĠThey Ġcan Ġbe Ġimplemented Ġwith Ġpropos itional Ġlogic Ġor Ġfirst - order Ġlogic Ġ( F OL ). ĠPro pos itional Ġlogic Ġassumes Ġthe Ġworld Ġcontains Ġfacts Ġ( which Ġrefer Ġto Ġevents , Ġphenomena , Ġsymptoms Ġor Ġactivities ). ĠUsually , Ġa Ġset Ġof Ġfacts Ġ( stat ements ) Ġis Ġnot Ġsufficient Ġto Ġdescribe Ġa Ġdomain Ġin Ġa Ġcomplete Ġmanner . ĠOn Ġthe Ġother Ġhand , ĠF OL Ġassumes Ġthe Ġworld Ġcontains ĠObjects Ġ( e . g ., Ġpeople , Ġhouses , Ġnumbers , Ġetc .), ĠRelations Ġ( e . g . Ġred , Ġprime , Ġbrother Ġof , Ġpart Ġof , Ġcomes Ġbetween , Ġetc .), Ġand ĠFunctions Ġ( e . g . Ġfather Ġof , Ġbest Ġfriend , Ġetc .), Ġnot Ġonly Ġfacts Ġas Ġin Ġpropos itional Ġlogic . ĠMoreover , ĠF OL Ġcontains Ġpred icates , Ġquant ifiers Ġand Ġvariables , Ġwhich Ġrange Ġover Ġindividuals Ġ( which Ġare Ġdomain Ġof Ġdiscourse ). </s> Pro log Ġ( from ĠFrench : ĠProgram m ation Ġen ĠLog ique ) Ġwas Ġone Ġof Ġthe Ġfirst Ġlogic Ġprogramming Ġlanguages Ġ( created Ġin Ġthe Ġ1970 s ), Ġand Ġit Ġis Ġone Ġof Ġthe Ġmost Ġimportant Ġlanguages Ġfor Ġexpressing Ġphrases , Ġrules Ġand Ġfacts . ĠA ĠPro log Ġprogram Ġconsists Ġof Ġlogical Ġformulas Ġand Ġrunning Ġa Ġprogram Ġmeans Ġproving Ġa Ġtheorem . ĠKnowledge Ġbases , Ġwhich Ġinclude Ġrules Ġin Ġaddition Ġto Ġfacts , Ġare Ġthe Ġbasis Ġfor Ġmost Ġrule - oriented Ġchat bots Ġcreated Ġso Ġfar . </s> In Ġgeneral , Ġa Ġrule Ġis Ġpresented Ġas Ġfollows : ĠDIS PLAY FORM 0 </s> Pro log Ġmade Ġit Ġpossible Ġto Ġperform Ġthe Ġlanguage Ġof ĠHorn Ġclauses Ġ( impl ications Ġwith Ġonly Ġone Ġconclusion ). ĠThe Ġconcept Ġof ĠPro log Ġis Ġbased Ġon Ġpredicate Ġlogic , Ġand Ġproving Ġthe ore ms Ġinvolves Ġa Ġres olute Ġsystem Ġof Ġden ials . ĠPro log Ġcan Ġbe Ġdistinguished Ġfrom Ġclassic Ġprogramming Ġlanguages Ġdue Ġto Ġits Ġpossibility Ġof Ġinterpreting Ġthe Ġcode Ġin Ġboth Ġa Ġprocedural Ġand Ġdecl ar ative Ġway . ĠAlthough ĠPro log Ġis Ġa Ġset Ġof Ġspecifications Ġin ĠF OL , Ġit Ġadop ts Ġthe Ġclosed - world Ġassumption , Ġi . e . Ġall Ġknowledge Ġof Ġthe Ġworld Ġis Ġpresent Ġin Ġthe Ġdatabase . ĠIf Ġa Ġterm Ġis Ġnot Ġin Ġthe Ġdatabase , ĠPro log Ġassumes Ġit Ġis Ġfalse . </s> In Ġcase Ġof ĠPro log , Ġthe ĠF OL - based Ġset Ġof Ġspecifications Ġ( form ulas ) Ġtogether Ġwith Ġthe Ġfacts Ġcompose Ġthe Ġknowledge Ġbase Ġto Ġbe Ġused Ġby Ġa Ġrule - oriented Ġchat bot . ĠHowever Ġan ĠOnt ology Ġcould Ġbe Ġused . ĠFor Ġinstance , ĠOnt Bot ĠB IB REF 27 Ġuses Ġmapping Ġtechnique Ġto Ġtransform Ġont ologies Ġand Ġknowledge Ġinto Ġrelational Ġdatabase Ġand Ġthen Ġuse Ġthat Ġknowledge Ġto Ġdrive Ġits Ġchats . ĠOne Ġof Ġthe Ġmain Ġissues Ġcurrently Ġfacing Ġsuch Ġa Ġhuge Ġamount Ġof Ġont ologies Ġstored Ġin Ġa Ġdatabase Ġis Ġthe Ġlack Ġof Ġeasy Ġto Ġuse Ġinterfaces Ġfor Ġdata Ġretrieval , Ġdue Ġto Ġthe Ġneed Ġto Ġuse Ġspecial Ġquery Ġlanguages Ġor Ġapplications . </s> In Ġrule - oriented Ġchat bots , Ġthe Ġdegree Ġof Ġintelligent Ġbehavior Ġdepends Ġon Ġthe Ġknowledge Ġbase Ġsize Ġand Ġquality Ġ( which Ġrepresents Ġthe Ġinformation Ġthat Ġthe Ġchat bot Ġknows ), Ġpoor Ġones Ġlead Ġto Ġweak Ġchat bot Ġresponses Ġwhile Ġgood Ġones Ġdo Ġthe Ġopposite . ĠHowever , Ġgood Ġknowledge Ġbases Ġmay Ġrequire Ġyears Ġto Ġbe Ġcreated , Ġdepending Ġon Ġthe Ġdomain . </s> Data - oriented </s> As Ġopposed Ġto Ġrule - oriented Ġarchitectures , Ġwhere Ġrules Ġhave Ġto Ġbe Ġexplicitly Ġdefined , Ġdata - oriented Ġarchitectures Ġare Ġbased Ġon Ġlearning Ġmodels Ġfrom Ġsamples Ġof Ġdialog ues , Ġin Ġorder Ġto Ġreproduce Ġthe Ġbehavior Ġof Ġthe Ġinteraction Ġthat Ġare Ġobserved Ġin Ġthe Ġdata . ĠSuch Ġkind Ġof Ġlearning Ġcan Ġbe Ġdone Ġby Ġmeans Ġof Ġmachine Ġlearning Ġapproach , Ġor Ġby Ġsimply Ġextracting Ġrules Ġfrom Ġdata Ġinstead Ġof Ġmanually Ġcoding Ġthem . </s> Among Ġthe Ġdifferent Ġtechnologies Ġon Ġwhich Ġthese Ġsystem Ġcan Ġbe Ġbased , Ġwe Ġcan Ġhighlight Ġclassical Ġinformation Ġretrieval Ġalgorithms , Ġneural Ġnetworks ĠB IB REF 28 Ġ, ĠHidden ĠMark ov ĠModels Ġ( H MM ) ĠB IB REF 29 Ġ, Ġand ĠPart ially ĠObserv able ĠMark ov ĠDecision ĠProcess Ġ( P OM DP ) ĠB IB REF 30 Ġ. ĠExamples Ġinclude ĠClever bot Ġand ĠTay ĠB IB REF 31 Ġ. ĠTay Ġwas Ġa Ġchat bot Ġdeveloped Ġby ĠMicrosoft Ġthat Ġafter Ġone Ġday Ġlive Ġlearning Ġfrom Ġinteraction Ġwith Ġteenagers Ġon ĠTwitter , Ġstarted Ġrep lying Ġimp ol ite Ġutter ances . ĠMicrosoft Ġhas Ġdeveloped Ġothers Ġsimilar Ġchat bots Ġin ĠChina Ġ( X ia oice ) Ġand Ġin ĠJapan Ġ( R in na ). ĠMicrosoft Ġhas Ġnot Ġassociated Ġits Ġpublications Ġwith Ġthese Ġchat bots , Ġbut Ġthey Ġhave Ġpublished Ġa Ġdata - oriented Ġapproach ĠB IB REF 32 Ġthat Ġproposes Ġa Ġunified Ġmulti - turn Ġmulti - task Ġspoken Ġlanguage Ġunderstanding Ġ( SL U ) Ġsolution Ġcapable Ġof Ġhandling Ġmultiple Ġcontext Ġsensitive Ġclassification Ġ( intent Ġdetermination ) Ġand Ġsequence Ġlabeling Ġ( slot Ġfilling ) Ġtasks Ġsimultaneously . ĠThe Ġproposed Ġarchitecture Ġis Ġbased Ġon Ġrecurrent Ġconv olution al Ġneural Ġnetworks Ġ( RC NN ) Ġwith Ġshared Ġfeature Ġlayers Ġand Ġglobally Ġnormalized Ġsequence Ġmodeling Ġcomponents . </s> A Ġsurvey Ġof Ġpublic Ġavailable Ġcorpor a Ġfor Ġcan Ġbe Ġfound Ġin ĠB IB REF 33 Ġ. ĠA Ġcorpus Ġcan Ġbe Ġclassified Ġinto Ġdifferent Ġcategories , Ġaccording Ġto : Ġthe Ġtype Ġof Ġdata , Ġwhether Ġit Ġis Ġspoken Ġdialog ues , Ġtranscripts Ġof Ġspoken Ġdialog ues , Ġor Ġdirectly Ġwritten ; Ġthe Ġtype Ġof Ġinteraction , Ġif Ġit Ġis Ġhuman - human Ġor Ġhuman - machine ; Ġand Ġthe Ġdomain , Ġwhether Ġit Ġis Ġrestricted Ġor Ġuncon str ained . ĠTwo Ġwell - known Ġcorpor a Ġare Ġthe ĠSwitch board Ġdataset , Ġwhich Ġconsists Ġof Ġtranscripts Ġof Ġspoken , Ġuncon str ained , Ġdialog ues , Ġand Ġthe Ġset Ġof Ġtasks Ġfor Ġthe ĠDial og ĠState ĠTracking ĠChallenge Ġ( D ST C ), Ġwhich Ġcontain Ġmore Ġconstrained Ġtasks , Ġfor Ġinstance Ġthe Ġrestaurant Ġand Ġtravel Ġinformation Ġsets . </s> Rule Ġand ĠData - oriented </s> The Ġmodel Ġof Ġlearning Ġin Ġcurrent ĠA . L . I . C . E . ĠB IB REF 13 Ġis Ġincremental Ġor / and Ġinteractive Ġlearning Ġbecause Ġa Ġperson Ġmonitors Ġthe Ġrobot 's Ġconversations Ġand Ġcreates Ġnew ĠA IM L Ġcontent Ġto Ġmake Ġthe Ġresponses Ġmore Ġappropriate , Ġaccurate , Ġbelievable , Ġ" human ", Ġor Ġwhatever Ġhe / she Ġintends . ĠThere Ġare Ġalgorithms Ġfor Ġautomatic Ġdetection Ġof Ġpatterns Ġin Ġthe Ġdialogue Ġdata Ġand Ġthis Ġprocess Ġprovides Ġthe Ġperson Ġwith Ġnew Ġinput Ġpatterns Ġthat Ġdo Ġnot Ġhave Ġspecific Ġreplies Ġyet , Ġpermitting Ġa Ġprocess Ġof Ġalmost Ġcontinuous Ġsupervised Ġrefinement Ġof Ġthe Ġbot . </s> As Ġalready Ġmentioned , ĠA . L . I . C . E . Ġconsists Ġof Ġroughly Ġ41 , 000 Ġelements Ġcalled Ġcategories Ġwhich Ġis Ġthe Ġbasic Ġunit Ġof Ġknowledge Ġin ĠA IM L . ĠEach Ġcategory Ġconsists Ġof Ġan Ġinput Ġquestion , Ġan Ġoutput Ġanswer , Ġand Ġan Ġoptional Ġcontext . ĠThe Ġquestion , Ġor Ġstimulus , Ġis Ġcalled Ġthe Ġpattern . ĠThe Ġanswer , Ġor Ġresponse , Ġis Ġcalled Ġthe Ġtemplate . ĠThe Ġtwo Ġtypes Ġof Ġoptional Ġcontext Ġare Ġcalled Ġthat Ġand Ġtopic . ĠThe Ġkeyword Ġthat Ġrefers Ġto Ġthe Ġrobot 's Ġprevious Ġutter ance . ĠThe ĠA IM L Ġpattern Ġlanguage Ġconsists Ġonly Ġof Ġwords , Ġspaces , Ġand Ġthe Ġwild card Ġsymbols Ġ"_ " Ġand Ġ" * ". ĠThe Ġwords Ġmay Ġconsist Ġonly Ġof Ġletters Ġand Ġnumer als . ĠThe Ġpattern Ġlanguage Ġis Ġcase Ġinvari ant . ĠWords Ġare Ġseparated Ġby Ġa Ġsingle Ġspace , Ġand Ġthe Ġwild card Ġcharacters Ġfunction Ġlike Ġwords , Ġsimilar Ġto Ġthe Ġinitial Ġpattern Ġmatching Ġstrategy Ġof Ġthe ĠEl iza Ġsystem . ĠMore Ġgenerally , ĠA IM L Ġtags Ġtransform Ġthe Ġreply Ġinto Ġa Ġmini Ġcomputer Ġprogram Ġwhich Ġcan Ġsave Ġdata , Ġactivate Ġother Ġprograms , Ġgive Ġconditional Ġresponses , Ġand Ġrec urs ively Ġcall Ġthe Ġpattern Ġmat cher Ġto Ġinsert Ġthe Ġresponses Ġfrom Ġother Ġcategories . ĠMost ĠA IM L Ġtags Ġin Ġfact Ġbelong Ġto Ġthis Ġtemplate Ġside Ġsub language ĠB IB REF 13 Ġ. </s> A IM L Ġlanguage Ġallows : </s> Sy mb olic Ġreduction : ĠReduce Ġcomplex Ġgram matical Ġforms Ġto Ġsimpler Ġones . </s> Div ide Ġand Ġconquer : ĠSplit Ġan Ġinput Ġinto Ġtwo Ġor Ġmore Ġsub parts , Ġand Ġcombine Ġthe Ġresponses Ġto Ġeach . </s> Syn onyms : ĠMap Ġdifferent Ġways Ġof Ġsaying Ġthe Ġsame Ġthing Ġto Ġthe Ġsame Ġreply . </s> Spe lling Ġor Ġgrammar Ġcorrections : Ġthe Ġbot Ġboth Ġcorrect s Ġthe Ġclient Ġinput Ġand Ġacts Ġas Ġa Ġlanguage Ġtutor . </s> Detect ing Ġkeywords Ġanywhere Ġin Ġthe Ġinput Ġthat Ġact Ġlike Ġtriggers Ġfor Ġa Ġreply . </s> Condition als : ĠCertain Ġforms Ġof Ġbranching Ġto Ġproduce Ġa Ġreply . </s> Any Ġcombination Ġof Ġ( 1 )- ( 6 ). </s> When Ġthe Ġbot Ġchats Ġwith Ġmultiple Ġclients , Ġthe Ġpred icates Ġare Ġstored Ġrelative Ġto Ġeach Ġclient ĠID . ĠFor Ġexample , Ġthe Ġmarkup ĠIN LINE FORM 0 Ġset Ġname ĠIN LINE FORM 1 Ġ" name " ĠIN LINE FORM 2 ĠMatthew ĠIN LINE FORM 3 Ġ/ set ĠIN LINE FORM 4 Ġstores Ġthe Ġstring ĠMatthew Ġunder Ġthe Ġpredicate Ġnamed Ġ" name ". ĠSub sequent Ġactiv ations Ġof ĠIN LINE FORM 5 Ġget Ġname =" name " ĠIN LINE FORM 6 Ġreturn Ġ" Matthew ". ĠIn Ġaddition , Ġone Ġof Ġthe Ġsimple Ġtricks Ġthat Ġmakes ĠEL IZ A Ġand ĠA . L . I . C . E . Ġso Ġbelievable Ġis Ġa Ġpronoun Ġswapping Ġsubstitution . ĠFor Ġinstance : </s> U : ĠMy Ġhusband Ġwould Ġlike Ġto Ġinvest Ġwith Ġme . </s> S : ĠWho Ġelse Ġin Ġyour Ġfamily Ġwould Ġlike Ġto Ġinvest Ġwith Ġyou ? </s> Types Ġof ĠIntent ions </s> According Ġto Ġthe Ġtypes Ġof Ġintentions , Ġconvers ational Ġsystems Ġcan Ġbe Ġclassified Ġinto Ġtwo Ġcategories : Ġa ) Ġgoal - driven Ġor Ġtask Ġoriented , Ġand Ġb ) Ġnon - goal - driven Ġor Ġend - to - end Ġsystems . </s> In Ġa Ġgoal - driven Ġsystem , Ġthe Ġmain Ġobjective Ġis Ġto Ġinteract Ġwith Ġthe Ġuser Ġso Ġthat Ġback - end Ġtasks , Ġwhich Ġare Ġapplication Ġspecific , Ġare Ġexecuted Ġby Ġa Ġsupporting Ġsystem . ĠAs Ġan Ġexample Ġof Ġapplication Ġwe Ġcan Ġcite Ġtechnical Ġsupport Ġsystems , Ġfor Ġinstance Ġair Ġticket Ġbooking Ġsystems , Ġwhere Ġthe Ġconversation Ġsystem Ġmust Ġinteract Ġwith Ġthe Ġuser Ġuntil Ġall Ġthe Ġrequired Ġinformation Ġis Ġknown , Ġsuch Ġas Ġorigin , Ġdestination , Ġdeparture Ġdate Ġand Ġreturn Ġdate , Ġand Ġthe Ġsupporting Ġsystem Ġmust Ġbook Ġthe Ġticket . ĠThe Ġmost Ġwidely Ġused Ġapproaches Ġfor Ġdeveloping Ġthese Ġsystems Ġare ĠPart ially - ob served ĠDecision ĠProcess es Ġ( P OM DP ) ĠB IB REF 30 Ġ, ĠHidden ĠMark ov ĠModels Ġ( H MM ) ĠB IB REF 29 Ġ, Ġand Ġmore Ġrecently , ĠMemory ĠNetworks ĠB IB REF 28 Ġ. ĠGiven Ġthat Ġthese Ġapproaches Ġare Ġdata - oriented , Ġa Ġmajor Ġissue Ġis Ġto Ġcollect Ġa Ġlarge Ġcorpor a Ġof Ġannot ated Ġtask - specific Ġdialog s . ĠFor Ġthis Ġreason , Ġit Ġis Ġnot Ġtrivial Ġto Ġtransfer Ġthe Ġknowledge Ġfrom Ġone Ġto Ġdomain Ġto Ġanother . ĠIn Ġaddition , Ġit Ġmight Ġbe Ġdifficult Ġto Ġscale Ġup Ġto Ġlarger Ġsets Ġof Ġtasks . </s> Non - goal - driven Ġsystems Ġ( also Ġsometimes Ġcalled Ġreactive Ġsystems ), Ġon Ġthe Ġother Ġhand , Ġgenerate Ġutter ances Ġin Ġaccordance Ġto Ġuser Ġinput , Ġe . g . Ġlanguage Ġlearning Ġtools Ġor Ġcomputer Ġgames Ġcharacters . ĠThese Ġsystems Ġhave Ġbecome Ġmore Ġpopular Ġin Ġrecent Ġyears , Ġmainly Ġowning Ġto Ġthe Ġincrease Ġof Ġpopularity Ġof ĠNeural ĠNetworks , Ġwhich Ġis Ġalso Ġa Ġdata - oriented Ġapproach . ĠThe Ġmost Ġrecent Ġstate Ġof Ġthe Ġart Ġto Ġdevelop Ġsuch Ġsystems Ġhave Ġemployed ĠRec urrent ĠNeural ĠNet w ors Ġ( R NN ) ĠB IB REF 34 Ġ, ĠDynamic ĠContext - S ensitive ĠGeneration ĠB IB REF 35 Ġ, Ġand ĠMemory ĠNetworks ĠB IB REF 36 Ġ, Ġjust Ġto Ġname Ġa Ġfew . ĠNevertheless , Ġprob abil istic Ġmethods Ġsuch Ġas ĠHidden ĠTopic ĠMark ov ĠModels Ġ( HT MM ) ĠB IB REF 37 Ġhave Ġalso Ġbeen Ġevaluated . ĠGoal - driven Ġapproach Ġcan Ġcreate Ġboth Ġpro - active Ġand Ġreactive Ġchat bots , Ġwhile Ġnon - goal - driven Ġapproach Ġcreates Ġreactive Ġchat bots . ĠIn Ġaddition , Ġthey Ġcan Ġserve Ġas Ġa Ġtool Ġto Ġgoal - driven Ġsystems Ġas Ġin ĠB IB REF 28 Ġ. ĠThat Ġis , Ġwhen Ġtrained Ġon Ġcorpor a Ġof Ġa Ġgoal - driven Ġsystem , Ġnon - goal - driven Ġsystems Ġcan Ġbe Ġused Ġto Ġsimulate Ġuser Ġinteraction Ġto Ġthen Ġtrain Ġgoal - driven Ġmodels . </s> Types Ġof ĠContext ĠReason ing </s> A Ġdialogue Ġsystem Ġmay Ġsupport Ġthe Ġcontext Ġreasoning Ġor Ġnot . ĠContext Ġreasoning Ġis Ġnecessary Ġin Ġmany Ġoccasions . ĠFor Ġinstance , Ġwhen Ġpartial Ġinformation Ġis Ġprovided Ġthe Ġchat bot Ġneeds Ġto Ġbe Ġable Ġto Ġinteract Ġone Ġor Ġmore Ġturns Ġin Ġorder Ġto Ġget Ġthe Ġcomplete Ġinformation Ġin Ġorder Ġto Ġbe Ġable Ġto Ġproperly Ġanswer . ĠIn ĠB IB REF 38 Ġ, Ġthe Ġauthors Ġpresent Ġa Ġtax onomy Ġof Ġerrors Ġin Ġconvers ational Ġsystems . ĠThe Ġones Ġregarding Ġcontext - level Ġerrors Ġare Ġthe Ġones Ġthat Ġare Ġperceived Ġas Ġthe Ġtop - 10 Ġconfusing Ġand Ġthey Ġare Ġmainly Ġdivided Ġinto Ġthe Ġfollowing : </s> Ex cess / l ack Ġof Ġproposition : Ġthe Ġutter ance Ġdoes Ġnot Ġprovide Ġany Ġnew Ġproposition Ġto Ġthe Ġdiscourse Ġcontext Ġor Ġprovides Ġexcessive Ġinformation Ġthan Ġrequired . </s> Cont rad iction : Ġthe Ġutter ance Ġcontains Ġpropositions Ġthat Ġcontradict Ġwhat Ġhas Ġbeen Ġsaid Ġby Ġthe Ġsystem Ġor Ġby Ġthe Ġuser . </s> Non - relevant Ġtopic : Ġthe Ġtopic Ġof Ġthe Ġutter ance Ġis Ġirrelevant Ġto Ġthe Ġcurrent Ġcontext Ġsuch Ġas Ġwhen Ġthe Ġsystem Ġsuddenly Ġjumps Ġto Ġsome Ġother Ġtopic Ġtriggered Ġby Ġsome Ġparticular Ġword Ġin Ġthe Ġprevious Ġuser Ġutter ance . </s> Un clear Ġrelation : Ġalthough Ġthe Ġutter ance Ġmight Ġrelate Ġto Ġthe Ġprevious Ġuser Ġutter ance , Ġits Ġrelation Ġto Ġthe Ġcurrent Ġtopic Ġis Ġunclear . </s> Topic Ġswitch Ġerror : Ġthe Ġutter ance Ġdisplays Ġthe Ġfact Ġthat Ġthe Ġsystem Ġmissed Ġthe Ġswitch Ġin Ġtopic Ġby Ġthe Ġuser , Ġcontinuing Ġwith Ġthe Ġprevious Ġtopic . </s> Rule - oriented </s> In Ġthe Ġstate Ġof Ġthe Ġart Ġmost Ġof Ġthe Ġproposed Ġapproaches Ġfor Ġcontext Ġreasoning Ġlies Ġon Ġrules Ġusing Ġlog ics Ġand Ġknowledge Ġbases Ġas Ġdescribed Ġin Ġthe ĠRule - oriented Ġarchitecture Ġsub - section . ĠGiven Ġa Ġset Ġof Ġfacts Ġextracted Ġfrom Ġthe Ġdialogue Ġhistory Ġand Ġencoded Ġin , Ġfor Ġinstance , ĠF OL Ġstatements , Ġa Ġqueries Ġcan Ġbe Ġposed Ġto Ġthe Ġinference Ġengine Ġand Ġproduce Ġanswers . ĠFor Ġinstance , Ġsee Ġthe Ġexample Ġin ĠTable ĠT AB REF 37 Ġ. ĠThe Ġsentences Ġwere Ġextracted Ġfrom ĠB IB REF 36 Ġ( which Ġdoes Ġnot Ġuse Ġa Ġrule - oriented Ġapproach ), Ġand Ġthe Ġfirst Ġfive Ġstatements Ġare Ġtheir Ġrespective Ġfacts . ĠThe Ġsystem Ġthen Ġapply Ġcontext Ġreasoning Ġfor Ġthe Ġquery ĠQ : ĠWhere Ġis Ġthe Ġapple . </s> If Ġstatements Ġabove Ġare Ġreceived Ġon Ġthe Ġorder Ġpresent Ġin ĠTable ĠT AB REF 37 Ġ, Ġif Ġthe Ġquery ĠQ : ĠWhere Ġis Ġthe Ġapple Ġis Ġsent , Ġthe Ġinference Ġengine Ġwill Ġproduce Ġthe Ġanswer ĠA : ĠBed room Ġ( i . e ., Ġthe Ġstatement ĠIN LINE FORM 0 Ġis Ġfound Ġby Ġthe Ġmodel Ġand Ġreturned Ġas ĠTrue ). </s> Now adays , Ġthe Ġmost Ġcommon Ġway Ġto Ġstore Ġknowledge Ġbases Ġis Ġon Ġtriple Ġstores , Ġor ĠR DF Ġ( Resource ĠDescription ĠFramework ) Ġstores . ĠA Ġtriple Ġstore Ġis Ġa Ġknowledge Ġbase Ġfor Ġthe Ġstorage Ġand Ġretrieval Ġof Ġtri ples Ġthrough Ġsemantic Ġqueries . ĠA Ġtriple Ġis Ġa Ġdata Ġentity Ġcomposed Ġof Ġsubject - pred icate - object , Ġlike Ġ" Sam Ġis Ġat Ġthe Ġkitchen " Ġor Ġ" The Ġapple Ġis Ġwith ĠSam ", Ġfor Ġinstance . ĠA Ġquery Ġlanguage Ġis Ġneeded Ġfor Ġstoring Ġand Ġretrieving Ġdata Ġfrom Ġa Ġtriple Ġstore . ĠWhile ĠSP AR QL Ġis Ġa ĠR DF Ġquery Ġlanguage , ĠR ya Ġis Ġan Ġopen Ġsource Ġscalable ĠR DF Ġtriple Ġstore Ġbuilt Ġon Ġtop Ġof ĠApache ĠAcc um ulo . ĠOriginally Ġdeveloped Ġby Ġthe ĠLaboratory Ġfor ĠTele communication ĠSciences Ġand ĠUS ĠNaval ĠAcademy , ĠR ya Ġis Ġcurrently Ġbeing Ġused Ġby Ġa Ġnumber Ġof Ġameric an Ġgovernment Ġagencies Ġfor Ġstoring , Ġinf eren cing , Ġand Ġquer ying Ġlarge Ġamounts Ġof ĠR DF Ġdata . </s> A ĠSP AR QL Ġquery Ġhas Ġa ĠSQL - like Ġsyntax Ġfor Ġfinding Ġtri ples Ġmatching Ġspecific Ġpatterns . ĠFor Ġinstance , Ġsee Ġthe Ġquery Ġbelow . ĠIt Ġretrie ves Ġall Ġthe Ġpeople Ġthat Ġworks Ġat ĠIBM Ġand Ġlives Ġin ĠNew ĠYork : </s> SELECT Ġ? people </s> WHERE Ġ{ </s> ? people Ġ< works At > Ġ< IB M > Ġ. </s> ? people Ġ< l ives In > Ġ< New ĠYork >. </s> } </s> Since Ġtriple Ġstores Ġcan Ġbecome Ġhuge , ĠR ya Ġprovides Ġthree Ġtriple Ġtable Ġindex ĠB IB REF 39 Ġto Ġhelp Ġspeeding Ġup Ġqueries : </s> SP O : Ġsubject , Ġpredicate , Ġobject </s> POS : Ġpredicate , Ġobject , Ġsubject </s> OSP : Ġobject , Ġsubject , Ġpredicate </s> While ĠR ya Ġis Ġan Ġexample Ġof Ġan Ġoptimized Ġtriple Ġstore , Ġa Ġrule - oriented Ġchat bot Ġcan Ġmake Ġuse Ġof ĠR ya Ġor Ġany Ġtriple Ġstore Ġand Ġcan Ġcall Ġthe Ġsemantic Ġsearch Ġengine Ġin Ġorder Ġto Ġinference Ġand Ġgenerate Ġproper Ġanswers . </s> Data - oriented </s> Recent Ġpapers Ġhave Ġused Ġneural Ġnetworks Ġto Ġpredict Ġthe Ġnext Ġutter ance Ġon Ġnon - goal - driven Ġsystems Ġconsidering Ġthe Ġcontext , Ġfor Ġinstance Ġwith ĠMemory ĠNetworks ĠB IB REF 40 Ġ. ĠIn Ġthis Ġwork ĠB IB REF 36 Ġ, Ġfor Ġexample Ġthe Ġauthors Ġwere Ġable Ġto Ġgenerate Ġanswers Ġfor Ġdialogue Ġlike Ġbelow : </s> Sam Ġwalks Ġinto Ġthe Ġkitchen . </s> Sam Ġpicks Ġup Ġan Ġapple . </s> Sam Ġwalks Ġinto Ġthe Ġbedroom . </s> Sam Ġdrops Ġthe Ġapple . </s> Q : ĠWhere Ġis Ġthe Ġapple ? </s> A : ĠBed room </s> S uk h ba atar 's Ġmodel Ġrepresents Ġthe Ġsentence Ġas Ġa Ġvector Ġin Ġa Ġway Ġthat Ġthe Ġorder Ġof Ġthe Ġwords Ġmatter , Ġand Ġthe Ġmodel Ġenc odes Ġthe Ġtemporal Ġcontext Ġenhancing Ġthe Ġmemory Ġvector Ġwith Ġa Ġmatrix Ġthat Ġcontains Ġthe Ġtemporal Ġinformation . ĠDuring Ġthe Ġexecution Ġphase , ĠSu kh ba atar 's Ġmodel Ġtakes Ġa Ġdiscrete Ġset Ġof Ġinputs ĠIN LINE FORM 0 Ġthat Ġare Ġto Ġbe Ġstored Ġin Ġthe Ġmemory , Ġa Ġquery ĠIN LINE FORM 1 Ġ, Ġand Ġoutputs Ġan Ġanswer ĠIN LINE FORM 2 Ġ. ĠEach Ġof Ġthe ĠIN LINE FORM 3 Ġ, ĠIN LINE FORM 4 Ġ, Ġand ĠIN LINE FORM 5 Ġcontains Ġsymbols Ġcoming Ġfrom Ġa Ġdictionary Ġwith ĠIN LINE FORM 6 Ġwords . ĠThe Ġmodel Ġwrites Ġall ĠIN LINE FORM 7 Ġto Ġthe Ġmemory Ġup Ġto Ġa Ġfixed Ġbuffer Ġsize , Ġand Ġthen Ġfinds Ġa Ġcontinuous Ġrepresentation Ġfor Ġthe ĠIN LINE FORM 8 Ġand ĠIN LINE FORM 9 Ġ. ĠThe Ġcontinuous Ġrepresentation Ġis Ġthen Ġprocessed Ġvia Ġmultiple Ġcomputational Ġsteps Ġto Ġoutput ĠIN LINE FORM 10 Ġ. ĠThis Ġallows Ġback Ġpropagation Ġof Ġthe Ġerror Ġsignal Ġthrough Ġmultiple Ġmemory Ġaccess es Ġback Ġto Ġthe Ġinput Ġduring Ġtraining . ĠSu kh ba atar 's Ġalso Ġpresents Ġthe Ġstate Ġof Ġthe Ġart Ġof Ġrecent Ġefforts Ġthat Ġhave Ġexplored Ġways Ġto Ġcapture Ġdialogue Ġcontext , Ġtreated Ġas Ġlong - term Ġstructure Ġwithin Ġsequences , Ġusing ĠR NN s Ġor ĠL ST M - based Ġmodels . ĠThe Ġproblem Ġof Ġthis Ġapproach Ġis Ġthat Ġit Ġis Ġhas Ġnot Ġbeen Ġtested Ġfor Ġgoal - oriented Ġsystems . ĠIn Ġaddition , Ġit Ġworks Ġwith Ġa Ġset Ġof Ġsentences Ġbut Ġnot Ġnecessary Ġfrom Ġmulti - party Ġbots . </s> Platform s </s> Regarding Ġcurrent Ġplatforms Ġto Ġsupport Ġthe Ġdevelopment Ġof Ġconvers ational Ġsystems , Ġwe Ġcan Ġcategor ize Ġthem Ġinto Ġthree Ġtypes : Ġplatforms Ġfor Ġplug ging Ġchat bots , Ġfor Ġcreating Ġchat bots Ġand Ġfor Ġcreating Ġservice Ġchat bots . ĠThe Ġplatforms Ġfor Ġplug ging Ġchat bots Ġprovide Ġtools Ġfor Ġintegrating Ġthem Ġanother Ġsystem , Ġlike ĠSlack . ĠThe Ġchat bots Ġneed Ġto Ġreceive Ġand Ġsend Ġmessages Ġin Ġa Ġspecific Ġway , Ġwhich Ġdepends Ġon Ġthe ĠAPI Ġand Ġthere Ġis Ġno Ġsupport Ġfor Ġactually Ġhelping Ġon Ġbuilding Ġchat bots Ġbehavior Ġwith Ġnatural Ġlanguage Ġunderstanding . ĠThe Ġplatforms Ġfor Ġcreating Ġchat bots Ġmainly Ġprovide Ġtools Ġfor Ġadding Ġand Ġtraining Ġintentions Ġtogether Ġwith Ġdialogue Ġflow Ġspecification Ġand Ġsome Ġentities Ġextraction , Ġwith Ġno Ġreasoning Ġsupport . ĠOnce Ġthe Ġmodels Ġare Ġtrained Ġand Ġthe Ġdialogue Ġflow Ġspecified , Ġthe Ġchat bots Ġare Ġable Ġto Ġreply Ġto Ġthe Ġreceived Ġintention . ĠThe Ġplatforms Ġfor Ġcreating Ġservice Ġchat bots Ġprovide Ġthe Ġsame Ġfunctional ities Ġas Ġthe Ġlast Ġone Ġand Ġalso Ġprovide Ġsupport Ġfor Ġdefining Ġactions Ġto Ġbe Ġexecuted Ġby Ġthe Ġchat bots Ġwhen Ġthey Ġare Ġanswering Ġto Ġan Ġutter ance . ĠTable ĠT AB REF 43 Ġsummarizes Ġcurrent Ġplatforms Ġon Ġthe Ġmarket Ġaccordingly Ġto Ġthese Ġcategories . ĠThere Ġis Ġa Ġlack Ġon Ġplatforms Ġthat Ġallow Ġto Ġcreate Ġchat bots Ġthat Ġcan Ġbe Ġcoordinated Ġin Ġa Ġmultip arty Ġchat Ġwith Ġgovernance Ġor Ġmediation . </s> A ĠConcept ual ĠArchitecture Ġfor ĠMult ip arty - A ware ĠChat bots </s> In Ġthis Ġsection Ġthe Ġconceptual Ġarchitecture Ġfor Ġcreating Ġa Ġhybrid Ġrule Ġand Ġmachine Ġlearning - based ĠMP CS Ġis Ġpresented . ĠThe ĠMP CS Ġis Ġdefined Ġby Ġthe Ġthe Ġentities Ġand Ġrelationships Ġillustrated Ġin ĠFig . ĠFIG REF 44 Ġwhich Ġrepresents Ġthe Ġchat bot 's Ġknowledge . ĠA ĠChat ĠGroup Ġcontains Ġseveral ĠMembers Ġthat Ġjoin Ġthe Ġgroup Ġwith Ġa ĠRole . ĠThe Ġrole Ġmay Ġconst rain Ġthe Ġbehavior Ġof Ġthe Ġmember Ġin Ġthe Ġgroup . ĠChat bot Ġis Ġa Ġtype Ġof ĠRole , Ġto Ġdifferentiate Ġfrom Ġpersons Ġthat Ġmay Ġalso Ġjoin Ġwith Ġdifferent Ġroles . ĠFor Ġinstance , Ġa Ġperson Ġmay Ġassume Ġthe Ġrole Ġof Ġthe Ġowner Ġof Ġthe Ġgroup , Ġor Ġsomeone Ġthat Ġwas Ġinvited Ġby Ġthe Ġowner , Ġor Ġa Ġdomain Ġrole Ġlike Ġan Ġexpert , Ġteacher Ġor Ġother . </s> When Ġa ĠMember Ġjoins Ġthe ĠChat ĠGroup , Ġit / he / she Ġcan Ġsend ĠUt ter ances . ĠThe ĠMember Ġthen Ġclass ifies Ġeach ĠUt ter ance Ġwith Ġan ĠIntent Ġwhich Ġhas Ġa ĠSpeech ĠAct . ĠThe ĠIntent Ġclass , ĠSpeech ĠAct Ġclass Ġand Ġthe ĠIntent ĠFlow Ġtrigger Ġthe ĠAction Ġclass Ġto Ġbe Ġexecuted Ġby Ġthe ĠMember Ġthat Ġis Ġa ĠChat bot . ĠThe ĠChat bots Ġassociated Ġto Ġthe ĠInt ention Ġare Ġthe Ġonly Ġones Ġthat Ġknow Ġhow Ġto Ġanswer Ġto Ġit Ġby Ġexecuting ĠActions . ĠThe ĠAction , Ġwhich Ġimplements Ġone ĠSpeech ĠAct , Ġproduces Ġanswers Ġwhich Ġare ĠUt ter ances , Ġso , Ġfor Ġinstance , Ġthe ĠGet _ News Ġaction Ġproduces Ġan ĠUt ter ance Ġfor Ġwhich ĠInt ention 's Ġspeech Ġact Ġis ĠInform _ News . ĠThe ĠIntent ĠFlow Ġholds Ġthe Ġintent 's Ġclass Ġconversation Ġgraph Ġwhich Ġmaps Ġthe Ġdialog Ġstate Ġas Ġa Ġdecision Ġtree . ĠThe Ġanswer 's Ġintention Ġclass Ġis Ġmapped Ġin Ġthe ĠIntent ĠFlow Ġas Ġa Ġdirected Ġgraph ĠG Ġdefined Ġas Ġfollowing : ĠDIS PLAY FORM 0 </s> From Ġthe Ġgraph Ġdefinitions , ĠIN LINE FORM 0 Ġis Ġfor Ġvert ices Ġand ĠIN LINE FORM 1 Ġis Ġfor Ġrelations , Ġwhich Ġare Ġthe Ġarrows Ġin Ġthe Ġgraph . ĠAnd Ġin ĠEqu ation ĠEQ REF 46 Ġ: </s> IN LINE FORM 0 Ġis Ġthe Ġset Ġof Ġintentions Ġpairs , </s> IN LINE FORM 0 Ġis Ġthe Ġset Ġof Ġpaths Ġto Ġnavigate Ġthrough Ġthe Ġintentions , </s> IN LINE FORM 0 Ġis Ġthe Ġarrow 's Ġhead , Ġand </s> IN LINE FORM 0 Ġis Ġthe Ġarrow 's Ġtail . </s> This Ġarrow Ġrepresents Ġa Ġturn Ġfrom Ġan Ġutter ance Ġwith ĠIN LINE FORM 0 Ġintention Ġclass Ġwhich Ġis Ġrep lying Ġto Ġan Ġutter ance Ġwith ĠIN LINE FORM 1 Ġintention Ġclass Ġto Ġthe Ġstate Ġwhich Ġan Ġutter ance Ġwith ĠIN LINE FORM 2 Ġintention 's Ġclass Ġis Ġsent . </s> IN LINE FORM 0 Ġis Ġthe Ġintention Ġclass Ġof Ġthe Ġanswer Ġto Ġbe Ġprovided Ġto Ġthe Ġreceived ĠIN LINE FORM 1 Ġintention Ġclass . </s> In Ġaddition , Ġeach Ġintent 's Ġclass Ġmay Ġrefer Ġto Ġmany ĠEnt ities Ġwhich , Ġin Ġturn , Ġmay Ġbe Ġassociated Ġto Ġseveral ĠFeatures . ĠFor Ġinstance , Ġthe Ġutter ance </s> " I Ġwould Ġlike Ġto Ġinvest ĠUSD 10 , 000 Ġin ĠSavings ĠAccount Ġfor Ġ2 Ġyears " </s> cont ains Ġone Ġentity ĠâĢĵ Ġthe ĠSavings ĠAccount 's Ġinvestment Ġoption ĠâĢĵ Ġand Ġtwo Ġfeatures ĠâĢĵ Ġmoney Ġ( USD 10 , 000 ) Ġand Ġperiod Ġof Ġtime Ġ( 2 Ġyears ). ĠThe ĠIntent ĠFlow Ġmay Ġneed Ġthis Ġinformation Ġto Ġchoose Ġthe Ġnext Ġnode Ġwhich Ġwill Ġgive Ġthe Ġnext Ġanswer . ĠTherefore , Ġif Ġthe Ġexample Ġis Ġchanged Ġa Ġlittle , Ġlike </s> " I Ġwould Ġlike Ġto Ġinvest Ġin ĠSavings ĠAccount ", </s> IN LINE FORM 0 Ġis Ġconstrained Ġby Ġthe Ġ" Sav ings ĠAccount " Ġentity Ġwhich Ġrequires Ġthe Ġtwo Ġaforementioned Ġfeatures . ĠHence , Ġa Ġpossible Ġanswer Ġby Ġone ĠMember Ġof Ġthe Ġgroup Ġwould Ġbe </s> " Sure , ĠI Ġcan Ġsimulate Ġfor Ġyou , Ġwhat Ġwould Ġbe Ġthe Ġinitial Ġamount Ġand Ġthe Ġperiod Ġof Ġtime Ġof Ġthe Ġinvestment ?" </s> With Ġthese Ġconceptual Ġmodel 's Ġelements , Ġa ĠMP CS Ġsystem Ġcan Ġbe Ġbuilt Ġwith Ġmultiple Ġchat bots . ĠNext Ġsubsection Ġfurther Ġdescribes Ġthe Ġcomponents Ġworkflow . </s> Work flow </s> Figure ĠFIG REF 48 Ġillustrates Ġfrom Ġthe Ġmoment Ġthat Ġan Ġutter ance Ġis Ġsent Ġin Ġa Ġchat Ġgroup Ġto Ġthe Ġmoment Ġa Ġreply Ġis Ġgenerated Ġin Ġthe Ġsame Ġchat Ġgroup , Ġif Ġthe Ġcase . ĠOne Ġor Ġmore Ġperson Ġmay Ġbe Ġin Ġthe Ġchat , Ġwhile Ġone Ġor Ġmore Ġchat bots Ġtoo . ĠThere Ġis Ġa ĠHub Ġthat Ġis Ġresponsible Ġfor Ġbroadcasting Ġthe Ġmessages Ġto Ġevery ĠMember Ġin Ġthe Ġgroup , Ġif Ġthe Ġcase . ĠThe Ġflow Ġstarts Ġwhen Ġa ĠMember Ġsends Ġthe Ġutter ance Ġwhich Ġgoes Ġto Ġthe ĠHub Ġand , Ġif Ġallowed , Ġis Ġbroadcast ed . ĠMany Ġor Ġnone Ġinteractions Ġnorms Ġcan Ġbe Ġenforced Ġat Ġthis Ġlevel Ġdepending Ġon Ġthe Ġapplication . ĠHere in , Ġa Ġnorm Ġcan Ġbe Ġa Ġprohibition , Ġobligation Ġor Ġpermission Ġto Ġsend Ġan Ġutter ance Ġin Ġthe Ġchat Ġgroup . </s> Once Ġthe Ġutter ance Ġis Ġbroadcast ed , Ġa Ġchat bot Ġneeds Ġto Ġhandle Ġthe Ġutter ance . ĠIn Ġorder Ġto Ġproperly Ġhandle Ġit , Ġthe Ġchat bot Ġpars es Ġthe Ġutter ance Ġwith Ġseveral Ġpars ers Ġin Ġthe ĠPars ing Ġphase : Ġa ĠTopic ĠClass ifier , Ġthe ĠDepend ency ĠPars ing , Ġwhich Ġincludes ĠPart - of - Spe ech Ġtags Ġand Ġsemantics Ġtags , Ġand Ġany Ġother Ġthat Ġcan Ġextract Ġmetadata Ġfrom Ġthe Ġutter ance Ġuseful Ġfor Ġthe Ġreasoning . ĠAll Ġthese Ġmetadata , Ġtogether Ġwith Ġmore Ġcriteria , Ġmay Ġbe Ġused Ġin Ġthe ĠFrame Ġparsing Ġwhich Ġis Ġuseful Ġfor Ġcontext Ġreasoning . ĠAll Ġknowledge Ġgenerated Ġin Ġthis Ġphase Ġcan Ġbe Ġstored Ġin Ġthe ĠContext . ĠThen , Ġthe ĠIntent ĠClass ifier Ġtries Ġto Ġdetect Ġthe Ġintent Ġclass Ġof Ġthe Ġutter ance . ĠIf Ġdetected , Ġthe ĠSpeech ĠAct Ġis Ġalso Ġretrieved . ĠAnd Ġan ĠEvent ĠDet ector Ġcan Ġalso Ġcheck Ġif Ġthere Ġis Ġany Ġdialog Ġinconsistency Ġduring Ġthis Ġphase . </s> After Ġthat , Ġthe ĠFil tering Ġphase Ġreceives Ġthe Ġobject Ġcontaining Ġthe Ġutter ance , Ġthe Ġdetected Ġintent , Ġand Ġall Ġmetadata Ġextracted Ġso Ġfar Ġand Ġdecides Ġif Ġan Ġaction Ġshould Ġbe Ġperformed Ġto Ġreply Ġto Ġthe Ġutter ance . ĠIf Ġyes , Ġit Ġis Ġsent Ġto Ġthe ĠActing Ġphase Ġwhich Ġperforms Ġseveral Ġsteps . ĠFirst Ġthe ĠAction ĠClass ifier Ġtries Ġto Ġdetect Ġthe Ġaction Ġto Ġbe Ġperformed . ĠIf Ġdetected , Ġthe Ġaction Ġis Ġexecuted . ĠAt Ġthis Ġstep , Ġmany Ġsubst eps Ġmay Ġbe Ġperformed , Ġlike Ġsearching Ġfor Ġan Ġinformation , Ġcomputing Ġmaths , Ġor Ġgenerating Ġinformation Ġto Ġcreate Ġthe Ġanswer . ĠAll Ġof Ġthis Ġmay Ġrequire Ġa Ġsearch Ġin Ġthe ĠContext Ġand Ġalso Ġmay Ġactivate Ġthe ĠError ĠDet ector Ġcomponent Ġto Ġcheck Ġif Ġthe Ġdialog Ġdid Ġnot Ġrun Ġinto Ġa Ġwrong Ġstate . ĠAfter Ġthe Ġanswer Ġis Ġgenerated , Ġthe ĠFil tering Ġphase Ġis Ġactivated Ġagain Ġto Ġcheck Ġif Ġthe Ġreply Ġshould Ġbe Ġreally Ġsent . ĠIf Ġso , Ġit Ġis Ġsent Ġto Ġthe ĠHub Ġwhich , Ġagain Ġmay Ġcheck Ġif Ġit Ġcan Ġbe Ġbroadcast ed Ġbefore Ġactually Ġdoing Ġit . </s> The Ġtopic Ġclass ifier Ġis Ġdomain - dependent Ġand Ġis Ġnot Ġmandatory . ĠHowever , Ġthe Ġchat bot Ġcan Ġbetter Ġreact Ġwhen Ġthe Ġintent Ġor Ġaction Ġis Ġnot Ġdetected , Ġwhich Ġmeans Ġthat Ġit Ġdoes Ġnot Ġknow Ġhow Ġto Ġanswer . ĠMany Ġreasons Ġmight Ġexplain Ġthis Ġsituation : Ġthe Ġset Ġof Ġint ents Ġmight Ġbe Ġincomplete , Ġthe Ġaction Ġmight Ġnot Ġhave Ġproduced Ġthe Ġproper Ġbehavior , Ġmisunderstanding Ġmight Ġhappen , Ġor Ġthe Ġchat bot Ġwas Ġnot Ġdesigned Ġto Ġreply Ġto Ġa Ġparticular Ġtopic . ĠIn Ġall Ġcases , Ġit Ġmust Ġbe Ġable Ġto Ġproduce Ġa Ġproper Ġreply , Ġif Ġneeded . ĠBecause Ġthis Ġmight Ġhappen Ġthroughout Ġthe Ġworkflow , Ġthe Ġsooner Ġthat Ġinformation Ġis Ġavailable , Ġthe Ġbetter Ġthe Ġchat bot Ġreacts . ĠTherefore Ġit Ġis Ġone Ġof Ġthe Ġfirst Ġexecutions Ġof Ġthe Ġflow . </s> D epend ency Ġis Ġthe Ġnotion Ġthat Ġlinguistic Ġunits , Ġe . g . Ġwords , Ġare Ġconnected Ġto Ġeach Ġother Ġby Ġdirected Ġlinks . ĠThe Ġ( f inite ) Ġverb Ġis Ġtaken Ġto Ġbe Ġthe Ġstructural Ġcenter Ġof Ġclause Ġstructure . ĠAll Ġother Ġsynt actic Ġunits Ġ( words ) Ġare Ġeither Ġdirectly Ġor Ġindirectly Ġconnected Ġto Ġthe Ġverb Ġin Ġterms Ġof Ġthe Ġdirected Ġlinks , Ġwhich Ġare Ġcalled Ġdependencies . ĠIt Ġis Ġa Ġone - to - one Ġcorrespondence : Ġfor Ġevery Ġelement Ġ( e . g . Ġword Ġor Ġmorph ) Ġin Ġthe Ġsentence , Ġthere Ġis Ġexactly Ġone Ġnode Ġin Ġthe Ġstructure Ġof Ġthat Ġsentence Ġthat Ġcorresponds Ġto Ġthat Ġelement . ĠThe Ġresult Ġof Ġthis Ġone - to - one Ġcorrespondence Ġis Ġthat Ġdependency Ġgram m ars Ġare Ġword Ġ( or Ġmorph ) Ġgram m ars . ĠAll Ġthat Ġexist Ġare Ġthe Ġelements Ġand Ġthe Ġdependencies Ġthat Ġconnect Ġthe Ġelements Ġinto Ġa Ġstructure . ĠDepend ency Ġgrammar Ġ( D G ) Ġis Ġa Ġclass Ġof Ġmodern Ġsynt actic Ġtheories Ġthat Ġare Ġall Ġbased Ġon Ġthe Ġdependency Ġrelation . </s> Sem antic Ġdependencies Ġare Ġunderstood Ġin Ġterms Ġof Ġpred icates Ġand Ġtheir Ġarguments . ĠMorph ological Ġdependencies Ġobtain Ġbetween Ġwords Ġor Ġparts Ġof Ġwords . ĠTo Ġfacilitate Ġfuture Ġresearch Ġin Ġun super vised Ġinduction Ġof Ġsynt actic Ġstructure Ġand Ġto Ġstandard ize Ġbest - pract ices , Ġa Ġtag set Ġthat Ġconsists Ġof Ġtwelve Ġuniversal Ġpart - of - speech Ġcategories Ġwas Ġproposed ĠB IB REF 41 Ġ. </s> D epend ency Ġpars ers Ġhave Ġto Ġcope Ġwith Ġa Ġhigh Ġdegree Ġof Ġambiguity Ġand Ġnond etermin ism Ġwhich Ġlet Ġto Ġdifferent Ġtechniques Ġthan Ġthe Ġones Ġused Ġfor Ġparsing Ġwell - defined Ġformal Ġlanguages . ĠCurrently Ġthe Ġmainstream Ġapproach Ġuses Ġalgorithms Ġthat Ġderive Ġa Ġpotentially Ġvery Ġlarge Ġset Ġof Ġanalyses Ġin Ġparallel Ġand Ġwhen Ġdis amb ig uation Ġis Ġrequired , Ġthis Ġapproach Ġcan Ġbe Ġcoupled Ġwith Ġa Ġstatistical Ġmodel Ġfor Ġparse Ġselection Ġthat Ġranks Ġcompeting Ġanalyses Ġwith Ġrespect Ġto Ġplaus ibility ĠB IB REF 42 Ġ. </s> Below Ġwe Ġpresent Ġan Ġexample Ġof Ġa Ġdependency Ġtree Ġfor Ġthe Ġutter ance : </s> " I Ġwant Ġto Ġinvest Ġ10 Ġthousands ": </s> [ s ] "" blue [ l ]: black </s> " tree ": Ġ{ </s> " want ĠVER B ĠRO OT ": Ġ{ </s> " I ĠPR ON Ġn sub j ": Ġ{ }, </s> " to ĠAD P Ġmark ": Ġ{ }, </s> " invest ĠVER B Ġn mod ": Ġ{ </s> " th ousands ĠN OUN Ġn mod ": Ġ{ </s> " 10 ĠNUM Ġnum mod ": Ġ{} </s> } </s> } </s> } </s> The Ġcoarse - gr ained Ġpart - of - speech Ġtags , Ġor Ġmorph ological Ġdependencies Ġ( VER B , ĠPR ON , ĠAD P , ĠN OUN Ġand ĠNUM ) Ġencode Ġbasic Ġgram matical Ġcategories Ġand Ġthe Ġgram matical Ġrelationships Ġ( ns ub js , Ġn mod , Ġnum mod ) Ġare Ġdefined Ġin Ġthe ĠUniversal ĠDepend encies Ġproject ĠB IB REF 41 Ġ. </s> In Ġthis Ġmodule , Ġthe Ġdependency Ġtree Ġgenerated Ġis Ġused Ġtogether Ġwith Ġa Ġset Ġof Ġrules Ġto Ġextract Ġinformation Ġthat Ġis Ġsaved Ġin Ġthe Ġcontext Ġusing Ġthe ĠFrame - based Ġapproach . ĠThis Ġapproach Ġfills Ġthe Ġslots Ġof Ġthe Ġframe Ġwith Ġthe Ġextracted Ġvalues Ġfrom Ġthe Ġdialogue . ĠFrames Ġare Ġlike Ġforms Ġand Ġslots Ġare Ġlike Ġfields . ĠUsing Ġthe Ġknowledge 's Ġconceptual Ġmodel , Ġthe Ġfields Ġare Ġrepresented Ġby Ġthe Ġelements ĠEnt ities Ġand ĠFeatures . ĠIn Ġthe Ġdependency Ġtree Ġexample , Ġthe Ġentity Ġwould Ġbe Ġthe Ġimplicit Ġconcept : Ġthe Ġinvestment Ġoption , Ġand Ġthe Ġfeature Ġis Ġthe Ġimplicit Ġconcept : Ġinitial Ġamount ĠâĢĵ Ġ10 Ġthousands . ĠSince Ġthe Ġgoal Ġis Ġto Ġinvest , Ġand Ġthere Ġare Ġmore Ġentities Ġneeded Ġfor Ġthat Ġ( i . e ., Ġfields Ġto Ġbe Ġfilled ), Ġthe Ġnext Ġnode Ġin Ġthe ĠInt ention ĠFlow Ġtree Ġwould Ġreturn Ġan Ġutter ance Ġwhich Ġasks Ġthe Ġuser Ġthe Ġtime Ġof Ġinvestment , Ġif Ġhe / she Ġhas Ġnot Ġprovided Ġyet . </s> This Ġmodule Ġcould Ġbe Ġimplemented Ġusing Ġdifferent Ġapproaches Ġaccording Ġto Ġthe Ġdomain , Ġbut Ġtree Ġsearch Ġalgorithms Ġwill Ġbe Ġnecessary Ġfor Ġdoing Ġthe Ġtree Ġparsing . </s> The ĠIntent ĠClass ifier Ġcomponent Ġaims Ġat Ġrecognizing Ġnot Ġonly Ġthe ĠIntent Ġbut Ġthe Ġgoal Ġof Ġthe Ġutter ance Ġsent Ġby Ġa ĠMember , Ġso Ġit Ġcan Ġproperly Ġreact . ĠThe Ġdevelopment Ġof Ġan Ġintent Ġclass ifier Ġneeds Ġto Ġdeal Ġwith Ġthe Ġfollowing Ġsteps : </s> i ) Ġthe Ġcreation Ġof Ġdataset Ġof Ġint ents , Ġto Ġtrain Ġthe Ġclassification Ġalgorithm ; </s> ii ) Ġthe Ġdesign Ġof Ġa Ġclassification Ġalgorithm Ġthat Ġprovides Ġa Ġreasonable Ġlevel Ġof Ġaccuracy ; </s> iii ) Ġthe Ġcreation Ġof Ġdataset Ġof Ġtrees Ġof Ġint ents , Ġthe Ġsame Ġas Ġdefined Ġin Ġi ) Ġand Ġwhich Ġmaps Ġthe Ġgoals ; </s> iv ) Ġthe Ġdesign Ġof Ġa Ġplan - graph Ġsearch Ġalgorithm Ġthat Ġmaps Ġthe Ġgoal 's Ġstate Ġto Ġa Ġnode Ġin Ġthe Ġgraph ; </s> There Ġare Ġseveral Ġapproaches Ġto Ġcreate Ġtraining Ġsets Ġfor Ġdialog ues : Ġfrom Ġan Ġincremental Ġapproach Ġto Ġcrowds ourcing . ĠIn Ġthe Ġincremental Ġapproach , Ġthe ĠWizard Ġof ĠOz Ġmethod Ġcan Ġbe Ġapplied Ġto Ġa Ġset Ġof Ġpotential Ġusers Ġof Ġthe Ġsystem , Ġand Ġfrom Ġthis Ġstudy , Ġa Ġset Ġof Ġquestions Ġthat Ġthe Ġusers Ġasked Ġposted Ġto Ġthe Ġ` fake ' Ġsystem Ġcan Ġbe Ġcollected . ĠThese Ġquestions Ġhave Ġto Ġbe Ġmanually Ġclassified Ġinto Ġa Ġset Ġof Ġintent Ġclasses , Ġand Ġused Ġto Ġtrain Ġthe Ġfirst Ġversion Ġof Ġthe Ġsystem . ĠNext , Ġthis Ġset Ġhas Ġto Ġbe Ġincreased Ġboth Ġin Ġterms Ġof Ġnumber Ġof Ġclasses Ġand Ġsamples Ġper Ġclass . </s> The ĠSpeech ĠAct ĠClass ifier Ġcan Ġbe Ġimplemented Ġwith Ġmany Ġspeech Ġact Ġclasses Ġas Ġneeded Ġby Ġthe Ġapplication . ĠThe Ġmore Ġclasses , Ġthe Ġmore Ġflexible Ġthe Ġchat bot Ġis . ĠIt Ġcan Ġbe Ġbuilt Ġbased Ġon Ġdiction aries , Ġor Ġa Ġmachine Ġlearning - based Ġclass ifier Ġcan Ġbe Ġtrained . ĠIn Ġthe Ġtable Ġbelow Ġwe Ġpresent Ġthe Ġmain Ġand Ġmore Ġgeneral Ġspeech Ġact Ġclasses ĠB IB REF 43 Ġused Ġin Ġthe ĠChat bots Ġwith Ġexamples Ġto Ġdifferentiate Ġone Ġfrom Ġanother : </s> There Ġare Ġat Ġleast Ġas Ġmany ĠAction Ġclasses Ġas ĠSpeech ĠAct Ġclasses , Ġsince Ġthe Ġaction Ġis Ġthe Ġrealization Ġof Ġa Ġspeech Ġact . ĠThe Ġdomain Ġspecific Ġclasses , Ġlike Ġ" In form _ News " Ġor Ġ" In form _ Fact oids ", Ġenhance Ġthe Ġcapabilities Ġof Ġanswering Ġof Ġa Ġchat bot . </s> The ĠAction ĠClass ifier Ġcan Ġbe Ġdefined Ġas Ġa Ġmulti - class Ġclass ifier Ġwith Ġthe Ġtuple ĠDIS PLAY FORM 0 </s> where ĠIN LINE FORM 0 Ġis Ġthe Ġintent Ġof Ġthe Ġanswer Ġdefined Ġin Ġ( ĠEQ REF 46 Ġ), ĠIN LINE FORM 1 Ġis Ġthe Ġspeech Ġact Ġof Ġthe Ġanswer , ĠIN LINE FORM 2 Ġand ĠIN LINE FORM 3 Ġare Ġthe Ġsets Ġof Ġentities Ġand Ġfeatures Ġneeded Ġto Ġproduce Ġthe Ġanswer , Ġif Ġneeded , Ġrespectively . </s> This Ġcomponent Ġis Ġresponsible Ġfor Ġimplementing Ġthe Ġbehavior Ġof Ġthe ĠAction Ġclass . ĠBasic Ġbehaviors Ġmay Ġexist Ġand Ġbe Ġshared Ġamong Ġdifferent Ġchat bots , Ġlike Ġthe Ġones Ġthat Ġimplement Ġthe Ġgreet ings , Ġthanks Ġor Ġnot Ġunderstood . ĠAlthough Ġthey Ġcan Ġbe Ġgeneric , Ġthey Ġcan Ġalso Ġbe Ġpersonalized Ġto Ġdifferentiate Ġthe Ġbot Ġfrom Ġone Ġanother Ġand Ġalso Ġto Ġmake Ġit Ġmore Ġ" real ". ĠOther Ġcases Ġlike Ġto Ġinform , Ġto Ġsend Ġa Ġquery , Ġto Ġsend Ġa Ġproposal , Ġthey Ġare Ġall Ġdomain - dependent Ġand Ġmay Ġrequire Ġspecific Ġimplementations . </s> Anyway , Ġfigure ĠFIG REF 59 Ġshows Ġat Ġthe Ġhigh Ġlevel Ġthe Ġgeneric Ġworkflow . ĠIf Ġaction Ġclass Ġdetected Ġis Ġtask - oriented , Ġthe Ġsystem Ġwill Ġimplement Ġthe Ġexecution Ġof Ġthe Ġtask , Ġsay Ġto Ġguide Ġa Ġcar , Ġto Ġmove Ġa Ġrobot 's Ġarm , Ġor Ġto Ġcompute Ġthe Ġreturn Ġof Ġinvestments . ĠThe Ġexecution Ġmight Ġneed Ġto Ġaccess Ġan Ġexternal Ġservice Ġin Ġthe ĠInternet Ġin Ġorder Ġto Ġcomplete Ġthe Ġtask , Ġlike Ġgetting Ġthe Ġinflation Ġrate , Ġor Ġthe Ġinterest Ġrate , Ġor Ġto Ġget Ġinformation Ġabout Ġthe Ġenvironment , Ġor Ġany Ġexternal Ġfactor . ĠDuring Ġthe Ġexecution Ġor Ġafter Ġit Ġis Ġfinished , Ġthe Ġutter ance Ġis Ġgenerated Ġas Ġa Ġreply Ġand , Ġif Ġno Ġmore Ġtasks Ġare Ġneeded , Ġthe Ġaction Ġexecution Ġis Ġfinished . </s> In Ġthe Ġcase Ġof Ġcoordination Ġof Ġchat bots , Ġone Ġor Ġmore Ġchat bots Ġwith Ġthe Ġrole Ġof Ġmedi ator Ġmay Ġexist Ġin Ġthe Ġchat Ġgroup Ġand , Ġat Ġthis Ġstep , Ġit Ġis Ġable Ġto Ġinvite Ġone Ġor Ġmore Ġchat bots Ġto Ġthe Ġchat Ġgroup Ġand Ġit Ġis Ġalso Ġable Ġto Ġredirect Ġthe Ġutter ances , Ġif Ġthe Ġcase . </s> The Ġproposed Ġarchitecture Ġaddresses Ġthe Ġchallenges Ġas Ġthe Ġfollowing : </s> What Ġis Ġthe Ġmessage / utter ance Ġabout ? Ġsolved Ġby Ġthe ĠPars ing Ġphase ; </s> Who Ġshould Ġreply Ġto Ġthe Ġutter ance ? Ġsolved Ġby Ġthe ĠFil tering Ġphase Ġand Ġmay Ġbe Ġenforced Ġby Ġthe ĠHub ; </s> How Ġthe Ġreply Ġshould Ġbe Ġbuilt / generated ? Ġsolved Ġby Ġthe ĠActing Ġphase ; </s> When Ġshould Ġthe Ġreply Ġbe Ġsent ? Ġmay Ġbe Ġsolved Ġby Ġthe ĠActing Ġphase Ġor Ġthe ĠFil tering Ġphase , Ġand Ġmay Ġbe Ġenforced Ġby Ġthe ĠHub ; </s> And ĠContext Ġand ĠLog ging Ġmodule Ġis Ġused Ġthroughout Ġall Ġphases . </s> Arch itect ure ĠImplementation Ġand ĠEvaluation </s> This Ġsection Ġpresents Ġone Ġimplementation Ġof Ġthe Ġconceptual Ġarchitecture Ġpresented Ġin Ġlast Ġsection . ĠAfter Ġmany Ġref actor ings , Ġa Ġframework Ġcalled ĠSA BI A Ġ( Spe ech - Act - Based ĠIntelligent ĠAgents ĠFramework ) Ġhas Ġbeen Ġdeveloped Ġand ĠCogn IA Ġ( C ognitive ĠInvestment ĠAdvisor ) Ġapplication Ġhas Ġbeen Ġdeveloped Ġas Ġan Ġinstant iation Ġof ĠSA BI A Ġframework . ĠWe Ġpresent Ġthen Ġthe Ġaccuracy Ġand Ġsome Ġautomated Ġtests Ġof Ġthis Ġimplementation . </s> Spe ech - Act - based ĠIntelligent ĠAgents ĠFramework </s> SA BI A Ġwas Ġdeveloped Ġon Ġtop Ġof ĠAk ka Ġmiddle ware . ĠAk ka Ġis Ġa Ġtool kit Ġand Ġruntime Ġthat Ġimplements Ġthe ĠActor ĠModel Ġon Ġthe ĠJ VM . ĠAk ka 's Ġfeatures , Ġlike Ġconc urrency , Ġdistributed Ġcomputing , Ġresilience , Ġand Ġmessage - pass ing Ġwere Ġinspired Ġby ĠEr lang 's Ġactor Ġmodel ĠB IB REF 44 ĠB IB REF 45 Ġ. ĠThe Ġactor Ġmodel Ġis Ġa Ġmathematical Ġmodel Ġof Ġconcurrent Ġcomputation Ġthat Ġtreats Ġ" act ors " Ġas Ġthe Ġuniversal Ġprim itives Ġof Ġconcurrent Ġcomputation . ĠIn Ġresponse Ġto Ġa Ġmessage Ġthat Ġit Ġreceives , Ġan Ġactor Ġcan : Ġmake Ġlocal Ġdecisions , Ġcreate Ġmore Ġactors , Ġsend Ġmore Ġmessages , Ġand Ġdetermine Ġhow Ġto Ġrespond Ġto Ġthe Ġnext Ġreceived Ġmessage . ĠAct ors Ġmay Ġmodify Ġprivate Ġstate , Ġbut Ġcan Ġonly Ġaffect Ġeach Ġother Ġthrough Ġmessages Ġ( avoid ing Ġthe Ġneed Ġfor Ġany Ġlocks ). ĠAk ka Ġmiddle ware Ġmanages Ġthe Ġactors Ġlife Ġcycle Ġand Ġactors Ġlook Ġup Ġby Ġtheirs Ġname , Ġlocally Ġor Ġremotely . </s> We Ġimplemented Ġeach ĠMember Ġof Ġthe ĠChat ĠGroup Ġas Ġan ĠActor Ġby Ġextending Ġthe ĠUnt yp ed Actor Ġclass Ġof ĠAk ka Ġmiddle ware . ĠYet , Ġwe Ġcreated Ġand Ġimplemented Ġthe ĠSab ia Actor System Ġas Ġa Ġsingle ton Ġ( i . e ., Ġa Ġsingle Ġinstance Ġof Ġit Ġexists Ġin Ġthe Ġsystem ) ĠB IB REF 46 Ġthat Ġhas Ġa Ġreference Ġto ĠAk ka 's ĠActor System . ĠDuring ĠSab ia Actor System 's Ġinitialization , Ġall Ġpars ers Ġthat Ġconsume Ġtoo Ġmuch Ġmemory Ġduring Ġtheir Ġinitialization Ġto Ġload Ġmodels Ġare Ġinstant iated Ġas Ġsing let ons . ĠIn Ġthis Ġway , Ġwe Ġsave Ġtime Ġon Ġtheir Ġcalls Ġduring Ġthe Ġruntime . ĠMoreover , Ġall Ġchat Ġgroup Ġmanagement , Ġlike Ġto Ġjoin Ġor Ġleave Ġthe Ġgroup , Ġor Ġto Ġbroadcast Ġor Ġfilter Ġa Ġmessage Ġat Ġthe ĠHub Ġlevel Ġis Ġimplemented Ġin ĠSA BI A Ġthrough Ġthe ĠChat ĠGroup Ġbehavior . </s> This Ġis Ġimplemented Ġin ĠSA BI A Ġas Ġa Ġsingle ton Ġthat Ġis Ġinitialized Ġduring Ġthe ĠSab ia Actor System Ġinitialization Ġwith Ġthe ĠURL Ġof Ġthe Ġservice Ġthat Ġimplements Ġthe Ġdependency Ġparsing Ġand Ġis Ġused Ġon Ġeach Ġutter ance 's Ġarrival Ġthrough Ġthe Ġexecution Ġof Ġthe Ġtag Ut ter ance Ġmethod . ĠThe Ġservice Ġmust Ġretrieve Ġa ĠJSON ĠObject Ġwith Ġthe Ġdependency Ġtree Ġwhich Ġis Ġthen Ġparsed Ġusing Ġdepth - first Ġsearch . </s> SA BI A Ġdoes Ġnot Ġsupport Ġinvari ants Ġfor Ġframe Ġparsing . ĠWe Ġare Ġleaving Ġthis Ġtask Ġto Ġthe Ġinstant iated Ġapplication . </s> There Ġare Ġtwo Ġintent Ġclass ifiers Ġthat Ġcan Ġbe Ġloaded Ġwith Ġtrained Ġmodels Ġin Ġorder Ġto Ġbe Ġready Ġto Ġbe Ġused Ġat Ġruntime : Ġthe Ġ1 - ne arest - ne igh bor Ġ( 1 NN ) Ġand Ġthe ĠS VM - based Ġclass ifier . </s> SA BI A Ġimplements Ġthe ĠAction ĠClass ifier Ġassuming Ġthat Ġthe Ġapplication Ġuses Ġa Ġrelational Ġdatabase Ġwith Ġa Ġdata Ġschema Ġthat Ġimplements Ġthe Ġconceptual Ġmodel Ġpresented Ġin ĠFigure ĠFIG REF 44 Ġ. ĠThen Ġthe Ġinvari ants Ġparts Ġthat Ġuse ĠSQL Ġare Ġalready Ġpresent Ġand Ġthe Ġapplication Ġonly Ġneeds Ġto Ġimplement Ġthe Ġdatabase Ġconnection Ġand Ġfollow Ġthe Ġrequired Ġdata Ġschema . </s> SA BI A Ġprovides Ġpartial Ġimplemented Ġbehavior Ġfor Ġthe ĠAction Ġthrough Ġthe ĠTemplate Ġmethod Ġdesign Ġpattern ĠB IB REF 46 Ġ, Ġwhich Ġimplements Ġthe Ġinvari ants Ġparts Ġof Ġthe Ġaction Ġexecution Ġand Ġleaves Ġplace holders Ġfor Ġcustomization . </s> C ogn IA : ĠA ĠCognitive ĠInvestment ĠAdvisor </s> We Ġdeveloped ĠCogn IA , Ġwhich Ġis Ġan Ġinstant iation Ġof ĠSab ia Ġframework . ĠA Ġconversation Ġis Ġcomposed Ġof Ġa Ġgroup Ġchat Ġthat Ġcan Ġcontain Ġmultiple Ġusers Ġand Ġmultiple Ġchat bots . ĠThis Ġexample , Ġin Ġparticular , Ġhas Ġa Ġmedi ator Ġthat Ġcan Ġhelp Ġusers Ġon Ġfinancial Ġmatters , Ġmore Ġspecifically Ġon Ġinvestment Ġoptions . ĠFor Ġexample , Ġconsider Ġthe Ġfollowing Ġdialogue Ġin Ġthe Ġtable Ġbelow : </s> The ĠTable ĠT AB REF 71 Ġshows Ġan Ġexample Ġthat Ġuses Ġthe Ġmixed - in iti ative Ġdialogue Ġstrategy , Ġand Ġa Ġdialogue Ġmedi ator Ġto Ġprovide Ġcoordination Ġcontrol . ĠIn Ġthis Ġexample Ġof Ġan Ġapplication , Ġthere Ġare Ġmany Ġtypes Ġof Ġintentions Ġthat Ġshould Ġbe Ġanswered : ĠQ & A Ġ( question Ġand Ġanswer ) Ġabout Ġdefinitions , Ġinvestment Ġoptions , Ġand Ġabout Ġthe Ġcurrent Ġfinance Ġindexes , Ġsimulation Ġof Ġinvestments , Ġwhich Ġis Ġtask - oriented Ġand Ġrequires Ġcomputation , Ġand Ġopinions , Ġwhich Ġcan Ġbe Ġhighly Ġsubjective . </s> In ĠTable ĠSEC REF 72 Ġ, Ġwe Ġpresent Ġthe Ġinteraction Ġnorms Ġthat Ġwere Ġneeded Ġin ĠCogn ia . ĠThe ĠTrigger Ġcolumn Ġdescribes Ġthe Ġevent Ġthat Ġtriggers Ġthe ĠBehavior Ġspecified Ġin Ġthe Ġthird Ġcolumn . ĠThe ĠPre - Cond itions Ġcolumn Ġspecifies Ġwhat Ġmust Ġhappen Ġin Ġorder Ġto Ġstart Ġthe Ġbehavior Ġexecution . ĠSo , Ġfor Ġinstance , Ġline Ġ2 , Ġwhen Ġthe Ġuser Ġsends Ġan Ġutter ance Ġin Ġthe Ġchat Ġgroup , Ġan Ġevent Ġis Ġtriggered Ġand , Ġif Ġthe Ġutter ance 's Ġtopic Ġis ĠCD B Ġ( Cert ificate Ġof ĠDeposit Ġwhich Ġis Ġa Ġfixed Ġrate Ġinvestment ) Ġor Ġif Ġit Ġis Ġabout Ġthe ĠSavings ĠAccount Ġinvestment Ġoption Ġand Ġthe Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation Ġand Ġthe ĠCD B Ġand ĠSavings ĠAccount Ġmembers Ġare Ġnot Ġin Ġthe Ġchat , Ġthen Ġthe Ġbehavior Ġis Ġactivated . ĠThe Ġbot Ġmembers Ġthat Ġimplement Ġthese Ġbehaviors Ġare Ġcalled Ġc db g uru Ġand Ġp oup anc ag uru . ĠTherefore Ġthese Ġnames Ġare Ġused Ġwhen Ġthere Ġis Ġa Ġmention . </s> Note Ġthat Ġthese Ġinteractions Ġnorms Ġare Ġnot Ġexplicitly Ġdefined Ġas Ġobligations , Ġpermissions , Ġand Ġprohibitions . ĠThey Ġare Ġimpl ict Ġfrom Ġthe Ġbehavior Ġdescribed . ĠDuring Ġthis Ġimplementation , Ġwe Ġdid Ġnot Ġworry Ġabout Ġexplicitly Ġdefining Ġthe Ġnorms , Ġbecause Ġthe Ġgoal Ġwas Ġto Ġevaluate Ġthe Ġoverall Ġarchitecture , Ġnot Ġto Ġenhance Ġthe Ġstate Ġof Ġthe Ġart Ġon Ġnorms Ġspecification Ġfor Ġconvers ational Ġsystems . ĠIn Ġaddition , ĠCogn IA Ġhas Ġonly Ġthe Ġpresented Ġinteraction Ġnorms Ġdefined Ġin ĠTable ĠSEC REF 72 Ġ, Ġwhich Ġis Ġa Ġvery Ġsmall Ġset Ġthat Ġthat Ġdoes Ġnot Ġrequired Ġmodel Ġchecking Ġor Ġverification Ġof Ġconflicts . </s> | p 2 cm | p 5 . 0 cm | p 5 . 0 cm | C ogn ia ĠInter action ĠNorm s C ogn ia ĠInter action ĠNorm s </s> Trigger ĠPre - Cond itions ĠBehavior </s> On Ġgroup Ġchat Ġcreation ĠCogn ia Ġchat bot Ġis Ġavailable ĠCogn ia Ġchat bot Ġjoins Ġthe Ġchat Ġwith Ġthe Ġmedi ator Ġrole Ġand Ġuser Ġjoins Ġthe Ġchat Ġwith Ġthe Ġowner _ user Ġrole </s> On Ġutter ance Ġsent Ġby Ġuser ĠUt ter ance 's Ġtopic Ġis ĠCD B Ġ( c db g uru ) Ġor ĠSavings ĠAccount Ġ( p oup anc ag uru ) Ġand Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation Ġand Ġthey Ġare Ġnot Ġin Ġthe Ġchat ĠCogn ia Ġinvites Ġexperts Ġto Ġthe Ġchat Ġand Ġrepeats Ġthe Ġutter ance Ġto Ġthem </s> On Ġutter ance Ġsent Ġby Ġuser ĠUt ter ance 's Ġtopic Ġis ĠCD B Ġ( c db g uru ) Ġor ĠSavings ĠAccount Ġ( p oup anc ag uru ) Ġand Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation Ġand Ġthey Ġare Ġin Ġthe Ġchat ĠCogn ia Ġwaits Ġfor Ġwhile Ġand Ġc db g uru Ġor Ġp oup anc ag uru Ġrespectively Ġhandles Ġthe Ġutter ance . ĠIf Ġthey Ġdon 't Ġunderstand , Ġthey Ġdon 't Ġreply </s> On Ġutter ance Ġsent Ġby Ġthe Ġexperts ĠIf ĠCogn ia Ġis Ġwaiting Ġfor Ġthem Ġand Ġhas Ġreceived Ġboth Ġreplies ĠCogn ia Ġdoes Ġnot Ġwait Ġanymore </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġc db g uru Ġor Ġp oup anc ag uru Ġc db g uru Ġor Ġp oup anc ag uru Ġrespectively Ġhandles Ġthe Ġutter ance </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġc db g uru Ġor Ġp oup anc ag uru Ġand Ġthey Ġdon 't Ġreply Ġafter Ġa Ġwhile Ġand Ġspeech Ġact Ġis ĠQuery _ Cal culation ĠCogn ia Ġsends ĠI Ġcan Ġonly Ġchat Ġabout Ġinvestments ... </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġc db g uru Ġor Ġp oup anc ag uru Ġand Ġthey Ġdon 't Ġreply Ġafter Ġwhile Ġand Ġspeech Ġact Ġis Ġnot ĠQuery _ Cal culation ĠCogn ia Ġsends ĠI Ġdidn 't Ġunderstand </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġperiod Ġor Ġinitial Ġamount Ġof Ġinvestment Ġwere Ġnot Ġspecified ĠCogn ia Ġasks Ġthe Ġuser Ġthe Ġmissing Ġinformation </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġperiod Ġand Ġinitial Ġamount Ġof Ġinvestment Ġwere Ġspecified Ġand Ġthe Ġexperts Ġare Ġnot Ġin Ġthe Ġchat ĠCogn ia Ġinvites Ġexperts Ġto Ġthe Ġchat Ġand Ġrepeats Ġthe Ġutter ance Ġto Ġthem </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġperiod Ġand Ġinitial Ġamount Ġof Ġinvestment Ġwere Ġspecified Ġand Ġthe Ġexperts Ġare Ġin Ġthe Ġchat ĠCogn ia Ġrepeats Ġthe Ġutter ance Ġto Ġexperts </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation ĠCogn ia Ġextracts Ġvariables Ġand Ġsaves Ġthe Ġcontext </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠQuery _ Cal culation Ġand Ġthe Ġexperts Ġare Ġin Ġthe Ġchat Ġand Ġthe Ġexperts Ġare Ġmentioned ĠExperts Ġextract Ġinformation , Ġsave Ġin Ġthe Ġcontext , Ġcompute Ġcalculation Ġand Ġsend Ġinformation </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis ĠInform _ Cal culation Ġand ĠCogn ia Ġreceived Ġall Ġreplies ĠCogn ia Ġcompares Ġthe Ġresults Ġand Ġinform Ġcomparison </s> On Ġutter ance Ġsent ĠUt ter ance Ġmentions Ġa Ġchat bot Ġbut Ġhas Ġno Ġother Ġtext ĠThe Ġchat bot Ġreplies ĠHow Ġcan ĠI Ġhelp Ġyou ? </s> On Ġutter ance Ġsent ĠUt ter ance Ġis Ġnot Ġunderstood Ġand Ġspeech Ġact Ġis ĠQuestion ĠThe Ġchat bot Ġreplies ĠI Ġdon 't Ġknow ... ĠI Ġcan Ġonly Ġtalk Ġabout Ġtopic ĠX </s> On Ġutter ance Ġsent ĠUt ter ance Ġis Ġnot Ġunderstood Ġand Ġspeech Ġact Ġis Ġnot ĠQuestion ĠThe Ġchat bot Ġreplies ĠI Ġdidn 't Ġunderstand </s> On Ġutter ance Ġsent ĠUt ter ance 's Ġspeech Ġact Ġis Ġone Ġof Ġ{ ĠG reetings , ĠThank , ĠBye Ġ} ĠAll Ġchat bots Ġreply Ġto Ġutter ance </s> On Ġgroup Ġchat Ġend ĠAll Ġchat bots Ġleave Ġthe Ġchat , Ġand Ġthe Ġdate Ġand Ġtime Ġof Ġthe Ġend Ġof Ġchat Ġis Ġregistered </s> We Ġinstant iated ĠSA BI A Ġto Ġdevelop ĠCogn IA Ġas Ġfollows : Ġthe ĠMed iator , ĠSavings ĠAccount , ĠCD B Ġand ĠUser ĠAct ors Ġare Ġthe ĠMembers Ġof Ġthe ĠChat ĠGroup . ĠThe ĠHub Ġwas Ġimplemented Ġusing Ġtwo Ġservers : ĠSocket . io Ġand ĠNode . JS Ġwhich Ġis Ġa Ġsocket Ġclient Ġof Ġthe ĠSocket . io Ġserver . ĠThe ĠCogn IA Ġsystem Ġhas Ġalso Ġone ĠSocket ĠClient Ġfor Ġreceiving Ġthe Ġbroadcast Ġand Ġforwarding Ġto Ġthe ĠGroup ĠChat ĠManager . ĠThe Ġformer Ġwill Ġactually Ġdo Ġthe Ġbroadcast Ġto Ġevery Ġmember Ġafter Ġenforcing Ġthe Ġnorms Ġthat Ġapplies Ġspecified Ġin ĠTable ĠSEC REF 72 Ġ. ĠEach ĠMember Ġwill Ġbehave Ġaccording Ġto Ġthis Ġtable Ġtoo . ĠFor Ġeach Ġuser Ġof Ġthe Ġchat Ġgroup , Ġon Ġa Ġmobile Ġor Ġa Ġdesktop , Ġthere Ġis Ġits Ġcorresponding Ġactor Ġrepresented Ġby Ġthe ĠUser ĠActor Ġin Ġthe Ġfigure . ĠIts Ġmain Ġjob Ġis Ġto Ġreceive ĠAk ka 's Ġbroadcast Ġand Ġforward Ġto Ġthe ĠSocket . io Ġserver , Ġso Ġit Ġcan Ġbe Ġfinally Ġpropag ated Ġto Ġthe Ġusers . </s> All Ġthe Ġint ents , Ġactions , Ġfactual Ġanswers , Ġcontext Ġand Ġlogging Ġdata Ġare Ġsaved Ġin ĠDash DB Ġ( a Ġrelational ĠDatabase - as - a - Service Ġsystem ). ĠWhen Ġan Ġanswer Ġis Ġnot Ġretrieved , Ġa Ġservice Ġwhich Ġexecutes Ġthe Ġmodule ĠSearch ĠFinance Ġon ĠSocial ĠMedia Ġon Ġa Ġseparate Ġserver Ġis Ġcalled . ĠThis Ġservice Ġwas Ġimplemented Ġwith Ġthe Ġassumption Ġthat Ġfinance Ġexperts Ġpost Ġrelevant Ġquestions Ġand Ġanswers Ġon Ġsocial Ġmedia . ĠFurther Ġdetails Ġare Ġexplained Ġin Ġthe ĠAction Ġexecution Ġsub - section . </s> We Ġbuilt Ġa Ġsmall Ġdictionary - based Ġtopic Ġclass ifier Ġto Ġidentify Ġif Ġan Ġutter ance Ġrefers Ġto Ġfinance Ġor Ġnot , Ġand Ġif Ġit Ġrefers Ġto Ġthe Ġtwo Ġinvestment Ġoptions Ġ( CD B Ġor ĠSavings ĠAccount ) Ġor Ġnot . </s> The Ġdependency Ġparsing Ġis Ġextremely Ġimportant Ġfor Ġcomputing Ġthe Ġreturn Ġof Ġinvestment Ġwhen Ġthe Ġuser Ġsends Ġan Ġutter ance Ġwith Ġthis Ġintention . ĠOur Ġfirst Ġimplementation Ġused Ġregular Ġexpressions Ġwhich Ġled Ġto Ġa Ġvery Ġfragile Ġapproach . ĠThen Ġwe Ġused Ġa ĠT ensor Flow Ġimplementation ĠB IB REF 47 Ġof Ġa ĠSynt ax Net Ġmodel Ġfor ĠPortuguese Ġand Ġused Ġit Ġto Ġgenerate Ġthe Ġdependency Ġparse Ġtrees Ġof Ġthe Ġutter ances . ĠThe ĠSynt ax Net Ġmodel Ġis Ġa Ġfeed - forward Ġneural Ġnetwork Ġthat Ġoperates Ġon Ġa Ġtask - specific Ġtransition Ġsystem Ġand Ġachieves Ġthe Ġstate - of - the - art Ġon Ġpart - of - speech Ġtagging , Ġdependency Ġparsing Ġand Ġsentence Ġcompression Ġresults ĠB IB REF 48 Ġ. ĠBelow Ġwe Ġpresent Ġoutput Ġof Ġthe Ġservice Ġfor Ġthe Ġutter ance : </s> " I Ġwant Ġto Ġinvest Ġ10 Ġthousands Ġin Ġ40 Ġmonths ": </s> [ s ] "" blue [ l ]: black </s> { Ġ" original ": Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ10 Ġthousands Ġin Ġ40 Ġmonths ", </s> " start _ pos ": Ġ[ </s> 23 , </s> 32 ], </s> " end _ pos ": Ġ[ </s> 27 , </s> 33 ], </s> " dig its ": Ġ[ </s> 10000 , </s> 40 ], </s> " con verted ": Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ10000 Ġin Ġ40 Ġmonths ", </s> " tree ": Ġ{ </s> " like ĠVER B ĠRO OT ": Ġ{ </s> " I ĠPR ON Ġn sub j ": Ġ{ }, </s> " would ĠMD Ġaux ": { </s> " invest ĠVER B Ġx comp ": { </s> " to ĠTO Ġaux ": Ġ{ }, </s> " 10000 ĠNUM Ġdo bj ": Ġ{ }, </s> " in ĠIN Ġprep ": Ġ{ </s> " months ĠN OUN Ġp obj ": { </s> " 40 ĠNUM Ġnum ": Ġ{ }} }} }}} </s> The Ġservice Ġreturns Ġa ĠJSON ĠObject Ġcontaining Ġsix Ġfields : Ġoriginal , Ġstart _ pos , Ġend _ pos , Ġdigits , Ġconverted Ġand Ġtree . ĠThe Ġoriginal Ġfield Ġcontains Ġthe Ġoriginal Ġutter ance Ġsent Ġto Ġthe Ġservice . ĠThe Ġconverted Ġfield Ġcontains Ġthe Ġutter ance Ġreplaced Ġwith Ġdecimal Ġnumbers , Ġif Ġthe Ġcase Ġ( for Ġinstance , Ġ" 10 Ġthousands " Ġwas Ġconverted Ġto Ġ" 10000 " Ġand Ġreplaced Ġin Ġthe Ġutter ance ). ĠThe Ġstart _ pos Ġand Ġend _ pos Ġare Ġarrays Ġthat Ġcontain Ġthe Ġstart Ġand Ġend Ġchar Ġpositions Ġof Ġthe Ġnumbers Ġin Ġthe Ġconverted Ġutter ance . ĠWhile Ġthe Ġtree Ġcontains Ġthe Ġdependency Ġparse Ġtree Ġfor Ġthe Ġconverted Ġutter ance . </s> Given Ġthe Ġdependency Ġtree , Ġwe Ġimplemented Ġthe Ġframe Ġparsing Ġwhich Ġfirst Ġextracts Ġthe Ġentities Ġand Ġfeatures Ġfrom Ġthe Ġutter ance Ġand Ġsaves Ġthem Ġin Ġthe Ġcontext . ĠThen , Ġit Ġreplaces Ġthe Ġextracted Ġentities Ġand Ġfeatures Ġfor Ġreserved Ġcharacters . </s> ext ract _ period _ of _ invest ment Ġ( utter ance Tree ) Ġ[ 1 ] Ġ[ t ] Ġnumbers N odes ĠIN LINE FORM 0 Ġutter ance Tree . get Numbers N odes (); Ġ[ t ] Ġfore ach ( number Node Ġin Ġnumbers N odes ) Ġdo Ġ[ t ] Ġparents Of Numbers Node ĠIN LINE FORM 1 Ġnumbers Node . get Parents () Ġ[ t ] Ġfore ach ( parent Ġin Ġparents Of Numbers N odes ) Ġdo Ġ[ t ] Ġif Ġ( Ġparent . name Ġcontains Ġ{ Ġ" day ", Ġ" month ", Ġ" year "} Ġ) Ġthen Ġ[ t ] Ġparent Of Parent ĠIN LINE FORM 2 Ġparent . get Parent () Ġ[ t ] Ġif Ġ( Ġparent Of Parent Ġis Ġnot Ġnull Ġand </s> parent Of Parent . get Pos Tag == Ver b Ġand </s> parent Of Parent . name Ġin Ġinvestment Ver bs Set Ġ) Ġthen Ġ[ t ] Ġreturn Ġnumber Node </s> Therefore Ġan Ġutter ance Ġlike Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ10 Ġthousands Ġin Ġ3 Ġyears " Ġbecomes Ġ" I Ġwould Ġlike Ġto Ġinvest Ġ# v Ġin Ġ# dt Ġyears ". ĠOr Ġ" 10 Ġin Ġ3 Ġyears " Ġbecomes Ġ"# v Ġin Ġ# dt Ġyears ", Ġand Ġboth Ġint ents Ġhave Ġthe Ġsame Ġintent Ġclass . </s> For Ġdoing Ġthat Ġwe Ġimplemented Ġa Ġfew Ġrules Ġusing Ġa Ġdepth - first Ġsearch Ġalgorithm Ġcombined Ġwith Ġthe Ġrules Ġas Ġdescribed Ġin ĠAl gorithm ĠUID 79 Ġ, ĠAl gorithm ĠUID 79 Ġand ĠAl gorithm ĠUID 79 Ġ. ĠNote Ġthat Ġour Ġparser Ġworks Ġonly Ġfor Ġshort Ġtexts Ġon Ġwhich Ġthe Ġuser 's Ġutter ance Ġmentions Ġonly Ġone Ġperiod Ġof Ġtime Ġand / Ġor Ġinitial Ġamount Ġof Ġinvestment Ġin Ġthe Ġsame Ġutter ance . </s> ext ract _ initial _ amount _ of _ invest ment Ġ( utter ance Tree ) Ġ[ 1 ] Ġ[ t ] Ġnumbers N odes ĠIN LINE FORM 0 Ġutter ance Tree . get Numbers N odes (); Ġ[ t ] Ġfore ach ( number Node Ġin Ġnumbers N odes ) Ġdo Ġ[ t ] Ġparents Of Numbers Node ĠIN LINE FORM 1 Ġnumbers Node . get Parents () Ġ[ t ] Ġfore ach ( parent Ġin Ġparents Of Numbers N odes ) Ġdo Ġ[ t ] Ġif Ġ( Ġparent . name Ġdoes Ġnot Ġcontain Ġ{ Ġ" day ", Ġ" month ", Ġ" year "} Ġ) Ġthen Ġ[ t ] Ġreturn Ġnumber Node </s> frame _ p ars ing ( utter ance , Ġutter ance Tree ) Ġ[ 1 ] Ġ[ t ] Ġperiod ĠIN LINE FORM 0 Ġextract _ period _ of _ invest ment Ġ( utter ance Tree ) Ġ[ t ] Ġsave _ period _ of _ invest ment ( period ) Ġ[ t ] Ġvalue ĠIN LINE FORM 1 Ġextract _ initial _ amount _ of _ invest ment Ġ( utter ance Tree ) Ġ[ t ] Ġsave _ initial _ amount _ of _ invest ment ( value ) Ġ[ t ] Ġnew _ intent ĠIN LINE FORM 2 Ġreplace ( new _ intent , Ġperiod , Ġ"# dt ") Ġ[ t ] Ġnew _ intent ĠIN LINE FORM 3 Ġreplace ( new _ intent , Ġvalue , Ġ"# v ") </s> In ĠCogn IA Ġwe Ġhave Ġcomple mented Ġthe Ġspeech Ġact Ġclasses Ġwith Ġthe Ġones Ġrelated Ġto Ġthe Ġexecution Ġof Ġspecific Ġactions . ĠTherefore , Ġif Ġthe Ġchat bot Ġneeded Ġto Ġcompute Ġthe Ġreturn Ġof Ġinvestment , Ġthen , Ġonce Ġit Ġis Ġcomputed , Ġthe Ġspeech Ġact Ġof Ġthe Ġreply Ġwill Ġbe ĠInform _ Cal culation Ġand Ġthe Ġone Ġthat Ġrepresents Ġthe Ġquery Ġfor Ġthat Ġis ĠQuery _ Cal culation . ĠIn Ġtable ĠT AB REF 81 Ġwe Ġlist Ġthe Ġspecific Ġones . </s> Given Ġthat Ġthere Ġis Ġno Ġpublic Ġdataset Ġavailable Ġwith Ġfinancial Ġint ents Ġin ĠPortuguese , Ġwe Ġhave Ġemployed Ġthe Ġincremental Ġapproach Ġto Ġcreate Ġour Ġown Ġtraining Ġset Ġfor Ġthe ĠIntent ĠClass ifier . ĠFirst , Ġwe Ġapplied Ġthe ĠWizard Ġof ĠOz Ġmethod Ġand Ġfrom Ġthis Ġstudy , Ġwe Ġhave Ġcollected Ġa Ġset Ġof Ġ124 Ġquestions Ġthat Ġthe Ġusers Ġasked . ĠNext , Ġafter Ġthese Ġquestions Ġhave Ġbeen Ġmanually Ġclassified Ġinto Ġa Ġset Ġof Ġintent Ġclasses , Ġand Ġused Ġto Ġtrain Ġthe Ġfirst Ġversion Ġof Ġthe Ġsystem , Ġthis Ġset Ġhas Ġbeen Ġincreased Ġboth Ġin Ġterms Ġof Ġnumber Ġof Ġclasses Ġand Ġsamples Ġper Ġclass , Ġresulting Ġin Ġa Ġtraining Ġset Ġwith Ġ37 Ġclasses Ġof Ġint ents , Ġand Ġa Ġtotal Ġ415 Ġsamples , Ġwith Ġsamples Ġper Ġclass Ġranging Ġfrom Ġ3 Ġto Ġ37 . </s> We Ġhave Ġdefined Ġour Ġclassification Ġmethod Ġbased Ġon Ġfeatures Ġextracted Ġfrom Ġword Ġvectors . ĠWord Ġvectors Ġconsist Ġof Ġa Ġway Ġto Ġencode Ġthe Ġsemantic Ġmeaning Ġof Ġthe Ġwords , Ġbased Ġon Ġtheir Ġfrequency Ġof Ġco - occ urrence . ĠTo Ġcreate Ġdomain - specific Ġword Ġvectors , Ġa Ġset Ġof Ġthousand Ġdocuments Ġare Ġneeded Ġrelated Ġto Ġdesired Ġdomain . ĠThen Ġeach Ġintent Ġfrom Ġthe Ġtraining Ġset Ġneeds Ġto Ġbe Ġencoded Ġwith Ġits Ġcorresponding Ġmean Ġword Ġvector . ĠThe Ġmean Ġword Ġvector Ġis Ġthen Ġused Ġas Ġfeature Ġvector Ġfor Ġstandard Ġclass ifiers . </s> We Ġhave Ġcreated Ġdomain - specific Ġword Ġvectors Ġby Ġconsidering Ġa Ġset Ġ246 , 9 45 Ġdocuments , Ġcorresponding Ġto Ġof Ġ184 , 001 ĠTwitter Ġposts Ġand Ġand Ġ62 , 949 Ġnews Ġarticles , Ġall Ġrelated Ġto Ġfinance Ġ. </s> The Ġset Ġof Ġtweets Ġhas Ġbeen Ġcrawled Ġfrom Ġthe Ġfeeds Ġof Ġblog Ġusers Ġwho Ġare Ġconsidered Ġexperts Ġin Ġthe Ġfinance Ġdomain . ĠThe Ġnews Ġarticle Ġhave Ġbeen Ġextracted Ġfrom Ġlinks Ġincluded Ġin Ġthese Ġtweets . ĠThis Ġset Ġcontained Ġa Ġtotal Ġof Ġ63 , 270 , 124 Ġword Ġoccurrences , Ġwith Ġa Ġvocabulary Ġof Ġ97 , 616 Ġdistinct Ġwords . ĠWith Ġthe Ġaforementioned Ġword Ġvectors , Ġeach Ġintent Ġfrom Ġthe Ġtraining Ġset Ġhas Ġbeen Ġencoded Ġwith Ġits Ġcorresponding Ġmean Ġword Ġvector . ĠThe Ġmean Ġword Ġvector Ġhas Ġbeen Ġthen Ġused Ġas Ġfeature Ġvector Ġfor Ġstandard Ġclass ifiers . </s> As Ġthe Ġbase Ġclass ifier , Ġwe Ġhave Ġpursued Ġwith Ġa Ġtwo - step Ġapproach . ĠIn Ġthe Ġfirst Ġstep , Ġthe Ġmain Ġgoal Ġwas Ġto Ġmake Ġuse Ġof Ġa Ġclass ifier Ġthat Ġcould Ġbe Ġeasily Ġret rained Ġto Ġinclude Ġnew Ġclasses Ġand Ġint ents . ĠFor Ġthis Ġreason , Ġthe Ġfirst Ġimplementation Ġof Ġthe Ġsystem Ġconsidered Ġan Ġ1 - ne arest - ne igh bor Ġ( 1 NN ) Ġclass ifier , Ġwhich Ġis Ġsimply Ġa ĠK - ne arest - ne igh bor Ġclass ifier Ġwith ĠK Ġset Ġto Ġ1 . ĠWith Ġ1 NN , Ġthe Ġdeveloper Ġof Ġthe Ġsystem Ġcould Ġsimply Ġadd Ġnew Ġint ents Ġand Ġclasses Ġto Ġthe Ġclass ifier , Ġby Ġmeans Ġof Ġinserting Ġnew Ġlines Ġinto Ġthe Ġdatabase Ġstoring Ġthe Ġtraining Ġset . ĠOnce Ġwe Ġhave Ġconsidered Ġthat Ġthe Ġtraining Ġset Ġwas Ġstable Ġenough Ġfor Ġthe Ġsystem , Ġwe Ġmoved Ġthe Ġfocus Ġto Ġan Ġapproach Ġthat Ġwould Ġbe Ġable Ġto Ġprovide Ġhigher Ġaccuracy Ġrates Ġthan Ġ1 NN . ĠFor Ġthis , Ġwe Ġhave Ġemployed ĠSupport ĠVector ĠMachines Ġ( S VM ) Ġwith Ġa ĠGa ussian Ġkernel , Ġthe Ġparameters Ġof Ġwhich Ġare Ġoptimized Ġby Ġmeans Ġof Ġa Ġgrid Ġsearch . </s> We Ġmanually Ġmapped Ġthe Ġintent Ġclasses Ġused Ġto Ġtrain Ġthe Ġintent Ġclass ifier Ġto Ġaction Ġclasses Ġand Ġthe Ġdependent Ġentities Ġand Ġfeatures , Ġwhen Ġthe Ġcase . ĠTable ĠT AB REF 85 Ġsummarizes Ġthe Ġnumber Ġof Ġintent Ġclasses Ġper Ġaction Ġclass Ġthat Ġwe Ġused Ġin ĠCogn IA . </s> For Ġthe Ġmajority Ġof Ġaction Ġclasses Ġwe Ġused ĠSA BI A 's Ġdefault Ġbehavior . ĠFor Ġinstance , ĠG reet Ġand ĠBye Ġactions Ġclasses Ġare Ġimplemented Ġusing Ġrapport , Ġwhich Ġmeans Ġthat Ġif Ġthe Ġuser Ġsays Ġ" Hi " Ġthe Ġchat bot Ġwill Ġreply Ġ" Hi ". </s> The ĠSearch ĠNews , ĠComp ute Ġand ĠAsk ĠMore Ġclasses Ġare Ġthe Ġones Ġthat Ġrequire Ġspecific Ġimplement ion Ġfor ĠCogn IA Ġas Ġfollowing : </s> Search ĠNews : Ġsearch Ġfinance Ġon Ġsocial Ġmedia Ġservice ĠB IB REF 49 Ġ, ĠB IB REF 50 Ġreceives Ġthe Ġutter ance Ġas Ġinput , Ġsearches Ġon Ġpreviously Ġindexed ĠTwitter Ġdata Ġfor Ġfinance Ġfor ĠPortuguese Ġand Ġreturn Ġto Ġthe Ġone Ġwhich Ġhas Ġthe Ġhighest Ġscore , Ġif Ġfound . </s> Ask ĠMore : ĠIf Ġthe Ġuser Ġsends Ġan Ġutter ance Ġthat Ġhas Ġthe Ġintention Ġclass Ġof Ġsim ulating Ġthe Ġreturn Ġof Ġinvestment , Ġwhile Ġnot Ġall Ġvariables Ġto Ġcompute Ġthe Ġreturn Ġof Ġinvestment Ġare Ġextracted Ġfrom Ġthe Ġdialogue , Ġthe Ġmedi ator Ġkeeps Ġasking Ġthe Ġuser Ġthese Ġinformation Ġbefore Ġit Ġactually Ġredirect s Ġthe Ġquery Ġto Ġthe Ġexperts . ĠThis Ġaction Ġthen Ġchecks Ġthe Ġstate Ġof Ġthe Ġcontext Ġgiven Ġthe Ġspecified Ġintent Ġflow Ġas Ġdescribed Ġin Ġ( ĠEQ REF 46 Ġ) Ġand Ġ( ĠEQ REF 57 Ġ) Ġin Ġsection ĠSEC REF 4 Ġto Ġdecide Ġwhich Ġvariables Ġare Ġmissing . ĠFor ĠCogn IA Ġwe Ġmanually Ġadded Ġthese Ġdependencies Ġon Ġthe Ġdatabase . </s> Comp ute : ĠEach Ġexpert ĠChat bot Ġimplements Ġthis Ġaction Ġaccording Ġto Ġits Ġexpertise . ĠThe Ġsavings Ġaccount Ġchat bot Ġcomp utes Ġthe Ġformula Ġ( ĠEQ REF 90 Ġ) Ġand Ġthe Ġcertificate Ġof Ġdeposit Ġcomp utes Ġthe Ġformula Ġ( ĠEQ REF 92 Ġ). ĠBoth Ġare Ġcurrently Ġformulas Ġfor Ġestimating Ġin ĠBrazil . ĠDIS PLAY FORM 0 </s> where ĠIN LINE FORM 0 Ġis Ġthe Ġreturn Ġof Ġinvestment Ġfor Ġthe Ġsavings Ġaccount , ĠIN LINE FORM 1 Ġis Ġthe Ġinitial Ġvalue Ġof Ġinvestment , ĠIN LINE FORM 2 Ġis Ġthe Ġsavings Ġaccount Ġinterest Ġrate Ġand ĠIN LINE FORM 3 Ġis Ġthe Ġsavings Ġaccount Ġrate Ġbase . ĠDIS PLAY FORM 0 </s> where ĠIN LINE FORM 0 Ġis Ġthe Ġreturn Ġof Ġinvestment Ġfor Ġcertificate Ġof Ġdeposit , ĠIN LINE FORM 1 Ġis Ġthe Ġinitial Ġvalue Ġof Ġinvestment , ĠIN LINE FORM 2 Ġis Ġthe ĠInter bank ĠDeposit Ġrate Ġ( DI Ġin ĠPortuguese ), ĠIN LINE FORM 3 Ġis Ġthe ĠID 's Ġpercent ual Ġpay ed Ġby Ġthe Ġbank Ġ( v aries Ġfrom Ġ90 % Ġto Ġ120 %), ĠIN LINE FORM 4 Ġis Ġthe Ġnumber Ġof Ġdays Ġthe Ġmoney Ġis Ġinvested , Ġand Ġfinally ĠIN LINE FORM 5 Ġis Ġthe Ġincome Ġtax Ġon Ġthe Ġearnings . </s> Int ention ĠClass ifier ĠAccuracy </s> In ĠTable ĠT AB REF 95 Ġwe Ġpresent Ġthe Ġcomparison Ġof Ġsome Ġdistinct Ġclassification Ġon Ġthe Ġfirst Ġversion Ġof Ġthe Ġtraining Ġset , Ġi . e . Ġthe Ġset Ġused Ġto Ġdeploy Ġthe Ġfirst Ġclass ifier Ġinto Ġthe Ġsystem . ĠRough ly Ġspeaking , Ġthe Ġ1 NN Ġclass ifier Ġhas Ġbeen Ġable Ġto Ġachieve Ġa Ġlevel Ġof Ġaccuracy Ġthat Ġis Ġhigher Ġthan Ġother Ġwell - known Ġclass ifiers , Ġsuch Ġas ĠLog istic ĠReg ression Ġand ĠNa Ã¯ve ĠBay es , Ġshowing Ġthat Ġ1 NN Ġis Ġsuitable Ġas Ġa Ġdevelopment Ġclass ifier . ĠNevertheless , Ġa ĠS VM Ġcan Ġperform Ġconsiderable Ġbetter Ġthan Ġ1 NN , Ġreaching Ġaccur acies Ġof Ġabout Ġ12 Ġpercentage Ġpoints Ġhigher , Ġwhich Ġdemonstrates Ġthat Ġthis Ġtype Ġof Ġbase Ġclass ifier Ġis Ġa Ġbetter Ġchoice Ġto Ġbe Ġdeployed Ġonce Ġthe Ġsystem Ġis Ġstable Ġenough . ĠIt Ġis Ġworth Ġmentioning Ġthat Ġthese Ġresults Ġconsider Ġthe Ġleave - one - out Ġvalidation Ġprocedure , Ġgiven Ġthe Ġvery Ġlow Ġnumber Ġof Ġsamples Ġin Ġsome Ġclasses . </s> As Ġwe Ġmentioned , Ġthe Ġuse Ġof Ġan Ġ1 NN Ġclass ifier Ġhas Ġallowed Ġthe Ġdeveloper Ġof Ġthe Ġsystem Ġto Ġeasily Ġadd Ġnew Ġintent Ġclasses Ġand Ġsamples Ġwhenever Ġthey Ġjudged Ġit Ġnecessary , Ġso Ġthat Ġthe Ġsystem Ġcould Ġpresent Ġnew Ġactions , Ġor Ġthe Ġunderstanding Ġof Ġthe Ġint ents Ġcould Ġbe Ġimproved . ĠAs Ġa Ġconsequence , Ġthe Ġinitial Ġtraining Ġset Ġgrew Ġfrom Ġ37 Ġto Ġ63 Ġclasses , Ġand Ġfrom Ġ415 Ġto Ġ6 59 Ġsamples , Ġwith Ġthe Ġnumber Ġof Ġsamples Ġper Ġclass Ġvarying Ġfrom Ġ2 Ġto Ġ63 . ĠFor Ġvisual izing Ġthe Ġimpact Ġon Ġthe Ġaccuracy Ġof Ġthe Ġsystem , Ġin ĠTable ĠT AB REF 96 Ġwe Ġpresent Ġthe Ġaccuracy Ġof Ġthe Ġsame Ġclass ifiers Ġused Ġin Ġthe Ġprevious Ġevaluation , Ġin Ġthe Ġnew Ġset . ĠIn Ġthis Ġcase , Ġwe Ġobserve Ġsome Ġdrop Ġin Ġaccuracy Ġfor Ġ1 NN , Ġshowing Ġthat Ġthis Ġclass ifier Ġsuffers Ġin Ġdealing Ġwith Ġscal ability . ĠOn Ġthe Ġother Ġhand , ĠS VM Ġhas Ġshown Ġto Ġscale Ġvery Ġwell Ġto Ġmore Ġclasses Ġand Ġsamples , Ġsince Ġits Ġaccuracy Ġkept Ġat Ġa Ġvery Ġsimilar Ġlevel Ġthan Ġthat Ġwith Ġthe Ġother Ġset , Ġwith Ġa Ġdifference Ġof Ġabout Ġonly Ġ1 Ġpercentage Ġpoint . </s> Testing ĠSA BI A </s> In Ġthis Ġsection , Ġwe Ġdescribe Ġthe Ġvalidation Ġframework Ġthat Ġwe Ġcreated Ġfor Ġintegration Ġtests . ĠFor Ġthis , Ġwe Ġdeveloped Ġit Ġas Ġa Ġnew Ġcomponent Ġof ĠSA BI A 's Ġsystem Ġarchitecture Ġand Ġit Ġprovides Ġa Ġhigh Ġlevel Ġlanguage Ġwhich Ġis Ġable Ġto Ġspecify Ġinteraction Ġscenarios Ġthat Ġsimulate Ġusers Ġinteracting Ġwith Ġthe Ġdeployed Ġchat bots . ĠThe Ġsystem Ġtesters Ġprovide Ġa Ġset Ġof Ġutter ances Ġand Ġtheir Ġcorresponding Ġexpected Ġresponses , Ġand Ġthe Ġframework Ġautomatically Ġsim ulates Ġusers Ġinteracting Ġwith Ġthe Ġbots Ġand Ġcollect Ġmetrics , Ġsuch Ġas Ġtime Ġtaken Ġto Ġanswer Ġan Ġutter ance Ġand Ġother Ġresource Ġconsumption Ġmetrics Ġ( e . g ., Ġmemory , ĠCPU , Ġnetwork Ġbandwidth ). ĠOur Ġgoal Ġwas Ġto : Ġ( i ) Ġprovide Ġa Ġtool Ġfor Ġintegration Ġtests , Ġ( ii ) Ġto Ġvalidate ĠCogn IA 's Ġimplementation , Ġand Ġ( iii ) Ġto Ġsupport Ġthe Ġsystem Ġdevelopers Ġin Ġunderstanding Ġthe Ġbehavior Ġof Ġthe Ġsystem Ġand Ġwhich Ġaspects Ġcan Ġbe Ġimproved . ĠThus , Ġwhenever Ġdevelopers Ġmodify Ġthe Ġsystem 's Ġsource Ġcode , Ġthe Ġmodifications Ġmust Ġfirst Ġpass Ġthe Ġautomatic Ġtest Ġbefore Ġactual Ġdeployment . </s> The Ġtest Ġframework Ġworks Ġas Ġfollows . ĠThe Ġsystem Ġtesters Ġprovide Ġa Ġset ĠIN LINE FORM 0 Ġof Ġdialog ues Ġas Ġinput . ĠEach Ġdialogue ĠIN LINE FORM 1 ĠIN LINE FORM 2 ĠIN LINE FORM 3 Ġis Ġan Ġordered Ġset Ġwhose Ġelements Ġare Ġrepresented Ġby ĠIN LINE FORM 4 Ġ, Ġwhere ĠIN LINE FORM 5 Ġis Ġthe Ġuser Ġutter ance Ġand ĠIN LINE FORM 6 Ġis Ġan Ġordered Ġset Ġof Ġpairs ĠIN LINE FORM 7 Ġthat Ġlists Ġeach Ġresponse ĠIN LINE FORM 8 Ġeach Ġchat bot ĠIN LINE FORM 9 Ġshould Ġrespond Ġwhen Ġthe Ġuser Ġsays ĠIN LINE FORM 10 Ġ. ĠFor Ġinstance , ĠTable ĠUID 98 Ġshows Ġa Ġtypical Ġdialogue Ġ( ĠIN LINE FORM 11 Ġ) Ġbetween Ġa Ġuser Ġand Ġthe ĠCogn IA Ġsystem . ĠNote Ġthat Ġwe Ġare Ġo mitting Ġpart Ġof Ġthe Ġexpected Ġanswer Ġwith Ġ" ..." Ġjust Ġto Ġbetter Ġvisualize Ġthe Ġcontent Ġof Ġthe Ġtable . </s> | p 3 . 6 cmp 0 . 4 cmp 4 . 5 cmp 3 . 2 cm | Content Ġof Ġdialogue ĠIN LINE FORM 0 Ġ( example Ġof Ġdialogue Ġin ĠCogn IA ) Content Ġof Ġdialogue ĠIN LINE FORM 1 Ġ( example Ġof Ġdialogue Ġin ĠCogn IA </s> User Ġutter ance ĠIN LINE FORM 0 Ġr Id ĠEx pected Ġresponse ĠIN LINE FORM 1 ĠChat bot ĠIN LINE FORM 2 </s> gray ! 25 Ġhello Ġ1 ĠHello ĠMed iator </s> white Ġwhat Ġis Ġc db ? Ġ2 Ġ@ CD B Ex pert Ġwhat Ġis Ġc db ? ĠMed iator </s> white Ġ3 ĠCD B Ġis Ġa Ġtype Ġof Ġinvestment Ġthat ... ĠCD B ĠExpert </s> gray ! 25 Ġwhich Ġis Ġbetter : Ġc db Ġor Ġsavings Ġaccount ? Ġ4 ĠI Ġfound Ġa Ġpost Ġin Ġthe Ġsocial Ġmedia Ġfor .... ĠMed iator </s> white Ġi Ġwould Ġlike Ġto Ġinvest ĠR $ Ġ50 Ġin Ġsix Ġmonths Ġ5 Ġ@ Sav ings Account Ex pert Ġand Ġ@ CD B Ex pert , Ġcould Ġyou Ġdo Ġa Ġsimulation ... ĠMed iator </s> white Ġ6 ĠIf Ġyou Ġinvest Ġin ĠSavings ĠAccount , Ġ... ĠSavings ĠAccount ĠExp . </s> white Ġ7 ĠIf Ġyou Ġinvest Ġin ĠCD B ,... ĠCD B ĠExpert </s> white Ġ8 ĠThanks ĠMed iator </s> white Ġ9 Ġ@ User , Ġthere Ġis Ġno Ġsignificant Ġdifference .. ĠMed iator </s> gray ! 25 Ġso Ġi Ġwant Ġto Ġinvest ĠR $ Ġ10000 Ġin Ġ2 Ġyears Ġ10 Ġ@ Sav ings Account Ex pert Ġand Ġ@ CD B Ex pert , Ġcould Ġyou Ġdo Ġa Ġsimulation ... ĠMed iator </s> gray ! 25 Ġ11 ĠIf Ġyou Ġinvest Ġin ĠSavings ĠAccount ,... ĠSavings ĠAccount ĠExp . </s> gray ! 25 Ġ12 ĠIf Ġyou Ġinvest Ġin ĠCD B ,... ĠCD B ĠExpert </s> gray ! 25 Ġ13 ĠThanks ĠMed iator </s> gray ! 25 Ġ14 Ġ@ User , Ġin Ġthat Ġcase , Ġit Ġis Ġbetter ... ĠMed iator </s> white Ġwhat Ġif Ġi Ġinvest ĠR $ 10 , 000 Ġin Ġ5 Ġyears ? Ġ15 Ġ@ Sav ings Account Ex pert Ġand Ġ@ CD B Ex pert , Ġcould Ġyou Ġdo Ġa Ġsimulation ... ĠMed iator </s> white Ġ16 ĠIf Ġyou Ġinvest Ġin ĠSaving ĠAccount ,... ĠSavings ĠAccount ĠExp . </s> white Ġ17