Введение
Описательная логика (DL) — это семейство языков формального представления знаний. Многие DL обладают большей выразительностью, чем пропозициональная логика, но меньшей, чем логика первого порядка. В отличие от последней, основные задачи логического вывода для DL (как правило) разрешимы, и для этих задач разработаны и реализованы эффективные алгоритмы решения. Существуют общие, пространственные, временные, пространственно-временные и нечеткие описательные логики, и каждая из них характеризуется различным соотношением между выразительностью и сложностью логического вывода, поддерживая различные наборы математических конструкторов. DL используются в искусственном интеллекте для описания и рассуждений о релевантных понятиях предметной области (известных как терминологические знания). Они особенно важны для обеспечения логического формализма для онтологий и Семантической сети: язык онтологий Web (OWL) и его профили основаны на DL. Наиболее значимое применение DL и OWL – в биомедицинской информатике, где DL помогает в кодификации биомедицинских знаний.
Description logics (DL) are a family of formal knowledge representation languages. Many DLs are more expressive than propositional logic but less expressive than first order logic. In contrast to the latter, the core reasoning problems for DLs are (usually) decidable, and efficient decision procedures have been designed and implemented for these problems. There are general, spatial, temporal, spatiotemporal, and fuzzy description logics, and each description logic features a different balance between expressive power and reasoning complexity by supporting different sets of mathematical constructors. DLs are used in artificial intelligence to describe and reason about the relevant concepts of an application domain (known as terminological knowledge). It is of particular importance in providing a logical formalism for ontologies and the Semantic Web: the Web Ontology Language (OWL) and its profiles are based on DLs. The most notable application of DLs and OWL is in biomedical informatics where DL assists in the codification of biomedical knowledge.
Введение
Логика описаний (DL) моделирует концепции, роли и индивидуумы, а также их взаимосвязи. Фундаментальной концепцией моделирования в DL является аксиома — логическое утверждение, связывающее роли и/или концепции. Это ключевое отличие от парадигмы фреймов, где спецификация фрейма объявляет и полностью определяет класс. Поддерживает:
|
| ||
Пересечение концепций
Универсальные ограничения
Ограниченная экзистенциальная квантификация
Ограничения ролей
|
| ||
|
| ||Язык с полной экзистенциальной квалификацией поддерживает:
|
| ||
Пересечение концепций
Экзистенциальные ограничения (полной экзистенциальной квантификации)
|}
С последующими возможными расширениями:
Функциональные свойства, частный случай квантификации уникальности. Полная экзистенциальная квалификация (экзистенциальные ограничения, имеющие заполнители, отличные от ). Объединение концепций. Отрицание сложных концепций. Иерархия ролей (подсвойства: rdfs:subPropertyOf). Ограниченные аксиомы включения сложных ролей; рефлексивность и иррефлексивность; несовместимость ролей. Номиналы (перечисленные классы ограничений объектных значений: owl:oneOf, owl:hasValue). Обратные свойства. Ограничения кардинальности (owl:cardinality, owl:maxCardinality), частный случай квантификации подсчёта. Квалифицированные ограничения кардинальности (доступны в OWL 2, ограничения кардинальности, имеющие заполнители, отличные от ). Использование свойств данных, значений данных или типов данных.
|
| ||
Concept intersection
Universal restrictions
Limited existential quantification
Role restriction
|
| ||
|
| ||Existential language, allows:
|
| ||
Concept intersection
Existential restrictions (of full existential quantification)
|}
Followed by any of the following extensions:
Functional properties, a special case of uniqueness quantification. Full existential qualification (existential restrictions that have fillers other than ). Concept union. Complex concept negation. Role hierarchy (subproperties: rdfs:subPropertyOf). Limited complex role inclusion axioms; reflexivity and irreflexivity; role disjointness. Nominals. (Enumerated classes of object value restrictions: owl:oneOf, owl:hasValue). Inverse properties. Cardinality restrictions (owl:cardinality, owl:maxCardinality), a special case of counting quantification Qualified cardinality restrictions (available in OWL 2, cardinality restrictions that have fillers other than ). Use of datatype properties, data values or data types.
Примеры
В качестве примера, является центрально важной дескриптивной логикой, с помощью которой можно проводить сравнения с другими вариантами. Это просто с возможностью дополнения любого понятия, а не только атомарных. Вместо используется эквивалент .
В качестве еще одного примера, дескриптивная логика является логикой плюс расширенные ограничения кардинальности, а также транзитивные и обратные роли. Названия не всегда систематичны, поэтому логика может упоминаться как , и другие сокращения используются, где это возможно. Редактор онтологий Protégé поддерживает три основные терминологические базы биомедицинской информатики: SNOMED CT, GALEN и GO, которые могут быть выражены в (с дополнительными свойствами ролей). OWL 2 обеспечивает выразительность , OWL DL основан на , а для OWL Lite используется .
A further example, the description logic is the logic plus extended cardinality restrictions, and transitive and inverse roles. The naming conventions aren't purely systematic so that the logic might be referred to as and other abbreviations are also made where possible. The Protégé ontology editor supports Three major biomedical informatics terminology bases, SNOMED CT, GALEN, and GO, are expressible in (with additional role properties). OWL 2 provides the expressiveness of , OWL DL is based on , and for OWL Lite it is .
История
Описательная логика получила своё нынешнее название в 1980-х годах. До этого она называлась (хронологически): терминологические системы и языки понятий.
Представление знаний
Фреймы и семантические сети лишены формальной (основанной на логике) семантики. DL был впервые внедрён в системы представления знаний (KR) для устранения этого недостатка. RACER (2001), CEL (2005) и KAON 2 (2005). Логические решатели DL, такие как FaCT, FaCT++, реализуют метод аналитических таблиц. KAON2 реализован алгоритмами, которые приводят базу знаний SHIQ(D) к дизъюнктивной программе логического вывода.
Разумные
Существуют семантические решатели, работающие с OWL и DL. Вот некоторые из наиболее популярных:
CEL – это решатель с открытым исходным кодом, основанный на LISP (лицензия Apache 2.0). Cerebra Engine был коммерческим решателем на C++, приобретенным в 2006 году компанией webMethods. FaCT++ – это бесплатный решатель с открытым исходным кодом, основанный на C++. KAON2 – это бесплатный (для некоммерческого использования) решатель на Java, обеспечивающий быструю поддержку логического вывода для онтологий OWL. MSPASS – это бесплатный решатель на C с открытым исходным кодом для множества моделей DL. Pellet – это коммерческий решатель на Java с двойной лицензией (AGPL и проприетарной). RacerPro от Racer Systems был коммерческим решателем (доступны бесплатные пробные версии и исследовательские лицензии), основанным на LISP. В настоящее время существует версия RACER с открытым исходным кодом от оригинальных разработчиков из Любекского университета под лицензией BSD 3, а также коммерческая версия, по-прежнему называемая RacerPro от Franz Inc.
Sim DL – это бесплатный решатель с открытым исходным кодом на Java для языка ALCHQ. Он также предоставляет функциональность измерения сходства между понятиями. Для доступа к этой функциональности можно использовать плагин Protégé. HermiT – это решатель с открытым исходным кодом, основанный на методе "гипертабло". Он разработан Оксфордским университетом. Owlready2 – это пакет для онтологически ориентированного программирования на Python. Он позволяет загружать онтологии OWL 2.0 как объекты Python, изменять их, сохранять и выполнять логический вывод с помощью HermiT (включен). Owlready2 обеспечивает прозрачный доступ к онтологиям OWL (в отличие от обычных API на основе Java).
CEL is an open source LISP based reasoner (Apache 2.0 License). Cerebra Engine was a commercial C++ based reasoner, acquired in 2006 by webMethods. FaCT++ is a free open source C++ based reasoner. KAON2 is a free (for non commercial use) Java based reasoner, offering fast reasoning support for OWL ontologies. MSPASS is a free open source C reasoner for numerous DL models. Pellet is a dual licensed (AGPL and proprietary) commercial, Java based reasoner. RacerPro of Racer Systems was a commercial (free trials and research licenses are available) lisp based reasoner, today both an open source version of RACER exists from the original developers at Lübeck University using the BSD 3 license, and also a commercialized version, still named RacerPro by Franz Inc.
Sim DL is a free open source Java based reasoner for the language ALCHQ. It also provides a similarity measurement functionality between concepts. To access this functionality a Protégé plugin can be used. HermiT is an open source reasoner based on the "hypertableau" calculus. It is developed by the University of Oxford. Owlready2 is a package for ontology oriented programming in Python. It can load OWL 2.0 ontologies as Python objects, modify them, save them, and perform reasoning via HermiT (included). Owlready2 allows a transparent access to OWL ontologies (contrary to usual Java based API).
Редакторы
Protégé — это бесплатный редактор онтологий с открытым исходным кодом и платформа для создания баз знаний, способная использовать DL-рассуждающие машины с DIG-интерфейсом в качестве серверной части для проверки непротиворечивости. Это также браузер/редактор OWL, использующий стандартный веб-браузер в качестве основной парадигмы пользовательского интерфейса.
Интерфейсы
, стандартизированный XML-интерфейс к системам логического вывода, разработанный группой разработчиков DL Implementation Group (DIG). , Java-интерфейс и реализация для языка веб-онтологий, используемый для представления семантических веб-онтологий.