The Context OWL as a Content Language The ALCBI Language A Framework of Cooperative Agents with Implicit Support for Ontologies CIA 2006 Edinburgh, UK R. Cenk Erdur and İnanç Seylan Department of Computer Engineering Ege University September 13, 2006 The Context OWL as a Content Language Outline 1 The Context 2 OWL as a Content Language 3 The ALCBI Language The ALCBI Language The Context OWL as a Content Language The ALCBI Language Seagent A Java-based multi-agent programming framework for the Semantic Web. Based on FIPA (Abstract) Architecture. ACL: FIPA ACL, Content language: OWL. Supports a HTN planner (in its current form a task executor). Has predefined plans for (composite) semantic web service execution. Has a unit (plan) testing framework (SUnit) to enable the verification of task executions in a programmatic way. Test different type of queues, the outcomes of actions, etc. The Context OWL as a Content Language The ALCBI Language Motivation This work is a result of self-criticism. Basically, OWL is inadequate: to be used within an ACL based on speech-act theory where communication is explained in terms of the mental attitudes of agents, to reason about agents’ goals that lead to the selection, rational decomposition and execution of plans. OWL can describe the world agents are acting in but what about an agents’ subjective perception of this world? The Context OWL as a Content Language The ALCBI Language Inconsidered Problems We don’t consider in general: The problems of mental agency in an open, highly competetive system. Consider cooperative systems first. Mental agency vs. social agency. Formal verification of multi-agent systems. The Context OWL as a Content Language Outline 1 The Context 2 OWL as a Content Language 3 The ALCBI Language The ALCBI Language The Context OWL as a Content Language Schrödinger’s cat is alive FIPA SL ( a l i v e ( c a t : owner s c h r ö d i n g e r ) ) DAML+OIL <Cat r d f : ID =”s c h r ö d i n g e r s c a t ”> <owner>S c h r ö d i n g e r </owner> <s t a t u s >a l i v e </ s t a t u s > </Cat> The ALCBI Language The Context OWL as a Content Language Cats are animals FIPA SL ( f o r a l l ?x ( i m p l i e s ( cat ?x ) ( animal ?x ) ) ) DAML+OIL <daml : C l a s s r d f : ID=c a t > < r d f s : s u b C l a s s O f r d f : r e s o u r c e=#a n i m a l > </daml> The ALCBI Language The Context OWL as a Content Language All red things FIPA SL ( a l l ?x ( red ?x ) ) OWL (Zou) <o wl : C l a s s r d f : ID =”a l l r e d t h i n g ”> <o wl : i n t e r s e c t i o n O f r d f : p a r s e T y p e =”C o l l e c t i o n ”> <o wl : C l a s s r d f : a b o u t=”#Thing ”/> <o wl : R e s t r i c t i o n > <o wl : o n P r o p e r t y r d f : r e s o u r c e =”# h a s C o l o r ”/> <o wl : h a s V a l u e r d f : r e s o u r c e =”#Red”/> </o wl : R e s t r i c t i o n > </o wl : i n t e r s e c t i o n O f > </o wl : C l a s s > The ALCBI Language The Context OWL as a Content Language Steve believes X FIPA SL (B s t e v e X) DAML+OIL (Botelho and Zou) <P e r s o n r d f : ID =”s t e v e ”> <h a s P r o p o s i t i o n > < B e l i e f r d f : ID =”s t e v e b e l i e f 1 ”> < b e l i e v e >t r u e </ b e l i e v e > <S t a t e m e n t >X</S t a t e m e n t > </ B e l i e f > </ h a s P r o p o s i t i o n > </P e r s o n > The ALCBI Language The Context OWL as a Content Language The ALCBI Language Conclusions about OWL OWL is good for expressing ontological knowledge (class and individual declarations). One can not express mental attitudes in OWL’s model-theoretic semantics. It is not clear how mental attitudes could be conveniently composed. It does not allow referential expressions (SWRL and SPARQL). The Context OWL as a Content Language Outline 1 The Context 2 OWL as a Content Language 3 The ALCBI Language The ALCBI Language The Context OWL as a Content Language The ALCBI Language Our Methodology The difficulties are inherent from the expressivity limitations of the formalism of OWL, namely description logics. Our solution: We extend it with modal operators of belief and intention in order to express these mental attitudes in a multi-agent setting. We define the rational balance between intentions and beliefs as a set of axioms. We define agent interaction semantics by listing the axioms of communication. The Context OWL as a Content Language The ALCBI Language Formula Definition Let C and D be concepts, R a role name, x and y object names and m a (possibly empty) sequence of modal operators from {B, I } × AG. Then axioms of the form C = D (terminological), R(x, y ) and C (x) (assertional) are atomic formulas. If ϕ and ψ are formulas then so are mϕ, ¬ϕ, and ϕ ∧ ψ. The Context OWL as a Content Language The ALCBI Language Example Formulas Bi (Door (x) ∧ isOpen(x, ”true”)) - i believes that the door x is open. (Parent = Mother t Father ) ∧ Bspoiled (Parent v MoneySource) - Parent is a mother or a father, objectively. But a spoiled kid sees his/her parents as a money source. Ij (TurnOffAction(to4347) ∧ light(to4347, l654)) - j intends to do the turn off action on light l654. IhappyAgent (Person v Happy ) - happyAgent intends that everyone is happy. Bi (Agent(i) ∧ Tired(i)) ∧ Ii (Sleeping (i)) - Agent i believes that it is tired and intends to sleep. Bj Ii (Sleeping (i)) - Agent j believes that agent i intends to sleep. The Context OWL as a Content Language The ALCBI Language Frame Definition A frame for ALCBI is a pair F = (W , S) such that a) W is a set of worlds; and b) S is a collection of structures on W consisting of a) an accessibility relation Bi , which is a function Bi : W → 2W W and b) a function Ii : W → 22 for every i ∈ AG. The Context The ALCBI Language OWL as a Content Language Model Definition A model for ALCBI is a pair M = (F, KI ), where F is a frame for ALCBI and KI is a function over W . The K-interpretation KI consists of a domain ∆KI and an interpretation function ·KI . ∆KI is the union of non-empty domains ∆KI (w ) for all worlds w ∈ W . The interpretation function ·KI associates with each w a structure ·KI (w ) = ∆KI (w ) , RKI (w ) , C KI (w ) , X KI (w ) where ∆KI (w ) is the domain of w , RKI (w ) are binary relations on ∆KI (w ) , C KI (w ) subsets of ∆KI (w ) , and X KI (w ) are objects in ∆KI (w ) . The Context OWL as a Content Language The ALCBI Language Satisfiability Definition For a model M = (F, KI ) and a world w ∈ W , a formula ϕ is satisfied (written as |=M w ϕ) in the following way: |=M w |=M w |=M w |=M w |=M w |=M w C =D C (x) R(x, y ) Bi ϕ Ii ϕ ¬ϕ iff iff iff iff iff iff C KI (w ) = D KI (w ) x KI (w ) ∈ C KI (w ) (x KI (w ) , y KI (w ) ) ∈ R KI (w ) Bi (w ) ⊆ kϕkM kϕkM ∈ Ii (w ) 6|=M w ϕ The Context The ALCBI Language OWL as a Content Language Relations between Mental Attitudes From Herzig et. al. Ii ϕ Ii ϕ (Ii Bi ϕ ∧ Bi ¬ϕ) Bi Ii ϕ Bi ¬Ii ϕ → → ↔ ↔ ↔ Bi ¬ϕ Ii Bi ϕ Ii ϕ Ii ϕ ¬Ii ϕ (A1) (A2) (A3) (A4) (A5) The Context OWL as a Content Language The ALCBI Language Decidability of the Satisfiability Problem Modal operators are only allowed in front of terminological axioms, assertional axioms and other formulae. Decidability = DL component decidability & Modal component decidability The formula Ii ϕ is translated into multi-modal formula ¬I i,1 ¬(I i,2 ϕ ∧ I i,3 ¬ϕ) where Ii,1 , Ii,2 and Ii,3 are normal modal operators. Hence in such a translated frame, S contains the three accessibility relations for intention Ii, , Ii, , Ii, along with Bi for each i ∈ AG. The algorithm generates the set of possible worlds first. Then tests the satisfiability of DL axioms in each world. The Context OWL as a Content Language The ALCBI Language Current Position and Goals The ALCBI reasoner implementation is a front end to the Pellet DL reasoner (can use other DL reasoners through a Java interface). Code is 100% in Java. The reasoner is at alpha stage (literals, final syntax decisions, better documentation). The goal is to create generic plans for plan selection that uses the reasoner. Implement an application from the Linux package management domain. Integrate dynamic logic characteristics to formally represent actions and reason about them? The Context OWL as a Content Language The ALCBI Language Thank You You can download the ALCBI reasoner version 0.1a from: http://aegeants.ege.edu.tr/inanc/alcbi/