sintonizacion de controladores pid utilizando algoritmos evolutivos

Anuncio
UNIVERSIDAD DE PAMPLONA
FACULTAD DE INGENIERIAS Y ARQUITECTURA
DEPARTAMENTO DE INGENIERIA ELECTRONICA, ELECTRICA,
TELECOMUNICACIONES Y SISTEMAS
PROGRAMA DE INGENIERÍA ELECTRÓNICA
TITULO:
SINTONIZACION DE CONTROLADORES PID UTILIZANDO ALGORITMOS
EVOLUTIVOS
AUTOR:
MARÍA CLAUDIA PINTO FIGUEROA
PAMPLONA COLOMBIA
MAYO 2006
UNIVERSIDAD DE PAMPLONA
FACULTAD DE INGENIERIAS Y ARQUITECTURA
DEPARTAMENTO DE INGENIERIA ELECTRONICA, ELECTRICA,
TELECOMUNICACIONES Y SISTEMAS
PROGRAMA DE INGENIERÍA ELECTRÓNICA
TRABAJO DE GRADO PARA OPTAR POR EL TITULO DE INGENIERO
ELECTRÓNICO
TÍTULO:
SINTONIZACION DE CONTROLADORES PID UTILIZANDO ALGORITMOS
EVOLUTIVOS
AUTOR:
MARÍA CLAUDIA PINTO FIGUEROA
DIRECTOR:
Ph.D. ELIEZER COLINA MORLES
PAMPLONA COLOMBIA
MAYO 2006
RESUMEN
En el desarrollo de
este trabajo se diseñó una herramienta computacional
basada en algoritmos evolutivos para la sintonización de controladores PID.
Inicialmente la herramienta fue empleada con técnicas fuera de línea, para
varios sistemas estables e inestables a lazo abierto, con sistemas con distintos
tiempos de respuesta y con sistemas no lineales; usando diferentes funciones
objetivo.
Luego se trabajó con sistemas en línea, manipulando pocos individuos con una
función de aptitud que tiene en cuenta el sobreimpulso y el tiempo de
asentamiento, con el fin de comparar su desempeño con otras técnicas de
sintonización ya existentes.
Por último se aplicaron algoritmos evolutivos en el diseño del controlador de un
proceso de evaporación, tomando en cuenta la variable tasa de flujo de vapor,
que depende de la tasa de transferencia de calor.
ABSTRACT
This work includes an evolutionary algorithm based computational tool design
intended for PID tuning in a variety of control system configurations. The
computational tool was tested on open loop stable and unstable control
systems, control systems with different time response as well as with some
clases of non linear control system. Different objective functions were
considered in order to check the performance of the evolutionary algorithm.
The work also includes computational simulations of the evolutionary algorithm
for on line tuning of PID controllers and a performance trade off with respect to
other tuning techniques is presented.
Finally, the work contemplates the controller design problem for an evaporator
system using the proposed evolutionary computational tool.
CONTENIDO
INTRODUCCION
OBJETIVOS
JUSTIFICACION
PLANTEAMIENTO DEL PROBLEMA
METODOLOGIA
CAPÍTULO 1. COMPUTACION EVOLUTIVA
1.1. INTRODUCCIÓN
1.2. ORIGENES
1.3. ANTECEDENTES
1.4. BASES BIOLÓGICAS DE LA COMPUTACIÓN EVOLUTIVA.
1.5. COMPONENTES DE UN ALGORITMO EVOLUTIVO
1.6. MODELOS SOBRE EL ESQUEMA GENERAL
1.7. ALGORITMOS GENÉTICOS (AG)
1.7.1. CODIFICACIÓN DE LAS VARIABLES
1.7.2. OPERADORES
1.7.2.1. CRUCE
1.7.2.1.1. Cruces para permutación
1.7.2.1.1.1. Cruce por emparejamiento parcial (PMX)
1.7.2.1.1.2. Cruces por orden (OX)
1.7.2.1.1.2.1. Variantes al Cruce por orden
1.7.2.1.1.3. Cruce por ciclos (CX)
1.7.2.1.1.4. Cruce por recombinación de rutas (ERX)
1.7.2.2. MUTACIÓN
1.7.2.2.1. Mutaciones sobre genes
1.7.2.2.2. Mutaciones no estacionarías
1.7.2.2.3. Mutaciones no uniformes
1.7.2.3. VARIANTES EN OPERADORES BÁSICOS PARA NÚMEROS
REALES
1.7.2.4. OTROS OPERADORES
1.7.2.4.1. Cromosomas de longitud variable
1.7.2.4.2. Operadores de nicho (ecológico)
1.7.2.4.3. Operadores especializados
1.7.3. FUNCIÓN DE ADAPTACIÓN
1.7.4. EL TEOREMA DEL ESQUEMA
1.7.5. EVALUACIÓN
1.7.6. MÉTODOS DE SELECCIÓN
1.7.7. MECANISMOS DE REEMPLAZO
1.7.8. CARACTERÍSTICAS DE LOS AGS
1.7.9. ¿COMO FUNCIONAN?
1.7.10. ¿POR QUÉ UTILIZAR
ALGORITMOS GENÉTICOS EN LA
OPTIMIZACIÓN
1.7.11. CONVERGENCIA DEL ALGORITMO
1.7.12. ¿CÓMO SABER SI ES POSIBLE USAR EL ALGORITMO
GENÉTICO?
1.7.13. DECISIONES PARA IMPLEMENTAR UN ALGORITMO GENÉTICO
1.7.14. VENTAJAS DE LOS AGS
1.7.15. DESVENTAJAS O LIMITACIONES QUE TIENEN LOS AG CON
RESPECTO A OTRAS TÉCNICAS DE BÚSQUEDA
1.7.16. CONSIDERACIONES AL USAR ALGORITMOS GENÉTICOS
1.7.17. DIFERENCIAS ENTRE LOS MÉTODOS TRADICIONALES Y LOS
A.G.
1.8. PROGRAMAS EVOLUTIVOS (PES)
1.8.1. PES EN OPTIMIZACIÓN PARAMÉTRICA
1.8.2. PES EN OPTIMIZACIÓN COMBINATORIA
1.8.3. PROGRAMAS EVOLUTIVOS Y ALGORITMOS GENÉTICOS
1.9. ESTRATEGIAS EVOLUTIVAS (EES)
1.9.1. EES SIMPLES
1.9.2. EES MÚLTIPLES
1.9.3. ESTRATEGIAS EVOLUTIVAS Y ALGORITMOS GENÉTICOS
1.10. PROGRAMACIÓN EVOLUTIVA (EP)
1.10.1. ALGORITMO GENERAL
1.10.2. PROGRAMACIÓN EVOLUTIVA Y ALGORITMOS GENÉTICOS
1.10.3.
PROGRAMACIÓN
EVOLUTIVA
Y
LAS
ESTRATEGIAS
EVOLUTIVAS
1.11. PROGRAMACIÓN GENÉTICA (PG)
1.11.1. FUNCIONAMIENTO DE LOS OPERADORES GENÉTICOS
1.11.2. MUTACIÓN EN PG
1.11.3. ALGORITMO GENERAL
1.12. AMBIENTES DE PROGRAMACIÓN
1.13. PROGRAMAS AUTOCONFIGURABLES
1.14. ROBUSTEZ DE LOS MÉTODOS DE OPTIMIZACIÓN Y BÚSQUEDA
TRADICIONALES
CAPÍTULO 2. CONTROLADORES PID
2.1. INTRODUCCIÓN
2.2. ACCIONES BASICAS DE CONTROL
2.2.1. CLASIFICACIÓN DE LOS CONTROLADORES INDUSTRIALES
2.2.2.
CONTROLADOR
AUTOMÁTICO,
ACTUADOR
Y
SENSOR
(ELEMENTO DE MEDICIÓN)
2.2.3. CONTROLADORES AUTO-OPERADOS
2.2.4. ACCIÓN DE CONTROL DE DOS POSICIONES O ENCENDIDO Y
APAGADO (ON/OFF)
2.2.5. ACCIÓN DE CONTROL PROPORCIONAL
2.2.6. ACCIÓN DE CONTROL INTEGRAL
2.2.7. ACCIÓN DE CONTROL PROPORCIONAL- INTEGRAL
2.2.8. ACCIÓN DE CONTROL PROPORCIONAL – DERIVATIVA
2.2.9. ACCIÓN DE CONTROL PROPORCIONAL- INTEGRAL- DERIVATIVA
2.3.
EFECTOS DE LAS
ACCIONES
DE CONTROL INTEGRAL Y
DERIVATIVO SOBRE EL DESEMPEÑO DE UN SISTEMA.
2.3.1. ACCIÓN DE CONTROL INTEGRAL
2.3.2. ACCIÓN DE CONTROL DERIVATIVA
2.4. SINTONIZACIÓN DE CONTROLADORES PID
2.4.1. CONTROL PID DE PLANTAS
2.4.2.
REGLAS
DE
ZIEGLER
–
NICHOLS
PARA
SINTONIZAR
CONTROLADORES PID
2.4.2.1. PRIMER MÉTODO. MÉTODO BASADO EN LA CURVA DE
REACCIÓN
2.4.2.2. SEGUNDO MÉTODO. MÉTODO DE OSCILACIÓN
2.4.3. MÉTODO DE ASIGNACIÓN DE POLOS
2.4.3.1. TEOREMA 1 (TEOREMA DE SYLVESTER).
2.4.3.2. LEMA 1 (ASIGNACIÓN DE POLOS SISO).
2.4.3.3. LEMA 2.
2.5. MODIFICACIONES DE LOS ESQUEMAS DE CONTROL PID
2.5.1. CONTROL PI-D
2.5.2. CONTROL I-PD
2.6. INTEGRAL WINDUP
CAPÍTULO 3. DISCRETIZACIÓN DE SISTEMAS Y LINEALIZACIÓN DE
SISTEMAS NO LINEALES
3.1. LINEALIZACIÓN DE SISTEMAS NO LINEALES
3.2. DISCRETIZACIÓN DE SISTEMAS EN TIEMPO CONTINUO.
3.2.1. IMPLEMENTACIÓN DIGITAL DE CONTROLADORES ANALÓGICOS
3.2.1.1. IMPLEMENTACIÓN DIGITAL DEL CONTROLADOR PID
3.2.1.1.1. Integración trapezoidal
3.2.1.1.2. Integración rectangular hacia delante
3.2.1.1.3. Integración rectangular hacia atrás
3.2.2. ÍNDICES DE DESEMPEÑO
3.2.2.1. FORMULACIÓN DE LOS PROBLEMAS DE OPTIMIZACIÓN
3.2.2.2. PUNTOS CONCERNIENTES A LA EXISTENCIA DE LAS
SOLUCIONES A LOS PROBLEMAS DE CONTROL ÓPTIMO.
3.2.2.3. NOTAS ACERCA DE LOS SISTEMAS DE CONTROL ÓPTIMO.
CAPÍTULO 4. ESTADO DEL ARTE DE LOS ALGORITMOS EVOLUTIVOS Y
SU USO PARA CONTROLADORES PID
4.1. APLICACIONES DE LA PROGRAMACIÓN GENÉTICA.
4.2. COMPUTACIÓN EVOLUTIVA Y CONTROLADORES PID
4.3. APLICACIÓN EN PROCESOS DE CONTROL
4.3.1. SINTONIZACIÓN DE CONTROLADORES
4.3.2. DISEÑO DE ESTRUCTURA DE CONTROL
4.3.3. APLICACIONES EN LÍNEA
4.4. CÓMO PUEDEN LOS AG SER DE BENEFICIO PARA EL CONTROL?
4.4.1. ESTABILIDAD
CAPÍTULO 5. SINTONIZACIÓN DE CONTROLADORES PID UTILIZANDO
ALGORITMOS EVOLUTIVOS
5.1. SISTEMA MECÁNICO: MASA –RESORTE
5.1.1. CONTROLABILIDAD DEL SISTEMA
5.1.2. OBSERVABILIDAD
5.1.3. DISCRETIZACIÓN DEL SISTEMA
5.1.4. CALCULO DEL CONTROLADOR
5.1.5. DISCRETIZACIÓN DEL CONTROLADOR
5.1.6.
SINTONIZACIÓN
DE
CONTROLADORES
PID
UTILIZANDO
ALGORITMOS EVOLUTIVOS EN LÍNEA
5.1.6.1. VALIDACIÓN DEL ALGORITMO EN LÍNEA
5.2. CIRCUITO LRC
5.3. SISTEMA DE LEVITACIÓN MAGNÉTICA
5.3.1. FUNCIÓN DE TRANSFERENCIA
5.3.2. CALCULO DEL CONTROLADOR
5.4. MODELO DEL EVAPORADOR
5.4.1. MODELO NO LINEAL
5.4.2. PROCESO DE BALANCE DE MASA LIQUIDA
5.4.3. PROCESO DE BALANCE DE MASA LIQUIDA DEL SOLUTO
5.4.4. PROCESO DE BALANCE DE MASA DE VAPOR
5.4.5. PROCESO DE BALANCE DE ENERGÍA LIQUIDA
5.4.6. ENVOLTURA DEL VAPOR CALIENTE
5.4.7. CONDENSADOR
5.4.8. MODELO MATEMÁTICO DEL EVAPORADOR
5.5.
SINTONIZACIÓN
DE
CONTROLADORES
ALGORITMOS EVOLUTIVOS FUERA DE LÍNEA
5.5.1. SISTEMA MECÁNICO: MASA –RESORTE
5.5.2. CIRCUITO LRC
5.5.3. SISTEMA DE LEVITACIÓN MAGNÉTICA
5.5.4. MODELO DEL EVAPORADOR
6. ANALISIS ECONOMICO Y ADMINISTRATIVO
7. ANALISIS DE LEGALIDA
8. INFLUENCIA AMBIENTAL
CONCLUSIONES
RECOMENDACIONES
BIBLIOGRAFIA
ANEXOS
GLOSARIO DE TÉRMINOS TÉCNICOS
PID
UTILIZANDO
INTRODUCCIÓN
A pesar de que la tecnología ha ido avanzando a pasos gigantescos en el área
industrial desde la invención del controlador PID, éstos continúan teniendo una
gran acogida hasta nuestros días, siendo utilizados para el control de la
mayoría de los procesos a lazo cerrado. En general, los procesos donde estos
controladores
son
empleados
tienden
a
desestabilizarse
debido
a
perturbaciones no lineales, desgaste de equipos, y varios otros factores, lo cual
hace que tengan que ser resintonizados o reajustados para las nuevas
condiciones de operación o funcionamiento de los sistemas.
Con este trabajo se busca realizar la entonación de controladores PID, ante
cambios de los parámetros de los sistemas, de forma autónoma, sin la ayuda
del operador.
Para esto se propone utilizar algoritmos evolutivos, que constituyen una rama
de la llamada Computación Blanda, con los cuales se emula la evolución
natural de los seres vivos, utilizando la selección y reproducción, para
encontrar la solución óptima a un problema específico, sin tener ningún
conocimiento previo de este.
Inicialmente se propone un conjunto de posibles soluciones, que luego son
sometidas a procesos de transformación y después a una selección que
escoge las mejores y descarta las peores, de acuerdo a una calificación o
medida de aptitud dada por una función de aptitud, que se establece de
acuerdo al objetivo del problema.
Dentro de los algoritmos evolutivos se pueden destacar diferentes directrices,
como la de los algoritmos genéticos, las cuales se aplican de acuerdo a la
codificación que se hace de los individuos (posibles soluciones al problema).
El desarrollo de este trabajo esta organizado como sigue:
-
En el primer capítulo se trata todo lo referente a los algoritmos evolutivos
desde sus inicios, pasando por todas las técnicas que han sido
desarrolladas a través del tiempo. También se orienta un poco sobre las
consideraciones que se deben tener en cuenta a la hora de la
implementación y se mencionan sus ventajas y sus desventajas.
-
En el segundo capítulo se hace referencia a toda la teoría relacionada
con
los
controladores
PID.
Diferentes
acciones
de
control
y
configuraciones de los controladores y sus efectos sobre los sistemas.
-
El tercer capítulo es un enfoque reducido sobre las diferentes técnicas
de discretización de sistemas y además la linealización de sistemas no
lineales.
-
El cuarto capítulo es una perspectiva sobre el estado del arte de los
algoritmos evolutivos y sus usos para solucionar problemas relacionados
con controladores PID
-
En el quinto capítulo se llevan a cabo varios experimentos para la
sintonización de controladores con algoritmos evolutivos; primero en
línea y luego fuera de línea, para luego ser aplicados a un proceso de
evaporación.
-
El sexto capítulo se dan conclusiones específicas y recomendaciones
sobre el uso de este método de acuerdo a las conclusiones obtenidas en
los experimentos.
OBJETIVOS
OBJETIVO GENERAL:
Desarrollar un nuevo algoritmo de sintonización de controladores PID
utilizando algoritmos evolutivos.
OBJETIVOS ESPECÍFICOS
•
Diseñar experimentos para respaldar el desarrollo de algoritmos
evolutivos para la sintonización de controladores.
•
Diseñar un algoritmo
evolutivo para la sintonización adaptativa de
controladores PID e implementar el diseño utilizando herramientas de
computación en Matlab.
•
Validar los desarrollos, a través de simulaciones computacionales, con
un modelo matemático de un sistema de evaporación, mediante la
verificación de condiciones de estabilidad del sistema en estudio.
•
Definir otras potenciales aplicaciones de implementación en el ámbito
industrial.
JUSTIFICACIÓN
De acuerdo con las diversas asignaturas cursadas en el transcurso del
programa propuesto para Ingeniería Electrónica, el control automático es una
de las áreas de estudio de la carrera. El control como tal, dentro de su
diversidad de temas, métodos y técnicas, incluye el diseño de controladores
PID, los cuales son ampliamente utilizados a nivel industrial.
Los controladores han generado muchos beneficios para la apropiada
operación de procesos o sistemas; por lo cual son de gran interés, tanto en
sus funcionalidades, como en el mejoramiento continuo del desempeño de
procesos industriales. Para lograr estas mejoras se han usado diferentes
métodos basados en una diversidad de técnicas para la entonación automática
de los controladores.
Teniendo en cuenta los objetivos del proyecto, sus logros aportarían soluciones
a la industria, ya que permitirían mejorar la operación de plantas al tiempo que
robustecerían las condiciones de seguridad operacional en procesos de alto
riesgo donde el control resulta esencial.
PLANTEAMIENTO DEL PROBLEMA
En las instalaciones industriales más del 95% de los procesos son regulados
por controladores PID, pero debido a la vida útil de los equipos, a cambios de
dinámica de los procesos, a la presencia de comportamientos no lineales y a
perturbaciones de naturaleza aleatoria, entre otros factores, con frecuencia se
pierde la entonación de los controladores. Todo eso ocasiona una degradación
en las condiciones de operación de los sistemas, ya que estos están diseñados
para operar en un punto específico de equilibrio, trayendo como consecuencia
pérdidas económicas o detrimento de las condiciones de seguridad en la
operación del proceso. Por esto, se hace necesaria la asistencia de ingenieros
de control para reestablecer el buen desempeño del sistema, entonando los
controladores. Lo ideal sería que el controlador se acoplara automáticamente a
los cambios de parámetros del sistema de forma eficiente, rápida y efectiva sin
necesidad de recurrir a un operador para realizarlo, lo cual resultaría más
costoso.
METODOLOGÍA
•
Recolección de información:
En este primer paso se llevó a cabo una consulta e investigación
documental sobre el estado del arte de los controladores PID y los
algoritmos evolutivos. Para esto fue necesario usar la INTERNET, fuentes
bibliográficas (artículos, libros, folletos y revistas) y colaboración de
profesores conocedores del área. La información recopilada permitió la
escogencia de la estructura del controlador y de los parámetros de diseño
del algoritmo evolutivo: codificación, población inicial, fusión objetivo,
condición de terminación, operadores, entre otros elementos.
•
Diseño de experimentos:
Se comenzó con el desarrollo de la técnica en línea, utilizando varios
sistemas estables a lazo cerrado, a los cuales se les realizó cambios de
las condiciones iniciales, usando como función de aptitud la diferencia
del error cuadrático y empleando como operador genético el de
mutación basada en descenso por gradiente. También se trabajó con
sistemas inestables a lazo abierto y un tipo de sistemas no lineales,
haciendo cambios en la función objetivo del algoritmo evolutivo y con
mutación basada en ascenso por gradiente. Luego fue desarrollada la
técnica fuera de línea. Para todas estas pruebas se utilizó la ayuda del
sistema programado Simulink y las herramientas de programación de
Matlab. Por último se aplicó este algoritmo a la variable de tasa de flujo,
de un proceso de evaporación, para controlar las diferentes salidas de
este sistema. Aquí se hizo necesaria la utilización de diferentes técnicas
de discretización de sistemas lineales para la implementación del
algoritmo.
•
Obtención de resultados:
Una vez obtenidos los comportamientos de los diferentes sistemas
considerados después de haber utilizado el algoritmo evolutivo
diseñado, fueron establecidas conclusiones y recomendaciones relativas
a los resultados y en correspondencia con los objetivos originalmente
planteados para el trabajo. Así mismo se realizaron consideraciones
sobre la plataforma tecnológica necesaria a nivel industrial para poder
hacer la implantación física del método de entonación PID desarrollado.
Capítulo 1
Computación Evolutiva
1.1. INTRODUCCIÓN
En la naturaleza todos los seres vivos se enfrentan a problemas que deben
resolver con éxito, como conseguir más luz del sol, o cazar una mosca. La
Computación Evolutiva interpreta la naturaleza como una inmensa máquina de
resolver problemas y trata de encontrar el origen de dicha potencialidad para
utilizarla en programas [1, 5,13].
La computación evolutiva busca relacionar algunos conceptos expresados en la
teoría de la evolución con un conjunto de técnicas usadas para resolver
computacionalmente algunos problemas. La computación evolutiva CE abarca
los modelos computacionales que usan como elemento clave algún mecanismo
de la teoría de la evolución para su diseño e implementación [4].
El principal aporte de la CE a la metodología de la resolución de problemas ha
sido el uso de mecanismos de selección de soluciones potenciales y de
construcción de nuevas candidatas por recombinación de característica de
otras ya existentes [4].
La Computación Evolutiva surge a finales de los años 60 cuando John Holland
planteó la posibilidad de incorporar los mecanismos naturales de selección y
supervivencia a la resolución de problemas de Inteligencia Artificial. [22]
En la actualidad se tienen varias aplicaciones industriales exitosas inspiradas
en enfoques evolutivos para diversas áreas [22]:
o Diseño de circuitos
o Planificación de tareas
o Cálculo de Estrategias de Mercado
o Cortado de patrones, etc.
Las implementaciones concretas en el área de la CE han sido denominadas
algoritmos evolutivos [4].
Los Algoritmos Evolutivos recogen un conjunto de modelos basados en la
evolución de los seres vivos inspirados en la naturaleza, constituyendo así una
técnica de resolución de problemas [22,5].
En un Algoritmo Evolutivo se define una estructura de datos que admite todas
las posibles soluciones a un problema. Cada uno de los posibles conjuntos de
datos admitidos por esa estructura será una solución al problema. Unas
soluciones serán mejores, otras peores. Estas soluciones serán sometidas a
ciertas transformaciones y luego a un proceso de selección que favorece a los
mejores. Se espera que después de cierto número de generaciones el mejor
individuo de la población esté cerca de la solución buscada. Solucionar el
problema consistirá en encontrar la solución óptima, y por tanto, los Algoritmos
Evolutivos son en realidad un método de búsqueda muy especial, en el que las
soluciones al problema son capaces de reproducirse entre sí, combinando sus
características y generando nuevas soluciones [5, 8,22].
En cada ciclo se seleccionan las soluciones que más se acercan al objetivo
buscado, eliminando el resto de soluciones. Las soluciones seleccionadas se
reproducirán entre sí, permitiendo de vez en cuando alguna mutación o
modificación al azar durante la reproducción [5].
No siempre el espacio de búsqueda completo contiene soluciones válidas; en
algunos casos, los valores de las variables se sitúan dentro de un rango, más
allá del cual la solución es inválida. Se trata entonces de un problema de
optimización con restricciones. En este caso, el problema consiste en
maximizar F(xi) dentro del subespacio.
1.2. ORIGENES
A principios del siglo XIX, las cuestiones relacionadas con las variaciones
evolutivas se centraban en tres aspectos: cuál era la naturaleza del material
genético transmitido a la descendencia, cómo pasaban fielmente las
características de una generación a la siguiente, y cómo se producían
variaciones en ellas que después se transmitían. El zoólogo francés Jean
Baptiste de Lamarck pensaba que la vida animal y vegetal sufría nuevas
influencia de acuerdo a los cambios climáticos y áreas geográficas que
experimentaban, desencadenando nuevas necesidades y por tanto nuevas
estrucuturas. A estas nuevas estructuras Lamarck las llamó características
adquiridas que pueden ser heredadas a nuevas generaciones [19].
A finales del siglo XIX, científicos como Charles Darwin, el biólogo alemán
Ernst Haeckel, el botánico holandés Hugo De Vries y el biólogo alemán
August Weismann desarrollaron teorías sobre la herencia. La razón principal
que suscitó este interés fue que la teoría de la selección natural de Darwin,
publicada por primera vez en 1859. La selección natural fomenta la adaptación
de los organismos cuando ello es necesario para la supervivencia, el éxito
debió alcanzar a aquellas que conseguían desarrollar una habilidad o
mecanismo especial para su autoconservación y replicación rápida [19].
Charles Darwin elaboró su teoría de la selección natural, que se convertiría en
el fundamento de la teoría de la evolución, influenciado por las ideas del
geólogo Adam Sedgwick y el naturalista John Henslow.
La mayor parte de la selección natural se denomina selección estabilizadora,
por cuanto elimina genes del conjunto genético que tienden a producir
desviaciones de una forma que ya es óptima [20].
La selección natural elige los más aptos, los organismos más capacitados.
Para Darwin aptitud significaba cualquier cualidad que ayudaba a un organismo
a sobrevivir y reproducirse [18].
Gregor Johann Mendel (1822-1884) fue un monje austriaco, cuyos
experimentos se convirtieron en el fundamento de la actual teoría de la
herencia (transmisión a los descendientes de los caracteres de los
ascendientes). Sus exhaustivos experimentos con plantas tuvieron como
resultado el enunciado de dos principios que más tarde serían conocidos como
leyes de la herencia. Sus observaciones le llevaron también a acuñar dos
términos que siguen empleándose en la genética de nuestros días: dominante
y recesivo [18, 21].
El redescubrimiento en 1900 de los escritos de Mendel del año 1866 sobre los
patrones de la herencia en la planta del guisante, supuso una fuente importante
de conceptos nuevos sobre la herencia. De su estudio sobre el cruzamiento de
este tipo de plantas, Mendel llegó a tres generalizaciones. La primera fue la ley
de la uniformidad en la primera generación filial: cuando se cruzan dos razas
puras (homocigotas), diferentes en un carácter concreto, la descendencia
presenta siempre el mismo fenotipo. La segunda fue la ley de la segregación:
en la formación de células germinales, los dos factores (alelos) para cualquier
característica están siempre separados entre sí y van a diferentes óvulos o
espermatozoides. La tercera generalización, que con posterioridad se
denominó la ley de la herencia independiente, afirmaba que los factores
maternos y paternos para cualquier grupo de características se separaban de
forma independiente de aquellos que pertenecían a otro grupo de
características [20,21].
Los estudios de Mendel, retomados a finales del siglo, demostraron lo que
Darwin insinuó vagamente en cierta época, que la herencia es particular, no
combinada. Sean o no los descendientes formas intermedias entre sus dos
padres, heredan y transmiten partículas hereditarias separadas, que hoy en día
se denominan genes.
Hugo Marie de Vries (1848-1935) fue un botánico holandés, quien redescubrió
de modo independiente las leyes de la herencia desarrolladas por el monje
austriaco Gregor Mendel, e incorporó el concepto de mutación a la teoría
evolutiva (variaciones a gran escala que pueden producir nuevas especies en
una sola generación), la mutación es el origen último de la variación genética.
De Vries concedió a Mendel todo el mérito por el trabajo [18].
En 1903, Walter Sutton, en Estados Unidos, y Theodore Boveri, en Alemania,
formularon por separado la teoría cromosómica de la herencia, en la que
proponían que los cromosomas eran el soporte físico de los genes. Después de
varios años de experimentación el científico estadounidense Thomas Hunt
Morgan, junto con sus colaboradores, Alfred Henry Sturtevant, Calvin
Blackman Bridges y Hermann Joseph Muller, demostraron la teoría
formulada por Sutton y Boveri. Los cromosomas contienen la información
genética del organismo. La mitad de los cromosomas proceden del padre, y la
otra mitad de la madre. Las diferencias entre individuos reflejan la
recombinación genética de estos juegos de cromosomas al pasar de una
generación a otra [19].
Harriet B. Creighton y Barbara McClintock demostraron experimentalmente,
en 1931, la correlación existente entre la recombinación genética y el
intercambio de fragmentos cromosómicos (entrecruzamiento) que acontece
durante la meiosis [19].
1.3. ANTECEDENTES
Los primeros ejemplos de lo que hoy se podría llamar algoritmos genéticos
aparecieron a finales de los 50 y principios de los 60, programados en
computadoras por biólogos evolutivos que buscaban explícitamente realizar
modelos de aspectos de la evolución natural [28].
John Holland En los años 50 entró en contacto con los primeros ordenadores,
donde pudo llevar a cabo algunas de sus ideas, aunque no se encontró con un
ambiente intelectual fértil para propagarlas. Fue a principios de los 60, en la
Universidad de Michigan en Ann Arbor, donde, dentro del grupo Logic of
Computers, sus ideas comenzaron a desarrollarse y a dar frutos. Y fue,
además, leyendo un libro escrito por un biólogo evolucionista, R. A. Fisher,
titulado La teoría genética de la selección natural, como comenzó a descubrir
los medios de llevar a cabo sus propósitos de comprensión de la naturaleza [2].
En esa universidad, Holland impartía un curso titulado Teoría de sistemas
adaptativos. Dentro de este curso, y con una participación activa por parte de
sus estudiantes, fue donde se crearon las ideas que más tarde se convertirían
en los algoritmos genéticos [2].
Por tanto, cuando Holland se enfrentó a los algoritmos genéticos, los objetivos
de su investigación fueron dos [2]:
•
Imitar los procesos adaptativos de los sistemas naturales, y
•
Diseñar sistemas artificiales (normalmente programas) que retengan los
mecanismos importantes de los sistemas naturales.
Ese mismo año, la importante tesis de Kenneth De Jong estableció el
potencial de los AGs demostrando que podían desenvolverse bien en una gran
variedad de funciones de prueba, incluyendo paisajes de búsqueda ruidosos,
discontinuos y multimodales [28].
Unos 15 años más adelante, David Goldberg, actual delfín de los algoritmos
genéticos, conoció a Holland, y se convirtió en su estudiante. Golberg era un
ingeniero industrial que trabajó en diseño de pipelines, y fue uno de los
primeros que trató de aplicar los algoritmos genéticos a problemas industriales
[2].
En 1932, Cannon visualizó la evolución natural como un proceso de
aprendizaje. Alan Turing reconoció, en 1950, que debe haber una conexión
obvia entre el aprendizaje de máquina y la evolución y señaló que se podrían
desarrollar programas para jugar ajedrez usando esta técnica. Campbell
conjeturó en 1960 que en todos los procesos que llevan a la expansión del
conocimiento, se involucra un proceso ciego de variación y supervivencia
selectiva. Los primeros intentos de aplicar de manera formal la teoría de la
evolución, a problemas prácticos de ingeniería, apareció en las áreas de control
de procesos estadísticos, aprendizaje de máquina y optimización de funciones.
Tal vez el primer intento serio de este tipo se dio en el trabajo que realizaron
G.E.P. Box y sus colegas G.J. Friedman, W.W. Bledsoe y H.J. Bremermann
en 1957, en el desarrollo de una técnica que denominaron Operación Evolutiva,
la cual se aplicó a una planta de manufactura para manejarla, y que se
implanto sobre la base de los votos de un comité de jefes técnicos. Bajo este
esquema, la planta se veía como a una especie en evolución. La calidad del
producto avanzaba a través de mutaciones aleatorias y la selección era
determinada por el comité [3,8].
Por su parte, Friedberg intentó, en 1958, hacer que un programa en lenguaje
de máquina se mejorara a sí mismo, seleccionando instrucciones que se
asociaran más frecuentemente con un resultado exitoso. La comunidad de
Inteligencia Artificial de la época prestó poca atención a su trabajo, y en
algunas ocasiones lo atacó despiadadamente. Por ejemplo, Minsky lo criticó
duramente, argumentando que una búsqueda puramente aleatoria era mucho
mejor que el algoritmo de Friedberg (este argumento aún es esgrimido
infundadamente por algunos miembros de la comunidad científica en contra de
los algoritmos genéticos) [3].
El trabajo de Bremermann, en 1958, se enfocó más a la optimización,
introduciendo el importante manejo de un valor de aptitud, y definiendo a un
individuo como una cadena de símbolos binarios (unos y ceros). Bremermann
advirtió, acertadamente, que la mutación jugaba un papel importante en la
evolución, pues impedía el estancamiento en mínimos locales [3].
Barricelli ofreció, en 1954, una de las primeras simulaciones que usaba
principios evolutivos, utilizando los mismos procedimientos generales que se
usan hoy en día en la disciplina conocida como vida artificial. Sin embargo, en
este trabajo, así como el que Reed realizó posteriormente en 1967, se
concluyó que el cruce no parecía mejorar la velocidad de la adaptación
selectiva, y el operador primordial era la mutación [3].
El siguiente desarrollo importante en el campo vino en 1966, cuando L.J.
Fogel, A.J. Owens y M.J. Walsh introdujeron en América una técnica que
llamaron programación evolutiva. En este método, las soluciones candidatas
para los problemas se representaban como máquinas de estado finito sencillas;
su algoritmo funcionaba mutando aleatoriamente una de estas máquinas
simuladas y conservando la mejor de las dos. Fue Fogel el que introdujo la
primera técnica evolutiva que realmente funcionó más o menos dentro de los
lineamientos actuales de la computación evolutiva. Su programación evolutiva
consistía en hacer evolucionar autómatas de estados finitos por medio de
mutaciones. Fogel introdujo los importantes conceptos de población y
selección, y aunque las revisiones iniciales de su trabajo fueron favorables,
algunos investigadores, como Solomonoff, enfatizaron que el método de Fogel
no debía verse en su estado actual (en 1966) como algo particularmente útil
para resolver problemas, a excepción de los más simples posibles [3, 28].
Otra técnica evolutiva dirigida particularmente a la optimización de funciones
continuas de alta complejidad se desarrolló en Alemania, en 1965, por Ingo
Rechenberg y Schwefel. Esta técnica, llamada estrategia evolutiva, se utilizó
inicialmente para resolver problemas ingenieriles que desafiaban a los métodos
de optimización tradicionales, como el gradiente conjugado, y se basa en la
modificación sistemática de un vector de números reales (representando las
variables de decisión del problema) mediante operadores probabilísticos,
usando ciertos criterios para decidir en qué dirección dirigir la búsqueda. La
estrategia evolutiva utiliza como operador principal a la mutación, y en su
versión más reciente usa el cruce como operador secundario [3].
Aunque el australiano Fraser propuso, desde fines de los 50, un procedimiento
muy similar al que John Holland llamó planes evolutivos a fines de los 60, es al
segundo al que se le suele atribuir la creación de la técnica que se conoce
como algoritmo genético, a raíz de que Holland publicara el libro Adaptation in
Natural and Artificial Systems en 1975. La principal diferencia del algoritmo
genético con las técnicas antes mencionadas, es que utiliza el cruce como
operador principal y a la mutación como operador secundario (e incluso
opcional). El algoritmo genético, al igual que las redes neuronales, funciona
como una caja negra que recibe ciertas entradas y produce (tras una cantidad
de tiempo indeterminada) las salidas deseadas [3].
En 1994, Karl Sims publicó Evolving Virtual Creatures en la conferencia
SIGGRAPH, en la que despertó el interés de expertos y del público en general.
Sims reprodujo en su computadora un entorno natural en el que se simulaban
diversos medios como el acuático y el terrestre, con consideración de
parámetros físicos como gravedad, rozamiento y viscosidad. Asimismo, dotó a
la computadora de un conjunto de bloques con los que construyó criaturas
virtuales [11].
1.4. BASES BIOLÓGICAS DE LA COMPUTACIÓN EVOLUTIVA.
Desde el punto de vista biológico, la CE se basa en tres teorías:
Evolución de Darwin, la de seleccionismo de Weismann y la de genética de
Mendel [4].
Postulados de la selección natural que conforman las bases biológicas de la
CE [4]:
1. No todos los individuos de una misma especie son iguales. Pueden ser
heredadas pequeñas variaciones a sus descendientes.
2. Dichas variaciones podrían facilitar la supervivencia a sus portadores en
determinados ambientes.
3.
En
las
poblaciones
en
cada
generación
el
número
permanece
aproximadamente constante, por el hecho de que no todos sobreviven.
4. Los individuos portadores de la mejor adaptación irán incrementando en
relación de parte de la población al transmitir sus características a sus
descendientes.
5. Al irse agregando características favorables, luego de cierto numero de
generaciones se forma una nueva especie que difiere mucho del grupo original.
La NeoDarwinista combina la teoría de Darwin con los aportes de la Genética,
conocida también con el nombre de Teoría Sintética de la Evolución. Esta
teoría postula un principio que es altamente relevante para la CE: La unidad
sobre la que actúa la evolución no es el individuo, sino otra de orden superior,
La población [4].
De entre las teorías formuladas para explicar cómo se heredan las
características, una merece especial mención. Esta es la de Mendel, que
proporcionó el fundamento sobre el cual se ha basado toda la investigación
genética posterior [4].
Para explicar los resultados obtenidos en sus experimentos, Mendel formuló
una serie de hipótesis para explicar resultados obtenidos. Las hipótesis
formuladas por Mendel fueron las siguientes [4]:
1. En cada organismo existe un par de factores que regulan la aparición de una
determinada característica (Hoy en día, a estos factores son denominamos
genes).
2. El organismo obtiene tales factores de sus padres, un factor por cada padre.
3. Cada uno de estos factores se transmite como una unidad discreta
inmodificable.
4. Primera ley de Mendel, o ley de la segregación.
5. Si un organismo posee dos factores diferentes para una característica dada,
uno de ellos debe expresarse y excluir totalmente al otro. Hoy en día, los
biólogos usan el término alelo para describir las formas alternativas de un gen
que controla la aparición de una característica dada.
Por su parte, la teoría de Weismann ha tenido implicaciones cruciales para la
evolución: Demostró que los cambios en el cuerpo, debido al uso o el desuso
de partes del mismo, no se reflejan en el plasma del germen, y por
consiguiente, no pueden ser heredados. Con experimentos
probó que el
cuerpo del padre transmite meramente su germen plasmático, invalidando así
la teoría Lamarkista [4].
1.5. COMPONENTES DE UN ALGORITMO EVOLUTIVO
Los componentes de un algoritmo evolutivo se `pueden observar en la figura
1.1 [5]:
1. Una representación genética de soluciones del problema.
2. una manera de crear una población inicial con estas estructuras.
3. una función de aptitud que juegue el papel de ambiente y que jerarquice las
soluciones en términos de su efectividad en la resolución del problema.
4. un mecanismo de selección y un conjunto de operadores que motoricen la
búsqueda modificando parcialmente las estructuras de solución.
5. valores para los parámetros que determinan la dinámica evolutiva.
Figura 1.1. Estructura De Los Algoritmos Evolutivos
Los Algoritmos Evolutivos han emergido como una clase de búsqueda aleatoria
de varios puntos, concurrentemente, sobre un espacio de soluciones factibles;
los AEs requieren de mucho poder de cómputo y espacio de memoria lo cual
los hace interesantes para paralelizarlos. La paralelización del AE mejora
considerablemente tanto el desempeño del algoritmo como la calidad de las
soluciones reportadas debido a que se pueden manipular grandes espacios de
búsqueda y además abarata los costes del hardware [7].
Los Algoritmos Evolutivos requieren que se les especifique la codificación de
los individuos y una función de evaluación que mida la aptitud de cada
individuo. La función de Aptitud es la guía que emplean estos algoritmos para
explorar de forma eficiente su amplio espacio de búsqueda de posibles
soluciones [7].
Los algoritmos evolutivos han sido amplia y exitosamente usados para diseños
de aplicaciones fuera de línea. En el campo de la ingeniería de control de
sistemas, estas aplicaciones incluyen diseño de controladores, identificación
de modelos, análisis de estabilidad robusta, fiabilidad a de sistemas y
diagnostico de fallas [9].
Los Algoritmos Evolutivos pueden considerarse una técnica de aprendizaje no
supervisado, es decir, aprendizaje inductivo por observación y descubrimiento
[22]:
•
Estos algoritmos generan ejemplos por si mismos.
•
La creación de nuevos ejemplos (puntos de búsqueda) por el algoritmo
es una apuesta inductiva sobre la base del conocimiento existente.
Los algoritmos evolutivos se distinguen también por no quedar atrapados
fácilmente en mínimos locales, como la mayor parte de las técnicas de
búsqueda clásicas, además de usar operadores probabilísticos más robustos
que los operadores determinísticos, que las otras técnicas suelen usar. No
obstante, siendo una heurística, tampoco pueden garantizar encontrar siempre
la solución óptima, si bien la experiencia acumulada hasta la fecha parece
demostrar que, cuando se utilizan apropiadamente, pueden proporcionar
soluciones muy aceptables y, en la mayoría de los casos, superiores a las
encontradas con otras técnicas de búsqueda y optimización [3].
La clara ventaja de los Algoritmos Evolutivos es su aplicabilidad universal a
cualquier tipo de espacio de estructuras [22].
1.6. MODELOS SOBRE EL ESQUEMA GENERAL
Hasta hace poco era común hablar de Algoritmos Genéticos (AG) en general,
en vez de identificar diferentes tipos de CE, ya que el resto de los algoritmos se
pueden interpretar como variaciones o mejoras de los AG, más conocidos
[25,14].
-
Algoritmos Genéticos: trabajan con una población de cadenas binarias
con
el fin obtener la máxima generalidad y el máximo grado de
paralelismo implícito [22].
-
Programas Evolutivos: los individuos pueden ser cualquier estructura de
datos [22].
-
Programas Genéticos: los individuos son programas o autómatas
(longitud variable), generalmente representados en forma de árbol [22].
-
Estrategias Evolutivas: trabajan con números reales que codifican las
posibles soluciones de problemas numéricos [22].
La agregación simulada (Simulated Annealing) se puede considerar una
simplificación de los AG cuyo origen está en los procedimientos físicos de
solidificación controlada [25].
1.7. ALGORITMOS GENÉTICOS (AG)
Los primeros hechos relacionados con los Algoritmos Genéticos (en adelante
AGs) surgieron en 1932 cuando Cannon interpreta la evolución natural como
un proceso de aprendizaje muy similar al proceso mediante el cual una persona
aprende por ensayo y error. También en 1950 Turing reconoce una conexión
entre la evolución y el aprendizaje de una máquina [24].
Los investigadores en computación observaron que esta clase de algoritmos
podía utilizarse también para optimizar funciones. De hecho, aunque las
primeras descripciones técnicas y definiciones de adaptación provienen de la
biología, ya en este contexto, adaptación designa cualquier proceso por el cual
una estructura va modificándose de forma progresiva para lograr el
comportamiento óptimo en su entorno. Es decir, los procesos adaptativos son
básicamente procesos de optimización, pero es difícil aglutinarlos y unificar su
estudio
porque
las
estructuras
modificables
son
complejas
y
su
comportamiento es incierto [24, 25].
Los algoritmos genéticos son métodos sistemáticos para la resolución de
problemas de búsqueda y optimización que aplican a estos los mismos
métodos de la evolución biológica: selección basada en la población,
reproducción sexual y mutación. Los AG utilizan el cruce como operación
principal y a la mutación como operador secundario e incluso opcional [2,3, 27].
Los mecanismos de selección del más apto y de reproducción sexual del
algoritmo genético, son los encargados de preservar las características más
adecuadas de cada individuo a fin de hacer converger a la población en
soluciones óptimas [3].
Mediante la selección se determina que miembros de una población sobreviven
para reproducirse, y mediante la reproducción se asegura la mezcla y
recombinación de los genes de la descendencia [24].
Esta mezcla del material genético permite que las especies evolucionen mucho
mas rápidamente de lo que lo harían si tuvieran sólo la copia de los genes de
uno de sus progenitores [24].
En un algoritmo genético, tras parametrizar el problema en una serie de
variables, (xi,...,xn) se codifican en un cromosoma. Todos los operadores
utilizados por un algoritmo genético se aplicarán sobre estos cromosomas, o
sobre poblaciones de ellos [2].
Aunque no se sabe aún de manera completa la información específica
codificada en los cromosomas de un individuo, las siguientes propiedades
generales son aceptadas por todos los especialistas en el tema [15]:
a) La evolución es un proceso que opera fundamentalmente sobre los
cromosomas.
b) El proceso de selección natural es el responsable de que aquellos individuos
que tienen mejor adaptación al entorno se reproduzcan más que los poco
adaptados.
c) En la reproducción es donde tiene lugar la evolución.
d) La evolución biológica carece de memoria.
En el algoritmo genético va implícito el método para resolver el problema; son
solo parámetros de tal método los que están codificados, a diferencia de otros
algoritmos evolutivos como la programación genética. Hay que tener en cuenta
que un algoritmo genético es independiente del problema, lo cual lo hace un
algoritmo robusto, por ser útil para cualquier problema, pero a la vez débil, pues
no está especializado en ninguno [2].
Las soluciones codificadas en un cromosoma compiten para ver cuál constituye
la mejor solución (aunque no necesariamente la mejor de todas las soluciones
posibles). El ambiente, constituido por las otras camaradas soluciones, ejercerá
una presión selectiva sobre la población, de forma que sólo los mejor
adaptados sobrevivan o leguen su material genético a las siguientes
generaciones, igual que en la evolución de las especies [2].
Los algoritmos genéticos han demostrado ser un método útil de búsqueda de
soluciones satisfactorias (calidad/tiempo), en problemas cuyo espacio de
solución es difícil de tratar por otros métodos por su amplio rango. Estas
posibilidades brindan la oportunidad de ajustar los parámetros de tal manera
que la convergencia a la solución sea mucho más eficiente en cuanto a la
relación calidad/tiempo que los métodos exactos pueden ofrecer [6].
Para encontrar óptimos globales, los algoritmos de optimización hacen uso de
dos técnicas: explorar áreas desconocidas en el espacio de búsqueda y
explotar el conocimiento obtenidos de puntos previamente evaluados. Los
algoritmos combinan ambas técnicas de una forma eficiente [17].
Los resultados de los AGs mejoran significativamente si se usa una
representación y unos operadores genéticos naturales.
1.7.1. Codificación de las variables
Los algoritmos genéticos requieren que el conjunto se codifique en un
cromosoma. Cada cromosoma tiene varios genes, que corresponden a sendos
parámetros del problema. Para poder trabajar con estos genes en el ordenador,
es necesario codificarlos en una cadena, es decir, una ristra de símbolos
(números o letras) que generalmente va a estar compuesta de 0s y 1s aunque
hay otras codificaciones posibles usando alfabetos de diferente cardinalidad [2,
28].
La mayoría de las veces, una codificación correcta es la clave de una buena
resolución
del
problema.
Esto
puede
llevar
a
usar
cromosomas
bidimensionales, o tridimensionales, o con relaciones entre genes que no sean
puramente lineales de vecindad. En algunos casos, cuando no se conoce de
antemano el número de variables del problema, caben dos opciones: codificar
también el número de variables, fijando un número máximo, o bien, lo cual es
mucho más natural, crear un cromosoma que pueda variar de longitud. Para
ello, claro está, se necesitan operadores genéticos que alteren la longitud.
Normalmente, la codificación es estática, pero en casos de optimización
numérica, el número de bits dedicados a codificar un parámetro puede variar, o
incluso lo que representen los bits dedicados a codificar cada parámetro [2].
1.7.2. Operadores
Una vez que la selección ha elegido a los individuos aptos, éstos deben ser
alterados aleatoriamente con la esperanza de mejorar su aptitud para la
siguiente generación. Existen dos estrategias básicas para llevar esto a cabo.
1.7.2.1. Cruce
Consiste en el intercambio de material genético entre dos cromosomas (a
veces más, como el operador orgía propuesto por Eiben). El teorema de los
esquemas confía en él para hallar la mejor solución a un problema,
combinando soluciones parciales [2].
Implica elegir a dos individuos para que intercambien segmentos de su código,
produciendo una “descendencia'' artificial cuyos individuos son combinaciones
de sus padres
como se muestra en la figura 1.2. Este proceso pretende
simular el proceso análogo de la recombinación que se da en los cromosomas
durante la reproducción sexual. Como norma general se aplica después de un
proceso de selección de dos individuos [15, 28].
Padres (criadores)
0
0
0
0
1
1
1
1
0
0
0 1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
Hijos (vástagos)
Figura1.2. Aplicación del operador de cruce.
Las 2 formas más comunes de reproducción sexual son: uso de un punto único
de cruce y uso de 2 puntos de cruce [6,26, 28].
Cuando se usa un solo punto de cruce, éste se escoge de forma aleatoria
sobre la longitud de la cadena que representa el cromosoma, y a partir de él se
realiza el intercambio de material de los 2 individuos [2,6, 26].
Cuando se usan 2 puntos de cruce, se procede de manera similar, pero en este
caso Se eligen dos puntos de ruptura al azar para intercambiar [6,26].
•
cruce uniforme: se genera un patrón aleatorio de 1s y 0s, y se
intercambian los bits de los dos cromosomas que coincidan donde hay
un 1 en el patrón. O bien se genera un número aleatorio para cada bit, y
si supera una determinada probabilidad se intercambia ese bit entre los
dos cromosomas [2,6].
•
cruce especializado: en algunos problemas, aplicar aleatoriamente el
cruce da lugar a cromosomas que codifican soluciones inválidas; en este
caso hay que aplicar el cruce de forma que genere siempre soluciones
válidas [2].
•
Cruce segmentado: existe una probabilidad de que un cromosoma sea
punto de un cruce. Conforme se va formando la nueva cadena del
descendiente, para cada gen, se verifica si ahí se va producir un cruce.
Normalmente el cruce se maneja dentro de la implementación del algoritmo
genético como un porcentaje que indica con qué frecuencia se efectuará. Esto
significa que no todas las parejas de cromosomas se cruzarán, sino que habrá
algunas que pasarán intactas a la siguiente generación. De hecho existe una
técnica desarrollada hace algunos años en la que el individuo más apto a lo
largo de las distintas generaciones no se cruza con nadie, y se mantiene
intacto hasta que surge otro individuo mejor que él, que lo desplazará. Dicha
técnica es llamada elitismo, y no debe sorprender el hecho de que haya sido
desarrollada en Alemania [26].
1.7.2.1.1. Cruces para permutación
1.7.2.1.1.1. Cruce por emparejamiento parcial (PMX)
Toma una subsecuencia del cromosoma del padre y procura preservar el orden
absoluto de los genes, es decir, orden y posición en el cromosoma, del resto
del cromosoma lo más parecido posible de la madre. Aparece también en la
bibliografía como PMX [23].
1.7.2.1.1.2. Cruces por orden (OX)
Cruce de mapeamiento parcial o Cruce por orden: toma una subsecuencia del
cromosoma del padre y procura preservar el orden relativo de los genes del
resto del cromosoma lo más parecido posible de la madre. Se puede encontrar
en la bibliografía como OX [23].
Este cruce sólo considera el orden relativo de las soluciones, no su posición.
Existen dos variantes de este cruce que toman en cuenta las posiciones (muy
usados en planificación de tareas).
1.7.2.1.1.2.1. Variantes al Cruce por orden
-
Cruce por orden con posiciones prioritarias
No se elige un tramo para intercambiarlo entre los progenitores, sino un
conjunto de posiciones al azar. (El resto no cambia).
-
Cruce por orden con orden prioritario: Los individuos no intercambian
genes, sino el orden relativo existente entre ellas.
1.7.2.1.1.3. Cruce por ciclos (CX)
Se toma el primer gen del cromosoma del padre, poniéndolo en la primera
posición del hijo, y el primer gen del cromosoma de la madre, poniéndolo
dentro del cromosoma del hijo en la posición que ocupe en el cromosoma del
padre. El gen que está en la posición que ocupa el gen del cromosoma del
padre igual al primer gen del cromosoma de la madre se va a colocar en la
posición que ocupe en el cromosoma del padre, y así hasta rellenar el
cromosoma del hijo. Este método también es conocido en la bibliografía como
CX.
1.7.2.1.1.4. Cruce por recombinación de rutas (ERX)
La descendencia se construye combinando los cromosomas que interconectan
los genes de los progenitores.
1.7.2.2. Mutación
En la Evolución, una mutación es un suceso bastante poco común (sucede
aproximadamente una de cada mil replicaciones), como ya se ha visto
anteriormente. En la mayoría de los casos las mutaciones son letales, pero en
promedio, contribuyen a la diversidad genética de la especie. En un algoritmo
genético tendrán el mismo papel, y la misma frecuencia (es decir, muy baja) [2].
Realiza un cambio a uno de los genes de un cromosoma elegido
aleatoriamente. Cuando se usa una representación binaria, el gen seleccionado
se sustituye por su complemento (un cero cambia en uno y viceversa) como se
puede observar en la figura 1.3. Este operador permite la introducción de nuevo
material cromosómico en la población, tal y como sucede con sus equivalentes
biológicos [26].
Individuo original
1
0
1
1
1
1
1
1
0
1
1
1
0
0
1
1
Individuo después de la mutación
Figura 1.3. Aplicación del operador de mutación.
Al igual que la cruce, la mutación se maneja como un porcentaje que indica con
qué frecuencia se efectuará, aunque se distingue de la primera por ocurrir
mucho más esporádicamente (el porcentaje de cruce normalmente es de más
del 60%, mientras que el de mutación normalmente nunca supera el 5%) [26].
El operador de mutación que se acaba de describir representa la denominada
mutación clásica. Este operador también puede tener algunas variantes al
operador clásico [4].
1.7.2.2.1. Mutaciones sobre genes: Cuando un gen puede tomar más de dos
valores (llamados también alelos), la mutación se realiza cambiando el valor
actual por otro más o menos parecido [4].
1.7.2.2.2. Mutaciones no estacionarías: en algunas ocasiones es conveniente
reducir la tasa de mutación (probabilidad de mutación) según el programa
progresa. La forma de implementar tal reducción depende en gran medida del
problema; una manera sencilla es multiplicando la probabilidad de mutación por
un factor de reducción cada cierto número de generaciones [4].
1.7.2.2.3. Mutaciones no uniformes: Se dan distintas probabilidades de
mutación a cada gen (o a cada bit dentro de un gen), dependiendo de su
significado.
1.7.2.3. Variantes en operadores básicos para números reales
Aunque t5ambien se puede utilizar los mecanismos mencionados para codificar
binarios, existen variantes relevantes si se trabaja con representación basada
en números reales.
Por ejemplo
Cruce
C1
escalar o vector de números reales
C2
escalar o vector de números reales
H1 = C1 + α (C1 − C2 )
(1-1)
H 2 = C2 + α (C2 − C1 )
(1-2)
Hu =
C1 + C2
2
(1-3)
También se pueden producir más de dos hijos asignando una terna operación
posible a cada caso.
Mutación
C1
Cromosoma a ser mutado
H1 = C1 + α∆f
Gradiente ascendente
H1 = C1 − α∆f
Gradiente descendente
Depende de si se quiere minimizar o maximizar la función objetivo.
El gradiente pudiera ser analítico explicito
derivable,
se
selecciona
el
individuo
∂f
si f f es derivable. Si f no e
∂C
a
mutar
y
otro
que
difiera
significativamente del C1 ∗ puede ser en cuanto a función de ajuste o de
estructura.
∆f
fC − fC1 ∗
= 1
∆C1
C1 − C1 ∗
(1-4)
Si C1 es un escalar, es directo el gradiente. Si C1 es un vector habrá un
gradiente distinto para cada elemento del cromosoma, ya que para cada
elemento varia el valor del denominador.
1.7.2.4. Otros operadores
No se usan en todos los problemas, sino sólo en algunos, y en principio su
variedad es infinita. Generalmente son operadores que exploran el espacio de
soluciones de una forma más ordenada, y que actúan más en las últimas fases
de la búsqueda, en la cual se pasa de soluciones "casi buenas" a "buenas"
soluciones [2].
1.7.2.4.1. Cromosomas de longitud variable
Hay problemas en los que no se conoce de antemano el número de parámetros
del mismo. En estos casos, se necesitan dos operadores más: añadir y
eliminar. Estos operadores se utilizan para añadir un gen, o eliminar un gen del
cromosoma. La forma más habitual de añadir un locus es duplicar uno ya
existente, el cual sufre mutación y se añade al lado del anterior. En este caso,
los operadores del algoritmo genético simple (selección, mutación, cruce)
funcionarán de la forma habitual, salvo, claro está, que sólo se hará cruce en la
zona del cromosoma de menor longitud [2].
Estos operadores permiten, además, crear un algoritmo genético de dos
niveles: a nivel de cromosoma y a nivel de gen [2].
1.7.2.4.2. Operadores de nicho (ecológico)
Otros operadores importantes son los operadores de nicho. Estos operadores
están encaminados a mantener la diversidad genética de la población, de
forma que cromosomas similares sustituyan sólo a cromosomas similares, y
son especialmente útiles en problemas con muchas soluciones; un algoritmo
genético con estos operadores es capaz de hallar todos los máximos,
dedicándose cada especie a un máximo. Más que operadores genéticos, son
formas de enfocar la selección y la evaluación de la población [2].
1.7.2.4.3. Operadores especializados
En una serie de problemas hay que restringir las nuevas soluciones generadas
por los operadores genéticos, pues no todas las soluciones generadas van a
ser válidas, sobre todo en los problemas con restricciones. Por ello, se aplican
operadores que mantengan la estructura del problema. Otros operadores son
simplemente generadores de diversidad, pero la generan de una forma
determinada [2]:
•
Zap: en vez de cambiar un solo bit de un cromosoma, cambia un gen
completo de un cromosoma [2].
•
Creep: este operador aumenta o disminuye en 1 el valor de un gen;
sirve para cambiar suavemente y de forma controlada los valores de los
genes [2].
•
Transposición: similar al cruce y a la recombinación genética, pero
dentro de un solo cromosoma; dos genes intercambian sus valores, sin
afectar al resto del cromosoma. Similar a este es el operador de
eliminación-reinserción: en el que un gen cambia de posición con
respecto a los demás [2].
•
Agrega Alternativa: generaliza una restricción sobre un atributo,
cambiando un 0 por un 1 en la sub cadena que corresponde al atributo
[17].
•
Elimina Condición: lleva a cabo una generalización más drástica,
remplazando todos los bits de una sub cadena por 1s, esto es, elimina
por completo la restricción en un atributo dado [17].
•
Duplicación: Copia exactamente la información de un individuo a otro
[4].
•
Translocación: Se intercambian trozos del código genético de un
individuo [4].
•
Inversión: Este operador modifica la información genética de un
individuo
tomando
dos
componentes
(genes)
del
mismo
e
intercambiando los valores de éstos; es decir, al primero se le asigna la
información del segundo y al segundo la información del primero [4].
•
Dominación: Determina algunos componentes (genes) que son
preponderantes en el individuo para su valor de aptitud y da preferencia
a esos componentes en otros operadores genéticos [4].
•
Segregación: Es lo contrario a la dominación. En este caso, los
componentes segregados no influyen de manera determinante en el
grado de adaptabilidad del individuo [4].
1.7.3. Función de adaptación
La función de adaptación (fitness) define el criterio para ordenar las hipótesis
potenciales y para seleccionarlas probabilísticamente, para su inclusión en la
siguiente generación de la población. Si la tarea consiste en aprender reglas de
clasificación, entonces la función de adaptación contiene un componente para
evaluar la precisión de las hipótesis sobre un conjunto de entrenamiento dado
[17].
Es la base para determinar qué soluciones tienen mayor o menor probabilidad
de sobrevivir.
Se tiene que tener un balance entre una función que haga diferencias muy
grandes (y por lo tanto una convergencia prematura) y diferencias muy
pequeñas (y por lo tanto un estancamiento).
La función de aptitud no es más que la función objetivo de nuestro problema de
optimización. El algoritmo genético únicamente maximiza, pero la minimización
puede realizarse fácilmente utilizando el recíproco de la función maximizante
(debe cuidarse, por supuesto, que el recíproco de la función no genere una
división por cero). Una característica que debe tener esta función es que debe
ser capaz de "castigar" a las malas soluciones, y de "premiar" a las buenas, de
forma que sean estas últimas las que se propaguen con mayor rapidez [26].
1.7.4. El teorema del esquema
Proporciona el fundamento teórico de porqué los AG pueden resolver diversos
problemas. En su análisis se considera el proceso de selección y los
operadores de cruce y mutación.
Un esquema se construye utilizando un nuevo símbolo (*) para representar un
comodín (no importa) que puede aparear ambos valores (0 o 1). El esquema
11*00* representa las cadenas: 111001, 111000, 110001, 110000.
El orden de un esquema es el número de elementos que no son “`*'' dentro del
esquema.
La longitud que define a un esquema es la distancia entre la primera posición
fija y la última posición fija.
El teorema dice que: Los esquemas pequeños de bajo orden arriba del
promedio reciben un incremento exponencial de representantes en las
siguientes generaciones de un algoritmo genético [Holland 92]
El teorema del esquema caracteriza la evolución de una población en un
algoritmo genético en términos del número de elementos representando cada
esquema. Sea m(s, t) el numero de elementos del esquema s al tiempo t. El
teorema del esquema describe el valor esperado de m(s, t + 1) en términos de
m(s, t) y otras propiedades del esquema, la población, y los parámetros del
algoritmo genético [17].
Un algoritmo genético tiene también una serie de parámetros que se tienen que
fijar para cada ejecución, como los siguientes [2]:
•
Tamaño de la población: debe de ser suficiente para garantizar la
diversidad de las soluciones, y, además, tiene que crecer más o menos
con el número de bits del cromosoma. Por supuesto, depende también
del ordenador en el que se esté ejecutando. El número de soluciones en
una población es altamente relevante para la velocidad de optimización.
•
Condición de terminación: lo más habitual es que la condición de
terminación sea la convergencia del algoritmo genético o un número
prefijado de generaciones.
1.7.5. Evaluación
Durante la evaluación, se decodifica el gen, convirtiéndose en una serie de
parámetros de un problema, se halla la solución del problema a partir de esos
parámetros, y se le da una puntuación a esa solución en función de lo cerca
que esté de la mejor solución. A esta puntuación se le llama fitness [2].
El fitness determina siempre los cromosomas que se van a reproducir, y
aquellos que se van a eliminar, pero hay varias formas de considerarlo para
seleccionar la población de la siguiente generación [2].
Una vez evaluado el fitness, se tiene que crear la nueva población teniendo en
cuenta que los buenos rasgos de los mejores se transmitan a esta. Para ello,
hay que seleccionar a una serie de individuos encargados de tan ardua tarea.
1.7.6. Métodos de selección
El mecanismo de selección permite orientar la búsqueda a aquellos puntos más
promisorios con la mayor adaptación observada hasta el momento. La
selección no produce puntos nuevos en el espacio de búsqueda, sino que
determina que individuos dejaran descendencia y en que cantidad en la
próxima generación [12].
Un algoritmo genético puede utilizar muchas técnicas diferentes para
seleccionar a los individuos que deben copiarse hacia la siguiente generación,
pero abajo se listan algunos de los más comunes. Algunos de estos métodos
son mutuamente exclusivos, pero otros pueden utilizarse en combinación, algo
que se hace a menudo [28]:
•
Selección elitista: se garantiza la selección de los miembros más aptos
de cada generación [28].
•
Selección proporcional a la aptitud: los individuos más aptos tienen
más probabilidad de ser seleccionados, pero no la certeza [28].
•
Selección por rueda de ruleta o universal (R): Conceptualmente, esto
puede representarse como un juego de ruleta, cada individuo obtiene
una sección de la ruleta, pero los más aptos obtienen secciones
mayores que las de los menos aptos. Luego la ruleta se hace girar, y en
cada vez se elige al individuo que “`posea'' la sección en la que se pare
la ruleta [2, 15, 26,28].
•
Selección escalada: al incrementarse la aptitud media de la población,
la fuerza de la presión selectiva también aumenta y la función de aptitud
se hace más discriminadora. Este método puede ser útil para
seleccionar más tarde, cuando todos los individuos tengan una aptitud
relativamente alta y sólo les distingan pequeñas diferencias en la aptitud
[28].
•
Selección por torneo (T): se eligen subgrupos de individuos de la
población, y los miembros de cada subgrupo compiten entre ellos. Sólo
se elige a un individuo de cada subgrupo para la reproducción [2, 26,28].
•
Selección por rango: a cada individuo de la población se le asigna un
rango numérico basado en su aptitud, y la selección se basa en este
ranking, en lugar de las diferencias absolutas en aptitud. La ventaja de
este método es que puede evitar que individuos muy aptos ganen
dominancia al principio a expensas de los menos aptos, lo que reduciría
la diversidad genética de la población y podría obstaculizar la búsqueda
de una solución aceptable [2,28].
•
Selección
generacional:
la
descendencia
de
los
individuos
seleccionados en cada generación se convierte en toda la siguiente
generación. No se conservan individuos entre las generaciones [28].
•
Selección por estado estacionario: la descendencia de los individuos
seleccionados en cada generación vuelven al acervo genético
preexistente, reemplazando a algunos de los miembros menos aptos de
la siguiente generación. Se conservan algunos individuos entre
generaciones [28].
•
Selección jerárquica: los individuos atraviesan múltiples rondas de
selección en cada generación. Las evaluaciones de los primeros niveles
son más rápidas y menos discriminatorias, mientras que los que
sobreviven hasta niveles más altos son evaluados más rigurosamente.
La ventaja de este método es que reduce el tiempo total de cálculo al
utilizar una evaluación más rápida y menos selectiva para eliminar a la
mayoría de los individuos que se muestran poco o nada prometedores, y
sometiendo
a
una
evaluación
de
aptitud
más
rigurosa
y
computacionalmente más costosa sólo a los que sobreviven a esta
prueba inicial [28].
•
Selección por escaños: se divide el rango del número aleatorio en un
número predeterminado de escaños. Los escaños se reparten de
acuerdo con la ley d'Hont, tomando como «puntuación» para repartir los
escaños el grado de adaptación. Se observa que es más probable
escoger un elemento de baja probabilidad por este método que en el de
selección por sorteo.
•
Selección por restos estocásticos: igual que el método de selección
de escaños, sólo que los escaños no asignados directamente, es decir,
aquellos en que se aplica directamente la ley d'Hont, se asignan de
forma aleatoria. La probabilidad de escoger un elemento de muy baja
probabilidad es más alta que en el de selección por escaños.
•
Selección estocástica universal SUS: es análogo a la ruleta con M
puntos igualmente espaciados entre si, de modo que con un solo
lanzamiento se obtienen M ganadores. El método SUS no tiene sesgo y
su dispersión es la mínima posible [12].
•
Selección por sorteo :Se asume que cada individuo de la población
tiene una cierta puntuación, normalmente relacionada a su valor de
aptitud, con la cual se calcula la probabilidad pi que tiene cada individuo
i’ para formar parte de la muestra [4]:
p
i=
fi
(1-5)
n
∑ fj
j =0
Donde:
n : tamaño de la población
f: función de aptitud
1.7.7. Mecanismos de Reemplazo
Los mecanismos de reemplazo permiten mantener la población constante.
Entre los mecanismos de reemplazo, los de mayor uso y aceptación son [4]:
Reemplazo directo
Los progenitores son reemplazados directamente por sus descendientes.
Obviamente, este criterio solo puede usarse si s < n [4].
Reemplazo por similitud
Cada descendiente reemplaza aquel miembro de la población que más se le
asemeja. Al igual que en el caso directo, debe cumplirse que s < n [4].
Reemplazo por inserción (,)
Este criterio puede usarse con variación según la relación entre s y n [4]:
Si s
n; Se escogen s individuos de la población, los cuales serán sustituidos
por los s descendientes. Esta escogencia se hace a través de algún criterio de
muestreo, normalmente se toman los peores.
Si S > n: Se toma una muestra (con algún criterio) de tamaño n de los s
descendientes. Bajo este esquema, cada individuo vive sólo por una
generación.
Reemplazo por inclusión (+}
Se unen los n miembros de la población con los s descendientes, conformando
una población auxiliar de tamaño s + n. Luego, de esta población auxiliar, se
toma una muestra de tamaño n según algún criterio de selección [4].
1.7.8. Características de los AGs
Los AGs poseen características que determinan su funcionamiento y su
aplicabilidad en determinados problemas. Estas son [4]:
Búsqueda Ciega. No disponen de ningún conocimiento específico del
problema.
Codificación de Parámetros. Se trabaja con la codificación de un conjunto de
parámetros (o un subconjunto de ellos) y no con los parámetros en sí.
Búsqueda Basada en Población. Se busca desde una población de puntos y
no desde uno solo.
Función Objetivo como Elemento a Optimizar. Se usa una función objetivo o
función de evaluación para definir lo que se desea optimizar, sin requerir más
información derivada o auxiliar.
Operadores Aleatorios. Se hace uso de operadores estocásticos para las
transformaciones, en vez de reglas de transición determinísticas
1.7.9. ¿Como funcionan?
El funcionamiento de un algoritmo genético clásico comienza generando una
población inicial aleatoria de candidatos a ser el óptimo y usa la información
contenida en ella con el fin de producir iterativamente nuevas y “mejores”
poblaciones. Esa “calidad” se entiende en términos de la medida que de su
idoneidad proporciona la función de ajuste [24].
Para ello, en primer lugar (y una vez codificados los miembros de la población
Inicial), se evalúa su idoneidad y se seleccionan los mejores cromosomas.
Algunos de estos individuos seleccionados sufren ciertas alteraciones por la
acción de diferentes operadores genéticos encargados de introducir nuevos
elementos en la población. En los algoritmos genéticos clásicos, dos son los
operadores genéticos a destacar: el cruce y la mutación [24].
Los descendientes obtenidos a través de la selección y la recombinación,
constituyen lo que se conoce como una generación. El proceso se repite
durante generaciones hasta que se alcanza una cierta condición de parada. Es
decir, el algoritmo finaliza cuando se ha ejecutado un número determinado de
iteraciones prefijado de antemano, cuando se ha encontrado el óptimo [24].
1.7.10. ¿Por qué utilizar algoritmos genéticos en la optimización?
La razón del creciente interés por los algoritmos genéticos es que estos son un
método global y robusto de búsqueda de las soluciones de problemas. La
principal ventaja de estas características es el equilibrio alcanzado entre la
eficiencia y eficacia para resolver diferentes y muy complejos problemas de
grandes dimensiones [24].
1.7.11. Convergencia del Algoritmo
Dado que el algoritmo genético opera con una población en cada iteración, se
espera que el método converja de modo que al final del proceso la población
sea muy similar, y en el infinito se reduzca a un sólo individuo [6].
Se ha desarrollado toda una teoría para estudiar la convergencia de estos
algoritmos en el caso de cadenas binarios. Esta teoría se basa principalmente
en considerar que una cadena es un representante de una clase de
equivalencia o esquema, reinterpretando la búsqueda en lugar de entre
cadenas, entre esquemas [6].
1.7.12. ¿Cómo saber si es posible usar el Algoritmo Genético?
No todos los problemas pudieran ser apropiados para la técnica, y se
recomienda en general tomar en cuenta las siguientes características del
mismo antes de intentar usarla [26]:
· Su espacio de búsqueda (sus posibles soluciones) debe estar delimitado
dentro de un cierto rango.
· Debe poderse definir una función de aptitud que indique qué tan buena o mala
es una cierta respuesta.
Las soluciones deben codificarse de una forma que resulte relativamente fácil
de implementar en el computador.
1.7.13. Decisiones para implementar un algoritmo genético
Las decisiones que hay que tomar para implementar un algoritmo genético son:
•
Criterio de codificación. Como se va a almacenar la información en el
cromosoma.
•
Criterio de tratamiento de individuos no factibles. Como se van a
tratar a los individuos que no cumplan las restricciones
•
Criterio de inicialización. Cómo se va a construir la población inicial del
algoritmo genético.
•
Criterio de parada. Determina cuándo el algoritmo ha llegado a una
solución aceptable.
•
Función de adaptación.
•
Operadores genéticos.
•
Criterios de reemplazo.
•
Parámetros de funcionamiento. Determinados parámetros que, sin
poder ser englobados en ninguno de los anteriores, son fundamentales
para el funcionamiento de un algoritmo genético. Es el caso, por
ejemplo, del tamaño de la población, la probabilidad de la aplicación de
los operadores genéticos.
1.7.14. Ventajas de los AGs
•
los algoritmos genéticos son intrínsecamente paralelos, pueden explorar
el espacio de soluciones en múltiples direcciones a la vez [28,29].
•
funcionan particularmente bien resolviendo problemas cuyo espacio de
soluciones potenciales es realmente grande (demasiado vasto para
hacer una búsqueda exhaustiva en un tiempo razonable) [28].
•
se desenvuelven bien en problemas con un paisaje adaptativo complejo,
aquéllos en los que la función de aptitud es discontinua, ruidosa, cambia
con el tiempo, o tiene muchos óptimos locales [28].
•
Otra área en el que destacan los algoritmos genéticos es su habilidad
para manipular muchos parámetros simultáneamente [28,29].
•
Usan operadores probabilísticos, en vez de los típicos operadores
determinísticos de las otras técnicas [26].
•
los AGs no saben nada de los problemas que deben resolver [28].
1.7.15. Desventajas o limitaciones que tienen los AG con respecto a otras
técnicas de búsqueda
Aunque los algoritmos genéticos han demostrado su eficiencia y potencia como
estrategia de resolución de problemas, no son la panacea. Los AGs tienen
ciertas limitaciones; sin embargo, se ha demostrado que todas ellas pueden
superarse y que ninguna de ellas afecta a la validez de la evolución biológica
[28].
•
Pueden tardar mucho en converger, o no converger en absoluto,
dependiendo en cierta medida de los parámetros que se utilicen (tamaño
de la población, número de generaciones, etc.) [26].
•
Pueden converger prematuramente debido a una serie de problemas de
diversa índole [26].
•
El lenguaje utilizado para especificar soluciones candidatas debe ser
robusto; es decir, debe ser capaz de tolerar cambios aleatorios que no
produzcan constantemente errores fatales o resultados sin sentido [28].
•
Si se elige mal una función de aptitud o se define de manera inexacta,
puede que el algoritmo genético sea incapaz de encontrar una solución
al problema, o puede acabar resolviendo el problema equivocado [28].
•
Si el tamaño de la población es demasiado pequeño, puede que el
algoritmo genético no explore suficientemente el espacio de soluciones
para encontrar buenas soluciones consistentemente. Si el ritmo de
cambio genético es demasiado alto o el sistema de selección se escoge
inadecuadamente,
puede
alterarse
el
desarrollo
de
esquemas
beneficiosos y la población puede entrar en catástrofe de errores, al
cambiar demasiado rápido para que la selección llegue a producir
convergencia [28].
•
Una dificultad práctica al usar algoritmos genéticos es conocida como
crowding. En este fenómeno, un individuo que es mas apto que otros
miembros de la población, comienza a reproducirse rápidamente de tal
forma que copias de este individuo, o bien de individuos muy parecidos,
ocupan una fracción importante de la población reduciendo la diversidad
de la población, haciendo la búsqueda más lenta. Eso se puede
solucionar escogiendo un apropiado método de selección [17].
•
Se aconseja no utilizar algoritmos genéticos en problemas resolubles de
manera analítica. Ya que los métodos analíticos tradicionales consumen
mucho menos tiempo y potencia computacional que los [28].
1.7.16. Consideraciones al usar algoritmos genéticos
Tomar cualquier método de optimización para trabajar de una manera óptima
requiere alguna experimentación con sus parámetros de configuración y
selecciones inadecuadas de éstos conducirán a un bajo rendimiento en la
búsqueda. Cuando no se conoce mucho acerca de la superficie de respuesta y
calcular el gradiente es computacionalmente intensivo o numéricamente
inestable muchas personas prefieren usar métodos de optimización como AG,
SA y Simplex los cuales no requieren información del gradiente [16].
Para las aplicaciones donde el cálculo del vector gradiente es numéricamente
preciso y rápido, no se recomienda usar los AG, ya que éstos alcanzarán la
región óptima mucho más lento que los métodos hill-climbing. Otro tipo de
aplicaciones no recomendadas para los AG son aquellas que requieren
encontrar el óptimo global exacto, dada la característica de los AG de ser
buenos encontrando la región óptima global pero enfrentando problemas
algunas veces para localizar el óptimo exacto [16].
1.7.17. Diferencias entre los Métodos Tradicionales y los A.G.
Se puede decir que los Algoritmos Genéticos difieren de los principales
métodos tradicionales de optimización en cuatro puntos fundamentales de los
cuales no han sido mencionados [15]:
1. Los A.G. no utilizan derivadas ni otras propiedades de la función objetivo,
sino únicamente la propia función objetivo.
2. Los A.G. se rigen mediante reglas de transición probabilísticas, no
determinísticas.
1.8. PROGRAMAS EVOLUTIVOS (PEs)
Los programas evolutivos fueron presentados en 1994 por Michalewicz. los
PEs son métodos que incorporan directamente conocimiento específico a los
AGs, puesto que permiten la utilización de estructuras de datos naturales.
Además, de perder un poco de generalización, con la incorporación de
conocimiento específico, también se pierde el paralelismo implícito (basado en
alfabetos de símbolos mínimos). Sin embargo, esta pérdida se compensa con
el procesamiento de información más útil [14].
Los PEs no son restrictivos en cuanto a la representación del problema.
Mientras en los AGs se hace necesaria una codificación de las soluciones del
problema; en los PEs, tal representación se hace de forma directa.
Si se diseñan adecuadamente, los PEs pueden competir en eficiencia y calidad
de las soluciones con métodos específicos (más costosos de implementar) [23].
Los PEs surgieron al resolver problemas de optimización paramétrica en los
que se requería alta precisión [23].
Se distinguen dos grandes grupos de PEs según la naturaleza de los objetos
tratados [23]:
PEs, especializados en optimización paramétrica
PEs, especializados en optimización combinatoria
1.8.1. PEs en optimización paramétrica
Por precisión y eficiencia no es conveniente utilizar AGs en problemas de
optimización paramétrica. De esta manera, se requería un esquema que
permitiese representar a los individuos como arreglos de números reales donde
cada uno de esos números seria un gen [4].
1.8.2. PEs en optimización combinatoria
Existen algunos problemas que se caracterizan por la existencia de soluciones
que se componen secuencialmente, es decir, dando un conjunto de elementos
se pueden obtener diferentes arreglos ordenados de estos , permitiendo una
basta cantidad de posibilidades; los cuales se denominan problemas de
optimización combinatoria [4].
1.8.3. Programas Evolutivos y Algoritmos Genéticos
Desde el punto de vista práctico, se tratarán a los PEs como una variación de
los AGs, compartiendo exactamente su estructura básica, con las siguientes
distinciones [14]:
a. La representación es más natural. Por lo cual, está más cercana al
dominio del problema.
b. Los operadores genéticos son específicos al contexto del problema.
1.9. ESTRATEGIAS EVOLUTIVAS (EEs)
Las Estrategias Evolutivas, desarrolladas en 1964 por Rechenberg, surgieron
inicialmente para resolver problemas de optimización paramétrica; con el paso
del tiempo fueron incorporando procedimientos propios de la computación
evolutiva, con lo que han llegado a convertirse en una disciplina más. Su
principal característica es que utilizan una representación de vectores reales,
una selección determinística y operadores genéticos específicos de cruce y
mutación. [8, 14,25].
Las EEs pueden dividirse en dos tipos: Estrategias Evolutivas Simples y
Estrategias Evolutivas Múltiples.
1.9.1. EEs Simples
En este caso, se hace evolucionar un solo individuo usando únicamente a la
mutación como operador genético. Son relativamente sencillas, y se
denominan también EEs de dos miembros. Debido a que evoluciona un solo
individuo a la vez, no son consideradas estrictamente como métodos evolutivos
[14].
1.9.2. EEs Múltiples
Surgen como respuesta a las debilidades de las EEs simples, las cuales
tienden a converger hacia subóptimos. En las EEs múltiples existen múltiples
individuos (población), y se producen en cada generación varios nuevos
individuos, usando tanto mutación como cruce (también puede usarse cualquier
otro operador [14].
1.9.3. Estrategias Evolutivas y Algoritmos Genéticos
Los puntos de inicio de los AGs y de las EEs son diferentes, puesto que parten
de enfoques distintos. Se puede decir que las EEs son un tipo especial de AGs
o viceversa. A continuación se presentan las diferencias más significativas
entre ambos métodos [14]:
a. Las EEs son más fuertes por lo que los AGs son mucho más generales
b. El operador fundamental en las EEs es la mutación, mientras que en los
AGs es el cruce.
c. Los AGs realizan búsqueda global, mientras que en las EEs se presenta
exactamente lo contrario.
1.10. Programación evolutiva (EP)
La Programación Evolutiva originalmente fue concebida por Lawrence J. Fogel
en 1960, es una estrategia de optimización estocástica similar a los Algoritmos
Genéticos. El libro "Artificial Intelligence Through Simulated Evolution"
publicado en 1966 por Fogel, Owens y Walsh es la publicación clave para las
aplicaciones de la EP [14].
Una maquina de estados finitos es un transductor que puede ser estimulado
por un alfabeto finito de símbolos de entrada que puede responder a un
alfabeto finitos de símbolo de salida, y que posee algún numero finito de
estados internos diferentes. La figura 1.4 muestra una maquina de estados
finitos, donde os números representan los símbolos de entrada, las letras
griegas símbolos de salida, y los caracteres en mayúscula representan los
estados [4].
0/
0/
B
0/
1/
1/
C
A
1/
Figura 1.4. Maquina de estados finitos de tres estados (A,B,C), dos Símbolos de entrada
(0,1) y tres símbolos de salida
En la programación evolutiva, un conjunto de maquinas de estado finitos (son
los individuos) se expone a un ambiente; esto es, a una secuencia de símbolos
observados en un momento dado. Para cada máquina de Estados Finitos, por
cada símbolo de entrada que se le presenta se determina el símbolo de salida
que da y se compara con el del ambiente (también puede compararse su
próximo estado con el que corresponde en el ambiente). Así, la predicción de
cada máquina de Estados Finitos es media respecto al ambiente, como una
función error (error absoluto, error cuadrático, etc.). Después que se hace la
última predicción, un error promedio para cada máquina es calculado para
indicar la aptitud de ella. Las máquinas que presenten el mejor resultado
(mínimo error) se retienen para ser padres en la próxima generación [4].
Funciones de optimización combinatoria y de valores reales en las cuales, la
superficie de optimización es abrupta, presentando muchas soluciones óptimas
locales, son bien tratadas a través de la EP [14].
Para la EP, existe una suposición muy importante que consiste en que la
función de fitness puede caracterizarse en término de las variables, y además
existe una solución óptima (o múltiples óptimos) en función de dichas variables
[14].
El método de EP básico involucra tres pasos (repetidos hasta que se excede el
umbral de iteraciones o hasta que se encuentre una solución adecuada) [14]:
1. Selección de forma aleatoria de una población inicial de posibles
soluciones.
2. Cada solución se replica en una nueva población.
3. A cada solución hija se le calcula y asigna un valor de adaptación.
Debe resaltarse que la EP típicamente no utiliza el cruzamiento como operador
genético.
1.10.1. Algoritmo General
1. Definir la secuencia de símbolos y función objetivo como una matriz de
pago.
2. Inicializar la población de Máquinas de Estado Finito (MEF).
3. Introducir símbolo de entrada a la población de MEF y observar su
salida.
4. Evaluar comparando su salida con la próxima entrada para ver si predijo
bien.
5. Crear nuevos hijos usando mutación
5.1. Cambiar símbolos
5.2 Cambiar estado de transición
5.3 Añadir o eliminar estado
5.4 Cambiar estado inicial
6. Seleccionar los mejores padres
1.10.2. Programación Evolutiva y Algoritmos Genéticos
Existen dos aspectos importantes en los cuales la EP difiere de los AG.
Primero, no existe restricción en la representación. En la EP, la representación
depende del problema [14].
Segundo, la operación mutación simplemente cambia aspectos de la solución
de acuerdo a una distribución estadística, la cual reconoce que menores
variaciones en el comportamiento de los descendientes son altamente
probables, y que variaciones sustanciales son altamente improbables [14].
1.10.3. Programación Evolutiva y las Estrategias Evolutivas
A pesar de haber sido desarrolladas de forma independiente a lo largo de 30
años, estas dos técnicas presentan bastantes similitudes. Ambas técnicas
típicamente operan sobre los valores reales. Se aplican mutaciones gaussianas
multivariadas de media cero a cada padre de una población [14].
Las principales diferencias entre EEs y EP son [14]:
1. Selección: la EP típicamente utiliza una selección estocástica a través de un
torneo. En contraste, las EEs utiliza una abstracción de la evolución a nivel del
comportamiento del individuo.
2. Recombinación: La EP es una abstracción de la evolución al nivel de
poblaciones reproductivas (es decir, especies), por ende no se usan
mecanismos de recombinación debido a que esta no ocurre entre especies. En
contraste, las EEs es una abstracción de la evolución a nivel del
comportamiento individual.
1.11. PROGRAMACIÓN GENÉTICA (PG)
La PG es un método independiente del dominio que generalmente reproduce
poblaciones de programas de computación, con el fin de resolver problemas.
La PG es una extensión de los AGs, en la cual la población genética está
contenida por programas de computación [14].
La PG combina la expresiva representación simbólica de alto nivel usada en los
programas de computación, con la eficiencia de la búsqueda alrededor del
óptimo que realizan los AGs. Un programa de computación que resuelve (o
aproximadamente resuelve) un problema dado, frecuentemente emerge de
este proceso. Esto significa, que no se está en la búsqueda de soluciones a los
problemas planteados, sino en encontrar el mejor procedimiento para
resolverlos. [14].
Los elementos básicos de la PG fueron introducidos por Koza a partir de 1987
en diferentes trabajos de investigación realizados por él y un grupo de
colaboradores. La primera corrida usando PG se hizo en ese mismo año y sus
bases teóricas fueron descritas en detalle en 1988 [14].
La PG establece los siguientes aspectos que son muy importantes [14]:
Una amplia variedad de problemas aparentemente diferentes
provenientes de distintos campos pueden ser combinados, con el fin de
descubrir un programa de computación que produzca algunas salidas
deseadas cuando se presentan ciertos valores particulares en las
entradas.
La PG provee una forma de hacer programación inductiva.
La PG determina automáticamente el tamaño del programa (es decir, el
número total de pasos) y de la misma manera determina la secuencia exacta
de funciones primitivas y terminales que son ejecutadas por el programa.
Específicamente, la PG demuestra que es posible [14]:
Crear de forma automática programas que poseen una única rama
principal,
Crear de forma automática programas con múltiples ramas,
Crear de forma automática programas cuyas ramas se construyen de
acuerdo a la estructura sintáctica restrictiva,
Crear de forma automática programas formados de un programa
principal
y
una
o
más
subrutinas
que
pueden
referenciarse
jerárquicamente unos con otros.
En la PG, la representación de los individuos se hace a través de unas
estructuras de datos jerárquicamente enlazadas que reciben el nombre de
árboles de análisis como se muestra en la figura 2.6 [4].
Las funciones pueden ser operaciones aritméticas, funciones matemáticas,
funciones lógicas, o funciones específicas del dominio [4].
En
la
práctica,
tanto
las
funciones
como
los
símbolos
pueden
implementarse de manera sencilla usando “expresiones-S” de LISP. Por
ejemplo, la siguiente expresión [4]:
(+ 1 2 (IF (> TIME 10) 3 4))
Contiene los átomos: 1, 2, 10, 3, 4, TIME; y las funciones:+, IF, >. El
respectivo arrebol se observa en la figura 1.5.
+
I
2
1
F
3
>
TIME
4
10
Figura 1.5. Ejemplo de un árbol de análisis
1.11.1. Funcionamiento de los operadores genéticos
Tomando como los árboles padres de la figura 1.6. Si se toma la raíz del árbol
como punto de cruce, el hijo 1 contendrá las ramas izquierdas de los padres;
mientras que el hijo 2 las derechas como se observa en la figura 1.7.
(a): (+ (+ 0.234 Z) (- X 0.789)
(b): (*(* Z Y) (+Y 0.314 Z)))
+
*
+
0.23
-
Z
X
(a)
+
*
0.78
Z
Y
Y
*
(b)
0.31
4
Figura 1.6. Árboles padres para el operador de cruce
Z
+
*
Z
+
-
*
0.23
Y
-
Y
Z
0.78
X
*
(a)
(b)
Z
0.31
Figura 1.7. Árboles hijos obtenidos por el cruce
(a): (*(* Z Y) (+ 0.234 Z))
(b): (+ (+ Y (* 0.314 Z)) (- X 0.789))
1.11.2.1. Mutación en PG
El operador de mutación tiene una implementación mas intuitiva, ya que
permite cambiar símbolos terminales por funciones (crear nuevas ramas), o
modificar funciones (cambiar ramas ya existentes, ya sea por otras ramas o por
símbolos terminales). En el árbol de la figura 1.8 se le cambia el símbolo
Terminal 1 por una nueva rama [4].
+
1
I
2
+
F
3
>
4
TIME
4
10
Figura 1.8. Árbol obtenido por mutación de un árbol padre
Los problemas resueltos en la PG involucran regresión simbólica (sistemas de
identificación, descubrimiento empírico, modelado, minería de datos (data
mining), proyecciones), clasificación, control, optimización, resolución de
ecuaciones, juegos, inducción, problemas que exhiben comportamiento
emergente, problemas que involucran coevolución, programación de autómatas
celulares, construcción aleatoria, compresión de imágenes, integración
simbólica y diferenciación, problemas inversos, árboles de decisión de
inducción y muchas otras. Los problemas en PG incluyen muchos problemas
actuales presentes en área como inteligencia artificial, redes neuronales y
máquinas de aprendizaje [14].
Con todo esto se puede concluir que esta técnica posee un atributo muy
importante como la aplicabilidad, ya que produce soluciones satisfactorias a
una amplia variedad de problemas provenientes de diferentes campos [14].
1.11.3. Algoritmo General
Los pasos de este algoritmo consisten en crear una población inicial y entonces
de forma iterativa ejecutar el ciclo generacional principal. La adaptación
(fitness) de cada individuo en la población se determina y las operaciones
genéticas se llevan a cabo en dicho ciclo principal. A diferencia de los otros
métodos de CE en este se debe escoger una operación de alteración de
arquitectura del repertorio de este tipo de funciones disponibles y crear un
nuevo programa hijo para la nueva población.
En este método, los cambios aleatorios pueden generarse cambiado el
operador o alterando el valor de un cierto nodo del árbol, o sustituyendo un
subárbol por otro [25].
1.12. Ambientes de Programación
En la actualidad existe un gran número de ambientes de programación
disponibles en el mercado para experimentar con los algoritmos, pueden
distinguirse 3 clases de ambientes de programación [26]:
1) Sistemas Orientados a las aplicaciones: Son esencialmente "cajas negras"
para el usuario, pues ocultan todos los detalles de implementación. Ejemplos
de este tipo de sistemas son: Evolver (Axcelis, Inc.) y XpertRule GenAsys (Attar
Software).
2) Sistemas Orientados a los algoritmos: Soportan algoritmos genéticos
específicos, y suelen subdividirse en:
· Sistemas de uso específico
· Bibliotecas
En estos sistemas se proporciona el código fuente para que el usuario
(normalmente un programador) pueda incluir el algoritmo genético en sus
propias aplicaciones.
3)
Cajas
de
Herramientas:
Proporcionan
muchas
herramientas
de
programación, algoritmos y operadores genéticos que pueden aplicarse en una
enorme gama de problemas. Normalmente se subdividen en:
· Sistemas Educativos.
· Sistemas de Propósito General.
1.13. Programas autoconfigurables
Es interesante agrupar todos los aspectos y opciones en cuatro categorías,
según la siguiente.
•
Tipo gen
Los aspectos de tipo gen serán aquellos que, como los genes, son
diferentes dentro de un mismo individuo.
•
Tipo individuo
Los aspectos de tipo individuo son aquellos que se mantienen iguales en un
mismo individuo, pero difieren de unos agentes a otros.
•
Tipo isla
Los aspectos de tipo isla son aquellos que son iguales para un subconjunto
de individuos; de más de uno, pero sin llegar al total.
•
Tipo población
Los aspectos de tipo población son los que deben ser iguales para toda la
población.
1.14. Robustez de los Métodos de Optimización y Búsqueda Tradicionales
Existen en la literatura tres tipos principales de métodos de búsqueda a saber:
basados en el cálculo, enumerativos y aleatorios [15].
Los métodos basados en el cálculo se subdividen a su vez en directos e
indirectos. Los métodos indirectos realizan la búsqueda de extremos locales
mediante la resolución de sistemas de ecuaciones no lineales resultantes de
igualar a cero el gradiente de la función a optimizar. Por otro lado, los métodos
directos buscan óptimos locales moviéndose sobre la función en dirección del
gradiente local. Pero estos métodos basados en el cálculo tienen cierta
carencia de robustez, debida principalmente a dos causas. En primer lugar la
búsqueda se realiza localmente, es decir se busca mejorar dentro de un
entorno del estado actual, lo que en muchos casos deriva en un óptimo local.
En segundo lugar, es necesario que las funciones a optimizar sean derivables
[15].
Los métodos enumerativos, como su propio nombre indica, realizan una
búsqueda punto a punto. Es evidente que cuando el espacio de búsqueda es
de un tamaño importante estos métodos carecen de eficiencia [15].
Finalmente, los algoritmos de búsqueda aleatorios poseen igualmente una falta
de eficiencia. De todas formas no se debe confundir los métodos puramente
aleatorios con aquellos que utilizan la aleatoriedad como una técnica en una
búsqueda guiada mediante la explotación de buenas características de algún
punto ya encontrado. De alguna manera, este tipo de técnica es utilizada por
los algoritmos genéticos [15].
Capítulo 2
Controladores PID
2.1. Introducción
Hoy en día, a pesar de la abundancia de sofisticadas herramientas y métodos
avanzados de control, el controlador PID es aún el más ampliamente utilizado
en la industria moderna, controlando más del 95% de los procesos industriales
en lazo cerrado.
Históricamente, ya las primeras estructuras de control usaban las ideas del
control PID. Sin embargo, no fue hasta el trabajo de Minorsky de 1922, sobre
conducción de barcos, que el control PID cobró verdadera importancia teórica.
Los controladores automáticos comparan el valor real de la salida de una
planta con la entrada de referencia (el valor deseado), determina la desviación
y produce una señal de control que reducirá la desviación a cero o a un valor
pequeño. La manera en la cual el controlador produce una señal de control se
denomina acción de control.
2.2. ACCIONES BASICAS DE CONTROL
Para analizar las acciones básicas de control que utilizan los controladores
analógicos industriales primero se hará una clasificación de los controladores
analógicos industriales [32].
2.2.1. Clasificación de los controladores industriales: los controladores
industriales se clasifican, de acuerdo con sus acciones de control como [32]:
1. de dos posiciones o encendido y apagado (on/off)
2. proporcionales
3. integrales
4. proporcionales- integrales
5. proporcionales- derivativos
6. proporcionales- integrales-derivativos
Casi todos los controladores industriales emplean como fuente de energía la
electricidad o fluido despresurizado, tal como el aceite o el aire. Los
controladores también pueden clasificarse, de acuerdo con el tipo de energía
que utilizan en su operación, como neumáticos, hidráulicos o electrónicos. El
tipo de controlador que se use debe decidirse con base en la naturaleza de la
planta y las condiciones operacionales, incluyendo consideraciones tales como
seguridad, costo, disponibilidad, precisión, peso y tamaño [32].
2.2.2. Controlador automático, actuador y sensor (elemento de medición):
el diagrama en bloques de la figura 2.1 es un sistema de control industrial que
consiste en un controlador automático, un actuador, una planta y sensor
(elemento de medición). El controlador detecta la señal de error y la amplifica a
un nivel lo suficientemente alto. La salida de un controlador automático se
alimenta a un actuador, tal como un motor o una válvula neumática, un motor
hidráulico, o un motor eléctrico. El actuador es un dispositivo de potencia que
produce la entrada para la planta de acuerdo con la señal de control, a fin de
que la señal de salida se aproxime a la señal de entrada de referencia.
El sensor, o elemento de medición, es un dispositivo que convierte la variable
de salida en otra variable manejable, tal como un desplazamiento, una presión,
o un voltaje que pueda usarse para comparar la salida con la señal de entrada
de referencia [32].
Controlador automático
Detector de errores
Entrada
De referencia
Salida
+
amplificador
-
Punto
De ajuste
Actuador
Planta
Señal
De error
Sensor
Figura 2.1. Diagrama en bloques de un sistema de control industrial, formado por un
controlador automático, un actuador, una planta y un sensor. (Elemento de medición)
2.2.3. Controladores auto-operados: en la mayor parte de los controladores
automáticos industriales, se usan unidades separadas para el elemento de
medición y el actuador. Sin embargo, en algunos muy sencillos, como los
controladores auto-operados, estos elementos se integran en una unidad. Los
controladores auto-operados utilizan la potencia desarrollada por el elemento
de medición, son muy sencillos y poco costosos [32].
2.2.4. Acción de control de dos posiciones o encendido y apagado
(on/off): en un sistema de control de dos posiciones, el elemento de actuación
sólo tiene dos posiciones fijas que, en muchos casos, son simplemente
encendido y apagado. El control de dos posiciones o de encendido y apagado
es relativamente simple y barato, razón por la cual su uso se ha extendido en
sistemas de control tanto industriales como domestico [32].
Si se supone que la señal de salida del controlador es u(t) y que la señal se
error es e(t). En el control de dos posiciones, la señal u(t) permanece en un
valor ya sea máximo o mínimo, dependiendo de si la señal de error es positiva
o negativa. De este modo,
u(t)= U1 para e(t)>0
(2-1)
u(t)= U2 para e(t)<0
(2-2)
En donde U1 y U2 son constantes. Por lo general, el valor mínimo de U2 es
cero o –U1.
Las figuras 2.2(a) y 2.2(b) muestran los diagramas de bloques para dos
controladores de dos posiciones. El rango en que debe moverse la señal de
error antes de que ocurra la conmutación se denomina brecha diferencial. En la
figura 2.2(b) puede observar una brecha diferencial. Tal brecha provoca que la
salida del controlador u(t) conserve su valor presente hasta que la señal de
error se halla desplazado ligeramente mas allá de cero. En algunos casos, la
brecha diferencial es el resultado de una fricción no intencionada y de un
movimiento perdido; sin embargo, con frecuencia se provoca de manera
intencional para evitar una operación demasiado frecuente del mecanismo de
encendido y apagado [32].
e
+
u
U1
U2
-
Figura 2.2(a). Diagrama de bloques de un controlador
de encendido y apagado
Brecha
e
+
-
u
U1
U2
Figura 2.2 (b). Diagrama de bloques de un controlador de
Encendido y apagado con una brecha diferencial
2.2.5. Acción de control proporcional: El control proporcional se conoce
como control continuo, ya que proporciona una respuesta instantánea del
controlador a los cambios que existan en el error.
Para un controlador con acción proporcional, la relación entre la salida del
controlador u(t) y la señal de error e(t) es :
U(t)= Kpe(t)
(2-3)
O bien, en cantidades transformadas por el método de laplace
U ( s)
= Kp
E ( s)
(2-4)
En donde Kp se considera la ganancia proporcional.
El Controlador proporcional es, en esencia, un amplificador con una ganancia
ajustable. El la figura 2.3 se presenta un diagrama en bloques de este
controlador.
E(s)
+
))
U(s)
))
Kp
-
Figura 2.3. Diagrama en bloques de un controlador
Proporcional.
2.2.6. Acción de control integral: en un controlador con acción de control
integral, el valor de las salida del controlador u(t) se cambia a una razón
proporcional a la señal de error e(t):
du (t )
= K i e(t )
dt
(2-5)
O bien
t
u (t ) = k i ∫ e(t )dt
(2-6)
0
En donde Ki es una constante ajustable. La función de transferencia del
controlador integral es:
U ( s ) ki
=
E (s) s
(2-7)
Si se duplica el valor de e(t), el valor de u(t) varia dos veces mas rápido. Para
un error de cero, el valor de u(t) permanece estacionario. En ocasiones, la
acción de control integral se denomina control de reajuste (reset). En la figura
2.4 se muestra un diagrama en bloques de este controlador [32].
E(s)
))
+
-
Ki
s
U(s)
)
Figura 2.4. Diagrama en bloques de un controlador integral
La función principal de la acción integral es asegurar que la salida de los
procesos acceda con el punto de trabajo en estado estable.
El propósito de la acción integral de control es eliminar el error en estado
estacionario u “Offset”. Lo hace por medio de la integración o acumulación del
error en el tiempo [32].
2.2.7. Acción de control proporcional- integral: la acción de un controlador
proporcional- integral (PI) se define mediante
u (t ) = k p e(t ) +
kp
Ti
t
∫ e(t )dt
(2-8)
0
O la función de transferencia del controlador es

U ( s)
1 

= k p 1 +
E ( s)
 Ti s 
(2-9)
En donde Kp es la ganancia proporcional y Ti se denomina tiempo integral.
Tanto como Kp como Ti son ajustables. El tiempo integral ajusta la acción
integral, mientras que un cambio en el valor de Kp afecta las partes integral y
proporcional de la acción de control. El inverso del tiempo integral Ti se
denomina velocidad de reajuste. La velocidad de reajuste es la cantidad de
veces por minuto que se duplica la parte proporcional de la acción de control.
La velocidad de reajuste se mide en términos de las repeticiones por minuto. La
figura 2.5 muestra un diagrama en bloques de un controlador proporcional más
integral [32].
E(s)
))
+
K p (1 + Ti s )
U(s)
)
Ti s
-
Figura 2.5. Diagrama en bloques de un controlador proporcionalIntegral
Si la señal de error e(t) es una función escalón unitario, como se aprecia en la
figura 2.6 , la salida del controlador u(t) se convierte en lo que se muestra en la
figura 2.7.
Escalón
E(t)
))))
1
0
t
Figura 2.6. Entrada escalón unitario
Acción de
Control PD
u(t)
)
(Solo proporcional)
K
0
t
Figura 2.7. Salida del controlador a un escalón unitario
Muchos controladores industriales tienen solo acción PI. Se puede demostrar
que un control PI es adecuado para todos los procesos donde la dinámica es
esencialmente de primer orden [32].
2.2.8. Acción de control proporcional – derivativa: la acción de un
controlador proporcional- derivativa (PD) se define mediante
u (t ) = k p e(t ) + k p Td
de(t )
dt
(2-10)
Y la función de transferencia es
U ( s)
= k p (1 + Td s )
E (s)
(2-11)
Donde kp es la ganancia proporcional y Td es una constante denominada tiempo
derivativo. Tanto como Kp como Td
son ajustables. La acción de control
derivativa, es en ocasiones denominada control de velocidad, ocurre donde la
magnitud de la salida del controlador es proporcional a la velocidad de cambio
de la señal de error. El tiempo derivativo Td es el intervalo de tiempo durante el
cual la acción de la velocidad hace avanzar el efecto de la acción de control
proporcional. La figura 2.8 muestra un diagrama de bloques de un controlador
proporcional- derivativo. Si la señal de error e(t) es una función rampa unitaria
como se aprecia en la figura 2.9, la salida del controlador u(t) se convierte en la
que se muestra la figura 2.10 [32].
E(s)
+
U(s)
K p (1 + Td s )
))
)))
-
Figura 2.8. Diagrama en bloques de un controlador proporcionalDerivativo.
Rampa
E(t)
)
0
Figura 2.9. Entrada rampa unitaria
t
Acción de
Control PD
u(t)
(Solo proporcional)
0
t
Figura 2.10. Salida del controlador a una entrada rampa.
La acción de control derivativa tiene un carácter de previsión. Sin embargo, es
obvio que una acción de control derivativa nunca prevé una acción que nunca
ha ocurrido [32].
Auque la acción de control derivativa tiene la ventaja de ser de previsión, tiene
las desventajas de que amplifica las señales de ruido y puede provocar un
efecto de saturación en el actuador. La acción de control derivativa no se usa
nunca sola, debido a que solo es eficaz durante periodos transitorios. El
propósito de la acción derivativa es mejorar la estabilidad a lazo cerrado [32].
Cuando una acción de control derivativa se agrega a un controlador
proporcional, permite obtener un controlador de alta sensibilidad, es decir, que
responde a la velocidad del cambio del error y produce una corrección
significativa antes de que la magnitud del error se vuelva demasiado grande.
Aunque el control derivativo no afecta en forma directa al error de estado
estacionario, añade amortiguamiento al sistema y, por tanto, permite un valor
mas grande que la ganancia K, lo cual provoca una mejora en la precisión en
estado estable [32].
2.2.9. Acción de control proporcional- integral- derivativa: es la
combinación de la acción proporcional, integral y derivativa (PID). Esta acción
combinada tiene las ventajas de cada una de las tres acciones de control
individuales. La ecuación del controlador con esta acción combinada se obtiene
mediante [32]:
u (t ) = k p e(t ) +
kp
Ti
t
∫ e(t )dt + k
p
Td
0
de(t )
dt
(2-12)
O la función de transferencia es


U ( s)
1
= k p 1 +
+ Td s 
E ( s)
 Td s

(2-13)
En donde Kp es la ganancia proporcional, Ti es el tiempo integral y Td es el
tiempo derivativo. El diagrama en bloques de un controlador proporcionalintegral- derivativo se muestra en la figura 2.11.
E(s)
))
+
(
K p 1 + Ti s + TiTd s
2
)
U(s)
))
Ti s
-
Figura 2.11. Diagrama de bloques de un controlador proporcional- integral
Derivativo.
La estructura de un controlador PID es simple, aunque su simpleza es también
su debilidad, dado que limita el rango de plantas donde pueden controlar en
forma satisfactoria (existe un grupo de plantas inestables que no pueden
estabilizadas con ningún miembro de la familia PID.
Con un control proporcional, es necesario que exista error para tener una
acción de control distinta de cero. Con acción integral, un error pequeño
positivo siempre dará una acción de control creciente, y si fuera negativo la
señal de control será decreciente. Este razonamiento sencillo muestra que el
error en régimen permanente será siempre cero.
Los controladores tienen varias funciones importantes: ellos proveen
realimentación, ellos tiene la habilidad para eliminar el estado estable de
compensación por la acción integral, ellos pueden anticipar el futuro a través de
la acción derivativa y ellos pueden contrastar con un actuador de saturación.
Los controladores PID son
también suficientes para muchos problemas de
control, particularmente donde hay dinámicas de procesos favorables y
modestos requerimientos de desempeño.
El controlador PID es el algoritmo de control más común. Este es
implementado de muchas formas diferentes. El algoritmo PID puede ser
aproximado de muchos ángulos diferentes. Este también puede ser
considerado como un dispositivo que puede operar con pocas reglas de
manejo, pero este también puede aproximarse analíticamente.
2.3. Efectos de las acciones de control integral y derivativo sobre el
desempeño de un sistema.
2.3.1. Acción de control integral: en el control proporcional de una planta,
cuya función de transferencia no posee un integrador 1/s, hay un error en
estado estable, o desplazamiento (offset), en la respuesta para una entrada
escalón. Tal offset se elimina si se incluye la acción de control integral en el
controlador [32].
En el control integral de una planta, la señal de control, que es la señal de
salida a partir del controlador, es, en todo momento el área bajo la curva de la
señal de error hasta tal momento. La señal de control u(t) tiene un valor
diferente de cero cuando la señal de error e(t) es cero, como se aprecia en la
figura 2.12. Esto es posible en el caso del controlador proporcional, dado que
una señal de control diferente de cero requiere de una señal de error diferente
de cero. (Una señal de error diferente de cero en estado estable significa que
hay una equivalencia). La figura 2.13 muestra la curva e(t) contra t y la curva
u(t) correspondiente contra t cuando el controlador es de tipo proporcional [32].
E(t)
))
u(t)
0
0
t
t
Figura 2.12. Graficas de las curvas e(t) y u(t) que muestran una señal de control
Diferente de cero cuando la señal de error es cero (control integral)
E(t)
U(t)
0
t
0
t
Figura 2.13. Graficas de las curvas e(t) y u(t) que muestran una señal de control
De cero cuando la señal de error es cero (control proporcional).
La acción de control integral, aunque elimina el offset o el error en estado
estable, puede conducir a una respuesta oscilatoria de amplitud decreciente
lenta o incluso, de amplitud creciente, y ambos casos, por lo general, se
consideran inconvenientes [32].
2.3.2. Acción de control derivativa: cuando una acción de control derivativa
se agrega a un controlador proporcional, aporta un medio de obtener un
controlador con alta sensibilidad. Una ventaja de usar una acción de control
derivativa es que responde a la velocidad del cambio del error y produce una
corrección significativa antes de que la magnitud del error se vuelva demasiado
grande.
El control derivativo prevé el error, inicia una acción correctiva
oportuna y tiende a aumentar la estabilidad del sistema [32].
Aunque el control derivativo no afecta en forma directa el error en estado
estable, añade amortiguamiento al sistema y, por tanto, permite el uso de un
valor más grande que la ganancia, lo cual provoca una mejora en la precisión
de estado estable [32].
Debido a que el control derivativo opera sobre la velocidad de cambio de error,
y no sobre el mismo, este modo nunca se usa solo. Siempre se emplea junta
con una acción de control proporcional o proporcional- integral.
2.4. Sintonización de controladores PID
Debido a que casi todos los controladores PID se ajustan en el sitio, en la
literatura se han propuesto muchos tipos diferentes de sintonización delicada y
fina de los controladores PID en el sitio. Asimismo, se han desarrollado
métodos automáticos de sintonización y algunos de los controladores PID
poseen capacidad de sintonización en línea.
2.4.1. Control PID de plantas: la figura 2.14 muestra el control PID de una
planta. Si se puede obtener un modelo matemático de la planta, es posible
aplicar diversas técnicas de diseño con el fin de determinar los parámetros del
controlador que cumpla las especificaciones en estado transitorio y en estado
estable del sistema en lazo cerrado. Sin embargo, si la planta es tan
complicada que no es fácil obtener su modelo matemático, tampoco es posible
un enfoque analítico para el diseño de un controlador PID. En este caso se
debe recurrir a los enfoques experimentales para la sintonización de los
controladores PID [32].
+
-


1
k p 1 +
+ Td s 
 Ti s

Planta
Figura 2.14. Control PID de una planta.
El proceso de seleccionar los parámetros del controlador que cumplan con las
especificaciones de desempeño se conoce como sintonización del controlador.
Ziegler y Nichols sugirieron mas reglas para sintonizar los controladores PID.
(Lo cual significa establecer valores Kp, Ti Y Td) con base en las respuestas
escalón experimentales o basadas en el valor de Kp que se produce en la
estabilidad marginal cuando solo se usa la acción de control proporcional [32].
2.4.2. Reglas de Ziegler – Nichols para sintonizar controladores PID:
Ziegler y Nichols propusieron unas reglas para determinar los valores de la
ganancia proporcional Kp, del tiempo integral y Ti del tiempo derivativo Td, con
base en las características de respuesta transitoria de una planta específica.
Tal determinación de los parámetros de los controladores PID o de la
sintonización de los controladores PID la realizan los ingenieros en el sitio
mediante experimentos sobre la planta [32].
Existen dos métodos denominados reglas de sintonización de Ziegler- Nichols.
En ambos se pretende obtener un 25% de sobrepaso máximo en la respuesta
escalón.
2.4.2.1. Primer método. Método basado en la curva de reacción: en el
primer método, la respuesta de la planta a una entrada escalón unitario se
obtiene de manera experimental, como se observa en la figura 2.15. Si la
planta no contiene integradores ni polos dominantes complejos conjugados, la
curva de respuesta escalón unitario puede tener forma de S, como se observa
en la figura 2.16. (Si la respuesta no exhibe una curva con forma de S, este
método no es pertinente). Tales curvas de respuesta escalón se generan
experimentalmente o a partir de una simulación dinámica de la planta [32, 33].
1
planta
aA
u(t)
e(t)
Figura 2.15. Respuesta escalón unitario de una planta.
C(t)
K
Línea tangente el
Punto de inflexión
0
t
L
T
Figura 2.16. Curva de respuesta con forma de S
La curva con forma de S se caracteriza por dos parámetros: el tiempo de
retardo L y la constante de tiempo T. el tiempo de retardo y la constante de
tiempo se determinan dibujando una recta tangente en el punto de inflexión de
la curva con forma de S y determinando las intersecciones de esta tangente
con el eje del tiempo y la línea c(t)= K, como se aprecia en la figura 2.16.
Ziegler y Nichols sugirieron establecer los valores de Kp, Ti y Td de acuerdo con
la formula que aparece en la tabla 1.
Tipo de
controlador
Kp
Ti
Td
P
0
T
L
PI
PID
0.9
T
L
L
0.3
0
1. 2
T
L
2L
0.5 L
Tabla 1. Regla de sintonización Ziegler- Nichols basada en la respuesta escalón de la planta
(primer método)
2.4.2.2. Segundo método. Método de oscilación: en el segundo método,
primero se establece Ti =
y Td = 0. Usando solo acción de control
proporcional como se muestra en la figura 2.17, se incrementa Kp de cero a un
valor crítico Kcr en donde la salida exhiba primero oscilaciones sostenidas. Si la
salida no presenta oscilaciones sostenidas para cualquier valor que pueda
tomar Kp, no se aplica este método. Por tanto, la ganancia crítica Kcr y el
periodo Pcr correspondiente se determinan experimentalmente como se
observa en la figura 2.18. Ziegler y Nichols sugirieron que se establecieran los
valores de los parámetros Kp, Ti y Td de acuerdo con la formula que aparece
en la tabla 2.
R(t)
U(t)
K
+-
Planta
C(t)
Figura 2.17. Sistema en lazo cerrado con controlador Proporcional.
c(t)
Pc
0
t
Figura 2.18. Oscilación sostenida con un
Periodo Pcr
Tipo de
Kp
Ti
Td
controlador
0
P
0.5 K cr
PI
0.45 K cr
1
Pcr
1. 2
0
PIDS
0.6 K cr
0.5 Pcr
0.125 Pcr
Tabla 2. Regla de sintonización Ziegler- Nichols basada en la ganancia critica Kcr y en el
periodo critico Pcr (segundo método)
Sin embargo, si la planta tiene un integrador, en algunos casos estas reglas no
son pertinentes.
2.4.3. Método de asignación de polos
La asignación de polos es un método de diseño de controladores cuando se
quiere que el desempeño del sistema a lazo cerrado cumpla con determinadas
especificaciones de diseño [31].
Considere el lazo nominal de la Figura 2.19 con las siguientes funciones
transferencias:
c( s ) =
p( s )
L( s )
G0 (s) =
B0 ( s)
A0 ( s)
(2-14)
U(s)
)
R(s)
)
PID
Y(s)
G(s)
Figura 2.19. Diagrama en bloques estructura de controlador PID
Con P(s), L(s), B0(s) y A0(s) polinomios de grados np, nl , n - 1 y n
respectivamente (se asume que el modelo nominal de la planta es
estrictamente propio).Considere que el polinomio a lazo cerrado deseado está
dado por Alc [31].
Ejemplo:
Sea el modelo nominal de una planta dada y un controlador de la forma:
G0 (s ) =
1
s + 3s + 2
c( s ) =
(2-15)
2
P( s)
L(s )
Se puede ver que Alc = A0(s)L(s) + B0(s)P(s) = (s2 + 3s + 2)(l1s + l0) + (p1s +
p0). Si se igualan los coeficientes se obtiene
el siguiente sistema de
ecuaciones:
1
3

2

0
0
1
3
2
0
0
2
0
0
0
0

1
 l0  1
 l  3
 1 = 
 p0  3
   
 p1  1
(2-16)
Se puede verificar que la matriz anterior es no-singular, por lo que el sistema
tendrá solución
única: l1 = 1, l0 = 0, p1 = 1 y p0 = 1. Así el polinomio
característico es alcanzado para un controlador dado por la siguiente función
transferencia [31]:
C (s) =
s +1
s
(2-17)
En el ejemplo anterior se vio como la asignación de polos a lazo cerrado
depende de la no-singularidad de una matriz particular. Como la idea es
generalizar el resultado anterior, primero se necesitan algunos resultados
matemáticos [31].
2.4.3.1. Teorema 1 (Teorema de Sylvester). Considere los polinomios
A(s) = ansn+ = an-1sn-1 + . . . + = a1s + a0,
(2-18)
B(s) = bnsn + bn-1sn-1 + . . . + = b1s + b0,
(2-19)
Junto con la matriz
(2-20)
Se dice que A(s) y B(s) son coprimos, es decir que no tienen factores en
común o raíces, si y solo si det(Me)
0 [31].
Con este resultado se puede ahora generalizar lo visto en el Ejemplo, para
mostrar que la asignación de polos es generalmente posible, cuando se
cumplen algunos requerimientos mínimos [31].
2.4.3.2. Lema 1 (Asignación de Polos SISO). Considere un lazo de
realimentación de un grado de libertad con un controlador C(s) y un modelo
nominal G0(s) dado por (2-14). Suponiendo que A0(s) y B0(s) son coprimos y
que sus grados son n y n -1, respectivamente. Sea Alc un polinomio arbitrario
de grado nc = 2n -1. Entonces existen polinomios P(s) y L(s), con grados np = nl
= n -1 tal que [31]:
A0(s)L(s) + B0(s)P(s) = Alc(s)
(2-21)
Nota 1. El lema anterior establece bajo qué condiciones existe solución para el
problema de asignación de polos, asumiendo un controlador bipropio, Cuando
se requiere un controlador estrictamente propio, el grado de P(s) y L(s) debería
ser np = n -1 y nl = n, respectivamente. De esta forma, para poder estar en
condiciones de elegir un polinomio a lazo cerrado Alc(s) arbitrario, su grado
debería ser igual a 2n [31].
Nota 2. No están permitidas las cancelaciones del estilo polo-cero inestables.
Cualquier cancelación entre el controlador y la planta aparecerá como factor en
A0(s) L(s) y también en B0(s) P(s). Para que la condición del lema 1 pueda ser
satisfecha, el mismo factor deberá aparecer en Alc(s), pero el polinomio
característico a lazo cerrado se debe elegir estable, por lo que ese factor
común deberá ser estable. Sólo de esta forma, el lazo cerrado nominal es
garantía de ser internamente estable, es decir, las cuatro funciones de
sensibilidad serán estables [31].
Considerando un lazo de control de un grado de libertad con controladores PI
de la siguiente forma [31]:
C PI ( s ) = k p +
ki
s
(2-22)
Y la forma del controlador PID
C PID ( s) = k p +
ki
k s
+ d
s τ Ds + 1
(2-23)
Para referencias futuras se nota la siguiente representación alternativa de un
controlador PID:
2.4.3.3. Lema 2. Cualquier controlador de la forma: es idéntico al controlador
PID de (3-23) con los siguientes valores de los parámetros [31]:
n2 s 2 + n1s + n0
C (s ) =
d 2 s 2 + d1s
(2-24)
kp =
n1d1 + n0d 2
d12
(2-25)
ki =
n0
d1
(2-26)
n2d12 − n1d1d 2 + n0 d 22
kd =
d13
τD =
d2
d1
(2-27)
(2-28)
Demostración. Desarrollando en fracciones simples (2-23) y comparándola
con (2-24) se obtienen dichos coeficientes.
Si se asume que la planta puede ser (por lo menos, aproximadamente)
modelada por un modelo de segundo orden, entonces se puede utilizar
asignación de polos para sintonizar un controlador PID [31].
2.5. Modificaciones de los esquemas de control PID
Considerando el sistema de control PID básico de la figura 2.20, en el cual el
sistema esta sujeto a perturbaciones y ruido. La figura 2.21 es un diagrama de
bloques modificado del mismo sistema. En un sistema de control PID básico,
como el de la figura 2.21, si la entrada de referencia es una función escalón,
debido a la presencia del término derivativo en la acción de control, la variable
manipulada u(t) contendrá una función impulso. En un controlador PID real, en
lugar del término derivativo puro Tds se emplea
Td
1 + γTd s
donde el valor de
(2-29)
está en algún punto alrededor de 0.1. Por tanto, cuando la
entrada de referencia es una función escalón, la variable manipulada u(t) no
contendrá una función impulso, sino que implicará una función de pulso aguda.
Tal fenómeno se denomina reacción del punto de ajuste.
Perturbación
D(s)
Salida
(s)
Entrada de
Referencia R(s)
+
-
Controlador
PID
+
+
Planta
Gp(s)
Ruido
N(s)
Señal observada B(s)
+
+
Figura 2.20. Sistema de un controlador PID
D(s)
1
R(s)
E(s)
+
-
+
1
Ti s
+
+
Kp
+
U(s)
+
Y(s)
Gp(s)
B(s)
Td
+
+
Figura23.21. Diagrama en bloques equivalente.
2.5.1. Control PI-D para evitar el fenómeno de reacción del punto de ajuste,
se pretende operar la acción derivativa solo en la trayectoria de realimentación,
a fin de que la diferenciación ocurra únicamente la señal de realimentación y no
en la señal de referencia. El esquema de control ordenado de esta forma se
denomina PI-D. La figura 2.22 muestra un sistema con un control PI-D.
D(s)
1
R(s)
E(s)
+
-
1
Ti s
+
+
-
Kp
U(s)
+
+
Y(s)
Gp(s)
B(s)
Td
B(s)
+
N(s)
+
Figura 2.22. Sistema de un controlador PI-D.
2.5.2. Control I-PD: se considera nuevamente el caso en que la entrada de
referencia es una función escalón. Tanto el control PID como el control PI-D
implican una función escalón en la señal manipulada. En muchas ocasiones, tal
cambio escalón en la señal manipulada no es conveniente. Por tanto, puede
convenir mover la acción proporcional y la acción derivativa a la trayectoria de
realimentación a fin de que estas acciones solo afecten la señal de
realimentación. La figura 2.23 muestra el esquema de control, que se denomina
control I-PD.
D(s)
R(s)
+
U(s)
1
Ti s
-
+
Kp
-
+
+
Y(s)
Gp(s)
B(s)
1
Tds
B(s)
+
N(s)
+
Figura 2.23. Sistema con un controlador I-PD.
2.6. Integral windup
Ocurre cuando un regulador con acción integral es conectado a un proceso con
un actuador de saturación.
Aunque muchos aspectos de un sistema de control pueden ser comprendidos
basados en la teoría lineal, se deben considerar algunos efectos no lineales.
Todos los actuadores tienen limitaciones: un motor tiene limitación de
velocidad, una válvula no puede estar mas que completamente abierta o
completamente cerrada, etc. Cuando un sistema de control opera por encima
del rango de las condiciones de operación, esto puede ocurrir que la variable
de control alcance los límites del actuador. Cuando esto sucede el lazo de
realimentación es efectivamente abierto porque el actuador quedará como esta
limitación independientemente de la salida del proceso. Si es usada la acción
integral, el error continuará para ser integrado. Esto significa que el término
integral puede volverse muy grande o, coloquialmente, (el error “winds up”, en
idioma ingles). Entonces esto requiere que cambie la señal de error por un
largo período antes de que se normalice. Las consecuencias es que cualquier
controlador con acción integral puede dar una gran transición cuando se satura
el actuador.
El fenómeno windup es ilustrado en la figura 2.24. La cual muestra el control de
un proceso con un controlador PI. La transición del punto inicial de trabajo es
tan grande que el actuador se satura en el límite alto. El integrador aumenta
inicialmente porque el error es positivo, y alcanza su valor más grande al
timepo de t=10 cuando el error pasa por el cero. La salida queda saturada en
este punto debido al grande valor de la integral, y esto no permite el límite de
saturación hasta que el error haya sido negativo para un largo tiempo para
permitir que la parte integral descienda a un pequeño nivel. El efecto neto es un
gran exceso, el cual es claramente notable en la figura 2.24. La integral windup
puede ocurrir en conexión con un gran cambio del punto de trabajo o puede ser
causado por grandes perturbaciones o malfuncionamiento de equipos.
1
0
0
4
0
4
0.1
0
-0.1
1
0.
0
0
Figura 2.24. Ilustración de integral windup.
4
Capítulo 3
Discretización de sistemas y linealización de
sistemas no lineales
3.1. Linealización de sistemas no lineales
El proceso de linealizar sistemas no lineales es importante, porque linealizar
ecuaciones no lineales permite aplicar numerosos métodos de análisis lineal
que proporcionen información acerca del comportamiento de los sistemas no
lineales [32].
La mayoría de los componentes y actuadotes que se encuentran en sistemas
físicos tienen características no lineales. En la práctica estas no linealidades
pueden ser moderadas o pueden aparecer en ciertas regiones de operación. Al
modelar estos dispositivos como sistemas lineales se pueden obtener
resultados analíticos muy exactos sobre un intervalo amplio de condiciones de
operación. Sin embargo, existe un sinnúmero de dispositivos físicos que
poseen características fuertemente no lineales. Para estos dispositivos, un
modelo no linealizado solo es valido en un intervalo de condiciones muy
limitado, y a menudo sólo en el punto de operación en el que se realizó la
linealización. Cuando un sistema no lineal es linealizado en un punto de
operación, el modelo no lineal puede contener elementos variantes con el
tiempo [33].
Como los sistemas no lineales son normalmente difíciles de analizar y diseñar,
es deseable realizar una linealización cuando la situación lo justifique [33].
La capacidad de representar un sistema no lineal y/o variante con el tiempo
mediante ecuaciones de estado es una ventaja que distingue al enfoque de
variables de estado sobre el método de la función de transferencia, ya que este
ultimo solo esta definido estrictamente para sistemas lineales invariantes con
el tiempo. Como ejemplo, considere las siguientes ecuaciones no lineales [33]:
dx1 (t )
= x1 (t ) + x22 (t )
dt
(3-1)
dx2 (t )
= x1 (t ) + r (t )
dt
(3-2)
Con la expansión en series de Taylor de las ecuaciones de estado no lineales
alrededor de un punto o trayectoria de operación nominal se puede llegar a un
proceso de linealización. Todos los términos de la serie de Taylor de orden
superior a uno se descartan, y resulta la aproximación lineal de las ecuaciones
de estado no lineales en el punto nominal [33].
Un sistema no lineal se representa mediante las ecuaciones de estado de
forma matricial:
dx(t )
= f [x (t ), r (t )]
dt
(3-3)
Donde x(t ) representa el vector de estado de n × 1 , r (t ) es el vector de entrada
de p × 1 y f [x(t ), r (t )] denota un vector función de n × 1 . En general, f es una
función del vector de estado y del vector de entrada [33].
La trayectoria de operación nominal se denota pro x0(t), la cual corresponde a
la entrada nominal r0(t) y algunos estados iniciales fijos. Al expandir la ecuación
de estado no lineal de la ecuación 3-3 en una serie de Taylor alrededor de x(t)
= x0(t) y descartando los términos de orden superior se obtiene [33]:
∂f i ( x, r )
∂x j
j =1
En donde i = 1,2,…, n
∂f i ( x, r )
∂rj
j =1
p
n
x&i (t ) = fi ( x0 , r0 ) + ∑
( x j − x0 j ) + ∑
x 0 , r0
(rj − r0 j )
x 0 , r0
(3-4)
Sea:
∆xi = xi − xoi
(3-5)
y
∆rj = r j − r0 j
(3-6)
Entonces
∆x&i = x&i − x&0i
(3-7)
Ya que
x&0i = f i ( x0 , r0 )
(3-8)
La ecuación (3-2) se escribe como:
∂f i ( x, r )
∂x j
j =1
∂f i ( x, r )
∂rj
j =1
p
n
∆x&i = ∑
∆x& j + ∑
x 0 , r0
∆r j
(3-9)
x 0 , r0
La ecuación (3-7) se pude escribir en la forma matricial:
∆x& = A * ∆x + B * ∆r
(3-10)
En donde:
 ∂f1
 ∂x
 1
 ∂f 2
A* =  ∂x
1
 .
 ∂f
 n
 ∂x1
∂f1
∂x2
∂f 2
∂x2
.
∂f n
∂x2
∂f1 
∂xn 

∂f 2 
...
∂xn 
... . 
∂f n 

...
∂xn 
...
(3-11)
 ∂f1
 ∂r
 1
 ∂f 2
B* =  ∂r
1
 .
 ∂f
 n
 ∂r1
∂f1
∂r2
∂f 2
∂r2
.
∂f n
∂r2
∂f1 
∂rn 

∂f 2 
...
∂rn 
... . 
∂f n 

...
∂rn 
...
(3-12)
3.2. Discretización de sistemas en tiempo continuo.
En este capitulo se estudian algunos de los procedimientos para obtener
sistemas en tiempo discreto que se comporten aproximadamente igual que un
sistema en tiempo continuo. Esta operación suele denominarse discretización
[34].
Existen tres técnicas fundamentales, cada una de ellas con distintos métodos o
variantes.
(I)
transformaciones s = f (Z )
Consiste en sustituir en G (s) la variable s por una función racional en Z . Son
sencillas y flexibles de aplicar, en casi cualquier situación. Pueden justificarse
de distintas maneras [34]:
a) como una aproximación a ala derivación
b) como una aproximación a la integración
c) como una aproximación racional de Z = eTs s
I.1 puede verse como una derivación adelantada, no causal (forward rule) o
como una integración rectangular retrasada
i.2 puede verse como una derivación (back rule) o como una integración
rectangular
I.3 puede verse como una integración trapezoidal. Es la transformación bilineal
con c = 2 / Ts . Se conoce también como la regla de Tustin.
I.4 es la transformación bilineal con prewarping
Propiedades y comentarios
•
todas conservan la ganancia estática, ya que f (1) = 0
•
los polos y ceros en s se transforman mediante aproximaciones
racionales de Z = eTs s . Si G (s) está en forma ceros-polos resulta cómodo
transformarlos individualmente; pero debe ajustarse además una
ganancia.
•
Estudiando la transformación de los polos se demuestra que todas,
salvo I.1 conserva la estabilidad: si G (s) es estable, también lo será
G (Z )
3.2.1. Implementación digital de controladores analógicos
Existen situaciones bajo las cuales el controlador analógico ya está diseñado,
pero la disponibilidad y las ventajas del control digital sugieren que el
controlador sea implementado por elementos digitales [33].
3.2.1.1. Implementación digital del controlador PID
El controlador digital en el dominio del tiempo continuo se describe como:
Gc (s ) = K p + K D s +
Ki
s
(3-13)
El componente proporcional K p se implementa en forma digital mediante una
ganancia constante K p . La constante K p no puede realizarse con resolución
infinita [33].
La derivada con respecto al tiempo de una función f (t ) en t = kT se puede
aproximar mediante la regla de la diferencia hacia atrás, empleando los
valores de f (t ) medidos en t = kT y (k − 1)T ; esto es:
df (t )
1
= ( f (kT ) − f [(k − 1)T ])
dt t = kT T
(3-14)
Para encontrar la función de transferencia Z de la operación derivada descrita
anteriormente, se toma la transformada Z en ambos lados de la ecuación 3-14.
Se tiene:
 df (t )
 1
Z −1
 = 1 − Z −1 F ( Z ) =
Ζ
F (Z )
TZ
 dt t = kT  T
(
)
(3-15)
Por lo que la función de transferencia Z del diferenciador digital es:
Gc ( z ) = K D
Z −1
TZ
(3-16)
Donde K D es la constante proporcional de la derivada del controlador. Al
sustituir Z por eTs en la ecuación 3-16, se puede mostrar que el periodo de
muestreo T se aproxima a cero, GD (z ) se aproxima a K D s , que es la función de
transferencia de la derivada del controlador analógico. La selección del periodo
de muestreo es muy importante, el valor de T debe ser lo suficientemente
pequeño, para la aproximación digital sea exacta [33].
Hay un número de reglas de integración numérica que pueden emplearse para
aproximar de forma digital al controlador integral K I / s . Los tres métodos
básicos de integración numérica del área de una función son: integración
trapezoidal, integración rectangular hacia delante e integración rectangular
hacia atrás [33].
3.2.1.1.1. Integración trapezoidal
La regla de integración trapezoidal aproxima el área bajo la función f (t )
mediante una serie de trapezoides, como se muestra en la figura 3.1. Sea el
integral de f (t ) evaluado en t = kT designado como u (kT ) . Entonces:
u (kT ) = u[(k − 1)T ] +
T
{ f (kT ) + f [(k − 1)T ]}
2
(3-17)
Figura 3.1. Regla de integración trapezoidal
Donde el área bajo f (t ) para (k − 1)T ≤ t < kT se aproxima mediante el área del
trapezoide en el intervalo. Tomando la transformada Z en ambos miembros de
la ecuación 3-17, se tiene la función de transferencia del integrador digital como
[33]:
Gi ( z ) = K i
U ( z ) K iT ( Z + 1)
=
f ( z)
2(Z − 1)
(3-18)
Donde K i es la constante proporcional.
(K
Gc( z ) =
p
+ TK i / 2 + K D / T )Z 2 + (TK I / 2 − K p − 2 K D / T )Z + K D / T
Z ( Z − 1)
(3-19)
3.2.1.1.2. Integración rectangular hacia delante
Para la integración rectángula hacia delante, se aproxima el área bajo
f (t ) mediante rectángulos como se muestra en la figura 3.2. La integral de
f (t ) en t = kT se aproxima por:
u (kT ) = u[(k − 1)T ] + Tf (kT )
(3-20)
Figura 3.2. Regla de integración rectangular hacia delante.
Al tomar la transformada Z en ambos miembros de la ecuación 3-20, la función
de transferencia del integrador digital empleando la regla rectangular hacia
delante es [33]:
Gi ( z ) = K i
Gc( z ) =
U ( z)
K TZ
= i
f ( z ) (Z − 1)
(3-21)
(K P + K D / T + TK I )Z 2 − (K p + 2 K D / T )Z + K D / T
Z ( Z − 1)
(3-22)
3.2.1.1.3. Integración rectangular hacia atrás
Para integración rectangular hacia atrás, la regla de aproximación digital se
ilustra en la figura 3.3. La integral de f (t ) en t = kT se aproxima mediante [33]:
u (kT ) = u[(k − 1)T ] + Tf [(k − 1)T ]
(3-23)
Figura 3.3. Regla de integración rectangular hacia atrás
La función de transferencia z del integrador digital empleando la regla de
integración rectangular hacia atrás es:
Gi ( z ) = K i
Gc( z ) =
U ( z)
K iT
=
f ( z ) (Z − 1)
(K
p
(3-24)
+ K D / T )Z 2 + (TK I − K p − 2 K D / T )Z + K D / T
(3-25)
Z (Z − 1)
Cuando K I = 0 , la función de transferencia del controlador PID digital es:
Gc( z ) =
(K
p
+ K D / T )Z − K D / T
Z
(3-26)
3.2.2. Índices de desempeño
Un sistema de control optimo, cuyo diseño optima (minimiza o maximiza), el
valor de la función seleccionada como el índice de desempeño, que difiere del
ideal pero es mas alcanzable en presencia de restricciones físicas [35].
Al diseñar un sistema de control optimo se necesita encontrar una regla para
determinar la decisión de control presente, sujeta aciertas restricciones, para
minimizar alguna medida de desviación de un comportamiento ideal. Dicha
medida es provista, generalmente, por el índice de desempeño seleccionado
que es una función cuyo valor se considera una indicación de qué tanto se
parece el desempeño del sistema real al desempeño deseado. En la mayoría
de los casos, el comportamiento del sistema se hace óptimo al escoger el
vector de control U (K ) de tal forma que el índice de desempeño se minimice (o
maximice,
dependiendo
de la
naturaleza
del
índice
de
desempeño
seleccionado). La selección de un índice de desempeño apropiado es
importante porque, en alto grado, determina la naturaleza del sistema de
control óptimo resultante. Esto es, que el sistema resultante sea lineal, no
lineal, estacionario, o variante en el tiempo, dependerá de la forma del índice
de desempeño. Los requisitos de diseño por lo regular no sólo incluyen
especificaciones de desempeño, sino también, para asegurará que sea
físicamente realizable, restringen la forma del control a utilizar [35].
El proceso de optimización no solo debe proveer leyes de control óptimo y
configuraciones de los parámetros, sino también debe predecir la degradación
en el desempeño debido a cualquier desvío del valor mínimo (o máximo) de la
función del índice de desempeño que resulta cuando se aplican leyes de
control no optimas [35].
El escoger el índice de desempeño mas apropiado para un problema dado es
muy difícil, especialmente en sistemas complejos. El uso de la teoría de
optimación en el diseño de sistemas ha sido problemático debido al conflicto
entre factibilidad analítica y la utilidad práctica
al seleccionar el índice de
desempeño. Es preferible que el criterio para un control óptimo
se origine
desde un punto de vista práctico y no matemático. En general, sin embargo, la
selección de un índice de desempeño implica un compromiso entre una
evaluación útil del desempeño del sistema y un problema matemático [35].
3.2.2.1. Formulación de los problemas de optimización
El problema de optimización de un sistema de control se puede formular si se
tiene la siguiente información [35]:
1.
ecuaciones del sistema
2.
clase de vectores de control permitidos
3.
restricciones en el problema
4.
índice de desempeño
5.
parámetros del sistema
La solución de un problema de control óptimo consiste en determinar el vector
de control óptimo U (K ) dentro de la clase de vectores de control permitidos.
Este vector U (K ) depende de [35]:
1.
la naturaleza del índice de desempeño
2.
la naturaleza de las restricciones
3.
el estado inicial o salida inicial
4.
el estado deseado o salida deseada
Excepto en algunos casos, el problema de control óptimo puede ser muy
complicado para obtener una solución analítica por lo que se tiene que obtener
una solución por computador [35].
3.2.2.2. Puntos concernientes a la existencia de las soluciones a los
problemas de control óptimo.
Se ha establecido que el problema de control óptimo, dada una condición
inicial X (0) , consiste en encontrar un vector de control permitido U (K ) que
transfiera al estado a la región deseada del espacio de estados y para el cual el
índice de desempeño se minimiza [35].
Es importante señalar que a veces una combinación particular de planta,
estado deseado, índice de desempeño y restricciones, hacen que un control
óptimo sea imposible. Esto es cuestión de requerir un desempeño más allá de
las capacidades físicas del sistema [35].
Las cuestiones que tienen que ver con la existencia de un vector de control
óptimo son importantes, ya que sirven para informar al diseñador si un control
óptimo es posible o no para un sistema determinado y dado un conjunto de
restricciones. Dos de las ecuaciones más importantes son aquellas acerca de
la controlabilidad y observabilidad.
3.2.2.3. Notas acerca de los sistemas de control óptimo.
El sistema cuyo desempeño minimiza (o maximiza) el índice de desempeño
seleccionado es, por definición, óptimo. Es evidente que le índice de
desempeño, en realidad, determina la configuración del sistema. Es muy
importante apuntar que un sistema de control que es óptimo bajo un índice de
desempeño es, en general, no óptimo bajo otro índice de desempeño [35].
Además que la realización en hardware de una ley de control óptimo en
particular puede ser algo difícil y costosa. Así, puede ser inútil demasiados
recursos para implantar un controlador óptimo que es el mejor en solamente
algún sentido individual limitado. A menudo, un sistema de control se diseña
para realizar una sola tarea específica completamente de antemano. En vez de
esto, se diseña para realizar una tarea seleccionada en forma aleatoria a partir
de un repertorio de tareas posibles. Entonces, en los sistemas prácticos, puede
ser mejor buscar una ley de control óptimo aproximada que no este atada
rígidamente a un solo índice de desempeño [35].
Capítulo 4
Estado del arte de los algoritmos evolutivos y su
uso para controladores PID
4.1. Aplicaciones de la programación genética.
1. Las Aplicaciones de la ciencia de los algoritmos en el descubrimiento de
conocimiento son una promesa y área pertinente de investigación. Está
ofreciendo nuevas posibilidades y beneficios en las aplicaciones del mundo
real, ayudando a entender mecanismos buenos de nuestros propios métodos
de adquisición de conocimiento. La programación genética como algoritmo de
aprendizaje posee ciertas ventajas que lo hacen provechoso para prever y
profundizar los datos financieros. Especialmente la serie de tiempo de soporte
tiene un número grande de propiedades específicas que juntos hacen un albor
de predicción excepcional. Una aplicación en especial es los resultados de usar
la programación genética para prever el retorno de Mercado de Calcetín
egipcio. Los resultados de los experimentos demuestran la capacidad de
programación genética para predecir los resultados exactos, comparable a los
algoritmos de aprendizaje de máquina tradicionales es decir, las redes
neuronales. [30]
El prever datos financieros es una de las actividades fundamentales en el uso
de programación genética (GP) ya que esta área es muy poco explorada. Es un
acercamiento prometedor debido a su efectividad investigando los espacios
muy grandes y la habilidad de realizar la búsqueda global para el mejor modelo
de la previsión. La programación genética puede aplicarse a prever la Bolsa de
Valores egipcia (ESE) que es uno de los más viejos en el mundo y comprende
de dos intercambios, respectivamente la Alejandría y El Cairo bolsa de valores.
Se evalúa la conducta del ESE acción retorno usando el CASE30 índice diario
que mide el retorno en la inversión del cambio en el valor de las acciones. El
índice rastrea la actuación de las 30 acciones más activas y medidas el retorno
en la inversión del cambio en el valor de las acciones. ESE provee la serie de
retorno de tiempo que tiene un gran número de propiedades específicas que
juntos hacen una tarea de predicción inusual. El proceso se comporta como un
proceso inesperado y cambia el sistema en el sentido que el proceso
fundamental es tiempo variable y volatilidad en el cambio de serie de tiempo
como el proveer movimientos en el mercado. Estas razones causan los
grandes problemas para los más tradicionales y populares algoritmos
estadísticos para las predicciones de serie de tiempo como el ARCO y GARCH
y los cuales requieren una serie de tiempo estacionaria con entradas normales
e independientes del residuo. Los predictores de la programación genética
como un método adaptable alternativo para prever el ESE proveen el retorno
desde el funcionamiento una búsqueda en que los operadores genéticos
pueden modificar muchas combinaciones diferentes de variables - usando las
varias funciones diferentes disponibles en la serie de la función.
Si las
variables originales no tienen mucha fuerza predictiva por si mismas, el sistema
puede crear eficientemente “la derivada de las variables” con gran potencia de
predicción, por establecimiento de la serie de la función de las variables
originales. Finalmente, ofrece una gama amplia de posibilidades de variaciones
y modificaciones del algoritmo que puede llevar a mejorar la actuación global
de la aplicación. La técnica de GP se usa para el descubrimiento automático y
la evaluación de prever la actuación del modelo y su previsibilidad para el
mercado accionario egipcio dada la enorme cantidad de ruido en mercados
financieros representados. Sobre todo, los datos de retorno de mercado
accionarios egipcios tienen un número grande de propiedades específicas que
juntos hacen al modelo de la previsión generalizado inusual [30].
Koza presenta el primer estudio usando la GP para la predicción de los
siguientes valores de la ecuación logística. Los resultados de esta predicción a
corto plazo eran los posibleblemente buenos. Oakley y Mulloy et al., estudiaron
el uso de la GP en la predicción de serie de tiempo caótica. Mahfoud y Mani
presentaron un nuevo algoritmo genético basado en el sistema y la aplicación
a la tarea de predecir la actuación futura de acciones individuales; Neely et al.
Aplico
el GP a intercambio exterior pronosticando
y reportando algunos
cambios. Li y Tsang presentaron un GP basado en un sistema que toma unas
reglas técnicas muy conocidas y las adapta para proveer los problemas de la
predicción. Rafat presento el uso de GP en la inducción de regla técnica de
comercio para el mercado accionario egipcio [30].
2. Los algoritmos evolutivos han tenido gran utilidad en diferentes áreas de la
ciencia en proyectos como la clasificación del olor de la mezcla usando una red
neuronal fuzzy y su optimización a través del algoritmo genético. Se usan las
redes neuronal fuzzy ampliamente ya que estas se pueden adaptar
directamente a la medida del error, este modelo neuronal crea un dilema del
hecho de que ambas las redes largas y pequeñas tienen un número de
desventajas. Si el tamaño de la red es demasiado pequeño, la rata del error
tiende a aumentar debido a que la red no podría aproximarse lo suficiente a la
relación funcional entre la entrada y el rendimiento designado. Mientras, si el
tamaño es demasiado grande, la red no podría generalizar los datos de la
entrada antes de que sean ilustrados. El óptimo desarrollo de una red neuronal
fuzzy es entonces aplicado como el clasificador del modelo en el sistema de
reconocimiento
de
olor
artificial.
La
actuación
de
su
habilidad
del
reconocimiento se explora y compara con la propagación inversa del sistema
neuronal convencional y la neurona fuzzy imperfecta. Se muestra claramente
que el promedio de la rata de reconocimiento del sistema neuronal fuzzy GAperfeccionado tiene la capacidad de reconocimiento más alta comparada con el
de otro sistema neuronal [30].
El sistema de discriminación de olor Artificial ha sido desarrollado usando una
partícula de resonadores de cuarzo como sensor, y analizando los datos de la
medida a través de
varias redes neuronales como un modelo de
reconocimiento [30].
Los resultados experimentales muestran que la proporción del reconocimiento
del sistema altamente desarrollado si se usa para discriminar solo el basado en
olor, sin embargo, su reconocimiento disminuyó considerablemente cuando un
olor de la mezcla tiene que ser determinado. Investigadores han propuesto un
acceso para incorporar un elemento de la lógica fuzzy en la red neuronal para
mejorar su desempeño, sobre todo para acelerar la velocidad de convergencia
y la proporción del reconocimiento más alta. La ventaja de usar el sistema
fuzzy-neuronal es que puede adaptarse distribuidamente con la fuzzy causado
directamente por la medida de error, y las topologías de la red resultantes
también pueden realizar el principio de la inferencia fuzzy a través del análisis
los valores de los pesos de conexión. Las redes neuronales fuzzy son muy
conocidas y ampliamente usadas y se han hecho algunos trabajos para obtener
la estructura de la red apropiada y los pesos iniciales para reducir su tiempo de
entrenamiento. Sin embargo, este tipo de sistema neuronal tiene un
inconveniente debido a sus conexiones neuronales grandes. La optimización
de la arquitectura de la red es entonces hecho usando el método de
optimización discreto. En este acercamiento, cada estructura de la red se le
asigna un valor de la evaluación (por ejemplo, una estimación del error de la
generalización), formulando así una tarea de optimización discreta. Una
variedad de métodos puede aplicarse a esta clase de los problemas, sin
embargo, los algoritmos genéticos, han ganado una metodología fuerte como la
aproximación evolutiva por ambos, quitando las conexiones débiles entre las
neuronas o quitando las neuronas que realizan las activaciones débiles [30].
3. Las mejoras En el Algoritmo Genético Híbrido para la convergencia rápida
En el proceso de aclarar la solución multi-objetivo de Pareto, la búsqueda de la
habilidad
en el área total y las características de la convergencia puede
reforzarse por auto-sintonización de probabilidad del error en la evolución de
las descendencias. Comparando con el algoritmo genético híbrido típico, la
convergencia de optimización más eficaz puede obtenerse usando el algoritmo
genético híbrido mejorado en la solución para el problema de optimización.
Simulación numérica basada en algunos ejemplos típicos demuestra la
efectividad del método propuesto [30].
En la aplicación de la ingeniería práctica, las preguntas de optimización de
multi-objetivo aparecen a menudo. Las funciones objetivas diferentes no
pueden compararse e incluso el conflicto mutuo. En el proceso de optimización,
necesita considerar la optimización de simultaneidad con muchas funciones
objetivas. El algoritmo genético es un tipo de aritmética de optimización total
que se desarrolló en los años recientes. Se usa ampliamente en todos los tipos
de preguntas de optimización complicadas debido a su paralelo oculto,
aleatoriamente y altamente robusto. En la actualidad, los métodos de algoritmo
genético con la optimización de multi-objetivo de aplicación están divididos en
tres principales tipos: el multi-objetivo converge solo objetivo, el no método de
Pareto y el método de Pareto. El método tradicional que convierte solo el
objetivo del multi-objetivo es un simple diseño del método aritmético, con una
alta eficiencia computacional, pero sólo puede resolver una solución de
disponibilidad. El no método de Pareto puede resolver muchas soluciones de
disponibilidad, pero estas soluciones normalmente enfocan en el puerto de la
interfase de disponibilidad. El método de optimización basado en el método de
Pareto es que muchos valores objetivos tomados directamente para función
adaptable. Comparando la relación de dominio de valor objetivo, la lista efectiva
se fundamentará. El tipo de método se puede resolver computado, pero el
método es complicado en la aritmética, baja eficiencia en las dimensiones de
las descendencias más grandes [30].
4. extracción de las reglas fuzzy IF-THEN el Extracto de las Reglas
para
diagnostico medico usando algoritmos genéticos
El procedimiento sugerido mira a la cara la solución óptima que crece de la
primera parte de las reglas IF-THEN variantes que usan el cruce genético,
mutación y funcionamientos de la selección. La eficiencia del algoritmo
genético es ilustrada por un ejemplo de diagnóstico de enfermedad del corazón
de disemia.
En muchas áreas de medicina hay grandes colecciones de los datos
experimentales y es necesario que se transfieran estos datos en la forma
conveniente para la toma de la decisión. Varios métodos muy conocidos
normalmente se usan para el proceso de los datos usan las estadísticas
matemáticas, la regresión analítica, etc. Pero la toma de decisión en la
medicina no es típicamente estadística o matemática. Así que es importante
presentar los resultados de datos que se procesan de la forma más fácilmente
entendible para la toma de decisiones sin fundamento matemático especial.
La regla fuzzy IF-THEN permite hacer fácilmente entendible y bien el resultado
del análisis de los datos interpretados. Durante el desarrollo de los sistemas
especializados fuzzy se supone que la base de conocimiento inicial se genera
por un experto del área de medicina. Esto por qué la calidad de éstos los
sistemas dependen de la habilidad de un medico experto [30].
5. Un Algoritmo Evolutivo multicapas
Para Diseñar las Redes Neuronales Artificiales
Una representación genérica basada en la memoria neuronal multicapas en el
aprendizaje genético fue descrita para desarrollar una población de redes
neuronales. El plan cuenta con la información incluida en las neuronas en más
de un asociado. El objetivo es aprender ambos la topología de la red neuronal
óptima y los pesos óptimos según las múltiples capas del algoritmo genético.
Además usa un algoritmo de macroaprendizaje para entrenar el lenguaje, la
idea también es incluir un algoritmo de microaprendizaje sin supervisión. La
meta es adaptar parámetros de la estrategia potenciales del macroalgoritmo
genético para aumentar la actuación de la generalización considerablemente
[30].
Una red neuronal es una adaptación y un sistema no lineal inspirado para el
estudio
del
cerebro
para
resolver
problemas
matemáticamente
o
computationalmente. La red neuronal, como el algoritmo Genético, representa
otro modelo de aprendizaje con un toque diferente. De hecho, una red neuronal
multicapas (MLP) es un gráfico orientado de células. Cada célula computa una
actividad de las actividades de los vecinos conectadas a sus entradas. Cada
célula propaga su actividad a los vecinos conectados a su rendimiento. El
hecho computational por una célula es aplicado a la función de transferencia fi


de la forma y i = f i  ∑ wij x j − θ i  . Donde, yi es el rendimiento del nodo i, xj los


jth entradas al nodo, wij es el peso de conexión entre i et j de los nodos es el
umbral del nodo. Normalmente, fi es no lineal, sigmoideo, o función gaussiana.
Los pesos representan información contenida en la red neuronal [30].
Como mecanismo de entrenamiento, un algoritmo reiterativo de pendiente en
descenso se diseño para minimizar la diferencia paso a paso entre el vector del
rendimiento real de la red y el vector del rendimiento deseado, como
repropagación (BP) en sus versiones, como QuickProp y RPROP, se usa
ampliamente como mecanismo entrenador. Aunque este método se usa el
exitosamente en muchos campos, sobre todo para el reconocimiento del
modelo, debido a su habilidad de aprendizaje, encuentra ciertas dificultades en
la práctica, como: la convergencia tiende a ser sumamente lenta, la
convergencia al mínimo global no es ninguna garantía, mientras se esta
aprendiendo las constantes deben suponerse el heurísticamente.
• Los algoritmos incrementales: como la Correlación de la Cascada,
Ornamentando y el Perceptron de la Cascada, y otros, son basados en la
agregación de capas ocultas a la red neuronal de tamaño mínimo hasta que
alcance la precisión requerida.
• Los algoritmos de decrementales: el método de recorte es basado en tomar
una red grande y capas ocultas de las neuronas y entonces eliminar una a una
las capas ocultas de la neurona, para obtener la red más pequeña. Otros
acercamientos pusieron algunos de los pesos para poner a cero.
Diseñar la arquitectura y los parámetros correctos para el algoritmo de
aprendizaje es una tarea tediosa por modelar una Red Neuronal Artificial
óptima (ANN) con la actuación de la mejor generalización. A menudo, va
surgiendo la necesidad de los sistemas inteligentes híbridos dominantes ANNs
que limitan y se vuelve un camino óptimo para conseguir el sistema neuronal
[30].
En recientes investigaciones, la evolución se ha introducido en ANNs en
términos generales en niveles: los pesos de conexión, las arquitecturas, y el
principio de aprendizaje. Entonces, el privilegio de hacer un algoritmo genético
hibrido y la red neuronal parecida incrementa la actuación del funcionamiento
de la red. La complejidad del acercamiento es construir un algoritmo Neurogenético que involucra principios de la evolución y activaciones del cerebro.
Actualmente, esto es un producto de una causa adaptable basada en el
aprendizaje genético sin supervisión para perfeccionar la topología y pesos de
la red neuronal multicapas.
Por consiguiente, el modelo del razonamiento adjunta dos innovaciones de la
evolución básica: la auto-organización y la auto-adaptación de parámetros de la
estrategia. La auto-organización apunta la arquitectura de memoria óptima
trazada por el aprendizaje genético, y la auto-adaptación apunta los parámetros
de estrategia de aprendizaje óptimos necesitados para proporcionar la
interconexión mínima y sus pesos óptimos.
La memoria del modelo representa una población de redes neuronales
abstractas. Esta memoria se estructura teóricamente como una topología de
red y 2 cortes.
4.2. Computación evolutiva y controladores PID
1. Experimento de programación evolutiva basado en le control de alta
precisión
Los esquemas convencionales de control lineal a menudo no proporcionan
posicionamiento preciso del control de un objeto bajo la influencia de fricción,
zona muerta,
saturación,
etc. Se propone un esquema de control de alta
precisión para posicionar un sistema punto a punto, llamada la tabla X-Y,
incluso bajo las influencias por encima de las conocidas. El esquema propuesto
está compuesto de un precompensador fuzzy y un controlador PD. El
precompensador fuzzy es empleado para mejorar la actuación del controlador
PD. Sus métodos fuzzy se obtienen de la programación evolutiva experimental
(EEP), no de un experto. La efectividad del esquema es demostrada por los
experimentos en la tabla X-Y, con un error del posicionamiento de menos de 1
m y estableciendo tiempo de menos de 0.15 s dónde la velocidad máxima y la
aceleración es 0,25 m/s y 1.7 m/s ', respectivamente [30].
La tabla X-Y se usa ampliamente en el mecanizando de procesos que
involucran tornos, fresado de las máquinas, y SMD (montaje de la superficie del
dispositivo) montadores en el campo industrial. Desde entonces la tabla X-Y
puede considerarse como un sistema lineal en un sentido global, la tabla X-Y
puede controlarse bastante bien por los esquemas de control lineal
convencional como el controlador PID (Proporcional-integro - Derivativo). Sin
embargo, considerando situaciones dónde se necesita el control de alta
presión, los esquemas del control convencionales no pueden son convenientes
debido a la no linealidad no uniforme, incluso la fricción, la repercusión
negativa, la histéresis, la saturación del actuador. etc., en el sistema mecánico.
La saturación del actuador afecta la actuación transitoria principalmente, y las
secciones pueden causar un error del sostenimiento del estado o un ciclo del
límite cerca de la posición del objeto en el control lineal convencional del
sistema del posicionamiento. Hoy, cuando se usan las máquinas para los
funcionamientos precisos en el campo industrial, firmemente y es requerido el
control preciso de la tabla X-Y. Es más, el control de precisión y las
especificaciones de dominio de la tabla X-Y varían dependiendo de su
aplicación [30].
En general, hay dos enfoques para lograr el control de alta precisión de la tabla
X-Y. Primero, nosotros podemos diseñar y podemos hacer una tabla X-Y más
precisa que no tiene la no linealidad anteriormente expresada. Por ejemplo,
nosotros podemos reemplazar los rumbos de la pelota usados en la tabla X-Y
con los rumbos aéreos quitar las condiciones de fricción. Este acercamiento,
sin embargo, puede llevar a un costo alto para el Sistema global. El otro
acercamiento es diseñar una ley de control más compleja que puede lograr los
objetivos de control de alta precisión. Recientemente, las mejoras rápidas en el
microprocesador le han hecho posible para comprenderla ley del
control
complejo. Así si se puede desarrollar un algoritmo de control apropiado, el
segundo método será una aproximación más conveniente para el control de
posición de alta precisión sin aumentar el costo [30].
Se han propuesto recientemente varias técnicas de control de posición para el
control de alta precisión. Yang y Tomizuka proponen el uso de un controlador
de anchura de pulso adaptable para el posicionamiento preciso, basado en el
método de control de la anchura del pulso, en el cual se aplica un pulso según
el error actual. En este esquema, el controlador aplica un pulso y espera hasta
que pare el sistema, y entonces calcula la anchura del pulso para la próxima
entrada de control. Así, podría necesitarse demasiado tiempo hasta que el
sistema llegue al punto de la meta. Tung
propuso un esquema de
compensación de fricción basado en un control repetitivo que de los sistemas
típicamente aplicados sujetado a las referencias periódicas y/o entradas de
perturbación. Kim propuso un método de diseño a un compensador de fricción
basado en un algoritmo evolutivo. Los dos esquemas de control anteriores, sin
embargo, se tratan de sólo control de baja velocidad. El esquema adaptable fue
también por algunos investigadores que tenían el periodo de transito
relativamente largo. Así estos esquemas no podrían ser convenientes para
sistemas que deben establecerse rápidamente [30].
Por otro lado, los métodos de control basados en fuzzy son útiles cuando las
formulaciones matemáticas precisas no son factibles. Sin embargo, los
controladores lógicos fuzzy a menudo dan un resultado de rendimiento superior
a los métodos del control convencionales. Kim] propuso una estructura de
control de “dos capas” que consiste en un precompensador fuzzy y un
controlador PD para los sistemas con zona muerta.
2. control robusto por Algoritmos Genéticos y el criterio integro de Minimización
Los controladores PID han encontrado las aplicaciones industriales extensas
durante varias décadas. Recientemente H2/H mixto los problemas de control
óptimos han recibido mucha atención desde punto de vista de plan teórico.
H2/H mixto los acercamientos de plan de control son útiles para la actuación
robusta para los sistemas bajo la perturbación del parámetro y la perturbación
incierta. Un procedimiento del plan propone poner a punto los parámetros de
controladores PID
para lograr H2/H mixto de una forma óptima. Desde el
criterio que debe perfeccionarse
de tipo íntegro, y las características se
imponen por el control robusto, el problema a ser resuelto es un favorable
problema de minimización de no linealidad que pueden existir. Los algoritmos
genéticos son técnicas de
búsqueda paralelas, globales que emulan a los
operadores genéticos naturales. Porque un algoritmo genético evalúa muchos
puntos simultáneamente en el parámetro especie, más probablemente es
converger a la solución global [30]
La complejidad creciente de los sistemas del control moderno ha dado énfasis
a la idea de aplicar nuevos acercamientos para resolver los problemas de
ingeniería de control diferentes. El control PID es el tipo de control mas
ampliamente usado en la industria y el ingeniero del plan debe poner a punto
los parámetros del PID permitidos a las necesidades específicas. Deben
conocerse tres factores de la sintonización del controlador PID: la planta, el tipo
de control y el criterio de la actuación de la realimentación de control. Dentro
del armazón del
la teoría clásica, uno de los factores muy importante de
sintonización de los controladores PID, el criterio de la actuación, puede ser
dividido en dos grupos principales: el tiempo crítico de dominio y criterio de
dominio de frecuencia. Respecto a esto, el diseñador reúne simultáneamente
de la forma mas breve menos difícil satisfacer el limite de diseño. Empezando
desde éstos, en el control PID los siguientes métodos de sintonización se usan
típicamente: Ziegler y Nichols (1942), Chien, Hrones y Reswick (1952), Clarke
(1984), Kaya y Scheib (1988), Aström y Hägglund (1984, 1988), [1], [3], [4], [5],
[6], [7]. Lo anterior arriba expresado se caracteriza por una desventaja obvia: el
diseñador debe intentar satisfacer más o menos los límites del diseño. La
habilidad de obtener un cierto régimen estacionario y transeúnte para el
sistema retroalimentado impone una opción particular de la estructura y
parámetros del control, en concordancia con el logro de la actuación. Los
índices de la actuación se especifican por el diseño. Porque en la mayoría de
los casos el logro de une ejecución de buena calidad lleva a un índice a las
soluciones contradictorias y el ensayo “en acoplamiento” la respuesta del
sistema dentro de los límites de los tipos como: un: cero error del mantener el
estado, bueno y tiempo propasado, tiempo del levantamiento, respuesta de
tiempo de sistema, ganancia y margen de la fase etc. la única manera parece
estar por fuera del ensayo y métodos de síntesis de error. El error del sistema
es el signo que probablemente mas influye en las actuaciones mencionadas.
Como la duración de error también debe jugar un papel, se encuentra que el
más significante de éstos es el criterio de la actuación que tiene la forma
íntegra. H2/H mixto. Los acercamientos de diseño de control son útiles para la
actuación robusta para los sistemas bajo la perturbación del parámetro y la
perturbación
incierta.
Sin
embargo,
la
entrada
de
retroalimentación
convencional de control optimo de H2/H mixto. Son muy complicados y difíciles
de implementar para las aplicaciones de prácticas industriales. Los algoritmos
genéticos son la optimización y algoritmos de aprendizaje de máquina
inicialmente inspirados en los procesos de selección natural y las genéticas
evolutivas. El algoritmo propuesto ponteará el hueco entre el control teórico
mixto óptimo H2/H óptimo y el control clásico industrial PID. El diseño de
control H2/H propuesto consiste en encontrar un controlador PID internamente
estabilizado que minimiza un H2 el índice de la actuación íntegra sujeto a una
desigualdad reprimida en la norma de H. de la función de traslado de
retroalimentación. Eso significa que resolviendo los dos problemas: la exigencia
de robustez de estabilidad y la exigencia de atenuación de perturbación
externa. El problema puede interpretarse como un problema de actuación
óptima sujeto a una exigencia de estabilidad robusta (o la exigencia de
atenuación de perturbación externa). El procedimiento de diseño se propuso
para fuera de la línea PID que sintoniza para lograr el H2/H mixto. La actuación
óptima sigue los pasos [30]:
1. el primer paso basó en el criterio de Routh-Hurwitz, el dominio de estabilidad
de tres parámetros de PID, espacio que garantiza la estabilidad de la
retroalimentación especifica.
2. el segundo paso, el subconjunto del dominio de estabilidad en los
parámetros de espacio PID que corresponde para estar en 1 se especifica para
que la exigencia de H. anteriormente expresado.
3. en el tercer paso los problemas de diseño se vuelven, en el dominio del
subconjunto de H. la exigencia de dominio mencionado en paso 2, cómo
obtener un punto que minimiza el H2 que rastrea la actuación. Esto es
generalmente considerado favorable en el problema de minimización de la no
linealidad que puede existir.
Los algoritmos genéticos son técnicas de la búsqueda paralelas, globales que
emulan a los operadores genéticos naturales. Porque un GA evalúa muchos
puntos simultáneamente en el parámetro espacie, más probablemente es
converger a la solución global. No necesita asumir que el espacio de la
búsqueda es diferenciable o continuo, y también conserva la iteración de varios
tiempos en cada dato recibido. La optimización global puede lograrse
por
varios operadores genéticos, ej., reproducción, mutación, y cruce. El AGs es
más conveniente la iteración del diseño de control PID H2/H por las razones
siguientes: el espacio de la búsqueda es grande; la superficie de la actuación
no requiere una asunción del diferenciador con respecto a los cambios en los
parámetros de PID (por consiguiente, los algoritmos escrutadores que
dependen de la existencia de los derivado son ineficaces); las condiciones de
las destrucciones probables probablemente serán destruidas bajo un operador
genético, por eso la ventaja a menudo la convergencia es más rápida [30].
4.3. Aplicación en procesos de control
4.3.1. Sintonización de controladores
Anteriormente los AEs eran utilizados como una alternativa para sintonizar
controladores proporciona-integral derivativo (PID). Oliveira uso un AG
estándar para determinar las estimaciones iniciales para los valores de los
parámetros de los PID. Ellos aplicaron su metodología para una variedad de
clases de sistemas lineales invariantes en el tiempo (LTI), abarcando fase
mínima, fase no mínima y sistemas inestables.
En una investigación
independiente, Porter y Jones propusieron un AE base como una simple
técnica, genérica, método digital de sintonización de controladores PID. Wang y
Kwok cubrieron
un AE usando inversión y preselección ‘micro-operadores’
para sintonización de controladores PID. Más recientemente, Vlachos aplico
un AE para la sintonización de controladores descentralizados proporcional –
integral (PI) para procesos multivariables. Onnen aplico un AEs para la
determinación de una secuencia optima de control basado en el modelo de
control predictivo (MBPC). Particular atención fue prestada a MBPC para
sistemas no lineales con entradas forzadas. Código genético especializado y
operadores fueron desarrollados con el objetivo de prevenir soluciones
absurdas de generación. El esquema resultante se aplico a un fermentador
retroalimentado simulado, con reporte de resultados favorables (comparado
con el tradicional método arma limite) para grandes horizontes de control.
El principal problema de la optimización basada en sintonización de
controladores es la selección de la función objetivo apropiada.
4.3.2. Diseño de estructura de control
Muchas aplicaciones de EA simplemente optimizaron los parámetros de las
estructuras existentes. En orden para recolección el pleno potencial de los AE,
algunos investigadores han experimentado con la manipulación de estructuras
del control. Los PG se han utilizado para la síntesis automática de los valores
de parámetros y la topología de controladores. El sistema ha reproducido las
patentes existentes según informes recibidos (para controladores PI y PID) y
redescubrió el viejo (un controlador que hace uso de la segunda derivada del
error entre la señal de referencia y la señal de salida).
4.3.3. Aplicaciones en línea
Las aplicaciones en línea presentan un particular desafío para los AE. Las
aplicaciones exitosas en este campo han sido algo limitadas para la fecha. Es
importante que una señal de control apropiada se provea a cada instante de
muestreo. Las acciones del mejor individuo actual del AE pueden infligir
consecuencias severas en el proceso. Esto en inaceptable en la mayoría de las
aplicaciones, sobre todo en el caso de una seguridad o misión critica del
sistema.
Dado que esto no sea posible para aplicar los valores representados por
cualquier individuo en una población para el sistema, está claro que la
evaluación de la completa, evolución, la población no puede desempeñarse en
el proceso real. La población puede ser evaluada usando un modelo del
proceso, asumiendo que existe un modelo semejante, o el desempeño puede
ser inferido de la respuesta del sistema para una señal de entrada actual. La
inferencia también puede usarse como un mecanismo para reducir los
requisitos del proceso haciendo un número grande de evaluaciones y entonces
computando las estimaciones para el resto de la población basada en estos
resultados. En aplicaciones en tiempo real hay un límite importante de tiempo
para el cual una optimización puede ser ejecutada entre puntos de decisión.
Dado el poder de la informática actual, es improbable que un EA ejecutara a la
convergencia dentro del límite de tiempo de muestreo de una aplicación del
control típica. Ahora, solo un cierto número de generaciones puede ser
evolucionado. Para sistemas con grandes tiempos de muestreo, un aceptable
nivel de convergencia puede ser bien realizado. En el caso de un controlador,
una aceptable señal de control debe proporcionarse a cada punto de control. Si
el AE es evolucionado para solo unas pocas generaciones entonces el
desempeño de la población puede aun ser pobre. Una complicación adicional
es que el sistema, visto de la perspectiva de la optimización, está cambiando
con el tiempo. Así, la señal de control evolucionada en un instante puede
volverse totalmente inapropiado en la siguiente.
Los AEs pueden oponerse con vistas de tiempo variable, pero una reciente
tendencia de los AEs puede ser requerida. En esta instancia, la población
inicial puede ser difundida con previas soluciones buenas. Note que esto no
garantiza la convergencia rápida e incluso puede llevar a la convergencia
prematura.
Hay tres amplias aproximaciones para el uso de AEs para control en línea:
•
Utilizar un modelo del proceso
•
Utilizar el proceso directamente
•
Permitir sintonización restringida de un controlador existente.
4.4. Cómo pueden los AG ser de beneficio para el control?
4.4.1. Estabilidad
Muchos exponentes de algoritmos evolutivos citan a la naturaleza genérica del
género como la ventaja del control. Los AG pueden aplicarse a un ancho rango
de problemas sin modificación significante. Sin embargo, el AG a veces se
percibe como una herramienta que proporcionará los resultados mediocres en
un problema de dominio cuando se compara con los métodos de dominio
específico. También debe notarse que los parámetros del AG (el tamaño de la
población, la probabilidad de la mutación, y etc.) requieran sintonización para
los beneficios extendidos de los algoritmos a ser realizado.
Las aproximaciones evolutivas han demostrado particularmente exitoso en
problemas que son difíciles formalizar matemáticamente, y qué por
consiguiente no conduce al análisis. Esto incluye sistemas que son altamente
no lineales, que son estocásticos, y son comprendidos pobremente (el control
del cual representa una magia negra). Problemas que involucran las clases
mencionadas de proceso tienden a ser difíciles de resolver satisfactoriamente
usando los métodos convencionales. La falta de confianza AG en el dominio
heurístico específico lo hace un contendedor fuerte para la aplicación en esta
área.
Muy pequeño información a priori
se requiere, pero esto puede
incorporarse si así se desea.
Un singular problema de ingeniería de control puede contener una mezcla de
formato d variables de decisión. Esto puede proveer un problema significativo
para técnicas de optimización convencionales que requieren variables de un
solo tipo matemático o unidad científica. Desde que los AGs operan sobre .una
codificación del conjunto de parámetro, diversos tipos de variables pueden
representarse (y manipulaos subsecuentemente) dentro de una sola solución.
El AG es una búsqueda robusta y un método de optimización. Es capaz de
hacer frente a paisajes con funciones de costo perjudiciales, exhibiendo así
propiedades como multimodalidad, discontinuidad, tiempo de variación,
aleatoriedad, y ruido.
Cada uno de estas propiedades puede causar
dificultades severas al tradicional método de búsqueda tradicional, además de
la falta de amenidad a una solución analítica.
Además, una búsqueda de AG
se dirige y, luego, representa la mas grande eficacia potencialmente que una
búsqueda totalmente al azar o búsqueda enumerativa
Un camino particularmente prometedor de aplicación de los AG es el problema
multiobjetivo.
Muchas aplicaciones del
mundo real encajaron en esta
categoría, incluso más problemas de diseño de ingeniería.
El potencial del AG sólo está empezando a ser efectuado en esta arena. Los
AGs también son capaces de soportar múltiplos, contrastando, soluciones a un
problema simultáneamente. Esto le proporciona un grado mayor de opción y
flexibilidad al diseñador.
Para problemas que son bien comprendidos, que son aproximadamente
lineales, y para los cuales se confía que existen soluciones, el AG es
improbable para producir resultados competitivos. Si un problema puede
resolverse analíticamente con un nivel aceptable de asunciones entonces esa
aproximación es probablemente mejor.
Si así una solución no puede ser
encontrada, y otras técnicas de problemas específicas están en fase de inicio,
entonces el uso de AG podría demostrar ser muy aprovechable y que vale la
pena.
Las aplicaciones misión-críticas y seguridad-críticas no aparecen, inicialmente,
ser favorable para el uso de AG. Hay un elemento de cambio en un algoritmo
genético.
No garantiza proporcionar que los resultados serán de suficiente
calidad para el uso en línea. Cuando se evalúan AG en los problemas de
referencia, ellos normalmente se prueban mucho (típicamente veinte a treinta)
tiempo debido a la naturaleza estocástica del algoritmo.
Hay también la
pregunta cómo se evaluarán los individuos si ningún modelo del proceso está
disponible (como puede ser bien el caso). Alguna teoría de apoyo existe para
los algoritmos genéticos, pero es improbable demostrar suficiente para ganar la
aprobación de agencias de las normas. Mucho cuidado habría, claramente, se
necesite para el sistema crítico.
Los AG son muy intensivos computacionalmente, a menudo requieren
implementaciones masivamente paralelas para producir los resultados dentro
de un marco de tiempo aceptable. Por lo tanto, la aplicación en línea para
control en tiempo real es grandemente imposible en la actualidad
Capítulo 5
Sintonización de controladores PID utilizando
algoritmos evolutivos
5.1. Sistema mecánico: masa –resorte
El sistema que aparece en la figura 5.1es lineal. La fuerza externa u (t ) es la
entrada para el sistema, mientras que el desplazamiento y (t ) de la masa es la
salida. El desplazamiento y (t ) se mide a partir de la posición de equilibrio en
ausencia de una fuerza externa. A partir del diagrama, la ecuación 5-1 describe
el sistema
Figura 5.1. Sistema masa
resorte
m&y& + by& + ky = u
x& = Ax + Bu
(5-1)
El sistema es de segundo orden por lo que tiene dos integradores. Definiendo
las variables de estado como x1 (t ) y x2 (t )
x1 = y
x2 = y& = x&1
(5-2)
De la ecuación 5-1
m&y& = −by& − ky + u
b
k
1
&y& = − y& − y + u (1)
m
m
m
(5-3)
La ecuación de salida es
 x1 
y = (1 0) 
 x2 
(5-4)
Despejando las derivadas de mayor orden
x&1 = x2
x&2 = −
(5-5)
b
k
1
x2 − x1 + u
m
m
m
(5-6)
Las ecuaciones 5-5 y 5-6 en forma matricial quedan:
 x&1   0
k
  =
−

&
x
 2  m
1  x   0 
b  1  +  1 u
−  x2   
m    m 
(5-7)
Para obtener la función de transferencia se utilizo la siguiente ecuación
G ( s ) = C ( SI − A)−1 B + D
(5-8)
De la ecuación (5-7) se obtiene:
 0
A= k
−
 m
1 
b
− 
m
(5-9)
0
B = 1
 m 
(5-10)
C = [1 0]
(5-11)
D=0
(5-12)
Para calcular la matriz SI − A
 s 0   0
k
 −
SI − A = 
−

0
s
  m

1  s
b = k
−  
m m
−1 
b
s+ 
m
(5-13)
Calculando la inversa de la matriz
b


1
s +
m


k

s 
adjA  m
−1

(SI − A) =
=
b
k
A
s2 + s +
m
m
(5-14)
Sustituyendo en 5-8
b


s+
1  0 

1
m
 1 

G ( s ) = (1 0)
k
 
b
k
s  m 
s 2 + s + 
m
m m

(5-15)
Al realizar las operaciones
G( s) =
b
1

 01 
s
+
1

b
k
m  
s2 + s + 
m
m
m
G( s) = −
1
1
m s2 + b s + k
m
m
(5-16)
(5-17)
Se obtiene la función de transferencia
G( s) =
−1
ms + bs + k
(5-18)
2
5.1.1. Controlabilidad del sistema
La controlabilidad juega un papel muy importante en el diseño de sistemas de
control en el espacio de estados, ya que sus condiciones determinan la
existencia de una solución completa.
Si el rango de la matriz s = [B
controlable.
AB] es igual a 2, entonces el sistema será
(5-19)
 0
AB =  k
−
 m
1  0 
b  1 
−  
m  m 
(5-20)

0
Det s = 
1

m
1 

m =− 1
b
m2
− 2 
m 
(5-21)
Los vectores de la matriz son linealmente independientes entonces, el
determinante es diferente de cero por la tanto el sistema es controlable
5.1.2. Observabilidad
El sistema es observable si todas las transiciones del estado afectan
eventualmente a todos los elementos del vector de salida.
C 
Si rango de la matriz v =   es igual a 2, entonces el sistema será
CA
observable.
C = (1 0 )
 0
CA = (1 0) k
−
 m
(5-23)
1 
b  = (0 1)
− 
m
(5-24)
1 0
 = 1
Det v = 
0 1
(5-25)
El sistema es observable
5.1.3. Discretización del sistema
Asignándole valores numéricos a las variables de la función de transferencia
del sistema
Tomando m =2
b =4
k =5
Reemplazando en la ecuación
G( s) =
(5-18)
Y ( s)
0.5
=
s + 2 s + 2.5 U (s)
(5-26)
2
Tomando condiciones iniciales cero
Despejando con respecto a la entrada y la salida del sistema
0.5U (s ) = s 2Y (s ) + 2 sY (s ) + 2.5Y ( s )
(5-27)
Aplicando transformada de laplace
0.5U (s ) = Y&&( s ) + 2Y& ( s ) + 2.5Y ( s )
(5-28)
Aplicando el método de discretización aproximada
 y ( kT ) − y (( k − 1)T ) 
 y (kT ) − 2 y (( k − 1)T ) + y ((k − 2)T ) 
0.5U (kT ) = 
+ 2
2
 + 2.5 y ( kT )

T
T




(5-29)
Realizando las operaciones
0.5T 2U (kT) = y(kT) − 2 y((k −1)T ) + y((k − 2)T ) + 2T[ y(kT) − y((k −1)T )] + 2.5T 2 y(kT) (5-30)
[
]
0.5T 2U (kT ) = y (kT ) 1 + 2T + 2.5T 2 − y ((k − 1)T )[2 + 2T ] + y ((k − 2)T )
(5-31)
Tomando
T = 0.1 y reemplazando en (5-31)
[
]
0.5(0.1) = y (k ) 1 + 2(0.1) + 2.5(0.1) − y (k − 1)[2 + 2(0.1)] + y (k − 2)
2
2
0.005U (k ) = 1.225 y (k ) − 2.2Y (k − 1) + y (k − 2)
(5-32)
(5-33)
Despejando y (k )
1.225 y (k ) = 0.005U (k ) + 2.2 y (k − 1) − y (k − 2)
(5-34)
y (k ) = 0.00408U (k ) + 1.796 y (k − 1) − 0.816 y (k − 2)
(5-35)
Al expresar en función de Z
y (Z ) = 0.00408U ( Z ) + 1.796 yZ −1Y ( Z ) − 0.816Z −2Y ( Z )
(
)
(5-36)
Y ( Z ) 1 − 1.79 Z −1 + 0.816 Z −2 = 0.00408U ( Z )
(5-37)
Y (Z )
0.00408
=
U ( Z ) 1 − 1.79 Z −1 + 0.816Z − 2
(5-38)
Y (Z )
0.00408Z 2
=
U ( Z ) Z 2 − 1.79 Z + 0.816
(5-39)
5.1.4. Calculo del controlador
Hallando la función de transferencia del diagrama en bloques
Figura 5.2. Diagrama en bloque del sistema (controlador –planta)
Gs =
CP
1 + CP
(5-40)
El controlador se describe matemáticamente por

K e( s ) TD e( s ) 

U (s ) = K P  e(s ) + I
+
TI s
αs + 1 

(5-41)
KI
+ Kd s
s
(5-42)
C ( s) = K P +
KDs2 + KP s + KI
C (s ) =
s
(5-43)
Sustituyendo la ecuación 5-26 y 5-43 en la ecuación 5-40
 K P s + K D s 2 + K I 
0. 5


 2

s
 s + 2 s + 2. 5 


Gs =
 K s 2 + K P s + K I 
0.5

 2
1 +  D

s

 s + 2s + 2.5 
(
)
 0.5 K D s 2 + K P s + K I 


2
2
2
.
5
s
s
s
+
+


Gs = 3
s + 2 s 2 + 2.5s + 0.5 K D s 2 + 0.5 K P s + 0.5K I
s s 2 + 2 s + 2.5
(
)
(
)
(5-44)
0.5K D s 2 + 0.5 K P s + 0.5K I
Gs = 3
s + (2 + K D )s 2 + (2.5 + 0.5K P )s + 0.5K I
(5-45)
(5-46)
Usando el método de asignación de polos
Se quiere que el desempeño del sistema cumpla con ciertas especificaciones
entonces se usa el método de asignación de polos y se quiere que los polos
del sistema estén en el semiplano izquierdo del plano s para que el sistema sea
estable.
s 2 + 2ξwn s + wn
2
(5-47)
Donde ξ es el amortiguamiento
wn Frecuencia natural no amortiguada.
Para esto
−1 = ξwn
(5-48)
ξ = 0.5
(5-49)
Despejando wn
wn =
wd =
(s
2
1
=2
0.5
(5-50)
( 1 − ξ )w
2
n
= 0.866
(5-51)
)
+ 2s + 4 (s + 1) = s 3 + 2 s 2 + 4 s + s 2 + 2 s + 4
s 3 + 3s 2 + 6 s + 4
(5-52)
(5-53)
Igualando las ecuaciones
2 + KD = 3
(5-54)
despejando
KD = 1
2.5 + 0.5K P = 6
(5-55)
KP = 7
0.5 K I = 4
(5-56)
KI = 8
5.1.5. Discretización del controlador
Para la discretización del controlador se usa el método
de integración
trapezoidal por obtener una mejor muestra de la señal en tiempo continuo.
(K
Gc( z ) =
p
+ TK i / 2 + K D / T )Z 2 + (TK I / 2 − K p − 2 K D / T )Z + K D / T
Z ( Z − 1)
(5-57)
Sustituyendo los valores
Gc( z ) =
(7 + ((0.1)(0.8)) / 2 + 1 / 0.1)Z 2 + (((0.1)(8)) / 2 − 7 − ((2)(1) / 0.1))Z + 1 / 0.1 (5-58)
Z ( Z − 1)
Al realizar lo cálculos
Gc( z ) =
(Z
2
17.4 Z 2 − 26.6 Z + 10 U ( Z )
=
Z ( Z − 1)
e( Z )
)
(
(5-59)
)
− Z U (Z ) = 17.4 Z 2 − 26.6Z + 10 e( Z )
(5-60)
Despejando U (Z )
(1 − Z )U (Z ) = (17.4 − 26.6Z
−1
−1
)
+ 10Z −2 e(Z )
U ( Z ) − Z −1U (Z ) = 17.4e( Z ) − 26.6Z −1 + 10Z −2e(Z )
(5-61)
(5-62)
Expresando en función de K
U ( K ) − U ( K − 1) = 17.4e( K ) − 26.6e( K − 1) + 10e( K − 2)
(5-63)
U ( K ) = 17.4e( K ) − 26.6e( K − 1) + 10e( K − 2) + U ( K − 1)
(5-64)
5.1.6. Sintonización de controladores PID utilizando algoritmos evolutivos
en línea
La sintonización del controlador PID consiste en darle los valores adecuado a
los parámetros del controlador K D , K I y K P de forma que puedan estabilizar el
sistema de una forma rápida sin alterar el comportamiento del mismo.
Los datos de la planta y el controlador ya fueron discretizados anteriormente
para poder ser evaluados por el algoritmo. Como los parámetros que se tiene
del sistema son números reales, lo mas apropiado para el diseño del fue el uso
de estrategias evolutivas.
En este caso se mira el comportamiento en línea del sistema donde se van
cambiando en cada generación los nuevos individuos (constantes) para el
mejor funcionamiento del sistema. El algoritmo se desarrollo en Matlab por la
accesibilidad que de este se tiene en la universidad y por cumplir con todos los
requisitos necesario para su ejecución. El programa principal inicia con los
valores teóricos de las constantes que luego son evaluadas por el controlador y
la planta. Ya teniendo el error pasan al algoritmo donde las constantes son
recalculadas por el gradiente de este.
Para una mejor comprensión se presenta el diagrama de flujo de la figura 5.3
Figura 5.3. Diagrama de flujo del algoritmo en línea
y1, y 2, ek , ek1, ek 2, u1, t , alfa, tol , sp , a, b, k Son los valores de entrada del algoritmo
kd1, kp1, ki1 Son las constantes del controlador para el sistema masa- resorte
m Es un vector para crear las segundas constantes del sistema
h Es la variable que contabiliza el tiempo
5.1.6.1. Validación del algoritmo en línea
Para validar el algoritmo se incluirá las cuantificaciones del sistema masaresorte ya descrito. Primero se simulara con todos los valores iguales a cero
por lo que el sistema se estabiliza en cero como se puede ver en la figura 5.4.
5.4. Salida del sistema con condiciones iniciales cero
Ahora las condiciones iniciales permanecen excepto el set point que se cambia
a 1, por lo que se espera que el sistema estabilice en este valor como se
observa en la figura 5.5.
Figura 5.5. Sistema con condiciones iniciales cero y set point 1
Ya dándole valores a todas las condiciones iniciales del sistema. La salida se
puede observar en la figura 5.6.
Figura 5.6. Sistema con valores diferentes de cero y set point 1
Figura 5.7. Sistema con set point negativo
Ya teniendo el sistema estabilizando, se procede a incluir algunas variaciones
en la planta para observar como se comporta el sistema.
Figura 5.8. Sistema con variaciones en la planta, set point 3
Figura 5.9. Sistema con variaciones en la planta, set point 6
Cambiado el set point del sistema con el algoritmo en ejecución.
Figura 5.10. Sistema con cambio de set point
Cambiando el gradiente de descendente a ascendente.
Figura 5.11. Sistema con gradiente ascendente
5.2. Circuito LRC
Figura 5.12. Circuito LRC
El circuito de la figura 5.12 esta formado por una inductancia L (henry), una
resistencia R (ohm), y una capacitancia C (farad). Aplicando la ley de voltaje
de Kirchhoff al sistema, se obtiene las ecuaciones:
L
di
1
+ Ri + ∫ idt = ei
dt
C
1
idt = e0
C∫
(5-65)
(5-66)
Las ecuaciones 5-65 y 5-66 dan un modelo matemático del circuito
Hallando la función de transferencia
e0 ( s)
1
=
2
ei (s) LCs + RCs + 1
(5-67)
Dándole valores numéricos a la función de transferencia
R= 4
G( s) =
C =2
1
2s + 8s + 1
2
L =1
(5-68)
Discretizando la función de transferencia 5-68 se obtiene
y( Z )
0.01Z 2
=
U ( Z ) 2.81Z 2 − 4.8Z + 2
(5-69)
Y la ecuación de la planta discretizada para el algoritmo es
y (k ) = 0.00355UU (k ) + 1.7081 y (k − 1) − 0.7117 y (k − 2)
(5-70)
Al aplicar el método de asignación de polos las constantes obtenidas son:
K P = 11
KI = 9
K D = −4
Entonces el controlador en forma discreta resulta
G(Z ) =
− 28.55Z 2 + 69.45Z − 40
Z2 − Z
(5-71)
Y el controlador en forma discreta para el algoritmo es
U (k ) = −28.55e(k ) + 69.45e(k − 1) − 40e(k − 2) + U (k − 1)
(5-72)
La salida del algoritmo para el circuito se puede observar en la figura 5.13
Figura 5.13. Salida del circuito LRC para el algoritmo
5.3. Sistema de levitación magnética
El sistema de suspensión magnética que permite mantener levitada una
pequeña esfera metálica de masa m . El objetivo del controlador será regular el
valor de la corriente del circuito del electroimán de tal forma que la esfera se
mantenga suspendida a una distancia constante x = X del electro magneto. La
tensión o voltaje aplicado al circuito v(t ) y actúa como una variable de control.
Figura 5.14. Sistema de levitación magnética
Las ecuaciones que describen el sistema son:
Li′ = − Ri + v(t )
(5-73)
Ci 2
m&x& = mg − fm = mg −
x
(5-74)
Despejando las ecuaciones del sistema en forma matricial y despejando
0

 x&1  
 x&  =  g
 2  X
 x&3  
0

1
0
0
0
mXg
− 2C
C
mX
R
−
L








 
 x1   0 
x  +  0 
 2 1 
 x3   
L
x 
c = [0 1 0] x2 
 x3 
(5-75)
(5-76)
Al analizar la controlabilidad el determinante de S es
S=
− 4Cg
mXL3
(5-77)
Lo que define que el sistema es controlable
Para la observabilidad el determinante de V es
V =
mgX
C
2
mX L
− 2CRg
(5-78)
Por consiguiente el sistema también es observable
5.3.1. Función de transferencia
Partiendo de la ecuación 5-8
G ( s ) = C ( SI − A)−1 B + D
Entonces
G( s) =
1
R
g
Rg
s + s2 − s −
L
X
LX
3
mgX
C
mXL
− 2Cs
(5-79)
Dándole valores numéricos a la función de transferencia anterior
g = 90
C = 40
m = 30
X =5
L = 25
R = 50
Y sustituyendo en 5-79 se obtiene
G( s) =
− 0.691918s
s + 2s 2 − 18s − 81.81
(5-80)
3
Discretizando la planta
G( Z ) =
(
)
− 0.003919 Z 3 − Z 2
0.93819 Z 3 − 3.22 Z 2 + 3.2 Z − 1
(5-81)
y(k) = −0.004177
U(k) + 0.004177
U(k −1) + 3.4321y(k −1) − 3.4108y(k − 2) +1.0658y(k − 3) (5-82)
5.3.2. Calculo del controlador
Las constantes obtenidas por el método de asignación de polos
K D = −10.2062
K I = −300.598
K P = −109.7167
Usando el método de rectangular atrasada el controlador en forma discreta
seria
G(Z ) =
− 211.77 Z 2 + 283.78Z − 102.06
Z2 − Z
(5-83)
U (k ) = −211.778e(k ) + 283.786e(k − 1) − 102.062e(k − 2) + U (k − 1)
(5-84)
Por tanto la salida del sistema de levitación ante la simulación en el algoritmo
se puede observar en la figura 5.15.
Figura 5.15. Salida del algoritmo para el sistema de levitación
5.4. MODELO DEL EVAPORADOR
El tanque esta sellado herméticamente para que no se pierda ninguna
sustancia ya que puede ser corrosiva o tóxica y lo ideal del sistema es purificar
la sustancia sin perder nada.
Figura 5.16. Sistema del evaporador
El sistema tiene dos tubos de entrada. El primero es por donde llega la
sustancia a purificar y el segundo es el vapor (agua pura destilada caliente, no
tiene ningún compuesto adicional). Ambas entradas se mezcla en el tanque y
salen por la parte de arriba del tanque donde la presión que se mide es critica.
Luego van a un separador donde la sustancia más densa (a purificar) se
acumula en la parte de abajo el vapor con algunas moléculas de la sustancia
con que mezclo anteriormente. El vapor pasa a un condensador donde es
refrigerado ya que no se puede dejar que salga así al ambiente porque puede
oxidar los elementos que estén por ahí. En el separador ahí un sensor de
calidad que indica si la sustancia (producto) ya es optimo o tendría que
repetirse el proceso. Si el proceso es óptimo sale por la válvula.
Hay dos partes importantes para la descripción del modelo matemático:
•
La primera parte deriva un modelo mecánico no lineal con asunciones
mayores expresadas, las variables definidas y parámetros dados.
•
la segunda parte deriva una descripción del espacio de estado lineal en
la forma normalizada evaluando los apropiados elementos jacobianos.
5.4.1. Modelo no lineal
Los nombres de las variables, descripciones, los valores del estado estable
estándar, y las unidades manejadas se muestran en la tabla 5-1. El solvente es
el agua y el soluto es el no volátil.
Variable
Descripción
Valor
Unidad
F1
Flujo de alimentación
10.0
Kg/min
F2
Flujo del producto
2.0
Kg/min
F3
Flujo de recirculación
510.0
Kg/min
F4
Flujo de vapor
8.0
Kg/min
F5
Flujo de condensación
8.0
Kg/min
X1
Composición de alimentación
5.0
Porcentaje
X2
Composición del producto
25.0
Porcentaje
T1
Temperatura de alimentación
40.0
Grados ºC
T2
Temperatura del producto
84.6
Grados ºC
T3
Temperatura de vapor
80.6
Kg/min
L2
Nivel del separador
1.
Metros
P2
Presión de operación
50.5
kPa
F100
Flujo de vapor
5.3
Kg/min
T100
Temperatura de vapor
119.9
Kg/min
P100
Presión de vapor
194.7
kPa
Q100
Ciclo de calentamiento
539.0
kW
F200
Flujo de agua de enfriamiento
208.0
Kg/min
T200
Temperatura de agua de
25.0
Grados ºC
46.1
Grados ºC
enfriamiento
T201
Temperatura de la salida del agua
de enfriamiento
Q200
Ciclo de condensación
307.9
kW
Tabla 5-1. Variables del evaporador
5.4.2. Proceso de balance de masa líquida
Un balance de masa sobre el líquido total del proceso (solvente y soluto) in el
sistema produce:
ρAdL 2 / dt = F1 − F 4 − F 2
(5-85)
Donde: ρ es la densidad del líquido
A es el área de cruce seccional del separador
El producto ρA es asumido paras ser constante como 20 Kg/m
5.4.3. Proceso de balance de masa líquida del soluto
Un balance de masa sobre el soluto en el proceso de la fase líquida produce:
MdX 2 / dt = F 1X 1 − F 2 X 2
(5-86)
Donde M es la cantidad de líquido en el evaporador y es asumido para ser
constante como 20 Kg
5.4.4. Proceso de balance de masa de vapor
Un balance de masa sobre el vapor del proceso en el evaporador expresara la
masa total del vapor de agua en términos de la presión que existe en el
sistema:
CdP 2 / dt = F 4 − F 5
(5-87)
Donde C es una constante que convierte la masa de vapor en una presión
equivalente y se asume que tiene un valor de 4 Kg/ kPa. Esta constante puede
ser derivada de la ley de gas ideal.
5.4.5. Proceso de balance de energía líquida
El líquido del proceso se asume para existir en este punto de ebullición y ser
mezclado perfectamente (asistido por la tasa alta de circulación).
La temperatura del líquido es:
T 2 = 0.5616 P 2 + 0.3126 X 2 + 48.43
(5-88)
La cual es un linealización de la línea líquida saturada para el agua sobre el
valor estándar del estado estable e incluye un término para aproximar la
elevación del punto de ebullición debido a la presencia del soluto.
La temperatura del vapor es:
T 3 = 0.507 P 2 + 55.0
(5-89)
La cual es un linealización de la línea líquida saturada para el agua sobre el
valor estándar del estado estable.
La dinámica del balance de energía es asumida para ser muy rápida así que:
F 4 = (Q100 − F1C p (T 2 − T 1)) / λ
(5-90)
Donde C p es la capacidad de calor del licor y la constante se asume como un
valor de 0.07kW/K (Kg/min) y λ es el calor latente de vaporización del licor y es
asumida para tener un valor constante de 38.5kW / (Kg/min).
El sensible cambio de calor entre T 2 y T 3 para F 4 es considerado pequeño
comparado con el calor latente. Esto asume que no hay ninguna pérdida de
calor al ambiente o ganancias de calor de la entrada de energía de la bomba.
5.4.6. Envoltura del vapor caliente
La presión de vapor P100 es una variable manipulada qué determina la
temperatura de vapor bajo la suposición de condiciones saturadas. Una
ecuación que relaciona la temperatura de vapor para la presión del vapor
puede ser obtenida aproximando la relación temperatura de vapor saturada presión por linealización loca sobre el valor en estado estable:
T 100 = 0.1538 P100 + 90.0
(5-91)
La tasa de transferencia de calor para el proceso de ebullición del líquido es
dado por:
Q100 = UA1(T 100 − T 2)
(5-92)
Donde UA1 es el coeficiente de tiempo de transferencia de calor completo el
área de transferencia de calor y es una función del flujo total a través de los
tubos en el evaporador:
UA1 = 0.16( F1 + F 3)
(5-93)
La rata de vapor es calculado de:
F100 = Q100 / λs
(5-94)
Donde λs es el calor latente de vapor en la condición de saturación, asumido
como un valor constante de 36.6 kW/(Kg/min).
La dinámica dentro de la envoltura del vapor ha sido asumida para ser muy
rápida.
5.4.7. Condensador
El flujo de agua de enfriamiento F 200 es una variable manipulada y la entrada
de temperatura T 200 es una variable de perturbación.
Un balance de energía de agua de enfriamiento produce:
Q 200 = F 200C p (T 201 − T 200)
(5-95)
Donde C p es la capacidad de calor del agua de enfriamiento asumida como una
constante de 0.07kW/(Kg/min)
La ecuación de la tasa de transferencia de calor es aproximada por:
Q 200 = UA2(T 3 − 0.5(T 200 + T 201))
(5-96)
Donde UA2 es un coeficiente de tiempo de transferencia de calor completo el
área de transferencia de calor, la cual es asumida con un valor constante de
6.84kW/K.
Estas dos ecuaciones pueden ser combinadas para eliminar T 201 para dar
explícitamente:
Q 200 =
UA2(T 3 − T 200)
1 + UA2 /(2C p F 200)
(5-97)
Sigue que:
T 201 = T 200 + Q 200 /( F 200C p )
(5-98)
El flujo de condensación es:
F 5 = Q 200 / λ
(5-99)
Donde λ es el calor latente de vaporización de agua asumido como una
constante de 38.5kW/K(K/min)
La dinámica dentro del condensador ha sido asumida para ser muy rápida.
5.4.8. Modelo matemático del evaporador
La ecuación en espacio de estados es
X& = Ax + By + Dd
(5-100)
Y la salida esta dada por
y = cx
(5-101)
Calculando la ecuación en espacio de estados del sistemas
( SI − A) x = Bu + Dd
(5-102)
Despejando x
x = (SI − A) [Bu + Dd ]
−1
(5-103)
Despejando y
y = C (SI − A) [Bu + Dd ]
−1
(5-104)
y = C (SI − A) Bu + C (SI − A) Dd
−1
−1
(5-105)
Al linealizar el sistema se obtiene las matrices
0.10445
0.37935

0


A = 0
− 0. 1
0

0 0.10340 × 10 −1 − 0.54738 × 10−1 
(5-106)
0.37266
0

 − 0. 1


B =  − .01
0
0

 0
0.36914 × 10−1 0.75272 × 10− 2 
(5-107)
1 0 0
C = 0 1 0
0 0 1 
(5-108)
− 0.36676
0.38605

D=
0
0.1
 0.36302 0.32268 × 10− 2

− 0.3636 × 10 −1
0
0.1
0
0 0.35972 × 10− 2


0
 (5-109)
−1 
0.17785 × 10 
0
Iniciando los calculo de las ecuaciones por la matriz SI − A
0.10445
0.37935

 s 0 0 0

 

− 0. 1
SI − A =  0 s 0  −  0
0

 0 0 s   0 − 0.10340 × 10−1 − 0.54738 × 10−1 

 

(5-110)
Realizando la operación, reemplazando la matriz 5-86
− 0.10445
s

SI − A =  0
s + 0.1
 0 0.10340 × 10−1



0

−1 
s + 0.54738 × 10 
0.37935
(5-111)
Calculando la inversa de la matriz
(SI − A)−1 =
Adj (SAI − A)
SI − A
(5-112)
Se inicia calculando el determinante de la matriz
s + 0.1

SI − A = s 
−1
0.10340 × 10
(
)(
0

= s (s + 0.1) s + 0.54738 × 10−1 (5-13)
−1 
s + 0.54738 × 10 
(
)
)
SI − A = s 2 + 0.1s s + 0.54738 × 10 −1 = s 3 + 0.154738s 2 + 0.0054738s
Para calcular la adjunta se procede a conseguir los cofactores
(5-114)
A11 =
s + 0.1
0.10340 × 10
−1
(
0
= (s + 0.1) s + 0.54738 × 10 −1
s + 0.54738 × 10−1
A11 = s 2 + 0.154738s + 0.0054738
)
(5-115)
(5-116)
A12 =
0
0
=0
0 s + 0.54738 × 10 −1
(5-117)
A13 =
s + 0.1
0
=0
0 s + 0.10340 × 10−1
(5-118)
A21 = −
− 0.10445
0.10340 × 10
− 0.37935
−1
s + 0.54738 × 10
−1
(
(
)
(− 0.10445) s + 0.54738 × 10 −1 −  (5-119)
= −

−1
(− 0.37935) 0.10340 × 10

)
A21= −[− 0.10445s − 0.0057173841
− (− 0.003922749
)] = 0.10445s + 0.0017949051
(5-120)
A22 =
− 0.37935
s
= s 2 + 0.54738 × 10−1 s
−1
0 s + 0.054738 × 10
A23 = −
A31 =
(5-122)
− 0.10445 − 0.37935
= −[(s + 0.1)(− 0.37935)] = 0.37935s + 0.037935(5-123)
s + 0.1
0
A32 = −
A33 =
− 0.10445
s
= −0.10340 × 10−1 s
0 0.10340 × 10−14
(5-121)
s − 0.37935
=0
0
0
s − 0.10445
= s (s + 0.1) = s 2 + 0.1s
0
s + 0.1
(5-124)
(5-125)
Reemplazando los cofactores de 5-96 a 5-104
Matriz de cofactores
 s 2 + 0.154738s + 0.0054738

0
0

2
−1
−1 
Mc =  0.10445s + 0.0017949051 s + 0.54738 × 10 s − 0.10340 × 10 s  (5-126)
 − 0.37935s − 0.037935

0
s 2 + 0.1s


Transponiendo la matriz
 s 2 + 0.154738 s 0.0054738

Adj ( SI − A) = 
0

0

0.10445 s + 0 .0017949051
−1
s + 0.54738 × 10 s
− 0 .10340 × 10 −1 s
2
0.37935 s + 0 .037935 
 (5-127)
0


s 2 + 0.1s

Ya teniendo la inversa de SI − A se multiplica por la matriz C
C ( SI − A) −1 =
 s 2 + 0.154738s0.0054738 0.10445s + 0.0017949051 0.37935s + 0.037935


0
s 2 + 0.54738 × 10−1 s
0


2
−1


0
0
.
10340
10
s
s
0
.
1
s
−
×
+


s3 + 0.154738s 2 + 0.0054738s
(5-128)
Luego se multiplica por B
C ( SI − A) −1 B =
 − 0.1s 2 − 0.0259 s − 0.0072 0.3726 s 2 + 0.0716 + 0.0034
− 0.0028s − 0.00028 


2
−
−
0
.
1
s
0
.
0054
s
0
0



0.001034 s
0.36914 × 10−1 s 2 + 0.0036s − 0.752 × 10− 2 s 2 − 0.00075 (5-129)

s 3 + 0.154738s 2 + 0.0054738s
Inicialmente sin tener en cuenta las perturbaciones del sistema
p 2 ( s ) 0.36914 × 10 −1 s 2 + 0.0036914 s
=
p100 ( s ) s 3 + 0.154738s 2 + 0.0054738s
(5-130)
Simplificando
p2 (s )
s (0.36914 × 10−1 s + 0.0036914)
=
p100 (s ) s ( s 2 + 0.154738s + 0.0054738)
(5-131)
Y en forma discreta es
y( Z )
0.00365Z 2 − 0.006914Z
=
U ( Z ) 1.015528Z 2 − 2.01547 Z − 1
(5-132)
y (k ) = 0.0035U (k ) − 0.0068U (k − 1) + 1.984 y (k − 1) − 0.984 y (k − 2) (5-133)
Al calcular los polos del sistema
s 2 + 0.154738s + 0.0054738
s1 = −0.1
s2 = −0.0054738
(5-134)
El sistema es sobre amortiguado. Tiene un polo en y otro en -0.054738, por
tanto los tiempos de respuesta son 10 seg. Y 18.25 seg. respectivamente,
entonces se toma 18.25seg por corresponder al polo mas cercano al origen
(dominante). Por lo tanto TI no puede ser menor que 18.25seg.
Teniendo las condiciones de funcionamiento del sistema se pueden obtener las
constantes del mismo
K P = 1.4828
K I = 0.008125
K D = 0.674
El controlador en forma discreta seria
G(Z ) =
8.2268Z 2 − 14.962Z + 6.74
Z2 − Z
U ( K ) = 8.2268e(k ) − 14.962e(k − 1) + 6.74e(k − 2) + U (k − 1)
Llevando las constantes del sistema al algoritmo en línea.
Figura 5.17. Evaporador con algoritmo en línea
(5-135)
(5-136)
Ahora teniendo en cuenta las perturbaciones
C ( SI − A) −1 D =
− 0.366s 2 − 0.056s − 0.002 0.386s 2 + 0.0714s + 0.002 0.0104s + 0.00017 − 0.36 × 10 −1 s 2 − 0.0056 s − 0.00019
0.0011s + 0.00013 


2
2
s
s
s
s
0
0
.
1
0
.
0054
0
.
1
0
.
0054
0
0
+
+


2
2
2
2
2
1
2
−
−
−
 0.36302s + 0.03630s
0.322 × 10 s − 0.00071s
0.359 × 10 s + 0.000359 s
0.17 × 10 s + 0.0017 s 
− 0.00103s

s 3 + 0.154738s 2 + 0.0054738s
Tomando la perturbación
p2 ( s )
0.36302s 2 + 0.036302s
=
F 3( s ) s 3 + 0.154738s 2 + 0.0054378s
(5-137)
Discretizando la función
p2 ( Z ) 0.03593Z 2 − 0.0036302 Z
=
F 3(Z ) 1.01552Z 2 − 2.0154 Z + 1
(5-138)
p( Z ) = 0.0353F 3(k ) − 0.03574 F ·(k − 1) + 1.9846 p2 (k − 1) − 0.9847 p (k − 2) (5-139)
La perturbación tomada es el flujo de recirculación F 3 .
Esta es sumada a la señal de entrada y al igual que el modelo anterior
evaluado en el algoritmo. Como se puede ver en la figura 5.18 el sistema inicial
mente tiene un sobre impulso que luego de un tiempo se va estabilizando.
Figura 5.18. Salida del sistema con perturbación
5.5. Sintonización de controladores PID utilizando algoritmos evolutivos
fuera de línea
Para el trabajo del algoritmo fuera de línea se hace con pocos individuos y se
comienza con una población aleatoria, donde la función objetivo también es
minimizar el error y el criterio de para es el tiempo. Ahora el mejor individuo no
es cambiado en cada generación, sino que los datos van siendo almacenados
y luego de terminadas las iteraciones a los dos mejores individuos se le aplican
los operadores de mutación y cruce para obtener el nuevo para ser
reemplazado por el peor. En este caso también se prueba con los sistemas ya
descritos.
5.5.1. Sistema mecánico: masa –resorte
Las constantes teóricas del sistema son
KD = 1
KI = 8
KP = 7
Inmediatamente de ser evaluada por el algoritmo
seleccionados y reemplazados son
K D1 = 1.0889
K I 1 = 8.1584
K P1 = 7.1231
5.5.2. Circuito LRC
Los parámetros iniciales del controlador son
K P = 11
KI = 9
K D = −4
los mejores individuos
Y cambian a la salida del algoritmo por
K P1 = 11.0406
K I 1 = 9.0397
K D1 = −3.9722
5.5.3. Sistema de levitación magnética
Inicialmente las constantes están dadas por
K D = −10.2062
K I = −300.598
K P = −109.7167
A la evaluación del algoritmo pasan a ser
K D1 = −10.2031
K I 1 = −300.5090
K P1 = −109.4673
5.5.4. MODELO DEL EVAPORADOR
Teóricamente las constantes del evaporador son
K P = 1.4828
K I = 0.008125
K D = 0.674
Y a la salida del algoritmo son
K P1 = 1.5878
K I 1 = 0.0487
K D1 = 0.8084
6. ANÁLISIS ECONÓMICO Y ADMINISTRATIVO
En el desarrollo de este trabajo no se realizo implementación, por lo cual los
gasto son netamente de la investigación realizada.
•
Documentación en Internet
$ 100.000
•
Fotocopias
$ 100.000
•
Impresiones
$ 100.000
•
Honorarios profesionales (Director)
$ 200.000
TOTAL
$ 500.000
Los recursos utilizados para cubrir los gastos de la elaboración de este trabajo
fueron de recursos propios.
El impacto Económico: este desarrollo construye un soporte para el posterior
desarrollo de una herramienta computacional de aplicación industrial que
pueda ser registrada, por lo que se pudiera tener ingresos económicos por la
comercialización de la misma. A la hora de ser implementada en plantas
industriales generaría menos perdidas en la elaboración de los productos, ya
que los equipos seguirían funcionando normalmente al ser resintonizandos los
puntos de operación cuando ocurra algún comportamiento no debido ocurra.
7. ANÁLISIS DE LEGALIDAD
Para la implementación de la herramienta computacional para la sintonización
de controladores PID se utilizó el software de Matlab. La Universidad de
Pamplona posee las licencias requeridas para ser usado por estudiantes,
investigadores y profesores vinculados a esta.
En el caso de implantación no se hace indispensable este software, cualquier
lenguaje de programación que posea las herramientas necesarias puede ser
utilizado.
8. INFLUENCIA AMBIENTAL
El funcionamiento inadecuado de las plantas industriales debido al desgaste,
vencimiento del tiempo útil de uso, factores externos de algunos equipos, etc.,
podría generar gases y sustancias nocivas para la salud del personal a cargo y
además contaminantes para el ambiente.
Este algoritmo traería beneficios no solo en la operación apropiada de procesos
o sistemas, sino que también reduce la emisión de residuos tóxicos a la
atmósfera, y el consumo de energía en la planta.
CONCLUSIONES
•
El uso de algoritmos evolutivos para la sintonización de controladores
PID constituye un novedoso enfoque de resolución de problemas, con
excelentes potencialidades en el campo de las aplicaciones industriales.
•
El desarrollo de este trabajo permitió el diseño de un algoritmo evolutivo
que logra la reentonación de controladores del tipo PID cuando ocurre
falla de algún componente del sistema.
•
Los resultados alcanzados en el trabajo pueden ser visualizados como el
punto de partida para el desarrollo de investigaciones de punta en el
área de la sintonización de controladores industriales.
•
El enfoque de desarrollo y el algoritmo propuesto no representa riesgos
para la operación segura de la planta ni para sus operarios.
•
La implantación física del algoritmo de sintonización propuesto no
conlleva a gastos elevados en comparación con otros esquemas de
sintonización corrientemente utilizados en la práctica.
•
Vale la pena recalcar, que una de las ventajas novedosas del enfoque
de sintonización propuesto está en permitir la continuación de la
operación de la planta, aún ante la presencia de perturbaciones o fallas
en la misma.
•
Es notable la reducción del tiempo para acometer la sintonización de un
controlador PID, en comparación con el tiempo utilizado empleando
otros enfoques.
•
El algoritmo puede ser utilizado exitosamente para sistemas dinámicos
de segundo y tercer orden, de los cuales se dispone de modelos
matemáticos representativos de sus comportamientos.
•
El algoritmo de sintonización propuesto fue validado utilizando señales
de perturbación sobre los procesos considerados.
•
Para propósitos ilustrativos, el algoritmo propuesto fue implantado en la
sintonización de controladores PID en una planta de evaporación,
utilizando un modelo matemático representativo de la misma.
•
El trabajo ejecutado puede servir de base para el desarrollo de otros
proyectos de grado, tanto a nivel de pregrado como de postgrado.
•
Todos los objetivos propuestos al inicio de este proyecto fueron
satisfactoriamente acometidos.
RECOMENDACIONES
•
Para el caso del algoritmo en línea, se puede utilizar para cualquier
proceso. Es mas optimo y robusto (al variar la incertidumbre el
controlador no pierda su correcto funcionamiento) pero mas bajo un
punto de operación (no aleatorio sobre métodos convencionales).
•
En el caso en línea se recomienda utilizar un computador con
procesador más rápido que el tiempo de respuesta del sistema.
•
Con una posible implementación para sistemas d otra naturaleza tener
en cuenta la población, función de aptitud, tipo de operadores, y los
parámetros
de población, generación probabilidad de cruce y
probabilidad de mutación
•
En lo posible para realizar estudios sobre el concepto de robustez para
incluirlo dentro del algoritmo.
•
Estudiar la posibilidad de ser implantado en algún proceso industrial
para ir obteniendo mejoras de este.
BIBLIOGRAFIA
[1] www.habitat.aq.upm.es .boletin/n21/amher1.html . Abril de 2004
[2] www.Informáticaevolutiva.com Algoritmosgenéticos.html, Juan Julián Merelo
Guervós, jmerelogeneura.ugr.es. Agosto de 2003
[3] www.inteligenciaartificialc.com .La Computación Evolutiva en el Contexto de
la Inteligencia Artificial.htm, Carlos A. Coello Coello, Copyright 1997 LANIA,
A.C.
[4] Computación Evolutiva. Francisco Hidrovo Torres- José L. Aguilar Castro.
Universidad de Los Andes. Merida, Venezuela
[5] \GAIA Computación Evolutiva.htm. Marzo 2005
[6]
yo@alfredorahn.com,
yelitzayoleth@mipunto.com
.AG_Bivariado.pdf
Septiembre de 2003
[7] González Heli, Larrazábal Germán, Loyo Jacqueline, helijesusg@cantv.net.
Algoritmo Evolutivo Paralelo para Problemas de Asignación Cuadrática - QAP ilustrados_com.htm. Publicado sábado 31 de enero de 2004
[8] computación evolutiva.pdf, Andrés Romero Rodríguez, Mario Linares
Vásquez, XIV CNEIS, Marzo 16 - 2005
[9] EVOLUTIONARY ALGORITHMS.J. Madar and J. Abonyi (2005). EAfull.pdf
[10] IFAC PROFESSIONAL BRIEF. Genetic algorithms in control systems
engineering. P. J. Fleming http://www.shef.ac.uk/~acse/people/p.j.fleming/,
R. C. Purshouse www.shef.ac.uk/~acse/research/students/r.c.purshouse/.
Department of Automatic Control and Systems Engineering. University of
Sheffield, UK. PB_Fleming_Purshouse.pdf. 2005
[11] estructuras-FIN.pdf, ING. PHD. GUILLERMO FRANCO, Noticreto Nº 72.
Algoritmos evolutivos en ingeniería. Agosto- Septiembre- Octubre de 2004
[12]
Pablo
Estévez
valencia.
Chile,
agosto
1997.
pestevez@tamarugo.cec.uchile.cl. optimizacion.pdf
[13] Computación Evolutiva
eXactas_org
La Universidad Evolutiva_
Comunidad Estudiantil de formación interdisciplinaria.htm abril de 2002 por los
estudiantes de la F.C.E.I.A. (U.N.R.).
[14] Computación Evolutiva3.htm http://www.aic.nrl.navy.mil/galist/, 2001
[15] [Alba/Cotta] Alba, E. Cotta, C. Tutorial de Algoritmos Evolutivos.
http://polaris.lcc.uma.es/~ccottap/semEC/. algoritmosGeneticos.pdf. 2001
[16] yelitzayoleth@mipunto.com, yo@alfredorahn.com, GMSP_paper.pdf. Junio
de 2002
[17]
Dr. Alejandro Guerra Hernández. aguerra@uv.mx, www.uv.mx/aguerra.
México Abril 1, 2004
[18] ttp://es.wikipedia.org/wiki/Teor%C3%ADa_de_la_Evoluci%C3%B3n1. 6:43
25 ago, 2005. El contenido está disponible bajo los términos de la GNU Free
Documentation License
[19] Universidad Nacional del Nordeste .Fac. De Agroindustrias, Sáenz Peña,
Chaco. Fac. Ciencias Agrarias, Corrientes República Argentina. ©19982004.http://www.biologia.edu.ar.
http://fai.unne.edu.ar/biologia/evolucion/evo1.htm
[20] Publicación enviada por Aberto García. Código ISPN de la Publicación:
EpyyupVuyulSAOLqUy.
Publicado
Friday
17
de
October
de
2003
http://www.ilustrados.com/publicaciones/EpyyupVuyulSAOLqUy.php
[21]
1997
Lucas
Morea
/
Sinexi
S.A
http://www.monografias.com/trabajos/reproduccion/reproduccion.shtml
[22] introducción a la computación evolutiva cap1.pdf
[23] algoritmos evolutivos cap7.pdf
[24] María Teresa Iglesias Otero. Universidad de la Coruña. totero@udc.es
pg02-03-iglesias .pdf. 2002,2003
[25] REDcientifica - Computación Evolutiva - Manuel de la Herrán Gascón.htm.
18 de Enero de 2002
[26] computación evolutiva Carlos a Coello, abril de 2005
[27] Algoritmos Genéticos. eXactas_org. La Universidad Evolutiva_ Comunidad
Estudiantil de formación interdisciplinaria.htm abril de 2002 por los estudiantes
de la F.C.E.I.A. (U.N.R.).
[28] Algoritmos genéticos y computación evolutiva.htm, Adam Marczyk,
traducción Gabriel Rodríguez Alberich., octubre de 2004
[29] Características de los algoritmos genéticos.htm. David Santo Orcero
Palabras claves. Octubre de 2003
[30] BENYAMIN KUSUMOPUTRO. Computational Intelligence Research
Laboratory Faculty of Computer Science, University of Indonesia Depok
Campus, INDONESIA. kusumo@cs.ui.ac.id. 19 de Noviembre de 2003
[31] Control Automatico 1. http://iaci.unq.edu.ar/caut1. Automatización y Control
Industrial. Universidad Nacional de Quilmas. Virginia Mazon. Marzo 2002
[32] Ingeniería De Control Moderna. Katsuhiko Ogata. Tercera edición Pearson
educación.
[33] Sistemas de control automático séptima edición benjamín kuo Prentice
Hall 1996 Enrique Jacob México
[34] Universidad Simón Bolívar. Departamento de Procesos y Sistemas.
Sección de sistemas de control. Introducción al control de procesos. Prof.
Jenny Montbrun Di Filippo. Prof. Yamilet Sánchez Montero
[35] Sistemas De Control En Tiempo Discreto. Katsuhiko Ogata. Segunda
edición Pearson educación. México 1996
ANEXO
Los anexos de este trabajo se presentan en formato electrónico al respaldo del
informe o en una carpeta llamada ‘ANEXOS’ en el C.D de entrega final.
GLOSARIO DE TÉRMINOS TÉCNICOS
Alelo: Un alelo es un valor para un gen. Utilizando la definición de gen que
hace referencia a una porción de cadena genética determinada, los alelos de
ese gen serían todos los posibles valores que puede tomar ese segmento de
cadena genética. [5]
Azar, Aleatorio: sin causa, y por tanto, teóricamente impredecible, excepto en
forma de probabilidad [5]
Caos: es la situación de desorden en que, según ciertas teorías o creencias, se
encontraba el universo antes de adquirir su ordenación actual.[5]
Cromosoma: Un cromosoma está formado por un conjunto de genes. En
computación evolutiva es raro dividir la información genética en cromosomas y
éstos, a su vez, en genes. Lo habitual es que cada individuo esté formado por
un único cromosoma. Al existir ambos términos (cromosoma e individuo)
disponibles, la comunidad científica que aplica computación evolutiva los ha
utilizado para distinguir distintos matices de un mismo concepto. Así, cuando se
habla de cromosoma, se suele hacer referencia a la cadena de bits o de
símbolos que forman la entidad (genotipo). En cambio, cuando se usa el
término individuo, se hace referencia a la interpretación de estos símbolos, a su
significado como solución al problema. [5]
Diagrama en bloques: permite mostrar las conexiones y cada bloque que
representa.
Epístasis: El fenómeno de la epístasis consiste en la existencia de fuertes
vinculaciones (también llamadas "interacciones") entre los genes, de forma que
el efecto de unos genes inhibe o potencia otros, o incluso el resultado es tan
complejo que no tiene sentido considerar los efectos de los genes de forma
individual sino conjuntamente.
"El problema de la epístasis" o "el problema de la ausencia de bloques
constructores" consiste en la existencia de estas interacciones entre los genes.
Los problemas con poca epístasis son triviales, y se pueden solucionar con un
simple método de escalada. Los problemas con mucha epístasis son difíciles
de resolver, incluso para los Algoritmos Genéticos. Un problema donde todos
los genes tuvieran fuerte vinculación entre sí, es decir, cuyos efectos dependan
del valor de todos los demás genes, no sería un problema irresoluble, pero sí el
peor que nos podríamos encontrar, no sólo para las técnicas evolutivas, sino
para cualquier otro método. Sería algo así como buscar un objeto con los ojos
cerrados, y la mejor forma de tratarlo sería, lógicamente, una búsqueda
secuencial.
Error: es la diferencia entre la señal de referencia y la señal de salida real.
Estado: cantidad mínima necesaria que permite conocer la evolución de una
variable de estado.
Función fitness: Se trata de una función evaluadora de la calidad de un
individuo como solución a nuestro problema. Permite la ordenación de los
individuos de la población en cuanto a bondad de los mismos. [15]
Individuo o cromosoma: Un individuo determina una potencial solución del
problema que se pretende resolver mediante el algoritmo genético.[15]
Paradigma: Ejemplo, método, técnica, estrategia. [5]
Perturbación: es una señal que tiende a afectar la salida del sistema,
desviándola del valor deseado.
Planta: es el elemento físico que se desea controlar. Planta puede ser: un
motor, un horno, un sistema de disparo, un sistema de navegación, un tanque
de combustible, etc.
Población: Conjunto de individuos con los que se trabaja en el algoritmo
genético. En un algoritmo genético los individuos que constituyen la población
van cambiando pero generalmente el tamaño de la misma permanece
constante. [15]
Proceso: operación que conduce a un resultado determinado.
Sensor: es un dispositivo que convierte el valor de una magnitud física
(presión, flujo, temperatura, etc.) en una señal eléctrica codificada ya sea en
forma analógica o digital. También es llamado transductor. Los sensores, o
transductores, analógicos envían, por lo regular, señales normalizadas de 0 a 5
voltios, 0 a 10 voltios o 4 a 20 mA.
Señal de salida: es la variable que se desea controlar (posición, velocidad,
presión, temperatura, etc.). También se denomina variable controlada.
Señal de referencia: es el valor que se desea que alcance la señal de salida.
Señal de control: es la señal que produce el controlador para modificar la
variable controlada de tal forma que se disminuya, o elimine, el error.
Señal analógica: es una señal continua en el tiempo.
Señal digital: es una señal que solo toma valores de 1 y 0.
Sistema: consiste en un conjunto de elementos que actúan coordinadamente
para realizar un objetivo determinado.
Sistema de control en lazo cerrado: es aquel en el cual continuamente se
está monitoreando la señal de salida para compararla con la señal de
referencia y calcular la señal de error, la cual a su vez es aplicada al
controlador para generar la señal de control y tratar de llevar la señal de salida
al valor deseado. También es llamado control realimentado.
Sistema de control en lazo abierto: en estos sistemas de control la señal de
salida no es monitoreada para generar una señal de control.
Descargar