The Distributed Control Framework: A Software Infrastructure for
Agent-based Distributed Control and Robotics
Zachary Kulis, Vikram Manikonda, Babak Azimi-Sadjadi, and Priya Ranjan
Abstract—We address the shortage of available software
frameworks for distributed control systems/robotics and de-
scribe a novel agent-based software architecture simplifying the
development, testing, and deployment of distributed controllers.
Our Distributed Control Framework (DCF) provides extensive
support for robot team coordination and management, a plug-
gable architecture for sensing and estimation, robust simulation
capabilities with support for hardware in the loop, and a high-
level platform-independent programming language for hybrid
control called MDLe (Motion Description Language Extended).
We highlight two experiments that showcase the DCF and
MDLe using real robots, and we conclude the paper with the
derivation and discussion of an indoor robot navigation system
used in our experiments. The navigation system combines robot
odometry and range measurements from a network of Cricket
sensors using an extended Kalman filter.
I. I NTRODUCTION
Recent research efforts in robotics have increasingly fo-
cused on the use of multi-robot teams to perform challenging
tasks in dynamic and unpredictable environments. The bene-
fits of teams are many: individual team members, or agents,
can share sensory information and avoid potential threats [1],
cooperating agents can perform tasks more quickly and
efficiently [2], and redundancy of team members maximizes
team survivability and the probability of mission success in
hostile environments. Despite the many potential applications
for robot teams [3] [4] [5], there is a lack of comprehensive
standards-based software tools to facilitate the implemen-
tation, simulation, and deployment of multi-agent control
systems using real hardware. This dearth of software infras-
tructure solutions for robotics impedes progress and wastes
valuable time and money; often, resources are squandered
deciphering legacy code or unnecessarily developing new
software from scratch.
The need for robotics infrastructure tools has been astutely
perceived in both the academic and commercial sectors.
Under the DARPA MARS Program, Pennsylvania State
University developed an agent-based software framework
and a high-level control language called CHARON to fa-
cilitate the rapid development of multiple interacting hybrid
control systems [6]. At Carnegie Mellon University, MARS
program funds supported the development of a language
for distributed strategy/role assignments among RoboCup
soccer team players [7]. In the commercial sector, Microsoft
This work was supported in part by Army Research Contract W911NF-
04-C-0014.
Zachary Kulis, Dr. Vikram Manikonda, Dr. Babak Azimi-Sadjadi, and
Dr. Priya Ranjan are all with Intelligent Automation Incorporated, 15400
Calhoun Drive, Suite 400, Rockville MD 20855. (e-mails: {zkulis, vikram,
babak, pranjan}@i-a-i.com).
recently released version 1.5 of its Robotics Studio as a free
download. The software provides native support for a variety
of robot platforms, sensors, and manipulators, features a
lightweight concurrency model (CCR) and a service-based
architecture for distributed sensing and control (DSS), and
provides an integrated physics simulator and 3D viewer [8].
II. MOTIVATION
Our solution to the robotics infrastructure problem is the
creation of the Distributed Control Framework (DCF) –
a lightweight agent-based software architecture specifically
tailored to the control of interacting heterogeneous agents.
Unlike other robotics infrastructure tools, the DCF is written
entirely in the Java™ programming language, which offers
many advantages compared to C/C++; Java code is typically
cleaner and easier to maintain and debug, there is no need
to cross-compile the code for target platforms, and students
are learning Java in their university courses. In addition, the
speed advantage of C/C++ is rapidly diminishing, especially
with the introduction of hardware-enabled Java Virtual Ma-
chines (JVMs), such as the ARM Jazelle
[9].
The DCF is a modular and extensible software archi-
tecture built on top of the CybelePro™ [10] agent frame-
work developed at IAI. DCF leverages the Activity Centric
Programming (ACP) model provided by CybelePro™ and
adds support for robot team coordination and management,
a pluggable architecture for sensing and estimation, sup-
port for heterogeneous robot platforms, robust simulation
capabilities with support for hardware in the loop, and a
high-level platform-independent programming language for
hybrid control called MDLe. Core functionalities such as
peer-to-peer communications, exchange of messages through
a publisher-subscriber model, and concurrency are provided
by CybelePro™. With the DCF, users can simulate multi-
agent systems comprised of thousands of interacting agents
with real hardware in the loop. Such capabilities enable re-
searchers to glean new insights (e.g. emergent behavior) and
identify possible failure modes prior to full-scale deployment
on real hardware.
This paper is organized as follows: In section III, we
discuss the DCF architecture. In section IV, we provide an
overview of MDLe (Motion Description Language Extended)
and describe the implementation of the MDLe module in
the DCF. Next, in section V, we highlight two experiments
performed with real robots using the DCF and MDLe.
Finally, in section VI, we provide technical discussion of
an indoor navigation system for robots that was used in our
2008 American Control Conference
Westin Seattle Hotel, Seattle, Washington, USA
June 11-13, 2008
WeC03.1
978-1-4244-2079-7/08/$25.00 ©2008 AACC. 1329