8
MOREA: Una arquitectura multinivel basada en el conocimiento para simulación de sistemas hidrológicos A. Díaz E. Guzmán M. Trella R. Conejo Dpto. Lenguajes y Ciencias de la Computación Universidad de Málaga Complejo Tecnológico, Campus de Teatinos 29071 Málaga, España e-mail: {adiaz, guzman, trella, conejo}@iaia.lcc.uma.es Keywords: representación del conocimiento, programación cognitiva, programación pa- ra no-programadores, hidrología. ABSTRACT. En la actualidad los sistemas automáticos de información hidrológica proporcionan un gran volumen de información. Esta información no puede ser procesada mediante procedimien- tos manuales. En este artículo se presenta una herramienta visual denominada MOREA (Modelo de REalidad Artificial), que permite la construcción de modelos de representación de cuencas hi- drológicas, para su posterior simulación, facilitando al operador el análisis y visualización de los resultados. Mediante la aplicación de modelos diseñados y calibrados por el ingeniero de conoci- miento, MOREA permite emular el comportamiento de una cuenca hidrológica. 1 INTRODUCCIóN La herramienta descrita en este artículo forma parte del proyecto ARQUIMEDES (AR- Quitecturas Inteligentes basadas en Modelos para Evaluación de Datos de Sistemas de Información en Tiempo Real), que tiene como objetivo el desarrollo de una herramienta visual para la construcción, calibración y ejecución de modelos, así como la validación de los datos. En MOREA (MOdelo de REalidad Artificial) se llevan a cabo las tareas de construcción, calibración y ejecución de modelos. Mediante una herramienta dotada de una interfaz visual, se permite por un lado, al operador estratégico, la construcción del esquema simbólico representativo de una cuenca hidrológica mediante piezas basadas en el conocimiento. Por otro lado, MOREA también permite realizar un análisis exhaustivo y comparativo de los resultados obtenidos tras la simulación de los modelos. La inteligencia artificial ha estado mucho tiempo buscando mecanismos de representa- ción del conocimiento con los que se pudiera expresar cualquier tipo de conocimiento. Sin embargo, aunque ciertas tareas pueden ser construidas mediante estas representa- ciones universales del conocimiento, hay problemas que es necesario resolver a mayores niveles de abstracción. Se trata de mostrar una solución al problema desde la perspecti- va del comportamiento que el sistema debe mostrar y del conocimiento implicado en el mismo, con independencia de los detalles de implementación. Es, en definitiva, una des- cripción del sistema al nivel del conocimiento según la propuesta de Newell [Newell82]. Ejemplos en los que se utilizan estos mecanismos de representación del conocimiento aplicados al dominio de la hidrología son los sistemas CYRAH [Garrote, 90] y SIRAH [Alonso, 93], que dieron origen a la metodología KSM [Cuena, 94]. En este trabajo se propone la estructuración del conocimiento hidrológico en dos niveles. Un primer nivel,

1 INTRODUCCIóN - UMA Esta arquitectura es capaz a su vez de representar simultáneamente posibles situaciones que ocurren en una cuenca, sin necesidad de realizar simulaciones diferentes,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

MOREA: Una arquitectura multinivel basada en el conocimiento parasimulación de sistemas hidrológicos

A. Díaz E. Guzmán M. Trella R. ConejoDpto. Lenguajes y Ciencias de la Computación

Universidad de MálagaComplejo Tecnológico, Campus de Teatinos 29071

Málaga, Españae-mail: {adiaz, guzman, trella, conejo}@iaia.lcc.uma.es

Keywords: representación del conocimiento, programación cognitiva, programación pa-ra no-programadores, hidrología.

ABSTRACT. En la actualidad los sistemas automáticos de información hidrológica proporcionanun gran volumen de información. Esta información no puede ser procesada mediante procedimien-tos manuales. En este artículo se presenta una herramienta visual denominada MOREA (Modelode REalidad Artificial), que permite la construcción de modelos de representación de cuencas hi-drológicas, para su posterior simulación, facilitando al operador el análisis y visualización de losresultados. Mediante la aplicación de modelos diseñados y calibrados por el ingeniero de conoci-miento, MOREA permite emular el comportamiento de una cuenca hidrológica.

1 INTRODUCCIóN

La herramienta descrita en este artículo forma parte del proyecto ARQUIMEDES (AR-Quitecturas Inteligentes basadas en Modelos para Evaluación de Datos de Sistemas deInformación en Tiempo Real), que tiene como objetivo el desarrollo de una herramientavisual para la construcción, calibración y ejecución de modelos, así como la validaciónde los datos. En MOREA (MOdelo de REalidad Artificial) se llevan a cabo las tareas deconstrucción, calibración y ejecución de modelos. Mediante una herramienta dotada deuna interfaz visual, se permite por un lado, al operador estratégico, la construcción delesquema simbólico representativo de una cuenca hidrológica mediante piezas basadas enel conocimiento. Por otro lado, MOREA también permite realizar un análisis exhaustivoy comparativo de los resultados obtenidos tras la simulación de los modelos.La inteligencia artificial ha estado mucho tiempo buscando mecanismos de representa-ción del conocimiento con los que se pudiera expresar cualquier tipo de conocimiento.Sin embargo, aunque ciertas tareas pueden ser construidas mediante estas representa-ciones universales del conocimiento, hay problemas que es necesario resolver a mayoresniveles de abstracción. Se trata de mostrar una solución al problema desde la perspecti-va del comportamiento que el sistema debe mostrar y del conocimiento implicado en elmismo, con independencia de los detalles de implementación. Es, en definitiva, una des-cripción del sistema al nivel del conocimiento según la propuesta de Newell [Newell82].Ejemplos en los que se utilizan estos mecanismos de representación del conocimientoaplicados al dominio de la hidrología son los sistemas CYRAH [Garrote, 90] y SIRAH[Alonso, 93], que dieron origen a la metodología KSM [Cuena, 94]. En este trabajo sepropone la estructuración del conocimiento hidrológico en dos niveles. Un primer nivel,

Figura 1: Arquitectura del sistema.

a un mayor grado de abstracción, en el que se definen las piezas básicas o “ladrillos”que pueden ser utilizados en el siguiente nivel. En el segundo nivel de conocimiento,se utilizan los componentes antes mencionados para definir esquemas representativos decuencas hidrológicas, permitiendo a su vez la aplicación de modelos para emular y pre-decir el comportamiento de los elementos físicos de las cuencas. De esta forma, todo elconocimiento necesario sobre los componentes físicos de los sistemas hidrológicos quedarecogido en estas piezas de conocimiento.

2 ARQUITECTURA DEL SISTEMA

La arquitectura del sistema (figura 1) viene determinada por los siguientes módulos: losmodelos de comportamiento, la interfaz de gestión de modelos, un sistema de manteni-miento de la coherencia entre hipótesis (SMACH), el modelo de configuración genérico,el modelo de representación del dominio, y las interfaces de construcción de modelos yde operación.Los modelos de comportamiento son métodos propios del dominio de la hidrología, ex-ternos a los operadores y al ingeniero del conocimiento que se utilizan para modelar elcomportamiento de los distintos elementos físicos de una cuenca hidrológica. Estos mo-delos pueden implementarse bien de forma externa, incluyendose posteriormente en elsistema mediante la interfaz de gestión de modelos, o bien internamente mediante unlenguaje de propósito específico (COVALTO) en base a operaciones aritméticas básicas.Esta arquitectura es capaz a su vez de representar simultáneamente posibles situacionesque ocurren en una cuenca, sin necesidad de realizar simulaciones diferentes, por ejem-plo, es posible modelar a la vez situaciones tan dispares como que un embalse tenga suscompuertas abiertas y que las tenga cerradas. A estas posibles situaciones las denomi-namos hipótesis. El entorno está dotado de un módulo, SMACH (Sistema de Manteni-miento Automático de Coherencia entre Hipótesis) [Guzmán y Díaz, 99] que permite lagestión de la coherencia entre las hipótesis formuladas.El ingeniero del conocimiento se encarga de diseñar el modelo de configuración genérico,en el que se recogen las diversas unidades cognitivas y métodos que pueden utilizar-se para la construcción de modelos de representación del dominio. Una vez definido el

modelo de configuración genérico, el operador estrátegico, mediante la interfaz de cons-trucción de modelos, podrá definir, de manera intuitiva, un modelo de representacióndel dominio para una cuenca hidrológica concreta, en base a instancias de las unidadescognitivas definidas y a los métodos declarados en el modelo genérico. Tanto el modelode configuración genérico como el modelo de representación del dominio están escritosutilizando el lenguaje COVALTO, desarrollado específicamente para ello.Por último, la interfaz de operación facilitará al operador el análisis de los datos obtenidostras la simulación de la representación del dominio.

3 MODELO DE CONFIGURACIÓN GENÉRICO

Para representar un sistema físico es ya tradicional describir su estructura mediante laagrupación de un conjunto finito de primitivas de representación del conocimiento. Me-diante estas primitivas, el ingeniero del conocimiento, encargado de aplicar su experien-cia en el campo de la hidrología para el diseño del modelo genérico, determina cuáles vana ser las piezas necesarias para la construcción de modelos de representación de un cier-to dominio. De esta forma la representación de la estructura de una cuenca hidrográficase realiza mediante la agregación de diversos componentes conceptuales que represen-tan a objetos físicos del dominio. Para ello, se debe definir una correspondencia entrelos objetos físicos y las entidades conceptuales que los representan. La representacióndel comportamiento de la cuenca hidrográfica resulta de la agregación de los modelosde comportamiento de cada uno de los componentes. Esta representación del mundofísico es en principio independiente del problema concreto a resolver, aunque cada pro-blema incorporará a este modelo objetos que le son propios. De esta forma es posibleconstruir para un mismo dominio, en este caso la hidrología, un núcleo común de obje-tos que puedan ser reutilizados para diversas tareas tales como la validación de datos, ladeterminación de estrategias óptimas de explotación de embalses, etc.Para llevar a cabo esta modelización de datos, y tal y como se realiza en otros siste-mas anteriores que aplican técnicas de inteligencia artificial al dominio de la hidrología[Garrote, 90] y [Conejo, 95], se utilizan los componentes conceptuales, agentes o unidadescognitivas. Los tipos de unidades cognitivas utilizados son los siguientes:Agentes sensores:Pluviómetros: representan a los sensores encargados de medir la intensidad de lluvia.Aforos: representan a los sensores encargados de medir el caudal en un cauce.Niveles: representan a los sensores que miden la cota de agua en los embalses.Agentes físicos de la cuenca:Áreas receptoras: representan a una subcuenca en la que se produce la transferencialluvia-escorrentía.Tramos de transporte: representan a un tramo de un cauce de la red hidrológica por elque circula un cierto caudal.Embalses: representan las obras de regulación realizadas sobre la red hidrológica.Confluencias: representan un punto de la red hidrológica en el que confluyen dos o máscomponentes.Cada una de estas unidades cognitivas se representa mediante un conjunto de datos pro-pios, a los que se denomina atributos, que recogen características de los elementos de una

Figura 2: Sintaxis de una unidad cognitiva.

Figura 3: Fragmento de un fichero deconfiguración genérico (I).

Figura 4: Fragmento de un fichero deconfiguración genérico (II).

cuenca hidrológica. Ejemplos de atributos para la unidad cognitiva pluviómetro son lalocalización, que expresa, en coordenadas UTM, dónde se encuentra dentro de la cuenca;y medidas, que es una serie temporal que almacena la intensidad de lluvia recogida.Además de los atributos, los agentes contienen un conjunto de modelos que permiteninferir los valores de unos atributos en función de otros, y que se configuran mediantesus correspondientes parámetros. Estos modelos representan tanto modelos teóricos defuncionamiento físico como modelos heurísticos definidos por los operadores expertos.Una misma unidad cognitiva puede disponer de varios modelos. La arquitectura no im-pone ninguna restricción en cuanto al número de modelos a emplear, y pueden ser de dostipos: Internos: son aquéllos definidos por el usuario, mediante el lenguaje COVALTO,en función de operaciones aritméticas básicas como suma, resta, multiplicación, división,etc. Externos: son aquéllos que han sido implementando directamente en un lenguaje dealto nivel. Además es posible declarar modelos genéricos, correspondientes a funcionesmatemáticas que pueden ser usadas por cualquier unidad cognitiva, como por ejemplola combinación lineal, la convolución, etc. Estos modelos genéricos pueden ser tambiéninternos o externos.Desde el punto de vista del nivel de implementación, estas unidades cognitivas se subs-tancian mediante el lenguaje COVALTO que tiene una sintaxis similar a la de los len-guajes orientados a objeto, pero a un mayor nivel de abstracción y adaptado al dominiohidrológico.En la figura 2 se muestra la sintaxis utilizada para definir una unidad cognitiva en CO-VALTO. Las unidades cognitivas pueden derivarse de otras, heredando de esta forma,los atributos y modelos de la unidad padre. En el caso de que una unidad cognitiva no

Figura 5: Sintaxis de un objetoen COVALTO.

Figura 6: Fragmento del fichero derepresentación del dominio.

se derive de ninguna otra, se omite la declaración ES UNA <clase padre>. La declaraciónde atributos puede ir precedida de tres tipos de etiquetas: <ENTRADA>, que indica que,cuando la unidad cognitiva sea instanciada, el valor del atributo corresponde con el deotro atributo etiquetado como <SALIDA> de otra instancia de una unidad cognitiva; ob-viamente, ambos atributos deberán ser del mismo tipo. En cada unidad puede habercomo máximo un atributo etiquetado como entrada y otro etiquetado como salida. Eltercer tipo de etiqueta es <ESTADO>. Con este tipo de etiqueta se indica que, tras realizarla simulación de la cuenca hidrográfica, el valor del atributo se almacenará en un ficherodenominado fichero de estado de salida.Como ejemplo ilustrativo, se muestra en la figura 4 un fragmento del fichero de configu-ración genérico utilizado para la cuenca del río Serpis. En la figura 3 han sido declaradosvarios modelos genéricos.

4 MODELO DE REPRESENTACIÓN DEL DOMINIO

La representación de una cuenca concreta se realiza mediante la combinación de unao varias instancias de las unidades declaradas en el fichero de configuración genérico,asignando valores adecuados a cada uno de sus atributos, seleccionando los modelosmás adecuados y calibrando cada uno de esos modelos mediante sus correspondientesparámetros. El conjunto de estos objetos debidamente instanciados es lo que se denominamodelo de representación del dominio.El modelo del dominio, junto con el modelo de configuración genérico son simulados apartir de un conjunto de datos obtenidos por el SAIH (Sistema Automático de Informa-ción Hidrológica), para su posterior análisis.Como se puede apreciar en la figura 5 la notación para describir un objeto en COVAL-TO es análoga a la utilizada para definir una unidad cognitiva en el fichero genérico. Eneste caso los atributos van acompañados de su valor correspondiente. Este valor pue-de obtenerse de cuatro formas distintas: Asignándole un valor directamente; mediantela aplicación de un modelo, bien genérico, o bien propio de la unidad; por medio de lainstrucción del lenguaje FICHERO(<$tipo_fichero>, <identificador>), que indica que el va-lor del atributo se tomará del fichero de datos (fichero de episodios, de subcuencas, ...)correspondiente al identificador indicado en el segundo parámetro de la instrucción. Por

último, el valor del atributo puede ser un atributo de otro objeto. La sintaxis para expre-sarlo es la utilizada en la figura para asignar el valor al atributo3.En la figura 6 puede verse el código en COVALTO correspondiente al área receptoraEncarroz perteneciente a la cuenca del río Serpis. Este objeto es una instancia de la unidadcognitiva área receptora definida en el fichero de configuración genérico. Cabe destacarel valor asignado al atributo pluviometros como un conjunto de series provenientes delatributo medidas de dos objetos instancias de un unidad cognitiva pluviómetro. Tambiénes necesario mencionar que los parámetros en las llamadas a los modelos pueden ser, obien valores directos, o bien atributos del propio o de otros objetos.

5 INTERFACES DE CONSTRUCCIÓN Y OPERACIÓN DEMODELOS HIDROLÓGICOS

A fin de proporcionar un soporte computacional a la arquitectura propuesta, se ha di-señado un entorno de programación visual que permite la construcción, calibración yejecución de modelos. Con esta herramienta se pretende facilitar la creación de la confi-guración del dominio de forma que pueda ser diseñada, modificada y conformada por elpropio usuario final, con unos conocimientos mínimos sobre programación, y de acuerdoa sus propias necesidades, tal como lo hace actualmente con programas más simples. Esteentorno servirá a su vez de soporte a la ejecución y visualización de resultados de formaordenada de acuerdo a la propia estructura del problema. Mediante esta herramienta,la definición de la configuración del dominio se realiza de forma gráfica, generando fi-nalmente de forma automática el fichero de configuración del dominio correspondienteen lenguaje COVALTO añadiendo además información adicional necesaria para que lainterfaz pueda recuperar el esquema posteriormente.El entorno toma como entrada el fichero de configuración genérico, en el que se han defi-nido las unidades cognitivas necesarias asignándoles un conjunto adecuado de atributosy modelos consistentes con estos atributos. Mediante este mecanismo se dispone de unentorno de programación dinámico, que se configura según el fichero genérico. El núme-ro de atributos y de modelos disponibles no está implementado de forma estática en elentorno, sino que se lee del fichero de configuración genérico, lo que facilitará en el futurola inclusión de nuevos modelos tanto internos como externos. A partir de las definicionesdel modelo genérico, el entorno permite la creación de objetos y la asignación de valoresa los atributos de estos objetos. Esta asignación de valores se efectúa mediante una inter-faz basada en diálogos interactivos, en el caso de objetos con valor constante; mediante lalectura de valores de los ficheros de episodio y los ficheros descriptivos de la cuenca, en elcaso de las series de entrada iniciales, coordenadas, y tablas; o mediante la construccióndel grafo de relaciones entre objetos, en el caso de composición de modelos.Este grafo constituye una representación visual de la configuración del dominio en el cuállos nodos corresponden a objetos del dominio y los arcos representan las interrrelacionesentre estos objetos. La construcción del grafo es el eje central de la herramienta, ya quesirve de soporte al resto de las operaciones, y a partir de él se genera automáticamente elfichero de representación del dominio.Para crear este grafo deben realizarse las siguientes operaciones: (1) Creación de objetos.Mediante la selección del icono correspondiente, se seleccionan las unidades cognitivas

Figura 7: Ejemplo de aplicación para la cuenca del río Serpis.

a partir de las cuales se crearán los objetos, que se irán situando sobre la pantalla. (2)Definición de las relaciones de entrada y salida. Mediante la selección de los iconos co-rrespondientes se dibujan los arcos del grafo. Estos arcos representan una conexión entrelos atributos de dos objetos. En general estos atributos corresponden a las series tempora-les intensidad de lluvia o de caudal, etc. La selección de los atributos de entrada y salidaque conecta el arco se hace de forma inteligente utilizando para ello la información con-tenida en la configuración genérica. (3) Asignación de valores a los atributos. Mediantediálogos interactivos que se activan sobre cada objeto se dan valores a los atributos cons-tantes, o bien se indica los ficheros de los cuales se obtendrán estos valores. En el casode atributos de salida, que deben ser calculados mediante la aplicación de un modelo seselecciona algunos de los modelos disponibles en la unidad cognitiva asignando valoresa los argumentos de la llamada en caso necesario, o bien se definen modelos específicospara cada objeto en concreto mediante el lenguaje COVALTO.Las operaciones anteriores no se realizan necesariamente en el orden indicado, pudiendointercalarse libremente la creación de objetos, su enlace y la definición de atributos. Elentorno permite tanto la creación como la modificación del grafo y se encarga de asegurarla consistencia interna de la configuración resultante.Una vez definida la configuración del dominio mediante el grafo, y asignados los valoresconstantes a los atributos, se cargan los ficheros de episodio, y los ficheros que contienenlas coordenadas de las subcuencas, cauces, etc., así como las tablas de aforos y embalses.Alcanzado este punto se puede proceder a realizar la simulación hidrológica mediante laejecución ordenada de los modelos de cada objeto. El orden de ejecución está condiciona-do por el grafo, pero el entorno es capaz de efectuarla de forma automática. Finalmente,una vez realizada la simulación, se muestran los resultados a petición del usuario. Paraello la interfaz permite visualizar los valores de los atributos de cada objeto en una venta-na o combinar en una misma ventana la representación de atributos de distintos objetos.Así mismo, pueden realizarse representaciones esquemáticas de la información obtenidatras la simulación, bien sea sobre el propio grafo o bien mediante esquemas o croquisespecíficos. Los valores de las series temporales pueden ser representados gráficamentepara su posterior comparación.

6 CONCLUSIONES

En este trabajo se presenta una herramienta visual, MOREA, que permite la construc-ción de una representación de cuencas hidrológicas de forma simple e intuitiva. Ademáspermite realizar un análisis exhaustivo de los datos obtenidos, que anteriormente era rea-lizado a través de procedimientos manuales. La estructuración del conocimiento en dosniveles: un nivel de mayor abstracción, el modelo genérico, y otro de menor grado deabstracción, el modelo del dominio, permiten la adaptación a cualquier cuenca hidroló-gica, así como la agregación de nuevos modelos de comportamiento para los elementosintegrantes de los esquemas definidos. Mediante este entorno se obtiene una herramientaque facilita la programación para no programadores con un lenguaje de propósito especí-fico. El usuario mediante una interfaz gráfica es capaz de contruir, de forma transparente,un modelo de representación del dominio en COVALTO. Se facilita, de esta forma, la ad-quisión y depuración del conocimiento manejado por dicho usuario.En la actualidad, las líneas de trabajo se fundamentan en la construcción del soporte ade-cuado para la validación de datos y su posterior diagnóstico, basándonos en la confron-tación de las observaciones realizadas sobre el sistema en el mundo real con las inferidasa partir del modelo construido a tales efectos. El conocimiento necesario para llevar acabo la validación de datos se expresa mediante la agregación de reglas de coherencia de-finidas en lenguaje COVALTO, dentro del fichero de configuración genérico que imponeuna serie de restricciones sobre la información contenida en los objetos implicados. Estasreglas permiten trabajar simultáneamente con un conjunto de hipótesis sobre el compor-tamiento de los elementos que componen una cuenca.

Referencias

[Alonso, 93] Alonso, M. Una contribución a la programación cognitiva: Arquitecturas de se-gunda generación para representación del conocimiento. Tesis Doctoral. Facultad de Infor-mática. Universidad Politécnica de Madrid. Madrid. (1993).

[Conejo, 95] Conejo, R. Sistemas basados en el conocimiento aplicados a la validación de infor-mación hidrológica en tiempo real. Tesis Doctoral. E.T.S.I. Caminos, Canales y Puertos.Universidad Politécnica de Madrid. Madrid. (1995).

[Cuena, 94] Cuena, J. KSM: An Environment for Knowledge Oriented Design of ApplicationUsing Structured Knowledge Architectures en "Applications and Impacts”. IFIP’94. vol.2.Brunstein K. y Raubolds E. (eds). Elsevier Science B.V. Noth-Holand. (1994).

[Garrote, 90] Garrote, L. Modelos hidrológicos de ayuda a la decisión en tiempo real basadosen técnicas de inteligencia artificial. Tesis Doctoral. E.T.S.I. Caminos, Canales y Puertos.Universidad Politécnica de Madrid.Madrid. (1990).

[Guzmán y Díaz, 99] Guzmán, E. y Díaz, A. SMACH: Un Sistema de Mantenimiento Auto-mático de Coherencia entre Hipótesis basado en el conocimiento. (Pendiente de aceptación enCAEPIA’99).

[Newell82] Newell, A. The Knowledge Level. Artificial Inteligence 18, (1982).