a computational model for the synthesis of artificial emotions synthesis of emotions in robots and...

19
A computational model for the synthesis of artificial emotions • synthesis of emotions in robots and agents • enhance human-robot interaction • Applications: – home assistance and independent living – the theatrical-museal machine – emotions in ECA (software robots/agents)

Upload: audrey-goodwin

Post on 30-Dec-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

A computational model for the synthesis of artificial emotions

• synthesis of emotions in robots and agents

• enhance human-robot interaction

• Applications:– home assistance and independent living– the theatrical-museal machine– emotions in ECA (software robots/agents)

Page 2: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

State of the art

• Psychological (Johnson Laird, Frijda)

• Computer simulations of emotion (Frijda, Elliot)

• Applications embedding artificial emotions (Maes, Kautz)

• Models based on logics (Ortony) • Music models (Riecken, Hashimoto)

Page 3: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Artificial Emotions

• Why use emotions ?

• Emotion as the syntesis of a complex system’s state

• Intuitive and understandable by users

• The strong and the weak claim

• Can we simulate all emotions ?

Page 4: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Our model of Artificial Emotions

• Personality, character, mood

• “Carrots” and “Sticks”

• The Ego-Nos space

• The thirteen zones

• How the character moves

• The algorithm

Page 5: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Carrots and Sticks’ creation

Outworld

Behavior

level

Unprocessed data

Zonal

Class

Environmental features (too slow, many obstacles...)

Carrots and Sticks

The mood class

Page 6: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

How orders are created and executed

Outworld

Behavior

level

Zonal

Class

The mood class

On-off messages

Orders for the behavior level.

Changes of the sensors’ sensitivity and of the behaviors’ parameters

Page 7: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

(Vanità) (Gasata)

Clown Vanity Rapture

(Speranza) (Felicità)

Hope Happiness

(Depressione) (Apatia) (Orgoglio)

Depression Apathy Pride

(Malinconia) (Serenità)

Melancholy Peacefulness

(Eremita/Emarginato)(Disadattato)

(Rivoluzionario)

Hermit/WithdrawnMaladjusted

Revolt

Page 8: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

(Vanità) (Gasata)

Clown Vanity Rapture

(Speranza) (Felicità)

Hope Happiness

(Depressione) (Apatia) (Orgoglio)

Depression Apathy Pride

(Malinconia) (Serenità)

Melancholy Peacefulness

(Eremita/Emarginato)(Disadattato)

(Rivoluzionario)

Hermit/WithdrawnMaladjusted

RevoltNo sensitivity to SticksNos

Normal sensitivity to SticksNos

Minimum sensitivity to SticksNos

Normal sensitivity to SticksNos

Maximum sensitivity to SticksNos

Page 9: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

The character of an agent can change only by means of internal and external stimuli. The class (in object-oriented terms) that implements the character supports only four high-level messages: Carrots-Ego, Carrots-Nos, Sticks-Ego, Sticks-Nos.“Carrots” (or “please”, positive inputs) and “Sticks” (or “pain”, negative ones), arrivingeither from the agent itself or from the external world.

The motivation for having only these two types of messages is rather simple: navigation in a two-dimenstional space requires two non-aligned accelerations, and Ego and Nos are orthogonal.

Possible extensions of the dimensionality of the emotion space, e.g., toward a 3D emotional space including, for example, a sort of “physical efficency” axis, only would need a third independent stimulus, still consisting of the two ambivalent high-level inputs (carrots and sticks).Our current model is not a case of reinforcement learning: the agent is not able to learn. The four stimuli are used to explore the agent’s emotion space. Nevertheless, how the character effectively moves in response to this four stimuli is in effect inspired by reinforcement learning.

Page 10: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

The dynamics for changing the character of an agent. For each region there are four styles of movements to define, for each message that can arrive from the internal modules of the agent or from the external world.

When the Mood object allocates a particular region, it adapts its interface in order to change in response to the stimuli from the lower level or from the outside, so we have actually thirteen interfaces of the Mood object. We call metamorphosis the mechanism supported in the mood class which allows different answers to the same stimuli in different regions. Metamorphosis is a basic mechanism in the context change function of an agent.

Page 11: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Example: how the mood class behaves when the agent is in two different regions.

“happiness” region: A “happy” agent should take into consideration either positive or negative stimuli either from itself or from others. This means that the “happy-interface” is linear. This happens also in the other three regions, corresponding to the three quadrants except the region around the origin (Apathy).

“vanity” region: here the robot’s Ego component is small, while its Nos is over the maximum (see emotion map). This means that a vain agent will not take into consideration messages from himself, because its consideration is small (it is actually apathetic towards itself). Since it corresponds to a region already over the Maximum-Nos component, another Carrot from the outside would cause no effect: it is insensitive to others’ carrots, it already knows that the world is considering it positively. But what about others’ sticks? We are in a region where the agent is used to carrots, so a single stick would be catastrophic: it is very sensitive to sticks from the outside here!

Page 12: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Algorithm for the navigation of the character point in the emotion space

Variation of the Metropolis algorithm, also used in simulated annealing techniques.

We have defined three possible maximum changes of the character’s components, plus the zero-change in the case of insensibility: each region has its own rectangle search.

The step of change of the point representing the current character in the emotion space is than a random search in the proper rectangle. There is a “memory” of the previous character; instead of the typical Metropolis test to decide if accept or not the new point, we move all the new points towards their old ones with a ratio determined by the “Temperature” of the mood, that is, the degree of “moodiness” of the agent.

The new position is then classified into a region in the emotion space. As soon as the character moves from one region to another, the object “Agent Character” immediately switches off the current class and allocates an instance of the one pertinent to the new region in which the character point has moved. Then the Character class asks the new current class to take the control of the agent emotional component.

Page 13: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

The three possible maximum responses to CarrotsEgo

Current Character

Page 14: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

How the character moves in the Ego-Nos plane

Old Character

Current Character

The length of the Mood Rectangle is given by the sensitiveness to carrotsEGO in this area

The height is a fraction of the AC segment

A

C

Candidate Character

New Character

Page 15: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Algorithm (cont’d)

Parametrs: the old position of the character (OldChar); the current position (Char); the current Stimulus with its direction (positive or negative); the Mood and the Temperature (two real numbers between 0 e 1).

Let us consider a positive Stimulus in the x axis (Carrot Ego).

1. The stimulus determines the width of the Mood Rectangle. The rectangle is not symmetric with respect to the starting point (the current character). This means that with a Carrot Ego, the probability to move toward the negative abscissa is zero. The width of the mood rectangle, CarrotVal, is a constant value for each region.

2. The height of the rectangle is computed as follows: given the difference between the Y coords of the two previous characters, we consider a percentage given by the Mood. The following formulas describe the mechanism: rangey = | CurrCharY - OldCharY | * MoodYmin = CurrCharY - 0.25 * rangeYYmax = CurrCharY + 0.75 * rangeYXmin = CurrCharXXmax = CurrCharX + CarrotValAt this point, the rectangle is defined.

%

Page 16: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Algorithm (cont’d)

3. Choose a random point inside the rectangle, which is the candidate for the new character;

4. Define the segment between the current character and the candidate character.

5. Move the candidate character to the current character of a quantity proportional to the Temperature;

6. OldChar = Char; CandidateChar = Char;

7. if the previous steps caused a change of region, apply the class-metamorphosis mechanism to adapt Mood to the new region.

Page 17: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

The software (Linosaph)

• A software module in C++ built as a Saphira Client (K. Konolige, Stanford Research Institute) for the robotic platform Piooner 1 and 2 (RWII, SRI)

• How carrots and sticks are generated

• How they are used

• EyesWeb implementation (Saphira Library, old version)

Page 18: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Theatrical museal machine at work

• Exhibition: Mostra della Cultura Scientifica e Tecnologica “Imparagiocando3”, 1996

• Concert at Scuola Civica di Musica, Milano Music: Stockhausen, for trombone, robot, and live electronics

• Demonstration on national TV (RAI3), Geo&Geo, April 1997

• The piece for dancer and robot at the concert at the Kansei Workshop 1997

• Experiments on composition with Aes

• “L’Ala dei Sensi”, spettacolo teatrale, regia di Giorgio Celli e Ezio Cuoghi: robot interagisce con danzatori, 1999.– “Degrees of freedom” in robotic actors.

Page 19: A computational model for the synthesis of artificial emotions synthesis of emotions in robots and agents enhance human-robot interaction Applications:

Bibliografia• A.Camurri, P.Ferrentino (1999). Interactive

Environments for Music and Multimedia. ACM MULTIMEDIA SYSTEMS, Vol.7, No.1, pp.32-47, Special issue on Audio and Multimedia, January 1999, ACM-Springer.

• A.Camurri, P.Coletta, M.Ricchetti, G.Volpe (2000) Expressiveness and Physicality in Interaction. Journal of New Music Research, Vol. 29, No. 3, pp.187-198, September 2000, Swets & Zeitlinger.