Social Agents for Learning in Virtual Environments

0 downloads 0 Views 9MB Size Report
Outline. Learning social and communication skills ... Chatbot as a possible solution? ... end greetings present. Get patient data. Determine symptoms. Determine.
Social Agents for Learning in Virtual Environments Agnese Augello1, Manuel Gentile2 , Frank Dignum3 1ICAR 2ITD

- National Research Council of Italy, - National Research Council of Italy

3Utrecht

University, The Netherlands

Outline Learning social and communication skills Social skills training and SGs The proposed solution: SALVE Architecture Some examples

Why social skills? social, psychological and occupational well-being are ensured by

academic or professional success are predicted by

interpersonal, social and communicative competences

Social skills training theories Skinner Wolpe

••Behavioral shaping ••Psychotherapy by Reciprocal Inhibition

Wolpe & Lazarus

••Assertion or assertiveness training

Bandura

••Social learning theory

A classical social skills training procedure Assessment Direct Instruction and Coaching Modeling

Role Playing Homework assignment & Follow-up

Role Playing to practice the desired behaviours in a controlled setting problems ••difficult ••expensive

Serious games

Social and communication skills training & SG Skinner

Wolpe

Behavioural oriented Serious Games

Behavioural oriented Serious Games Design

Wolpe & Lazarus

Bandura

e.g. Scripted based design

Behavioural oriented Serious Games Design Pros

Cons

The organization of the interaction facilitates the designof the scenario

hides the knowledge at its base

Interaction with the virtual agent

There is a fine control of the scenario (e.g. the conversation)

The agent behaviour are predetermined and the interaction becomes repetitive after few uses.

Player Experience

Specific user's behaviours can be trained

Players have no freedom. The game experience is quite different from a real one

Knowledge design and reuse

Role of social context in conversation in communication The dialogue is a joint activity that must consider both individual and social processes Different communication strategies can be used according to the specific social context The same sentence can be used with a different meaning in different context and can raise different social effects

“You should take a cat”

A different approach to implement the conversational agent: SALVE Social Agents for Learning in Virtual Environments

Putting social practices at the heart of the deliberation allows for more efficient planning (Dignum and Dignum, 2014)

The social practice model

Chatbot as a possible solution? 1966 – Eliza 1988 – Jabberwacky 1992 - Dr. Sbaitso 1995 - A.L.I.C.E. 2001 - Activebuddy’s Smarterchild 2011 - Watson, Siri 2012 - Google Now 2015 - Amazon Alexa , Microsoft Cortana 2016 – More than 18.000 Bots on Im, Messanger and Facebook

Chatbot as a possible solution? Strength • It is possible to quickly create a conversational agent, avoiding natural language processing issues • It is easy to define the chatbot behaviour through the design of proper question answers modules (Alice -> AIML categories)

Weaknesses • Chatbots lacks the ability to keep an overview and a structure of the entire conversation. • In AIML the dialogue is managed keeping track of the last conversation exchange and setting conversation topics. • It is difficult to design chatbots able to correctly manage social conversational practices.

MY NAME IS * HELLO THERE WHAT IS YOUR NAME Nice to meet you

Architecture of the SALVE system

Architecture of the SALVE system Using chatbot just as an interaction interface Extend the AIML language that describes the chatbot rules with ”social” tags such that it keeps track where it is in the social practice (towards state based dialogue)

Architecture of the SALVE system

Integrate chatbot with a rule based engine (DROOLS) to keep track of the agent states and guide it the social practice

How “social practice” guides SG design

How “social practice” guides SG design

How “social practice” guides SG design Communicate!

greetings Get patient data

start present

Determine symptoms

Determine treatment

end

How “social practice” guides SG design

greetings Get patient data

start present

Determine symptoms

Determine treatment

end

Examples of S-AIML

Example rules: Timely greetings lead to positive emotions rule "GreetingsReceivedInTime" when $startScene:EnterScene(scene.name=="greetings") $g:GreetingsReceived(this after[0ms,20000ms] $startScene ) then controller.print($startScene.getScene().getName()); controller.print("greeting received in the first 20 seconds after the start of the scene"); OOCHappenedEvent he=new OOCHappenedEvent(); don(he,DesirableEvent.class); don(he,ProspectedRelevantEvent.class); insert(he); controller.print("greeting marked as happened desirable prospected event"); insert(new ChangeOfSceneFromGoal()); end

Example rules: Timely greetings lead to positive emotions rule "GreetingsReceivedInTime" when $startScene:EnterScene(scene.name=="greetings") $g:GreetingsReceived(this after[0ms,20000ms] $startScene ) then controller.print($startScene.getScene().getName()); controller.print("greeting received in the first 20 seconds after the start of the scene");

end

rule "DesirableEventHappened" when OOCHappenedEvent he=new OOCHappenedEvent(); OOCHappenedEvent(this isA don(he,DesirableEvent.class);ProspectedIrrelevantEvent,this isA DesirableEvent) don(he,ProspectedRelevantEvent.class); $agent:Emotion(this isA Agent) then insert(he); controller.print("captured desirable event"); controller.print("greeting marked as happened desirable prospected event"); $agent.setJoy($agent.getJoy()+1); insert(new ChangeOfSceneFromGoal()); controller.print("increase joy"); controller.setJoy($agent.getJoy()); end

Example rules: Greetings not received in time lead to negative emotions rule "GreetingsNotReceivedInTime" when $startScene:EnterScene(scene.name=="greetings") (not(GreetingsReceived(this after[0ms,20000ms] $startScene )) then scene");

controller.print("greeting not received in the first 20 seconds after the start of the OOCNotHappenedEvent nhe=new OOCNotHappenedEvent(); don(nhe,DesirableEvent.class); don(nhe,ProspectedRelevantEvent.class); insert(nhe); controller.print("dummy event marked as not happened desirable prospected event"); controller.respond("why you did not say hello!");

end

Example rules: Greetings not received in time lead to negative emotions rule "GreetingsNotReceivedInTime" when $startScene:EnterScene(scene.name=="greetings") (not(GreetingsReceived(this after[0ms,20000ms] $startScene )) then scene");

controller.print("greeting not received in the first 20 seconds after the start of the OOCNotHappenedEvent nhe=new OOCNotHappenedEvent(); rule "DesirableProspectedEventNotHappened"

when don(nhe,DesirableEvent.class);

$d:OOCNotHappenedEvent(this isA ProspectedRelevantEvent, this isA DesirableEvent) insert(nhe); $agent:Emotion(this isA Agent) controller.print("dummy event marked as not happened desirable prospected event"); then not happened desirable event"); controller.respond("why youcontroller.print("captured did not say hello!"); $agent.setDisappointment($agent.getDisappointment()+1); controller.print("increased Disappointment"); controller.setDisappointment($agent.getDisappointment()); end don(nhe,ProspectedRelevantEvent.class);

end

Empathic opportunities are given and can be taken or ignored

SALVE architecture

SALVE architecture

SALVE architecture

SALVE architecture

Conclusion and future work 1/2 The proposed solution: ••puts social practice at the heart of the deliberative process of an agent; ••allows for a dynamic activation of categories, depending on the current social practice, the pursued plan, the on-going activity, and finally, at the lowest level the agent’s identity; ••allows for a great flexibility in the conversation while at the same time simplifying the formalization of the chatbot KB; ••ensures to the player a greater freedom in sentences expression, and the possibility to experiment dynamic scenarios and different roles; ••Lets the player actively create a conversation rather than choose moves

Conclusion and future work 2/2 Future work: ••finalize the implementation of the serious game according to a proper learning design approach; ••Improve the social practices representations; ••create a tool to support the designer ••validate the proposed approach