Page 265 - Artificial Intelligence for the Internet of Everything
P. 265
Compositional Models for Complex Systems 243
approach, where a component at one level is a system in its own right
regarded at a lower level of abstraction.
The organization or architecture of a system describes the interaction of
these components along channels of energy, mass, and information. In a
compositional system there is no escape from the issue of interdependence,
where system behavior depends on both component specifications and the
architecture that links them together. Although this may seem obvious, for
example, if we hook the gas tank to the exhaust system in a car we won’t go
anywhere, it is still worth making explicit. After all, the whole point is that
by arranging our system meaningfully we can achieve some benefit that
couldn’t be realized by the components in isolation!
Interdependence is neither good nor bad, it is merely adds to the com-
plexity, though that complexity may obscure failure modes that were easier
to discover in simpler systems. When those failures concern cardiology or
search and rescue, that is bad. Better formal representations can help to clar-
ify our thinking and identify problems before they arise. To borrow a phrase
from programming, we prefer to catch errors at “compile time” (i.e., in
design) rather than at “run time” (during operation).
Recursiveness in the engineering of complex systems is very well
known, as most systems are transformed into nearly decomposable subsys-
tems. Problem decomposition is used extensively in the design of engineered
systems and in design support systems (Gorti, Gupta, Kim, Sriram, & Wong,
1998; Sangiovanni-Vincentelli, Damm, & Passerone, 2012; Simon, 1991).
Decomposition is used to make the problem tractable to address complexity
and also to choose of appropriate technology and existing components to
address the needs of the designed system (Erens, 1996). These methods were
extensively used in the simulation of the design of engineered products for
composition of decomposed systems and components. Decisions on choices
of decomposition are made at different levels to those of the components at
the level of the leaves of the structure to compose a potentially viable system
satisfying the global requirements and constraints. However, during the pro-
cess of composition of the choices, there may be conflicts and undefined
behavior of the composed systems leading to revision of choices or the
requirements associated with the component. Supporting the design of
complex systems would require a foundational environment that supports
formal information structures and methods for decomposition and
composition.
This chapter will develop some small examples of how we might apply
CT-based analyses developed in computer science to analyze broader classes