Tour Jeté, Pirouette: Dance Choreographing by Computers

Tina Yu1 and Paul Johnson2

1 ChevronTexaco Information Technology Company

6001 Bollinger Canyon Road

San Ramon, CA 94583

tiyu@chevrontexaco.com

http://www.improvise.ws

 

2 Department of Political Science

University of Kansas
Lawrence, KS 66045

pauljohn@ku.edu

http://lark.cc.ku.edu/~pauljohn

Abstract. This project is a “proof of concept” exercise intended to demonstrate the workability and usefulness of computer-generated choreography.  We have developed a framework that represents dancers as individualized computer objects that can choose dance steps and move about on a rectangular dance floor.  The effort begins with the creation of an agent-based model with the Swarm simulation toolkit. The individualistic behaviors of the computer agents can create a variety of dances, the movements and positions of which can be collected and animated with the Life Forms software.  While there are certainly many additional elements of dance that could be integrated into this approach, the initial effort stands as evidence that interesting, useful insights into the development of dances can result from an integration of agent-based models and computerized animation of dances.

1   Introduction

Dance might be one of the most egoistic art forms ever created. This is partly due to the fact that human bodies are highly unique. Moreover, it is very difficult to record dance movements in precise details, no matter what method one uses. As a result, dances are frequently associated with the name of their choreographers, who not only create but also teach and deliver these art forms with ultimate authority. Such tight bonds between a dance and its creator gives the impression that dance is an art that can only be created by humans.

Indeed, creativity is one of the human traits that set us apart from other organisms. Random House Unabridged Dictionary defines creativity as “the ability to transcend traditional ideas, rules, patterns, relationships or the like, and to create meaningful new ideas, forms, methods, interpretations, etc.,” With the ability to create, humans carry out the creation process in many different ways. One avenue is trial-and-error. It starts with an original idea and imagination. Through the process of repeated trying and learning from the failure, those that are unknown previously can be discovered and new things created.

Is creativity a quality that belongs to humans only? Do computers have the ability to create? We approach this question in two steps. First, can computers have original ideas and imagination? Second, can computers carry out the creation process?

Ideas and imagination seem to be something come and go on their own that no one has control over. Frequently, we heard artists discussing about where they find their ideas and what can simulate their imagination. What is computers’ source of ideas and imagination? One answer is “randomness”; computers can be programmed to generate as many random numbers as needed. Such random numbers can be mapped into new possibilities of doing things, hence a source of ideas and imagination.

Creation process is very diverse in that different people have different approaches. For example, some dance chorographers like to work out the whole piece first and then teach them to their dancers. Others prefer working with their dancers to generate new ideas. Which style of creation process that computers can have? One answer is trial-and-error; computers can be programmed to repeat an operation as many times as needed. By applying such repetition to new/old ways of doing things, new possibilities can be discovered.

When equipped with a source of ideas and a process of creation, computers seem to become creative. This also suggests that computers might be able to create the art forms of dance. We are interested in computer-generated chorography and the possibility of incorporating that with humuan dancers to create a new kind of stage production. This paper describes the project and reports the progress we have made so far.

We started the project with a conversation with professional dancers and chorographers about their views of computer-generated chorography (Section 2). Based on the discussion, we selected two computer tools (Swarm and Life Forms) for the project (Section 3). We then implemented the “randomness” and “trial-and-error”  abilities in the Swarm computer software to generate a sequence of dance steps (Section 4). The music for this dance is then considered and selected (Section 5). With a small degree of improvisation (according to the rhythm of the music), we put the dance sequences in animation (Section 6). The initial results are then shown to a dance company’s artistic director. The feedback is very encouraging, although the piece needs more work to be able to put into production (Section 7). All of these lead us to conclude that computer-generated chorography can produce interesting movements that might lead to a new type of stage production (Section 8).

2   Can Computers Create Dance

“Maybe, but I am not sure how interesting they are," said Viktor Kabaniaev of Di­ablo Ballet. “Everybody can create dance, but are they good art or are they irrelevant art?” For him, a dance without a soul is not worth watching. “It requires the sensitivity of a choregrapher to give life to a dance. Do computers posses such kind of sensitiv­ity?” asked Viktor. “If not, it is unlikely that they will create dances that are of inter­ests to me.”

2.1   Robots vs. Human Dancers

“The dance created by computers are for robots, not for humans,” another comment from Viktor. He said that computers might create something very interesting, for exmaple doing 50 pirouettes in one minute or moving in light speed from one coner of the stage to another. However, they are humanly impossible. What computers create is animation of dance, not real dance.

"I can see using computers as tools to explore new dances movements. However, letting a computer create a danceable art piece on its own is beyond my knowledge.” Viktor remarked.

2.2   Formation vs. Randomness

“Formation is the most important part of chorographing.” said Tina Bohnstedt of Diable Ballet. "Sequences of movements need to be orgainized into forms to become interesting to watch. Otherwise, random movements simply create a chaotic image  without any meaning.”

Choreographing a dance is similar to composing an essay. First of all, it needs a theme. Secondly, the theme needs to be developed. Finally, it needs an introduction and a conclusion to package the piece. “Dance is an art that communicates a message to the audiences,” Tina explained. “It is not just a group of dancers moving from places to places randomly. Formation of the movements is essential to the delivery of the message.”

3   What Computer Tools to Use

We want to explore the possibility that a computer programmed with the ability of “randomness” and “trial-and-error” can generate interesting suggestions for dances.  We have approached the challenge of demonstrating the workability of computer-generated choreography in two stages.  First, we have implemented a agent-based computer model which represents the dancers as self-contained individuals who perform sequences of dance movements. These movements are generated by computers through a random selection of possible steps defined by some aesthetic rules. At the second stage, the dance sequences are animated with a small degree of improvisation. The following sub-sections describe the two computer tools we used to investigate computer-generated choregraphy.

3.1   Swarm Mult-Agent System

A multi-agent system is a computer model in which individuals (agents) are represented by self-contained computer objects. These objects behave according to a set of rules, which dictate where they go and which steps they perform.  Our implementation of the model is done with the Swarm simulation toolkit, a general purpose simulation modeling library that was first developed at the Santa Fe Institute (Minor, et al, 1996) and is now under the supervision of the Swarm Development Group (http://www.swarm.org). The dance program we have implmented is freely available at: http://lark.cc.ku.edu/~pauljohn/Swarm/MySwarmCode/Dancer.

In the Swarm Dance model, the dance floor is a grid with size 8 by 10. Each dancer keeps the information of the current location and the step just completed. Initially, all dancers are standing at the locations that we specify. After that, computers select the steps for each dancer randomly from a set of possibilities defined by the given aesthetic rules. If the step will lead to collision between dancers, or the step will take the dancer off the stage, then a differet step will be chosen. This trial-end-error process continues throughout the dance creation process.

The model provides a graphical (on screen) display showing the steps and positions of the dancers (Figure 1). In this display, each node shows the dancer’s number and an abbreviation of the current step’s name. A human programmer can interact with the dance by manually telling the dancers to do certain things.  In this paper, however, we have relied only on the automated elements of the dance. I.e. computers make the decsions without human intervention.

 

Fig. 1. The Swarm Graphical Display Window.

3.2   Life Forms Animation Software

Life Forms is a character animation software. It has been used by other chorographers, such as Merce Cunningham, to explore body shapes and movements for creating new dances. In our work, we use the software to create dance animation, which provides a visual image of the dance movements generated by Swarm.

Dance animation involves posing and positioning the dancers at various points in time. For example, at time zero a dancer may be in a crouched position preparing to leap and one second later she may be in mid-air. There are three steps in composing dance animation using the Life Forms software.

In the first step, the figure poses (shapes) of a dance step (e.g. jump) are defined. We use the Figure editor (Figure 2) to specify these poses.

 

Fig. 2.The Figure Editor Window

Since a dance step is a sequence of figure poses taking place in a series of time frames, the second step is to compose these different poses together to produce the animation of the step. This is done using the Timeline editor (Figure 3).

 

Fig. 3. The Timeline Editor Window.

After the animation of all dance steps are completed, we are ready to put the dance steps together to compose a dance piece. The third step is to animate the dance step sequences generated by Swarm using the Stage Window (Figure 4).

Fig. 4. The Stage Window.

4   How Do We Do It

In the current implementation, we only provide ten simple dance steps for computers to create chorography. Most of these are ballet steps because ballet has established vocabularies that are easy to understand. In addition, we added floor steps (such as roll forward) to give the piece some modern flavor.

For this piece, we use five dancers. At the beginning, four stands at the positions we specified and one is off the stage. After that, each dancer chooses the next step from the menu of possible steps that we have designed for aesthetic purposes (Table 1). The selection is random; hence allow novel dance patterns to be created.

Table 1. The 10 Dance Steps and Its Next Step May Be.

Step No.

Step Name

Next Step May Be

0

Stand

0,1,2,3,4,5,6,7

1

Run

0,1,2,3,4,5,6,7

2

Roll forward

2,8,9

3

Back-side-coupé

0,1,2,3,4,6

4

Soutenu Turn

0,1,2,3,4,5,7

5

Balancé

0,1,2,3,4,5,7

6

Tour Jeté

0,1,2,3,4,5,6,7

7

Par de chat

0,1,2,3,4,5,7

8

Swing leg side

8,9

9

Stand up

0,1,2,3,4,5,6,7

 

There is a trial-and-error phase in the dance creation process. Once the next step is selected, a dancer has to coordinate with other dancers.  In the current implementation of the Swarm Dance program, none of the dancers notices what the others are doing and tries to coordinate the selection of steps.  However, they do avoid collisions on the dance floor, and this is done in the following way.  When a dancer selects a dance step, along with the direction and distance, the dancer expects the step to end at a particular position.  When a dancer considers adopting a step, the dancer has to be cautious of the possibility that another dancer is also going to the same position.  Thus, before a step is finally selected, the dancer checks with each of the other dancers to find out if the other’s intended position is the same one the dancer is considering.  If another dancer is already heading toward a position, then the dancer decides not to go to that spot and repeats the process to choose a different dance step.

Another checking that a dancer has to make is to ensure that a planned dance step would not cause the dancer to either fall on the audiences or crash into the background, i.e. dancers can not move off the stage from the front or the back. However, we do allow dancers to move off stage from the left and right sides.

4.1 Scheduling

In a Swarm program, time passes in small, discrete units called timesteps.  From a programming point of view, one of the most interesting aspects of this project is that not all dancers begin new steps at each time point.  Rather, some steps take several timesteps and a new dance step can be selected and initiated only after the previous one is completed.  We have dealt with this through an approach that is known in Swarm as dynamic scheduling, meaning that the dancers choose their steps according to their personal time frames.  This differentiates Swarm from the more-usual agent-based model in which each agent chooses a new action at each time point.

4.2 Position Changes

Another programming task is on the changes of dancers’ positions. Some of the dance steps are done in place, without causing the dancer to change positions.  Others cause the dancer to move, possibly from left to right, or possibly in any direction.  For the sake of simplicity, we divided the possible directions into 8 groups.  We numbered the directions as indicated here:

 

 

Some of the steps can only be done in a single direction, such as roll forward, while some, such as the soutenu turn, can go either to the left or the right.  Others, like run, can go in any of 8 directions.  The dance steps, along with the timesteps required finishing them, the distance of the step they cause, and the number of directions, are illustrated in Table 2.

Table 2. Movement Information for the Dance Steps.

Step No.

Step Name

Timesteps

Required

Distance

Possible

Directions

0

Stand

1

0

1

1

Run

3

1

8

2

Roll forward

12

1

1

3

Back-side-coupé

3

0

8

4

Soutenu Turn

6

1

2

5

Balancé

6

0

1

6

Tour Jeté

3

1

8

7

Par de chat

3

1

2

8

Swing leg side

1

0

2

9

Stand up

3

0

1

5   Should Music be a Part of Dance

It depends on whom you ask.

Most chorogrphers regrad music as a vital part of dance. They either drawn their inspiration from a music or select a music that works with the movement. In either case, dance and music are integrated as one piece of art. In other words, dance co-exists with music.

This view has been challenged by Merce Cunningham [1]. Along with John Cage, he has renounced the necessity for a relationship between movement and sound. In their views, dance and music are separate entities. Dance is not performed to the music, nor music to the dance. Therefore, they are created independently from each other. It is not until the day of the performance when music and dance meet for the first time. The results are unpredictable and frequently surprising. Their work is known as movements by chance.

We follow Cunningham’s approach and use no music information while creating the dance sequences. It is not until the dance chorography is completed by Swarm when we start considering the music. Since this is an abstract piece without a concrete story, J. S. Bach’s Cello Suits No.1 is a good match for it.

During the animation of the steps (see Section 6), dancers are allowed to improvise the steps. They may vary the starting and ending time slightly according to the rhythm of the music. Incorporating improvisation in dance has been adopted by many chorographers, including Cunningham, which gives interesting variation during the performance.

6   Let’s Put Them in Life Forms

We first build the animation for each of the ten dances steps using the Figure and Timeline editors described in Section 3.2. Although some of them have been implemented by others and provided in the software, the templates only give movement toward one direction. For example, par de chat to the right. We implemented these steps for all allowed directions (the mirror feature in the software becomes handy for this task) and stored them in an animation library.

Among them, the roll forward step is the most difficult to animate. Although we have allocated 12 timesteps for this movement, the detailed body shape is not easy to capture. In dance, a position “grows” to next position; there are many in-between shapes that are needed to move a dancer smoothly from one position to the next. Although the software provides interpolation methods to calculate the in-between shapes, we find them insufficient for complex movements.

6.1 Improvisation with Music

Animating the dance steps on stage is like giving the dance performance. We allow the dancers to have some degrees of improvisation according to the rhythm of the music. For example, the in-air position of par de chat is synchronized with the high bit of the music. Another example is if two dancers have selected the same step, they will start the step at the same time. This gives a harmonious vision on stage.

Another editing we have done is the introduction and the ending sections. While playing the animation, it is apparent that roll forward is the most selected step. We like to use this theme step to close the piece. One simple way is to have all dancers doing this step in a straight line. In order to make this happen, all dancers have to walk to the designated straight line positions. We therefore compose the closing section with a walking step followed by the roll forward step. Additionally, we added the walking step at the very beginning of the piece, with a slight variation that the walking takes place on the spot, i.e. dancers do not change their position.

We have considered using computers to create the introduction and closing sections. However, computers can not generate anything exciting given only the roll forward step (which only has one direction). In order to generate interesting dance pattern, computers need more than one choice for random number to take effect.  We will add variation on position and speed for roll forward step in our future work.

6.2 Specifying Path

A dancer’s position may changes after a step is completed. By specifying the starting and ending locations of each dance step, we can define the path of every dancer.  One advantage of specifying path is that we can arrange paths relative to each other easily. We also use the path feature to generate the walking step in designing the introduction and ending sections.

The path of one dancer is outside the stage throughout the performance. Originally, we assign this dancer a location that is two steps off the left wing. We were hoping that after a few timesteps, this dancer would move into the stage and joined other dancers. However, two steps seem to be too far a distance and while others were dancing on stage, this dancer was giving a show in an area where nobody can see. We will rearrange the situation (maybe only one step off the stage initially) in our future work.

7   What Does the Professional Say

“Did computers create this?” asked Charles Anderson, artistic director of Company C. I explained the dance creation process to him and he was very impressed with the results. “It looks pretty good,” said Charles. I asked him if his company likes to perform this piece. “There are many areas that need to be improved,” he said. Here is the list of his suggestions:

-    The roll forward step needs to be articulated in more details. How can a dancer lift oneself into the air as that shown in the animation? Even Cirque de Soleil can not do that. Maybe you need to modify the step to make it doable.

-    The piece needs to be extended to at least 10 minutes if you want it to become a stage production. One way to approach this is by keeping three theme steps, such as roll forward, from the ten steps you already have and then add in some new steps. Using this new set of dance steps, your then run your computers to compose a new dance section. After repeating this process many times, you will have a ten minutes long dance chorography.

-    The music is an excellent choice. Don’t change it. The movements are abstract and the music goes very well with them. This music gives the piece a Paul Taylor flavor.

-    It would be interesting to see the computer animation running on the background while the dance is performed. It gives a shallow effect to the movements and will generate a different kind of stage performance.

8           Conclusions

Dance choreographing is a creative process mostly done by humans. Our preliminary investigation of computer-generated choreography has shows some encouraging results:

1.   The agent-based Swarm model is able to create interesting dance movements based on the provided aesthetic rules. Our implementation is flexible which makes it easy to add new rules later. For examples, we are devising new rules that coordinate dancers in selecting next dance steps to induce coherent dance patterns. We are interested in exploring the possibility that computers can develop unique dance styles just like human choreographers.

2.   The computer animation process gives an opportunity for human intervention to produce more coherent results. Creative activities, such as dance choreographing, welcome mutations for refinement. In this work, we have edited the timing of the dance according to the music. A different area that we are exploring is par de deux movements (dance for two) that can be improvised on stage.

3.   The computer dance animation can be integrated into the performance to create interesting effects on stage. Incorporating visual images with dance is not new. Cunningham has worked with visual artists such as Robert Rauschenbuerg, Andy Warhol and Jasper Johns in his dances. This is an interesting area that we will pursue.

Acknowledgements

We would like to thank Viktor Kabaniaev and Tina Bohnstedt of Diablo Ballet, Charles Anderson of Company C. for their comments and suggestions.

References

1. Celant, G. (ed.): Merce Cunningham. Fundacio Antoni Tapies, Barcelona (1999).

2. McDonagh, D.: Martha Graham: a Biography. Praeger Publishers, New York (1973).

3.