es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Inferir la existencia de individuos mediante Protege

Estoy tratando de inferir la existencia de individuos en Protege, y podría utilizar algo de ayuda.

Considera la siguiente ontología como el escenario de ejemplo: Las personas pueden ser hermanos. Si son hermanos, entonces tienen al menos un padre común/mutuo.
He definido una clase llamada “Persona” con una subclase de “PadreComún”. He definido la propiedad de objeto “hermano” de una “Persona” (Dominio) a otra “Persona” (Rango) y la marqué como “simétrica”.
He creado tres individuos (Mike, Jerry, Suzie) y agregué dos afirmaciones sobre uno siendo hermano del otro. El razonador (HermiT) clasificó correctamente a los individuos como personas y agregó las relaciones de hermanos faltantes.

Ahora, lo que quiero hacer es que el razonador infiera la existencia de otra entidad (sin nombre) que sea el “PadreComún” de cada par de hermanos (sin que yo afirme específicamente que existe tal individuo). ¿Es esto posible? ¿Cómo abordo esto?

Captura de pantalla de Protege: Enlace

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Es definitivamente posible que el razonador infiera la existencia de una entidad sin nombre como el “CommonParent” de cada par de hermanos. Una forma de abordar esto es creando una nueva clase llamada “SiblingPair” que tenga dos individuos de “Person” como subclases, y añadir una nueva propiedad de objeto llamada “hasCommonParent” con “SiblingPair” como dominio y “CommonParent” como rango. Entonces, puedes marcar “hasCommonParent” como “Funcional” y añadir una regla que defina “CommonParent” como el valor de la propiedad de objeto para cualquier par de individuos de “Person” que sean hermanos.

    Por ejemplo, puedes definir la siguiente regla:

    “Los hermanos tienen un padre en común”:
    SI Person(?x) Y Person(?y) Y Sibling(?x,?y) ENTONCES hasCommonParent(?p,?x) Y hasCommonParent(?p,?y)

    Esta regla inferirá la existencia de una nueva entidad “CommonParent” para cada par de hermanos, sin necesidad de afirmaciones explícitas. El razonador luego puede utilizar este conocimiento inferido para realizar más inferencias sobre la ontología.

    También puedes experimentar con otras reglas de razonamiento y propiedades de objetos para lograr los resultados deseados. Protege ofrece una amplia gama de herramientas y opciones para la modelización y el razonamiento de ontologías, así que siéntete libre de explorar y experimentar con diferentes enfoques.

Comments are closed.