Exercise: Simulation Duo

For this exercise, students will work in pairs to create a simulated performance in which two simulated machines perform together in a common world. The machines should have complementary forms and each be controlled by a blend of human input and automated behaviors.

The creative objective is an understanding that we perceive the inner state of humans, animals, and machines by observing what they do and how they react. Presenting two machines in the same space provides new opportunities for them to coordinate, react to each other, and serve as proxies for communication between the human performers.

In a real-world performance, a pair of robots communicating physically can also create opportunities for human interaction by safely interposing the human between the robots.

Following are some suggested starting points:

More inspirations:


After this exercise, you should be able to:

  1. Formulate a two-agent narrative as a choreographic concept which can be translated into behaviors.

  2. Work with a partner to develop related kinetic sculptural forms capable of intuitive, emotional expression conveyed through form and movement.

  3. Jointly improvise machine performance and discover expressive opportunities.

  4. Practice and perform a short show.


Many sample Webots worlds are included in the reference projects in Webots.zip described under Webots Robot Simulator Examples. You are welcome to use one as a starting point, but please note this in your documentation.

Several useful scripts supporting multi-person control are documented on Performance Utility Tools.

The Shutterbox world file contains a two-machine demo with options for dual keyboard input (shutterbox.py), MIDI input (shutterbox_midi.py), or OSC input (shutterbox_osc.py).


Each pair should prepare the following:

  1. An in-class live performance between 90 seconds and three minutes long.

  2. A paragraph briefly describing your objectives and outcomes in a post on the RCP project site, either public or private (one jointly authored post per pair).

  3. Short video clip of human and robot performance, submitted as an embedded video. Small .mp4 files may be directly uploaded, or you may embed a third-party streaming service.

  4. Zip file of your Webots project. Please give distinctive names to your modified worlds, controllers, and protos (or delete the extraneous ones), and please preserve the folder structure (e.g. worlds/, protos/, controllers/) so it could be unpacked and used.