SEMANTIC DATA ANALYTICS AS A
BASIS FOR ENERGY EFFICIENCY
SERVICES
Mag. Vikash Kumar, Dr. Anna Fensel
[email protected], [email protected]
Big data trends changing the ways energy infrastructures
operate
Semantic technologies in a nutshell
- What they are and what they are good for
Detailed example of FTW previous work in semantic data
processing
- Next generation of energy efficient buildings
Future directions
© FTW
- 2 -
Incerased adoption beyond the Web
Linked Open Data cloud counts
25 billion triples
Open government initiatives
BBC, Facebook, Google, Yahoo,
etc. use semantics
SPARQL becomes W3C
recommendation
Life science and other scientific
communities use ontologies
RDF, OWL become W3C
recommedations
Research field on ontologies and
semantics appears
Term „Semantic Web“ has been
„seeded“, Scientific American article, Tim
Berners-Lee et al.
Semantic Web Technology Evolution
2008
2001
2010
2004
Converting large volumes of raw data to smaller volumes of
„processed“ data
- Streaming, new data acquisition infrastructures
- Data modeling, mining, analysis, processing, distribution
- Complex event processing (e.g. in-house behaviour identification)
Data which is neither „free“ nor „open“
- How to store, discover and link it
- How to sell it
- How to define and communicate its quality / provenance
- How to get the stekeholders in the game, create marketplaces
Establishment of radically new B2B and B2C services
- „Tomorrow, your carton of milk will be on the Internet“ – J. da Silva,
referring to Internet of Things
• But how would the services look like?
From Semantic Web to Semantic World:
Challenges
Semantic data processing –
typical usage
Efficient modeling and information integration
- Flexibility in schema (ontology model) definition
- Scalable handling of data heterogeneous formats
- Data summarization and post-processed representation in semantic
formats
Efficient dissemination
- Providing a semantic e.g. SPARQL query endpoint – beyond
syntactic - access to the data (without this the data is difficult to
access, loose)
- Reports generation
- Opening the data as linked data
Efficient data analytics, reasoning and learning
- Prediction (e.g. on possible future QoS issues)
- Advanced querying (e.g. “who can help this user with this device?”)
- Rules and policies design, adaptation, evolution e.g. for automation
How does the next
generation of energy
SESAME and SESAME-S Projects
2 FFG COIN Projects (
sesame-s.ftw.at
)
SESAME – Semantic Smart Metering,
Enablers for Energy Efficiency (9’09-11’10)
- Prototype, proof of concepts, feasibility study
SESAME-S – Services for Energy
Efficiency (4’11-9’12)
- setting up usable smart home hardware, a
portal and repository
- organizing a test installation in real buildings:
in a school (Kirchdorf, Austria) and a factory
(Chernogolovka, Russia)
- developing specialized UIs and designing
mobile apps for the school use case
Consortium partner network of 6
organizations
Motivation: work with real buildings, real data
and real users
Technology:
Several Smart Meters
Sensors (e.g. light, temperature, humidity)
Smart plugs, for individual sockets
Multi-utility management
(i.e. electricity, heating)
Shutdown services for PCs
User interfaces and apps: Web, tablet,
smartphone (Android)
Data Acquisition Example: Installations
in Real Life Buildings
Data-Driven Management in the
Intelligent Building
Over 10 million of real life data triples collected
in the semantic repository
Light Alert Rule Pseudocode
IF
?ls is a :LightSensor AND
?ls :hasInstantMeasurement ?im AND
?im : hasMeasurement ?ms AND
?im : atInstant ?instant AND
?z = Float(?ms) AND
?hour = currentTime in hours AND
((?today = weekday AND (19:00 < ?currentTime < 06:00 )) OR (?today =
weekend)) AND
?z > 50 )
THEN
CONCAT((„UseCase-A-“+?instant) AS ?alertLight) AND
CONCAT((„Some unnecessary light device was left ON in the room at “ +
?instant) AS ?message)
CONSTRUCT {?alertLight :atInstant ?instant. ?alertLight :alertFromLightDevice ?ls. ?alertLight :hasAlertMessage ?message. }
WHERE {
BIND (now() AS ?date) BIND (day(?date) AS ?day) BIND (month(?date) AS ?month) BIND (year(?date) AS ?year) #######################
## Gaussian algorithm for day of the week ## # Subtract 1 to year if January or February BIND (IF(?month<=2, 1, 0) AS ?jf) BIND (?year - ?jf AS ?adjyear) #century and year
BIND (floor(?adjyear/100) as ?c) #?c is the century BIND (?adjyear - (?c * 100) as ?y) #?y is the year # x2 = (month + 9) % 12 + 1
BIND (?month+9 AS ?x1)
BIND (xsd:integer(?x1 - floor(?x1/12)*12 + 1) AS ?x2) # body of formula
BIND ((?day + floor((2.6 * ?x2) - 0.2) + ?y + floor(?y/4) + floor(?c/4) - (2 * ?c)) AS ?i) BIND (?i - (floor(?i/7) * 7) AS ?dayIDx) # ?i % 7
# ensure result is positive
BIND (xsd:integer(IF(?dayIDx < 0, ?dayIDx + 7 , ?dayIDx)) AS ?dayID) #######################
?ls a :LightSensor .
?ls :hasInstantMeasurement ?im .
?im :hasMeasurement ?ms .
?im :atInstant ?instant. BIND (xsd:float(?ms) as ?z) .
BIND (SUBSTR(xsd:string(?instant), 12, 2) as ?hour) .
{If the Light Sensor reading is greater than 50 on a weekend or on a weekday after 7 PM or before 6AM , send light sensor alert} {
BIND (IF(?z < "50.0"^^xsd:float, 0, (IF (?dayID > 5, 1, (IF((xsd:integer(?hour) > 19) ||(xsd:integer(?hour) < 7), 1, 0))))) as ?alert).}
#create an instant of alert appended with timestamp
BIND (IF(?alert = 0, 0, URI(CONCAT(xsd:string(:UseCase-A-), xsd:string(?instant) ))) AS ?alertLight).
BIND (CONCAT(xsd:string("Some unnecessary light device was left on in this room at "), xsd:string(?instant)) as ?message). }