Modelos de Conocimiento Basados en Ontologías para la ...
Modelos de Conocimiento Basados en Ontologías para la ... Modelos de Conocimiento Basados en Ontologías para la ...
Capítulo 3. Representación del conocimiento y ontologías de una ontología existente para utilizarla en un problema nuevo o en una nueva ontología que pueda aprovechar parte de ésta. Las técnicas y metodologías de evaluación están muy relacionadas con los lenguajes de representación del conocimiento en los que se formalizan las ontologías. La mayor parte de los estudios sobre evaluación de ontologías mediante métodos formales se dedica al conocimiento organizado en una jerarquía de especialización (conocimiento taxonómico), mientras que aspectos como el estudio de las relaciones, atributos, axiomas, individuos, etc., está menos desarrollado. Los formalismos basados en teorías lógicas facilitan el proceso de evaluación en algunos aspectos. Así, las lógicas descriptivas permiten detectar clasificaciones erróneas o no especificadas en la jerarquía de conceptos. De forma general se pueden abordar estudios sobre la satisfacibilidad y consistencia de los conceptos. En el formalismo de los marcos muchas herramientas proporcionan mecanismos para la comprobación de restricciones establecidas en el modelo de conocimiento, aunque las posibilidades son menos amplias que en el caso anterior. La metodología OntoClean (Guarino y Welty, 2004) proporciona una serie de metapropiedades (rigidez, identidad y unidad) que pueden ser empleadas para comprobar y encontrar conceptualizaciones incorrectas (de forma manual) aunque, una vez más, limitándose al ámbito del estudio de la jerarquía de generalización/especialización de conceptos. Aparte de las comprobaciones en tiempo de construcción, como las mencionadas anteriormente, hay opiniones respecto a que la evaluación de una ontología debe hacerse midiendo el rendimiento de las aplicaciones que se construyan en base a ella, lo cual es un proceso que presenta numerosas dificultades (Sabou et. al., 2006). También se ha mencionado la posibilidad de crear una comunidad de usuarios en las que las experiencias adquiridas por los mismos al utilizar diferentes ontologías puedan ser una medida evaluativa de las mismas en el proceso de selección de ontologías para su posible reutilización (Lewen et. al., 2006). Este hecho supone la existencia de métodos y estudios para la evaluación de ontologías que van desde los puramente manuales hasta los automatizados. Además de para el proceso de creación y evaluación, existen metodologías para el proceso de reingeniería, aprendizaje, evolución, mezcla de ontologías, etc. En (Corcho et. al., 2003) se pueden encontrar referencias a estos temas. 50
Capítulo 3. Representación del conocimiento y ontologías 3.4 Relación entre la ingeniería del conocimiento y la ingeniería del software. La ingeniería del conocimiento surge dentro de la disciplina de la inteligencia artificial y, en cierta medida, ha estado enfrentada con la disciplina más práctica (en cuanto a desarrollo de software de uso comercial) de la ingeniería del software. Sin embargo, la finalidad de la ingeniería del conocimiento es la misma que la de la ingeniería del software, esto es, estudiar el proceso de creación de aplicaciones informáticas (denominadas en este campo sistemas basados en el conocimiento) creando lenguajes, herramientas y metodologías para las tareas de diseño, construcción, evaluación, verificación y mantenimiento de esas aplicaciones. La diferencia radica en el tipo de aplicación que se pretende construir y la aproximación que se usa para construirla. Esta diferencia, sin embargo, se está diluyendo en la actualidad. Desde la época de los sistemas expertos las técnicas de la ingeniería del conocimiento han ido ganando terreno en la realización, completa o parcial, de software comercial. La elección de ingeniería del software o ingeniería del conocimiento a la hora de crear una aplicación es una cuestión que debe decidirse evaluando las características del problema que se pretende resolver. Muchas aplicaciones actuales emplean técnicas y lenguajes que provienen de ambos campos y este hecho es cada vez más patente, de forma que ambas disciplinas intercambian ideas e influyen mutuamente en su respectivo desarrollo (Juristo y Acuña, 2002). Muestra de esta interacción son las iniciativas, planteadas desde el ámbito académico y de investigación, orientadas a la creación de currícula combinados para materias que incorporen ambas disciplinas (Alonso et. al., 1996), (Juristo et. al., 1999). El encuentro de ambas disciplinas se produce en torno a la creciente importancia que los modelos de conocimiento tienen en el desarrollo del software. Muchas ideas de la ingeniería del software como los patrones de diseño (Gamma et. al., 1995), los componentes, etc., persiguen los mismos fines de reutilización que las ontologías en la ingeniería del conocimiento (Kalfoglou et. al., 2000). El concepto de “arquitecturas basadas en modelos” (Model Driven Architectures – MDA –) (Brown, 2004) es la aproximación de la ingeniería del software al desarrollo de aplicaciones basadas en modelos, postulando la definición del problema a resolver en diferentes niveles de abstracción y usando de forma generalizada modelos de conocimiento de manera que, idealmente, fuese posible partir de una especificación de un modelo independiente de la computación (Computation- Independent Model, CIM) y, pasando por otros modelos intermedios, llegar a producir un código informático para cualquier plataforma, todo ello de forma automática. 51
- Page 19: Prefacio La presente tesis doctoral
- Page 22 and 23: Introducción El problema de la rep
- Page 24 and 25: Capítulo 1. Justificación, objeti
- Page 26 and 27: Capítulo 1. Justificación, objeti
- Page 28 and 29: Capítulo 1. Justificación, objeti
- Page 30 and 31: Capítulo 1. Justificación, objeti
- Page 32 and 33: Capítulo 2. El software en ingenie
- Page 34 and 35: Capítulo 2. El software en ingenie
- Page 36 and 37: Capítulo 2. El software en ingenie
- Page 38 and 39: Capítulo 2. El software en ingenie
- Page 40 and 41: Capítulo 2. El software en ingenie
- Page 42 and 43: Capítulo 2. El software en ingenie
- Page 44 and 45: Capítulo 2. El software en ingenie
- Page 46 and 47: Capítulo 3. Representación del co
- Page 48 and 49: Capítulo 3. Representación del co
- Page 50 and 51: Capítulo 3. Representación del co
- Page 52 and 53: Capítulo 3. Representación del co
- Page 54 and 55: Capítulo 3. Representación del co
- Page 56 and 57: Capítulo 3. Representación del co
- Page 58 and 59: Capítulo 3. Representación del co
- Page 60 and 61: Capítulo 3. Representación del co
- Page 62 and 63: Capítulo 3. Representación del co
- Page 64 and 65: Capítulo 3. Representación del co
- Page 66 and 67: Capítulo 3. Representación del co
- Page 68 and 69: Capítulo 3. Representación del co
- Page 72 and 73: Capítulo 3. Representación del co
- Page 74 and 75: Capítulo 3. Representación del co
- Page 76 and 77: Capítulo 3. Representación del co
- Page 78 and 79: Capítulo 3. Representación del co
- Page 80 and 81: Capítulo 3. Representación del co
- Page 82 and 83: Capítulo 3. Representación del co
- Page 84 and 85: Capítulo 4. Esquema de representac
- Page 86 and 87: Capítulo 4. Esquema de representac
- Page 88 and 89: Capítulo 4. Esquema de representac
- Page 90 and 91: Capítulo 4. Esquema de representac
- Page 92 and 93: Capítulo 4. Esquema de representac
- Page 94 and 95: Capítulo 4. Esquema de representac
- Page 96 and 97: Capítulo 4. Esquema de representac
- Page 98 and 99: Capítulo 4. Esquema de representac
- Page 100 and 101: Capítulo 4. Esquema de representac
- Page 102 and 103: Capítulo 4. Esquema de representac
- Page 104 and 105: Capítulo 4. Esquema de representac
- Page 106 and 107: Capítulo 4. Esquema de representac
- Page 108 and 109: Capítulo 4. Esquema de representac
- Page 110 and 111: Capítulo 4. Esquema de representac
- Page 112 and 113: Capítulo 4. Esquema de representac
- Page 114 and 115: Capítulo 4. Esquema de representac
- Page 116 and 117: Capítulo 4. Esquema de representac
- Page 118 and 119: Capítulo 4. Esquema de representac
Capítulo 3. Repres<strong>en</strong>tación <strong>de</strong>l conocimi<strong>en</strong>to y ontologías<br />
3.4 Re<strong>la</strong>ción <strong>en</strong>tre <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l conocimi<strong>en</strong>to<br />
y <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l software.<br />
La ing<strong>en</strong>iería <strong>de</strong>l conocimi<strong>en</strong>to surge <strong>de</strong>ntro <strong>de</strong> <strong>la</strong> disciplina <strong>de</strong> <strong>la</strong> intelig<strong>en</strong>cia<br />
artificial y, <strong>en</strong> cierta medida, ha estado <strong>en</strong>fr<strong>en</strong>tada con <strong>la</strong> disciplina más práctica<br />
(<strong>en</strong> cuanto a <strong>de</strong>sarrollo <strong>de</strong> software <strong>de</strong> uso comercial) <strong>de</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l<br />
software. Sin embargo, <strong>la</strong> finalidad <strong>de</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l conocimi<strong>en</strong>to es <strong>la</strong> misma<br />
que <strong>la</strong> <strong>de</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l software, esto es, estudiar el proceso <strong>de</strong> creación <strong>de</strong><br />
aplicaciones informáticas (<strong>de</strong>nominadas <strong>en</strong> este campo sistemas basados <strong>en</strong> el<br />
conocimi<strong>en</strong>to) creando l<strong>en</strong>guajes, herrami<strong>en</strong>tas y metodologías <strong>para</strong> <strong>la</strong>s tareas <strong>de</strong><br />
diseño, construcción, evaluación, verificación y mant<strong>en</strong>imi<strong>en</strong>to <strong>de</strong> esas<br />
aplicaciones. La difer<strong>en</strong>cia radica <strong>en</strong> el tipo <strong>de</strong> aplicación que se pret<strong>en</strong><strong>de</strong><br />
construir y <strong>la</strong> aproximación que se usa <strong>para</strong> construir<strong>la</strong>. Esta difer<strong>en</strong>cia, sin<br />
embargo, se está diluy<strong>en</strong>do <strong>en</strong> <strong>la</strong> actualidad.<br />
Des<strong>de</strong> <strong>la</strong> época <strong>de</strong> los sistemas expertos <strong>la</strong>s técnicas <strong>de</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l<br />
conocimi<strong>en</strong>to han ido ganando terr<strong>en</strong>o <strong>en</strong> <strong>la</strong> realización, completa o parcial, <strong>de</strong><br />
software comercial. La elección <strong>de</strong> ing<strong>en</strong>iería <strong>de</strong>l software o ing<strong>en</strong>iería <strong>de</strong>l<br />
conocimi<strong>en</strong>to a <strong>la</strong> hora <strong>de</strong> crear una aplicación es una cuestión que <strong>de</strong>be <strong>de</strong>cidirse<br />
evaluando <strong>la</strong>s características <strong>de</strong>l problema que se pret<strong>en</strong><strong>de</strong> resolver. Muchas<br />
aplicaciones actuales emplean técnicas y l<strong>en</strong>guajes que provi<strong>en</strong><strong>en</strong> <strong>de</strong> ambos<br />
campos y este hecho es cada vez más pat<strong>en</strong>te, <strong>de</strong> forma que ambas disciplinas<br />
intercambian i<strong>de</strong>as e influy<strong>en</strong> mutuam<strong>en</strong>te <strong>en</strong> su respectivo <strong>de</strong>sarrollo (Juristo y<br />
Acuña, 2002). Muestra <strong>de</strong> esta interacción son <strong>la</strong>s iniciativas, p<strong>la</strong>nteadas <strong>de</strong>s<strong>de</strong> el<br />
ámbito académico y <strong>de</strong> investigación, ori<strong>en</strong>tadas a <strong>la</strong> creación <strong>de</strong> currícu<strong>la</strong><br />
combinados <strong>para</strong> materias que incorpor<strong>en</strong> ambas disciplinas (Alonso et. al., 1996),<br />
(Juristo et. al., 1999).<br />
El <strong>en</strong>cu<strong>en</strong>tro <strong>de</strong> ambas disciplinas se produce <strong>en</strong> torno a <strong>la</strong> creci<strong>en</strong>te importancia<br />
que los mo<strong>de</strong>los <strong>de</strong> conocimi<strong>en</strong>to ti<strong>en</strong><strong>en</strong> <strong>en</strong> el <strong>de</strong>sarrollo <strong>de</strong>l software. Muchas<br />
i<strong>de</strong>as <strong>de</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l software como los patrones <strong>de</strong> diseño (Gamma et. al.,<br />
1995), los compon<strong>en</strong>tes, etc., persigu<strong>en</strong> los mismos fines <strong>de</strong> reutilización que <strong>la</strong>s<br />
ontologías <strong>en</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l conocimi<strong>en</strong>to (Kalfoglou et. al., 2000). El concepto<br />
<strong>de</strong> “arquitecturas basadas <strong>en</strong> mo<strong>de</strong>los” (Mo<strong>de</strong>l Driv<strong>en</strong> Architectures – MDA –)<br />
(Brown, 2004) es <strong>la</strong> aproximación <strong>de</strong> <strong>la</strong> ing<strong>en</strong>iería <strong>de</strong>l software al <strong>de</strong>sarrollo <strong>de</strong><br />
aplicaciones basadas <strong>en</strong> mo<strong>de</strong>los, postu<strong>la</strong>ndo <strong>la</strong> <strong>de</strong>finición <strong>de</strong>l problema a resolver<br />
<strong>en</strong> difer<strong>en</strong>tes niveles <strong>de</strong> abstracción y usando <strong>de</strong> forma g<strong>en</strong>eralizada mo<strong>de</strong>los <strong>de</strong><br />
conocimi<strong>en</strong>to <strong>de</strong> manera que, i<strong>de</strong>alm<strong>en</strong>te, fuese posible partir <strong>de</strong> una<br />
especificación <strong>de</strong> un mo<strong>de</strong>lo in<strong>de</strong>p<strong>en</strong>di<strong>en</strong>te <strong>de</strong> <strong>la</strong> computación (Computation-<br />
In<strong>de</strong>p<strong>en</strong><strong>de</strong>nt Mo<strong>de</strong>l, CIM) y, pasando por otros mo<strong>de</strong>los intermedios, llegar a<br />
producir un código informático <strong>para</strong> cualquier p<strong>la</strong>taforma, todo ello <strong>de</strong> forma<br />
automática.<br />
51