Problem Statement
The computing model should enable the system to adapt on the fly to
system changes and thus achieve the system goal. For this the components
would attempt to satisfy their individual goals by opportunistically
interacting with other suitable components.In such an opportunistic
interaction the two interacting components would need to be able to
understand both the context of the interaction and the interaction
contents itself. This implies the need for semantic interactions between
system components.
In
addition to meaningful interactions the model should be able to adapt to
system changes. This could be achieved by employing a loosely coupled,
asynchronous model where all the processing is local to a component. The
local processing allows the system to seamlessly adapt to system changes.
Approach
In our model, a system is composed of a dynamic set of components that
come together to achieve their individual goals, but put together achieve
one or more system goals. This set of components is dynamic (one or more
components could enter/leave the system architecture) to accommodate
system changes.
System Overview
Hence the system goal (and hence its composition) is rises
incrementally from the set of “available” components’ goal(s).
Each components provides a descriptive “profile”
that describes a component’s capabilities, requirements and goal(s).
This profile is evaluated by other components (“rules”) to ascertain
whether any of the component’s services are required or requirements can
be satisfied. If the profile satisfies a candidate component’s tests
then the two components initiate an interaction that will not only further
their individual goals but also incrementally satisfy the system goal.
A
component is composed of the component’s
logic and a Rule Base, Profile(s), a Rule evaluation Engine, communication
module & controller. The communication module facilitates interactions
with other components. The Rule evaluation engine, accepts the Profiles of
candidate components and evaluates their match using the Rule base. The
Rule base contains an ordered set of rules that enable the component to
decide whether interacting with a candidate component furthers its
individual goals. The controller, as the name suggests, coordinates all
the actions that enable the component to function as a part of the
model. |