Los DL se utilizan en inteligencia artificial para describir y razonar sobre los conceptos relevantes de un dominio de aplicación (conocido como conocimiento terminológico ). Es de particular importancia para proporcionar un formalismo lógico para las ontologías y la Web Semántica : el Lenguaje de Ontología Web (OWL) y sus perfiles se basan en DL. La aplicación más notable de los DL y el OWL es en la informática biomédica , donde el DL ayuda a codificar el conocimiento biomédico. [ cita requerida ]
Introducción
Una lógica descriptiva (DL) modela conceptos , roles e individuos , y sus relaciones.
El concepto de modelado fundamental de un DL es el axioma , una declaración lógica que relaciona roles y/o conceptos. [2] Esta es una diferencia clave con el paradigma de marcos , donde una especificación de marco declara y define completamente una clase. [2]
Nomenclatura
Terminología comparada con FOL y OWL
La comunidad de lógica descriptiva utiliza una terminología diferente a la de la comunidad de lógica de primer orden (FOL) para nociones operativamente equivalentes; a continuación se ofrecen algunos ejemplos. El lenguaje de ontología web (OWL) utiliza una terminología diferente, que también se muestra en la tabla siguiente.
Sinónimos
FOL
BÚHO
DESCARGAR
constante
individual
individual
predicado unario
clase
concepto
predicado binario
propiedad
role
Convención de nombres
Existen muchas variedades de lógicas de descripción y existe una convención de nomenclatura informal que describe de forma general los operadores permitidos. La expresividad está codificada en la etiqueta de una lógica que comienza con una de las siguientes lógicas básicas:
Lenguaje atributivo. Es el lenguaje base que permite:
Negación atómica (negación de nombres de conceptos que no aparecen en el lado izquierdo de los axiomas)
Intersección de conceptos
Restricciones universales
Cuantificación existencial limitada
El lenguaje de descripción basado en marcos, [3] permite:
Intersección de conceptos
Restricciones universales
Cuantificación existencial limitada
Restricción de roles
El lenguaje existencial, permite:
Intersección de conceptos
Restricciones existenciales (de cuantificación existencial completa)
Seguido de cualquiera de las siguientes extensiones:
Calificación existencial completa (restricciones existenciales que tienen rellenos distintos de ).
Concepto unión.
Negación de conceptos complejos.
Jerarquía de roles (subpropiedades: rdfs:subPropertyOf).
Axiomas de inclusión de roles complejos limitados; reflexividad e irreflexividad; disyunción de roles.
Nominales. (Clases enumeradas de restricciones de valor de objeto: owl:oneOf, owl:hasValue).
Propiedades inversas.
Restricciones de cardinalidad ( owl:cardinality, owl:maxCardinality), un caso especial de cuantificación de conteo
Restricciones de cardinalidad calificadas (disponibles en OWL 2, restricciones de cardinalidad que tienen rellenos distintos de ).
Uso de propiedades de tipos de datos, valores de datos o tipos de datos.
Excepciones
Algunos DL canónicos que no se ajustan exactamente a esta convención son:
Una abreviatura de con roles transitivos.
Un sublenguaje de , que se obtiene al no permitir la restricción de roles. Esto es equivalente a sin negación atómica.
Un sublenguaje de , que se obtiene al no permitir la cuantificación existencial limitada.
Alias para . [4]
Ejemplos
A modo de ejemplo, es una lógica de descripción de importancia central a partir de la cual se pueden hacer comparaciones con otras variedades. se permite simplemente con el complemento de cualquier concepto, no solo conceptos atómicos. se utiliza en lugar del equivalente .
Otro ejemplo es la lógica de descripción, que es la lógica más las restricciones de cardinalidad extendidas y los roles transitivos e inversos. Las convenciones de nombres no son puramente sistemáticas, por lo que se puede hacer referencia a la lógica como y también se utilizan otras abreviaturas cuando es posible.
El editor de ontología Protégé admite . Tres bases de terminología de informática biomédica principales, SNOMED CT , GALEN y GO, se pueden expresar en (con propiedades de función adicionales).
OWL 2 proporciona la expresividad de , OWL-DL se basa en , y para OWL-Lite es .
Historia
La lógica descriptiva recibió su nombre actual en la década de 1980. Antes se llamaba (cronológicamente): sistemas terminológicos y lenguajes conceptuales .
El primer sistema KR basado en DL fue KL-ONE (por Ronald J. Brachman y Schmolze, 1985). Durante los años 80 se desarrollaron otros sistemas basados en DL que utilizaban algoritmos de subsunción estructural [5], entre ellos KRYPTON (1983), LOOM (1987), BACK (1988), K-REP (1991) y CLASSIC (1991). Este enfoque presentaba DL con expresividad limitada pero razonamiento relativamente eficiente (tiempo polinomial). [5]
A principios de los años 90, la introducción de un nuevo paradigma de algoritmo basado en tablas permitió un razonamiento eficiente en un aprendizaje automático más expresivo. [5] Los sistemas basados en aprendizaje automático que utilizan estos algoritmos (como KRIS (1991)) muestran un rendimiento de razonamiento aceptable en problemas de inferencia típicos, aun cuando la complejidad del peor caso ya no es polinómica. [5]
A partir de mediados de los años 90, se crearon razonadores con un buen desempeño práctico en DL muy expresivo con una alta complejidad en el peor de los casos. [5] Algunos ejemplos de este período incluyen FaCT, [6] RACER (2001), CEL (2005) y KAON 2 (2005).
El grupo de trabajo OWL del W3C comenzó a trabajar en 2007 en un refinamiento y extensión de OWL. [14] En 2009, esto se completó con la emisión de la recomendación OWL2 . [15] OWL2 se basa en la lógica de descripción . [16] La experiencia práctica demostró que OWL DL carecía de varias características clave necesarias para modelar dominios complejos. [2]
Modelado
En el aprendizaje a distancia, se hace una distinción entre la denominada TBox (caja terminológica) y la ABox (caja asertiva). En general, la TBox contiene oraciones que describen jerarquías de conceptos (es decir, relaciones entre conceptos ), mientras que la ABox contiene oraciones básicas que indican a qué parte de la jerarquía pertenecen los individuos (es decir, relaciones entre individuos y conceptos). Por ejemplo, la afirmación:
Cada empleado es una persona
( 1 )
pertenece al TBox, mientras que la declaración:
Bob es un empleado
( 2 )
pertenece a la ABox.
Obsérvese que la distinción entre TBox y ABox no es significativa, en el mismo sentido en que los dos "tipos" de oraciones no reciben un tratamiento diferente en la lógica de primer orden (que incluye la mayor parte de la lógica de primer orden). Cuando se traduce a la lógica de primer orden, un axioma de subsunción como ( 1 ) es simplemente una restricción condicional a predicados unarios (conceptos) en los que solo aparecen variables. Claramente, una oración de esta forma no es privilegiada ni especial respecto de oraciones en las que solo aparecen constantes (valores "fundamentados") como ( 2 ).
Entonces, ¿por qué se introdujo la distinción? La razón principal es que la separación puede ser útil al describir y formular procedimientos de decisión para varios DL. Por ejemplo, un razonador podría procesar la TBox y la ABox por separado, en parte porque ciertos problemas de inferencia clave están vinculados a una pero no a la otra (la "clasificación" está relacionada con la TBox, la "verificación de instancias" con la ABox). Otro ejemplo es que la complejidad de la TBox puede afectar en gran medida el rendimiento de un procedimiento de decisión dado para un determinado DL, independientemente de la ABox. Por lo tanto, es útil tener una forma de hablar sobre esa parte específica de la base de conocimiento .
La razón secundaria es que la distinción puede tener sentido desde la perspectiva del modelador de la base de conocimiento. Es plausible distinguir entre nuestra concepción de los términos/conceptos en el mundo (axiomas de clase en el TBox) y manifestaciones particulares de esos términos/conceptos (afirmaciones de instancia en el ABox). En el ejemplo anterior: cuando la jerarquía dentro de una empresa es la misma en cada sucursal pero la asignación a los empleados es diferente en cada departamento (porque hay otras personas trabajando allí), tiene sentido reutilizar el TBox para diferentes sucursales que no utilicen el mismo ABox.
Existen dos características de la lógica descriptiva que no comparten la mayoría de los demás formalismos de descripción de datos: la lógica descriptiva no hace la suposición de nombre único (UNA, por sus siglas en inglés) ni la suposición de mundo cerrado (CWA, por sus siglas en inglés). No tener UNA significa que se puede permitir, mediante alguna inferencia, que dos conceptos con nombres diferentes sean equivalentes. No tener CWA, o más bien tener la suposición de mundo abierto (OWA, por sus siglas en inglés), significa que la falta de conocimiento de un hecho no implica inmediatamente el conocimiento de la negación de un hecho.
Descripción formal
Al igual que la lógica de primer orden (FOL), una sintaxis define qué conjuntos de símbolos son expresiones legales en una lógica de descripción, y la semántica determina el significado. A diferencia de la FOL, una DL puede tener varias variantes sintácticas bien conocidas. [8]
Sintaxis
La sintaxis de un miembro de la familia de lógica descriptiva se caracteriza por su definición recursiva, en la que se enuncian los constructores que se pueden utilizar para formar términos conceptuales. Algunos constructores están relacionados con los constructores lógicos en lógica de primer orden (FOL) como intersección o conjunción de conceptos, unión o disyunción de conceptos, negación o complemento de conceptos, restricción universal y restricción existencial . Otros constructores no tienen una construcción correspondiente en FOL incluyendo restricciones sobre roles por ejemplo, inverso, transitividad y funcionalidad.
Notación
Sean C y D conceptos, a y b individuos y R un rol.
Si a está R-relacionado con b, entonces b se llama R-sucesor de a.
Notación convencional
Símbolo
Descripción
Ejemplo
Leer
⊤ es un concepto especial que tiene a cada individuo como instancia
El lenguaje conceptual atributivo prototípico de DL con complementos ( ) fue introducido por Manfred Schmidt-Schauß y Gert Smolka en 1991, y es la base de muchos otros DL expresivos. [5] Las siguientes definiciones siguen el tratamiento de Baader et al. [5]
Sean , y , respectivamente, conjuntos de nombres de conceptos (también conocidos como conceptos atómicos ), nombres de roles y nombres de individuos (también conocidos como individuos , nominales u objetos ). Entonces, la tripleta ordenada ( , , ) es la signatura .
Conceptos
El conjunto de conceptos es el conjunto más pequeño tal que:
Los siguientes son conceptos :
( arriba es un concepto )
( abajo hay un concepto )
Cada (todos los conceptos atómicos son conceptos )
Si y son conceptos y entonces los siguientes son conceptos :
(la intersección de dos conceptos es un concepto )
(la unión de dos conceptos es un concepto )
(el complemento de un concepto es un concepto )
(la restricción universal de un concepto por un rol es un concepto )
(la restricción existencial de un concepto por un rol es un concepto )
Axiomas terminológicos
Una inclusión de concepto general (ICG) tiene la forma donde y son conceptos . Escriba cuando y . Una TBox es cualquier conjunto finito de ICG.
Axiomas asertivos
Una afirmación de concepto es una declaración de la forma donde y C es un concepto .
Una afirmación de rol es una declaración de la forma donde y R es un rol .
Un ABox es un conjunto finito de axiomas asertivos.
Base de conocimientos
Una base de conocimiento (KB) es un par ordenado para TBox y ABox .
Semántica
La semántica de las lógicas descriptivas se define interpretando los conceptos como conjuntos de individuos y los roles como conjuntos de pares ordenados de individuos. Normalmente, se supone que esos individuos pertenecen a un dominio determinado. La semántica de los conceptos y roles no atómicos se define entonces en términos de conceptos y roles atómicos. Esto se hace utilizando una definición recursiva similar a la sintaxis.
La lógica de descripción ALC
Las siguientes definiciones siguen el tratamiento de Baader et al. [5]
Una interpretación terminológica sobre una firma consiste en
Además de la capacidad de describir conceptos formalmente, también sería conveniente emplear la descripción de un conjunto de conceptos para hacer preguntas sobre los conceptos y las instancias descritas. Los problemas de decisión más comunes son preguntas básicas de tipo consulta de base de datos como la comprobación de instancias (es una instancia particular (miembro de un ABox) un miembro de un concepto dado) y la comprobación de relaciones (¿se cumple una relación/función entre dos instancias, en otras palabras, tiene a la propiedad b ), y las preguntas más globales de la base de datos como la subsunción (es un concepto un subconjunto de otro concepto) y la consistencia de conceptos (¿no hay contradicción entre las definiciones o la cadena de definiciones?). Cuantos más operadores se incluyan en una lógica y cuanto más complicada sea la TBox (que tenga ciclos, lo que permite que los conceptos no atómicos se incluyan entre sí), normalmente mayor será la complejidad computacional para cada uno de estos problemas (consulte el Navegador de complejidad de lógica de descripción para ver ejemplos).
Relación con otras lógicas
Lógica de primer orden
Muchos DL son fragmentos decidibles de lógica de primer orden (FOL) [5] y, por lo general, son fragmentos de lógica de dos variables o lógica protegida . Además, algunos DL tienen características que no están cubiertas en FOL; esto incluye dominios concretos (como números enteros o cadenas, que se pueden usar como rangos para roles como hasAge o hasName ) o un operador sobre roles para el cierre transitivo de ese rol. [5]
Lógica de descripción difusa
La lógica de descripción difusa combina la lógica difusa con las lógicas de descripción. Dado que muchos conceptos necesarios para los sistemas inteligentes carecen de límites bien definidos o de criterios de pertenencia definidos con precisión, se necesita la lógica difusa para abordar las nociones de vaguedad e imprecisión. Esto ofrece una motivación para una generalización de la lógica de descripción para abordar conceptos imprecisos y vagos.
Lógica modal
La lógica descriptiva está relacionada con la lógica modal (ML), pero se desarrolló independientemente de ella. [5] Muchas ML (pero no todas) son variantes sintácticas de la ML. [5]
En general, un objeto corresponde a un mundo posible , un concepto corresponde a una proposición modal y un cuantificador delimitado por un rol a un operador modal con ese rol como su relación de accesibilidad.
Las operaciones sobre roles (como composición, inversión, etc.) corresponden a las operaciones modales utilizadas en la lógica dinámica . [17]
La lógica de descripción temporal representa (y permite razonar) conceptos dependientes del tiempo y existen muchos enfoques diferentes para este problema. [18] Por ejemplo, una lógica de descripción podría combinarse con una lógica temporal modal como la lógica temporal lineal .
^ abc Grau, BC; Horrocks, I. ; Motik, B.; Parsia, B.; Patel-Schneider, PF; Sattler, U. (2008). "OWL 2: El siguiente paso para OWL" (PDF) . Semántica web: ciencia, servicios y agentes en la World Wide Web . 6 (4): 309–322. doi :10.1016/j.websem.2008.05.001.
^ Maier, Frederick; Mutharaju, Raghava; Hitzler, Pascal (2010). "Razonamiento distribuido con EL++ utilizando MapReduce". Publicaciones de la Facultad de Ingeniería y Ciencias de la Computación . Informe técnico, Kno.e.sis Center, Wright State University, Dayton, Ohio . Consultado el 24 de agosto de 2016 .
^ abcdefghijklmno Franz Baader, Ian Horrocks y Ulrike Sattler Capítulo 3 Lógica descriptiva . En Frank van Harmelen, Vladimir Lifschitz y Bruce Porter, editores, Handbook of Knowledge Representation . Elsevier, 2007.
^ ab Tsarkov, D.; Horrocks, I. (2006). "FaCT++ Description Logic Reasoner: System Description" (PDF) . Razonamiento automatizado . Apuntes de clase en informática. Vol. 4130. págs. 292–297. CiteSeerX 10.1.1.65.2672 . doi :10.1007/11814771_26. ISBN978-3-540-37187-8.
^ Sirin, E.; Parsia, B.; Grau, BC; Kalyanpur, A.; Katz, Y. (2007). "Pellet: Un razonador práctico de OWL-DL" (PDF) . Semántica web: ciencia, servicios y agentes en la World Wide Web . 5 (2): 51–53. doi :10.1016/j.websem.2007.03.004. S2CID 101226. Archivado desde el original (PDF) el 2007-06-27.
^ ab Ian Horrocks y Ulrike Sattler Razonamiento ontológico en la lógica de descripción SHOQ(D) , en Actas de la Decimoséptima Conferencia Conjunta Internacional sobre Inteligencia Artificial , 2001.
^ Fensel, D.; Van Harmelen, F.; Horrocks, I.; McGuinness, DL; Patel-Schneider, PF (2001). "OIL: Una infraestructura ontológica para la Web semántica". IEEE Intelligent Systems . 16 (2): 38–45. CiteSeerX 10.1.1.307.9456 . doi :10.1109/5254.920598.
^ Ian Horrocks y Peter F. Patel-Schneider La generación de DAML+OIL . En Actas del Taller de lógica de descripción de 2001 (DL 2001) , volumen 49 de CEUR <http://ceur-ws.org/>, páginas 30–35, 2001.
^ Carta del Grupo de Trabajo de Ontología Web, 2003
^ Nota de prensa del W3C, 2004
^ ab Horrocks, I. ; Patel-Schneider, Peter; van Harmelen, Frank (2003). "De SHIQ y RDF a OWL: la creación de un lenguaje de ontología web" (PDF) . Semántica web: ciencia, servicios y agentes en la World Wide Web . 1 : 7–26. CiteSeerX 10.1.1.2.7039 . doi :10.1016/j.websem.2003.07.001. S2CID 8277015.
^ Carta del Grupo de Trabajo OWL, 2007
^ Hitzler, Pascal ; Krötzsch, Markus; Parsia, Bijan; Patel-Schneider, Peter F.; Rudolph, Sebastian (27 de octubre de 2009). "OWL 2 Web Ontology Language Primer". OWL 2 Web Ontology Language . Consorcio World Wide Wed . Consultado el 14 de diciembre de 2010 .
^ Pascal Hitzler ; Markus Krötzsch; Sebastian Rudolph (25 de agosto de 2009). Fundamentos de las tecnologías de la Web semántica. CRCPress. ISBN978-1-4200-9050-5.
^ abcde Schild, Klaus. "Teoría de la correspondencia para lógicas terminológicas: Informe preliminar" (PDF) . Informe KIT 91. KIT-BACK . Consultado el 25 de octubre de 2012 .
^ Alessandro Artale y Enrico Franconi "Lógica de descripción temporal". En "Manual de razonamiento temporal en inteligencia artificial", 2005.
Lectura adicional
F. Baader, D. Calvanese, DL McGuinness, D. Nardi, PF Patel-Schneider: Manual de lógica descriptiva: teoría, implementación, aplicaciones . Cambridge University Press, Cambridge, Reino Unido, 2003. ISBN 0-521-78176-0
Ian Horrocks, Ulrike Sattler: Razonamiento ontológico en la lógica de descripción SHOQ(D), en Actas de la Decimoséptima Conferencia Conjunta Internacional sobre Inteligencia Artificial , 2001.
D. Fensel, F. van Harmelen, I. Horrocks, D. McGuinness y PF Patel-Schneider: OIL: Una infraestructura ontológica para la Web semántica. IEEE Intelligent Systems, 16(2):38-45, 2001.
Ian Horrocks y Peter F. Patel-Schneider: La generación de DAML+OIL. En Proceedings of the 2001 Description Logic Workshop (DL 2001) , volumen 49 de CEUR <http://ceur-ws.org/>, páginas 30–35, 2001.
Ian Horrocks, Peter F. Patel-Schneider y Frank van Harmelen: De SHIQ y RDF a OWL: La creación de un lenguaje de ontología web. Journal of Web Semantics, 1(1):7-26, 2003.
Bernardo Cuenca Grau, Ian Horrocks, Boris Motik, Bijan Parsia, Peter Patel-Schneider y Ulrike Sattler: OWL 2: El siguiente paso para OWL. Journal of Web Semantics, 6(4):309–322, noviembre de 2008.
Franz Baader, Ian Horrocks y Ulrike Sattler: Capítulo 3 Lógica descriptiva. En Frank van Harmelen, Vladimir Lifschitz y Bruce Porter, editores, Handbook of Knowledge Representation . Elsevier, 2007.
Alessandro Artale y Enrico Franconi: Lógica de descripción temporal. En Handbook of Temporal Reasoning in Artificial Intelligence, 2005.
Carta del Grupo de Trabajo de Ontología Web (WebONT). W3C, 2003
El Consorcio World Wide Web publica recomendaciones sobre RDF y OWL. Nota de prensa. W3C, 2004.
Carta del Grupo de Trabajo OWL. W3C, 2007.
OWL 2 conecta la Web del conocimiento con la Web de los datos. Nota de prensa. W3C, 2009.
Markus Krötzsch, František Simančík, Ian Horrocks : A Description Logic Primer. CoRR arXiv :1201.4089. 2012. Una primera introducción para lectores sin conocimientos formales de lógica.
Sebastian Rudolph: Fundamentos de la lógica descriptiva. En Reasoning Web: Semantic Technologies for the Web of Data, 7th International Summer School, volumen 6848 de Lecture Notes in Computer Science , páginas 76–136. Springer, 2011. (springerlink) Texto introductorio centrado en el modelado y la semántica formal. También incluye diapositivas.
Jens Lehmann : DL-Learner: Aprendizaje de conceptos en lógica de descripción, Journal of Machine Learning Research, 2009.
Franz Baader : Lógica descriptiva. En Reasoning Web: Semantic Technologies for Information Systems, 5th International Summer School, volumen 5689 de Lecture Notes in Computer Science, páginas 1–39. Springer, 2009. (springerlink) Texto introductorio centrado en el razonamiento y el diseño del lenguaje, y una reseña histórica ampliada.
Enrico Franconi: Introducción a la lógica descriptiva. Materiales del curso. Facultad de Informática, Universidad Libre de Bolzano, Italia, 2002. Diapositivas de clases y muchas referencias bibliográficas, algo anticuadas.
Ian Horrocks : Ontologías y la Web Semántica. Communications of the ACM , 51(12):58-67, diciembre de 2008. Una visión general de la representación del conocimiento en las tecnologías de la Web Semántica.
Descripción Taller de Lógica, página de inicio de la recopilación de información sobre la comunidad y archivo de las actas del taller.
Razonadores
Existen algunos razonadores semánticos que se ocupan de OWL y DL. Estos son algunos de los más populares:
CEL es un razonador basado en LISP de código abierto (licencia Apache 2.0).
Cerebra Engine era un razonador comercial basado en C++, adquirido en 2006 por webMethods.
FaCT++ es un razonador gratuito y de código abierto basado en C++.
KAON2 es un razonador gratuito (para uso no comercial) basado en Java que ofrece soporte de razonamiento rápido para ontologías OWL.
MSPASS es un razonador en C gratuito y de código abierto para numerosos modelos DL.
Pellet es un razonador comercial basado en Java con doble licencia (AGPL y propietario).
RacerPro de Racer Systems era un razonador comercial basado en Lisp (hay versiones de prueba gratuitas y licencias de investigación disponibles); hoy en día existe una versión de código abierto de RACER de los desarrolladores originales de la Universidad de Lübeck que utiliza la licencia BSD 3, y también una versión comercializada, todavía llamada RacerPro de Franz Inc.
Sim-DL es un razonador gratuito de código abierto basado en Java para el lenguaje ALCHQ. También proporciona una funcionalidad de medición de similitud entre conceptos. Para acceder a esta funcionalidad se puede utilizar un complemento Protégé.
Owlready2 es un paquete para programación orientada a ontologías en Python . Puede cargar ontologías OWL 2.0 como objetos Python, modificarlas, guardarlas y realizar razonamientos a través de HermiT (incluido). Owlready2 permite un acceso transparente a las ontologías OWL (al contrario de la API habitual basada en Java).
Editores
Protégé es un editor de ontología gratuito y de código abierto y un marco de base de conocimiento que puede utilizar razonadores DL que ofrecen la interfaz DIG como back-end para comprobaciones de consistencia.