SISTEMAS MULTI-AGENTES PARA TRATAMIENTO DE SITUACIONES ANORMALES EN PROCESOS INDUSTRIALES
César Bravo*, Eliezer Colina**, Francklin Rivas Echeverría^, José Aguilar ^^
Universidad de Los Andes Facultad de Ingeniería Departamento de Sistemas de Control
Mérida 5101, Venezuela
* e-mail: [email protected]
^e-mail: [email protected]
**e-mail: [email protected]
^^e-mail: [email protected] Phone: (58) 274-2402847 Fax: (58) 274-2402846
Abstract: Este trabajo presenta el modelo de una aplicación de tratamiento de situaciones anormales en instalaciones industriales utilizando sistemas multiagentes. Se propone una arquitectura de tres niveles que permite modelar, desde los objetos de negocio que conforman el proceso productivo, hasta las aplicaciones que dan soporte al mismo, obteniendo un modelo global del proceso monitoreado. Se hace uso del marco de referencia del Sistema de Control Distribuido Inteligente Basado en Agentes (SCDIA) para modelar la estructura de la parte del sistema encargada del tratamiento de fallas.
Keywords: Tratamiento de situaciones anormales, Sistemas multiagentes, Automatización Industrial.
1. INTRODUCCIÓN
Las organizaciones orientadas a la producción poseen, cada día más, un mayor grado de automatización y, en consecuencia, los procesos que se desarrollan en las mismas son cada vez más complejos. La falla en una de las instalaciones involucradas con el proceso, o la ocurrencia de alguna situación anormal dentro del mismo, puede traer serias consecuencias, que van desde afectar la calidad y/o cantidad de los productos finales, hasta daños a los equipos, al ambiente y al personal involucrado con el proceso. Por otro lado, se ha
comprobado que la atención a tiempo de las situaciones anormales en un proceso industrial conlleva a mayores beneficios que los obtenidos, por ejemplo, por el uso de técnicas de optimización [Noureldin, 2002]. Es por esto, que cada vez hay mayor interés en el desarrollo de aplicaciones de manejo de situaciones anormales en instalaciones industriales.
Un gran número de las aplicaciones existentes en el mercado para el manejo de situaciones anormales están basadas en sistemas expertos [www.gemsym.com, www.nexusengineering.com]
cuyas bases de conocimientos son alimentadas por
V Congreso de la Asociación Colombiana de Automática (ACA) Julio 17 al 19 de 2003. Medellín, Colombia
expertos tanto en el área de manejo de fallos, como en los procesos en los cuales van a ser implantados los sistemas; dichas aplicaciones se encargan de detección, diagnóstico, emisión de alarmas y recomendaciones a los operadores de los procesos.
Sin embargo, además de las tareas antes mencionadas, es deseable que estos sistemas tengan capacidad de comunicación con otras aplicaciones, como por ejemplo, aplicaciones de control de procesos, de mantenimiento, de manejo de recursos, etc.; otros aspectos importantes a considerar son la detección de modos de fallos que no hayan sido previamente identificados, manejo de fallas incipientes y, particularmente, que el sistema sea lo suficientemente autónomo para tomar decisiones ante la ocurrencia de una situación anormal y para modificar su comportamiento en función de la experiencia obtenida.
Justamente, las características que se acaban de mencionar son las características propias de los agentes inteligentes [Weiss, 1999, Bigus, 2000]. En este trabajo se propone el modelo de una aplicación para el tratamiento de situaciones anormales basado en sistemas multiagentes (SMA´s), buscando explotar todas las potencialidades de la inteligencia artificial distribuida en el abordaje de este problema tan importante para las organizaciones orientadas a la producción.
2. SISTEMAS MULTIAGENTES La teoría de agentes surge como producto de la evolución de la inteligencia artificial en el camino de dotar a los sistemas computacionales de características antropomórficas. Unas de las principales debilidades de los sistemas computacionales es su falta de autonomía. En general, una aplicación computacional hace lo que el usuario (o en todo caso, el programador) ha decidido que haga; pero en ciertos casos se requiere que esas aplicaciones tomen la iniciativa y emprendan acciones en función de lograr sus objetivos, esto sin la intervención de un humano o de algún otro sistema. De esta forma se puede decir que el sistema computacional estaría colaborando con los usuarios en la solución de los problemas [Bigus, 2000].
Por otro lado, la relación con el ambiente en el cual se desarrolla el sistema computacional es un elemento fundamental para que el mismo pueda responder de forma eficiente, aun cuando se produzcan cambios en las condiciones de dicho ambiente. La teoría de
agentes involucra estas características mediante arquitecturas bien definidas.
Existen diferentes tipos de arquitecturas de agentes, entre ellas una de las más utilizadas es la arquitectura BDI (Beliefs, Desires & Intentions). En esta arquitectura se propone que el agente conste de una estructura de datos en donde se representan tres elementos fundamentales: las creencias, ¿qué es lo que el agente considera cierto acerca del entorno que lo rodea?; los deseos, ¿en qué quiere el agente que se convierta el ambiente que lo rodea?; y las intenciones, que son las metas con las que se compromete el agente en el momento actual. Además, se distinguen dos tipos de comportamientos: en primer lugar un comportamiento reactivo, en donde el agente actúa según los eventos que ocurren en su ambiente actual; y en segundo lugar, un comportamiento deliberativo, mediante el cual el agente evalúa y modifica sus creencias, deseos e intenciones en función de las percepciones del ambiente y de la evolución de su estado interno. El comportamiento deliberativo se lleva a cabo por medio de funciones de revisión de creencias, deseos (generación de opciones) o intenciones (filtro).
De manera esquemática, el funcionamiento de un agente con arquitectura BDI se puede describir mediante la figura 1.
percepción
Func. Revisión de Creencias
acción Creencias
Deseos Gen. De opciones
Filtro Intenciones
Acción
Fig. 1. Arquitectura BDI.
Cuando los agentes responden ante ambientes que
cambian rápidamente y son conscientes que sus acciones no tendrán el mismo efecto ante el ambiente, debido a los cambios en el mismo, se dice que los agentes son inteligentes. Cuando se habla de inteligencia se infiere que debe haber métodos de razonamiento que definan el comportamiento del agente. Estos métodos de razonamiento se fundamentan en técnicas de inteligencia artificial.
Cuando se habla de sistemas donde existe una colección de agentes que tienen habilidad social para comunicarse y para cooperar entre sí en la búsqueda de lograr objetivos específicos, estamos hablando de SMA.
En los SMA existe una variedad de agentes, cada uno con una visión parcial del ambiente y con la capacidad de comunicarse con los demás agentes para intercambiar información y/o conocimiento. El buen funcionamiento de un SMA se basa en el establecimiento de protocolos eficientes de comunicación y coordinación que garanticen la distribución de las tareas, del conocimiento y de las responsabilidades en la mejor manera.
3. ARQUITECTURA DE TRES NIVELES PARA AUTOMATIZACIÓN INDUSTRIAL
Como se mencionó anteriormente, el manejo de situaciones anormales supone la interacción entre aplicaciones de diversa naturaleza. Por ejemplo, la información de estado debe provenir de las aplicaciones de control de procesos, la información sobre los recursos disponibles debe venir desde las ERP (Enterprise Resource Planning), y así sucesivamente. En este sentido, se propone modelar todas las actividades involucradas en la automatización de una organización industrial en base a SMA´s, en una arquitectura de tres niveles: un primer nivel para el modelo de los objetos de negocio, un segundo nivel donde se distribuyen las actividades propias de la automatización industrial y, un tercer nivel, en el que se distribuyen entre varios agentes las tareas involucradas con las actividades modeladas en el segundo nivel.
En un primer nivel se propone modelar como agentes a las unidades de producción componentes del proceso productivo, las cuales son consideradas como objetos de negocio. Así, el proceso es modelado como un SMA, y la interacción entre los agentes de dicho SMA representará la lógica del negocio. La intención de representar los objetos del negocio como agentes es otorgar autonomía e inteligencia a cada
componente del proceso productivo. La arquitectura de este nivel es metamórfica, ya que la cantidad y la naturaleza de los agentes que la componen dependerán de la estructura de la organización que se esté modelando.
Fig. 2. Arquitectura Multiagentes para Automatización.
En un segundo nivel, a cada agente del primer nivel se le ve como un SMA, que tiene una arquitectura base compuesta por agentes que desempeñan las actividades típicas involucradas con la automatización industrial: control de procesos, planificación de producción, manejo de los factores de producción, ingeniería de mantenimiento y manejo de situaciones anormales. Además, las actividades que son específicas para algún agente del primer nivel se modelan como agentes especializados pertenecientes a ese agente en particular. Los agentes que componen la arquitectura base del segundo nivel se describen a continuación:
Agente de control de procesos: este agente representa las aplicaciones de control de procesos, tanto a nivel de campo, modelando las aplicaciones de control regulatorio que se ejecutan en los PLC o en las RTU, como a nivel de los centros de control, modelando las aplicaciones SCADA.
Agente de planificación de producción:
este agente se encarga de las decisiones sobre las cuotas de producción asignadas a cada objeto del negocio en función de la condición y capacidad de su objeto de negocio asociado y de su interrelación con los demás objetos de negocio.
Agente de manejo de factores de producción: este agente se encarga del manejo de los recursos (infraestructura, insumos, RR.HH., energía, etc.) necesarios para el desempeño de los objetos de negocio en el proceso productivo.
Agente de ingeniería de mantenimiento:
este agente se encarga de las labores de detección, diagnóstico, predicción y aislamiento de fallas, y de la elaboración de planes de mantenimiento preventivo y correctivo. El agente se encarga de identificar todos los modos de falla que se pueden presentar en el proceso monitoreado, a partir del análisis de información de estado y de información histórica. El resultado de la actuación de este agente es un modelo de datos que contiene toda la información acerca de las fallas que se pueden presentar en el proceso, sus características y los planes de mantenimiento que se deben ejecutar para prevenir dichas fallas, o para solventarlas, en caso de que ocurran de manera abrupta.
Agente de manejo de situaciones anormales: este agente se encarga del manejo de las situaciones anormales que se presentan en las instalaciones monitoreadas.
Este agente hace uso de un modelo de datos alimentado por el agente de ingeniería de mantenimiento, y por una base de conocimiento que recoge la experiencia de operadores, ingenieros y expertos en manejo de situaciones anormales, que han interactuado con el proceso. Es responsable de detectar situaciones anormales, emitir alarmas y ejecutar acciones correctivas para solventar dichas situaciones.
En el tercer nivel, los agentes del segundo nivel se ven también como SMA´s, de forma de distribuir las tareas involucradas con las actividades de automatización entre varios agentes. Cada agente del segundo nivel puede ser modelado por medio de un marco de referencia diferente. Ya que el tema de este trabajo es el tratamiento de situaciones anormales,
solo se modelará el Agente de Manejo de Situaciones Anormales, cuya arquitectura se basa en el marco de referencia “Sistema de Control Distribuido Inteligente basado en Agentes (SCDIA)” [Aguilar et.
al., 2002]. Este marco de referencia supone modelar los SMA´s por medio de los elementos típicos de un lazo de control de procesos, hecho que se aprovecha en este trabajo para abordar el manejo de fallas. En ese sentido, el agente de manejo de fallas contendrá los siguientes agentes:
Agente de Medición: este agente tendrá la misión de recolectar los datos provenientes de los repositorios de datos que puedan aportar información acerca del estado de los procesos que se desarrollan en las diferentes instalaciones monitoreadas. Además, de ser necesario, podrá preprocesar y/o validar los datos, calcular promedios y estimadores, hacer observación de estados y cualquier otra operación para obtener la información requerida por los demás agentes para realizar el diagnóstico, aislamiento y tratamiento de las situaciones anormales que se presenten.
Agente Controlador: este agente compara las condiciones actuales de los procesos con las condiciones deseadas para los mismos, y en caso de que las mismas se alejen de una cierta banda de tolerancia, ejecuta reglas recolectadas dentro de un motor de inferencia, lo que puede resultar en activación de alarmas, emisión de órdenes para ejecución de aplicaciones de diagnóstico, caracterización de condiciones de operación y/o toma de acciones correctivas, dependiendo de la situación presentada.
Agente de actuación: dependiendo de las decisiones tomadas por el agente controlador, ejecuta aplicaciones de diagnóstico que dan apoyo al sistema, activa alarmas y las hace visibles para cada actor involucrado con la resolución del problema y distribuye flujos de trabajo que conlleven a la resolución de las situaciones anormales que se presenten.
Agente Coordinador: modifica el motor de inferencia del sistema, crea y/o modifica flujos de trabajo y cambia consignas definidas para condiciones de operación normal por medio de mecanismos de
aprendizaje basados en técnicas de inteligencia artificial. Ejecuta modelos de detección y diagnóstico de fallas, detecta modos de fallas y determina las causas de las mismas. Además, caracteriza nuevos modos de falla y ejecuta técnicas de diagnostico de fallas incipientes. Planifica agendas de mantenimiento. Coordina las actividades de los agentes del SMA de manejo de fallas.
Tiene un comportamiento deliberativo.
Agente Especializado de Cálculo de Confiabilidad: hace el cálculo de la confiabilidad operacional de cada una de las instalaciones monitoreadas y del proceso en general, en base a información histórica sobre el desempeño del proceso y del mantenimiento efectuado a las instalaciones.
Fig. 3. Red de Petri para el comportamiento del Agente de Manejo de Situaciones Anormales.
Otros Agentes Especializados: dentro del proceso de detección y diagnóstico de fallas hace falta llevar a cabo actividades de minería de datos, cálculos matemáticos, cálculos estadísticos, predicción, entre otros, las cuales dependerán de la naturaleza del proceso monitoreado. Estas actividades son llevadas a cabo por agentes especializados, cada uno de ellos con una tarea específica
como única a realizar. Causa IncipienteFalla FuncionalFalla
Síntoma Modo de Falla 1 1..n
1 1..n
Acción Prueba Consecuencia
Falla 1
1..n
1 1..n
1 1 1..n
1..n Función
1 1..n Instalación 1 1..n
1 1..n
1 1..n
1
1..n
1 1..n 1 1..n
1 1..n
1
1..n
1 1..n
Los procesos de negociación que deben ser desarrollados en los diversos niveles del SMA propuesto están basados en un modelo de coordinación que sigue el estándar FIPA (Foundation for Intelligent Physical Agents) [www.fipa.org], y en donde la comunicación está basada principalmente en pases de mensajes, utilizando técnicas como brokering, mecanismos de subastas, broadcasting, entre otras.
Fig. 4. Modelo de datos del Agente de Manejo de Situaciones Anormales.
Este enfoque de diseño de SMA para el tratamiento de situaciones anormales está siendo implantado en el proceso de producción de crudos, a nivel de extracción, bombeo y transporte en algunos pozos productores de la empresa Petróleos de Venezuela.
En el caso del Agente de Manejo de Situaciones Anormales, su comportamiento está regido por una sucesión de estados representados por una red de Petri, mostrada en la fig. 3, y un modelo de datos que se muestra en la fig. 4.
4. CONCLUSIONES
Este trabajo ha presentado un enfoque para el diseño de Sistemas Multiagentes orientados a la automatización de complejos de producción. El enfoque involucra la conceptualización de una arquitectura de tres niveles conformados por agentes con funciones especializadas. El primer nivel contiene agentes para modelar las unidades de
producción del complejo, que son consideradas, para propósitos de autonomía, como objetos de negocio.
El segundo nivel contempla agentes para la realización de tareas propias de la automatización, como el control de procesos, la planificación de la producción y el manejo de fallas, entre otras.
Finalmente, el tercer nivel encierra agentes para la distribución de actividades de automatización establecidas en el nivel previo.
El trabajo también considera el modelo general de comportamiento del sistema multiagente para el tratamiento de situaciones anormales, representado en términos de una red de Petri.
La arquitectura planteada en este trabajo propone un nuevo enfoque para modelar organizaciones orientadas a la producción y aborda, con una visión general del proceso, el tema del manejo de situaciones anormales, de una forma distribuida e inteligente.
REFERENCIAS
Aguilar, Jose, M. Cerrada, H. Díaz, F. Hidrobo, G.
Mousalli,F. Rivas. Especificación de Agentes para
Sistemas de Control Distribuido Inteligente, Proceeding of the V Jornadas Científicos Técnicas de
la Facultad de Ingeniería, pp. 204-213, Mérida, Venezuela, Marzo
2002
Bigus Joseph & Jennifer Bigus. Constructing Intelligent Agents using Java. Wiley Computer Publishing. 2001.
Noureldin, Hamdy and Roveta, Fulvio. Using Expert System and Object Technology for Abnormal Condition Management. BIAS 2002 International Conference Milano, Italy. November 19-21, 2002.
Weiss, Gerhard. Multiagent Systems. The MIT Press.
1999. Massachusets, USA.
www.fipa.org. Foundation for Intelligent Physical Agents. FIPA.
www.gensym.com. Gensym Corporation.
www.nexusengineering.com. Nexus Engineering.