  A generic architecture for a class of distributed robotic systems is
presented. The architecture supports openness and heterogeneity, i.e.
heterogeneous components may be joined and removed from the systems without
affecting its basic functionality. The architecture is based on the paradigm of
Service Oriented Architecture (SOA), and a generic representation (ontology) of
the environment. A device (e.g. robot) is seen as a collection of its
capabilities exposed as services. Generic protocols for publishing,
discovering, arranging services are proposed for creating composite services
that can accomplish complex tasks in an automatic way. Also generic protocols
for execution of composite services are proposed along with simple protocols
for monitoring the executions, and for recovery from failures. A software
platform built on a multi-robot system (according to the proposed architecture)
is a multi-agent system.
