Final Show

We met for the last class, and ran through all of the scenes for the performance.  Jill Tobin stopped by to video record all of the scenes, and patiently sat through our debugging.  This is our first time incorporating two kinds of robots into a performance: NAO robots and Cozmo.

Cozmo is a robot developed by Anki.  It is a pretty sophisticated little robot, especially considering its price.  Cozmo can interact with humans and play games.  Cozmo can also be programmed in a “drag and drop” environment using a tablet.  The best part about Cozmo is the developer community.  Cozmo can be programmed in Python, and there are lots of people creating programs and sharing their expertise.  The capability to program Cozmo beyond the drag-and-drop environment on a tablet is what convinced me to add Cozmo to the group.  Cozmo can connect to our network and communicate with the NAO robots.  And while I won’t replace my NAO robots with Cozmo, I can certainly imagine many more scenes with lots of Cozmo robots running around the stage.  I can’t wait to see what the next first-year seminar students do with these robots!

Our final performance will be held on Saturday, Oct 7, 2017, at 2:00 PM in Theatre B of the Theatre Building at the University of Iowa.  I hope to see you there!

First Year Seminar 2016

Our show is just about ready…The theme is the Technological Singularity: When artificial intelligence meets (and then exceeds) human intelligence. The robots take their place in our society, and these skits demonstrate how the students envision the future.

The show will take place on October 1, 2016, at 2:00 PM in Theatre B of the Theatre Building. The show is appropriate for people of all ages, and is free to attend.

Robot Theater in Portland

After our workshop and performance in Palo Alto, we packed up the robots and drove north to Portland, OR.  We held a workshop at Broadway Rose New Theater on Sunday, August 14, 2016.  We created some skits that involved movement and speech inflection, and talked with people involved with local theaters about holding the summer programs in 2017.

On Monday, we took the robots to Portland Center Stage.  The facilities were really cool, and we worked on creating some new skits and polishing up some old routines.  It will be really exciting to bring the robots back to Portland to put on some shows.

We picked up some Voodoo Donuts on our way out of Portland, and began the long drive back to Iowa City.  We are happy to be home, and are now focusing on our upcoming first-year seminar; classes start Monday!

I’d like to return to Portland in May, 2017 to give presentations to local schools and get the word out about this project.  I’d like to connect with K-12 teachers and university faculty members interested in getting involved in this project.  If you are affiliated with a school (as a parent or educator), and would like to help me connect with the administration, theater and computer science departments to arrange a visit to your school, please e-mail me.

My goal is to be able to offer a series of summer programs for 5th – 12th grade students in 2017, and in order to do that, I’ll need some help with finding the following:

  • students interested in participating in the camps
  • people to help staff the camps and bring their expertise to the project
    • undergraduate/graduate students
    • K-12 educators
    • performing artists
    • playwrights
    • university faculty

Fortunately, we have started forming partnerships with local theater groups!

 

Robot Theater in the Bay Area

We held 5 workshops in Santa Cruz, on the UCSC Campus.  These were small, hands-on workshops where participants learned the basics involved in programming our NAO robots.  The workshops were flexible, allowing people to explore the particular aspects of a robot’s capabilities that matched their interests.  Several participants were graduate students in, or alumni of, the Digital Arts and New Media (DANM) program at UCSC. Some people investigated the text-to-speech functionality, others wanted to create skits that involved human-robot interaction and robot-robot interaction with speech recognition.  One person wanted to work with the sensors on robot and understand balance and movement.  I always learn something new when I introduce the robots to a new audience.  Fresh perspectives and interests lead to new ways of thinking about the role that these robots can play in theater.

During these workshops, we talked about the overall vision of the program: to bring the robots to Santa Cruz for a series of summer programs for elementary, middle and high school students in 2017.  In order to make this happen, we need the following:

  • students interested in participating in the camps
  • people to help staff the camps and bring their expertise to the project
    • undergraduate/graduate students
    • K-12 educators,
    • performing artists,
    • playwrights
    • university faculty
  • local theater organizations to partner with us to put on performances.

As you can imagine, this project is extremely interdisciplinary in nature!

After our workshops in Santa Cruz, we drove over the hill to hold a workshop in Palo Alto.  The participants there wrote a program to have a robot function as an MP3 player, using the sensors on the head to serve as the controller.

In the evening, we gave a short presentation which included a few skits that were created over the past 4 years, and also a few that were created during our recent workshops and summer programs.  It would be great to offer a series of summer camps in Palo Alto, and we hope to start making connections to make that happen for 2018.  Palo Alto residents might want to participate in our 2017 Santa Cruz summer programs, given the closeness of the two communities.

I hope to return to the Bay Area in January and March, 2017.  I’d like to connect with local schools (in Santa Cruz and Palo Alto) to give short assemblies and presentations, and connect with teachers interested in getting involved in this project.  If you are affiliated with a school (as a parent or a teacher), and would like to help me connect with the administration to arrange a visit to your school, please e-mail me.

On the Road

We are taking the robots on the road!  We will be traveling to the west coast in August, to offer several 3-hour programming workshops.  These workshops will offer participants the opportunity to work directly with NAO humanoid robots and learn more about their capabilities and how to become involved in the project.

We will be in Santa Cruz, CA August 9-11, 2016, and Palo Alto August 12, 2016.  We will then travel to Portland, OR to offer workshops August 14-15, 2016.  To learn more about our robot theater project, check out our previous blogs, and visit the University of Iowa’s Computer Science Department website:

https://www.cs.uiowa.edu/resources/ui-cs-performing-robots

Registration for these workshops is free, but space is limited:

https://www.cs.uiowa.edu/resources/robot-theater-summer-camp

Feel free to contact us for more information:

cs-robots@uiowa.edu

 

Robot Theater 2016 JSI

We spent 5 days working with the NAO robots.  Starting with speech, then movement and conversation, we had the robots telling bedtime stories, having conversations and arguments, and even dueling with swords!  We had a few technical difficulties during the final presentations, but the audience was impressed with what the students were able to accomplish in such a short period of time.  We are looking forward to offering more opportunities to work with the NAO robots in the upcoming year.

IMG_20160621_143234IMG_20160623_132349IMG_20160623_133435IMG_20160623_133815IMG_20160623_134212IMG_20160623_142334IMG_20160623_151124IMG_20160623_153532IMG_20160623_154057

Day 10: Final Demonstration

Today is the last day of the summer program.  We ran through one last rehearsal for the final show, and fixed a few more problems.  Then it was time to set up for the kids to give a short demonstration of their projects to their family members.  The room was crowded, and it was difficult to hear the robots deliver their lines.  Overall, the kids did a great job running their programs, spotting the robots, and explaining what they did to their audience.  They took turns running their programs: each person had 15 minutes to run through a few short skits before giving another person a chance to run their programs.

After these short demonstrations, we put the robots in place for the final performance.  We found and fixed almost every problem…the only one left was at the end of the skit, when the robots were supposed to crouch to end the show:  Gini decided not to crouch.  We had a relatively large audience, and the kids did a great job putting everything together for the final show.

After the final show, the kids received certificates of completion.  It was time to power the robots down, and pack up.  It was a fabulous two weeks.  The visiting robots made their way back to Minneapolis, and the Iowa robots returned to my office, where they are getting ready for their next project: they will be part of a first-year seminar this fall.  We will be writing about that experience starting in August!

Final Surveys Setting up Robots & Action Figures Demonstrations Hanging Out Final Testing Getting Ready Final Drawings

Day 9: Rehearsal

Today is the day to rehearse the final skit.  Yesterday, all of the individual programs were finished.  Each block of dialogue was stored in a separate timeline, and the timelines were added to a “robot library”.  We then created the individual “conversation programs” for each robot, and brought in the movement timelines.  While it seems straightforward, getting seven robots to communicate, pass on messages to trigger the next robot to say its lines, make sure that all speeches and movements are timed properly, etc… can be tricky.

We fixed most of the typos in the messages being sent, and made it through most of the skit.  We had to run through it several times, fixing the problems as they came up, and then “taking it from the top.”  Fortunately, the robots are pretty patient, and don’t mind running through their lines as often as necessary.  The kids were also patient.  They were the ones spotting the robots, and then starting the scene over and over again.  It was great to have lots of eyes watching the movements of the robots, and giving feedback on things that needed to be changed in the delivery of the lines.  The final result will be impressive!

After the rehearsal, the kids finished up their “gratitude conversations” with the robots.  I am thankful to the individuals and organizations that supported this first Robot Theater Summer Camp.

Christopher plays pong
Christopher plays pong

Pong!

Alberto, Amanda, Daniel, and Christopher
Alberto, Amanda, Daniel, and Christopher
Denise playing pong, Bobbi and Gini getting ready to meet the Iowa robots
Denise playing pong, Bobbi and Gini getting ready to meet the Iowa robots

Gini View from the floor

Debugging takes a long time!
Debugging takes a long time!

Day 8: Finishing Up

Today we continued to pose and program the robots, and create the art for the stage.  At this point in the program, the kids know their way around the robots.  They are gentle when they manipulate the robots, and are comfortable programming them to deliver their lines.

Each block of text (along with the movement) will be stored in its own timeline.  Once we have all of the individual timelines for a robot, we will create the final program for that robot.  Some of the roles were easier to put together than others.  For example, “Christopher” and “Denise” will be playing virtual pong throughout the skit, so their movements involve an infinite loop of random arm movements that look like they are hitting a ball back and forth.  They have a few lines of dialogue in the skit, but we didn’t have to create any deliberate movements outside of the pong gestures.

“Daniel” will be describing outdoor sports (mentioning football and archery, and then describing how to play baseball in more detail).  That series of movements took some effort to build, and the final result was outstanding.  “Gini” and “Bobbi” are the robots visiting from Minneapolis.  They will be locking their convertible car, and trying to figure out where to go for the Robot Theater Summer Camp.  They will be walking up to the other robots to ask for help.  “Gini” will be describing how to make a dump cake, and “Bobbi” will be talking about the winter sports that she plays.  “Alberto” will go into detail about gardening.  The kids in the camp created all of this dialogue and movement.

Programming Alberto's moves
Programming Alberto’s moves
Working out Amanda's movements
Working out Amanda’s movements
Getting Amanda's movements coded
Getting Amanda’s movements coded
Working on the background art
Working on the background art
Analog creativity
Analog creativity
Creating Daniel's movements
Creating Daniel’s movements
Ini starts the show, and had a lot of lines in the skit
Gini starts the show, and had a lot of lines in the skit

Almost Finished!

Day 7: Creating the Individual Pieces

The kids read through the overall script, but there are several components that still need to be written.  The kids will write a description of how to make a “dump cake”, various outdoor sports (winter and non-winter) that they enjoy playing, and things that are related to gardening.  We also need to create deliberate gestures for when the robots are speaking their other lines in the skit.  Then we need to create the programs that enable the robots deliver their lines (with appropriate gestures).  Finally, we need to put it all together into one large “conversation program” for each robot.

We started out the day by writing some of the descriptions that will be used in the skit.  Then some kids started programming the dialogue, and others started working on the backdrops for when the robots perform the skit.  This was a great day for creative juices to flow.  Putting on a robot theater performance involves more than just writing computer programs.  There is writing, posing, programming, drawing, and staging to be done.

Starting to draw
Starting to draw
Collaboration
Collaboration
Creating the movements
Creating the movements
Creating movements for outdoor sports for Daniel
Creating movements for outdoor sports for Daniel
Coding the lines and gestures for Gini's role
Coding the lines and gestures for Gini’s role
Putting Art into STEM makes STEAM!
Putting Art into STEM makes STEAM!