Keywords

1 Introduction

Developing computational models of the collaboration of persons in creative processes, such as brainstorming, will allow their simulation. This can be useful on one side to find those aspects and relevant components that contribute to creative problem solving. Also, and taking into account these factors, a general structure can be sketched to model a computer system capable of solving problems in a creative way, or supporting persons in a collaborative creative process, for instance, to facilitate the workflow of contributions of the participants and the evolution of the creative process.

There are not too many attempts to model collective creative processes, and this is more discussed in theoretical terms, such as in [9]. Some computational models are too specific, such as [4] using genetic algorithms, which can be useful to study a concrete issue, but not very flexible to cope with complex configuration or changing requirements. More practical are those efforts oriented to create tools that support the creative process, such as [3]. Agents can be helpful for this task, as discussed in [6] and shown in [11], an agent-based bot-communication platform designed where agents can share artistic practices with each other, or in [8], where two agents create an artifact by evolving the same artifact set in turns. Our approach intends to be more general, so we use an agent modeling framework, INGENIAS [12], in order to specify computational models of collaborative creative processes, which can be either simulated to study the process, or be the basis to generate a tool to facilitate the automation of the process.

This paper starts from a review of different methods that are commonly applied to incentive creativity. They can be characterized by certain workflows where different entities (e.g., individuals) can perform some activity on their own and through interactions among them can get new inputs and contrast ideas in order to generate new ones. These methods can be formalized as computational models for many reasons. On the one hand, in order to analyze exhaustively each method, determine their basic mechanisms and thus improve their effectiveness. On the other hand, once we know their structure and the reason for their effectiveness, we can model artificial systems that assist in the creative process, increasing the speed and quantity of creative ideas that can be generated.

This is done by using multi-agent systems, as agents can model the individual entities and their interactions, as well as different forms of organization and the resulting workflows. This modeling is performed by using the INGENIAS methodology and tools [12]. This methodology has been chosen as it provides computational representation of relevant concepts such as goal, agent, workflow, interaction, and organization, among others that are used in the modeling process. Also, because it facilitates the automatic generation of code for the JADE platform [1], which is a standard for implementing the multi-agent system.

The rest of the paper is organized as follows. The next section describes some collaborative creative methods, more specifically, Brainstorming, as this is a well-known technique. A particular case, Symbolic Brainstorming, will be used as an example to illustrate how to make the agent-based modeling of the creative process. This is described in Sect. 3 with enough detail in order to identify the main entities that take part in the process, their tasks, and how do they interact. This facilitates the definition of the multi-agent system model that is presented in Sect. 4 by using INGENIAS modeling language. This kind of modeling can be applied to other collaborative creative processes, and the conclusions, in Sect. 5, discuss what can be learnt from this experience and future lines of research.

2 Overview of Collaborative Creative Methods

Throughout history, the human being has been generating a set of strategies with the aim of solving problems in a creative way with the greatest possible efficiency. The increase in the size of the human network and the complexity resulting from its social relations has forced us to look for alternative, creative solutions to solve many of the problems that usually arise.

It is difficult to make a classification of the techniques that allow the creative resolution of problems, since there are as many strategies as human groups can be formed, and at the same time many of them are variations of the same subject. However, with a purely practical purpose, among the most relevant we can mention:

  • Generate parallels with known problems [10].

  • Problem solving [16].

  • Brainstorming, and different variants [13].

  • Lateral thinking [14].

  • Parallel thinking [2].

  • Extract a problem out of its usual context [15].

  • Symbolic Brainstorming [5].

In this work we focus on collaborative techniques, and in this sense Brainstorming is probably the oldest and best known technique of creative problem solving, as it can be applied for a diversity of problems, for generating a large amount of good, new and fresh ideas. The method can be complemented with other techniques, and must necessarily be followed by a process of analysis of the ideas that are generated. Therefore, each session of Brainstorming actually has two consecutive sessions:

  1. 1.

    Generation of ideas session.

  2. 2.

    Ideas evaluation session.

2.1 Generation of Ideas Session

To be effective, a Brainstorming session should count with the participation of about 7–10 people, and a person to act as secretary and moderator.

At the beginning of the process the secretary-moderator introduces the problem that must be solved, and provides all kinds of available information. He then gives the floor to the group members in such a way that everyone must quickly provide several ideas to solve the problem that has been presented. The secretary-moderator takes note of all the ideas, writing them in large letters on a blackboard (so that all the members of the group can read them at all times) and ensures that all the members of the group contribute with several ideas, giving the word to each of them, according to a certain order, or arbitrarily.

For a Brainstorming to be effective, five basic rules must be followed:

  1. 1.

    Eliminate criticism. When the ideas arise, no critical comments are allowed, as this would prevent them from continuing to be generated. Therefore all the ideas are written down, as they are generated, and the evaluation (or adverse judgment) is reserved for later. Since our childhood we have been trained to be instantly analytical, practical and convergent in our thinking, so this rule is difficult to follow, but it is crucial to be creative. In fact, creating and judging at the same time is like pouring hot and cold water into the same glass.

  2. 2.

    Absolute freedom. The freedom to generate ideas is very important, and wild thoughts, or ideas that might seem impossible or unimaginable, are especially valued. In fact, in each session there should be some idea that is crazy enough to be able to cause embarrassment, stupefaction or even laugh to the whole group. It must be borne in mind that practical ideas are often born of others that are impracticable, absurd or impossible. Thinking outside the limits of the usual, of the normal, new and great solutions can arise. Some wild ideas are transformed into practices. The more energetic the idea, the better the results can be, since it is easier to perfect an idea than to issue a new one.

  3. 3.

    Generate many ideas. In a first phase, the most important thing is to generate a large number of ideas so that later they can be reviewed. The larger the number of ideas, the easier it is to choose between them. There are two reasons to seek for a lot of ideas. First, because it has been observed that obvious, habitual, worn, impracticable ideas come first to mind, so it is likely that the first 20 or 25 ideas are not fresh or creative. Second, the longer the list, the more ideas there will be to choose, adapt or combine. In some sessions, the objective is set to get a certain number of ideas, of the order of 50 or 100, before finishing the meeting.

  4. 4.

    Multiplier effect. The goal of Brainstorming is both to generate new ideas, and to improve the ones exposed. In addition to contributing their own ideas, participants can suggest improvements to others’ ideas or get a better idea from others. That is, participants can use the ideas of others as a stimulus to modify or improve them. Sometimes, changing only one aspect of an impractical solution can make it a great solution. Each human brain has developed differently, so it has a different structure. Each response to both external and internal stimuli is establishing a series of neuronal connections. The most stimulated neural networks consolidate their structure little by little with respect to other less used networks. Therefore, synaptic connections are facilitated to the detriment of others. With the passage of time each brain has strengthened some connections over others, so that a certain way of reasoning is established by responding to both external and internal stimuli. Therefore, a particular brain has more ability to solve a certain problem in a known way, while it has more difficulties in solving other problems that may require the use of other synaptic pathways. Therefore, each brain tends to follow a certain cognitive path when solving a problem, so the solutions usually follow the same pattern. On the other hand, if other people provide us with complementary information, the cognitive procedure is enriched and can take new roads or new routes that would not otherwise easily follow. Therefore the feedback of several human brains is always enriching because it favors that each individual brain follows cognitive structures slightly different from those that would follow when thinking alone.

  5. 5.

    Relaxed and cheerful atmosphere. As it has been noted in many sessions, creativity flows better when participants are relaxed, enjoying, playing and feeling free, without coercion of any kind. Even when the problem to be solved is of enormous seriousness or transcendence, the sessions should be relaxed. As an aid and encouragement to creativity, it is often good to start with a ten-minute warm-up session, where an imaginary problem is addressed. Thinking about an imaginary problem frees people and makes them happy, so they can address the real problem in better conditions.

The cognitive explanation for the creative efficacy of this situation is that when the brain does not have tasks directed by external stimuli it is reconfigured and adopts an operating state called “by default”. In this state the cognitive capacity adopts previously established automatic mechanisms of functioning, but since there are no external stimuli, it simply activates again and again internally generated or random mechanisms. So to speak, the brain starts to “toy” by training automated strategies with random interior stimuli. Much of this invented neuronal activity does not make sense apparently since it does not aim to solve external problems. However, the activity is very intense and at a certain moment can find a partial or total solution to a certain conscious problem with which the brain was busy previously. In other words, the automated, random, incessant and unconscious activity of the brain when it has no external stimuli is able to find alternative ways and solutions to a given problem, which has not been solved in a conscious way or has been solved in a trivial way, not very creative.

The relaxed environment means that the brain functions in a “mind wandering” way, stimulating the default mode network and taking the creative problem to an unconscious level, in which the automatic and spontaneous cognitive mechanisms take place Kühn et al. [7]. In a computational plane this means that there must be a stage of mass generation of solutions in parallel, including bottom-up, top-down and random mechanisms. In other words, each time the computer system has not been able to solve problems above expectations, it should generate random information, invented by the system itself, and merge it with the information initially provided.

2.2 Evaluation Session

The day after having realized the session of generation of ideas (and never the same day) the group has to meet again. First, they have to share the ideas thought from the previous session. Afterwards, the group evaluates each of the ideas and develops those more promising to be able to put into practice.

During the evaluation sessions, wild ideas become practical or are used to suggest realistic solutions. The emphasis has to be placed on the analysis and real world issues. Sometimes the ideas found that are believed useful are divided in three groups:

  • Ideas of immediate utility. Ideas that can be used immediately.

  • Areas to explore more widely. Ideas that should be elaborated and discussed more widely.

  • New approaches to the problem. Ideas that suggest new points of view to solve the problem.

Keep in mind that the evaluation session is not performed the same day as the brainstorming session. This makes the evaluation of ideas in the session more open (without the fear of immediate evaluation) and allows an incubation time of more ideas and a time to think about the ideas that have arisen.

3 Computational Modeling for Creative Problem Solving

The structure of brainstorming suggests that a computational system based on its structure should be composed of several agents, each of which has a different structure (and a different behavior) and therefore processes the information in a different way. Each agent communicates with the others in a common space that accumulates the information generated. Based on the information that is generated at each moment, each agent can decide to work in a linear way, analyzing the information and deducting new information, or in a random way, to a greater or lesser degree.

It is important to give the system a certain degree of “consciousness”. The system must have a certain feedback mechanism. The human creative process develops on a conscious level when the problem is new and learns to solve it. When the problem is complex, it is solved in an unconscious plane, which has an “echo” in a conscious plane every time it is fed back, new information is added, or when the problem “suddenly” has been solved.

Usually humans have increased the conscious and unconscious feedback through the realization of diagrams, sketches, graphics and other means that stimulate a new direction to follow, and at the same time generate a “conscious” plane of the problem to solve. The diagrams and sketches have two key aspects for creativity. On the one hand, they are “fuzzy”, that is, they can be interpreted in different ways. A sketch can be as ambiguous as you want, and therefore, at the same time you do it, the sketch itself establishes new search paths. If one draws a cross, it may be that the lines used to draw it have come by chance a little curved. And those curves can be the origin of a type of cross completely unknown until now. In addition, the sketches generate an agglutinating structure of all the parties, forming a coherent whole, with determined compositional rules that were not known at the beginning of the process. In short, the realization of a sketch of an idea what it does is not to represent that idea, but above all to suggest new ideas and establish internal “agglutinating” structures of the different parts of that idea. Undoubtedly, this aspect is essential for the design of a creative system, and it is surely complex to model. Somehow, graphic and abstract representations must be created in different parts of the process (especially at the beginning of the process) capable of interacting with the design process that is taking place at that moment.

The representation of knowledge is done by entities with an object-attribute-value structure. The objects (for example, a chair object), are composed of several attributes, and in turn of several objects (for example, arms, legs, seats, backs, etc.) in an indeterminate and flexible number. It is important to note that the values of the attributes may be fuzzy and may have values including counters. In addition, each object may have a huge number of attributes, often random, or that apparently have nothing to do with the object in question.

The computer system must have several agents (one of them must continually propose random ideas) that propose complete objects, or modify the value of the attributes of existing objects, or propose new attributes to objects that are being generated. In this way the different agents are continuously generating objects, or shaping those that already exist according to the information that is generated at each moment. After the first stage of the process several objects will have been generated, apparently with attributes and maybe incongruous or random values. In the second part of the process, graphic attributes will be associated to each object based on associations of the agents. In the third part of the process the generated solutions will be evaluated and values of the most important attributes will be satisfied, based on a process of successive refinement of the same solution.

4 A Case Study: Symbolic Brainstorming

Symbolic Brainstorming [5] is used for the creation of architectural forms. It is based on asking the participants to associate several symbols to the problem or parts of the problem to be solved. It is a very effective method in design problems in which visual and formal components are important. This is taken in this section as an example to show how to model as a multi-agent system this method for collaborative creation.

In principle the organization has two groups of participants, the facilitators (in this case, one Moderator) and the team members (one of them acting as Secretary, and 7 to 10 participants). This is the starting point to model the collaborative creation process with INGENIAS as a multi-agent system (MAS). The MAS is conceived as one organization where different agents play specific roles. In this case, there are two groups of agents in the organization, as shown in Fig. 1.

Fig. 1.
figure 1

Organization for Symbolic Brainstorming (INGENIAS organization model: The rectangle with three circles on top represents an organization, with two circles a group, and with one, an agent)

The environment of these agents consists of the elements that they use for their activity in the brainstorming process, and this is represented in the Environment diagram in Fig. 2. In this case, agent resources are a blackboard to share their ideas, and drawings that each of the participants create and share. The moderator writes on the blackboard and the participants and moderator see that. The secretary takes notes to generate a report of each session.

Fig. 2.
figure 2

Tools for Symbolic Brainstorming (INGENIAS Environment model: the triangle represents a resource)

The Symbolic Brainstorming is structured in three main stages, and each one is specified in INGENIAS with a workflow diagram and the description of interactions among the agents.

4.1 First Session: Identify Characteristics and Associate Symbols

In the first session the different participants must identify several qualities or characteristics of the problem to be solved, and they must associate symbols with these characteristics.

Taking the example of the design of a chair, to generate ideas, each participant must emphasize some characteristic of the chair and should suggest a form. For instance, the characteristic “comfort”, or the characteristic “rest”, or the characteristic “rotation”, and draw some sketches of symbols associated with these characteristics. For example, the characteristic “rest” can be associated with the “symbol of a spring”, the characteristic “comfort” can be associated with the “symbol of a cloud”, etc. The identified symbols can suggest new symbols to the rest of the participants. There is no order and any participant can participate at any time and as many times as they wish. The most suitable size is about 10 people, with an approximate duration of one hour. The secretary (moderator) of the session must collect all the symbols and symbolic ideas generated, and must deliver a copy of them to each participant. The task that each agent performs in this stage (Sketch a drawing of a concept) is specified with an INGENIAS Goal-Task diagram, as shown in Fig. 3.

Fig. 3.
figure 3

Specification of the task Sketch a drawing of a concept (INGENIAS goal-task model: The task is represented as an oval, and its purpose is to satisfy the goal, in this case, design a chair. The task is affected and may change the mental state of the agent, which is represented by a set of believes. The result of the task is producing some drawings)

How all agents interact in this session is defined with several INGENIAS diagrams. First, a goal-tasks diagram as the one in Fig. 4 shows that the agents participate in a workflow with different roles (in this case, Control and Collaborator). This workflow, called “First session” in the diagram, consists of several tasks, which are executed sequentially (Define Goal, Sketch concepts, and Share diagrams). The first task is where the main goal (Design a chair) is defined by proposal of the moderator. Then, the Sketch concept task will generate Drawings, which will be later distributed with the Share drawing task.

Fig. 4.
figure 4

Workflow for the first session (INGENIAS goal-task model: Here there is a new symbol to represent a workflow, which is named as First session. A workflow is defined as a sequence of tasks, where each task can produce some resource, which is used as input for another task.)

Other diagrams are needed, especially those for defining the interactions. In INGENIAS they provide all the information to generate the source code on JADE platform to implement FIPA messages exchange. An example of one interaction is shown in Fig. 5.

Fig. 5.
figure 5

Interaction of a Participant to provide a list of drawings to the Moderator (INGENIAS interaction model: Each interaction is defined by one initiator, in this case a Participant agent, and one or more Collaborators, in this case the Moderator agent. In this example the interaction is made of one message, a FIPA Inform with the list of drawings that the Participant agent provides in the execution of its task Share drawings. The Moderator is waiting for this message in its task CollectDrawings).

Similarly, the other sessions are modeled with their corresponding workflow and interactions diagrams. The development of these diagrams will allow to identify the tasks that the agent has to perform and the types of interactions that need to implement. They are generated as FIPA messages on the JADE platform.

4.2 Second Session: Discussion on Generated Ideas

In the second stage, the next day, a critical session must be held, in which all the formal ideas generated the previous day are discussed. Participants can generate complementary ideas based on these criticisms. At the end of the session one or several valid ideas must be achieved. The secretary will collect all the ideas or generated forms, and deliver them to the participants.

4.3 Third Session: Generation of Proposals

In a third stage each participant must make a slightly more detailed sketch of the object to be designed based on the sketches that have been delivered to all participants, and deliver them the next day to the secretary. Finally, the secretary will choose which is the most appropriate idea, following their own criteria. The secretary can choose more than one idea, in order to make an orderly list of the ideas, and choose the ones that are more appropriate, and develop or complement them.

5 Conclusions

The possibility to develop a computational model that can be executed will allow the assessment of different methods and the analysis of their characteristics. This is illustrated in this paper with Symbolic Brainstorming, a real case study with enough complexity. This has been specified with an agent-based modeling language, INGENIAS, which provides entities and relationships that allow the representation of the concepts that are given in the description of the problem.

This model is useful as a platform to test the interactions of different agents, to provide them with a combination of inputs, so they can enrich the objects they create. At this stage of development of this system, the strategies of the agents are defined in a very simple way just to validate the whole architecture of the system. They are not specified with INGENIAS, so they are manually implemented as part of the behavior of the agents. INGENIAS generates the code to implement the workflows using JADE message exchange mechanisms, which is important to have the structure of the agent-based application. The next step of the work is to develop different agent behaviors for generating ideas and adapting their creative process with the inputs during the workflows that are depicted here.