74.419 artificial intelligence 2004 - description logics -
DESCRIPTION
74.419 Artificial Intelligence 2004 - Description Logics -. Background and Motivation for DL Relation between DL and FOPL (extensional Semantics) Example Definitions The horrible truth of DL T-Box, A-Box LOOM. Description Logics - Background. - PowerPoint PPT PresentationTRANSCRIPT
74.419 Artificial Intelligence 2004 - Description Logics -
• Background and Motivation for DL
• Relation between DL and FOPL (extensional Semantics)
• Example Definitions
• The horrible truth of DL
• T-Box, A-Box
• LOOM
Description Logics - Background
• Prevent flaws of Semantic Networks; provide clear semantics of nodes and links
• Derived from Inheritance Hierarchies (IS-A hierarchies; taxonomies; terminologies) and Frame Systems Concepts, Roles, Features
• Series of KR Languages starting with KL-ONE, later KL-TWO, LOOM, CLASSIC, ...
• Relate to FOPL via extensional semantics• Applied e.g. in Semantic Web Languages
(DAML+OIL)
Description Logics - Overview
• DL provide language constructs to define concepts.
• Concepts are interpreted as sets of individuals (extensional semantics).
• Concept definitions are linear expressions, combining concepts, roles, etc. to express constraints on the fillers of the concept.
• The IS-A hierarchy is reflected in the subsumption relation (super-class–sub-class relation), interpreted through set-inclusion.
Description Logics – Basic Elements
• Concepts• Roles• Features / Attributes• Definition of concepts • e.g. father(AND (Parent Man)), Biped (AND
(Animal (exactly 2 has-legs Legs)))• Primary / Atomic Concepts and Roles (not
completely defined)• Individual Concepts (define singletons)• Instances (entities)
Description Logics – Principles
Concepts• correspond to unary predicates or setsRoles• correspond to binary predicates / relationsFeatures• correspond to functionsConcept-Definitions• constrain filler-sets• composed of concepts, roles, role
restrictions using AND, OR, min-number, max-number etc.
• (Human (AND (Animal Biped Featherless))
Concept Definitions - Example
(defconcept Person primary-concept) I (Person) D
(defrole gender atomic-role) I (gender) DD
(defconcept Parent (AND Person (has-child.Person))I (Parent) I (Person) {xD | y: (x,y)
I (has-child) y I (Person) }
(defconcept Man (AND Person (gender.Male)) I (Man) I (Person) {xD | y: (x,y)
I(gender) y I (Male)}
Basic Architecture and Functions
• T-Box – terminological knowledge (definition of concepts)
• A-Box – assertional knowledge (statements about instances, concrete objects)
• Classification - insert concept into hierarchy based on it's description / definition
• TELL – insert knowledge into KB, e.g. define new concept or assert instance info
• ASK – querying KB, e.g. ask about existence of instance
LOOM - T-Box Example
T-Box (Concept Definitions)
(defconcept Person)(defrelation has-child :domain Person :range
Person)(defconcept Male)(defconcept Person-with-Sons
:is (:and Person (:at-least 1 has-child Male)))
(defconcept Person-with-Two-Sons:is (and Person (:exactly 2 has-child Male)))
LOOM - A-Box Example
A-Box (Assertions, Statements)
(tell (Person Fred))(tell (has-child Fred Sandy))(tell (Male Sandy))
LOOM - Example KB
(defconcept Person)(defrelation has-child :domain Person :range
Person)(defconcept Male)(defconcept Person-with-Sons
:is (:and Person (:at-least 1 has-child Male)))(defconcept Person-with-Two-Sons
:is (and Person (:exactly 2 has-child Male)))
(tell (Person Fred))(tell (has-child Fred Sandy))(tell (Male Sandy))
LOOM - Example Reasoning
(defconcept Person)(defrelation has-child :domain Person :range
Person)(defconcept Male)(defconcept Person-with-Sons
:is (:and Person (:at-least 1 has-child Male)))
...(tell (Person Fred))(tell (has-child Fred Sandy))(tell (Male Sandy))
Conclude:(Person-with-Sons Fred)
LOOM - Program: definitions
> (defconcept air-base :is-primitive (and Military-Installation (exactly 1 name) (at-least 1 runway-length) (exactly 1 service-branch)))
|C|AIR-BASE
> (defrelation name :range string) |R|NAME
> (defrelation runway-length :domain air-base :range number)
|R|RUNWAY-LENGTH
LOOM - Program: tell
> (tellm (create ab-1 air-base) (name ab-1 "Atlanta NAS") (runway-length ab-1 12050)))
Recognition changes at agent time 1: entry: AB-1 |C|MILITARY-INSTALLATION entry: AB-1 |C|AIR-BASE
> (tellm (create ab-2 air-base) (name ab-2 "Mainland NAS") (runway-length ab-2 9000))
Recognition changes at agent time 2: entry: AB-2 |C|MILITARY-INSTALLATION entry: AB-2 |C|AIR-BASE
infered
LOOM - Program: retrieve
> (retrieve ?p (air-base ?p)) ( |I| AB-1 |I| AB-2 )
> (retrieve ?p (and (air-base ?p) (for-some (?l) (and (runway-length ?p ?l)
(> ?l 10000)))))
( |I| AB-1 )
Instances AB-1, AB-2
Instance AB-1
References
• Ian Horrocks and Ulrike Sattler: Description Logics - Basics, Applications, and More
• J. Heinsohn et al.: An Empirical Analysis of Terminological Representation Systems, Artificial Intelligence 68(2):367-397, 1994
• LOOM (Bob McGregor, USC)
http://www.isi.edu/isd/LOOM/LOOM-HOME.html
see course web page for links