FY13 Innovations in Teaching with Technology Awards

Proposal Title: Making Algorithmic Thinking Concrete via Collaboration with the Performing Arts
Investigators: Alberto Segre, George De La Pena
Org Unit: College of Liberal Arts
Department(s): Computer Science, Dance
Funding Awarded: $15,000
What do you intend to do?

We are asking for funding to purchase five programmable NAO robots to support interdisciplinary collaborative learning in Computer Science.

The primary use for these robots will be to support a new class, jointly offered with the Dance Department, exploring "algorithmic thinking in the performing arts." This new project-based course will team equal numbers of performing arts (with an emphasis on dance) majors with CS and informatics majors to design, choreograph, direct, and produce a robotic dance performance while teaching core computational concepts. We expect that some of the creative projects that result from the new class may be suitable as demonstrations to support K12 STEM-focused outreach. A secondary use for these robots will be to support freshman seminars and existing introductory CS courses (22c:001 Principles of Computing, 22c:005 Introduction to Computer Science, and 22c:016 Computer Science I: Fundamentals) and, possibly, in more advanced courses (e.g., 22c:145 Artificial Intelligence) through in-class demonstrations and explorations. Finally, once we acquire sufficient local expertise with the robots, we hope to offer summer K12 outreach activities, including, for example, a week-long robot camp. We expect that these activities would increase interest in STEM careers, especially among young women. 

Clearly the landscape of Computer Science and the role computers play in the world is radically different from what it was even just ten short years ago. The desktop has lost ground to the dominant computer on the planet: the mobile phone. People are physically divorcing their machines, preferring to store their data remotely "in the cloud." Intriguing new technological gadgets, like the iPod (2002) and its successors, continue to capture the public imagination. IBM's Watson handily defeated human champions at Jeopardy. A small internet company called Google has become a prodigious engine of growth, now with a market value approaching $200B. Self-driving cars have traveled hundreds of miles in traffic, and combinations of algorithms and social networks have profoundly changed the business of politics. These rapid advances in technology have inspired a shift in the common perception of the role of computation, particularly for the newest generation of professionals now enteri! 
ng the most influential sectors of society. More than just powerful new tools for scientific, statistical, and engineering applications, the use of computing and networking extends to music, visual arts, the humanities and the social sciences. Such tools go beyond mere automation of traditional tasks; they make feasible new ways of doing research, supporting education, and collaborating across disciplines. 

In response to these new realities, the Department of Computer Science has already made substantive changes to its introductory courses. We are now turning our attention to creating new and exciting "outreach courses," where computational concepts are applied to a diverse set of disciplines across the CLAS spectrum. In Spring of 2012, we offered a project course on graphical dataflow programming for audio, video and graphics processing (22c:096 Multimedia Programming in Pure Data), taught by a CS MCS student with a DMA in Composition. PD is typically used for interactive audiovisual performances, art installations, live across the Internet collaborations, smart phone applications and prototyping audio for video games: students in the course produced a short creative work which was then performed during the final exam period.   

If this funding is awarded, we plan to create a similar project-based class in collaboration with the Department of Dance. At the end of the term, the projects will be performed live during the final exam period to a suitable audience; top projects will be used to produce a short multimedia video for publication on both department's web sites.

How will it improve student learning? We propose to offer a new project-based course tentatively entitled "Robotic Dance." The course will be cross listed in both Computer Science and Dance, and it will be initially limited to 24 students (12 from Dance and the other performing arts, and 12 from CS/Informatics). Students will work in small interdisciplinary groups to create and produced a creative dance work to be performed, at least in part, by robots. The objectives of the course are both simple and diverse: Performing Arts students will learn about computation, CS/Informatics students will learn about creative work, and all students will learn about interdisciplinary collaboration. For example, by the end of the term, Dance students will deepen their understanding of choreography as well as be able to: 
  • define an algorithm; 
  • differentiate between an algorithm and a program; 
  • explain how programs are written and ultimately executed on a computer; 
  •  use abstractions to treat an algorithm as a set of behavioral units; 
  •  use a control structure metaphor to combine and reason about these behavioral units; and 
  •  use a systematic process to analyze, isolate, and solve a problem. 

CS/Informatics students will deepen their understanding of computation, and, by end of term, will: 

  •  better understand and design interagent communication and collaboration protocols; 
  •  better understand distributed/parallel computing abstractions and synchronization; 
  •  better appreciate kinesiology and the basics of human movement; 
  •  better appreciate the artistic/creative process; and 
  •  gain exposure to aesthetic aspects of dance and the performing arts. 

All students will: 

  • develop an appreciation for the diversity of cultural, artistic, and technical perspectives; 
  • develop appropriate skill sets to support interdisciplinary group project work; and 
  • formulate an informed and articulate personal position on computers vis-a-vis creativity.
What resources will you need? We intend to purchase five Aldeberan NAO H25 robots: 


The NAO H25 is a is a programmable, 57cm tall humanoid robot with a total of 25 degrees of freedom operated by electric motors and actuators. Each robot contains two cameras, four microphones, a sonar rangefinder, two IR emitters and receivers, an inertial board, nine tactile sensors, and eight pressure sensors. The robots have various communication devices on board, including a voice synthesizer, LED lights, and two high-fidelity speakers and are controlled by two Intel ATOM 1.6ghz CPUs (one in the head and one in the torso) running a Linux kernel and supporting Aldebaran's proprietary middleware (NAOqi). 

Along with the robots, Aldebaran provides several additional software packages. Choreographe 


is a graphical programming language that allows the user to program complex behaviors via a graphical user interface. The Software Development Kit 


is a cross-platform programming language interface to the NAO robot. It supports C++, Python, C#, Java, Matlab, F#, VB and Urbi programming languages, allowing the developer to write code that can be executed on the robot's on-board CPU. The NAOSim Simulator 


and Telepathe Monitor 


together allow the user to exectue their programs in a simulated physical world while observing the sensory input provided to the simulated robot on their own desktop computer.

Rough estimate of costs Each robot costs approximately $16,000 unless purchased in quantities of five or more, where volume discounts bring the costs down to approximately $10,000 per robot. 

We have requested funding for a 6th robot from John Deere. 

We expect six robots would support a class of 24 students, especially when combined with the  NAOSim software.


Article number: 
Last updated: 
May 19, 2016