2. Agenda
Digital Enterprise Research Institute www.deri.ie
Motivation and objectives
Capability meta-model
Sensor capability model
Extended capability relations and distance
Searching algorithm
Conclusions
Enabling Networked Knowledge
2
3. Motivation & Objectives
Digital Enterprise Research Institute www.deri.ie
Sensor nodes have very dynamic features.
describe such feature offline and discover them online.
The number of similar sensor nodes in a sensor
network can be huge.
capture relations between sensor capabilities and
to use these relations to find specified replacement
capabilities among a large number of similar ones in time.
(for both design time sensor re-discovery or run time
system recovery)
Enabling Networked Knowledge
3
4. Capability Meta-Model
Digital Enterprise Research Institute www.deri.ie
Capability = ActionVerb + {(att1,val1), (att2,val2)…}
Action verb capability attribute
ontology ontology
Enabling Networked Knowledge
4
5. Capability Meta-Model
Digital Enterprise Research Institute www.deri.ie
Capability = ActionVerb + {(att1,val1), (att2,val2)…}
Action verb capability attribute
ontology ontology
Capability relations:
isVariantOf: subClassOf or instanceOf.
Extend: has more attributes.
Specify: has same attributes but at least one isVariantOf
relation for attribute values.
Enabling Networked Knowledge
5
6. Capability Meta-Model
Digital Enterprise Research Institute www.deri.ie
Capability = ActionVerb + {(att1,val1), (att2,val2)…}
Action verb capability attribute
ontology ontology
Capability relations:
isVariantOf: subClassOf or instanceOf.
Extend: has more attributes.
Specify: has same attributes but at least one isVariantOf
relation for attribute values.
Use these relations to build a hierarchy of
capabilities.
Enabling Networked Knowledge
6
7. Top Sensor Capability
Digital Enterprise Research Institute www.deri.ie
cap:Capability
rdfs:subclassof
sc:Sensor
Capability
Enabling Networked Knowledge
7
8. Top Sensor Capability
Digital Enterprise Research Institute www.deri.ie
cap:Capability
rdfs:subclassof
sc:Sensor sc:hasSurvivalPropterty
Capability
sc:hasMeasurementFunction
Enabling Networked Knowledge
8
9. Top Sensor Capability
Digital Enterprise Research Institute www.deri.ie
cap:Capability
ssn:Observation
rdfs:subclassof
sc:Sensor sc:hasSurvivalPropterty
ssn:Survival
Capability
Property
sc:hasMeasurementFunction
ssn:Operational
Property
sc:Measurement
Function
ssn:Measurement
Property
Enabling Networked Knowledge
9
10. Top Sensor Capability
Digital Enterprise Research Institute www.deri.ie
cap:Capability
ssn:Observation
rdfs:subclassof
sc:Sensor sc:hasSurvivalPropterty
ssn:Survival
Capability
Property
sc:hasMeasurementFunction
ssn:Operational
Property
sc:Measurement
Function rdfs:subclassof
rdfs:subclassof
ssn:Measurement
Property
rdfs:subclassof
rdfs:subclassof
ssn:Property
Enabling Networked Knowledge
10
11. Concrete Sensor Capability
Digital Enterprise Research Institute www.deri.ie
sc:Sensor1 a ssn:SensingDevice,sc:SensorCapability;
sc:hasMeasurementFunction sc:Thermal;
sc:hasMeasurementProperty sc:Mp_1;
sc:hasObservation sc:Ob_1.
sc:Ob_1 a ssn:Observation,cap:FetchedDynamicValue;
sc:hasEndpoint "www.deri.org/sensor1"^^xsd:URI;
sc:hasLifting "www.deri.org/lifting.xsd"^^xsd:URI];
sc:hasValue “?temp”.
sc:Mp_1 a sc:Accuracy, cap:ConditionalValue;
cap:hasCondition [ cap:hasElement "0.8"^^xsd:decimal;
cap:hasExpression [ cap:hasType “SPARQL”
cap:exprValue “Filter(?temp<10&&?temp>0)”]],
[ cap:hasElement "0.9"^^xsd:decimal;
cap:hasExpression [ cap:hasType “SPARQL”
cap:exprValue “Filter(?temp>10)”]].
Enabling Networked Knowledge
11
12. Concrete Sensor Capability
Digital Enterprise Research Institute www.deri.ie
sc:Sensor1 a ssn:SensingDevice,sc:SensorCapability;
sc:hasMeasurementFunction sc:Thermal;
sc:hasMeasurementProperty sc:Mp_1;
sc:hasObservation sc:Ob_1.
sc:Ob_1 a ssn:Observation,cap:FetchedDynamicValue;
sc:hasEndpoint "www.deri.org/sensor1"^^xsd:URI;
sc:hasLifting "www.deri.org/lifting.xsd"^^xsd:URI];
sc:hasValue “?temp”.
sc:Mp_1 a sc:Accuracy, cap:ConditionalValue;
cap:hasCondition [ cap:hasElement "0.8"^^xsd:decimal;
cap:hasExpression [ cap:hasType “SPARQL”
cap:exprValue “Filter(?temp<10&&?temp>0)”]],
[ cap:hasElement "0.9"^^xsd:decimal;
cap:hasExpression [ cap:hasType “SPARQL”
cap:exprValue “Filter(?temp>10)”]].
Enabling Networked Knowledge
12
13. Concrete Sensor Capability
Digital Enterprise Research Institute www.deri.ie
sc:Sensor1 a ssn:SensingDevice,sc:SensorCapability;
sc:hasMeasurementFunction sc:Thermal;
sc:hasMeasurementProperty sc:Mp_1;
sc:hasObservation sc:Ob_1.
sc:Ob_1 a ssn:Observation,cap:FetchedDynamicValue;
sc:hasEndpoint "www.deri.org/sensor1"^^xsd:URI;
sc:hasLifting "www.deri.org/lifting.xsd"^^xsd:URI];
sc:hasValue “?temp”.
sc:Mp_1 a sc:Accuracy, cap:ConditionalValue;
cap:hasCondition [ cap:hasElement "0.8"^^xsd:decimal;
cap:hasExpression [ cap:hasType “SPARQL”
cap:exprValue “Filter(?temp<10&&?temp>0)”]],
[ cap:hasElement "0.9"^^xsd:decimal;
cap:hasExpression [ cap:hasType “SPARQL”
cap:exprValue “Filter(?temp>10)”]].
Enabling Networked Knowledge
13
14. Extended Capability Relations
Digital Enterprise Research Institute www.deri.ie
specify, extend ⊂(C × C) extended relations ⊂(C× C × A)
For capabilities C1, C2 and attribute a in (A1 U A2)
a ϵ (A1∩A2)
C1(a)=C2(a) ShareSame
C1(a)≠C2(a) ShareDiffer
C1(a) isVariantOf C2(a) Specify
C2(a) isVariantOf C1(a) Generalize
Enabling Networked Knowledge
14
15. Extended Capability Relations
Digital Enterprise Research Institute www.deri.ie
specify, extend ⊂(C × C) extended relations ⊂(C× C × A)
For capabilities C1, C2 and attribute a in (A1 U A2)
a ϵ (A1∩A2) a ϵ (A1/A2) a ϵ (A2/A1)
C1(a)=C2(a) ShareSame
C1(a)≠C2(a) ShareDiffer
C1(a) isVariantOf C2(a) Specify
C2(a) isVariantOf C1(a) Generalize
DifferMore DifferLess
Enabling Networked Knowledge
15
16. Capability Graph
Digital Enterprise Research Institute www.deri.ie
Extended relations can be used to create a capability
graph
sc:TopSensor
Capability
Enabling Networked Knowledge
16
17. Capability Graph
Digital Enterprise Research Institute www.deri.ie
Extended relations can be used to create a capability
graph
sc:TopSensor
Capability
Secify a, b, c
sc:Sensor0
Enabling Networked Knowledge
17
18. Capability Graph
Digital Enterprise Research Institute www.deri.ie
Extended relations can be used to create a capability
graph
sc:TopSensor
Capability
Secify a, b, c
sc:Sensor0
Extend d Specify a;
Extend f
sc:Sensor2 Extend e sc:Sensor3
sc:Sensor1
Enabling Networked Knowledge
18
19. Capability Graph
Digital Enterprise Research Institute www.deri.ie
Extended relations can be used to create a capability
graph
sc:TopSensor
Capability
Secify a, b, c
sc:Sensor0
Extend d Specify a;
Extend f
sc:Sensor2 Extend e sc:Sensor3
Extend e; sc:Sensor1
DifferLess d;
Enabling Networked Knowledge
19
20. Capability Distance
Digital Enterprise Research Institute www.deri.ie
Distance in attributes:
DA= (DL+DM)/(SS+SD+SP+GE)
Distance in values:
DV=(SD+0.5*SS+0.5*GE)/SS
Enabling Networked Knowledge
20
21. Capability Distance
Digital Enterprise Research Institute www.deri.ie
Distance in attributes:
DA= (DL+DM)/(SS+SD+SP+GE)
Distance in values:
DV=(SD+0.5*SS+0.5*GE)/SS
Capability Distance:
D2=DA2+DV2
D
DA
0
DV
Enabling Networked Knowledge
21
22. Heuristic Searching
Digital Enterprise Research Institute www.deri.ie
Goal: find suitable replacement for a certain sensor
capability among a large sensor network in time.
Approach: Simulated Annealing based on capability
distance.
Guarantee to finish in given time span.
Cannot guarantee a complete result set.
Enabling Networked Knowledge
22
23. How does it work
Digital Enterprise Research Institute www.deri.ie
sc:target a sc:cap;
sc:hasMp …
sc:hasOp …
…
Enabling Networked Knowledge
23
24. How does it work
Digital Enterprise Research Institute www.deri.ie
sc:target a sc:cap; t=5
t=3 1. Set initial distance d as temperature,
sc:hasMp …
add current node into accepted nodes.
sc:hasOp …
…
Enabling Networked Knowledge
24
25. How does it work
Digital Enterprise Research Institute www.deri.ie
sc:target a sc:cap; t=5
t=3 1. Set initial distance d as temperature,
sc:hasMp …
add current node into accepted nodes.
sc:hasOp …
2. Get distance d’ of unvisited neighbors
…
of current node.
d=6
d = 10
d=3
Enabling Networked Knowledge
25
26. How does it work
Digital Enterprise Research Institute www.deri.ie
sc:target a sc:cap; t=5
t=3 1. Set initial distance d as temperature,
sc:hasMp …
add current node into accepted nodes.
sc:hasOp …
2. Get distance d’ of unvisited neighbors
…
of current node.
d=6 3. If d’<t, accept neighbor, else accept
with a probability P(t), label neighbor as
d = 10 visited, remove current node from
d=3
accepted nodes.
4. Repeat 2-3 for all accepted nodes for
several iterations.
Enabling Networked Knowledge
26
27. How does it work
Digital Enterprise Research Institute www.deri.ie
sc:target a sc:cap; t=5
t=3 1. Set initial distance d as temperature,
sc:hasMp …
add current node into accepted nodes.
sc:hasOp …
2. Get distance d’ of unvisited neighbors
…
of current node.
d=6 3. If d’<t, accept neighbor, else accept
with a probability P(t), label neighbor as
d = 10 visited, remove current node from
d=3
accepted nodes.
4. Repeat 2-3 for all accepted nodes for
several iterations.
5. Decrease temperature d according to
d=2 schedule, repeat 2-5 till temperature
falls to zero or no more unvisited
nodes.
6. Return accepted nodes as results.
Enabling Networked Knowledge
27
28. Conclusions & Future Work
Digital Enterprise Research Institute www.deri.ie
In this paper we:
demonstrated how sensor capabilities can be modeled in a
dynamic and related way,
proposed an heuristic search algorithm to find
replacement for sensor capabilities.
Future work:
Complete algorithms and test the performance.
Develop algorithms for soft constraints or partial matches.
Enabling Networked Knowledge
28