We present a software synthesis method for speed-
controlled robot walking based on supervisory control of a
context-free Motion Grammar. First, we use Human-Inspired
control to identify parameters for fixed speed walking and for
transitions between fixed speeds, guaranteeing dynamic stability.
Next, we build a Motion Grammar representing the discrete-
time control for this set of speeds. Then, we synthesize C
code from this grammar and generate supervisors¹ online to
achieve desired walking speeds, guaranteeing correctness of
discrete computation. Finally, we demonstrate this approach on
the Aldebaran NAO, showing stable walking transitions with
dynamically selected speeds.
We demonstrate the automatic transfer of an
assembly task from human to robot. This work extends efforts
showing the utility of linguistic models in verifiable robot
control policies by now performing real visual analysis of
human demonstrations to automatically extract a policy for the
task. This method tokenizes each human demonstration into a
sequence of object connection symbols, then transforms the set
of sequences from all demonstrations into an automaton, which
represents the task-language for assembling a desired object.
Finally, we combine this assembly automaton with a kinematic
model of a robot arm to reproduce the demonstrated task.
We present and analyze the Motion Grammar: a
novel unified representation for task decomposition, perception,
planning, and control that provides both fast online control of
robots in uncertain environments and the ability to guarantee
completeness and correctness. The grammar represents a policy
for the task which is parsed in real-time based on perceptual
input. Branches of the syntax tree form the levels of a hierarchical
decomposition, and the individual robot sensor readings are given
by tokens. We implement this approach in the interactive game
of Yamakuzushi on a physical robot resulting in a system that
repeatably competes with a human opponent in sustained gameplay
for the roughly six minute duration of each match.
Grey, M .X.
Lofaro, Daniel M.
Bobick, Aaron F.
Egerstedt, Magnus B.
Humanoid robots require greater software reliability than traditional mechantronic systems if they are to
perform useful tasks in typical human-oriented environments.
This paper covers a software architecture which distributes the
load of computation and control tasks over multiple processes,
enabling fail-safes within the software. These fail-safes ensure
that unexpected crashes or latency do not produce damaging
behavior in the robot. The distribution also offers benefits for
future software development by making the architecture modular
and extensible. Utilizing a low-latency inter-process communication protocol (Ach), processes are able to communicate with
high control frequencies. The key motivation of this software
architecture is to provide a practical framework for safe and
reliable humanoid robot software development. The authors test
and verify this framework on a HUBO2 Plus humanoid robot.
Christensen, Henrik I.
This work combines semantic maps with hybrid control models, generating a direct link between action and environment models to produce a control
policy for mobile manipulation in unstructured environments. First, we generate
a semantic map for our environment and design a base model of robot action.
Then, we combine this map and action model using the Motion Grammar Calculus to produce a combined robot-environment model. Using this combined model,
we apply supervisory control to produce a policy for the manipulation task. We
demonstrate this approach on a Segway RMP-200 mobile platform.
This paper presents three effective manipulation
strategies for wheeled, dynamically balancing robots with articulated
links. By comparing these strategies through analysis,
simulation and robot experiments, we show that contact
placement and body posture have a significant impact on the robot's ability to accelerate and displace environment objects.
Given object geometry and friction parameters we determine
the most effective methods for utilizing wheel torque to perform
We present a new Interprocess Communication
(IPC) mechanism and library. Ach is uniquely suited for
coordinating drivers, controllers, and algorithms in complex
robotic systems such as humanoid robots. Ach eliminates the
Head-of-Line Blocking problem for applications that always
require access to the newest message. Ach is efficient, robust,
and formally verified. It has been tested and demonstrated
on a variety of physical robotic systems, and we discuss the
implementation on our humanoid robot Golem Krang. Finally,
the source code for Ach is available under an Open Source
This paper provides a method for deriving provably
correct controllers for Hybrid Dynamical Systems with
Context-Free discrete dynamics, nonlinear continuous dynamics,
and nonlinear state partitioning. The proposed method
models the system using a Context-Free Motion Grammar
and specifies correct performance using a Regular language
representation such as Linear Temporal Logic. The initial
model is progressively rewritten via a calculus of symbolic
transformation rules until it satisfies the desired specification.