17
Software architecture for YOLO, a creativity-stimulating robot Patr´ ıcia Alves-Oliveira *a,b,c , Samuel Gomes c,d , Ankita Chandak e , Patr´ ıcia Arriaga a , Guy Hoffman b , Ana Paiva c,d a ISCTE-Instituto Universit´ ario de Lisboa, CIS-IUL, Lisbon, Portugal b Sibley School of Mechanical and Aerospace Engineering, Cornell University, Ithaca, NY, USA. c INESC-ID, Lisbon, Portugal. d Instituto Superior T´ ecnico, Universidade de Lisboa, Lisbon, Portugal e Computer Science Engineering, Cornell University, Ithaca, NY, USA. Abstract YOLO is a social robot designed and developed to stimulate creativity in chil- dren through storytelling activities. Children use it as a character in their stories. This article details the artificial intelligence software developed for YOLO. The implemented software schedules through several Creativity Be- haviors to find the ones that stimulate creativity more effectively. YOLO can choose between convergent and divergent thinking techniques, two important processes of creative thought. These techniques were developed based on the psychological theories of creativity development and on research from cre- ativity experts who work with children. Additionally, this software allows the creation of Social Behaviors that enable the robot to behave as a believ- able character. On top of our framework, we built 3 main social behavior parameters: Exuberant, Aloof, and Harmonious. These behaviors are meant to ease immersive play and the process of character creation. The 3 social behaviors were based on psychological theories of personality and developed using children’s input during co-design studies. Overall, this work presents an attempt to design, develop, and deploy social robots that nurture intrinsic human abilities, such as the ability to be creative. Keywords: Social robotics, artificial intelligence, human-robot interaction, creativity, open software * Corresponding author: E-mail address: [email protected] (P. Alves-Oliveira) Webpage: www.patricialvesoliveira.com Preprint submitted to SoftwareX September 25, 2019 arXiv:1909.10823v1 [cs.RO] 24 Sep 2019

Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Software architecture for YOLO,

a creativity-stimulating robot

Patrıcia Alves-Oliveira∗a,b,c, Samuel Gomesc,d, Ankita Chandake, PatrıciaArriagaa, Guy Hoffmanb, Ana Paivac,d

aISCTE-Instituto Universitario de Lisboa, CIS-IUL, Lisbon, PortugalbSibley School of Mechanical and Aerospace Engineering, Cornell University, Ithaca, NY,

USA.cINESC-ID, Lisbon, Portugal.

dInstituto Superior Tecnico, Universidade de Lisboa, Lisbon, PortugaleComputer Science Engineering, Cornell University, Ithaca, NY, USA.

Abstract

YOLO is a social robot designed and developed to stimulate creativity in chil-dren through storytelling activities. Children use it as a character in theirstories. This article details the artificial intelligence software developed forYOLO. The implemented software schedules through several Creativity Be-haviors to find the ones that stimulate creativity more effectively. YOLO canchoose between convergent and divergent thinking techniques, two importantprocesses of creative thought. These techniques were developed based on thepsychological theories of creativity development and on research from cre-ativity experts who work with children. Additionally, this software allowsthe creation of Social Behaviors that enable the robot to behave as a believ-able character. On top of our framework, we built 3 main social behaviorparameters: Exuberant, Aloof, and Harmonious. These behaviors are meantto ease immersive play and the process of character creation. The 3 socialbehaviors were based on psychological theories of personality and developedusing children’s input during co-design studies. Overall, this work presentsan attempt to design, develop, and deploy social robots that nurture intrinsichuman abilities, such as the ability to be creative.

Keywords: Social robotics, artificial intelligence, human-robot interaction,creativity, open software

∗Corresponding author:E-mail address: [email protected] (P. Alves-Oliveira)Webpage: www.patricialvesoliveira.com

Preprint submitted to SoftwareX September 25, 2019

arX

iv:1

909.

1082

3v1

[cs

.RO

] 2

4 Se

p 20

19

Page 2: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Figure 1: YOLO, a social robot that can boost creativity in children.

1. Introduction

Creativity is one of the most sought-after skills, with recognized benefitsin education, mental health, and professional success [1, 2]. It is associatedwith states of joy, play, efficiency, and pleasure [3, 4]. When stimulated inchildhood, it promotes overall development with specific benefits in learningand adaptation. [5]. Creativity has been stimulated through the use of differ-ent intervention programs with promising effectiveness levels, demonstratingthe potential to develop creativity with proper training [6, 7]. However, mostof these interventions developed for children lack elements of joy and fun.Therefore, they are considered similar to test-like exercises that can hindertheir creative expression. The fast pace of technology development enabledthe design of new tools for exploring the context of creativity stimulation[8] (e.g., the CUBUS virtual environment for storytelling with emotionallyevocative characters [9]).

In our work, we aim to expand the range of technologies used for creativitystimulation by incorporating social robots to catalyze this ability. With thisin mind, we designed and developed YOLO (Your Own Living Object), anoriginal social robot to be used as a toy during children’s play times (seeFigure 1). YOLO belongs to a new generation of technological toys meant tostimulate creative abilities in children. This robot is envisioned as a characterchildren use during storytelling. By having a small-size and a light-weightdesign, YOLO can be manipulated by children as if it was a traditional toy

2

Page 3: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

convergent

thinking

falling action

climax

raising actiondivergentthinking

convergentthinking

Figure 2: Storytelling arcs associated with creativity techniques: convergent thinking isstimulated during rising and falling action phases by using the mirror technique; divergentthinking is stimulated during climax by using the contrast technique.

while children create stories with it (similarly to what they do with dolls orcar toys). The added-value of this robot is that it can increase the creativethought process of children during story creation by providing novel ideasfor storylines. Because YOLO is a non-anthropomorphic robot, it interactswith children using alternative but effective interactive modalities. Thesecomprise variable motion and illumination profiles. In this paper, we detailthe artificial intelligence software of YOLO. The software is composed ofCreativity and Social Behaviors whose design was grounded on creativityresearch [10], the Big Five personality model [11], and co-design sessionswith children [12]. We release the robot’s software 1 along with its installationguide2 in open access. This software should be exclusively installed on YOLOhardware [13]).

2. Related work

2.1. Background on creativity research

As societies develop into creativity-based economies, innovative and cre-ative problem solving and the ability to collaborate are becoming must-haveskills [14, 1]. However, around the age of 7–9 years old there is a decline inchildren’s creativity abilities known as the “creative crisis” [15]. Research

1Download YOLO Software: https://github.com/patricialvesoliveira/

YOLO-Software2Link to YOLO Software installation guide: https://github.com/

patricialvesoliveira/YOLO-Software/wiki

3

Page 4: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

has shown that everyone has the potential to be creative and that creativitycan be nurtured if stimulated [16, 17]. In our work, we aim to contributeto the increase in children’s creativity by using a social robot. It thereforebecomes imperative to stimulate this ability at a young age. In particu-lar, emphasizing the school environment where children spend most of theirtime. While some schools already feature activities (e.g., storytelling) to sup-port the promotion of children’s creative thinking [18], current activities canbe challenging to integrate into traditional classroom formats as they needpreparation time and are not formally included in the school curriculum [19].Technologies — such as social robots — appear as a more effective tool toapply in these contexts.

2.2. Robots for creativity

Robots have been programmed with a deep variety of socially intelligentbehaviors and affective states; thus, permitting robots to be perceived as so-cial actors [20, 21]. Additionally, due to their physical and interactive nature,they become a technology that can uniquely impact creativity stimulation.Ali, Moroso, and Breazel [22] demonstrated that a robot displaying creativebehaviors positively influenced the creativity of children. The authors foundthat children who interacted with a creative robot generated more ideas, ex-plored more themes, and were more original, than children who interactedwith a non-creative robot [22]. Additionally, Gordon et al. [23] demonstratedthat children become more curious, an important creativity trait, when in-teracting with a curious robot. The authors found that these children posedmore questions and become avid explores, compared to children who inter-acted with a non-curious robot [23].

3. Software description

In our work, we developed software that gives life to the social robotYOLO, whose interaction is composed of Creativity and Social Behaviors.

3.1. Creativity behavior

In our specific application scenario, YOLO acts as a character that cantrigger new directions in children’s stories that otherwise would not emerge.During story creation, a combination of divergent (i.e., broad gathering ofmultiple ideas) and convergent thinking (i.e., narrowing down possibilities tocreate a coherent story plot) is required [24, 25, 26]. We have chosen two

4

Page 5: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Table 1: Software functionalities considering the sensors used, the input collected, theactuators in place, and the output provided.

Sensor Input ActuatorOutputTouchsensor

Ability to recognizewhen the robot is beingtouched.

LEDlights

The robot displayswhite lights while beingtouched, refrains fromperforming any behav-ior. When not sensingtouch, the robot dis-plays colors associatedwith its different socialbehaviors.

Opticalsensor

Recognition of play pat-terns of children whilemanipulating the robot.

Omniwheels

Imitating the collectedmovement patterns.

Time Stage of the storytellingthat children are cur-rently engaged in.

OmniwheelsandLEDlights

The robot performs acreativity technique ac-cording to the story-telling arc.

techniques to stimulate creativity, named “contrast”and “mirror” [10] (seeFigure 2)3:

• Contrast — This technique is used to stimulate divergent thinking[27]. In the Contrast technique, YOLO provides stimuli unrelated tothe storyline that children are exploring at the moment, producingan opportunity to explore new directions in the plot. This leads toheightened action and interesting plot twists in the stories of children.

• Mirror — This technique is used to stimulate convergent thinking[28]. When using the Mirror technique, YOLO provides stimuli thatare connected with the storyline that children are exploring, leadingto the elaboration and convergence of story ideas. This leads to thenemergence of interesting details about a character, a scenario, or anaction in the story.

3Parameterization specifications for the creativity behaviors of YOLO canbe found here: https://github.com/patricialvesoliveira/YOLO-Software/wiki/

CreativityProfile

5

Page 6: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

3.2. Storytelling arc

Successful and satisfying stories follow a storytelling arc [29, 30]. Accord-ing to the Theory of Dramatic Structure, each story has five acts: exposition,raising action, climax, falling action, and denouement [29, 30]. These fiveacts can be modified and adapted to the dramatic structure of short stories,fables, or fairy-tales. In our software, we considered a short-story formatsimilar to what is used in children’s stories [31]. Therefore, we divide thenarrative of a story in the following phases:

• Rising action — Characters are introduced, a context is given to thestory, and the story builds. During this stage, YOLO stimulates con-vergent thinking by using the mirror creativity technique (see Section3.1);

• Climax — The story reaches the point of greatest tension. During thisstage, YOLO stimulates divergent thinking by applying the contrastcreativity technique (see Section 3.1);

• Falling action — The story shifts to an action that happens becauseof the climax, which means that the conflict is resolved and the storyreaches its end. During this stage, YOLO stimulates convergent think-ing by using the mirror creativity technique (see Section 3.1).

3.3. Social behavior

YOLO expresses different social profiles to exhibit social behaviors. Theprofiles are named Exuberant, Aloof, and Harmonious4. These social be-haviors appear as pre-sets when YOLO is turned on and can be used inter-changeably, making the robot a flexible character in the children’s stories.The three different social modes for YOLO are explained below:

• Exuberant — YOLO reacts to every social interaction in an “enthu-siastic” manner. Movements are fast and have a high amplitude. Itdisplays vibrant colors such as purple and red with high brightness lev-els. As Exuberant, YOLO is proactive and seeks out social interaction.This is a vibrant, frenetic, and daring social profile;

• Aloof — YOLO is less “socially reactive” and is a “shy robot”. In thismode, the robot exhibits low amplitude, slow movements and displayscold colors such as green and blue with low brightness levels. As Aloof,YOLO is not proactive; does not seek interactions. This profile couldalso be described as loner, contemplative, or reclusive;

4Parameterization specifications for all the social behaviors of YOLO canbe found here: https://github.com/patricialvesoliveira/YOLO-Software/wiki/

SocialProfile

6

Page 7: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

• Harmonious — YOLO acts in a moderated fashion, presenting be-haviors that are in-between the extreme versions of Exuberant andAloof. As Harmonious, YOLO exhibits medium speed, movementswith medium amplitude, and displays warm colors such as yellow andorange at medium brightness levels. This is a balanced and moderateprofile.

4. Software functionalities

A primary function of this software is to serve as an Application Pro-gramming Interface (API) that enables any user the opportunity to designpersonalized behaviors for YOLO, consequently providing the possibility togenerate new behaviors and interaction modes5. The robot can receive infor-mation from the environment (input) and express different interactive behav-iors towards (output). Table 1 lists pre-sets that were developed for YOLOto act as a social robot that can stimulate creativity in children.

Since each aspect of the robot is controllable and parameterizable, be-haviors can be tweaked, created and mixed. To demonstrate the API func-tionality, we conducted testing sessions in which we asked two participantsunfamiliar with YOLO software to create different behaviors for the robot.One of the participants had a background in Computer Science and the otherin Psychology. The participants were instructed to choose beloved charac-ters from animation movies and to create a behavior for the robot that wouldresemble the behavior of those characters. The examples created by the par-ticipants were Mickey, Barbie, Bugs Bunny, and Genie from Aladdin 6.

5. Software architecture

The architecture of our software includes several modules that manipulatedata at different levels of abstraction from the low-level sensors and actuatorsto high-level behaviors. Figure 3 shows the scheme of these modules and howthey interact. Each module is explained in the next sections.

5.1. Control

This module has two main functions: first, it extracts data associated withthe robots’ sensors and translates into a programmable format. Second, itinstructs the actuators what to do based on the software calls.

5Guide for YOLO’s API: https://github.com/patricialvesoliveira/

YOLO-Software/wiki/API-Documentation6Examples created by the participants using the API: https://github.com/

patricialvesoliveira/YOLO-Software/wiki/Examples

7

Page 8: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Sensors

Agent

Control

Planning

Parameterizes

Actuators

Touch Sensor

Optical Sensor

Wheel Actuator

LED Actuator

Gets info from Sends info to

Behaviors

Composed Behaviors

Simple Behaviors

Uses

Contains<Actuator calls>

<Sensor data>

Shape Recognition

Figure 3: Architecture of the the modules that compose YOLO software.

Raw input coordinates

Find bounded Rectangle, Triangle, Circle, using convex

hull and generate feature vector

Run through pre-trained KNN modelDetermine shapes

Figure 4: Workflow of the ML algorithm for shape recognition used by YOLO.

8

Page 9: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Figure 5: The lines illustrate the movement shapes performed by YOLO that are rec-ognized by our algorithm. Illustrated shapes are: circle, rects, loops, curls, spikes, andstraight line. For additional details see Section 5.1.

The touch sensor of YOLO indicates the robot is recognizing physicalcontact, and the optical sensor observes the differences in position to detectthe direction of movement. The sensors record movement at each moment.The shape recognizer dynamically identifies and characterizes each movementusing Machine Learning (ML). The pre-trained K nearest neighbour (KNN)algorithm determines a shape using the robot motion sensors which capturecoordinates in 3 seconds intervals [32]. Figure 4 depicts the ML workflow.We trained the model by collecting raw coordinates and converting thesecoordinates into a feature vector using the convex hull algorithm [33]7. Everytime a movement is detected, KNN is used to determine the closest matchingshape from the training data. Simulations with a computer mouse showedus that with n=3, KNN provided high accuracy (94%). Therefore, we usedthis parameterization. The current ML model was trained with the physicalrobot and can recognize with an 80% success rate the following shapes: circle,rectangles, loops, curls, spikes, and a straight line (see Figure 5).

YOLO actuators include the Wheel Actuator and LED Actuator. WhileWheel Actuator receives direction and speed values and moves the wheels’motors accordingly, LED Actuator receives a color and brightness level anddisplays it in the robot’s jewel LEDs.

5.2. Behaviors

The Behaviors module coordinates the simultaneous execution of differ-ent actuators based on given parameters. The intended behavior arises fromthe simultaneous execution of different actuators. To simplify the develop-ment process, we divided behaviors into more concrete Simple Behaviors,

7More details about our shape recognizer algorithm are present at this link: https:

//github.com/patricialvesoliveira/YOLO-Software/wiki/Algorithm

9

Page 10: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Figure 6: State machine diagram representing the schedule of the procedures executed inthe Planning module.

10

Page 11: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

which directly use the actuator data and Composed Behaviors, which uniteseveral simple behaviors. Simple behaviors directly call the Control module.These behaviors consist of assigning different light behaviors (different colors,animations, and brightness) to different movement configurations (differentmovement patterns at varying speed)8. Composed behaviors can be used todefine the social behaviors which YOLO exhibits, such as Exuberant, Aloof,and Harmonious9.

5.3. Planning

The Planning module schedules the behaviors in each moment of theinteraction, executing specific ones based on the current interaction state.In order to trigger new interaction states, Planning module uses the dataextracted from the sensors which the Control module provides. A flowchartillustrating the Planning module’s is depicted in Figure 6.

6. Illustrative Example

To validate the effectiveness of our software, we have tested it with chil-dren in a storytelling activity. The instruction provided information thatthey should use the robot as a character for the story they created. In thebox below, we transcribed part of an interaction case during a study sessionbetween a child and YOLO (see complementary Figure 7). In this example,it is visible how the robot makes use of its interaction profiles to stimulateconvergent and divergent thinking and how this relates to the different stagesof the storytelling.

8Examples of simple behaviors are detailed at this link: https://github.com/

patricialvesoliveira/YOLO-Software/wiki/SimpleBehavior-Hierarchy9Composed behaviors are further explained at this link: https://github.com/

patricialvesoliveira/YOLO-Software/wiki/ComposedBehavior

11

Page 12: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Figure 7: Use-case example of a child using YOLO as a character for the creativity-stimulating storytelling scenario. Details about this scenario are explained in Section 6.

The child is on the floor playing with YOLO.Child: “This is a football field and YOLO is from the Benfica team,so we are going to win!”The child manipulates YOLO in the imaginary football field, imitatingthe robot running after an imaginary ball and deviating from imagi-nary team adversaries. Because YOLO is still in the first part of thestorytelling arc, i.e., in the Raising Action stage, the robot will stim-ulate convergent thinking abilities. Therefore, the robot imitates thelast movement that the child performed. The child looks at the robotwhile it is moving.Child: “Yes! Go for it, Cadiz, score! (Cadiz is the name of a Benficateam player that the child gave to the robot).The child imitates scoring a goal and then grabs YOLO and celebrates.Child: “Ok Cadiz, but we have to continue doing well. These otherguys are good too.The child continues manipulating YOLO through the adversaries. Atthis point in time, YOLO entered the next storytelling arc which is theClimax. During climax, divergent thinking is stimulated so the robotwill perform a movement that is different from the last movement thatthe child has performed. The child manipulates the robot straightahead towards the soccer goal but the robot goes the opposite direction.Child: “What happened? Oh no, the other guys hit you in the knee.Assistance is needed here!”The game continues.

12

Page 13: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

7. Conclusions and Impact

As societies develop increasingly higher levels of sophistication, socialrobots can play a crucial role in the development of human creativity. Re-lated research has indicated that social robots impact the play behaviorsin children, pulling them towards traditional play formats such as physical,unstructured, and unrestrained play, benefiting multiple aspects of growth[34].

In this article, we presented the software which allows the YOLO robot toencourage creativity stimulation. This software allows potential developersto create behaviors that make the robot act according to different socialbehaviors. We also described several tests applying our software in real-world scenarios. These tests revealed the potential of our program, as robotsusing our software provoke creative narratives in stories which the childrencreated.

The impact of this software is broad. By being an easy-to-use tool, chil-dren’s stakeholders such as educators and parents, have access to a robotthat is easy to prepare (e.g., for Science, Technology, Engineering, Art, andMathematics (STEAM)-related activities), contrasting with other existingtechnological tools that can be cumbersome for non-experts to prepare [19].Additionally, this software serves as a solid platform in academic studies,where researchers can use YOLO’s API to study child-robot interaction.

8. Highlights

• Creativity stimulating robot: YOLO can stimulate children’s cre-ativity during play;

• Open-access: Access to the code and the guide to install and executethe software;

• Scalability and personalization: API for developers to create newbehaviors for YOLO;

• Application: YOLO can be used by children’s stakeholders and bythe research community.

Acknowledgements

This work was supported by national funds through Fundacao para aCiencia e a Tecnologia (FCT-UID/CEC/500 21/2013) and through AMIGOSproject ref. PTDC/EEISII/7174/2014. P. Alves-Oliveira acknowledges aFCT grant ref. SFRH/BD/110223/2015. We thank Andre Pires for hiscontribution on the initial stage of software development.

13

Page 14: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

Required Metadata

Current code version

Code metadata description Please fill in this columnCurrent code version v0.4Permanent link to code/repositoryused for this code version

https://github.com/

patricialvesoliveira/

YOLO-Software

Legal Code License CC Attribution 4.0 InternationalCode versioning system used gitSoftware code languages, tools, andservices used

Python

Compilation requirements, operat-ing environments & dependencies

Raspbian Stretch Lite OS

If available Link to developer docu-mentation/manual

https://github.com/

patricialvesoliveira/

YOLO-Software/wiki

Support email for questions Samuel Gomes: samuel.gomes@

tecnico.ulisboa.pt and PatrıciaAlves-Oliveira: patricia_alves_

[email protected]

Table 2: Code metadata

References

[1] K. Robinson, Out of our Minds: Learning to be Creative, John Wiley& Sons, 2011.

[2] P. Collard, J. Looney, Nurturing creativity in education, European Jour-nal of Education 49 (3) (2014) 348–364. doi:10.1111/ejed.12090.

[3] J. Baer, Content matters: Why nurturing creativity is so different indifferent domains, in: Creative Contradictions in Education, vol. 1, 2017,pp. 129–140.

[4] J. Kaufman, Creativity as a stepping stone toward a brighter fu-ture, Journal of Intelligence 6 (2) (2018) 2–7. doi:10.3390/

jintelligence6020021.

[5] H. Gardner, E. Gardner, Art, mind, and brain: A cognitive approach tocreativity, Basic Books, 2008.

14

Page 15: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

[6] G. Scott, L. E. Leritz, M. D. Mumford, Types of creativity training:Approaches and their effectiveness, The Journal of Creative Behavior38 (3) (2004) 149–179. doi:10.1002/j.2162-6057.2004.tb01238.x.

[7] H.-H. Ma, The effect size of variables associated with creativity: Ameta-analysis, Creativity Research Journal 21 (1) (2009) 30–42. doi:

10.1080/10400410802633400.

[8] B. Shneiderman, Creativity support tools: A grand challenge for hciresearchers, in: Engineering the User Interface, Springer, London, 2009,pp. 1–9.

[9] A. Pires, P. Alves-Oliveira, P. Arriaga, C. Martinho, Cubus: Au-tonomous embodied characters to stimulate creative idea generation ingroups of children, in: International Conference on Intelligent VirtualAgents, Lecture Notes in Computer Science, vol 10498. Springer, Cham,2017, pp. 360–373. doi:10.1007/978-3-319-67401-8_46.

[10] G. F. Smith, Idea-generation techniques: A formulary of active in-gredients, The Journal of Creative Behavior 32 (2) (1998) 107–134.doi:10.1002/j.2162-6057.1998.tb00810.x.

[11] O. P. John, S. Srivastava, et al., The big five trait taxonomy: History,measurement, and theoretical perspectives, in: Handbook of personality:Theory and Research, 2nd Edition, Vol. 2, The Guilford Press, NewYork/London, 1999, pp. 102–138.

[12] P. Alves-Oliveira, P. Arriaga, A. Paiva, G. Hoffman, Yolo, a robot forcreativity: A co-design study with children, in: Proceedings of the 2017Conference on Interaction Design and Children, ACM, 2017, pp. 423–429. doi:10.1145/3078072.3084304.

[13] P. Alves-Oliveira, P. Arriaga, A. Paiva, G. Hoffman, Guide to build yolo,a creativity-stimulating robot for children, HardwareX 6 (2019) e00074.doi:10.1016/j.ohx.2019.e00074.

[14] R. Florida, Cities and the Creative Class, Routledge, New York, 2005.

[15] K. H. Kim, The creativity crisis: The decrease in creative thinking scoreson the torrance tests of creative thinking, Creativity Research Journal23 (4) (2011) 285–295. doi:10.1080/10400419.2011.627805.

[16] M. A. Runco, Everyone has creative potential, in: Creativity: Frompotential to Realization, American Psychological Association: Wash-ington, DC, US, 2004, pp. 21–30. doi:10.1037/10692-002.

15

Page 16: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

[17] R. K. Sawyer, M. Csikszentmihalyi, V. John-Steiner, S. Moran, D. H.Feldman, H. Gardner, R. J. Sternberg, J. Nakamura, et al., Creativityand Development, Counterpoints: Cognition, Memo, 2003.

[18] N. Di Blas, P. Paolini, A. Sabiescu, Collective digital storytelling atschool as a whole-class interaction, in: Proceedings of the 9th interna-tional Conference on interaction Design and Children, ACM, 2010, pp.11–19. doi:10.1145/1810543.1810546.

[19] S. Chan, M. Yuen, Personal and environmental factors affecting teacherscreativity-fostering practices in hong kong, Thinking Skills and Creativ-ity 12 (2014) 69–77. doi:10.1016/j.tsc.2014.02.003.

[20] C. L. Breazeal, Designing Sociable Robots, MIT press, 2004.

[21] B. Reeves, C. Nass, How people treat computers, television, and newmedia like real people and places, CSLI Publications and Cambridgeuniversity press Stanford/Cambridge, MA, 1996.

[22] S. Ali, T. Moroso, C. Breazeal, Can children learn creativity from asocial robot?, in: Proceedings of the 2019 on Creativity and Cognition,ACM, 2019, pp. 359–368.

[23] G. Gordon, C. Breazeal, S. Engel, Can children catch curiosity froma social robot?, in: 2015 10th ACM/IEEE International Conference onHuman-Robot Interaction (HRI), IEEE, 2015, pp. 91–98. doi:10.1145/2696454.2696469.

[24] M. Alrutz, Digital storytelling and youth: Toward critically engagedpraxis, Youth Theatre Journal 29 (1) (2015) 1–14. doi:10.1080/

08929092.2015.1020184.

[25] W. Brenner, F. Uebernickel, T. Abrell, Design thinking as mindset, pro-cess, and toolbox, in: Design thinking for innovation, Springer, Cham,2016, pp. 3–21. doi:10.1007/978-3-319-26100-3_1.

[26] P. Elbow, Teaching thinking by teaching writing, Change: The Magazineof Higher Learning 15 (6) (1983) 37–40. doi:10.1080/00091383.1983.10570005.

[27] T. Rickards, Problem-solving through creative analysis, Wiley, 1975.doi:10.1057/jors.1975.185.

[28] A. B. VanGundy, Techniques of structured problem solving, Springer,1988.

16

Page 17: Software architecture for YOLO, a creativity-stimulating robot2.1. Background on creativity research As societies develop into creativity-based economies, innovative and cre-ative

[29] G. Freytag, Die technik des dramas, Hirzel, 1872.

[30] G. Freytag, Freytag’s technique of the drama: an exposition of dramaticcomposition and art, Scholarly Press, 1896.

[31] A. Wright, Storytelling with Children, Oxford University Press, 1995.

[32] N. S. Altman, An introduction to kernel and nearest-neighbor nonpara-metric regression, The American Statistician 46 (3) (1992) 175–185.

[33] C. B. Barber, D. P. Dobkin, D. P. Dobkin, H. Huhdanpaa, The quickhullalgorithm for convex hulls, ACM Transactions on Mathematical Soft-ware (TOMS) 22 (4) (1996) 469–483. doi:10.1145/235815.235821.

[34] A. D. Pellegrini, P. K. Smith, Physical activity play: The nature andfunction of a neglected aspect of play, Child Development 69 (3) (1998)577–598. doi:10.1111/j.1467-8624.1998.tb06226.x.

17