| |
Abstract
Robots are becoming increasingly common in, and important to, many
commercial, industrial, and military applications. This paper focuses
on how to program humanoid robots, and in particular how to program
their movements and interactions as easily and as effectively
as possible. The core of this effort is the design of a domain-specific
language called Dance that is highly abstract, easy to use, yet
has enough expressive power to describe a wide range of useful robot
movement.
Dance consists of a non-reactive base inspired by Labanotation,
a graphical notation for human motion, and a reactive layer based on
Yampa, our latest incarnation of functional reactive programming. The
reactive layer is structured using arrows, a generalization of monads,
and gives a robot the ability to react to its environment in critical
ways. Dance is also independent of the robot platform being used. Our
target is two humanoid robots being designed and constructed in the
Yale Vision and Robotics Laboratory. We have also written a simulator
in which a 3D-rendering of a humanoid robot is controlled by a Dance
program.
@TechReport{Dance2003, author = {Liwen Huang and Paul Hudak}, title = {Dance: A Declarative Language for the Control of Humanoid Robots}, institution = {Yale University}, year = {2003}, number = {YALEU/DCS/RR-1253}, month = {August}, }
Download
|