28
Taller de Controlador Basado en Lógica Difusa Prof. Dr. Gerardo Acosta Facultad de Ingeniería-UNCPBA Av. del Valle 5737 - (B7400JWI) Olavarría Argentina TE: +54 2284 451055/6 int. 238 FAX: +54 2284 450628 e-mail: [email protected] URL: http://www.fio.unicen.edu.ar/curriculum/Acosta

Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

Taller de Controlador Basado enLógica Difusa

Prof. Dr. Gerardo AcostaFacultad de Ingeniería-UNCPBAAv. del Valle 5737 - (B7400JWI) OlavarríaArgentinaTE: +54 2284 451055/6 int. 238FAX: +54 2284 450628e-mail: [email protected]: http://www.fio.unicen.edu.ar/curriculum/Acosta

Page 2: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas
Page 3: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

Taller de Controlador Basado en Lógica Difusa ______________________________51. El Controlador Basado en Lógica Difusa (CBLD) _________________________5

1.1. Introducción ______________________________________________________________ 51.2. Base de Conocimiento ______________________________________________________ 61.3. Motor de Inferencias _______________________________________________________ 71.4. Emborronador_____________________________________________________________ 71.5. Desemborronador __________________________________________________________ 71.6. Diseño del Controlador _____________________________________________________ 8

1.6.1 Selección de las variables y del universo de discurso ____________________________ 91.6.2 Selección de la estrategia de emborronamiento _________________________________ 91.6.3 Construcción de la Base de Reglas _________________________________________ 13

1.6.3.1 Características de la Base de Reglas ____________________________________ 201.6.3.1.1 Completitud de la base: ____________________________________________ 201.6.3.1.2 Interacción de las reglas de control: ___________________________________ 211.6.3.1.3 Consistencia de la base de reglas: ____________________________________ 21

1.6.4 Selección de la estrategia de desemborronamiento _____________________________ 211.6.4.1 Criterio del Máximo (MAX) __________________________________________ 221.6.4.2 Criterio del Medio de Máximos (MOM)_________________________________ 221.6.4.3 Criterio del Centro de gravedad (COG) _________________________________ 22

1.7. Tipos de Inferencia________________________________________________________ 23

2. Algunos comentarios finales _________________________________________253. Referencias _______________________________________________________27

3.1. Bibliografía______________________________________________________________ 273.2. Sitios interesantes_________________________________________________________ 28

Page 4: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas
Page 5: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

5

Taller de Controlador Basado enTaller de Controlador Basado enTaller de Controlador Basado enTaller de Controlador Basado enLógica DifusaLógica DifusaLógica DifusaLógica Difusa

1. El Controlador Basado en Lógica Difusa (CBLD)

1.1. IntroducciónUn CBLD es un sistema electrónico e informático que sirve de soporte físico pararealizar inferencias con lógica difusa. Este dispositivo funcionará en los nivelesinferiores de la pirámide de control, cerrando lazos de control en forma similar al PIDconvencional, aunque como veremos, con ventajas adicionales respecto de éste.Fundamentalmente porque podrá aplicarse con sencillez a procesos complejos ypobremente definidos ya sea porque no se dispone de conocimiento cuantitativo de sudinámica o porque la información proveniente de sensores es imperfecta (faltante,imprecisa, corrompida por ruido). Sin embargo, estos procesos pueden ser manejadospor operadores humanos de un modo eficiente. Este tipo de problemas suele serbastante corriente en los ambientes industriales.

La arquitectura general de un CBLD monolazo, para una sola entrada y una sola salida,se aprecia en la siguiente figura 1.1. Se considera que la variable controlada es de tipoanalógica y que debe ser convertida a digital antes de ser usada en los cálculos internosdel controlador.

Por lo tanto, el CBLD será un caso particular de un controlador digital, cuyocomportamiento será, como veremos, no lineal. Sus bloques constitutivos son una Basede Conocimiento (BC), una Base de Datos (BD) o memoria de trabajo, un Motor deInferencias (MI), un Emborronador (F) y un Desemborronador (D)1. A continuaciónanalizaremos cada uno de estos elementos por separado.

1 Tanto emborronador como desemborronador son traducciones del inglés al español de los términos referidos en la literatura en esteidioma de fuzzificator y defuzzificator, respectivamente. En Argentina suelen traducirse también como fuzzificador y defuzzificador.

Page 6: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

6

FIGURA 1.1: ARQUITECTURA DE UN CONTROLADOR BASADO EN LÓGICA DIFUSA

1.2. Base de ConocimientoLa arquitectura que se aprecia en la figura 1.1. para el CBLD es la de un sistema basadoen conocimiento, ya que estos controladores pueden considerarse como un casoparticular de aquellos sistemas. Para representar el conocimiento existen muchosmétodos [WINST94], aunque para los sistemas de tipo reactivos (que responden a lasentradas provenientes de sensores) como los CBLD, el método preferido suele ser larepresentación en forma de reglas. Generalmente m reglas del tipo:

donde las Xi son salidas del sistema a controlar, o funciones de dicha salida (errores,derivadas), provenientes de sensores o estimadores; las Y son directamente las variablesmanipuladas que tendrán que ser convertidos a valores únicos para manejar losactuadores; y los Ai son conjuntos difusos.

Mediante reglas de este tipo se codifica en el sistema informático parte delconocimiento humano en el manejo del proceso, así como también los objetivos decontrol. Por ejemplo: “Si error de temperatura es Grande Positivo y la derivada error detemperatura es Grande Positiva entonces aumento de combustible inyectado es GrandeNegativo”

y(t)r(t) -

e(t) u(t)

A/D

BC+

MIF PlantaD

BesYentoncesAesXyyAesXSi nn...11

Page 7: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

7

1.3. Motor de InferenciasEs el encargado de concatenar las implicancias de la Base de Conocimiento, aplicandorecursivamente una regla de inferencia composicional. Por ejemplo, el operadormax/min, presentado previamente.

1.4. EmborronadorLa función de este bloque es la de asociar a las entradas una función de pertenencia,acorde con el particionamiento del universo de discurso que se haya efectuado.Transforma la medición del valor determinístico de una variable en valores subjetivosmediante un proceso de verbalización. De esta manera, se pueden distinguir lassiguientes funciones:

medir los valores de las variables de entrada; hacer una adaptación de escalas desde estas variables de entrada y el universo dediscurso, en una suerte de normalización;

asociar a la entrada un valor lingüístico que puede verse como la pertenencia a undado conjunto difuso.

1.5. DesemborronadorA partir de los consecuentes de las reglas que se hayan disparado, que seguramenteserán más de una, es necesario obtener una única acción de control, combinando elresultado propuesto por cada una de ellas. Para ello, este bloque es el encargado deservir de soporte para la aplicación de alguna de las técnicas elegidas (el máximo, lamedia de máximos, el centroide).

A partir de esta descripción en bloques, es posible comprender el funcionamiento delCBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas a estecontrolador, en un intervalo de muestreo, entre dos bajadas sucesivas de esa llave queestá tomando muestras (como puede considerarse a un conversor A/D ideal). En elinstante kT la variable controlada analógica es convertida al tiempo discreto. Luego secompara con la referencia y se obtiene un valor para el error. Éste ingresa alemborronador, en el que se le añade una etiqueta lingüística (conjunto difuso) y unvalor entre [0,1], asignándole una pertenencia a dicho conjunto difuso. Por ejemplo elerror puede haber resultado luego de este procedimiento como PM (positivo medio)con µPM=0,3 y PG (positivo grande) con µPG=0,7. Con estos valores simbólicos se ingresaen la memoria de trabajo. Allí, el motor de inferencias buscará qué reglas poseen entresus antecedentes estos patrones en un procedimiento que se conoce en la literaturacomo “pattern matching”. Cuando se produce esta coincidencia, la regla se dispara,tornándose verdadero el consecuente de la regla disparada. En el dominio de la lógicadifusa, la aserción verdadero tiene toda la gama de matices posibles y se modelan conla función de pertenencia. Supóngase que una de las reglas que se disparan tiene en suconsecuente que la acción de control debe ser, para esos errores, positiva grande, yluego de calcular la función de pertenencia correspondiente teniendo en cuenta el

Page 8: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

8

método para modelar las conjunciones y la implicancia, se encuentra que µPG=0,6. Estevalor también se anota en la memoria de trabajo. Seguramente se dispararán más deuna regla, por lo que el motor de inferencias debe combinar la evidencia de cada un delas que se disparó, en el procedimiento que se conoce como agregación (“if...then...ALSO...”). El resultado de esta combinación es un nuevo conjunto difuso, que debe serdesemborronado por el bloque correspondiente para obtener un valor determinado quese aplicará sobre el actuador, completando este ciclo. Con la toma de una nuevamuestra para calcular el error en (k+1)T se inicia nuevamente.

Como se aprecia en el párrafo anterior, quedaron muchos detalles por definir en cadabloque que constituyen decisiones de diseño. Éstas pueden dividirse en dos nivelesjerárquicos de decisión: el del fabricante de CBLD y el del programador del CBLD. Enun nivel superior, los aspectos constructivos de cada bloque (elegir el método para lasconjunciones e implicancias, la agregación, el desemborronado,...). Para esta etapa sedeben tener en cuenta las definiciones presentadas en los capítulos anteriores. Ahorabien, si esta situación ya está resuelta porque se está trabajando con una herramientacomercial con estos bloques ya implantados, el programador debe tomar otro tipo dedecisiones de diseño, que se presentan a continuación.

1.6. Diseño del ControladorLamentablemente no existe un procedimiento estándar, pero es posible definir ciertospasos de trabajo para llegar a un buen diseño del CBLD. La metodología que sepropone sigue los lineamientos generales expuestos en [LEE90] aunque con algunasmodificaciones basadas en la experiencia del autor. Como se verá, en cada uno de ellosno existe una solución única, y su diseño se asienta en conocimiento heurístico sobre elproceso y pruebas de ensayo-error hasta conseguir una respuesta adecuada a nuestrasespecificaciones previas, en un proceso de refinamiento que la mayoría de las vecesrequiere una nueva definición en el criterio de selección usado en estos pasos. Esta“sintonización” del controlador puede hacerse también en forma automática, porejemplo con algoritmos genéticos [TODOR2000], o redes neuronales, de modo tal deencontrar un controlador óptimo. Incluso esta optimización puede hacerse en línea, unavez que el controlador está en funcionamiento normal en planta, aunque debencontemplarse especialmente los aspectos de estabilidad. Sin embargo, este tipo especialde CBLD denominados adaptivos, será objeto de otro trabajo. La metodologíapropuesta se resume en los siguientes pasos:

1. Selección de las variables y del Universo de Discurso2. Selección de la estrategia de emborronamiento

2.1. Particionamiento de los espacios de entrada y salida2.2. Elección de las funciones de pertenencia2.3. Discretización/normalización de los Universos de Discurso2.4. Completitud

3. Construcción de la base de reglas

Page 9: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

9

3.1 Elección de las variables de entrada y las de control3.2 Elección de las reglas de control

4. Selección de lógica de toma de decisiones4.1 Definición del tipo de implicancia a utilizar4.2 Interpretación de los conectivos AND y ALSO4.3 Definición del operador de composición4.4 Mecanismo de inferencia

5. Selección de la estrategia de desemborronamiento

1.6.1 Selección de las variables y del universo de discursoComo en todo lazo de control, el primer paso en su diseño es especificar claramentecuáles serán las variables de entrada y salida que queremos relacionar a través delcontrolador. Además es necesario conocer de antemano su rango de variación. Paraesto se pueden presentar dos situaciones bien diferentes. El CBLD puede desarrollarseen base al conocimiento de un experto humano, en cuyo caso esta etapa se completarápidamente a partir de la experiencia previa. Si en cambio es la primera aproximaciónque tenemos al problema, habrá que elegir las variables que incidan directamente sobrela variable controlada, trabajando generalmente sobre el error o alguna función delerror. Estas serán las variables provenientes de los sensores. Luego es necesario hacersencillas maniobras de identificación de rangos. Por ejemplo desde una posición deequilibrio como el reposo, puede efectuarse una excursión máxima de la variablemanipulada y volverla a cero, para que el proceso evolucione en forma libre a suposición de equilibrio nuevamente. En esta situación puede medirse la salida y tenerseuna noción de la amplitud del error y su variación (construcción de un plano de fase).

1.6.2 Selección de la estrategia de emborronamientoEn esta etapa se determina en qué grado las variables de entrada pertenecen a losconjuntos difusos a través de su función de pertenencia. Vale decir, se trata dedesarrollar un bloque que tendrá en sus entradas los valores numéricos elegidos en laetapa anterior, y a su salida dichos valores asociados a conjuntos difusos con suscorrespondientes funciones de pertenencia2. Para ello es necesario definir estosconjuntos o universo de discurso, y luego su soporte, en un procedimiento que seconoce como particionamiento del universo de discurso, y obviamente ya requiere de unconocimiento a priori sobre el proceso a controlar, como se muestra a continuación.

La cantidad de conjuntos difusos de nuestro universo de discurso es también unadecisión de diseño. Cuanto más cantidad elijamos, mayor poder descriptivo yflexibilidad tendrá nuestro lenguaje, pues no olvidemos que estos conjuntos difusos sondirectamente las etiquetas lingüísticas con que nos referiremos a las variables deentrada y de salida. En el caso de trabajar con el error, valores típicos son positivopequeño (PP), negativo mediano (NM), y otros. Obviamente, este mayor poderdescriptivo tiene su costo en mayor complejidad por la cantidad de reglas involucradas,

2 En rigor, lo que utilizará el motor de inferencias serán los conjuntos difusos y las pertenencias.

Page 10: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

10

que crece proporcionalmente. En la práctica, se suelen elegir entre 2 y 10 etiquetaslingüísticas para cada variable de entrada o salida, luego de un procedimiento deprueba y error.

Respecto de la forma que tendrán las funciones de pertenencia, no existen diferenciasapreciables en los resultados de control entre las diferentes posibilidades (triangulares,trapezoidales, gausseanas, sigmoideas,...). Por ello la mayoría de los productoscomerciales suelen ofrecer las trapezoidales, entendiendo la triangular como un casoparticular, ya que son las de más fácil implantación.

Para efectuar el particionamiento del universo de discurso de entrada al CBLD esnecesario conocer la naturaleza de la medición de las variables de entrada. En efecto, siestas están corrompidas por ruido, como en la mayoría de las aplicaciones prácticas, esnecesario tenerlo en cuenta. Supóngase que este ruido puede caracterizarse por unafunción de densidad de probabilidades con una dada desviación estándar. Luego elsoporte de los conjuntos difusos debe ser mayor o igual que dos veces esta desviaciónpara que tenga sentido físico, ya que de lo contrario la pertenencia de la medida alconjunto difuso variará de 0 a 1 sólo por la dispersión del ruido. Una forma correcta deproceder se muestra en la figura 1.2. La medida puede considerarse como un númeroreal (“singleton”), en cuyo caso conviene tener en cuenta la distribución de laprobabilidad de ruido como se dijo, aunque también puede considerarse a la medidacomo un número difuso en sí misma. En algunos casos los diseñadores suelen tomardirectamente esta distribución de probabilidades como la función de pertenencia deeste número difuso. Sin embargo debe quedar perfectamente claro que la aproximacióncon lógica difusa es totalmente determinística y nada dentro de su cuerpo axiomáticoobliga a que guarde relación con las probabilidades. También hay aplicaciones en lasque se suelen combinar la aproximación de entradas mixtas, es decir números reales ydifusos. Esta situación refleja que en una aplicación se puede tener más confianza enalgunas medidas que en otras, debido fundamentalmente a las características propiasde los sensores.

Si bien hasta el momento toda referencia al particionamiento de los universos dediscurso fue hecha con mayor énfasis en el de las entradas, su validez se extiende a lassalidas del CBLD. La única salvedad importante es que las salidas del controlador seránsiempre números reales, ya que a partir de estos se generarán los valores de tensión,corriente u otra magnitud física que manejen los actuadores del sistema de control bajodiseño.

Page 11: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

11

FIGURA 1.2: SELECCIÓN APROPIADA DEL SOPORTE DEL CONJUNTO DIFUSO PARA UNAENTRADA

Cuando se desea trabajar con universos de discurso normalizados, para que lasfunciones de pertenencia de los conjuntos difusos sean simétricas y con la mismalongitud de soporte como se ve en la figura 1.3., es necesario multiplicar a alguna otodas las magnitudes de entrada y salida por ciertas ganancias Ki, de modo tal que suevolución en el transitorio quede perfectamente descripta por las reglas. Por ejemplo,en el caso planteado anteriormente de construir un plano de fase, la evolución de lasentradas debe verse como en la figura 1.4. Si bien es mucho más intuitivo yautodescriptivo de la situación que se está modelando, evitar esta normalización y queel tratamiento hecho con las entradas se adivine de un golpe de vista en elparticionamiento efectuado, se suele emplear mucho esta aproximación para la síntesisdel CBLD en un microprocesador, ya que funciones de pertenencia idénticas ysimétricas son mucho más sencillas de programar.

FIGURA 1.3: PARTICIONAMIENTO SIMÉTRICO Y SOPORTES EQUIESPACIADOS

También en estos casos hay que tener en cuenta la discretización o cuantización deluniverso de discurso, que hasta ahora había sido referido como si se manejasenvariables analógicas. Sin embargo el tratamiento de los errores de cuantización no

2σ E

µµµµ(E)

p(E)

µµµµ(E)

E

Z PM PGNMNG

Page 12: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

12

difieren en este caso del que se hace con cualquier controlador digital.

(A) (B)

FIGURA 1.4: SELECCIÓN CORRECTA (A) E INCORRECTA (B) DE LAS GANANCIAS Ki PARAEL AJUSTE DE ESCALAS

Tanto las ganancias Ki como la cuantización, son esenciales en la sensibilidad delcontrolador conseguido. En este sentido, puede verse al CBLD como un instrumentocon el que siempre queremos trabajar en fondo de escala. En la siguiente tabla sepresenta un ejemplo [LEE90] de discretización, en el que además hay un mapeo entrevalores medidos y el universo de discurso discreto que es no lineal.

TABLA 1.1.: EJEMPLO DE DISCRETIZACIÓN Y PARTICIONAMIENTO DE UN UNIVERSO DEDISCURSO

Finalmente, pero no menos importante, relacionado con el particionamiento del

E

dE/dt

E

dE/dt

Nivel-6-5-4-3-2-10123456

Rango

x0 < -3.2-3.2 < x0 < -1.6-1.6 < x0 < -0.8-0.8 < x0 < -0.4-0.4 < x0 < -0.2-02 < x0 < -0.1-0.1 < x0 < 0.10.1 < x0 < 0.20.2 < x0 < 0.40.4 < x0 < 0.80.8 < x0 < 1.61.6 < x0 < 3.23.2 < x0

NB NM NS ZE PS PM PB

1.0 0.3 0.0 0.0 0.0 0.0 0.00.7 0.7 0.0 0.0 0.0 0.0 0.00.3 1.0 0.3 0.0 0.0 0.0 0.00.0 0.7 0.7 0.0 0.0 0.0 0.00.0 0.3 1.0 0.3 0.0 0.0 0.00.0 0.0 0.7 0.7 0.0 0.0 0.00.0 0.0 0.3 1.0 0.3 0.0 0.00.0 0.0 0.0 0.7 0.7 0.0 0.00.0 0.0 0.0 0.3 1.0 0.3 0.00.0 0.0 0.0 0.0 0.7 0.7 0.00.0 0.0 0.0 0.0 0.3 1.0 0.30.0 0.0 0.0 0.0 0.0 0.7 0.70.0 0.0 0.0 0.0 0.0 0.3 1.0

Page 13: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

13

universo de discurso se encuentra el tema de la completitud. Se espera que elcontrolador provea una salida para todos los estados posibles de la planta a controlar.Para ello, todas las variables de entrada y salida del CBLD deben poder vincularse a unconjunto difuso, y a su vez cada conjunto difuso debe participar del antecedente oconsecuente de una regla. Se analizará aquí el primer aspecto de la completitud,dejando para párrafos posteriores la completitud en la base de reglas. Para que lasvariables, tanto de entrada como de salida se vinculen a un conjunto difuso, la unión delos soportes de todos ellos debe cubrir el universo de discurso respectivo. Más aun, lagran flexibilidad de la lógica difusa para aplicarse a casos parecidos aunque noprevistos, radica justamente en el solapamiento que se produce entre dichos soportes(por ejemplo los conjuntos PM y PG de la figura 1.3). La decisión de diseño en estepunto es qué comportamiento se desea para el caso en que no haya una reglafrancamente dominante. Suele tomarse un punto de cruce (“crossover point”) entre dosfunciones de pertenencia sucesivas al 0,5. Esto es así para que si una regla no esdominante frente a otra, ambas se activen con una función de pertenencia mitad.Asimismo, sugiere que cuando una regla es dominante, se está aplicando con unafunción de pertenencia mayor a 0,5. Se ve claramente que se está asociando a la funciónde pertenencia una especie de credibilidad sobre la regla que se está aplicando.Obviamente, esto se modifica si a su vez cada regla tiene asignado un peso para incidiren la salida del controlador.

1.6.3 Construcción de la Base de Reglas

Ya se vio que el conocimiento del controlador se almacenaba en forma de reglas deltipo “if...then” que se combinaban entre si para formar un único conjunto difuso desalida. En este apartado se presentarán las diferentes alternativas de obtener dichasreglas, que es el punto más importante de la programación del CBLD.1. Basadas en la experiencia y el conocimiento de un ingeniero de control experto en el

proceso a controlar. Esta es quizá la manera más sencilla de elicitar el conocimientonecesario para resolver el problema, y la situación para la cual fueron ideados enprimera instancia estos controladores. Este conocimiento está organizado en elexperto en forma de variables que se describen con el lenguaje natural. De estemodo, los términos de este lenguaje natural se traducen a etiquetas lingüísticas y seestablecen las relaciones entre los diferentes conceptos, que quedarán plasmadas enlas reglas. El procedimiento aplicable en este caso puede ser bien un relatointrospectivo del propio experto, como suele presentarse en los manuales deoperación de los hornos de cemento, o bien un interrogatorio guiado, hecho poralguien que también conozca sobre el proceso a controlar, que actuará comoingeniero de conocimiento. A partir de un cuerpo mínimo de reglas se implantará elprimer prototipo, cuyo crecimiento será incremental, basado fundamentalmente enprueba y error hasta conseguir la respuesta deseada.

2. Basadas en la observación de un operario experto. Existen muchas situaciones decontrol en las que es muy difícil hallar un modelo por la cantidad y complejidad devariables involucradas. Ello hace impensable la aplicación de una técnica de control

Page 14: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

14

convencional. Sin embargo existen operarios capaces de llevar adelante el controldel proceso. Imaginar por un instante en lo complejo que resultaría un algoritmopara estacionar un automóvil a una distancia de 30 cm. del cordón de la vereda,entre otros dos automóviles. Esta tarea de control es bien desempeñada por (casi)cualquier ser humano. La idea central entonces de este modo de construir la base deconocimiento consiste en volcar en forma de reglas con variables lingüísticas lamanera de llevar adelante el control.

3. Basadas en un modelo difuso del proceso. Es posible hacer una descripciónlingüística no sólo de la estrategia de control, sino también de las característicasdinámicas del proceso a controlar. En términos generales, esto es un modelo difusodel proceso. A partir de este modelo se pueden obtener las reglas difusas paracontrolarlo, incluso optimizando alguna figura de mérito. Esta forma es aun motivode investigación, pero promete muy buenos resultados [TAKAG85]. Un modelomuy utilizado es el paramétrico, propuesto por el Prof. Sugeno, realizado con reglasdel tipo:

Ri: IF s1 is S1i AND s2 is S2i AND s3 is S3i AND...sp is Spi

THEN vi = a0i + a1i s1 + a2i s2 + .... + api sp

donde las Sji son las etiquetas linguísticas, si las entradas, vi las salidas, y los aji sonlos parámetros a identificar.4. Basadas en aprendizaje. Su precursor fue el Prof. Mamdani, con el controlador auto-

organizado [PROCY79], que está formado por dos cuerpos de reglas. Uno que haceel control propiamente dicho, y otro, a un nivel supervisor de aquel, que exhibe elcomportamiento que seguiría un programador humano mejorando las reglas decontrol. A este tipo de reglas que actúan sobre las reglas de control se las sueledenominar “meta-reglas”. Notar que si bien este tipo de CBLD así construidosmostrarán un comportamiento adaptivo, conviene distinguirlos de los yapresentados como tales, en tanto y en cuanto éstos se adaptan mediante nuevasreglas, mientras que aquellos lo hacen modificando reglas, aunque también lasfunciones de pertenencia de los conjuntos difusos, tanto de entradas como desalidas.

5. Basadas en el plano de fase. Cuando se dispone de poca experiencia previa con elproceso a controlar, esta metodología suele ser de gran utilidad porque permite, poruna parte conocer el proceso en cuestión y por otra, obtener una ley de control apartir de ideas intuitivas. Por estas razones es la que se desarrollará en mayordetalle a continuación, siguiendo [LEE90].A partir de la gráfica temporal de la respuesta transitoria de la variable a controlar,se dividen zonas en las que tanto error como su derivada conserven su signo, talcomo se aprecia en la figura 1.5. Es conveniente en este paso distinguir los puntoscríticos, vale decir, los puntos en los que alguna de las dos variables se hacen cero(a, b, c, d, ... en la figura 1.5). Para cada una de estas zonas así formadas (i, ii, iii, iv,v, ...), se aplicará una acción de control cuyo objetivo será doble: la reducción del

Page 15: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

15

sobrepico y del tiempo de subida. Para obtener este resultado, cuando la derivada delerror tienda a disminuirlo, deberá acelerarlo en el mismo sentido para disminuir eltiempo de subida, cuando la derivada tienda a aumentarlo deberá propiciar uncambio de esta pendiente para evitar los sobrepicos, y así sucesivamente. De estemodo se van obteniendo “naturalmente” las reglas, que se presentan en la siguientetabla 1.2. para un particionamiento de sólo tres etiquetas lingüísticas (N, P, Z) en elerror y su derivada. Las reglas se interpretan como “Si el Error es Positivo (P) y laDerivada es Cero (Z) entonces la Acción de Control (CTL) es Positiva (P)” (Regla N° 1),que es aplicable en los puntos a, e, i (valores de referencia), y así sucesivamente parael resto de las diez reglas que siguen.

FIGURA 1.5: GRÁFICA TEMPORAL DEL ERROR PARA UNA ENTRADA EN ESCALÓN DELSISTEMA A CONTROLAR Y SU DIVISIÓN CUALITATIVA

Puede suceder que, como en este caso, el particionamiento del universo de discurso seamuy poco descriptivo. El resultado que se apreciará es que el sistema de controlquedará oscilando alrededor de un ciclo límite. Esta situación no deseada se solucionahaciendo un control de granularidad más fina, que involucrará un aumento del númerode particiones y por ende del número de reglas del CBLD. Esta nueva situación, en laque se han llevado el número de particiones del error y de la derivada del error a siete(NB, NM, NS, ZE, PS, PM, PB), se presenta en la tabla 1.3.

iii

0 50 100 150 200 250 300 350-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

tiempo[seg.]

ii iii iv v vi vii ...

E + - - + + - - + +∆E - - + + - - + + -

aaa

bbb

ccc

ddd hhh

eee

fff jjj

ggg

lll

kkk

i

Page 16: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

16

TABLA 1.2: PRIMER CONJUNTO DE REGLAS

Regla N0 E ∆E CTL Valor de Referencia

1 P Z P a, e, i2 Z N N b, f, j3 N Z N c, g, k4 Z P P d, h, l5 Z Z Z Valor deseado

Regla Nº E ∆E CTL Valor de Referencia

6 P N P i (tiempode subida), v7 N N N ii (sobrepico), vi8 N P N iii, vii9 P P P iv, viii10 P N Z ix11 N P Z xi

Page 17: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

17

TABLA 1.3: REGLAS PARA UN AJUSTE FINO DEL CONTROL

Regla N0 E ∆E CTL Valor de Referencia1 PB ZE PB a2 PM ZE PM e3 PS ZE PS i4 ZE NB NB b5 ZE NM NM f6 ZE NS NS j7 NB ZE NB c8 NM ZE NM g9 NS ZE NS k10 ZE PB PB d11 ZE PM PM h12 ZE PS PS l13 ZE ZE ZE Valor deseado

Regla N0 E ∆E CTL Valor de Referencia14 PB NS PM i (tiempo de subida)15 PS NB NM i (sobrepico)16 NB PS NM iii17 NS PB PM iii18 PS NS ZE ix19 NS PS ZE xi

Page 18: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

18

A partir del sistema anterior es posible construir una tabla de control, de doble entradaen este caso, también conocida como matriz de inferencias. Esta matriz de inferenciasconstruye para este caso una superficie tridimensional (apoyada sobre el plano de lahoja) que da las salidas directamente del CBLD. En efecto, para una entrada del errorpor un lado, y de su derivada por el otro, se obtiene directamente la acción de control.Esta matriz de inferencias, para las 19 reglas anteriores se muestra en la figura 1.6.

FIGURA 1.6: MATRIZ DE INFERENCIAS

Las mismas zonas identificadas en la gráfica temporal de la respuesta del sistema sepueden representar en el plano de fase, tal como se aprecia en la siguiente figura 1.7.Por lo tanto, a partir de este plano y con los objetivos propuestos originalmente dereducir el sobrepico y el tiempo de subida simultáneamente, se ve cuáles son lasacciones de control a seguir para manipular el actuador. Haciendo previamente unadivisión en cinco zonas (A1, A2, A3, A4 y ZE), y considerando los puntos críticosprevios (a, b, c,..., algunos suprimidos en la figura 1.7. por claridad), es posible deduciralgunas reglas generales que gobiernan a las reglas del CBLD, por lo que se denominanmeta-reglas. Éstas serían las siguientes:

Si E = ∆E = 0, mantener la salida del CBLD ∆u=0

Si E tiende a cero a una velocidad apropiada no modificar

Si E no se auto-corrige, ∆u ≠ 0. Su valor dependerá del signo y magnitud de E y ∆EEn los puntos de cruce de E=0 (b, d, f, ...) sgn(∆u) = sgn(∆E)En los picos y valles de ∆E=0 (c, e, g, ...) sgn(∆u) = sgn(∆E)En el área A1 queremos acortar el tiempo de subida cuando E es grande y en el área A2queremos prevenir el sobrepico cuando E es pequeño, entonces

∆u > 0 cuando estamos lejanos del cero∆u ≤ 0 cuando nos acercamos al setpoint

En el área A2 queremos prevenir el sobrepico, entonces ∆u < 0

NB NM NS ZE PS PM PBPB PM PBPM PMPS NM ZE PSZE NB NM NS ZE PS PM PBNS NS ZE PMNM NMNB NB NM

Page 19: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

19

En el área A3 (similar razonamiento que en A1):∆u ≥ 0 cuando nos acercamos al setpoint∆u < 0 cuando |E| está lejos de cero

En el área A4 queremos reducir el sobrepico en el valle, entonces∆u >0

FIGURA 1.7: PLANO DE FASE DEL SISTEMA A CONTROLAR Y SU DIVISIÓN CUALITATIVA

Las meta-reglas anteriores permiten determinar el signo de ∆u. En cuanto a sumagnitud, se puede considerar que:

Cuando ∆E ≅ 0 entonces u = u0, donde u0 adopta los siguientes valores:

Cuando ∆E ≠ 0 entonces u = (u0 + ∆E) + C, donde C es una compensación, normalmente cero.La suma se toma como una suma lingüística:

PM + PS=PL, PS + PL=PL, PS + NM=NS, etc.Cuando E es grande (NM,NL,PM,PL), ∆E tiene poca influencia, entonces elegimos Cpara apurar la respuesta.Cuando |E| es pequeño (ZE, PS, NS), ∆E tiene mucha influencia y podemos elegir Cpara permitir que |u| sea pequeño y prevenir sobrepico.

De esta forma, la relación entre el plano de fase y la matriz de inferencias, con las

E NL NM NS ZE PS PM PLu0 NL NM NS ZE PS PM PL

aaa

bbb

ccc

ddd

hhh eee

fff

gggE

dE/dt

AAA111AAA222

AAA444AAA333

ZZZEEE

reducirtiempo desubida

reducirsobrepico

Page 20: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

20

variables lingüísticas del error y su derivada como entradas, adopta la forma que semuestra en la figura 1.8.

FIGURA 1.8: RELACIÓN PLANO DE FASE - MATRIZ DE INFERENCIAS

1.6.3.1 Características de la Base de Reglas

1.6.3.1.1 Completitud de la base:

El controlador debe generar salidas para cualquier estado difuso de entrada.Suponiendo que estos estados se representan con x, este atributo de la base de reglas seexpresa como [PEDRY88]:

Es deseable que ε supere 0,5 para que se pueda hablar del disparo de alguna regladominante (situación de control bien prevista en la base de conocimiento). Estacaracterística complementa la cobertura de todo el universo de discurso por etiquetaslingüísticas. En efecto, si para todo valor de las variables de entrada y salida existe unconjunto difuso al que pertenecen y una regla que involucra dichos conjuntos difusos,se satisfará que el controlador genere una salida para cualquier combinación de las

]1,0( donde

)(1

>∃∈∀≤≤

ε

εxXXx ini

∆E \ E NL NM NS ZE PS PM PL

PLPM A3 d A4PS

ZE c ZE a, e

NSNM A2 b A1NL

Page 21: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

21

entradas. En cambio si detectamos que este no es el caso, debe incorporarse una reglaque cubra la condición no incluida. Trabajando con la matriz de inferencias, es difícildejar fuera situaciones como no previstas. En efecto, por simple inspección de la figura1.6. se puede apreciar si hay situaciones para las que no se da salida del CBLD. Delmismo modo esta condición se viola si alguna etiquete lingüística no está presente o, loque es lo mismo, no se ha descripto todo el soporte del universo de discurso.

1.6.3.1.2 Interacción de las reglas de control:

En un CBLD las reglas interactúan entre sí, vale decir, la presencia de una de ellasmodifica el comportamiento del conjunto y vice-versa. Este conjunto es el que forma lasuperficie de control final. Supóngase añadir la regla i-ésima a la base. Si esta superficiede control se representa con R y las entradas con X, la composición de ambas da unnuevo conjunto difuso Y, que es distinto para la nueva situación de lo que erapreviamente. Esto puede expresarse formalmente como:

Puede demostrarse [PEDRY88] que la interacción de las reglas depende del tipo deimplicancia que se elija en la materialización del CBLD.

1.6.3.1.3 Consistencia de la base de reglas:

Las reglas contradictorias, que propongan acciones de control opuestas, deben sereliminadas o reemplazadas en la base de conocimiento. En un CBLD en el que nointerviene una gran cantidad de reglas, la consistencia puede determinarse por simpleinspección. Sin embargo, para bases con un mayor número de reglas es necesario haceruna revisión más sistemática. Existen métodos para ello basados en las definiciones dePosibilidad (Π) y Necesidad (Ν), a partir de las que puede obtenerse un índice deinconsistencia para cada regla respecto del conjunto de la base [PEDRY88].

1.6.4 Selección de la estrategia de desemborronamiento

Una vez cumplidas las etapas anteriores, el resultado de la agregación de las reglas dela base, es decir, la inferencia, será también un conjunto difuso. Sin embargo, paramanejar el actuador es necesaria una magnitud no difusa. En efecto, si dicho actuadores una válvula automática, por ejemplo, el controlador no puede dar como salida laaplicación de una “pequeña tensión positiva” al servomotor que maneje la válvula, amenos que la válvula admita este tipo de entradas. De todos modos, si las admite,siempre estamos transfiriendo a otro elemento del sistema de control la solución delproblema. Es por lo tanto necesario un bloque que sea capaz de dar una salidadeterminada (“crisp value”) frente a una entrada difusa, y que represente lo mejor

jinijYRX ≠•∃

≤<≤1

Page 22: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

22

posible la distribución de posibilidades de la acción de control inferida. Este esjustamente el rol del desemborronador (“defuzzificator”). Para desarrollar este bloque,las estrategias más comúnmente empleadas son los criterios del máximo, del medio demáximos y del centro de área, que se desarrollan brevemente a continuación y seilustran en la figura 1.9.

1.6.4.1 Criterio del Máximo (MAX)

Es el valor del soporte del conjunto difuso de salida para el cual la función depertenencia tiene un máximo valor. Suele tener el inconveniente que puede dar más deun máximo, especialmente en los casos en los que se utilizó la norma de mínimos paradesarrollar la implicancia, por lo que el valor final de la salida del CBLD no quedaunívocamente fijado.

1.6.4.2 Criterio del Medio de Máximos (MOM)

Genera una acción de control u0 que representa el valor medio de las acciones decontrol cuya función de pertenencia tenga un máximo.

Donde wj es el soporte para el cual la función de pertenencia alcanza un máximo.Es el criterio que da el mejor comportamiento en el transitorio de la respuesta. Sinembargo posee la desventaja de no tener en cuenta la forma de las funciones depertenencia de la salida. Esta información que se pierde, tiene en cuenta parte delconocimiento elicitado en cada regla y puede resultar necesaria a la hora de obtener unarespuesta.

1.6.4.3 Criterio del Centro de gravedad (COG)

Genera el centro de gravedad del conjunto difuso de salida y toma su soporte comosalida del CBLD. Con ello se asegura encontrar un único valor de salida. El valor desalida para el caso discreto, con n niveles de cuantización, viene dado por:

El comportamiento de una CBLD con este criterio de desemborronamiento es similar alde un controlador PI con ganancias variables. Es el que mejor comportamiento estáticotiene, ya que el error cuadrático medio es el menor de los tres criterios presentados.

∑ ==

l

jj

lw

u10

∑∑

=

=⋅

= n

j j

n

j jj

w

wwu

1

10

)(

)(

µ

µ

Page 23: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

23

FIGURA 1.9: CRITERIOS PARA LA IMPLANTACIÓN DEL BLOQUE DESEMBORRONADOR

1.7. Tipos de InferenciaHasta este punto se ha visto cómo los datos provenientes de sensores sonemborronados y de acuerdo con el “grado de similitud” que presentan con losantecedentes de las reglas, disparan en mayor o menor proporción a éstas. Con losconsecuentes de las reglas que han sido disparadas se forma un único conjunto difusode salida a través de la operación conocida como agregación. Finalmente, este conjuntodifuso es desemborronado en el bloque desemborronador y se obtiene la señal decomando de los actuadores. A todo este procedimiento se lo suele denominargenéricamente como mecanismo de inferencia, y se lo resume en la figura 1.10. El hastaaquí descripto es un mecanismo de inferencia de tipo Mamdani, en honor al Prof.Ebrahim Mamdani que lo propuso y usó por primera vez [MAMDA75].

FIGURA 1.10: MECANISMO DE INFERENCIA PARA 2 ENTRADAS Y UNA SALIDA

MOMMAXCOA

µ µ µ µ (x)

x

Entrada 1

if

if

then

thenand

Entrada 20

1

Salida

0

1

0

1

0

1

0

1

0

1

Page 24: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

24

Sin embargo, es posible imaginar que en lugar de conjuntos difusos en los consecuentesde las reglas, se tienen valores puntuales3, de altura variable de acuerdo justamente algrado de activación de la regla, tal como se ve en la figura 1.11. Este mecanismo deinferencia, conocida como de tipo Sugeno [SUGEN85], posee algunas ventajas quepueden apreciarse intuitivamente. En efecto, el proceso de desemborronamiento esmucho más sencillo desde el punto de vista de esfuerzo de cómputo, ya que cada valorpuntual de salida de una regla puede considerarse como previamente desemborronado.Por ello es el tipo de inferencia preferido a la hora de hacer implantaciones enhardware. Dentro del mecanismo de inferencia del tipo Sugeno se definen ordenes. Así,una regla típica en un tipo Sugeno de orden cero, viene dada por:

donde A y B son conjuntos difusos, y k es un valor de salida constante.

Para un Sugeno de orden uno, una regla típica sería:

donde A y B son nuevamente conjuntos difusos, p, q y r son valores constantes.

Pueden pensarse estas salidas como que se desplazan por su soporte de acuerdo alvalor que asumen las entradas.

Mecanismos de inferencia de tipo Sugeno de orden superior no presentan mayoresventajas, mientras que si una mayor complejidad de cálculo por lo que en aplicacionesprácticas no son frecuentes.

Otra característica atractiva de este tipo de inferencia es que es posible asegurarcontinuidad en la superficie de control de salida, y por ende es más sencillo el análisismatemático de dicha superficie. Por último, se adapta bien a los problemas deoptimización y adaptación ya que permite incorporar de una manera natural a lastécnicas lineales. En efecto, para el caso de tipo Sugeno de primer orden, se puedencombinar fácilmente en función del valor de las entradas, una salida que pasesuavemente de una aproximación lineal a otra. Se aprecia que es ideal para actuar comoun supervisor interpolante de múltiples controladores lineales que funcionancorrectamente en diferentes puntos de operación de un sistema dinámico no lineal[JANG96].

3 En la literatura en idioma inglés se los suele referir como “singleton”.

kzB yAx = then is and is if

ryqxpzB yAx ++= ** then is and is if

Page 25: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

25

FIGURA 1.11: INFERENCIA DIFUSA DE TIPO SUGENO

2. Algunos comentarios finales

Los CBLD tratan de emular al operario humano en una región acotada para controlarun proceso complejo o cuyo modelo matemático es desconocido o de muy laboriosaobtención. Tienen la gran potencialidad de poder encapsular fácilmente en unmicroprocesador, la heurística y el sentido común necesarios en el control de variablescomplejas. Por otra parte, aun cuando la superficie de control sea susceptible de serrepresentada matemátiacmente, la forma en que se obtiene la misma superficie desde eldominio de la lógica difusa es mucho más sencilla ya que se define verbalmente através de las reglas que determina el usuario o programador. Y el número de reglasnecesarias para obtener una adecuada superficie de control dificilmente supere las 100reglas (típicamente alrededor de 20). Además en la gran mayoría de los casos, lasconclusiones de unas reglas no se usan como premisas de otras sino que reflejan unacorrelación inmediata entre entradas y salidas a la planta bajo control. Dichas entradas

0

1

0

1

0

1

0

1

0

1

0

1

Resultado de la agregación →

Page 26: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

26

son los antecedentes de las reglas (mediciones provenientes de sensores) y las salidasdel CBLD son los consecuentes de todas las reglas que se disparan, agregados y luegodesemborronados, que se aplican directamente sobre los actuadores. De este modo, enterminos de ingeniería de conocimiento, no se trata de un modelo causal profundo (enel cual se produce la concatenación de varias reglas en distintos niveles delconocimiento). Estas características le confieren así una gran velocidad al CBLD para sufuncionamiento en tiempo real o eficiente.

Tipo de producto Nombre ObservacionesTogai

Neuralogix

Hardware

HC12 de Motorola

Chips con reglas y funciones depertenencia programables

Matlab

TIL-Shell (Togai)

CubiCalc

FuzzyTech

Corren en algún SO (DOS, Windows,Unix,...) y “crosscompilan” a CestándarEntornos de

programación

FuzzyCLIPSPrograma de bajo costo desarrolladopor la NASA para construir Bases deConocimiento con manejo deincertidumbre con lógica difusa

PLC S7-300/400 (Siemens)PLC industrial con la posibilidad decerrar lazos de control basados enlógica difusa

Controlador industrial OMRON

TABLA 1.4: LISTADO DE ALGUNOS PRODUCTOS COMERCIALES PARA DESARROLLOS CONLÓGICA DIFUSA

El éxito del CBLD radica en su gran potencialidad para reemplazar al PID clásico, porsu mayor generalidad. En efecto, si se realiza una gráfica de la superficie de control deun control PD, se obtendrá la forma de un plano, mientras que si se tratase de unCBLD, tal superficie puede tener cualquier forma, debido a que las reglas permiten eltratamiento regional del par [e, de/dt].

La lógica difusa también es utilizada en el ámbito del control a nivel supervisor,fundamentalmente en el manejo de incertidumbres en una base de conocimiento[ACOST92-94]. En estas situaciones aun no se ha probado que sea mejor que otros

Page 27: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

27

métodos de manejo de incertidumbres. Como en todo proceso de toma de decisiones(del cual el control es un subconjunto), la información y su tratamiento es de vitalimportancia. En este sentido, la lógica difusa se emplea en la presencia de informaciónimperfecta [Sage].

Algunas de las herramientas más comunes para efectuar un desarrollo concreto para laresolución de un problema de control, se muestran en la tabla 1.4.

3. Referencias

3.1. Bibliografía

[ACOST92] Acosta, G.G., Mayosky, M.A. and Catalfo, J.M.: “Controlador PIDAutoadaptable”, Actas del XIII Simposio Nacional de Control Automático AADECA‘92, Buenos Aires, Argentina, 14 al 18 de Setiembre de 1992, pág. 28-32.

[ACOST94] Acosta, G.G., Mayosky, M.A. and Catalfo, J.M.: “An Expert PID Controlleruses Refined Ziegler and Nichols Rules and Fuzzy Logic Ideas”, Int’l Journal ofApplied Intelligence, Vol 4, Nº 1, February 1994, pp. 64-78, Kluwer AcademicPublishers.

[JANG96] Jang, R. and Gulley, N.: “Fuzzy Logic Toolbox for use with Matlab”, TheMathWorks Inc., 1996.

[LEE90] Lee, Ch. Ch.: “Fuzzy Logic Control Systems: Fuzzy Logic Controller – Part Iand II”, IEEE Trans. on SMC, Vol 20, N° 2, March/April 1990, pp. 404-435.

[MAMDA75] Mamdani, E. and Assilian, S.: “ An experiment in linguistic synthesis witha fuzzy logic controller”, International Journal on Man-Machine Studies, Vol.7, Nº 1,pp. 1-13, 1975.

[PEDRY88]: Pedrycz, W.: “Fuzzy Control and Fuzzy Systems”, Ed. John Wiley & SonsInc., 1988.

[PROCY79] Procyk, T.J. and Mamdani, E.: “A linguistic self-organizing ProcessController”, Automatica Vol. 15, pp.15-30, 1979.

[SAGE92] Sage, A.P.: “On the processing of Imperfect Information using StructuredFrameworks”, in Fuzzy Expert Systems, Edited by Abraham Kandel, CRC Press, pp. 99-112, 1992.

Page 28: Controlador Basado en Lógica Difusa (CBLD)fl/taller.pdf · Este dispositivo funcionará en los niveles ... CBLD. Para ello se supondrá lo que ocurre con el error, una de las entradas

28

[SUGEN85] Sugeno, M.: “Industrial Applications of Fuzzy Control”, Elsevier SciencePub. Co., 1985.

[TAKAG85] Takagi, T. y Sugeno, M.: “Fuzzy Identification of Systems and itsapplications to Modeling and Control”, IEEE Trans. on SMC, 15, pp. 116-132.

[TODOR00] Todorovich, E., Acosta, N. y Acosta, G.: “Generador Automático deControladores Difusos“, Actas del XVII Congreso Argentino de Control Automático(AADECA 2000), pág. 315-320.

[WINST94] Winston, P.H.: “Inteligencia Artificial”, 3ª. Ed., Addison-WesleyIberoamericana, 1994.

3.2. Sitios interesantes• http://www. cs.berkeley.edu

es la página del Proyecto BISC (Berkeley Initiative on Soft Computing), dirigido por elmismísimo Lofti A. Zadeh (zadeh@ cs.berkeley.edu)

• http://www.mathworks.comes la página de Matlab

• http://www.siemens.com.dees la página de siemens que tiene una serie de PLC programables con lógica difusa

• http://www.abo.fi/~rfuller/persons.htmles la página con links a sitios y direcciones de investigadores en el tema

• http://ewh.ieee.org/tc/nnc/fuzzy/es la página de la sociedad del IEEE que abarca estos temas.