5. Consolidaci´ on de ontolog´ıas Datalog ±
5.3. Relaci´ on entre los propiedades y la construcci´ on: Teorema de Representaci´ on
Hasta el momento hemos introducido las propiedades que se esperan de un operador de consolidaci´on de ontolog´ıas Datalog±, presentando adem´as una construcci´on posible para tal operador basada en el uso de Kernel Contraction. Estamos listos entonces para establecer la relaci´on entre el conjunto de postulados para operadores de consolidaci´on de
ontolog´ıas Datalog± y el operador de consolidaci´on presentado. En lo que sigue denotare- mos con Υρ,%un operador de consolidaci´on definido como en la Definici´on 5.6 dondeρy %
corresponden a funciones arbitrarias de incisi´on en restricciones y datos, respectivamente.
Teorema 5.1 (Teorema de Representaci´on) El operadorΥρ,%es un operador de con-
solidaci´on de ontolog´ıas Datalog± basado en Kernel Contraction para una ontolog´ıa Datalog± KB si y s´olo si satisface Inclusi´on, Exito para Restricciones,´ Exito pa-´ ra Datos, Vacuidad para Restricciones, Vacuidad para Datos, Optimalidad Local para Restricciones y Optimalidad Local para Datos.
Demostraci´on: ver Ap´endice A [p´agina 199].
Es importante remarcar que, si bien no requerimos expl´ıcitamente que un operador de consolidaci´on de ontolog´ıas Datalog± produzca una ontolog´ıa consolidada coherente y consistente, del Teorema 5.1 se sigue que un operador como el presentado en la Defini- ci´on 5.6 satisface las requerimientos esperados de Coherencia y Consistencia.
Corolario 5.6 (Corolario del Teorema 5.1) El operador Υρ,% satisface Coherencia
y Consistencia.
Demostraci´on: ver Ap´endice A [p´agina 204].
El Corolario 5.6 dice que el operador de consolidaci´on basado en Kernel Contraction como es introducido en la Definici´on 5.6 computa una ontolog´ıa consolidada coherente y consistente.
5.4.
Ejemplo completo de consolidaci´on de ontolog´ıas
Datalog
±En las secciones previas hemos introducido una construcci´on posible para un opera- dor de consolidaci´on de ontolog´ıas Datalog±. A continuaci´on presentaremos un ejemplo completo (inspirado en uno similar introducido en [LMS12]) donde se detalla tal proceso.
Ejemplo 5.5 (Consolidaci´on de ontolog´ıas Datalog±) Supongamos que tenemos la siguiente ontolog´ıa KB (incoherente e inconsistente), la cual expresa la informaci´on que hemos podido recabar acerca del funcionamiento de cierta empresa.
KB =
D: {a1 :jef e(walter), a2 :supervisa(walter, jesse),
a3 :toma desiciones(walter), a4 :toma desiciones(jesse),
a5 :supervisa(skyler, walter), a6 :empleado(walter),
a7 :a cargo de(jesse, distribution),
a8 :a cargo de(walter, cooking)
a9 :en huelga(mike)}
ΣN C : {τ1 :obedece ordenes(X)∧toma desiciones(X)→ ⊥,
τ2 :supervisa(Y, X)∧supervisor(X)→ ⊥,
τ3 :ausente(X)∧en huelga(X)→ ⊥}
ΣE : {ν1 :a cargo de(X, Y)∧a cargo de(X, Y0)→Y =Y0}
ΣT : {σ1 :empleado(X)→es supervisado(X),
σ2 :es supervisado(X)→obedece ordenes(X),
σ3 :jef e(X)→obtiene ganancias(X),
σ4 :supervisa(Y, X)→supervisor(Y),
σ5 :supervisa(Y, X)→empleado(X),
σ6 :es supervisado(X)→toma desiciones(X),
σ7 :es supervisado(X)→tiene tarea(X),
σ8 :tiene tarea(X)→recibe paga(X),
σ9 :tiene tarea(X)→ ∃Y a cargo de(X, Y),
σ10 :en huelga(X)→ausente(X)}
Ahora, para comenzar con la primer parte del proceso de consolidaci´on, esto es, con la resoluci´on de incoherencias por medio de hacer el conjunto ΣT satisfacible, obtenemos los kernels de dependencias paraKB:
A continuaci´on, debemos establecer el orden entre estas TGDs. Como hemos explicado previamente en la Secci´on 5.1.1, en nuestra definici´on de operadores de consolidaci´on no introducimos una relaci´onl particular, sino que usamos una relaci´on general abstracta. Sin embargo, para el presente ejemplo asumiremos que en el entorno de aplicaci´on parti- cular en el que se est´an usando los operadores tal relaci´on es usada para modelar cuanta informaci´on se pierde cuando borramos alguna f´ormula en la ontolog´ıa (midiendo esto como la cantidad de ´atomos que no pueden ser inferidos luego de la remoci´on), y la plau- sibilidad asociada a las f´ormulas como desempate entre aquellas f´ormulas que inducen la misma p´erdida de ´atomos. Remarcamos, de todas formas, que esto es un simple ejemplo de c´omo la relaci´on l puede ser definida; relaciones m´as complejas pueden ser usadas si las mismas son necesarias en entornos de aplicaci´on particulares, ya que los operadores son definidos de forma independiente a la relaci´on particular usada para seleccionar f´ormulas para remoci´on. Comenzamos mostrando los ´atomos perdidos cuando se remueven TGDs, y luego introducimos los ordenes de preferencia entre las mismas.
´
Atomos que ya no pueden ser inferidos luego de remover σ2 :
{obedece ordenes(walter), obedece ordenes(jesse)}.
´
Atomos que ya no pueden ser inferidos luego de remover σ6 : ninguno.
´
Atomos que ya no pueden ser inferidos luego de remover σ10:{ausente(mike)}.
Luego, el orden para estas TGDs es σ6 lσ10lσ2. El comportamiento de la funci´on de
incisi´on en restricciones es el siguiente:
ρ({σ2, σ6}) ={σ6}
ρ({σ10}) = {σ10}
Por lo tanto, ahora podemos hacer ΣT satisfacible (y por lo tanto KB coherente) elimi- nando del mismo las dos TGDs seleccionadas por ρ. A continuaci´on, comienza la segunda parte del proceso de consolidaci´on: la resoluci´on de inconsistencias. Como fue explica- do previamente, para esta parte el operador considera solamente TGDs que efectiva- mente pertenecer´an a la ontolog´ıa final consolidada. Para el ejemplo en cuesti´on esto es Σ0T = ΣT \ {σ6, σ10}. A partir de aqu´ı sea KB? = (D,Σ0); basado en KB? calculamos los
⊥⊥(D,KB?) ={{a2, a4},{a3, a5},{a3, a6},{a2, a5}}
Siguiendo el enfoque utilizado para las TGDs, a continuaci´on introducimos la relaci´on
lparticular usada en este ejemplo para calcular el orden entre ´atomos. De esta manera,
la funci´on de incisi´on en datos puede seleccionar para remoci´on ´atomos en los kernels de datos. Los ´atomos que no pueden ser inferidos luego de las remociones son:
´
Atomos que ya no pueden ser inferidos luego de remover
a2 : {supervisa(walter, jesse), supervisor(walter), empleado(jesse),
es supervisado(jesse), obedece ordenes(jesse), tiene tarea(jesse), recibe paga(jesse), a cargo de(jesse, n1)}.
´
Atomos que ya no pueden ser inferidos luego de remover a3 :
{toma decisiones(walter)}.
´
Atomos que ya no pueden ser inferidos luego de remover a4 :
{toma decisiones(jesse)}.
´
Atomos que ya no pueden ser inferidos luego de remover a5 :
{supervisa(skyler, walter), supervisor(skyler)}.
´
Atomos que ya no pueden ser inferidos luego de remover a6 : ninguno.
Ademas, asumamos que consideramos m´as plausible el ´atomo a3 que el ´atomo a4, y el
orden para los ´atomos en kernels de datos es entonces a6la4 la3 la5la2. Entonces,
tenemos que
%({a2, a4}) ={a4}
%({a3, a5}) ={a3}
%({a3, a6}) ={a6}
%({a2, a5}) ={a5}
Por lo tanto, usando un operador de consolidaci´on de ontolog´ıas Datalog± basado en Kernel Contraction como fue definido en la Definici´on 5.6 obtenemos la siguiente ontolog´ıa coherente y consistente:
Υρ,%(KB) =
D0 : {jef e(walter), supervisa(walter, jesse), a cargo de(jesse, distribution),
a cargo de(walter, cooking)
en huelga(mike)}
Σ0
NC : {obedece ordenes(X)∧toma desiciones(X)→ ⊥, supervisa(Y, X)∧supervisor(X)→ ⊥,
ausente(X)∧en huelga(X)→ ⊥}
Σ0E : {a cargo de(X, Y)∧a cargo de(X, Y0)→Y =Y0}
Σ0
T : {empleado(X)→es supervisado(X), es supervisado(X)→obedece ordenes(X),
jef e(X)→obtiene ganancias(X), supervisa(Y, X)→supervisor(Y), supervisa(Y, X)→empleado(X), es supervisado(X)→tiene tarea(X),
tiene tarea(X)→recibe paga(X), tiene tarea(X)→ ∃Y a cargo de(X, Y)
5.5.
Conclusiones
En este cap´ıtulo hemos presentado un enfoque que posibilita la consolidaci´on de on- tolog´ıas Datalog±. Tal proceso est´a basado en las ideas de Hansson [Han94, Han99] de atacar conflictos m´ınimos conocidos como kernels, removiendo de los mismos f´ormulas pa- ra resolver los conflictos. Adem´as de atender conflictos de inconsistencia, los operadores definidos tambi´en se enfocan en el otro tipo de conflictos que pueden surgir en entornos ontol´ogicos: la incoherencia. De esta forma puede verse a los operadores como unos que trabajan en dos fases: los mismos comienzan por resolver los problemas de incoherencia que aparezcan en la ontolog´ıa mediante la remoci´on de TGDs, para luego dar paso a la restauraci´on de la consistencia a trav´es de la eliminaci´on de ´atomos del componente D. En ambos casos, las selecciones se hacen a trav´es de funciones de incisi´on que deciden
qu´e remover en base a una relaci´on general l, mirando para ello localmente en cada kernel en la ontolog´ıa.
Para caracterizar apropiadamente el proceso de consolidaci´on de ontolog´ıas hemos introducido un conjunto de postulados, adaptando intuiciones introducidas para otros formalismos de representaci´on de conocimiento por Hansson [Han94], Konieczny y Pino- P´erez [KP02], y Fuhrmann [Fuh97]. A tales propiedades las hemos aumentado con los postulados de Optimidad Local para Restricciones y Optimidad Local para Datos, los cuales son utilizados para enfocarnos en aquellas consolidaciones que minimizan la p´erdida de informaci´on con respecto al, donde la misma es considerada localmente, esto es,para cada conjunto minimalmente inconsistente/incoherente. El conjunto b´asico de Postulados (OCP1-OCP7) versa entonces en diferentes aspectos de la consolidaci´on de ontolog´ıas, desde requerir que nada sea agregado a la ontolog´ıa original hasta que aquello que no involucra conflictos sea retenido. Este conjunto b´asico de postulados implica a su vez ciertas otras propiedades. En particular, dos propiedades que se derivan del conjunto de postulados b´asicos y que son muy importantes a efectos del objetivo de los operadores de consolidaci´on son los de Coherencia y Consistencia. Es importante remarcar que, como es tradicional en la teor´ıa de cambios, los operadores no se encuentran atados a las construcciones particulares que se presentan en la presente tesis, sino que son un aporte general a cualquier operador de consolidaci´on de ontolog´ıas Datalog± (y que pueden ser incluso generalizados a otros lenguajes ontol´ogicos con relativa sencillez). Es decir, cualquier operador de consolidaci´on de ontolog´ıas Datalog± puede ser analizado a la luz de los postulados presentados, y no solamente aquellos introducidos en este trabajo. Por lo tanto, el conjunto de postulados introducidos corresponde un marco formal general del comportamiento de operadores de consolidaci´on.
Luego de presentar los postulados que moldean el comportamiento de los operadores de consolidaci´on de ontolog´ıas Datalog±, el el presente cap´ıtulo nos hemos dedicado a la definici´on de una clase particular de tales operadores, presentando para ello una cons- trucci´on completa que puede generarlos. Para ello primeramente procedimos a definir que corresponden con kernels de dependencias (conjuntos insatisfacibles de TGDs m´ınimos bajo inclusi´on conjuntista) y kernels de datos (conjuntos m´ınimos de ´atomos que hacen a la ontolog´ıa inconsistente). En particular, para los kernels de dependencias hemos de- mostrado que los mismos son independientes de la instancia particular del componenteD
mente interesante porque nos da la pauta de que el conjunto de kernels de dependencias de una ontolog´ıa puede ser obtenido sin considerar el componente D de la misma, lo que es de utilidad a la hora de separar la resoluci´on de incoherencias de la resoluci´on de inconsistencias.
Una vez que hemos identificado los kernels sobre los que aplicaremos las operaciones de contracci´on en pos de resolver incoherencias e inconsistencias, debemos establecer como tales problemas son resueltos. Para ello utilizamos funciones de incisi´on, que toman como argumento de entrada kernels de dependencias y kernels de datos y selecciona qu´e TGDs ser´an removidas de ΣT y qu´e ´atomos ser´an removidos deD. Es posible definir funciones de incisi´on generales, que consideran al mismo tiempo tanto incoherencia como inconsis- tencia. Sin embargo, tal enfoque acarrea un problema:para hacer esto deber´ıamos calcular los kernels de dependencias y de datos y resolver los conflictos al mismo tiempo. Como se mostr´o el en Ejemplo 5.4, en la presencia de incoherencia esto puede no ser la mejor so- luci´on, al considerarlo a la luz de la p´erdida m´ınima de informaci´on. Esto es generalizado por la Proposici´on 5.4 y por el Corolario 5.5, que establecen que para el caso de ´atomos relevantes a conjuntos insatisfacibles los mismos deben ser obligatoriamente eliminados por una funci´on de incisi´on general, incluso cuando al mismo tiempo la funci´on de inci- si´on resuelve el problema de incoherencia que hac´ıa que el ´atomo relevante sea un kernel (resolviendo indirectamente la inconsistencia).
Para resolver tal situaci´on es que hemos introducido una separaci´on entre las funciones de incisi´on que trabajan sobre el conjunto de TGDs de una ontolog´ıa de aquellas que se encargan de la remoci´on de ´atomos de la misma. En base a tal separaci´on definimos a los operadores de consolidaci´on de ontolog´ıas Datalog± como aquellos que utilizan una funci´on de incisi´on en restricciones sobre el componente Σ y una funci´on de incisi´on en datos sobre D. Se puede considerar que tales operadores trabajan en “fases” separadas: primero se resuelven todos los problemas de incoherencia, y luego la resoluci´on de incon- sistencias se hace sobre la ontolog´ıa intermedia obtenida mediante la remoci´on de TGDs. Es decir, por un lado, las TGDs son removidas de Σ (solamente TGDs, ya que los kernels de dependencias no contienen EGDs ni NCs). Por el otro lado, como la funci´on de incisi´on en datos usa la ontolog´ıa intermediaKB? en lugar de KB entonces s´olo ´atomos deD que est´en en conflicto con Σ\ρ(KB) son removidos, ya que los kernels de datos son calculados en base a las restricciones obtenidas luego de aplicar sobre Σ la funci´on de incisi´on en restricciones.
Por ´ultimo, hemos establecido la relaci´on entre los postulados y la construcci´on presen- tada a trav´es de un teorema de representaci´on, el cual establece que la relaci´on biun´ıvoca entre el conjunto de postulados OCP1-OCP7 y la construcci´on en base a funciones de incisi´on. La importancia de tal resultado es que determina que cualquier construcci´on que satisfaga tales postulados se corresponder´a necesariamente con los operadores presentados en este cap´ıtulo, y por lo tanto los resultados de esos operadores pueden ser obtenidos por nuestra construcci´on.
Refinamiento del proceso de
consolidaci´on de ontolog´ıas Datalog
±
En el Cap´ıtulo 5 hemos introducido un proceso novel para la consolidaci´on de onto- log´ıas Datalog±. Tal operador posee varias propiedades que hacen que la ontolog´ıa final obtenida del proceso de consolidaci´on tenga las caracter´ısticas deseadas de coherencia y consistencia. Sin embargo, el proceso introducido puede ser refinado cuando consideramos el aspecto de m´ınima p´erdida de informaci´on, el cual es un concepto muy arraigado a la teor´ıa de cambio de creencias. Como veremos en el presente cap´ıtulo, un operador basado en Kernel Contraction puede inducir remociones innecesarias de f´ormulas. En el presente cap´ıtulo de la tesis elaboramos sobre los operadores ya introducidos para conseguir una variante optimal (respecto de p´erdida de informaci´on) de los mismos, los operadores de consolidaci´on de ontolog´ıas Datalog± basados en Cluster Contraction.
6.1.
Necesidad de refinamiento
A continuaci´on analizaremos el comportamiento de los operadores introducidos en el Cap´ıtulo 5 a la luz de una nueva perspectiva, la (excesiva) p´erdida de informaci´on. Pa- ra esto miraremos en mayor detalle el ejemplo del comportamiento de tales operadores presentado previamente, poniendo de evidencia tal debilidad. Una vez que hayamos esta- blecido claramente la situaci´on que queremos evitar procederemos a proponer una nueva propiedad para los operadores de consolidaci´on de ontolog´ıas Datalog±, la que una vez satisfecha asegura que tal situaci´on no sucede.
6.1.1.
Problemas asociados a la consolidaci´on basado en Kernel
Contraction
A pesar de obtener una ontolog´ıa final coherente y consistente, los operadores introdu- cidos en el Cap´ıtulo 5 tienen una importante desventaja: incluso cuando el operador s´olo selecciona una f´ormula por cada kernel, bajo ciertas condiciones el operador puede remover m´as f´ormulas de las absolutamente necesarias para obtener una ontolog´ıa adecuadamente consolidada.
Para ver tal situaci´on consideremos nuevamente el comportamiento del operador de consolidaci´on de ontolog´ıas Datalog± basado en Kernel Contraction en el Ejemplo 5.5 de la Secci´on 5.4. En tal ejemplo se puede ver que el proceso de consolidaci´on presentado tiene ciertas fallas y puede ser refinado. Centremos la atenci´on en los kernels de datos en el ejemplo, y como los distintos problemas de consistencia son finalmente resueltos; claramente ciertas remociones efectuadas por el operador son innecesarias. Por ejemplo, considere los kernels de datos {a2, a5} y {a3, a5}. Como en el orden entre conjuntos de
´
atomos tenemos que a3l1a5l1 a2, para el primer kernel la funci´on de incisi´on en datos
remueve el ´atomoa5, mientras que para el segundo kernel remueve a3, lo que ciertamente
es innecesario ya que la inconsistencia que surg´ıa del segundo kernel ya est´a resuelta si decidimos removera5 para resolver el conflicto en {a2, a5}. Es m´as, el ´atomo a3 se pierde
en el proceso de consolidaci´on porque el mismo no puede ser generado por la aplicaci´on de ninguna de las TGDs remanentes al considerarlas con la base de datosD obtenida.
6.1.2.
Una propiedad adicional: la m´ınima p´erdida de informa-
ci´on
Para paliar la situaci´on presentada comenzaremos expandiendo el conjunto de Postula- dos presentados previamente con uno adicional que expresa formalmente nuestra noci´on de m´ınima p´erdida de informaci´on para operadores de consolidaci´on de ontolog´ıas Datalog±, que luego servir´a de gu´ıa para el desarrollo de una nueva construcci´on que cumpla con la misma. La propiedad que se espera sea satisfecha por un operador optimal (en el sentido de m´ınimo cambio) es la de M´ınima P´erdida de Informaci´on.
(M´ınima P´erdida de Informaci´on): Si KB0 ⊆ KB es coherente y consistente, entonces se verifica que Υ(KB)6⊂KB0.
No existe una ontolog´ıa coherente y consistente obtenida a partir de la ontolog´ıa original que contenga estrictamente a la ontolog´ıa consolidada.
La intuici´on detr´as del postulado es que un operador de consolidaci´on que lo satisface nos dar´a como resultado una ontolog´ıa tal que si agregamos cualquiera de las f´ormulas eli- minadas entonces laKB resultante ser´ıa incoherente o inconsistente; es decir, el operador realiz´o una cantidad de cambios m´ınima en la resoluci´on de conflictos.
6.2.
Operador de consolidaci´on basado en Cluster
Contraction
Es claro que un operador de consolidaci´on como el definido en la Definici´on 5.6 no logra satisfacerM´ınima P´erdida de Informaci´on. Por ejemplo, considerando Υ(KB) =
{D0,Σ0}en el Ejemplo 5.5 (esto es,la ontolog´ıa consolidada obtenida finalmente) tenemos que {Υ(KB)∪ {a3}} ( KB es coherente y consistente. A su vez, claramente Υ(Ψ) (
{Υ(Ψ)∪ {a3}}, y la p´erdida de informaci´on es mayor de la necesaria en la resoluci´on de
conflictos de (en este caso) consistencia.
La raz´on detr´as de la no minimalidad del operador presentado anteriormente es el uso de kernels de manera aislada, sin tener en cuenta aquellas ocasiones donde los conflictos minimales est´an en una relaci´on de “colisi´on”. A continuaci´on presentamos un refinamien- to del proceso de consolidaci´on basado en Kernel Contraction introducido previamente cuyo objetivo es satisfacer el requerimiento de m´ınimo cambio atacando la fuente de tales problemas. Para lograr esto definimos un nuevo operador de consolidaci´on que satisfa- ce tanto el principio de M´ınima P´erdida de Informaci´on como las propiedades de
Coherencia y Consistencia presentadas en el Cap´ıtulo 5.
6.2.1.
Clusterizaci´on
Como anticipamos, la base del refinamiento propuesto al uso de kernels se basa en la detecci´on de aquellos que se relacionan entre ellos de alguna forma. Para lograr esto, en lugar de realizar incisiones sobre kernels el nuevo operador realiza las mismas sobre
como la base para el manejo de inconsistencias en [LMS12, MPP+14]. La estructura de los clusters hace posible identificar conflictos relacionados para de esta forma encarar una resoluci´on m´as global teniendo en cuenta tal relaci´on. Los clusters son obtenidos a trav´es de una relaci´on de solapamiento (overlapping) entre kernels.
Definici´on 6.1 (Solapamiento, Equivalencia) Sea L un lenguaje de primer orden,
R ⊂ L un esquema relacional y LR el sublenguaje generado por R. Dados A ⊂ LR y B ⊂ LR, decimos que los mismos se solapan, denotado A θB, si y s´olo si AT
B 6=
∅. Adicionalmente, dado un conjunto de conjuntos de f´ormulas de primer orden M ⊂
2LR denotamos por θ∗
M la relaci´on de equivalencia obtenida sobre M a trav´es del cierre transitivo y reflexivo de θ.
Mediante la explotaci´on de la relaci´on de solapamiento entre kernels de dependencias y datos podemos definir losclusters de dependenciasy losclusters de datos, respectivamente.
Definici´on 6.2 (Clusters de dependencias) Sea KB = (D,Σ) una ontolog´ıa Datalog±, y ⊥⊥(Σ,KB) el conjunto de kernels de dependencias para KB. Sea θ la relaci´on
de solapamiento, y K =⊥⊥(Σ,KB)/θ∗⊥⊥
(Σ,KB) el conjunto cociente para la relaci´on de equi-
valencia obtenida sobre⊥⊥(Σ,KB). Un cluster de dependenciases un conjunto X = S
Y∈[κ]
Y, donde[κ]∈ K. Denotamos por⊥⊥⊥(Σ,KB) el conjunto de todos los clusters de dependencias
de KB.