ontological logic programming

Post on 12-Feb-2016

33 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Ontological Logic Programming. by Murat Sensoy , Geeth de Mel, Wamberto Vasconcelos and Timothy J. Norman Computing Science, University of Aberdeen, UK. Outline. Introduction Motivation OLP Architecture A Case Study and Performance Conclusions. Logic Programming. - PowerPoint PPT Presentation

TRANSCRIPT

1

Ontological Logic Programming

byMurat Sensoy, Geeth de Mel, Wamberto Vasconcelos

and Timothy J. NormanComputing Science, University of Aberdeen, UK

2

Outline

• Introduction• Motivation• OLP Architecture• A Case Study and Performance• Conclusions

3

Logic Programming

• Based on First-Order Logic (FOL)• Best-known example: Prolog• Adopts closed world semantics – negation by failure

• Write down a logical description of problem using clauses, predicates, and terms. Then, let computer searches for the answer.

• Predicates can have arbitrary arity.

4

Web Ontology Language (OWL)• An ontology is a formal conceptualization of the world• OWL is based on Description Logics (DLs)• Adopts Open World Semantics• Describe a domain using individuals, classes/1, and

properties/2. • Terms are referred to by Unique Resource Identifiers (URIs).

– The Wine concept is referred to in the W3C wine ontology by http://www.w3.org/TR/2003/PR-owl-guide-20031209/wine#WineIn short vin:Wine

There are highly optimized DL reasoners for OWL-based Ontologies (e.g., Pellet, TrOWL).

5

Motivation

Logic Programming+ Very Expressive+ Close World Reasoning through Negation by Failure+ Widely used- Not Decidable-Requires encoding of domain knowledge into Logic Programs-Hard to adopt Open World Reasoning-Lack of widely accepted standards for knowledge representation

Ontological Reasoning+ Decidable Reasoning with efficient reasoners+ Open World Reasoning+ Widely Accepted standards to represent domain knowledge- Restricted Expressiveness- Hard to accommodate Closed World Reasoning-- Used by relatively smaller communityOL

P

Ontological Logic Programming(OLP)

Seamlessly integrates Logic Programming with Ontological Reasoning

6

OLP Architecture

availableWine(X):- vin:Wine(X), not(soldOut(X)).

availableWine(?).

vin:Wine(?) vin:Wine(vin:GaryFarrellMerlot)vin:Wine(vin:KalinCellarsSemillon)vin:Wine(vin:StonleighSauvignon)

not(soldOut(vin:GaryFarrellMerlot))

7

OLP IDE

8

Semantic Knowledge and OLP

OLP may be used to modify semantic knowledge base by• Importing ontologies

– %import or import_ontology(uri)

• Addition and removal of statements– assert(istar:'Sensor'(olp:x)) – retract(istar:'Sensor'(olp:x))

• Addition and removal of individuals– create_individual(uni:murat), assert(uni:'Researcher'(uni:murat))– remove_individual(uni:murat)

• Addition and removal of concepts– create_concept(name,{eq|sub},desc).

9

Supported DL Reasoning Services

• Ontology consistency checking• Concept subsumption/equivalence checking • Instance checking• Concept satisfiability checking

10

OLP Provides

• By enhancing logic programming with ontological reasoning, OLP offers the following advantages:– Expressiveness: Combines the expressiveness of DL

and LP.– Convenience: Many researchers and developers are

more familiar with LP languages than with DL formalisms.

– Reuse of Domain Knowledge– Conciseness

Case-study: Asset-Task Matchmaking• We address the Intelligence, Surveillance,

Target Acquisition and Reconnaissance (ISTAR) domain.

11

Tasks have requirements that are satisfied by the capabilities of assets.

A task instance example

ISTAR ontology

Deployable ConfigurationsA deployable configuration for a task is• a minimum set of resource types that satisfies the requirements of the task• removal of any resource type from this set will leave at least one

requirement unsatisfied.

Operational Requirements: - Constant surveillance

Global HawkReaper

ReaperDaylightTV

Global HawkEOCamera IRCamera

Global Hawk

EOCamera IRCamera DaylightTV

Intelligence Requirements:- Imagery Intelligence

12

Matchmaking Mechanism in OLP

13

Find a deployable platform.

Find sensors to attach to this platform

Matchmaking Mechanism in OLP

14

P is an instance of a platform

P provides all operational capabilities required by

task T.

Here, nested negation by failure is used for forall.

Matchmaking Mechanism in OLP

15

We start with an empty set of sensors, then add a sensor X to this set if1. P mounts X.2. The capabilities provided

by the sensor is required and not yet provided by the existing sensors in the list.

Matchmaking Mechanism in OLP

16

Matchmaking Performance OLP v1.0 is implemented using Java, tuProlog as

Prolog engine and Pellet as DL reasoner. • Exhaustive Search– We have empirically compared a matchmaking

algorithm implemented in OLP with an exhaustive search approach from the literature.

17

Domain knowledge is exploited to reduce

search space.

18

OLP Performance

• Modes of OLP– Offline: every thing in ontology is loaded into

Prolog KB. DL reasoner is not accessed during execution.

– Online: Nothing from ontology is loaded into Prolog KB. DL reasoner is accessed during execution.

• We extended wine ontology by adding different number of new concepts and axioms.

19

Load time (offline mode) vs. Reasoner access time (online mode)

DL reasoner is heavily accessed during online mode. DL reasoner may be accessed for the same axioms, e.g., during backtracking.Can caching improve the performance?

20

Load time (offline mode) vs. Reasoner access time (online-cached)

Caching improves reasoner access time dramatically

21

Conclusions

• We have proposed OLP, a novel tool that combines Logic Programming with Ontological Reasoning.

• Software agents can transparently use ontological knowledge and reasoning within logic programs.

• Interpretation of ontological predicates delegated to an ontology reasoner during the execution of logic programs.

• Agents can take full advantage of both ontological reasoning and logic programming without compromise in expressiveness.OLP is available at http://olp-api.sourceforge.net

OLP v2.0 is on the way. It can integrate various DL reasoners.

Thank you…

Questions?

top related