2.6 Contextual Actions
Actions are simply graph changes such as new arcs
added to the graph. These added arcs grow the context
and are the elemental constituents of the emerging
context.
A contextual action Γ specifies the exact paths to
subject and object and supplies the predicate used to
insert or remove an arc into the context graph.
Let ∏ represent the union of all contextual
constraints
to
∏
=
⋃
⋃…⋃
. (16)
Let Γ
∏
be the contextual action where p
represents the predicate to be added and
and
represent the path to the subject and object within
∏
Γ
∏
= (
,p
,
) . (17)
Example Contextual Action: Assign WorkOrder
to Operator.
Γ
∏
= (
,
) . (18)
In the above:
Subject path:
Predicate:
Object path:
From figure 1, its clear that both constraint paths
exist in and therefore the action can be performed.
The new arc can be inserted at the location specified
in (18). If multiple matches are found, then the system
may simply pick one. If none are found, the operation
may not be performed or be deferred to a human.
3 APPLICATIONS
We believe that the technique above is generally
applicable to any software-defined context.
We have shown an example of operator
assignment based on discovered context. This can be
extended to the context discovery of any interacting
entities whose relationships and attributes are
modeled as a graph.
Context discovery and modeling in large graphs
such as the Internet of things (IoT) poses special
challenges (Pereira et al., 2013). The IoT is a very
large graph, possibly in the tens or hundreds of
billions of entities and quickly finding the context of
any entity or between any two entities is critical to
scalability.
In addition, many IoT entities are likely to lose
connectivity to the Internet but need to interact with
other entities that they are connected to on a local or
ad-hoc network.
Our approach enables us to emerge context in a
decentralized manner by focusing on the context of
any interacting entities and deal with the challenge of
huge graphs by reducing the context to a small
subgraph as described in section 2.
Entities can maintain a graph model of their
attributes and relationships and let the context emerge
naturally over their lifetime. This enables them to act
independently without the need for a central
repository that aggregates and serves as the authority
for context of billions of entities.
4 RELATED WORK
Goals in the IoT and the Industrial Internet space are
related to events. Detecting events in real time is
another major challenge for context-aware
frameworks in the IoT paradigm (Pereira et. al, 2013).
The graph of entities and their relations is
continuously and dynamically updated as the users of
the system interact with the graph triggered by sensor
events or time-based events.
Nguyen et. al. address this challenge using a
context-aware framework that uses a form of context
graph. They introduce the notion of a graph made of
context nodes and action nodes: ‘the basic idea of
contextual graph relies on the fact that past contexts
can be remembered and adapted to solve the current
context. The context is managed to organize in the
graph type. In the contextual graph, rather than
creating a solution from scratch, the contexts similar
to the current context are retrieved from memory. The
best match is selected and adapted to fit the current
context based on the differences and similarities
between the two contexts.’ (Nguyen et. al., 2008.)
Their approach is also focused on the paths going
through a node to discover context. We improve
upon Nguyen et al. by further constraining the model
by introducing the definitions of context goal,
constraints, and common context.
Fifth International Symposium on Business Modeling and Software Design
216