SciELO - Scientific Electronic Library Online

 
 número21Recuperación de información a través del índice invertido en Be IntelligentDespués de presionar el botón enviar, se pierde el control sobre la información personal y la privacidad: un caso de estudio en México índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

  • No hay articulos similaresSimilares en SciELO

Compartir


RISTI - Revista Ibérica de Sistemas e Tecnologias de Informação

versión impresa ISSN 1646-9895

RISTI  no.21 Porto mar. 2017

https://doi.org/0.17013/risti.21.99-114 

ARTÍCULOS

Un método para generar explicaciones de resultados de un Sistema Experto, usando Patrones de discurso y Ontología

A method for generating explanations of results of an Expert System, using Speech Patterns and Ontology

Víctor Flores 1, Yahima Hadfeg 2

1 Departamento de Ingeniería de Sistemas y Computación. Universidad Católica del Norte. Av. Angamos 0610 Antofagasta, Chile. vflores@ucn.cl

2 Departamento de Ingeniería de Sistemas y Computación. Universidad Católica del Norte. Av. Angamos 0610 Antofagasta, Chile. yahima.hadfeg01@ucn.cl


 

RESUMEN: Los Sistemas Expertos (SE) usualmente generan árboles de inferencia de tamaño considerable, antes de mostrar los resultados relativos al comportamiento de sistemas dinámicos complejos a los usuarios interesados en dicho comportamiento. Estos árboles de inferencia, a pesar de incluir información que podría contribuir a comprender mejor los resultados mostrados por un SE, no son presentados a los usuarios  ya que pueden ser complejos de comprender y pueden agrandar considerablemente (e innecesariamente) las salidas del SE. Sin embargo, estos árboles de inferencia contienen importante información acerca de cómo un SE infiere y concluye respecto al comportamiento del sistemas dinámicos complejos, y además pueden ayudar a crear confianza en los resultados aportados por el SE. Este documento describe un método para crear explicaciones basadas en las conclusiones parciales por las que transita un SE, para concluir a cerca del comportamiento de un sistemas dinámicos complejos. Las entradas a nuestro método son: el árbol de inferencia y el conocimiento del dominio representado mediante una Ontología. La salida del método es un plan de generación de presentación que usa patrones de discurso y estructuras discursivas (plantillas de texto y directivas gráficas), este conocimiento también es representado usando una Ontología. El documento describe también la arquitectura del software para generar las explicaciones y los casos de prueba diseñados en el contexto de un caso de estudio en el dominio de sistemas dinámicos complejos.   

Palabras-clave: Sistemas Expertos; Sistemas de data-to-text; Representación de conocimiento en sistemas dinámicos; Ontologías; Sistemas Inteligentes de generación de presentaciones multimedia.


 

ABSTRACT: Expert systems (ES) usually generate extensive inference-trees before showing to users a definitive result related to a complex dynamic system (DS) behavior. These inference-trees are not included in the results but it could provide additional information to understand the overall performance of a DS. They contain a set of statements that describe the knowledge about the truths of the DS plus a set of constraints that can give statements that must be true in the DS behavior. This document describes a method to generate explanations based on the conclusions reached by an ES respect to the DS behavior, using a specific ontology and discourse patterns. The input of the method is an intermediate- state tree (the inference-tree) and a specific knowledge-domain represented by the ontology. The document describes the software architecture to generate the explanations and the testing cases designed to validate the results in a complex real domain, such as the copper bioleaching domain.

Keywords: Expert System; data-to-text system; intelligent multimedia presentation systems; interactive data analysis; knowledge representation for dynamic systems.


 

1. Introducción

Los Sistemas Expertos complejos usualmente generan árboles de inferencia como salida intermedia antes de presentar los resultados a los usuarios finales, estas salidas intermedias pueden representar estados intermedios del sistema y pueden ayudar a mejorar la comprensión de los resultados del Sistema Experto por parte de los destinatarios (usuarios finales). Pero normalmente, no se realiza esta tarea de presentar los resultados intermedios del proceso de inferencia, porque esto puede ser complicado (desde el punto de vista computacional) y difícil de mostrar.

Por otro lado, la gestión de los sistemas dinámicos suele implicar a equipos humanos: operadores (a diferentes niveles), personal encargado de la toma de decisiones, etc. (Molina & Flores, 2012), y en general los equipos humanos están interesados ​​no sólo en un resultado final sino también en la descripción de posibles estados del sistema dinámico durante un período de tiempo. Un ejemplo de un sistema dinámico es una pila industrial de biolixiviación de cobre. Una pila industrial de biolixiviación se divide en pisos, y cada piso en franjas.

Generalmente una pila industrial de biolixiviación se construye con material sobrante (ripio, denominado ROM) que ya ha sido procesado con otras técnicas para obtener metales (Demergaso et al., 2010), (Data, 2013). Este material se caracteriza por ser de baja calidad (baja ley) pero con él se puede obtener metales y además causar menos impacto ambiental. La biolixiviación es el proceso que utiliza ROM y poblaciones de microorganismos para obtener metales valiosos (por ejemplo, cobre) que con otra técnica no sería económicamente rentable (Soto et al., 2013), (Kaibin et al., 2014).

En la literatura se presentan varios trabajos que muestran los resultados de la incidencia de bacterias en condiciones óptimas de biolixiviación (Abdel-Fattah, Haggag & Mahmoud, 2011). Por ejemplo, en el Centro de Biotecnología Profesor Alberto Ruiz se está desarrollando un Sistema Experto para mejorar el conocimiento actual sobre la biolixiviación de cobre.

Los Sistemas Expertos se vienen usando en las industrias modernas para varias tareas, entre ellas para soporte a la toma de decisiones, monitoreo en tiempo real o para generar rápidamente alertas a los operadores en caso de fallas en los sistemas o procesos industriales. La industria moderna, como por ejemplo la minería, es compleja por la cantidad de procesos que involucra y parte de esa complejidad está sustentada por elementos como: complejas redes de sensores (para recolección de datos) y de comunicaciones, enormes cantidades de datos que deben ser analizados, complejas vistas y conocimiento complejo necesario para manejar los sofisticados procesos industriales.

En este contexto, usualmente los Sistemas Expertos (también conocidos como Sistemas Basados en Conocimiento) generan extensos árboles de inferencia, estados intermedios y datos que son guardados en robustas bases de datos. Esta información podría ser analizada y presentada a los usuarios, a la vez que se presentan las conclusiones de los Sistemas Expertos.

Contar con esa información puede ayudar a comprender mejor y analizar más en profundidad los resultados obtenidos de un sistema experto, y puede también además servir de base a procesos de auditoría de la calidad de la información presentada por un Sistema Experto especializado en cierto dominio complejo.   También, estos sistemas se pueden usar para ayudar a responder a situaciones complejas que requieran gestión de información en ciertos puntos del proceso de producción industrial.

Los sistemas reales como puede ser una mina de cobre, son sistemas dinámicos complejos que generan grandes cantidades de datos y transitan por múltiples estados que algunas veces son difíciles de determinar (Flores, 2010). Una forma de conocer el comportamiento de estos sistemas dinámicos es usando Sistemas Expertos que infieran y presenten el estado del sistema (Molina & Flores, 2012). Pero una forma de profundizar en el conocimiento del por qué un sistema experto llega a una conclusión (a un estado del sistema dinámico) es generar presentaciones de los estados intermedios por los que transita el Sistema Experto, antes de presentar una conclusión al usuario.

En este documento se describe un novedoso método presentado por Flores y colegas, descrito en (Flores et al., 2016) y que está basado en (Flores, 2010). El método  ha sido diseñado para generar explicaciones de los estados por los que transita un Sistema Experto (centrado en la biolixiviación de cobre)  para concluir a cerca del estado de un sistema dinámico complejo. El modelo ha sido validado en una pila de biolixiviación, en el contexto del desarrollo de un Sistema Experto para aumentar el conocimiento sobre el proceso de biolixiviación de cobre, que ha sido financiado por el Gobierno de Chile. Parte de la innovación de este método es que usa resultados de la inferencia del Sistema Experto (descripciones de estados intermedios), para generar las abstracciones que dan origen a la presentación multimedia del comportamiento de la pila de biolixiviación.

El resto de este documento está organizado de la forma siguiente, en la sección 2 se describe la metodología de trabajo ideada para generar el prototipo, en la sección 3 se describen trabajos relacionados y el estado del arte, seguidamente en la sección 4 se describe el método de la propuesta, un sistema inteligente de generación de explicaciones del comportamiento de un sistema dinámico complejo en forma multimedia. En este apartado 4 se describe tanto las tareas del método como la inferencia y el conocimiento representado usando Ontologías. En la sección 5 se describe el caso de estudio y la validación de la propuesta, seguidamente se presenta los agradecimientos y finalmente las referencias bibliográficas.

2.     Metodología de desarrollo del software

El desarrollo de software ha surgido como un medio para crear valor a los productos y servicios en muchas industrias (6) incluyen la industria minera de cobre. Actualmente los productos software de calidad dependen en gran medida del desarrollo de los procesos, la calidad final y el nivel de conocimiento utilizado para construir las respuestas (6), (1).

La construcción del prototipo software fue guiado por los pasos descritos en la Figura 1. La metodología corresponde a un proceso incremental que combina fases de Ingeniería de Software con pasos de Ingeniería del Conocimiento para generar el prototipo. Esta metodología incluye cinco pasos que se describen a continuación:

·      Identificación de requisitos, en esta etapa se identificó la necesidad del método para generar presentaciones de forma automática de los estados transitados por un Sistema Experto antes de generar las salidas. También se identificaron los conceptos, características y relaciones entre conceptos para representar el conocimiento en la ontología del dominio; de igual forma se identificaron las descripciones y piezas gráficas más adecuadas para mostrar los estados intermedios del sistema experto.

·      Diseño, en esta etapa se diseñaron los elementos de conocimiento y elementos discursivos que responden a lo identificado en la etapa 1, respecto a conocimiento del dominio y características de la información a presentar. También se diseñaron las tareas concretas del método para generar un plan de presentación.

·      Representación del conocimiento, en esta etapa se diseñó el modelo del conocimiento, todo lo relacionado con el conocimiento necesario para generar el plan de presentación y las presentaciones multimedia.

·      Construcción del prototipo, en esta etapa se construyó el prototipo según el modelo propuesto.

·      Validación, en esta etapa se validaron la utilidad práctica y la pertinencia de las descripciones según el plan de presentación.

 

 

3.     Contexto de trabajo

En esta sección se describe el estado del arte y trabajos previos que enmarcan el contexto de trabajo. Primero hablaremos de los Sistemas Expertos y el uso que este tipo de aplicaciones software está teniendo en la industria minera, particularmente en la industria del cobre, luego hablaremos de las Ontologías como técnica de representación de conocimiento y las potencialidades que representa para este tipo de trabajos (Kimble et al., 2016), finalmente hablaremos de los modelos de presentación, patrones de discurso y elementos discursivos como piezas fundamentales en la generación de un plan de presentación y posterior presentación de información en texto y gráficos, lo que está en franca concordancia con los objetivos de esta propuesta.

3.1. Los Sistemas Experto en las industrias modernas

Un sistema experto puede ser descrito como un sistema informático que posee un conocimiento específico (conocimiento experto) representado y funciona mediante la aplicación de un mecanismo de inferencia para obtener resultados; es de interés destacar que frecuentemente, los resultados obtenidos son similares a los obtenidos por un experto humano en la solución de ciertas tareas (Yang et al., 2016). El conocimiento sirve de base para las deducciones que hace el sistema mediante el mecanismo de inferencia, los sistemas experto basados en reglas son una forma concreta que está siendo usada en sistemas dinámicos donde el conocimiento de la estructura y comportamiento es relativamente claro (no necesariamente amplio) y también se dispone de conocimiento para establecer el comportamiento, dicho conocimiento puede ser expresado en reglas (también llamadas reglas de producción.

Los Sistemas Experto basados en reglas son una forma válida de usar el conocimiento e inferir estados (Khaliq et al., 2014), (Green et al., 2014). Esto es posible porque muchas de las reglas y  relaciones que gobiernan el comportamiento de un sistema dinámico se pueden representar mediante reglas, que son válidas además para simplificar la complejidad de esas reglas y relaciones (como por ejemplo leyes físicas) (Flores, 2010).

Los Sistemas experto se están usando en diversos dominios para tareas como la toma de decisiones, por ejemplo en (Yang et al., 2016) se describe un trabajo donde usa un sistema de expertos basado en reglas para analizar y predecir la preferencia de los consumidores de un nuevo producto. También en (Shabankareh & Hezarkhani, 2016) se describe un trabajo reciente en la industria de la minería de cobre; el trabajo descrito consiste en crear criterios para la futura explotación de este minera (en zonas no explotadas hasta ahora) usando conocimiento experto y la técnica de neuro-fuzzy para crear modelos y predicción de la explotación. En los sistemas expertos, la representación de conocimiento puede ser hecha de forma eficiente usando ontologías.

3.2. Ontologías como técnica de representación de conocimiento

Actualmente son varias las posibilidades para representar conocimiento de soporte a los Sistemas Inteligentes, una descripción interesante de estos tipos se puede encontrar en (Bimba et al., 2016); también es de interés mencionar que existen diversos tipos de conocimiento según trabajos como (Bimba et al., 2016), por ejemplo, actualmente se habla de bases de conocimiento lingüístico (Baker, 2014), bases de conocimiento experto (Yager, R. R., & Zadeh, 2012), (Kerr-Wilson & Pedrycz, 2016), ontologías y bases de conocimiento cognitivo (Sánchez & Moreno, 2008), (Sicilia, 2013).

Una definición formal de ontología es la propuesta en (Gruber, 1993), que dice: “una ontología es una especificación explícita de una conceptualización”. En una ontología se modela el vocabulario del dominio, básicamente usando los elementos (Mizoguchi, Vanwelkenhuysen, & Ikeda, 1995), (Taye, 2010), (Neches et al., 1991): concepto, características y relaciones entre conceptos. Las realizaciones de los conceptos son las instancias que son descritas por las características, las relaciones expresan conexiones entre conceptos. Otro elemento de una ontología es el axioma, que se usa para introducir restricciones entre los elementos de la ontología, por ejemplo, restricciones entre valores de instancias.

 3.3. Modelo de presentación

Trabajos previos usan métodos inteligentes para generar de forma automática presentaciones que integran texto e información gráfica, un ejemplo de esto es el trabajo descrito en (Green et al., 2004). Nuestra idea de modelo de presentación está orientada a cumplir con el objetivo de generar información en formato texto y gráficos, a partir de abstracciones de comportamiento (en forma de estados intermedios) de un sistema dinámico.

En trabajos anteriores se han generado soluciones que generan texto a partir de datos y conocimiento experto, entre estas soluciones están los sistemas que usan la técnica de data-to-text (Flores et al., 2016) o los métodos como el reportado en (Molina & Flores, 2012). Una de las razones que motiva a este tipo de propuestas es la creencia de que resúmenes lingüísticos de datos numéricos (como por ejemplo series temporales) puede ser más eficaz que la presentación tradicional de estos datos, en formatos como tablas, análisis estadísticos o gráficos de evolución. Pero para lograr un resumen lingüístico es necesario contar con conocimiento  semántico de aspectos conocidos del sistema.

Por lo antes descrito, se usa en esta propuesta la idea de patrón de discurso, que puede ser entendido como un conjunto de instrucciones que orientan la selección de operadores de presentación para disponerlos en un plan de presentación. El modelo de presentación está formado por estos elementos. A continuación se presenta una breve descripción de estos elementos.

·      Operadores de presentación. Son los encargados de llevar a cabo las diferentes formas de presentación se utilizan varios tipos de operadores de presentación. Por ejemplo, se manejan operadores de plantillas de texto que aportan patrones de frases. Además, se manejan otros operadores para presentaciones gráficas.

·      Patrones de discurso. Son estructuras parciales de discurso generales que expresan cómo presentar información en función de condiciones sobre el estado del sistema dinámico y el destinatario de la presentación. Los patrones de discurso establecen estrategias generales de formas de presentar información.

4.     Descripción de la propuesta

Nuestra propuesta consiste de un método general para generar presentaciones multimedia a partir de los resultados de un Sistema Experto focalizado en generar abstracciones del comportamiento de un sistema dinámico complejo.  Esta propuesta fue reportada previamente en (Flores et al., 2016). A continuación se detallan los elementos del modelo propuesto. El contexto de trabajo de nuestro modelo es el siguiente:

Por un lado, el tipo de Sistema Experto considerado en esta propuesta es un Sistema Experto basado en reglas desarrollado con la herramienta Drools1. El árbol de inferencia que se genera es capturado y volcado en un archivo con formato RDF/XML, que representa la entrada a un proceso de abstracción especialmente diseñado en nuestro modelo.

Por otro lado, el tipo de sistema dinámico debe contar con ciertas características. Primero, se debe conocer (en cierta medida, de forma que pueda generarse un modelo del dominio) las características de los componentes que lo integran y un mínimo de las relaciones (físicas, químicas, causales, etc.) que existentes entre los componentes. También deben ser sistemas gestionados bajo ciertos objetivos de producción y deben ser lo suficientemente complejos y generar abundante cantidad de datos, como para que el modelo propuesto despierte interés en los operadores y/o usuarios finales, en el sentido de que ayude a éstos a realizar tareas complejas como la toma de decisiones o la generación de alerta temprana.

A continuación se describen los elementos del modelo propuesto, usando el caso de una pila de biolixiviación para contextualizar la propuesta.

4.1. Modelo de Presentación.

El modelo de presentación contiene los criterios para crear automáticamente explicaciones sobre los resultados arrojados por el sistema experto; estos criterios ayudan a entender la dinámica del sistema. Este modelo combina formas de presentación como texto en lenguaje natural y elementos gráficos para ilustrar valores de series temporales.

El objetivo de este modelo es mejorar la visibilidad de los resultados del sistema experto, añadiendo información abstracta del árbol de inferencia. Las presentaciones multimedia son un esquema adecuado para este propósito y proporciona una manera eficiente de mostrar información compleja a partir de una fuente de datos (Molina & Flores, 2012).

La forma diseñada para esbozar las explicaciones es a través de un plan de presentación que especifica cómo presentar información. El plan de presentación maneja una base de conocimiento del dominio con dos tipos de elementos principales:

Los elementos de presentación son elementos explicativos utilizados para mostrar el estado del Sistema Experto y explicar los acontecimientos destacados. Específicamente en esta propuesta los elementos de presentación son plantilla de texto y directivas gráficas. Una plantilla de texto es una unidad de texto (segmentos de texto con variables para sustituir con información específica) a partir de los cuales se generan los textos explicativos.

Estas plantillas son frases en lenguaje natural diseñadas para comunicar de forma natural la secuencia de reglas disparadas por el Sistema Experto para llegar a una conclusión. Las variables de las plantillas de texto se instancian en tiempo de ejecución con valores concretos. La Figura 2 muestra un ejemplo de una plantilla de frase en el dominio de la biolixiviación.

 

 

Las directivas gráficas son los recursos didácticos que permiten comprender las causas y consecuencias de eventos expuestos o narrados mediante documentos escritos por medio de recursos educativos. También puede entenderse como unidades elementales que componen una visualización y que pueden entenderse atributos gráficos distinguibles como tamaño, color, posición, dirección, etc.

Esta propuesta aborda los operadores gráficos como instancias de gráficos de tipo barra, línea, 2D, 3D etc., los cuales son utilizados para mostrar comparaciones entre valores. Las estrategias de presentación se componen de por patrones de discurso, los cuales expresa cómo construir una parte de la presentación. Las estrategias de presentación puede entenderse como la forma de disponer de principio a fin la información en nodos de presentación (como por ejemplo texto, imágenes, etc.) y de combinar estos nodos de presentación, de forma que faciliten la comprensión de la información (Mejia, Muñoz & Muñoz, 2016).

Los patrones se formulan como una secuencia de objetivos comunicativos (entiéndase por objetivo comunicativo el propósito que tiene el sistema de transmitir información al usuario). Para esta propuesta se utiliza la narración como estructura discursiva y dentro de ésta es utilizado el estilo periodístico. 

Las estrategias de presentación son seleccionadas mediante un proceso de inferencia basado en reglas. Para representar las reglas se utilizó la lógica del predicado y se realizó una pseudo-representación basada en prolog, estas reglas se guardan en el modelo de presentación conformando una base de conocimiento.

La presentación completa está formada por la selección de varios patrones de discurso escogidos en tiempo de ejecución. Cada representación de un patrón de discurso es encabezada por un objetivo comunicativo. Un patrón puede contener:

. Objetivo, está relacionado con el objetivo comunicativo principal o general de la información.

. Condiciones, estas son planteadas mediantes funciones.

. Media, es donde se declaran la forma de presentación a utilizar.

. Cuerpo de la presentación.

Un ejemplo de patrón es el siguiente:

OBJETIVO: informar_titular(x)

CONDICIONES: existe(x) ^ final(x)

MEDIA: plantilla-texto

CUERPO: {“Temperatura interna estimada es” <f>”ºC, para la franja” <c>}

Este patrón de discurso tiene como objetivo comunicativo global informar sobre la conclusión a la que arribó el Sistema Experto. En este patrón se manejan el operador de presentación plantilla-texto descrito anteriormente.

Cada patrón puede incluir un conjunto de condiciones para ser seleccionado, en este caso fueron llamadas las funciones existe(x) y final(x). La función existe(x) verifica que existe un elemento x en la lista Objects que forma parte del comportamiento relevante obtenido por la tarea Extraer, mientras que la función final(x) verifica que el identificador del elemento x sea el último de la lista ActivationOrder. El valor de la variable f es obtenida de la matriz Matriz_valor, mientras que la variable c es un dato que se captura en el proceso.

4.2. Ontología para el  caso de estudio

Para validar el modelo fue utilizado un dominio del mundo real con suficiente complejidad, datos disponibles y un Sistema Experto que genera interpretaciones del comportamiento del sistema. Un pila de biolixiviación es un sistema dinámico real que tiene ciertas características como sigue: (1) una gran cantidad de elementos físicos complejos que podrían tener también un número significativo de características y conexiones entre ellos, (2) el sistema dinámico real es gestionado y supervisados por expertos humanos, y (3) estos expertos pueden interactuar con el sistema para cambiar su comportamiento.

Para representar el conocimiento del sistema se utilizó una ontología. La construcción de una ontología se realizó con Protégé2 (Gennari et al., 2003) y usando conocimiento previo, existente en la literatura en trabajos como (Abdel-Fattah, Haggag & Mahmoud, 2011) o (Soto et al., 2013). Para desarrollar la ontología, en esta propuesta se tuvieron en cuenta las siguientes fases:

.  Definir el alcance de la ontología.

.  Evaluar la posibilidad de reutilización de otras ontologías y/o partes de ontología.

.  Si existen ontologías que puedan ser reutilizadas habría que incluir el proceso para conseguir reutilizarlas, proceso que a su vez consta de diferentes fases y tareas a realizar.

.  Enumerar los términos que aparecen en el dominio.

.  Definir la taxonomía de conceptos. De arriba abajo, de abajo arriba o combinando las dos.

.  Definir las propiedades.

.  Definir las facetas.

.  Definir las instancias.

.  Comprobar las estructuras creadas.

Una primera evaluación de la propuesta es descrita en (Flores et al., 2016), en este documento se describe una segunda evaluación que fue realizada con el módulo de temperatura implementado por el Sistema Experto en el dominio de la biolixiviación. De este módulo se pretende representar todo el conocimiento relacionado con los factores que pueden determinar la temperatura interna de una pila. Como restricción de la propuesta se debe partir de los conceptos presentes en el modelo de objeto implementado por el Sistema Experto.

En una búsqueda preliminar realizada no se identificaron ontologías desarrolladas en el dominio en cuestión, por lo que no se tuvo en cuenta la posibilidad de reutilización de ontologías existentes.

Se valoraron  un total de 33 términos, de los cuales 26 fueron convertidos en clases y 7 en propiedades; la Tabla 1 muestra algunos términos del dominio que fueron considerados para la ontología del dominio.

 

 

Se utilizó el Protègè como herramienta para el diseño de la ontología. Al representar el conocimiento experto en una taxonomía de conceptos se obtuvo un total de 147 axiomas (teoremas que se declaran sobre relaciones que deben cumplir los elementos de la ontología) (3), los cuales permitirán en futuras versiones inferir conocimiento. Fueron identificadas 26 clases, 5 de ellas disyuntas y 2 equivalencias. Fueron declarados 58 axiomas relacionados con las propiedades de los datos.

La Figura 3 muestra en el ámbito de la herramienta Protègè. Existe una relación directa entre los conceptos de la jerarquía e clases con las clases identificadas del dominio. En la Figura 4 se muestran las propiedades de los objetos, para este caso sólo fueron identificadas dos relaciones binarias. Por último la Figura 5 presenta algunas propiedades de datos identificadas en la ontología. Para el caso de estudio, todos las propiedades identificadas están al mismo nivel (no se presentan jerarquías entre ellas).

 

 

 

 

 

5. Validación del Modelo

Para evaluar la operación correcta de la propuesta, el método utilizado fue estudio de caso. A pesar de que el estudio de caso no da lugar a relaciones causales como ocurre con los experimentos, éste permite comprender más en profundidad fenómenos en un contexto real. Este método tiene la capacidad de proporcionar resultados de investigación a partir de proyectos del mundo real como es el caso de la biolixiviación de cobre en una pila.

Existen un conjunto de elementos necesarios para planificar un estudio de caso, uno de estos elementos es la recolección de datos. Para esta investigación se tiene un conjunto de 86 franjas que corresponde al total de datos con que se cuenta en la pila de biolixiviación. Estas franjas se encuentran distribuidas en 4 pisos y además pueden ser divididas en franjas operativas y no operativas. Del total de los datos fueron seleccionados un conjunto de 19 casos típicos.

Las frases generadas (Tabla 2) son ejemplos de las posibles frases que podrían ser combinadas con gráficos para mejorar la comprensión de los datos. Estas frases son consideradas como apropiadas (que contribuyen a la descripción de lo que pasa en el sistema), por el equipo de desarrollo del prototipo. El proceso de validación de este prototipo está desarrollándose y los resultados parciales son esperanzadores.

 

 

Otro caso de estudio es reportado en (Flores et al., 2016). En ese documento, el caso está centrado en otra parte del proceso: la expresión de los genes y microorganismos del sistema.

5. Conclusiones

En este documento se describe un método que representa un paso adelante en las herramientas inteligentes de generación de lenguaje natural en base a plantillas y la combinación de este texto con otras formas de presentación para formar presentaciones multimedia.

En la propuesta se ha usado una ontología del dominio y conocimiento específico para el proceso de biolixiviación para la obtención de cobre, actividad de gran interés para la economía de muchos países (Data, 2013) y particularmente para Chile. El trabajo presentado está dentro del dominio de técnicas de generación de explicaciones en lenguaje natural, pero a diferencia de muchos trabajos previos en este dominio, nuestra propuesta incorpora una representación ontológica que provee más riqueza a la conceptualización del conocimiento y aporta flexibilidad a dicha conceptualización.

También se puede destacar que con el uso de la representación ontológica se aportan elementos que permiten identificar qué comportamiento es más relevante en un instante dado y cuál es la mejor manera de describirlo, de forma que sea un aporte a los usuarios especializados en el dominio de trabajo. Esto resulta un potente atractivo para replicar esta forma de representación en otros dominios con complejidad similar al tratado en este trabajo.

El algoritmo ideado genera explicaciones a partir de abstracciones de los estados intermedios que se encuentran descritos en el archivo RDF/XML generado a su vez por la herramienta Drools. Esto representa una poderosa posibilidad para generar información complementaria a los resultados (salidas) de un Sistema Experto. Información que puede ayudar a comprender los resultados del Sistema Experto o que puede ser usada para otras tareas como auditoría del funcionamiento del sistema software.

Otro aporte importante de nuestro trabajo es que las descripciones son cercanas a lo que un humano expresaría acerca del estado del sistema dinámico, dado que las frases han sido construidas usando conocimiento del dominio y la flexibilidad-potencia de la representación ontológica; de esta forma, un usuario especializado puede comprender mejor (potencialmente) lo que el Sistema Experto en biolixiviación de cobre está presentando.

Como línea futura de trabajo, el modelo debe ser probado en algún otro sistema dinámico complejo con las características necesarias para generar descripciones de comportamiento de la misma forma como se ha hecho en el dominio de la biolixiviación de cobre, y también se debe aplicar los casos de prueba (la etapa de validación de la metodología propuesta), a fin de valorar la pertinencia de las explicaciones que se generen de forma automática.

 

REFERENCIAS

Abdel-Fattah T. M., Haggag S. M. S. & Mahmoud M. E. (2011). Heavy metal ions extraction from aqueous media using nonporous silica. Chemical engineering journal, 175, 117-123.         [ Links ]

Baker C.F. (2014). FrameNet: a knowledge base for natural language processing. Proceedings of frame semantics in NLP: a workshop in honor of Chuck Fillmore, 1-5.

Bimba A. T., Idris N., Al-Hunaiyyan A., Mahmud R., Abdelaziz A., Khan S. & Chang V. (2016). Towards knowledge modeling and manipulation technologies: a survey. On International Journal of Information Management, 36(6), 857-871.         [ Links ]

Data P. (2013). ICSG PRESS RELEASE Date Issued: 20th December 2013 Copper: Preliminary Data for September 2013, 00(September 2013).         [ Links ]

Demergasso D. Galleguillos F., Soto P., Seron M. & Iturriaga V. (2010). Microbial succession during a heap bioleaching cycle of low grade copper sulfides: Does this knowledge mean a real input for industrial process design and control. Hydrometallurgy. 104(3), 382-390.         [ Links ]

Flores, V., Hadfeg, Y., Bekios, J., Quelopana, A., & Meneses, C. (2016, October). A method for automatic generation of explanations from a Rule-based Expert System and Ontology. In International Conference on Software Process Improvement, Springer International Publishing, 167-176.

Flores V. (2010). Generación automática de resúmenes multimedia de comportamiento de sistemas dinámicos mediante modelos de conocimiento del dominio. Tesis doctoral, Universidad Politécnica de Madrid (España).         [ Links ]

Green N., Carenini G., Kerpedjiev S., Mattis J., Moore J. & Roth S. (2004). AutoBrief: an Experimental System for the Automatic Generation of Briefings in Integrated Text and Information Graphics. International Journal of Human-Computer Studies, 61(1), 32-70.         [ Links ]

Gennari J., Musen M., Fergerson R., Grosso W., Crubezy M., Eriksson H., Noy N. & Tu S. (2003). The evolution of Protégé: an environment for knowledge-based systems development. International Journal of Human Computer Studies, 58(1), 89-123.         [ Links ]

Gruber, T. R. (1993). A translation approach to portable ontology specifications. Knowledge acquisition, 5(2), 199-220.         [ Links ]

Kaibin F., Hai L., Deqiang L., Wufei J. & Ping Z. (2014). Comparsion of bioleaching of copper sulphides by Acidithiobacillus ferrooxidans. African J. Biotechnol. 13(5), 664-672.         [ Links ]

Kerr-Wilson, J., & Pedrycz, W. (2016). Design of rule-based models through information granulation. Expert Systems with Applications, 46, 274-285.         [ Links ]

Kimble, C., de Vasconcelos, J. B., & Rocha, Á. (2016). Competence management in knowledge intensive organizations using consensual knowledge and ontologies. Information Systems Frontiers, 18(6), 1119-1130.         [ Links ]

Khaliq A., Rhamdhani M. A., Brooks G. & Masood S. (2014). Metal extraction processes for electronic waste and existing industrial routes: a review and Australian perspective. Resources, 3, 152-179.         [ Links ]

Shabankareh, M., & Hezarkhani, A. (2016). Copper potential mapping in Kerman copper bearing belt by using ANFIS method and the input evidential layer analysis. Arabian Journal of Geosciences, 9(5), 1-12.         [ Links ]

Soto P., Galleguillos P., Seron M., Zepeda V, Demergasso C. & Pinilla C. (2013). Parameters influencing the microbial oxidation activity in the industrial bioleaching heap at Escondida mine, Chile. Hydrometallurgy, 133, 51-57.         [ Links ]

Mejia J., Muñoz E. & Muñoz M. (2016). Reinforcing the applicability of multi-model environments for software process improvement using knowledge management. Sci. Comput. Program, 121, 3-15.         [ Links ]

Mizoguchi, R., Vanwelkenhuysen, J., & Ikeda, M. (1995). Task ontology for reuse of problem solving knowledge. Towards Very Large Knowledge Bases: Knowledge Building & Knowledge Sharing, 46- 57.         [ Links ]

Molina M. & Flores V. (2012). Generating multimedia presentations that summarize the behavior of dynamic systems using a model-based approach. Expert Systems with Applications. 39(3), 2759-2770.         [ Links ]

Ongenae, F., Claeys, M., Dupont, T., Kerckhove, W., Verhoeve, P., Dhaene, T., & De Turck, F. (2013). A probabilistic ontology-based platform for self-learning context-aware healthcare applications. Expert Systems with Applications, 40(18), 7629-7646.         [ Links ]

Sánchez, D., & Moreno, A. (2008). Learning non-taxonomic relationships from web documents for domain ontology construction. Data & Knowledge Engineering, 64(3), 600-623.         [ Links ]

Sicilia, M. A. (Ed.). (2013). Handbook of metadata, semantics and ontologies. World Scientific.         [ Links ]

Neches, R., Fikes, R. E., Finin, T., Gruber, T., Patil, R., Senator, T., & Swartout, W. R. (1991). Enabling technology for knowledge sharing. AI magazine, 12(3), 16-36.         [ Links ]

Taye, M. M. (2010). Understanding semantic web and ontologies: Theory and applications. arXiv preprint arXiv:1006.4567.         [ Links ]

Yager, R. R., & Zadeh, L. A. (Eds.). (2012). An introduction to fuzzy logic applications in intelligent systems (165). Springer Science & Business Media.         [ Links ]

Yang, Y., Fu, C., Chen, Y. W., Xu, D. L., & Yang, S. L. (2016). A belief rule based expert system for predicting consumer preference in new product development. Knowledge-Based Systems, 94, 105-113.         [ Links ]

 

Agradecimientos

Este trabajo se llevó a cabo gracias a la participación de los autores en un proyecto de investigación en el campo de la biolixiviación del cobre, código del proyecto: IT13I20042.

 

1 www.drools.org

2 http://protege.stanford.edu/

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons