Checkable Domain Management with Ontology and Rules Atif Alvi and David J. Greaves Computer Laboratory University of Cambridge, UK

Slides:



Advertisements
Similar presentations
웹 서비스 개요.
Advertisements

1 DTI/EPSRC 7 th June 2005 Reacting to HCI Devices: Initial Work Using Resource Ontologies with RAVE Dr. Ian Grimstead Richard Potter BSc(Hons)
Reliable Scripting Using Push Logic Push Logic David Greaves, Daniel Gordon University of Cambridge Computer Laboratory Reliable Scripting.
SelfCon Foil no 1 Dynamic component systems 1. SelfCon Foil no 2 Pre-structured systems vs. dynamic component systems Pre-structured – emphasis on content.
Chronos: A Tool for Handling Temporal Ontologies in Protégé
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4 th Ed Chapter Chapter 4 Defining Your Own Classes.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4 th Ed Chapter Chapter 4 Defining Your Own Classes.
Enterprise Java Beans Welcome to the world of “Distributed System” Presented By: Sameer Nanda Date: 12/17/03.
AceMedia Personal content management in a mobile environment Jonathan Teh Motorola Labs.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
Architecture, Deployment Diagrams, Web Modeling Elizabeth Bigelow CS-15499C October 6, 2000.
The Architecture of Transaction Processing Systems
Course Instructor: Aisha Azeem
Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.
UNIT-V The MVC architecture and Struts Framework.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
An Intelligent Broker Architecture for Context-Aware Systems A PhD. Dissertation Proposal in Computer Science at the University of Maryland Baltimore County.
David Greaves - SENSORCOM08 - France. Using a.net Checkability Profile to Limit Interactions between Embedded Controllers. David Greaves, Atif Alvi Tope.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Using Runtime Information for Adapting Enterprise Java Beans Application Servers Mircea Trofin *, John Murphy ** Performance Engineering Laboratory * DCU,
Module 1: Introduction to C# Module 2: Variables and Data Types
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
Agent Model for Interaction with Semantic Web Services Ivo Mihailovic.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
A service-oriented middleware for building context-aware services Center for E-Business Technology Seoul National University Seoul, Korea Tao Gu, Hung.
Universiti Utara Malaysia Chapter 3 Introduction to ASP.NET 3.5.
PERVASIVE COMPUTING MIDDLEWARE BY SCHIELE, HANDTE, AND BECKER A Presentation by Nancy Shah.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
Aude Dufresne and Mohamed Rouatbi University of Montreal LICEF – CIRTA – MATI CANADA Learning Object Repositories Network (CRSNG) Ontologies, Applications.
Ontology-Driven Software Development with Protégé and OWL Holger Knublauch Stanford Medical Informatics Model-Driven Semantic Web.
Tracker data quality monitoring based on event display M.S. Mennea – G. Zito University & INFN Bari - Italy.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Cairngorm Microarchitecture. Pronunciation Cairngorm (kârn gôrm) n. yellowish-brown variety of quartz, especially found in Scottish Cairngorm mountain.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
 Objects versus Class  Three main concepts of OOP ◦ Encapsulation ◦ Inheritance ◦ Polymorphism  Method ◦ Parameterized ◦ Value-Returning.
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
Chapter 10: Classes and Data Abstraction. Objectives In this chapter, you will: Learn about classes Learn about private, protected, and public members.
Testing OO software. State Based Testing State machine: implementation-independent specification (model) of the dynamic behaviour of the system State:
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis.
Introduction to OOP CPS235: Introduction.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Chapter 10: Classes and Data Abstraction. Classes Object-oriented design (OOD): a problem solving methodology Objects: components of a solution Class:
Copyright © 2004, Keith D Swenson, All Rights Reserved. OASIS Asynchronous Service Access Protocol (ASAP) Tutorial Overview, OASIS ASAP TC May 4, 2004.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Semantic Interoperability in GIS N. L. Sarda Suman Somavarapu.
Implementation of Ontology Based Context-awareness Framework Ki-Chul Lee, Jung-Hoon Kim International Conference on Multimedia and Ubiquitous Engineering.
Versatile Information Systems, Inc International Semantic Web Conference An Application of Semantic Web Technologies to Situation.
Mathematical Service Matching Using Description Logic and OWL Kamelia Asadzadeh Manjili
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
Applications Active Web Documents Active Web Documents.
CompSci 280 S Introduction to Software Development
Knowledge Representation Part II Description Logic & Introduction to Protégé Jan Pettersen Nytun.
Android Studio, Android System Basics and Git
Angularjs Interview Questions and Answers By Hope Tutors.
Service-Oriented Computing: Semantics, Processes, Agents
Design and Implementation
Service-Oriented Computing: Semantics, Processes, Agents
Chapter 5 Architectural Design.
Presentation transcript:

Checkable Domain Management with Ontology and Rules Atif Alvi and David J. Greaves Computer Laboratory University of Cambridge, UK AutoHAN Systems Research Group Computer Laboratory University of Cambridge

ICIW 2008-Athens 2 Introduction The vision of Pervasive Computing: multitude of concurrent applications serving user needs imperceptibly Requirement: complete harmony Current technologies (UPnP, OSGi, WSDL etc) do not reflect code behaviour…

ICIW 2008-Athens 3 Introduction Consider a home scenario, or other closed domain (train, plane, factory, space station) Domain of Participation (DoP) Two applications requesting two different channels on the same display = feature interaction AutoHAN

ICIW 2008-Athens 4 Device Component Model

ICIW 2008-Athens 5 Our Approach Pebbles (passive) and bundles of rules (active, checkable) Code reflection through Pushlogic or.net CIL bytecode (not part of this presentation) Rehydration: automatic binding, running and reaping of bundles Bundles checked before admission to domain for compatibility, hence harmony!

ICIW 2008-Athens 6 Example Implementations

ICIW 2008-Athens 7 DoP Structure Physical device = logical collection of Pebbles & Bundles

ICIW 2008-Athens 8 Our Approach Ontology is a quadruple {C,I,P,R} In description logic (OWL DL) in Protege- OWL ontology server Enables semantic interoperability Holds SWRL rules for rehydration and reaping bundles (Ontology in addition to tuplecore data plane) Updated dynamically as components enter and leave the DoP

ICIW 2008-Athens 9 Classical Logical Inference Concerning humans in the domain hasWife(?man, ?woman) hasSpouse(?man, ?woman) hasSpouse(?woman, ?man) All married persons' hasSpouse property updated with the inferred names of their spouses Hence, rules can be made conditional on domain membership by representing the domain name as a concept and having the rules check whether things are related to that domain under the domain membership role relation

ICIW 2008-Athens 10 Ontology Novelty Previous uses of ontologies focused on context-awareness, reasoning, sharing knowledge, and control. Our system further uses ontology to provide lifetime management of all components, especially running bundles Plus usual advantages: classification, reasoning.

ICIW 2008-Athens 11 Ontology with Rules SWRL is rule language for the Semantic Web Superset of OWL DL Stored as part of ontology Horn-like rules in terms of OWL concepts antecedent consequent Parent(?x, ?y) Brother(?y, ?z) Uncle(?x, ?z) Declarative approach adapted for dynamic system Jess reasoner (Rete algorithm) automatically updates all results after any changes

ICIW 2008-Athens 12 Manual Binding—Long Lifetime Statics domainName: Buckingham Palace ownerName: Elizabeth frontDoorBell: tup:// livingRoom: Room 07 kitchen: Room 04 hallSmokeSensor: tup://

ICIW 2008-Athens 13 Automatically Recomputed Property Example: rule forming part of fire alarm service: Any domain with a smoke sensor and klaxon means it is protected against fire: hasSmokeSensor(?room, ?smokesensor) hasKlaxon(?room, ?klaxon) isProtected (?room, true) All rooms in Home domain having fire alarm and klaxon(s) have their isProtected property set to true All of the properties (roles) hasSmokeSensor, hasKlaxon and isProtected are defined with a domain and a range The domain is a class (concept) in the ontology while the range can be a class or a data type The first and second arguments of the properties represent any instances in that domain and range respectively.

ICIW 2008-Athens 14 Bundle Rehydration hasSmokeSensor(?room, ?sensor) hasKlaxon(?room, ?klaxon) isRunningRehydratedBundle(RoomAlarmService, ?room, ?klaxon) Is connected via the Protégé jslot Java interface; causes room alarm service to be run on an available platform In practice, multiple sensors and klaxons across the domain Need: universal quantification

ICIW 2008-Athens 15 Universal Quantification i) (forAll)Klaxons expands to actuals Klaxon1,Klaxon2,...,KlaxonN  Only one rehydration but bundle size increases due to replication ii) Main bundle rehydrated once, but a mini-bundle replicated for each instance of a quantified binding.  Bundle size is constant iii) Bundle does input/output through domain shared variables, e.g., Home#Klaxon#Sounding  Fan-out by variable sharing  Cannot handle per-instance state variables in bundle

ICIW 2008-Athens 16 Standing Rules Standing rules help provide domain harmony example: SystemMute(true) isKlaxon(?klaxon) isSounding(?klaxon, false) Owing to this rule, the system will not accept klaxon pebbles unless there is at least one bundle that implements this behaviour, or Any klaxon pebble must default to notSounding to be fully registered.

ICIW 2008-Athens 17 Universal Rehydration Rule Actually, don’t need detailed rules: a global rule is quantified and used where needed by ontology inference. isPresentInDomain(?entity, ?somedomain) hasCannedBundle(?entity, ?canned) canRehydrate(?canned, ?rehydrated) isActiveInDomain(?entity, ?somedomain) isRunningRehydratedBundle(?entity, ?rehydrated) Rule commands that any entity present in a home domain that is a rehydratable, canned rule bundle will become active in the domain, running the rehydrated form of the bundle.

ICIW 2008-Athens 18 SWRL Assertion versus Bundle Execution Where to draw the boundary between assertion and execution in SWRL rules? hasSmokeSensor(?room, ?sensor) hasKlaxon(?room, ?klaxon) isRunningRehydratedBundle(RoomAlarmService, ?room, ?klaxon) Room Alarm Service is very simple. Therefore, don’t use a bundle but implement directly in SWRL...

ICIW 2008-Athens 19 Assertion versus Bundle Execution 2 This can be implemented without bundle using a bi-implication consequent: hasSmokeSensor(?room, ?sensor) hasKlaxon(?room, ?klaxon) isSounding(?klaxon) isDetecting(?sensor) Macro-expand the bi-implication to a pair of antagonistic rules.  We can’t negate SWRL terms but we can flip complementary property values (true/false, off/on etc..)

ICIW 2008-Athens 20 Conclusion Prototype system for application launching, termination, resource description and binding Generic pervasive computing environment using part of a global ontology for domain specification and data about domain status Rehydration is a distinguishing feature The system is deployable as a secure, remotely-controllable system

ICIW 2008-Athens 21 Deploying a Canned Ontology in a Domain Can reuse a generic ontology in XML format (RDF/OWL) by rehydrating it for a particular domain Specialisation/rehydration of actuals needed. Can be performed by service companies Regional variations necessitate some translation despite a universal format (XML) XML tags and content can be substituted with domain-specific ones using library functions e.g. to Can be useful as intermediate step in ontology mapping procedures

ICIW 2008-Athens 22 Remote Control HCI important part of Pervasive Computing Previously in AutoHAN: tangible interfaces, end-user programming Protege-OWL editor provides user-friendly access Centralised ontology and rule base with remote control facility Multiple clients with client/server; can modify ontology

ICIW 2008-Athens 23 Security Each Protege ontology project has security settings in the form of Unix-like permissions In addition to any other security, like firewall etc Security settings (permissions) also present as a separate ontology Maybe suitable where users not first-class entities within the ontology, e.g., a Pizza ontology

ICIW 2008-Athens 24 Security Not suitable where users are part of the ontology, e.g., Spaceship Control, where Astronauts are users and also part of ontology  Should they be represented twice? What type of users need to modify ontology?  Maybe in time every user will be expert-enough