Material-integrated cluster computing in self-adaptive robotic
materials using mobile multi-agent systems
Stefan Bosse
1,2
Dirk Lehmhus
3
Received: 16 July 2018 / Revised: 23 November 2018 / Accepted: 19 December 2018
Ó Springer Science+Business Media, LLC, part of Springer Nature 2019
Abstract
Recent trends like internet-of-things (IoT) and internet-of-everything (IoE) require new distributed computing and com-
munication approaches as size of interconnected devices moves from a cm
3
- to the sub-mm
3
-scale. Technological advance
behind size reduction will facilitate integration of networked computing on material rather than structural level, requiring
algorithmic and architectural scaling towards distributed computing. Associated challenges are linked to use of low
reliability, large scale computer networks operating on low to very low resources in robotic materials capable of per-
forming cluster computing on micro-scale. Networks of this type need superior robustness to cope with harsh conditions of
operation. These can be provided by self-organization and—adaptivity. On macro scale, robotic materials afford unified
distributed data processing models to allow their connection to smart environments like IoT/IoE. The present study
addresses these challenges by applying mobile Multi-agent systems (MAS) and an advanced JavaScript agent processing
platform (JAM), realizing self-adaptivity as feature of both data processing and the mechanical system itself. The MAS’
task is to solve a distributed optimization problem using a mechanically adaptive robotic material in which stiffness is
increased via minimization of elastic energy. A practical realization of this example necessitates environmental interaction
and perception, demonstrated here via a reference architecture employing a decentralized approach to control local
property change in service based on identification of the loading situation. In robotic materials, such capabilities can
support actuation and/or lightweight design, and thus sustainability.
Keywords Pervasive computing Ubiquitous computing Agents Optimization Material informatics Self-organizing
systems Self-adaptive systems
1 Introduction
Cluster computing is commonly related to large-scale
networks composed of powerful computers and servers
connected by reliable high-bandwidth interconnections
and the Internet. There is an ongoing trend to create big
machines providing high storage, memory, and CPU
capacities towards Cloud computing and data centers.
This is the macro- scale level of computing. But there is
also an emerging micro-scale level of computing, using
low-resource and miniaturized computers towards the
mm
3
scale deployed in material-integrated computer
networks and the internet-of-things [1]. The term material
is related to the micro-size-scale level (element size about
mm
3
), and structures to the meso-size-scale level (ele-
ment size about cm
3
).
In the last decades there was a shift from passive single
sensors and centralized sensor data processing towards
large networks [2] of smart sensors equipped with Infor-
mation-Communication-Technologies (ICT) forming sen-
sorial materials as one class of material-integrated
intelligent systems (MIIS) [3]. Furthermore, there was a
significant increase of the sensor density in sensor networks
integrating sensors and ICT in materials [3], used, e.g., for
structural health monitoring (SHM) [4] or in smart textiles.
& Stefan Bosse
sbosse@uni-bremen.de
1
Department of Mathematics and Computer Science,
University of Bremen, 28359 Bremen, Germany
2
Faculty of Computer Science, University of Koblenz-Landau,
56070 Koblenz, Germany
3
Fraunhofer IFAM, 28359 Bremen, Germany
123
Cluster Computing
https://doi.org/10.1007/s10586-018-02894-x
(0123456789().,-volV)(0123456789().,-volV)
Finally, micro system technologies enable the integration
of actuation in materials creating robotic materials [5], e.g.,
using thermoplastic actuators [6] to modify structures.
Robotic materials are characterized by a tight coupling
of sensing, actuation, computation, and communication.
Data processing in robotic materials can be considered as
cluster computing on micro-scale level. Sensorial and
robotic materials are operating under harsh environmental
conditions requiring resilient behaviour, captured by the
entire design of the ICT architecture and distributed
algorithms.
Load-bearing structures are typically designed towards
relevant load cases known at design-time. New technolo-
gies enabling the design of structures that change material
properties in service in response to load change (i.e., using
robotic materials) could raise additional weight saving
potentials, extending the lifetime, and increasing opera-
tional safety. Thus, self-adaptive robotic materials support
lightweight design and sustainability inspired by bionic
design, e.g., by a top-down approach based on the struc-
ture, load, and function with similarity classification [7].
But still bionic design has to consider specific load cases
and perform classification in advance, e.g., performed by
the ELiSE design framework [8]. Examples of cross-sec-
torial and material-independent structural lightweight
constructions propose weight savings about 20–50% [9].
Our approach aims to overcome this limitation.
Structures composed of simple and unreliable actuators
are difficult to control due to non-linearity and a lack of
physical models. One concern regarding active smart cel-
lular structures is the correlated and self-organizing control
of cells’ responses, and the underlying informational
organization providing robustness.
Robustness and real-time capabilities require some kind
of self-organizing and self-adapting computational model
instead of the functional models commonly used (e.g., in
control theory).
The adaptation of mechanical actuated structures to
varying load situations based on external perception or
proprioception that is considered in this work can be
treated as an optimization problem that will be controlled
in this work by multi-agent systems.
The next Sect. 2 outlines the general problem descrip-
tion of distributed computing in material-integrated ICT
systems and the novelty of this work. Section 3 discusses
data processing integrated in materials and structures from
a technical point of view. Robotic materials and the ref-
erence architecture used in this work is described in
Sect. 4. The optimization problem addressed in this work is
introduced in Sect. 5, and the MAS implementation is
described in Sect. 6. Sections 7,8, and 9 address the agent
and simulation platform. Finally, Sects. 10 and 11 show
and evaluate a use-case study.
2 Problem description and contribution
An overview of the concepts addressed in this work is
shown in Fig. 1. Assuming large-scale sensor- and actuator
networks (i.e., sensorial and robotic materials) that are
integrated in materials (or microscopic structures), dis-
tributed computing problems are solved by self-* multi-
agent systems, finally performing distributed optimization
(adaptation of mechanical properties of a robotic material).
The four upper layers (green boxes) are addressed in this
work.
The lower four layers are the platform and deployment
fields of the proposed distributed computing approach
using mobile agents, not addressed in this work.
Optimization problems are commonly solved mathe-
matically and numerically [10, 11] or treated as global
problems [6, 12] that can only be solved by processing the
entire sensor data set in each solver iteration. But the
transition to distributed approaches with local processing is
necessary to reach scaling of large systems in the future
consisting of Thousands and Millions of small perceptive
and computational nodes (embedded computers). These
tiny computational units are characterized by their low
computational power and data storage capacity.
This work addresses distributed information processing
integrated in materials and structures posing self-adaptivity
Fig. 1 Overview of the concepts fusioned in this work (lower three
levels are the deployment fields)
Cluster Computing
123
of the material using a MAS approach with algorithms
based on multi-phase topology optimization (MPTO) [13]
and simulated annealing, which can be considered as a
bionic structural optimization approach.
On the macro-scale level, agents and distributed agent-
based systems are already deployed successfully in
heterogeneous large environments, e.g., production and
manufacturing processes [14, 15], facing adaptive manu-
facturing, maintenance, evolvable assembly systems,
quality control, and energy management aspects, and in
sensing applications, e.g., monitoring of mechanical
structures and devices [16]. Finally, the paradigm of
industrial agents meeting the requirements of modern
industrial applications by integrating sensor networks was
introduced in [17]. In the present study, we show that
agents can be deployed successfully on the micro-scale
level, too.
The central approach in this work focuses on mobile
agents solving an optimization problem by a divide-and-
conquer approach. They pose the ability to support mobile
reconfigurable code embedding the agent behaviour, the
agent data, the agent configuration, and the current agent
control state, finally encapsulated in a portable textual
representation.
In this work JavaScript code (AgentJS) is used and
executed by the JAM platform [18]. The code is capable of
migration between nodes in the network required for
autonomous distributed data processing. This approach
requires only a minimal agent processing platform service
(APPS). The AgentJS code can be directly executed by the
underlying JS VM (e.g., nodejs, jxcore, JVM, webview for
mobile App. development, or spidermonkey used in
browsers).
On the one hand, robotic materials provide internal and
external perception that can be used in a wide range of
sensing applications on the Internet (e.g., product life-cycle
management). Robotic Materials will be part of larger
networks, i.e., the IoT. On the other hand, robotic materials
can profit from environmental information, e.g., collected
by mobile devices and crowd sensing. Therefore, these
material-integrated computational networks should be
connected to a local Intranet or to the global Internet (see
Fig. 2, left side).
One of the major challenges in distributed sensing and
control systems is the derivation of meaningful information
from sensor data. Often the sensors of mobile consumer
devices (such as accelerometer, humidity, light, battery,
temperature, and location) suffer from a poor quality.
Distributed sensor fusion can be applied to improve the
statistical significance of such sensor signals by collecting
sensor data in a region of interest from multiple devices.
Fusion can profit from machine learning (ML), which
usually bases on classification algorithms derived from
supervised machine learning or pattern recognition using,
e.g., self-organizing [2] and distributed multi-agent sys-
tems with less or no a-priori knowledge of the
environment.
The IoT, material-integrated ICT networks, mobile, and
Cloud environments differ significantly in terms of
resources (computational power and data storage). The IoT
and mobile networks consist of a large number of low-
resource devices interacting with the real world and having
strictly limited storage capacities, energy, and computing
power, and the Cloud consists of large-scale computers
with arbitrary and extensible computing power and storage
capacities in a basically virtual world.
A unified and common data processing and communi-
cation methodology is required to merge the IoT with
Cloud environments seamlessly, which can be fulfilled by
mobile agent-based computing proposed in this work.
The scalability of complex ubiquitous applications using
such large-scale cloud-based and wide area distributed
networks deals with systems deploying thousands up to a
million agents.
Considering such strong heterogeneous environments
with computers ranging from 1 MIPS computational power
and 1 MB RAM to 1 GIPS and 1GB RAM a hybrid dual-
platform approach have to be used for agent processing
(Fig. 2, right side).
Addressing the Internet, mobile networks and the IoT,
the
JAM platform [18] is used offering agents directly
implemented in JavaScript (AgentJS) program code hold-
ing the entire control and data state of an agent
Agent processing on very-low resource platforms is
performed with a stack-based processor approach (exe-
cuting AgentFORTH code) featuring hardware implemen-
tation and advanced token-based agent process scheduling
using the AFVM platform [19].
Both program code models base on the same behaviour
and agent behaviour model (ATG/AAPL) and can be
transformed to each other. The agents themselves conform
to the mobile processes model introduced by Milner [20]
ensuring seamless agent mobility. The code can be modi-
fied by the agent itself using code morphing techniques
required for behaviour adaptation (directly supported by
JavaScript Just-in-time and Bytecode Compiler VM
platforms).
This work adds to earlier work [21] the following
extensions and novelties:
Distributed and decentralized solving of mechanical
optimization problems using different algorithms;
Self-* multi-agent system performing distributed opti-
mization in a robotic material providing self-adaptation
based on varying load situations and mechanical
defects;
Cluster Computing
123
Reference architecture of a robotic material composed
of a mesh-grid network of agent processing platforms;
Different enhanced distributed mechanical optimization
algorithms and their evaluation applied to robotic
materials that are used to meet mechanical constraints
under varying load and damage situations (e.g. holes);
Multi-domain simulation with tight coupling of phys-
ical and computational agent models.
The next sections offer an introduction to material-inte-
grated intelligent systems and the robotic material refer-
ence architecture, followed by an introduction of the
proposed distributed optimization algorithms and their
implementation with MAS. Finally, an evaluation of the
distributed MAS optimization is performed by a multi-
domain simulation (coupling physical and computational
models) of a JAM network embedded in a robotic material.
3 Material-integrated intelligent systems
Material-integrated intelligent systems feature materials
with embedded data processing, communication, sensors,
actuators, and energy supply. These materials can be
classified in:
Fig. 2 Unified distributed
information processing in
heterogeneous MIIS/IoT/Cloud
environments with mobile
agents using a hybrid platform
framework consisting of the
JavaScript agent machine
platform (JAM) and the low-
resource AgentFORTH machine
(AFVM)
Cluster Computing
123
1. Sensorial materials providing intrinsic or environmen-
tal perception capabilities by coupling sensing, com-
putation, and communication.
2. Robotic materials providing intelligent perception and
mechanical adaptation capabilities by coupling sens-
ing, actuation, computation, and communication.
3. Self-adaptive robotic materials providing a closed
control loop using perception to adapt the material/
structure to changing load situations or defects.
All three classes use large-scale autonomous distributed
networks with embedded systems characterized by low
power consumption, low data storage resources, and low
processing power. Commonly, the network nodes are self-
powered by using local energy storage and harvesting.
The main fields of application of Sensorial Materials are
Load and Structural Health Monitoring, the field of appli-
cation of robotic materials are mechanical adaptive
structures.
Intelligence is provided on software level featuring self-*
capabilities. Adaptivity, reconfiguration, and healing in the
presence of technical failures (data processing, networking,
communication, low energy, sensor faults) are elementary
features of resilient systems in safety-critical environments.
Load-bearing structures are typically designed towards
relevant load cases assuming static shape and fixed sets of
materials properties decided upon during design and
materials selection. New technologies enabling the design
of structures that could change local properties in service in
response to load change could raise additional weight
saving potentials, thus supporting lightweight design and
sustainability. Materials with such capabilities must nec-
essarily be composite in the sense of a heterogeneous
build-up, exhibiting, e.g., an architecture consisting of
networks with numerous active cells providing sensing,
signal and data processing, communication, and actuation/
stimulation capability [4] forming robotic materials and
structures [22]. One example for such a material is a spe-
cial class of polymers being capable to change their elas-
ticity based on the influence of optical, thermal, or
electrical fields [5].
Although no specific technology assumptions were
made in this work, there are already micro-scale computers
suitable for such material-integrated computing. An
example is the Micro MOTE M3 [23] providing about
1MIPS computing power and 4 kB data memory with
0.1 mm
2
chip area consuming less 100 lW power. The
FreeScale KL03 provides 50 MIPS/2 kB with 4 mm
2
chip
area and 3 mW power consumption. Both microcontrollers
base on ARM architecture.
4 Robotic material and reference
architecture
The reference architecture in this work consists of a three-
dimensional grid network of controller nodes with physical
and communication connectivity between nodes, shown in
Fig. 3. The physical links are actuators that can change
mechanical properties of the material (e.g., stiffness). No
technology-specific assumptions were made regarding
communication links and actuators.
In our understanding, a self-adaptive robotic material
provides the following major features:
1. Perception using various kinds of sensors, e.g., measuring
of strain, displacement, temperature, pressure, forces;
2. Capability of changing local material and structure
properties by actuators, e.g., stiffness or damping
variation;
3. Integrated networks of information processing and
communication technologies (ICT);
4. Distributed approach: Local sensor processing, aggre-
gation, and actuator control; Global cooperation and
coordination solving optimization.
The general model of such a robotic material is shown in
Fig. 3. It is assumed that the material (on micro-scale level) or
structure (on meso-scale level) consists of volume elements
(bounded regions of the material) that are connected with
neighbourhood elements via links. The links should provide
some kind of sensing (e.g., measuring the strain or displace-
ment along the link main axis) and some kind of material or
structure control providing a controllable actuator (e.g.,
modifying the stiffness of the link). A link can be a discrete
part or a continuous region of the material. A set of actuators is
connected to each node. Two nodes share an actuator (e.g., a
damped spring of variable stiffness and damping).
Each element contains an embedded computer that is
considered as a node in a mesh-grid communication network.
Each node provides some kind of data processing (processor
or digital logic RTL), data and program memory, commu-
nication, energy supply and energy management. Since the
distributed sensing and control of the material should be
performed by an agent-based approach each node has to
provide an agent processing platform (APP).
The APP is executed typically on a virtual machine,
discussed in Sect. 7. Agents have to be able to access
sensors and actuators by a hardware abstraction layer
(HAL), optimally provided by the APP.
It is assumed that the nodes are organized in an ad-hoc
way. Technical failures of single nodes is considered as the
common and may not affect the operation of the robotic
Cluster Computing
123
material and its capability to satisfy some global objective
function. This implies a self-organizing and self-adaptive
approach with respect to the connectivity structure has to
be used to create some kind of holonic system and is the
first level of intelligence in a smart system.
Each node controls a number of actuated springs and
dampers connected to neighbouring nodes as shown in
Fig. 3d. Each spring has a virtual strain (displacement)
sensor attached, e.g., a strain gauge sensor. Together with
the current stiffness parameter value, the spring energy can
be computed. It is assumed that the stiffness of each spring
can be varied between a lower and an upper boundary
[s
0
,s
1
]. A technically reasonable range is ± 50% around a
nominal stiffness value. The missing sensor values (spring
displacement and current stiffness) must be retrieved from
neighbour nodes.
The models of the actuator (relation of relative dis-
placement l l
0
and force f
i;j
between two nodes) and the
sensor (strain gauge signal S
i;j
) are given in Eqs. 1 and 2,
respectively.
f
i;j
ðl; s; dÞ¼k
0
sðl l
0
Þdu ð1Þ
S
i;j
ðf
i;j
Þ¼S
0
f
i;j
GF; with GF ¼ DR=ðeR
G
Þð2Þ
with s: stiffness parameter, k: a spring constant, d: damping
parameter, u: relative velocity between nodes i and j, R:
electrical resistance, GF: gauge factor, :strain.
The adaptivity of the robotic material requires percep-
tion based on sensors, interpretation of current and past
load situation (locally or globally or both) and the control
of the actuators. Besides the energy required to perform
computation and communication, the most prominent part
of the energy consumption during operation is caused by
the actuators. The change (increase or decrease) of the
stiffness of the springs commonly requires or releases
energy (e.g., thermoplastic materials require controlled
heating), or requiring energy in both directions, depending
on the actuator technology (e.g., optically excited bi-
stable materials)!
The entire computation and the entire agent processing
implementing the structure optimization discusse d in the
next Section is performed by the material-integrated ICT
network. There is no off-loading of parts of the computa-
tion to external computers.
5 Distributed self-optimization
The concept of self-adaptive robotic materials draws much
of its appeal from the fact that engineering design has to
decide which are the load cases or service conditions to
base design on, while reality typically knows no such
limitations: conventional techniques like shape, topology
(a)
(b) (c)
(d)
Fig. 3 a General network architecture of a robotic material =
sensorial ? actuated material b hardware ? software architecture
c functional decomposition: sensing, acting, processing $ data ?
instruction streams d node connectivity (physical) of controlled
actuators attached to neighbour nodes (shown are the delta vectors
relative to a node position)
Cluster Computing
123
or multi-material optimization all need to single out few or
even one set of boundary conditions to adapt to. Any real
world load-bearing structure may see different scenarios
including misuse, which might be impossible to capture
and define in the design stage. Such unforeseen loads may
in the worst case lead to immediate failure—in other cases,
they might just wear out a structure, causing it to fail
prematurely and/or in places determined by unexpected
local load histories. A smart adaptive material or structure
that is capable of adjusting its mechanical characteristics—
like stiffness—to external loads could actively manage this
local load history. It could protect areas already worn out
and distribute loads to others instead.
There are three different optimization algorithms that
are applied to materials of this kind and evaluated in this
work:
1. Global optimization;
2. Segmented optimization;
3. Neighbourhood optimization (originally proposed in
[21]),
summarized in Table 1. They are originally based on the
concept of multi-phase topology optimization (MPTO) and
simulated annealing used to optimize structures at design
time by reorganizing material parameter distributions [13].
The algorithms are reactive and iterative, in contrast to
classical mathematical minimization being commonly
functional, applying small changes step-wise to satisfy the
global goal and to minimize an error function. The global
algorithm is presented here for reference only as it requires
a central instance, although the action is performed locally
but based on a global observable. The neighbourhood
algorithm operates continuously without a defined termi-
nation, while the two other algorithms can terminate if they
satisfy a bounded error condition.
The segment and neighbourhood algorithms are suit-
able for distributed processing performing region explo-
ration and negotiation, characterized by self-* features
(self-adaptivity and robustness in case of sensor or node
failures and changes in the network connectivity). That
means, there are multiple instances operating on spatially
bounded data (local data) satisfying global objectives, e.g.,
minimizing the mechanical strain energy of a structure.
One major issue in distributed systems without a central
instance is the efficient collection and computation of
observation variables (observables) like the accumulated
strain energy of a region of nodes. This is discussed in the
next section. The optimization of the structure is performed
by modifying a target variable (control parameter), e.g., the
stiffness of the actuators, based on a comparison of a local
observable (e.g., the local node strain energy) with a global
or glocal (region) observable, e.g., the strain energy of
nodes in a region around the particular node or just a global
accumulated value.
The total strain energy U of a mechanical structure is the
integral of the strain tensor over the volume V of the
Table 1 Different optimization algorithms (simplified) for material/
structure adaptation are shown, with N: Set of nodes, S: Set of
segments S, U: total strain energy; : Strain; r: stress; x
i
: observation
variable of i-th node (element), x: some observation variable; X:
some accumulated observation variable; r
i
: optimization ratio param-
eter for i-th node, |X|: cardinality of a set X, R: some radius, D: some
discretization function; s
i
: stiffness of i-th node/element, [s
0
, s
1
]:
limits of stiffness, [r
0
, r
1
]: limits of optimization parameter, k
x
: some
problem specific mapping and scaling function with weight factor w;
|pos
1
-pos
2
j=1: neighbourhood relationship of elements or segments
Cluster Computing
123