diseño mecatró nico usando optimización basada en...

121
Laboratorio Nacional de Informática Avanzada Diseño Mecatrónico usando optimización basada en bacterias TESIS Que presenta: Betania Hernández Ocaña Para obtener el grado de: Maestra en Computación Aplicada Directores de Tesis: Dr. Efrén Mezura Montes Dr. Edgar Alfredo Portilla Flores Xalapa, Veracruz, México Octubre 2011

Upload: trinhdien

Post on 06-Feb-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Laboratorio Nacional de Informática Avanzada

Diseño Mecatrónico usando optimización basada

en bacterias

TESIS

Que presenta:

Betania Hernández Ocaña

Para obtener el grado de:

Maestra en Computación Aplicada

Directores de Tesis:

Dr. Efrén Mezura Montes

Dr. Edgar Alfredo Portilla Flores

Xalapa, Veracruz, México Octubre 2011

Page 2: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Agradecimientos

A mi Dios por estar conmigo en todo momento, por su amor incomparable,bondad innita y bendiciones.

A mis padres el Sr. Pablo y la Sra. Nelly por conar en mí, por su apoyoincondicional y sobre todo por ese gran amor para conmigo.

A mis hermanos, Yenni Cristel y Pablo, por amarme a pesar de la distanciay el tiempo, por apoyarme y ser el motivo de mi superación.

Al Dr. Efrén Mezura-Montes por su apoyo, amistad, tiempo, dirección yconsejos en la realización de esta tesis.

Al Dr.Edgar A. Portilla Flores por su apoyo, amistad y dirección en la rea-lización de esta tesis.

A mis amigas y amigos, por su comprensión y apoyo en cualquier circunstan-cia y sobre todo por compartir esta amistad.

Al CONACyT por la beca otorgada para la realización de la maestría.

Page 3: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Resumen

En esta tesis se resuelve el problema de optimización derivado de un sistemade Transmisión de Variación Continua con el Algoritmo de Optimización delForrajeo de Bacterias Modicado. Debido a que el problema de optimizaciónes multi-objetivo con restricciones el algoritmo fue adaptado en sus opera-dores propios, también se utilizan mecanismos para el criterio de selecciónde soluciones, manejo de restricciones, uso de elitismo y manejo de diversidad.

El algoritmo propuesto es sometido a un conjunto de experimentos paraobservar su comportamiento en este tipo de problema multi-objetivo. Losresultados obtenidos son analizados desde el punto de vista mecánico y através de métricas de desempeño para conocer qué soluciones favorecen laconstrucción del sistema de Transmisión de Variación Continua. Además, losresultados son comparados con dos algoritmos del estado del arte.

Page 4: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Contenido

Lista de guras viii

Lista de tablas x

1. Introducción 11.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2. Planteamiento del problema . . . . . . . . . . . . . . . . . . . 41.3. Objetivo general y especícos . . . . . . . . . . . . . . . . . . 51.4. Justicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.5. Alcances y limitaciones . . . . . . . . . . . . . . . . . . . . . . 7

1.5.1. Alcances . . . . . . . . . . . . . . . . . . . . . . . . . . 71.5.2. Limitaciones . . . . . . . . . . . . . . . . . . . . . . . . 8

1.6. Organización de la tesis . . . . . . . . . . . . . . . . . . . . . 8

2. Optimización 102.1. Concepto de optimización . . . . . . . . . . . . . . . . . . . . 102.2. Función objetivo . . . . . . . . . . . . . . . . . . . . . . . . . 122.3. Variables de diseño . . . . . . . . . . . . . . . . . . . . . . . . 122.4. Restricciones de diseño . . . . . . . . . . . . . . . . . . . . . . 132.5. Optimización Multi-objetivo . . . . . . . . . . . . . . . . . . . 132.6. Dominancia de Pareto . . . . . . . . . . . . . . . . . . . . . . 152.7. Óptimo de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . 162.8. Frente de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . 17

3. Diseño Mecatrónico 193.1. Diseño óptimo en Ingeniería . . . . . . . . . . . . . . . . . . . 193.2. Diseño Paramétrico Cinemático . . . . . . . . . . . . . . . . . 21

3.2.1. Síntesis cinemática . . . . . . . . . . . . . . . . . . . . 22

iv

Page 5: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

3.3. Caso de estudio . . . . . . . . . . . . . . . . . . . . . . . . . . 233.4. Técnicas de solución al problema del TVC . . . . . . . . . . . 29

4. Algoritmos de Inteligencia Colectiva 314.1. Introducción a la Inteligencia colectiva . . . . . . . . . . . . . 314.2. Elementos generales de un algoritmo de Inteligencia Colectiva 324.3. Estado del arte . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3.1. Algoritmos básicos . . . . . . . . . . . . . . . . . . . . 334.3.2. Algoritmos derivados del forrajeo de bacterias . . . . . 394.3.3. Estudio a los procesos del BFOA . . . . . . . . . . . . 484.3.4. Híbridos con el BFOA . . . . . . . . . . . . . . . . . . 514.3.5. Aplicaciones usando algoritmos basados en bacterias . 55

5. Algoritmo de Optimización del Forrajeo de Bacterias Modi-cado para problemas Multi-Objetivo (MOMBFOA) 575.1. Modied-Bacterial Foraging Optimization Algorithm (MBFOA) 57

5.1.1. Pseudocódigo del MBFOA . . . . . . . . . . . . . . . . 595.1.2. Descripción del pseudocódigo del MBFOA . . . . . . . 60

5.2. Algoritmo de Optimización del Forrajeo de Bacterias Modi-cado para problemas Multi-Objetivo (MOMBFOA) . . . . . . 625.2.1. Implementación de mecanismos al MBFOA para re-

solver problemas multi-objetivos . . . . . . . . . . . . . 635.2.2. Versiones del MBFOA . . . . . . . . . . . . . . . . . . 645.2.3. Adaptaciones a los mecanismos propios del MBFOA . . 725.2.4. Pseudocódigo del MOMBFOA . . . . . . . . . . . . . . 735.2.5. Descripción del pseudocódigo MOMBFOA . . . . . . . 73

6. Resultados 776.1. Diseño experimental . . . . . . . . . . . . . . . . . . . . . . . 776.2. Análisis de comportamiento del MOMBFOA para satisfacer

a la restricción dinámica y generar soluciones factibles y nodominadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6.3. Resultados comparados con la métrica Two set coverage . . . . 826.4. Resultados comparados con la métrica Hypervolume . . . . . . 846.5. Calidad de los resultados . . . . . . . . . . . . . . . . . . . . . 856.6. Consistencia de los resultados . . . . . . . . . . . . . . . . . . 866.7. Resultados comparados desde el punto de vista mecánico . . . 86

Page 6: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

7. Conclusiones 91

8. Anexo 94

Referencias 104

vi

Page 7: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Lista de guras

2.1. Representación de dominancia de Pareto . . . . . . . . . . . . 162.2. Frente de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.1. Transmisión de Variación Continua . . . . . . . . . . . . . . . 243.2. Mecanismo de cuatro barras del TVC . . . . . . . . . . . . . . 24

5.1. Frente de Pareto obtenido del experimento 2 etapa 1 . . . . . 675.2. Frente de Pareto obtenido del experimento 2 etapa 2 . . . . . 685.3. Número promedio de soluciones factibles por generación sobre

10 corridas independientes en la etapa 2 del experimento 2 dela adaptación del algoritmo MBFOA . . . . . . . . . . . . . . 69

5.4. Frente de Pareto obtenido del experimento 3 . . . . . . . . . . 705.5. Número promedio de soluciones factibles por generación sobre

10 corridas independientes del experimento 3 de la adaptacióndel algoritmo MBFOA . . . . . . . . . . . . . . . . . . . . . . 70

5.6. Frente de Pareto obtenido del experimento 4 . . . . . . . . . . 71

6.1. Frente de Pareto de cada uno de los algoritmos . . . . . . . . 796.2. Número promedio de soluciones que satisfacen la restricción

dinámica por generación sobre 10 corridas independientes . . . 806.3. Número promedio de soluciones factibles por generación sobre

10 corridas independientes . . . . . . . . . . . . . . . . . . . . 816.4. Número promedio de soluciones factibles no dominadas por

generación sobre 10 corridas independientes . . . . . . . . . . 826.5. Localizando al mejor espacio objetivo . . . . . . . . . . . . . . 876.6. Graco resultante del simulador del comportamiento del me-

canismo de cuatro barras del TVC con una solución del ED,MOMBFOA y NSGA-II dentro del rango que favorece la con-strucción del mecanismo . . . . . . . . . . . . . . . . . . . . . 89

vii

Page 8: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

6.7. Diseño Asistido por Computadora del TVC . . . . . . . . . . . 90

8.1. Soluciones del frente ltrado de MOMBFOA . . . . . . . . . . 958.2. Soluciones del frente ltrado de ED parte 1 . . . . . . . . . . . 968.3. Soluciones del frente ltrado de ED parte 2 . . . . . . . . . . . 978.4. Soluciones del frente ltrado de NSGA-II parte 1 . . . . . . . 988.5. Soluciones del frente ltrado de NSGA-II parte 2 . . . . . . . 998.6. Soluciones del frente ltrado de NSGA-II parte 3 . . . . . . . 1008.7. Soluciones del frente ltrado de NSGA-II parte 4 . . . . . . . 1018.8. Soluciones del frente ltrado de NSGA-II parte 5 . . . . . . . 1028.9. Soluciones del frente ltrado de NSGA-II parte 6 . . . . . . . 103

viii

Page 9: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Lista de tablas

4.1. Algoritmos básicos de inteligencia colectiva . . . . . . . . . . . 344.2. Pasos del algoritmo QB-OA. . . . . . . . . . . . . . . . . . . . 364.3. BFOA original. Los parámetros de entrada son el número de

bacterias Sb, límite del paso quimiotáctico Nc, límite del pa-so de nado Ns, límite del ciclo de reproducción Nre, númerode bacterias a reproducir Sr, límite del ciclo de eliminación-dispersiónNed, tamaño de paso Ci (y probabilidad de eliminación-dispersión Ped. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.4. Descripción de los parámetros del BFOA . . . . . . . . . . . . 404.5. Parte 1 de las propuestas derivadas de lo algoritmos básicos . 414.6. Parte 2 de las propuestas derivadas de lo algoritmos básicos . 424.7. Estudio de los procesos del BFOA . . . . . . . . . . . . . . . . 494.8. Híbridos con el BFOA . . . . . . . . . . . . . . . . . . . . . . 524.9. Aplicaciones usando BFOA . . . . . . . . . . . . . . . . . . . 56

5.1. Descripción de los parámetros del MBFOA . . . . . . . . . . . 605.2. MBFOA. Los parámetros de entrada son el número de bacte-

rias Sb, límite del paso quimiotáctico Nc, número de bacteriasa reproducirse Sre, factor de escalamiento F, porcentaje deltamaño de paso R y el número de generaciones GMAX. . . . . 61

5.3. Pseudocódigo para calcular la distancia de aglomeramiento.A[1] es el valor máximo de la t-ésima función y A[a] es suvalor mínimo. Size() es una función de Matlab que devuelveel tamaño de las y columnas de una matriz. . . . . . . . . . . 64

5.4. Parámetros para el experimento 2 . . . . . . . . . . . . . . . . 665.5. Parámetros para el experimento 3 . . . . . . . . . . . . . . . . 695.6. Parámetros para el experimento 4 . . . . . . . . . . . . . . . . 71

ix

Page 10: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

5.7. MOMBFOA. Los parámetros de entrada son el número debacterias Sb, límite del paso quimiotáctico Nc, factor de es-calamiento F, porcentaje del tamaño de paso R y el númerode generaciones GMAX. Donde Fo corresponde al numero defunciones objetivo. Size() es una función de Matlab que de-vuelve el tamaño de las y columnas de una matriz. . . . . . . 74

6.1. Estadísticas de la métrica Two set coverage. Desv. Est.: Desviaciónestándar. El signo

√: Si existe diferencia signicativa. El signo

=: No existe diferencia signicativa. . . . . . . . . . . . . . . . 836.2. Estadísticas de la métrica Hypervolume. Desv. Est.:Desviación

estándar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846.3. Identicando al mejor algoritmo con la prueba U Mann de

Whitney con muestra de la métrica Hypervolume. El signo√:

Si existe una diferencia signicativa. El signo=: No existe unadiferencia signicativa. El signo + identica al mejor algorit-mo, el signo - identica al peor algoritmo de la comparación.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

6.4. Soluciones de cada algoritmo dentro del rango que favorece laconstrucción del TVC . . . . . . . . . . . . . . . . . . . . . . 88

x

Page 11: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 1

Introducción

1.1. Antecedentes

Los problemas de optimización son la interpretación de los problemas com-plejos o difíciles de resolver del mundo real, donde se busca encontrar unasolución o conjunto de soluciones que maximice o minimice una cierta medidade calidad, conocida como función objetivo. Los problemas de optimizacióndebido a su complejidad requieren de técnicas y estrategias especícas pararesolverlos y éstos se clasican de acuerdo a las características que presentan,por lo general, radican en la clasicación que corresponden a la optimizaciónbasada en la existencia de restricciones y en el número de funciones objetivos,aunque pueden componerse de dos o más de las clasicaciones [22].

El diseño de máquinas como carros, aviones, aparatos electrodomésticos,retroexcavadoras, cámaras fotográcas automáticas, entre muchos más sepueden considerar como problemas complejos debido a lo difícil que es re-solverlos ya que involucran muchos objetivos o compromisos que generalmen-te se encuentran en conicto. Para lograr el diseño óptimo de estás máquinasse requiere de tiempo, conocimiento y experiencia. En el área de ingenieríalas máquinas que realizan ciertas funciones o tareas especícas son vistoscomo sistemas [55].

En algunos trabajos de investigación proponen dos enfoques para realizardiseños de sistemas, el enfoque Mecatrónico el cual requiere de que el siste-ma mecánico y de control sean diseñados como un sistema integrado, por lo

1

Page 12: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

tanto, un problema de diseño concurrente es propuesto para obtener todo elsistema. El segundo enfoque es el Diseño Paramétrico Cinemático (DPC) elcual consiste en asignar la mejor combinación de valores a los parámetros quedescriben el sistema a diseñar. Los parámetros son el resultado de un análisisy síntesis Cinemático que cumplen con las posiciones, velocidades, dimen-siones, formas de las piezas, entre otras, del sistema a diseñar. Con estosparámetros el diseñador puede proponer el conjunto de funciones y restric-ciones para cuanticar el rendimiento del sistema y obtener el diseño óptimode este. Cada una de las funciones y restricciones propuestas son probadashasta lograr obtener un diseño óptimo, de no lograrlo se tiene que rehacer elanálisis y síntesis Cinemático del sistema a diseñar. Esto signica la creaciónde soluciones potenciales en la ausencia de un algoritmo bien denido o pre-decir la conguración de la solución [53]. Una alternativa para resolver elproblema de diseño de sistemas es modelar al DPC como un problema deoptimización (PO) [52], [58].

Actualmente, los ingenieros se asisten con herramientas computacionales paradiseñar los sistemas lo cual es conocido como Diseño Asistido por Computa-doras (CAD), ésto implica tener experiencia y conocimiento de las herrami-entas computacionales ya que no son fáciles de congurar.

En estos días, existen técnicas que buscan soluciones buenas en tiempos ra-zonables conocidas como metaheurísticas. Algunas de estas técnicas emulano simulan procesos naturales o evolutivos que se agrupan en los llamados al-goritmos bio-inspirados, que pueden ser usadas para resolver DPC que gene-ralmente cuentan con más de una función objetivo y restricciones que usual-mente entran en conicto ya que éstas cuantican el desempeño del sistemay la estructura mecánica del mismo que los hacen aún más complejos. Porlo general, un DPC se modela como un Problema de Optimización Multi-objetivo con restricciones (POMR) por la presencia de estas características.Cabe mencionar, que el DPC en algunos casos puede ser dinámico debido aque por lo menos una función objetivo y/o restricción es dinámica. Sin em-bargo, este tipo de DPC dinámico puede resolverse como un POMR estáticoaunque para el área de optimización puede considerarse dinámico si la fun-ción objetivo y/o la restricción del problema al ser evaluada con los mismosparámetros en diferentes tiempos su valor cambia [7].

Al resolver un POMR se obtiene un conjunto de soluciones óptimas que son

2

Page 13: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

útiles para el diseño de sistemas en Mecatrónica pero la decisión de cualsolución usar depende del diseñador ya que entran en juego aspectos comoel costo y el tiempo de fabricación del diseño. Existen métodos de progra-mación matemáticas que resuelven POMR [49], pero a veces es complicadoutilizarlos por la complejidad de los problemas, por lo que se opta por latransformación del problema original, en algunos casos las funciones obje-tivo del problema pasan hacer restricciones [33], lo cual requiere de muchoconocimiento matemático y de tiempo para encontrar una solución al proble-ma, además de que se opta por separar a las funciones objetivos del problemay resolverlas por separado para encontrar un punto inicial de búsqueda parael problema. Puede existir el caso de que la tranformación a un problemaperjudique la obtención de resultados correctos y esto es porque algunos pro-blemas son muy sensibles a las condiciones iníciales del problema con respectoal punto inicial de búsqueda [57]. Por último, la programación matemáticasólo proporcionan una solución para el diseñador [11]. Estas son algunas delas razones por las que diseñadores optan por utilizar otras técnicas que lespermita reducir tiempo para resolver estos problemas sin esfuerzos ni compli-caciones matemáticas, y es por ello que en esta tesis se propone un algoritmobio-inspirado de inteligencia colectiva para resolver este tipo de problemas,área que a continuación se describe.

En los años 1990's surge un conjunto de algoritmos que emulan los compor-tamientos colaborativos hallados en animales muy simples como insectos oaves. A este conjunto de nuevos algoritmos se les agrupó en el área de laInteligencia Colectiva (Swarm Intelligence en inglés).

Los algoritmos que dieron origen a esta área fueron el de Optimización me-diante Cúmulos de Partículas (PSO) [36] y el algoritmo de Colonia de Hormi-gas (Ant Colony)[28]. PSO está basado en las coreografías que siguen algunasaves al buscar alimento o refugio y está diseñado para resolver problemasde optimización numérica. El algoritmo de Colonia de Hormigas modela di-ferentes comportamientos encontrados en los hormigueros y se ha utilizadoprincipalmente para resolver problemas combinatorios. Uno de los algoritmosmás novedosos del área de inteligencia colectiva es el algoritmo que emula elcomportamiento de forrajeo a nivel de bacterias.

Las ideas iníciales de este algoritmo basado en bacterias fueron propuestaspor Bremermann [8] y luego aplicadas por Bremermann y Anderson en el

3

Page 14: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

entrenamiento de una red neuronal [9]. Del modelo inicial llamado, Bacte-ria Chemotaxis (BC), se emula la reacción de los atractores químicos de lasbacterias, y se han reportado estudios de aplicación en problemas de opti-mización numérica no restringida [51], [2]. Sin embargo, el algoritmo másconocido es el propuesto por Passino [56] llamado algoritmo de bacterias enbúsqueda de alimento (BFOA) que, a diferencia del modelo BC, tiene encuenta el proceso completo de forrajeo de las bacterias E.Coli: Chemotaxis(movimientos de giro y nado), agrupamiento, reproducción y eliminación-dispersión.

Mezura-Montes y Hernández-Ocaña [47] proponen el algoritmo MBFOA de-rivado del BFOA, que implementa mecanismos que reducen el número deparámetros que eran requeridos para la funcionalidad del BFOA. Asimismo,se emplea un mecanismo que permita resolver problemas de optimización conrestricciones, logrando con ésto un algoritmo robusto con un costo computa-cional moderado con respecto a los algoritmos encontrados en la literaturaespecializada.

En esta tesis se propone al MBFOA para resolver un POMR (donde unarestricción es dinámica) derivado del diseño paramétrico de un sistema Me-catrónico llamado Transmisión de Variación Continua (TVC). Ésto con losobjetivos de adaptar al MBFOA para resolver este tipo de problemas, pro-mover el uso de heurísticas de Inteligencia Colectiva en el área de Ingenieríay proponer al MBFOA como un algoritmo que permita ahorrar tiempo, es-fuerzo y costo en el proceso de diseño de sistemas mecatrónicos.

1.2. Planteamiento del problema

Un POMR se dene matemáticamente de la siguiente forma:

Minimizar ó maximizar:

Φm(~x), m = 1, 2, ...,M ; (1.1)

Sujeto a:

4

Page 15: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

gj(~x) ≥ 0, j = 1, 2, ..., J ; (1.2)

hk(~x) = 0, k = 1, 2, ..., K; (1.3)

Donde Φ representa el conjunto de funciones objetivo, g el conjunto de res-tricciones de desigualdad y h el conjunto de restricciones de igualdad delproblema.

Donde ~x ∈ <n y n ≥1, es el vector de variables de decisión ~x=[x1, x2,...,xn]T , y cada xi, i=1,...,n está delimitada por límites inferior y superior Li ≤xi ≤ Ui que denen al espacio de búsqueda S ; M es el número de funcionesobjetivo, J el número de restricciones de desigualdad y K el número de res-tricciones de igualdad. Donde se búsca encontrar los vectores óptimos paralas funciones objetivo M que satisface al conjunto de restricciones del pro-blema encontrados en F que es la región factible de S, por lo tanto, F⊆ S [24].

En esta tesis se resolverá el TVC el cual es un POMR donde una de susrestricciones es dinámica desde el punto de vista del área de optimización[7], por lo tanto, llamaremos al POMR como un Problema de OptimizaciónDinámico Multi-Objetivo con Restricciones (PODMR).

Aunque existen trabajos en el estado del arte que dan una solución compe-tente y robusta para resolver el problema del TVC con algoritmos evolutivoscomo, evolución diferencial (ED) [57], [48], no se encuentra en la literaturaespecializada evidencia de uso de algoritmos basados en bacterias en este tipode PODMR.

1.3. Objetivo general y especícos

El objetivo de este trabajo es optimizar un sistema mecatrónico complejo,modelado como un PODMR usando el algoritmo modicado del forrajeo debacterias para resolver problemas de optimización con restricciones (MB-FOA) propuesto en [46].

La hipótesis a la que está sujeta esta investigación es como sigue:

5

Page 16: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Es posible adaptar el algoritmo modicado del forrajeo de bacterias pararesolver un problema de optimización dinámica multi-objetivo con restric-ciones y obtener resultados competitivos con respeto a algoritmos del estadodel arte.

Objetivos especícos

Proponer modicaciones al MBFOA para el manejo de funciones multi-objetivo.

Implementar el algoritmo modicado para resolver el problema delTVC.

Realizar pruebas estadísticas para medir el rendimiento del algoritmopropuesto y compararlo con otros algoritmos del estado del arte.

1.4. Justicación

Debido a la complejidad de diseñar sistemas mecatrónicos, se requieren es-trategias que faciliten la optimización del proceso de diseño, el cual consisteen obtener el conjunto de parámetros que describen al sistema a diseñar y,posteriormente, encontrar la mejor combinación de valores para ese conjuntode parámetros. El conjuto de parámetros del sistema son variables de lasfunciones matemáticas que describen el comportamiento y desempeño Cine-mático del sistema conocidas como funciones objetivo, las cuales se tienenque optimizar. Una característica de la formulación matemática de un siste-ma es que por lo menos una de las funciones objetivo y/o restricciones (fun-ciones mátematicas que representan limitantes físicas o de funcionamiento)son dinámicas, es decir, la optimización de una de ellas esta estrechamenteligada a la optimización de las restantes funciones matemáticas que descri-ben el sistema. Ésto hace que el proceso de diseño sea complejo, ya quemediante técnicas de programación matemática es difícil calcular resultadosde funciones dinámicas que cambian durante el tiempo y movimiento delmecanismo a diseñar, es por ello, que se opta por modelar estos diseños co-mo problemas de optimización dinámicos multi-objetivo con restricciones, loscuales pueden ser resueltos con metaheurísticas como MBFOA.

6

Page 17: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Los primeras propuestas de heurísticas para resolver problemas como el TVC(que es un problema PODMR), se hicieron a partir de algoritmos evolutivos,en especíco el algoritmo de Evolución Diferencial (ED). Por tal motivo,es importante explorar y explotar nuevas metaheurísticas que resuelvan estetipo de problemas y ofrecer al área de Ingeniería mayor diversidad de estrate-gias para la solución de sus presentes y futuras problemáticas al momento dediseñar piezas mecánicas.

En este trabajo se presenta una metaheurística de inteligencia colectiva pararesolver problemas PODMR, tomando coma base al algoritmo propuesto por[46], llamado MBFOA y se realizarán los estudios pertinentes para desarro-llar un algoritmo capaz de resolver PODMR, promoviendo con ello el uso delos algoritmos de inteligencia colectiva, y obtener un algoritmo robusto y útilpor los diseñadores de sistemas mecánicos.

El impacto de este trabajo además se reejará en el diseño óptimo de sis-temas mecatrónicos que pueden ser aplicados para la construcción de ve-hículos verdes que no requieren de combustibles fósiles sino combustibles nocontaminantes (energía eléctrica, solar). Por ende, el benecio es directa-mente para el medio ambiente, conando que el apoyo y la construcción delestos vehículos contribuya en la reducción de contaminación a la atmosferay disminuir el uso de recursos no renovables como el petróleo.

1.5. Alcances y limitaciones

1.5.1. Alcances

El algoritmo resolverá únicamente una instancia real y compleja de unproblema de optimización dinámico multi-objetivo con restricciones.

El algoritmo devolverá un conjunto de soluciones factibles en su expe-rimentos, pero no se atacará el problema de la selección de la soluciónmás conveniente, pues esa labor la realizará el diseñador experto eneste caso.

Los resultados obtenidos se evaluarán usando métricas de desempeñoencontradas en la literatura especializada (HyperVolume y Two set co-

7

Page 18: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

verage [34]). Principalmente se utilizarán métricas unarias y binariasdonde no se requiere conocer la solución óptima del problema a resolver,ya que no se conocen soluciones al problema debido a que es un pro-blema real de reciente aparición en el área de Ingeniería Mecatrónicadel CIDETEC-IPN.

La solución producida por el algoritmo deberá ser competitiva con res-pecto a las reportadas por algoritmos del estado del arte.

1.5.2. Limitaciones

Se generará el diseño óptimo del TVC pero no se construirá sicamente.

1.6. Organización de la tesis

La tesis esta organizada de la siguiente manera:

Capitulo 2. Optimización. En este capítulo se dene el concepto deoptimización, se describen los elementos que conforman un problema deoptimización y se incluye la descripción de optimización multi-objetivo.

Capitulo 3. Diseño Mecatrónico. En este capítulo se describe la im-portancia de diseño óptimo en Ingeniería, se menciona en qué consisteel diseño paramétrico, y se describe el problema de Diseño Paramétri-co Cinemático a resolver en esta tesis, el cual es modelado como unproblema de optimización dinámico multi-objetivo con restricciones(PODMR). Finalmente se incluyen los trabajos encontrados en la li-teratura especializada que dan una solución a este problema.

Capitulo 4. Algoritmos de Inteligencia Colectiva. En este capí-tulo se da una breve introducción a la Inteligencia Colectiva (IC), sedescriben los elementos generales de estos algoritmos y se presenta la

8

Page 19: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

revisión de la literatura especializada de los algoritmo de IC, en parti-cular de los algoritmos basado en el forrajeo de bacterias.

Capitulo 5. Algoritmo de Optimización del Forrajeo de Bac-terias Modicado para problemas Multi-Objetivo (MOMB-FOA). En este capítulo se describe el algoritmo Modied-BacterialForaging Optimization (MBFOA), su pseudocódigo y la descripción desu funcionamiento. Además se presentan las modicaciones al MBFOApara resolver un problema multi-objetivo, asimismo las adaptacionesa los procesos del algoritmo resultado de diversos experimentos paramejorar el desempeño de búsqueda.

Capitulo 6. Resultados. En este capítulo se presentan los resultadosobtenidos por MOMBFOA para el PODMR y la comparación de susresultados con los algoritmos Evolución Diferencial y NSGA-II.

Capitulo 7. Conclusiones y trabajos futuros. En este capítulo sepresentan las conclusiones de esta tesis y los futuros trabajos a realizar.

9

Page 20: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 2

Optimización

2.1. Concepto de optimización

La optimización es un proceso que pretende encontrar una solución o con-junto de soluciones que maximice o minimice una cierta medida de calidad,conocida como función objetivo. Dentro de los conceptos más destacadospara el término optimización se encuentran:

Proceso de buscar la mejor solución posible a un problema, bajo ciertascircunstancias [60].

Método matemático para determinar los valores de las variables quehacen máximo el rendimiento de un proceso o sistema [30].

Los métodos de optimización son conocidos como técnicas de programaciónmatemática, las cuales son aplicables a problemas de toma de decisiones, asícomo al establecimiento de las mejores soluciones posibles. Los problemas deoptimización pueden clasicarse de acuerdo a las siguientes características[22]:

1. Basándose en la existencia de restricciones

Con restricciones

Sin restricciones

10

Page 21: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

2. Basándose en la naturaleza de las variables de decisión

Problemas estáticos o paramétricos

Problemas dinámicos o de trayectorias (las variables son funciónde un parámetro determinado)

3. Basándose en la naturaleza de las ecuaciones involucradas

Problemas lineales

Problemas no lineales

Problemas de programación geométrica

Problemas de programación cuadrática

4. Basándose en los valores permisibles de las variables de diseño

Problemas de programación entera

Problemas de programación con valores reales

Problema donde se busca un orden óptimo de elementos, (proble-ma de optimización combinatoria).

5. Basándose en la naturaleza determinista de las variables

Problemas estocásticos

Problemas deterministas

6. Basándose en la separabilidad de las funciones

Problemas separables

Problemas no separables

7. Basándose en el número de funciones objetivo

Mono-objetivo

Multi-objetivo

11

Page 22: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Los problemas de optimización en su forma matemática presentan caracterís-ticas especiales como: función objetivo lineal o no lineal, con restricciones deigualdad (lineal o no lineal) o desigualdad (lineal o no lineal), con restric-ciones activas y diferente número de variables en el problema. El modeladopara el problema de optimización numérica con restricciones que representaun problema paramétrico es el siguiente:

Minimizar o maximizar f(~x)

sujeto a las restricciones:

gi(~x)≤ 0hj(~x)= 0i=1,2,...,pj=1,2,...,q

donde ~x es el vector de variables de dimensiones n, f(~x) es la función objetivo,gi(~x) es el conjunto de p restricciones de desigualdad que debe ser menor quen porque si es igual se tiene un conjunto de ecuaciones simultaneas y si esmayor, el problema está sobre descrito, y nalmente hj(~x) es el conjunto deq restricciones de igualdad.

2.2. Función objetivo

La función objetivo representa la relación matemática que permite cuanticarel desempeño del sistema u objeto de interés, la cual es determinada despuésde un profundo análisis del problema. En la función objetivo es donde seevalua el conjunto de valores del vector de variables de diseño para determi-nar si éstos son los valores óptimos que maximizan o minimizan el problema,según sea el caso.

2.3. Variables de diseño

Las variables de diseño son el conjunto de elementos paramétricos que des-criben el sistema u objeto de interés, donde cada variable proporciona una

12

Page 23: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

información mínima que en conjunto permiten describir el sistema u objetopara ser diseñado de manera óptima. Las variables de diseño las establece eldiseñador cuando hace el análisis del sistema u objeto y determina el rangode valores factibles que puede tomar cada una de las variables, ésto con eln de que al momento de encontrar los valores óptimos, el diseño sea factiblede construir.

Cuando el diseño del sistema u objeto se lleva a cabo tomando en cuenta elconjunto de variables de diseño, se denomina diseño paramétrico.

2.4. Restricciones de diseño

Las restricciones de diseño son el conjunto de limitaciones del sistema quese deben satisfacer para producir un diseño aceptable. Las restricciones decomportamiento o desempeño del sistema son denominadas restricciones fun-cionales o de comportamiento, mientras que las restricciones que representanlimitaciones físicas tales como disponibilidad, facilidad de fabricación y trans-portabilidad son denominadas restricciones geométricas.

Las restricciones son estáticas cuando únicamente dependen de la evalu-ación del conjunto de parámetros del sistema. Cuando se involucran aspectosdinámicos (control o estados del sistema) o cuando se evalúan en un periodode tiempo (intervalo de tiempo durante el que se optimiza el sistema), lasrestricciones son dinámicas.

2.5. Optimización Multi-objetivo

La optimización muti-objetivo (POM) se traduce como la optimización dedos o más funciones objetivos que describen a un problema, es decir, consisteen la búsqueda de los mejores valores a las variables del problema, que enconjunto deben satisfacer las restricciones y optimizar a cada una de las fun-ciones objetivos. Sin embargo, optimizar dos o más funciones objetivos delmismo problema es un trabajo complejo de realizar ya que las funciones ob-jetivos pueden entrar en conicto por lo que al mejorar el valor para algunode ellos, empeora el valor de las demás.

13

Page 24: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Un ejemplo de un problema multi-objetivo en la vida real puede ser el de unaempresa productora de artículos de limpieza (cloro, jabones, aromatizantes,entre otros) que busca producir un desinfectante con las proporciones ade-cuadas de químicos que hagan de este producto no solo una novedad en elmercado si no que se produzca con el mínimo costo y al mismo tiempo que noreduzca la eciencia del producto, es decir, que sea un producto de calidad.Como podemos observar el problema presenta dos objetivos en conicto, elcosto de producción y la eciencia del producto, además podrían entrar enjuego otros objetivos, como por ejemplo, si se deseará dar un color al líquidodesinfectante, cuál sería el color más adecuado que no impacte en el costode producción. Es así como en la vida diaria las empresas, áreas de investi-gación y las personas se enfrentan a la toma de desiciones de problemas queenvuelven muchos objetivos.

Los POM involucran aspectos que podemos deducir con ayuda del ejemploanterior. En primer lugar, bajar los costos de producción, es muy probableque implique utilizar pocos químicos o de baja calidad lo que impacta enla eciencia del producto, por otra parte, si hacemos que el producto sea elnúmero uno en matar o inactivar a los microorganismos esto seguramenteaumentaría el costo de producción, ya que se tendría que utilizar una com-binación de químicos para que éstos fueran más efectivos. Esta es la primeracaracterística de los POM, que sus objetivos generalmente entran en conic-to, normalmente, si mejoramos un objetivo empeoramos el otro. La segundacaracterística, es que al existir más de una función objetivo no es posibleencontrar una sola solución, sino que se busca encontrar un conjunto de solu-ciones que mejoren cada una de las funciones objetivos. Por último, al obtenerun conjunto de soluciones, es necesario que el tomador de decisiones selec-cione la solución a implementar; esto es, en nuestro ejemplo, alguién tendráque decidir si se invierte en obtener un producto impactante pese al costo deproducción o, se opta por una inversión moderada para producir un productode calidad media. En la sección 1.2 se dene matemáticamente al problemade optimización multi-objetivo.

14

Page 25: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

2.6. Dominancia de Pareto

Al resolver un POM se utiliza el concepto de dominancia, es decir, para losPOM se obtiene un conjunto de soluciones que satisfacen a las funcionesobjetivo, durante la búsqueda de estas soluciones, es necesario identicaraquellas soluciones que sean dominadas por otras para eliminarlas del con-junto de soluciones, a partir de las cuales el tomador de decisiones podráescoger según sus necesidades y metas. El concepto de dominancia aplica dela siguiente manera [24]:

Una solución ~x1 domina a otra solución ~x2 si:

La solución ~x1 es mejor que la solución ~x2 en todos sus objetivos

La solución ~x1 es mejor que la solución ~x2 en al menos un objetivo ytiene valores similares a los restantes objetivos

Si alguna de las condiciones es violada, entonces la solución ~x1 no domina ala solución ~x2. A partir de dos soluciones ~x1 y ~x2 existen tres posibilidades:

1. ~x1 domina a ~x2

2. ~x1 es dominada por ~x2

3. ~x1 y ~x2 son no dominadas entre sí.

Para ejemplicar gracamente lo anterior, observe la gura 2.1, donde semuestra un problema de dos objetivos ambos a minimizar, el eje x represen-ta la función objetivo f1, y y representa a la función objetivo f2.

En la gura 2.1 encontramos 5 soluciones (puntos) identicados en el planopor (1,4),(1.5,5), (2,3), (3.5,4) y (4,1). Los puntos (1,4),(2,3) y (4,1) domi-nan a los puntos (1.5,5), (3.5,4). Analizando al punto (1.5,5) vemos como esdominado por el punto (1,4), ya que los valores para los eje x,y del punto(1.5,5) son mayores y se trata de minimizar estos valores. Del mismo modo,la solución del punto (3.5,4) es dominada por el punto (2,3). Una estrategiaeciente para entender la dominancia es trazar una L en cada punto y todolo que quede dentro de la L de un punto es dominado por ese punto (líneaspunteadas de la gura 2.1). Así en este ejemplo, todos los puntos (1,4), (2,3),(4,1) son no dominados entre si.

15

Page 26: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 2.1: Representación de dominancia de Pareto

2.7. Óptimo de Pareto

En un POM es posible obtener un conjunto de soluciones factibles no domi-nadas, para determinar el óptimo de Pareto. De acuerdo a estas solucionesse sigue la siguiente denición [16]:

Sea I∗ el conjunto de funciones objetivos y Ω el conjunto de solucionesfactibles, se dice que un vector de variables de decisión ~x∗ ∈ Ω es un óp-timo de Pareto, si para toda ~x ∈ Ω se cumple:

1. ∀i ∈ I∗: fi( ~x∗) ≤ fi(~x)

2. ∃ j ∈ I∗: fj( ~x∗) < fj(~x)

Al conjunto de soluciones que conforman el óptimo de Pareto se denominaConjunto de óptimos de Pareto (P ∗), denida como:

P ∗= ~x∗ ∈ Ω

16

Page 27: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

donde ~x∗ es un vector de variables de decisión que conforman una soluciónfactible no dominada y por lo tanto, pertenece al óptimo de Pareto.

2.8. Frente de Pareto

El frente de Pareto (F ) representa el conjunto de óptimos de Pareto. For-malmente, F es el conjunto:

F=f(~x) ∈ <I | ~x in P ∗

La gura 2.2, presenta el frente de Pareto de un conjunto de óptimos dePareto, el cual es tomado del ejemplo de la gura 2.1, donde el frente dePareto lo conforman 3 puntos, las tres soluciones (1,4), (2,3) y (4,1).

Figura 2.2: Frente de Pareto

En un POM se desean encontrar las soluciones que se encuentren en el frenteóptimo de Pareto y que éstas esten bien distribuidas en dicho frente [24],es decir, que se encuentren diversas soluciones(puntos) en todo el espacio de

17

Page 28: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

las funciones objetivo. Estas dos características permiten que se encuentransoluciones buenas, llamadas también soluciones compromiso, para el tomadorde decisiones.

18

Page 29: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 3

Diseño Mecatrónico

En este capítulo se describe la importancia del diseño óptimo en Ingeniería,en qué consiste el diseño parámetrico y se detalla el caso de estudio a resolveren esta tesis, dando a conocer su modelado como problema de optimización.Además se presentan dos trabajos encontrados en la literatura especializadaque abordan este problema.

3.1. Diseño óptimo en Ingeniería

Como parte de las actividades de Ingeniería se realiza el diseño de objetos oproductos como los sistemas mecatrónicos. Estos diseños deben ser óptimos,lo cual implica un reto para los ingenieros en diseño. El diseño ingenieril sedice que es óptimo cuando el proceso de diseñar un producto u objeto cumplecon todas las restricciones que implique su funcionamiento y comportamien-to, optimizando costo y tiempo de construcción. El diseño debe cumplir conla integración y optimización de los elementos que conforman un sistemalos cuales son el sistema mecánico, el sistema eléctrico y el control. Ejemplode estos objetos son aparatos electrodomésticos, carros, computadoras, celu-lares, aviones o procesos industriales complejos.

En Ingeniería es de mucha importancia cuidar aspectos como [31]:

Que el diseño sea fácil de reconguración.

Que el diseño sea factible de construir con elementos tecnológicamente

19

Page 30: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

avanzados.

Que el costo-rendimiento y calidad al construir el diseño sea lo másfavorable para todos los elementos involucrados.

De acuerdo a estos aspectos los elementos que conforman un sistema y a losdiversos objetos que se diseñan hacen que el proceso de diseño sea complejo,ya que se debe cuidar cada detalle para obtener un objeto de calidad, con elfuncionamiento y desempeño deseado.

Los sistemas a diseñar por los ingenieros se traducen como un problemaparamétrico, ya que el sistema es descrito por un conjunto de funcionesmatemáticas, donde el reto es encontrar el mejor conjunto de valores parael diseño del sistema. Al proceso de búsqueda de los mejores valores se leconoce como optimización del diseño, donde el ingeniero de diseño obtieneesos valores óptimos. Dicho conjunto de valores óptimos se obtiene de mi-nimizar o maximizar la función matemática que describe el funcionamientodel sistema, cuidando satisfacer el conjunto de restricciones de igualdad y/odesigualdad al que está sujeto el sistema. Dichas restricciones también sonpresentadas como funciones matemáticas. Cabe mencionar, que es común quelos sistemas al ser diseñados se involucren funciones objetivos dinamicas y/oque al menos una de las restricciones lo sea [31] .

Por otra parte, debido a la complejidad de los sistemas actuales, la mayo-ría de las veces las funciones matemáticas que cuantican el desempeño delsistema están en conicto, dando de forma natural un problema de diseñomulti-objetivo. Para la obtención de la solución de este tipo de problemas, seha seguido el enfoque de optimización estática y el uso de técnicas de progra-mación matemática, ambas son las bases del Diseño Paramétrico Cinemático(DPC).

Actualmente, el enfoque de optimización dinámica resulta interesante parael área de Ingeniería, ya que permite considerar en forma concurrente losaspectos estructurales y dinámicos del sistema en cuestión.

Una de las desventajas del enfoque estático y el uso de técnicas de progra-mación matemática es que el comportamiento mécanico y de control de unsistema se consideran por separado para resolverlos dando lugar a que nunca

20

Page 31: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

se produzca un funcionamiento correcto de ambos comportamientos.

Es importante destacar que el traducir el sistema como un problema paramétri-co facilita la búsqueda de los valores óptimos para el conjunto de parámetrosdel sistema, ya que, permite modelar el diseño como un problema de opti-mización y por lo tanto, se puede hacer uso de herramientas computacionalespara agilizar el proceso de diseño.

Actualmente, la implementación de metaheurísticas inspiradas en la natu-raleza y la evolución de las especies, permite a los ingenieros diseñadoresencontrar esas soluciones potenciales para el sistema [57], [48].

Los dos enfoques principales de diseño ingenieríl son, el enfoque de DiseñoConcurrente, que consiste en encontrar la conguración apropiada de com-portamiento del sistema dependiendo de la conguración estructural y decontrol del sistema de forma dinámica. Por otra parte, el Diseño ParamétricoCinemático (basado en el enfoque estático) consiste en determinar el conjun-to de valores óptimos a los parámetros que describen el sistema en diseño,dichos parámetros denidos en el análisis y síntesis realizada previamente enel DPC. El caso de uso a resolver en esta tesis se describe con el enfoqueDPC [31].

3.2. Diseño Paramétrico Cinemático

El DPC consiste en encontrar y asignar la mejor combinación de valores alconjunto de parámetros que describe el sistema a diseñar, para ello es nece-sario primero realizar el análisis y síntesis del sistema o mecanismo. El análisispermite determinar si el mecanismo es adecuado para desarrollar cierta tareao trabajo, y en la síntesis se determinan tamaños, formas, composiciones ydisposiciones de las piezas del sistema para que desempeñen una tarea demovimiento particular. Aunque se dedique mucho esfuerzo en la etapa deanálisis, el objetivo fundamental es la síntesis, es decir, el diseño de unamáquina, un mecanismo o un sistema. Los tipos de síntesis son detallados enla sección 3.2.1.

En el enfoque de DPC, los diseñadores optan por diseñar el sistema conayuda de sistemas de cómputo; lo cual se conoce como sistemas de Diseño

21

Page 32: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Asistido por Computadoras (DAC), donde se diseña en 2D y 3D, lo quepermite la simulación de lo diseñado, genera diseños con cierta facilidad yrapidez, aunque el diseñador debe tener conocimiento del manejo de herrami-entas computacionales para poder obtener diseños de calidad. Sin embargola desventaja de utilizar DAC es que el ingeníero de diseño debe tener amplioconocimiento y experiencia en el manejo de la herramienta computacional yaque los DAC no son necesariamente fáciles de congurar, ni de usar.

3.2.1. Síntesis cinemática

Existen dos tipos de síntesis, la dimensional que busca encontrar los valo-res de un conjunto de parámetros que describen al sistema, y la síntesis detipo que dene la topología del sistema, es decir, el conjunto de elementosmecánicos más apropiados para llevar a cabo una tarea especíca. Para lasíntesis dimensional existen tres casos [53]:

Generación de función

Generación de trayectoria

Generación de movimiento

En la generación de función, un movimiento de entrada está correlacionadocon un movimiento de salida de un mecanismo. El problema de generación detrayectoria se relaciona con el control de un punto en un plano, de tal formaque éste pueda seguir una trayectoria previamente establecida. Finalmente,el problema de generación de movimiento se dene como el control de unalínea en el plano, de forma tal que un conjunto de posiciones secuenciales sealcanzan. El problema de generación de movimiento es más general que elproblema de generación de trayectoria [53].

En esta tesis, se trata el diseño del mecanismo de entrada de un sistema de-nominado Transmisión de Variación Continua (TVC) el cual se clasica comoun problema de generación de movimiento, y que puede ser resuelto comoun Problema de Optimización Dinámico Multi-objetivo con Restricciones. Sibien este problema es estático, bajo algunas consideraciones del ingeniero dediseño y desde la perspectiva computacional se puede producir un problemadinámico, debido a la restricción dinámica del TVC.

22

Page 33: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

3.3. Caso de estudio

El caso de estudio de esta tesis es el Sistema de Transmisión de VariaciónContinua (TVC) el cual es un sistema completo de transmisión unilateralpara pedaleo basculante con sistema de cambio de velocidades. La funciónprincipal del sistema es convertir el pedaleo batiente de entrada (tipo escala-dora ja) en movimiento rotatorio sobre la rueda motriz o de impulsión delvehículo o sistema en el cual se instala. El TVC de tipo basculante, fue prop-uesto originalmente para la creación de vehículos para discapacitados, dondela fuerza de impulso se obtiene de las extremidades superiores del individuo.Así mismo, este modelo permite una posible implementación de la trans-misión en vehículos con baja capacidad de carga, como vehículos híbridos deexploración con impulsión de motor de movimiento continuo. A continuaciónse presentan las funciones objetivo y restricciones del sistema aunque su de-tallada descripción se encuentra en el informe que describe el diseño del TVCmatemáticamente [32].

Para efectos del análisis del sistema, se puede dividir en tres subsistemas:

1. Sistema de impulsión (Motor de entrada o sistema de pedaleo).

2. Mecanismo de entrada (Eje pedalier).

3. Mecanismo manivela-biela-corredora (MBC).

La gura 3.1 muestra al TVC que utiliza un mecanismo de cuatro barras conel objetivo de convertir el movimiento continuo de un motor de entrada, enmovimiento basculante.

En la gura 3.2 se muestra el diagrama de cuerpo libre del mecanimo decuatro barras. La conguración de dicho mecanismo es la manivela-balancín.

Donde:

r1 es la longitud del eslabón jo o de tierra.

r2 es la longitud de la manivela.

23

Page 34: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 3.1: Transmisión de Variación Continua

Figura 3.2: Mecanismo de cuatro barras del TVC

24

Page 35: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

r3 es la longitud del acoplador.

r4 es la longitud del balancín.

θ1 es el ángulo del eslabón jo.

θ2 es el ángulo de la manivela.

θ3 es el ángulo del acoplador.

θ4 es el ángulo del balancín.

µ(x, t) es el ángulo entre el eslabón de salida y el acoplador.

El problema del TVC consiste en Optimizar:

φ = [φ1(x), φ2(x)]x ∈ R5 (3.1)

Con 2 funciones objetivos (φ1 y φ2):

φ1 corresponde a la síntesis cuantitativa para generación de movimien-to (desplazamiento del balancín):

φ1(x) = (θ4max − θ4min)2 (3.2)

Para φ1 se requiere que su valor sea lo más grande posible para maximizarla transferencia de energía del motor de entrada hacia el mecanismo demanivela-biela-corredora del TVC.

φ2 corresponde a la calidad de funcionamiento del mecanismo debarras (ángulo de transmisión):

φ2(x) = (γmax −π

2)2 + (γmin −

π

2)2 (3.3)

El valor óptimo para φ2 es cero y se alcanza cuando el valor máximo o mínimodel ángulo de transmisión es de 90 en toda la trayectoria que describa elmecanismo de cuatro barras. Una regla práctica es que el mecanismo decuatro barras no se debe usar en la región en la que el ángulo de transmisiónsea menor que 45 o 50.

25

Page 36: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Dichas funciones objetivo están sujetas a las siguientes restricciones:

g1(x) = x2 + x3 − x1 − x4 ≤ 0g2(x) = x1 − x3 ≤ 0g3(x) = x4 − x3 ≤ 0g4(x) = x1 − 0,5 ≤ 0g5(x) = 0,05− x1 ≤ 0g6(x) = x2 − 0,5 ≤ 0g7(x) = 0,05− x2 ≤ 0g8(x) = x3 − 0,5 ≤ 0g9(x) = 0,05− x3 ≤ 0g10(x) = x4 − 0,5 ≤ 0g11(x) = 0,05− x4 ≤ 0g12(x) = x5 − π

4≤ 0

g13(x) = −π4− x5 ≤ 0

g14(x, t) = π4− µ(x, t) ≤ 0

h1(x) = π − θ4max − θ4min = 0

Donde 0.05 ≤ x1, x2, x3, x4 ≤ 0.5 y −45 ≤ x5 ≤ 45. Las cuales son lasvariables del sistema que corresponden a lo siguiente:

x1 = r1.

x2 = r2.

x3 = r3.

x4 = r4.

x5 = θ1.

θ2.

θ3.

θ4.

µ(x, t).

26

Page 37: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Para φ1, θ4max y θ4min se calculan de acuerdo a la conguración del mecanismode cuatro barras.

Caso a)

θ1 <0:

θ4max= π-[abs(θ1)+ arccos( r21+r

24−(r3−r2)

2

2r1r4)]

θ4min= π-[abs(θ1)+ arccos( r21+r

24−(r3+r2)

2

2r1r4)]

Caso b)

θ1 = 0:

θ4max= π- arccos( r21+r

24−(r3−r2)

2

2r1r4)

θ4min= π- arccos( r21+r

24−(r3+r2)

2

2r1r4)

Caso c)

θ1 >0:

θ4max= π+[abs(θ1)+ arccos( r21+r

24−(r3−r2)

2

2r1r4)]

θ4min= π+[abs(θ1)+ arccos( r21+r

24−(r3+r2)

2

2r1r4)]

Para φ2, γmax y γmin se calculan de acuerdo al ángulo de transmisión cuandola manivela está alineada con el eslabón de referencia.

γmax= arccos[ r23+r

24−(r1+r2)

2

2r3r4]

γmin= arccos[ r23+r

24−(r1−r2)

2

2r3r4]

La restricción g14, es dinámica ya que se evalua a lo largo de la trayectoriadel mecanismo de cuatro barras. µ(x, t) debe cumplir:

45 ≤ µ(., t)

27

Page 38: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Donde el ángulo de transmisión se calcula utilizando la denición del mismo,es decir µ(., t) =|θ3 − θ4|.

θ3 es una posición angular que esta dada por:

θ3 = 2arctan[−B1 +

√B2

1 + A21 − C2

1

C1 − A1

] (3.4)

θ4 = 2arctan[−E1 +

√D2

1 + E21 − F 2

1

F1 −D1

] (3.5)

donde:

A1= 2r3(r2cosθ2 − r1cosθ1)B1= 2r3(r2sinθ2 − r1sinθ1)C1= r21 + r22 + r23 − r24 − 2r1r2cos(θ1 − θ2)D1= 2r4(r1cosθ1 − r2cosθ2)E1= 2r4(r1sinθ1 − r2sinθ2)F1= r21 + r22 + r24 − r23 − 2r1r2cos(θ1 − θ2)

Por último, θ2 que es el ángulo de la manivela y su posición angular estádada por:

θ2 = W tin

donde Win es la rapidez angular de entrada en la manivela. Para el caso delTVC, Win = 6,9rad/s, por lo que a partir de este valor, se debe calcularel tiempo(t) necesario para completar una vuelta completa por parte de lamanivela.

El problema del TVC es modelado como un PODMR desde el punto de vistacomputacional debido a que la restricción g14(x) al ser evaluada con los mis-mos parámetros x1, x2, x3, x4 y x5 en diferentes tiempos su valor cambia.En la literatura especializada se encuentran dos trabajos que resuelven esteproblema los cuales se darán a conocer a continuación.

28

Page 39: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

3.4. Técnicas de solución al problema del TVC

En la literatura especializada se encuentran dos trabajos que resuelven el pro-blema del TVC [57] y [48], el primero presenta una metodología de diseño con-currente para formular el problema de diseño mecatrónico. La metodologíapropone interpretar al problema de diseño mecatrónico como un problemade optimización multi-objetivo dinámico. Para explicar esta metodología,el problema del TVC se resuelve a través de dos técnicas de optimizaciónuna basada en un método de programación matemática (programación pormetas); y el otro basado en el algoritmo de Evolución Diferencial (ED).

Derivado de los resultados de ambas técnicas se obtienen un conjunto deconclusiones donde hacen ver las desventajas de la programación matemáti-ca y las ventajas del algoritmo ED con respecto al problema del TVC. Porejemplo, una de las desventajas de la programación matemática es que serequiere mucho conocimiento y experiencia matemática ya que en algunoscasos se necesita la transformación del problema original debido a su com-plejidad trayendo con esto una desventaja más que sería obtener una soluciónerrónea del problema debido a la perdida de datos en la transformación delproblema. Otra desventaja es que la programación matemática requiere unpunto inicial de búsqueda, esto puede ser obtenido al resolver por separadolas funciones objetivo del problema o por experiencia del diseñador Meca-trónico, aunque esto no siempre de resultados satisfactorios, caso que en elED no es necesario ya que éste inicia su búsqueda aleatoriamente. Por últi-mo, la programación matemática sólo proporciona una solución al problemamientras que ED da un conjunto de soluciones óptimas al problema por ca-da ejecución. ED obtuvo mejores resultados que el método de programaciónmatemática aunque el costo computacional es mayor que la técnica de pro-gramación matemática.[57].

El segundo trabajo es similar al descrito anteriormente, en este trabajo tam-bién se analiza y resuelve el problema del TVC modelado como un problemade optimización multi-objetivo. El problema se resuelve con una técnica deprogramación matemática conocida como método de obtención de metas ya través del algoritmo de Evolución Diferencial. Derivado de los resultadosobtenidos se comparan ambas técnicas con respecto a la calidad, robustez,tiempo computacional y grado de complejidad en implementación de la téc-nica.

29

Page 40: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Con respecto a las comparaciones de las técnicas se encuentra que el méto-do de programación matemática requiere un punto inicial de búsqueda paraencontrar una solución al problema, lo que es complicado obtener porque lascondiciones iníciales del problema son muy sensibles lo que provoca, en al-gunas ocasiones, que las soluciones no converjan y sean no factibles(soluciónque no puede ser posible de construir) lo que disminuye robustez y calidad aesta técnica, además de la complejidad de resolver el problema con esta téc-nica ya que se tiene que evaluar por separado cada función objetivo con lasrespectivas restricciones y hacer algunas transformaciones al problema. Estasdesventajas son los motivos por el cual los autores de este artículo proponenal ED para resolver dicho problema, ya que ED es fácil de implementar, susresultados con competitivos e independientes de las condiciones iníciales delproblema ya que inicia la búsqueda de soluciones de forma aleatoria, ademásde que todas sus soluciones son factibles. Sin embargo el costo computacionales más elevado que la técnica de programación matemática. Un dato men-cionado en el artículo es que ED encuentra aproximadamente una soluciónfactible por cada hora de ejecución y el método de programación matemáti-ca encuentra una solución cada media hora pero con una alta probabilidad(2/10) de que la solución sea no factible.[48].

30

Page 41: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 4

Algoritmos de InteligenciaColectiva

En este capítulo se da una breve introducción a la Inteligencia Colectiva (IC),se describen los elementos generales de un algoritmo de IC y la revisión dela literatura especializada de los algoritmo de IC, en particular de los algo-ritmos basado en el forrajeo de bacterias.

4.1. Introducción a la Inteligencia colectiva

La inteligencia colectiva es parte de los algoritmo metaheurísticos inspiradosen la naturaleza. La IC descubre y analiza el comportamiento colaborativo yasociativo de animales como una parvada de aves, un conjunto de peces, unacolonia de hormigas, de abejas y de bacterias en búsqueda de alimento y/orefugio. Es importante observar, que en los grupos de animales mencionadossobreviven la mayoria de sus integrantes y que todo el grupo sigue por instin-to a un lider, dicho elemento es el que tiene la mejor orientación o posiciónpara encontrar alimento o refugio o simplemente para dirigir al grupo de unlugar a otro [37], [29].

Una de las características importantes de estos grupos de animales, es queson colaborativos, es decir, se apoyan unos con otros para alcanzar un ob-jetivo y ésto se logra a través de la comunicación existente entre ellos, porejemplo, para las parvadas de aves, la comunicación se da cuando las aves

31

Page 42: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

del grupo identican al lider, que en su caso es el ave que va a la cabezade la parvada y deciden seguirlo, ya que su velocidad de vuelo debido a laposición en la que va es rápida o satisfactoria; los peces también tienen sumecanismo de comunicación parecido al de parvada de aves pero es con eln de nadar rápido; las hormigas son un caso excepcional, se conoce que sonmuy trabajadoras y que la comunicación para encontrar alimento y dirigirsehacia el camino más corto es a través de la feromona que van depositando alrecorrerlo. Las abejas tienen distintos tipos de comunicación, por ejemplo, ladanza o reboloteo de alas y contacto de antenas o manos que utilizan paraindicar la dirección de vuelo y distancia del lugar donde se encuentra el ali-mento e indicar la calidad del néctar. Por último, las bacterias, las cuales alhacer la búsqueda de nutrientes utilizan sus químicos atrayentes para comu-nicarse e indicar qué lugares son promisorios.

Debido al análisis del comportamiento de estos grupos colaborativos, surge laIC, la cual hace referencia a la solución de problemas de comportamiento quesurgen de la interación de los integrantes del grupo; y la IC computacional,se reere a los algoritmos que emulan dichos comportamientos. Los primerosalgoritmos de IC que surgieron fueron PSO [36] que emula el comportamientode parvada de aves, y el ACO [28] que emula el comportamiento de coloniasde hormigas.

4.2. Elementos generales de un algoritmo deInteligencia Colectiva

Los algoritmos de IC trabajan de la siguiente manera:

1. Generan un conjunto (población) de soluciones (individuos) al proble-ma.

2. Evaluan cada solución en la función objetivo a optimizar.

3. Seleccionan las mejores soluciones de la población con base en su valoren la función objetivo.

32

Page 43: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

4. Generan nuevas soluciones a partir de las mejores soluciones utilizandooperadores de variación.

5. Evaluan las nuevas soluciones.

6. Escogen las soluciones que formarán parte de la siguiente iteración (ge-neración).

Para la representación de las soluciones se utilizan números reales, la selecciónde mejores soluciones se basa en escoger aquellos individuos sobresalientesde los cuales se puedan generar mejores individuos en la población y éstose obtiene al evaluar la función objetivo. Los operadores de variación en losalgoritmos de IC emulan procesos de comportamientos como reproducción,variaciones aleatorias y movimientos cooperativos, y por último, el reempla-zo consiste en seleccionar a los mejores individuos que pasarán a la siguientegeneración de acuerdo con el valor de función objetivo o tomando en cuentaaspectos estocásticos. Una característica de los algoritmos de IC es que eltamaño de la población permanece constante en cada generación.

En esta tesis se aborda un novedoso algoritmo de IC que es el BFOA, delcual se describe un estudio sobre el estado del arte en la siguiente sección.

4.3. Estado del arte

4.3.1. Algoritmos básicos

Entre los algoritmos más conocidos de inteligencia colectiva se encuentran: laoptimización mediante cúmulos de partículas (PSO), la optimización basa-do en colonias de hormigas (Ant Colony, ACO), la optimización basado enel comportamiento quimiotáctico de bacterias (QB-OA) y la optimizaciónbasado en la simulación del forrajeo de bacterias (BFOA), presentados en laTabla 4.1.

Algoritmo de optimización mediante cúmulos de partículas (PSO)

El algoritmo PSO basa su funcionamiento en el comportamiento psico-socialemergente en las parvadas de aves o bancos de peces [36]. Tiene un espacio

33

Page 44: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Algoritmos básicos

Nombre Referencia DescripciónPSO Kennedy et al. [36] Su funcionamiento es basado en el com-

portamiento psico-social emergente enlas parvadas de aves o bancos de peces.Resuelve problemas de optimización nolineales.

Ant Colony Dorigo et al. [28] Simula el comportamiento de una colo-nia de hormigas en búsqueda de alimen-to. Resuelve problemas de optimizaciónno lineales con restricciones.

QB-OA Bremermann [8] Simula el comportamiento quimiotácti-co de bacterias E. Coli. Resuelveproblemas de optimización no lineales.

BFOA Passino [56] Emula el comportamiento grupal debacteria o animales cuando buscanalimento o refugio. Resuelve problemasde optimización no lineales conrestricciones.

Tabla 4.1: Algoritmos básicos de inteligencia colectiva

de búsqueda denido por la dimensionalidad del problema a resolver y por elrango de las variables. Sin embargo, tiene la característica de converger muyrápidamente hacia óptimos locales, es decir, todos los individuos se colocanrápidamente en la vecindad del líder o mejor solución del cúmulo.

Colonia de Hormigas (Ant Colony)

El Ant Colony simula el comportamiento de una colonia de hormigas enbúsqueda de alimento [28]. Las hormigas tienen la habilidad de buscar yencontrar el camino más corto para trasladarse de su nido hasta la fuentede alimento y transportar este alimento para almacenarse. La comunicaciónentre la colonia de hormigas se realiza por la sustancia que éstas segregan yvan dejando por el camino por el que pasan. Esta sustancia se conoce comoferomona, y se utiliza como guía de la ruta por la que debe transitar la coloniade hormiga para buscar y acarrear el alimento. El camino más corto es el que

34

Page 45: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

está cargado de feromonas, mientras que el camino más largo no contienegrandes concentraciones de feromonas. Ésto ocurre debido a la evaporaciónde la feromona con el paso del tiempo, así las hormigas vendrán sobre elcamino más corto de su nido a la fuente de alimentación.

Algoritmo de optimización basado en el comportamiento quimiotác-tico de bacterias (QB-OA)

El comportamiento quimiotáctico de bacterias puede modelarse como un pro-ceso de optimización. Este algoritmo de optimización propuesto por HansBremermann [8], llega a la conclusión de que una concentración de nutri-entes se encuentra en una supercie no homogénea de atrayentes, por lo queestos organismos tienen que seguir los siguientes pasos:

Las bacterias giran y salen nadando en línea recta con una dirección aleato-ria. Si la dirección apunta hacia una concentración creciente, las bacteriascontinúan en esa dirección hasta que la concentración disminuye o se llega almáximo (o mínimo si el problema de optimización lo indica). Antes de quelas bacterias detecten la disminución de concentración, éstas giran y tomanuna nueva dirección aleatoria.

Si la dirección apunta hacia una concentración disminuida, entonces las bac-terias detienen su nado o recorrido, giran y toman una nueva dirección aleato-ria.

Las direcciones aleatorias son independientes y uniformemente distribuidas.

El resultado del proceso de búsqueda de concentración u optimización de-pende de la forma de la supercie donde se encuentra la concentración. Bre-mermann propone el algoritmo de optimización basado en el análisis de unasupercie elipsoidal con varios ejes, es decir, supercies de equiconcentracióncilíndricas y esféricas.

Al considerar el problema de optimización en dos dimensiones, se supone quelas curvas de equiconcentración son círculos concéntricos. Las bacterias estánen algún punto del círculo de las direcciones que se pueden tomar, la mitadapuntan a direcciones erróneas (bajas concentraciones) y la otra mitad a di-recciones correctas. El algoritmo determina la distancia entre el punto donde

35

Page 46: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

está localizada la bacteria y el centro (concentración óptima) y el ánguloentre el rayo aleatorio de la posición de la bacterias y el ángulo normal dela misma. Inician entonces los ciclos en los que la bacteria se dirige hacia ladirección correcta y continua en esa misma o gira si la dirección es errónea,generando un nuevo ángulo aleatorio. En el análisis de supercies esféricas,se complementa el algoritmo con la determinación de que la bacteria sigue enla misma dirección con el mismo ángulo siempre y cuando la concentraciónaumente. Cabe mencionar que en este algoritmo la distancia recorrida de labacteria en cada iteración es recortada a la mitad y que el perl radial esindependiente de la concentración. Los pasos del algoritmo de optimizaciónse muestran en la Tabla 4.2.

Pasos del algoritmo QB-OA

1. Generar una población S aleatoria inicial de bacterias.

2. Determinar la distancia entre cada bacteria en S y el centro del círculo.

3. Generar ángulos aleatorios para cada bacteria S.

4. Evaluar la medida de concentración para cada bacteria en S.

5. Repetir para cada bacteria en S:

5.1 Si la medida de concentración se acerca a un punto creciente de nutrientes:

5.1.1 Si será la nueva dirección de la bacteria en S y seguirá con la misma

trayectoria cortado a la mitad.

5.2 Si la medida de concentración se dirige a un punto decreciente de nutrientes:

5.2.1 La bacteria en S gira y genera un nuevo ángulo aleatorio.

Tabla 4.2: Pasos del algoritmo QB-OA.

Algoritmo de optimización basado en bacterias en búsqueda dealimento (BFOA)

BFOA, propuesto por K.M. Passino [56], emula el proceso completo de for-rajeo de las bacterias E. Coli: Chemotaxis (movimientos de giro y nado),reproducción y eliminación-dispersión. En general, se trata de una estrategiade búsqueda de alimento que supone encontrar una zona de comida, deter-minar si se entra en ella, buscar la comida, y decidir cuándo dejar la zona.La búsqueda de alimento en cúmulos (grupos) requiere de capacidades decomunicación, lo que da ventajas como por ejemplo: el cúmulo podría serfuerte ante sustancias nocivas y buscar alimento con un tipo de inteligencia.

36

Page 47: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Basados en estos pasos, Passino propuso el algoritmo de optimización de bac-terias en búsqueda de alimento, el Pseudocódigo es resumido en la Tabla 4.3.

Pseudocódigo del BFOA

BeginInicialización de parámetrosGenerar una población inicial aleatoria θi(j, k, l)∀i, i = 1, . . . , SbEvaluar f(θi(j, k, l)) ∀i, i = 1, . . . , SbFor l=1 to Ned DoFor k=1 to Nre DoFor j=1 to Nc DoFor i=1 to Sb DoRealizar el paso quimiotáctico (giro-nado ogiro-giro) para la bacteria θi(j, k, l), los nadosson limitados por Ns

End ForEnd ForRealizar el paso de reproducción para laeliminación de Sr bacterias y duplicar la otra mitad

End ForRealizar el paso de eliminación-dispersiónpara todas las bacterias θi(j, k, l) ∀i, i = 1, . . . , Sbcon probabilidad 0 ≤ Ped ≤ 1

End ForEnd

Tabla 4.3: BFOA original. Los parámetros de entrada son el número de bac-terias Sb, límite del paso quimiotáctico Nc, límite del paso de nado Ns, límitedel ciclo de reproducción Nre, número de bacterias a reproducir Sr, límitedel ciclo de eliminación-dispersión Ned, tamaño de paso Ci (y probabilidadde eliminación-dispersión Ped.

El paso quimiotáctico fue modelado por Passino con la generación de direc-ciones aleatorias (ecuación 4.1)

37

Page 48: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

φ(i) =∆(i)√

∆(i)T∆(i)(4.1)

Donde ∆T(i) es un vector aleatorio generado con elementos dentro de un

intervalo:[−1, 1]. Después de esto, cada bacteria θi(j, k, l) en su ciclo (j), en suciclo de reproducción (k) y en su ciclo de eliminación-dispersión (l) modicasu posición como se indica en la ecuación 4.2.

θi(j + 1, k, l) = θi(j, k, l) + C(i)φ(i) (4.2)

La ecuación 4.1 representa un giro (busca dirección) y la ecuación 4.2 repre-senta un nado con tamaño de paso (Ci). El nado será repetido Ns veces si lanueva posición es mejor que la previa: f(θi(j + 1, k, l)) < f(θi(j, k, l)).

El paso de reproducción consiste en ordenar la población de bacterias θi(j, k, l)∀i, i = 1,. . . ,Sb basado en el valor de su función objetivo f(θi(j, k, l)) y elimi-nar la mitad de aquellas con el peor valor Sr. La otra mitad será duplicadapara mantener un tamaño de población constante.

El paso de eliminación-dispersión consiste en eliminar cada bacteria θi(j, k, l)∀i, i = 1,...Sb con probabilidad 0 ≤ Ped ≤ 1.

Descripción del pseudocódigo del BFOA

Siguiendo los pasos mostrados en el pseudocódigo del BFOA de la Tabla 4.3,se describe el proceso que se realiza durante su ejecución con un problemade optimización.

1. Como primer paso se inicializan los parámetros, número de bacteriasSb, límite del paso quimiotáctico Nc, límite del paso de nado Ns, delpaso de reproducción Nre, número de bacterias a reproducir Sr, límitedel paso de eliminación-dispersión Ned, tamaño de paso Ci, (dependede la dimensión del problema) y probabilidad de eliminación-dispersiónPed.

2. Se procede a generar una población aleatoria de bacterias θi(j, k, l) ∀i,i = 1,. . . ,Sb, el tamano de la población debe ser constante durante todoel proceso del algoritmo.

38

Page 49: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

3. Posteriormente se evalúan cada una de las bacterias f(θi(j, k, l)) ∀i,i = 1, . . . , Sb , es decir se sustituye en la función objetivo del problemaa resolver los valores de las variables de la bacteria en proceso, ésto serealiza para toda la población de bacterias.

4. Se incrementa en 1 el ciclo de eliminación-dispersión, reproducción yquimiotáctico, Ned+1, Nre+1, Nc+1 hasta el número máximo estable-cido en la iniciación de parámetros.

5. Posteriormente cada una de las bacterias realizan su primer ciclo quimio-táctico, es decir, realizan su búsqueda, nadando y avanzando hacia unanueva posición, los nados de cada una de las bacterias son sólo el númeropermitido por Ns la elección de un nado se da cuando se mejoró el valorde la función objetivo en la nueva posición. De otra manera se realizaráun giro.

6. A continuación se realiza el proceso de reproducción, en el cual se re-producen a Sr (mitad) de las mejores bacterias y se elimina a la otramitad.

7. Finalmente se realiza el proceso de eliminación-dispersión de bacteriasde acuerdo a la probabilidad determinada por Ped.

8. Se incrementan los ciclos, eliminación-dispersión, reproducción y quimio-táctico y se vuelven a realizar lo descrito en los puntos 5, 6 y 7 hastacumplir con el número máximo de ciclos establecidos en la iniciaciónde parámetros.

Como podemos observar los parámetros que utiliza el BFOA son numerososy los ciclos que intervienen en él hacen que sea un algoritmo demasiado ex-tenso, produciendo en primera instancia un número elevado de evaluacionesy por consiguiente un algoritmo lento. Además, la calibración de parámetrospuede ser complicado para los usuarios. En la Tabla 4.4 se muestran los pa-rámetros utilizados por el BFOA.

4.3.2. Algoritmos derivados del forrajeo de bacterias

Las propuestas de mejoras y/o derivaciones que se hacen a los algoritmosbasados en el forrajeo de bacterias, surge como respuesta a problemas par-ticulares de optimización. En las tablas 4.5 y 4.6 se resumen algunos de los

39

Page 50: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Nombre Símbolo DescripciónBacterias Sb Número de soluciones en la población

(bacterias).Paso quimiotáctico Nc Número de veces que la población de

bacterias podrá nadar o girar.Nado Ns Número exacto en que la bacteria en

procedimiento podrá nadar.Reproducción Nre Número de veces que la población de

bacterias se reproducirá.Reproducir bacterias Sr Número de bacterias que se reproduci-

rán de toda la población.Eliminación-dispersión Ned Número de veces en que se aplicará

eliminación-dispersión en la poblaciónde bacterias.

Tamaño de paso Ci Es el paso que la bacteria en procesopodrá avanzar de un punto a otro ensu búsqueda, limitado por lasdimensiones del problema.

Probabilidad deeliminación-dispersión Ped Determina qué bacterias de la pobla-

ción será eliminada y dispersadala nueva en el área de búsqueda.

Tabla 4.4: Descripción de los parámetros del BFOA

encontrados en la literatura especializada.

40

Page 51: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Propuestas derivadas de los algoritmos básicos

Nombre Referencia DescripciónBCA Alvarez [2] Basado en la quimiotáxis de las

bacterias E.Coli que busca evitarel extremo local en la optimizaciónde funciones no lineales.Resuelve PO no lineales como con-trol de robots.

BC Algorithm Müller et al.[51] Funciona de manera similar a lasestrategias de evolución típicas,las bacterias guardan informaciónde valores de concentración. Resu-elve PO multimodales como diseñode plano aerodinámico inverso.

SIA Ramos et al. [59] Quimiotáxis computacional en hor-migas y bacterias en ambientesdinámicos. Resuelve PO dinámicoscomplejos.

BSA Tang et al. [62] Basa su comportamiento en cúmu-lo de bacterias para optimizaciónglobal. Resuelve PO no lineal.

ACBEA Das et al. [17] Basado en la mutación bacterialy la transferencia de genes.Resuelve PO no lineal.

Tabla 4.5: Parte 1 de las propuestas derivadas de lo algoritmos básicos

Estrategias para evitar el extremo local en la optimización de fun-ción a través de quimiotáxis, algoritmo básico de bacterias quimio-táxicas (Basic BC)

El algoritmo básico de bacterias quimiotácticas, es presentado como herramien-ta para optimizar las funciones no lineales que aparecen durante el control deavance de estrategias de implementación. Derivado del algoritmo BFO[56].En este algoritmo se proponen dos estrategias para permitir escapar de unextremo de función local y continuar con la búsqueda por otro punto. Estasestrategias son propuestas para lograr una modicación de recapitulación de

41

Page 52: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Propuestas derivadas de lo algoritmos básicos

Nombre Referencia DescripciónMicro-BFOA Dasgupta et al.[20] Basado en el BFOA donde las bac-

terias son reinicializadas deacuerdo a la mejor bacteria dela posición. ResuelvePO no lineal.

SW-BFOA Ying et al. [15] Algoritmo de rápido nado bacterialpara optimización de funciones dealtas dimensiones. Resuelve POuni-modales y multi-modales sinrestricciones.

PBFOA Bakwad [3] Basado en el BFOA que hace demanera paralela el proceso quimio-táctico de las bacterias. ResuelvePO no lineales, como comprensiónde video en tiempo real.

SBFOA Bakwad[40] Basado en el BFOA en el que sólose lleva a cabo el proceso quimio-táctico y los pasos de nados y girosResuelve PO multi-objetivo y nolineales.

MC-BFOA Chen et al.[13] Basado en el BFOA y BCA, dondese tienen varias poblaciones debacterias en el espacio de búsqueday se comunican entre ellas. ResuelvePO multi-objetivo usados para pla-nicación de redes RFID.

Tabla 4.6: Parte 2 de las propuestas derivadas de lo algoritmos básicos

intervalos y un método de búsqueda paralelo. Con este algoritmo se obtieneun aumento de ubicación de puntos, ayudando al BC a obtener un óptimoglobal con menos procesos bacteriales. [2]

42

Page 53: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Optimización basada en bacterias Quimiotáxicas (BC Algorithm)

Este algoritmo funciona de manera similar a las estrategias de evolucióntípicas, aunque se han añadido características tomadas de los resultados dela evaluación de un grupo de pruebas estándares, usando conceptos evolu-tivos y así obtener una estrategia de optimización mejorada [51]. Estas prue-bas fueron realizadas para la optimización global y local de funciones en eldominio de problemas de diseño de plano aerodinámico inverso. Las carac-terísticas añadidas son las siguientes: las bacterias guardan información devalores de concentración, no siguen corriendo en la misma dirección si se in-crementa la concentración de quimioatrayentes. Los resultados obtenidos delos experimentos con este nuevo algoritmo basado en bacterias Quimiotáxicasaplicado a los problemas de diseño de plano aerodinámico inverso, muestranque el rendimiento es peor si añadimos propiedades de convergencia mejo-radas (funciones cuadráticas), aunque sí tiene la posibilidad de encontrar unóptimo global de una función multimodal [51].

Quimiotáxis computacional en hormigas y bacterias en ambientesdinámicos, algoritmo inteligente de cúmulos (SIA)

Este algoritmo toma como referencia las características de un BFOA, entérminos de que las bacterias nadan hacia la concentración más alta en nu-trientes y huyen de las sustancias nocivas. Este modelo enfrenta la adaptacióncolectiva de un cúmulo asociado basado en el comportamiento real de unacolonia de hormigas (SSA) para caminos extremos en ambientes dinámicos yfunciones multimodales complejas. Al comparar este nuevo algoritmo (algo-ritmo inteligente de cúmulos) con SSA, los resultados indican que la inteligen-cia colectiva de SSA es viable para adaptarse rápidamente a situaciones im-previstas, incluso en periodos de búsqueda cooperativa de alimento, superan-do al algoritmo inteligente de cúmulos en la velocidad de adaptación, aunqueeste nuevo algoritmo trata problemas de optimización dinámicos complejos[59].

Algoritmo de cúmulo de bacterias para optimización global ( BSA)

Este algoritmo está basado en el comportamiento de bacterias acumuladas,en particular se concentra en el estudio de las acciones de caídas y corridasque son la parte más importante en el proceso quimiotáctico. Los operadoresadaptables, caídas y corridas son desarrollados para mejorar la capacidad de

43

Page 54: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

búsqueda global y local de este algoritmo (BSA). También se introduce laduración de los pasos de las acciones (caídas y corridas), que es independientede los problemas de optimización pero puede acelerar el proceso de conver-gencia de BSA. Estas acciones son seleccionadas con base en su probabilidad,las cuales son actualizadas durante el proceso de búsqueda. BSA posee ungran potencial para resolver problemas de optimización global. En los resul-tados de la simulación de este algoritmo (BSA), puede tener un rendimientosuperior al AG y PSO en optimizar algunas funciones de benchmark, en par-ticular, en relación con los ritmos de convergencia y robustez. [62]

Automatic Clustering con BEA (ACBEA)

El ACBEA, es derivado del BEA [17]. BEA implementa dos operaciones espe-ciales para desarrollar una población de cromosomas. La primera operaciónes la mutación bacterial, esta mutación imita un proceso ocurrido a nivel dela genética de bacterias y tiene por objetivo mejorar partes dentro de los cro-mosomas. La segunda operación, llamada transferencia de genes es empleadapara intercambiar información entre los cromosomas de la población, estose puede lograr debido a que las bacterias pueden difundir su informacióngenética rápidamente a otras células.

ACBEA, codica una completa partición de los datos de un cromosoma, talque cada parte o gen en el cromosoma representa un grupo. En este algorit-mo se incorpora un nuevo operador llamado reparación de cromosomas, semodicó la mutación y la transferencia de genes ligeramente para manejarlas variables de tamaño de cromosoma. ACBEA inicia con una población decromosomas de longitud variable, cada una codica una agrupación entera delos datos. Después, la mutación de bacteria es aplicada para cada cromosoma.La mutación del ACBEA diere de algunas extensiones del BEA clásico, estasson especícamente diseñadas para permitir que una longitud de cromosomaspueda ser cambiada dinámicamente como un proceso de aprendizaje evolu-tivo avanzado. En la mutación bacterial, el primer cromosoma es escogidoy entonces éste es reproducido en un clon. Cada clon es tomado probabilís-ticamente con uno de los tres operadores: remplazo aleatorio, escisión-gene,fusión-gene.

Los clones son evaluados y el mejor cromosoma de los individuos es selec-

44

Page 55: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

cionado para mantenerse en la población, los demás son eliminados. Despuésdel proceso de mutación, se lleva a cabo la reparación de genes, este proce-so consiste en escanear las mutaciones de los cromosomas para remover lasetiquetas duplicadas. Las etiquetas que no han sido atribuidas a algún gendespués de la reparación, son asignadas a un gen tomado al azar pero nopuede asignarse a uno de los genes de los que fue retirado. Y por último, serealiza la transferencia de genes, el cual divide en dos a la población, mitadsuperior (mejores individuos) y mitad inferior (peores individuos); una partede un gen de la mitad superior se transere a un gen de la mitad inferior.

Micro-Bacterial Foraging Optimization

El Micro-BFOA es una modicación del BFOA, las características princi-pales de este algoritmo son su pequeña población (solo tres bacterias), lamejor bacteria de la población conserva su posición y los demás miembrosde la población son reinicializadas bajo algunos criterios. Este algoritmo esmodelado especialmente para problemas de alta dimensión, donde el costocomputacional ha sido un obstáculo [20].

El proceso de reproducción no es llevado a cabo en este algoritmo para evitarla saturación y convergencia prematura. El paso de eliminación-dispersión serealiza exactamente como en el BFOA. Después de un ciclo completo delpaso quimiotáctico, la población de bacterias se mueve a un nuevo espacio debúsqueda. En este momento, la población es clasicada de acuerdo con losvalores de la función objetivo. La mejor bacteria de la población conserva suposición, la segunda mejor bacteria es llevada a una posición muy cerca dela mejor bacteria y la peor bacteria es inicializada en una posición aleatoria.

Algoritmo de rápido nado bacterial para optimización de funcionesde altas dimensiones

Este algoritmo es la combinación del forrajeo de las bacterias con el meca-nismo usado en el algoritmo de cumulo de partículas 'factor de atracción',con el n de mejorar la convergencia en funciones de altas dimensiones. Estemecanismo hace que la población de bacterias se dirija a la posición de lamejor bacteria de toda la población. Otro de los elementos de este algorit-mo de nado rápido es el tamaño de paso, este es adaptado para mejorar la

45

Page 56: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

capacidad de la búsqueda local. El tamaño de paso 'C' toma el valor de ladivisión del tamaño de paso inicial 'Lred'determinada por el usuario entreñ' que es la constante de control de tasa decreciente que varía dependiendoel ciclo de reproducción y eliminación en los que se encuentre el algoritmo.Estos mecanismos implementados buscan una convergencia no prematura ydisminuir el costo computacional. Esta propuesta es probada en problemascon funciones unimodales y multimodales sin restricciones de benchmark[15].

Forrajeo en paralelo de bacterias para comprensión de video (PB-FO)

El PBFO es una propuesta para la compresión de video en tiempo real. Eneste algoritmo el mejor valor es actualizado después de la evaluación de lafunción objetivo de todas las bacterias de la población. El PBFO es utilizadopara reducir el tiempo computacional de la estimación de movimiento enla comprensión de video. El elemento fundamental de este algoritmo es querealiza el paso de evaluación de la función de cada bacteria en el procesoquimiotáctico de manera paralela, asegurando la convergencia más rápidahacia una solución competitiva. El tamaño de paso es adaptado mediante elvector de movimiento cero y una topología de vecindad de Von Neumann,asegurando un mejor bloque de combinaciones para la adaptación del tamañode paso. El paso quimiotáctico y el paso de nado pueden ser variados paraahorrar tiempo computacional y mejorar la señal en proporción del ruido.[3]

Simultáneo Bacterial Foraging Optimization para funciones multi-modales y de altas dimensiones (SBFO)

El SBFO es usado para resolver funciones multimodales y de alta dimen-siones. En este algoritmo se llevan a cabo el proceso quimiotáctico compuestopor nados y giros, además del paso de reproducción. El mejor valor obtenidoes actualizado simultáneamente después de la evaluación de la función objeti-vo de todas las bacterias. Este proceso puede resolverse de manera secuencialo paralelamente.

La búsqueda local es llevada a cabo por el proceso quimiotáctico y los pasos denado y giro. El tamaño de paso es determinado por una ecuación que explorael espacio de búsqueda globalmente y es este quien acelera la velocidad delas bacterias hacia el óptimo global. El tamaño de paso es determinado por

46

Page 57: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

la diferencia del valor de la función en la posición previa de la bacteria (p1 )y la posición de la bacteria cuando esta ha dado su paso (p2 ), se dice queel tamaño de paso será positivo y cambiará la dirección de la bacteria endirección a la p1, si p1 tiene un mejor valor en la función objetivo que p2. Siel tamaño de paso es negativo el paso que dará la bacteria será un giro.[40]

Multi colonia de bacterias con células de comunicación para plani-cación de redes RFID (MC-BFO)

La RFDI es un tipo de sistemas automático de identicación. Para obteneruna conable y segura planeación de redes en sistemas de comunicación deidenticación de radio frecuencia (RFID), la localización de lectores y de losvalores asociados para cada uno de los parámetros del lector tiene que serdeterminado. Todos estos parámetros deben optimizar un conjunto de obje-tivos, como la cobertura de etiquetas, la eciencia económica, el equilibriode carga y el nivel de interferencia entre los lectores. El algoritmo MC-BFOresuelve este problema de planeación de redes complejas de RFID, que sonproblemas de optimización multi-objetivo.

La idea principal de este algoritmo es tener varias poblaciones (colonias) debacterias dentro de un espacio de búsqueda de nutrientes, donde puedan co-municarse en primera instancia las bacterias dentro de una misma coloniapara comunicar dónde se encuentra la bacteria con la mejor posición de lacolonia, posteriormente comunicar todas las colonias entre sí para informardonde se encuentra la mejor bacteria de toda las colonias y por ultimo en-contrar el índice de la colonia que tiene a la bacteria con la mejor posiciónde todas las colonias.

Esta comunicación ocurre en el proceso quimiotáctico donde los giros que ha-cen las bacterias tienen un recorrido con dirección aleatoria, donde el ánguloes generado con una distribución Gaussiana y la opción de dirección derechao izquierda es determinada por una probabilidad uniforme de distribucióny la longitud máxima de giro de una bacteria es una coordenada polar. Elnado de las bacterias en el proceso quimiotáctico toma un camino aleatoriocon una misma dirección.

Esta comunicación tiene un enfoque de cooperación que determina que lapoblación bacteriana se mantenga diversa. Este mecanismo de comunicación

47

Page 58: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

acelera la convergencia de la población hacia el óptimo global. El MC-BFOestá basado en el algoritmo del forrajeo de bacterias (BFO)[56] y el algoritmodel proceso quimiotáctico de las bacterias (BCA)[50].

Una de los contras del MC-BFO es su costo computacional, que es muchomayor comparado con los algoritmos con los que fue confrontado, GA y PSO,aunque los resultados del MC-BFO son mucho mejores [13].

4.3.3. Estudio a los procesos del BFOA

En esta sección se presentan trabajos que realizan un estudio a los proce-sos del algoritmo BFOA. En la Tabla 4.7, encontramos los diversos estudiosque se han hecho al proceso quimiotáctico y de reproducción, debido a suimportancia para obtener un algoritmo capaz de resolver problemas de opti-mización de manera eciente.

48

Page 59: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Estudios de los procesos del BFOA

Nombre Referencia DescripciónReproduccióndel BFOA Abraham et al. [1] Este análisis encuentra dos caracteristicas

que contribuyen al forrajeo de las bacteriasy son: la reproducción permite una rápidaconvergencia cerca de óptimos y las bacte-rias se atraen entre ellas mediante unaaceleración que es variable de acuerdo a ladistancia entre ellas.

Quimiotáxisdel BFOA Das et al. [18] Se analiza y establece que el tamaño de

paso de una bacteria evita los límites ygarantiza la convergencia de las bacteriasen un óptimo, dando un conjunto de indica-ciones a seguir para obtener el valor deltamaño de paso.

Quimiotáxisdel BFOA Dasgupta et al. [21] El análisis señala que la aceleración de la

convergencia de las bacterias cerca delóptimo global depende de la adaptación deltamaño de paso.

Tabla 4.7: Estudio de los procesos del BFOA

Análisis del operador de reproducción del algoritmo basado en elforrajeo de las bacterias

El análisis del operador de reproducción consiste en buscar las característi-cas con las que el proceso de reproducción de las bacterias contribuye en labúsqueda de alimento. En este proceso las bacterias con menor salud (menorvalor en la función objetivo) mueren y las bacterias de mejor salud (mejorvalor en la función objetivo) se reproducen (se dividen).

Una de las características encontradas es que la reproducción contribuyea una rápida convergencia de la población de bacterias cerca de óptimos(locales o global). Otra de las características observadas es que las bacterias

49

Page 60: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

se atraen entre ellas y la aceleración con la que se acercan unas con otrasvaría y depende de la distancia entre las bacterias. Cuando las bacterias estánmás cerca entre si, la aceleración aumenta gradualmente (la bacteria mássaludable a trae a la más débil). Esto hace referencia a la fuerza gravitacional,el cuerpo con mayor masa atrae al de menor masa. Así que el sistema de saludde las bacterias puede ser equivalente a la masa y podemos hacer una analogíaentre el fenómeno de producción y la fuerza de gravedad universal.[1]

Estabilidad de la dinámica del proceso quimiotáctico en el algorit-mo BFO

La estabilidad y comportamiento de convergencia del proceso quimiotácticoes analizado por el teorema de Lyapunov. A través de este análisis se indi-can los limites para el tamaño de paso incluido en el proceso quimiotáctico,parámetro que evita los limites y garantiza la convergencia de las bacteriasen un óptimo. De los resultados que se obtienen de este modelado matemáti-co se determina que el valor del tamaño de paso (C ) será cero cuando labacteria este en un óptimo, para los demás casos, el tamaño de paso serádeterminado por la siguiente ecuación:

C >4

k

∣∣∣∣∣θ − θ0Jθ

∣∣∣∣∣ (4.3)

Donde k, es el numero de reproducción, θ es la bacteria en una posición, θ0es el óptimo (mínimo) de la región de búsqueda, Jθ es el valor de la funciónobjetivo de la bacteria en proceso.

Otro criterio observado es que el tamaño de paso no debe ser constante porquela bacteria comienza a oscilar alrededor del valor óptimo en vez de convergeren esta, es decir, el tamaño de paso debe adaptarse dependiendo la posiciónde la bacteria, si esta muy cerca del óptimo debe decrecer el valor del tamañode paso para converger a un óptimo, no sirve que la bacteria rodee el óptimosin poderlo alcanzar debido a que el tamaño de paso, por ser grande, haceque la bacteria se pase del lugar óptimo [18].

50

Page 61: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Adaptación computacional del proceso quimiotáctico en la opti-mización del forrajeo de bacterias: Un análisis (ABFOA)

En este algoritmo se analiza el BFOA en su proceso quimiotáctico, el análisisseñala que la aceleración de la convergencia de las bacterias cerca del óptimoglobal depende de la adaptación del tamaño de paso [21].

La velocidad de cambio de la posición de una bacteria es de manera uniforme,constante, su magnitud depende también del tamaño de paso. Una bacteriapuede cambiar de posición si el valor de la función objetivo actual es menorque la previa y que el resultado de la diferencia del valor de la función objeti-vo actual con la previa sea positivo, esto asegura que las bacterias se moveránen dirección donde el valor de la función objetivo decrece.

Si la bacteria se encuentra en el óptimo, el tamaño de paso debe ser cero. Siel valor de la función objetivo de una bacteria es grande, el espacio dondeestá la bacteria es nocivo, de lo contrario cuando la función objetivo de unabacteria es pequeña, este espacio es propicio para continuar con la búsquedaen ese lugar y el tamaño de paso es pequeño también. Ésto nos indica que eltamaño de paso debe decrecer con respecto al valor de la función objetivo sila bacteria se encuentra cerca del óptimo.

Con este análisis se llega a la conclusión que la adaptación del tamaño depaso en el proceso quimiotáctico permite una rápida convergencia en el óp-timo global.

Durante la prueba del ABFOA, tres parámetros de rendimiento fueron usa-dos para probar la eciencia del algoritmo, 1) la calidad de la solución, 2) lavelocidad de convergencia y 3) la frecuencia de alcanzar el óptimo global.

El algoritmo ABFOA ha sido probado en la solución de diversos problemas,por ejemplo en el problema de síntesis de ondas de sonido de frecuenciamodulada [21] y la detección automática de círculos sobre imágenes [19].

4.3.4. Híbridos con el BFOA

Dentro de los nuevos modelos que surgen de los algoritmos bio-inspirados, seencuentran los híbridos, que son el resultado de la unión de los algoritmos

51

Page 62: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

basados en el proceso evolutivo de las especies y los basados en el compor-tamiento social de grupos de bacterias. En la Tabla 4.8, se describen loshíbridos con el BFOA encontrados en la literatura especializada.

Híbridos con el BFOA

Nombre Referencia DescripciónAG y BFOA Kim et al. [39] Derivado del algoritmo genético y

BFOA con énfasis sobre mutación,recombinación, variaciones de tamañode pasos quimiotáctico y el tiempo devida de las bacterias. Resuelve POlineales, como anar un controla-dor de regulador de voltaje automáti-co AVR.

PSO y BFOA Arijit et al.[6] La búsqueda local es a través deoperaciones de movimientos quimio-táctico de BFOA y la búsqueda globalpor un operador de PSO. Resuelve POmulti-objetivo, como ingeniería dediseño clave de poly-fase de radarde espectro difundido.

ED y BFOA Biswas et al. [5] Busca resolver el problema de laconvergencia lenta y prematura delED y BFOA, aplica primero y única-mente el proceso quimiotáctico ydespués lleva a cabo la mutación debacterias a través del ED. ResuelvePO lineales.

BF y PSO Korani [42] Basado en el BFOA y PSO, tienecomo objetivo hacer uso del inter-cambio de información entre las bac-terias. Resuelve PO no lineales, comopor ejemplo anación del PID.

Tabla 4.8: Híbridos con el BFOA

52

Page 63: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Híbrido del algoritmo genético (AG) y bacterial en búsqueda dealimento (BFOA) para optimización global

Este híbrido es un derivado del algoritmo genético y el algoritmo de bacte-rias en búsqueda de alimento para problemas de optimización de funciones,con énfasis sobre mutación, recombinación, variaciones de tamaño de pasosquimiotáctico y el tiempo de vida de las bacterias. Este híbrido fue usadopara anar un controlador de regulador de voltaje automático AVR. Losresultados obtenidos de las pruebas hechas para la optimización de este pro-blema de anamiento, muestran que la convergencia al óptimo global ocurremás rápido con el algoritmo híbrido que en el AG, haciendo de este nuevoalgoritmo una herramienta eciente y de alto rendimiento para encontrarsoluciones competitivas de este problema [38].

Sinergia de los algoritmos PSO y BFOA: un estudio de comparaciónsobre los puntos de referencias numéricas

El híbrido derivado de los algoritmos PSO y BFOA, es usado para optimizarfunciones multi-modales de altas dimensiones y surge como trabajo de unestudio emprendido para mejorar la velocidad de convergencia y exactituddel BFOA sobre las buenas formas de los planos de funciones multi-modales,puesto que BFOA posee un comportamiento pobre en la convergencia enproblemas multimodales. Su rendimiento también se ve afectado con el cre-cimiento del tamaño del espacio de búsqueda debido a la alta dimensionali-dad. El algoritmo híbrido lleva a cabo la búsqueda local a través de opera-ciones de movimientos quimiotácticos de BFOA, mientras que la búsquedaglobal sobre un espacio entero de búsqueda es lograda por un operador dePSO. De esta manera se balancea la exploración y la explotación.

El híbrido ha sido comparado con el BFOA original, el PSO clásico y unaversión novedosa del PSO [6].

Sinergia de evolución diferencial y optimización del forrajeo debacteria para optimización global

El Chemotactic Dierential Evolution (CDE) busca resolver el problema dela convergencia lenta y prematura del algoritmo evolución diferencial y elalgoritmo de optimización del forrajeo de bacterias. CDE, en su primera eta-pa, realiza el proceso quimiotáctico de las bacterias propuesto por K. Passino

53

Page 64: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

[56]; el proceso de reproducción y eliminación-dispersión no se realiza en estealgoritmo. Después del proceso quimiotáctico, se lleva a cabo la mutación dela evolución diferencial, dicho proceso consiste en mutar una nueva bacteria(vástago) de la bacteria en proceso, que resulta de tomar tres bacterias di-ferentes entre sí de toda la población de bacterias e intercambiar entre ellascomponentes que generan una mutación que, de ser mejor que la bacteriaen proceso, remplaza a la bacteria original, de otra manera la bacteria seconserva en la población. [5]

Forrajeo de bacterias orientado por cumulo de partículas estrategiapara anar PID (BF-PSO)

La combinación del BFO y el PSO tiene como objetivo hacer uso del inter-cambio de información entre las bacterias. En el BF-PSO se siguen todoslos pasos de BFO: proceso quimiotáctico, nado, reproducción y eliminacióndispersión orientado por PSO.

El mecanismo usado del PSO en esta combinación es la determinación de ladirección de nado de la bacteria en el proceso quimiotáctico; PSO estableceque la dirección de un individuo se calcula con base en la información quealmacena de su mejor posición que ha logrado, la información de la posiciónactual del individuo y la información de la posición del mejor individuo de lapoblación, con estas tres informaciones junto con parámetros de escalamien-to se obtiene el valor de la dirección que tomará la bacteria (en términosresumidos se hace un acercamiento a la posición del mejor individuo de lapoblación).

En el BF-PSO cada bacteria almacena la información de su mejor posición,la cual se presenta como una mejor posición local, después se actualiza laposición de la bacteria haciendo un nado y su dirección es determinada porel mecanismo del PSO, donde se requiere que la información de la mejorposición que ha tenido la bacteria en proceso, su posición actual y la mejorposición global (mejor bacteria de toda la población) estén disponibles.

El BF-PSO fue probado en el problema de anación del controlador propor-cional integral y derivativo (PID), comparando sus resultados con el BFO yPSO, obteniendo resultados satisfactorios.[42]

54

Page 65: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

4.3.5. Aplicaciones usando algoritmos basados en bac-

terias

Los algoritmos bio-inspirados son altamente utilizables para dar solución aproblemas de optimización con funciones no lineales o multi-modales. Dentrode las aplicaciones donde se han usados los algoritmos bio-inspirados para re-solver problemas de búsqueda y optimización, encontramos el pronóstico delmercado de valores de S&P 500 y DJIA [44], localización simultánea y mapeo(SLAM) de robot móviles y vehículos autónomos [12], anación robusta desistemas estabilizadores de transmisiones de red [61], actualización del pesodel enlace funcional de la red neuronal articial a través de indicadores desistemas dinámicos no lineales [43] y reducción de pérdida de transmisión enla red [66], mejoramiento de la señal pico para la relación del ruido de unaimagen [4], parámetros de optimización de máquinas de extremo aprendizaje[14] en todos usando la técnica de optimización del algoritmo de bacterias enbúsqueda de alimento.

En la Tabla 4.9, se encuentran las aplicaciones resueltas con el BFOA, dondese observa que es un algoritmo cada vez más usado para resolver problemasde optimización.

55

Page 66: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Aplicaciones usando BFOA

Nombre Referencia DescripciónMC-BFOA Chen et al.[13] Basado en el BFOA y BCA, donde

se tienen varias poblaciones de bac-terias en el espacio de búsqueda y secomunican entre ellas.Resuelve PO multi-objetivo usadospara planicación de redes RFID.

BFOA Chatterjee et al. [12] Problema de localización simultáneay mapeo (SLAM) de robot móvilesy vehículos autónomos.

BFOA Majhi et al. [44] Problema del pronóstico del mercadode valores de S&P 500 y DJIA .

BFOA Sumanbabu et al. [10] Problema de anación robusta desistemas estabilizadores de transmi-siones de red.

BFOA Majhi et al.[43] Problema de actualización del pesodel enlace funcional de una red neuro-nal articial a través de indicadoresde sistemas dinámicos no lineales.

BFOA Lu et al. [66] Problema de reducción de pérdidade transmisión en la red.

BFOA Cho et al. [14] Problema de parámetros de optimi-zación de máquinas de extremoaprendizaje.

BFOA Bakwad et al. [3] Problema del mejoramiento de laseñal pico para la relación de la señalde ruido en una imagen.

Tabla 4.9: Aplicaciones usando BFOA

56

Page 67: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 5

Algoritmo de Optimización delForrajeo de Bacterias Modicadopara problemas Multi-Objetivo(MOMBFOA)

En este capítulo se describe el algoritmo Modied-Bacterial Foraging Op-timization, y las adaptaciones realizadas a este para resolver un problemamulti-objetivo.

5.1. Modied-Bacterial Foraging OptimizationAlgorithm (MBFOA)

MBFOA es un algoritmo propuesto en [47] derivado del BFOA [56] en el cualse implementan varios mecanismos que permiten que el algoritmo pueda re-solver problemas de optimización mono-objetivo con restricciones de diseñoen ingeniería y química [54].

Los mecanismo del MBFOA son las siguientes:

1. Un sólo ciclo para incluir el ciclo quimiotáctico, la reproducción y eliminación-dispersión.

57

Page 68: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

El ciclo de generaciones es controlado por el parámetro GMAX en el cuallas bacterias realizan su ciclo quimiotáctico. Después de ésto se lleva a cabouna sola reproducción y una eliminación-dispersión dentro de un mismo ciclode generación. En el paso de eliminación-dispersión sólo se elimina a la peorbacteria de la población.

2. Tamaño de paso diferente para cada variable de diseño.

El tamaño de paso C(i) para cada variable de decisión xi es denido con-siderando los límites inferior y superior Li y Ui usando la ecuacion 5.1

Cnew(i) = R ∗ (∆~xi/√n) (5.1)

Donde Cnew es el tamaño de paso que, en este caso, ya no está denido porel usuario, ∆~xi es la diferencia Ui − Li, n es el número de variables en elproblema de optimización y R es el porcentaje del total del tamaño de pasoa ser usado, un tamaño de paso inicial pequeño suele ser conveniente en op-timización restringida, conclusiones que se reportan en [47].

En este mismo proceso se asegura que los elementos en ~x (variables de diseño)no rebasen sus límites establecidos Li ≤ xi ≤ Ui,∀i = 1, ..., n, mediante elsiguiente módulo:

Si xi<Li entonces:

xi = 2Li − xi (5.2)

Si xi>Ui entonces:

xi = 2Ui − xi (5.3)

3. Mecanismo para manejar las restricciones del problema basado en las re-glas de factibilidad de Deb [23] usadas en el proceso quimiotáctico (especi-camente en el nado) y reproducción que se representan como sigue:

a) Entre dos soluciones factibles, aquella con el mejor valor de la funciónobjetivo es seleccionada.

58

Page 69: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

b) Entre una solución factible y otra no factible, la factible es seleccionada.

c) Entre dos soluciones no factibles, aquella con la menor suma de vio-lación de restricciones es seleccionada. La suma de violación de restriccionesse calcula con la siguiente fórmula:

m+p∑i=1

max(0, gi(~x)) (5.4)

4. Comunicación entre las bacterias y la mejor bacteria de la población deuna generación.

En ciertas iteraciones del ciclo quimiotáctico (a la mitad y al nal) se permiteque cada bacteria de la población se oriente y nade orientada por la mejorbacteria de la población (efecto de swarming) calculado como se indica en laecuación 5.5:

θi(j + 1, G) = θi(j, G) + F (θB(G)− θi(j, G)) (5.5)

Donde θi(j + 1, G) es la nueva posición de la bacteria i, θB(G) es la actu-al posición de la mejor bacteria en la generación G hasta ahora y F es unparámetro llamado factor de escalamiento, el cual regula qué tan cerca estarála bacteria i de la mejor bacteria B.

Los pasos restantes en el ciclo quimiotáctico serán realizados como se indicaen la siguiente ecuación 5.6:

θi(j + 1, G) = θi(j,G) + C(new)(i)φ(i) (5.6)

El MBFOA tiene menos parámetros que el BFOA original. Éstos se describenen la Tabla 5.1.

5.1.1. Pseudocódigo del MBFOA

El pseudocódigo del MBFOA es presentado en la tabla 5.2, en la cual sedetallan los mecanismos antes mencionados.

59

Page 70: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Nombre Símbolo DescripciónBacterias Sb Número de soluciones en la población

(bacterias).Generaciones GMAX Número de generaciones que se ejecu-

tará el procedimiento quimiotáctico, dereproducción y eliminación-dispersión.

Pasos quimiotáctico Nc Número de veces que cada bacteriaen la población podrá nadar o girar.

Reproducción Sre Número de bacterias a reproducirse.Escalamiento F Factor de escalamiento que determina

cuánto avanzará una bacteria hacia lamejor bacteria de la población.

Tamaño de paso R Porcentaje del tamaño de paso que unabacteria avanzará durante su cicloquimiotáctico.

Tabla 5.1: Descripción de los parámetros del MBFOA

5.1.2. Descripción del pseudocódigo del MBFOA

Siguiendo los pasos mostrados en el pseudocódigo del MBFOA de la Tabla5.2, se describe el proceso que se realiza durante su ejecución teniendo comoentrada un problema de optimización.

1. En primer lugar se inicializan los parámetros con los que trabajará el al-goritmo, los parámetros a inicializar son número de bacterias Sb, límite delpaso quimiotáctico Nc, número de bacterias a reproducir Sre, factor de es-calamiento F, porcentaje de tamaño de paso R y el número de generacionesGMAX.

2. Se procede a generar una población aleatoria de bacterias θi(j, G)∀i, i =1, ..., Sb, el tamaño de la población permanece constante durante toda la eje-cución del algoritmo.

3. Posteriormente se evalúa cada una de las bacterias f(θi(j,G))∀i, i = 1, ...Sb,es decir, se sustituye en la función objetivo del problema a resolver los valoresde las variables de la bacteria en proceso. Ésto se realiza para cada una de

60

Page 71: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Pseudocódigo del MBFOA

BeginInicialización de parámetrosGenerar una población inicial aleatoria θi(j, G) ∀i, i = 1, SbEvaluar f(θi(j, G)) ∀i, i = 1, SbFor G=1 to GMAX DoFor i=1 to Sb DoFor j=1 to Nc DoRealizar el paso quimiotáctico (giro-nado o giro-giro) para labacteria θi(j, G) usando las reglas de factibilidad y las Ec.5.6 y 5.5End For

End ForRealizar el paso de reproducción para la eliminación de Sre (mitad)peores bacterias y duplicar la otra mitad, basado en las reglas defactibilidad.Eliminar a la peor bacteria θw(j,G) de la población, basado en lasreglas de factibilidad y generar una nueva aleatoriamente.

End ForEnd

Tabla 5.2: MBFOA. Los parámetros de entrada son el número de bacteriasSb, límite del paso quimiotáctico Nc, número de bacterias a reproducirse Sre,factor de escalamiento F, porcentaje del tamaño de paso R y el número degeneraciones GMAX.

las bacterias en la población.

4. Se incrementa en 1 el ciclo de generaciones hasta el número máximo es-tablecido en los parámetros, en cada ciclo de generación se llevará a cabopara cada una de las bacterias el proceso quimiotáctico Nc veces y una re-producción y eliminación-dispersión de la población de bacterias como a con-tinuación se detalla.

5. Para cada bacteria se realiza el ciclo quimiotáctico Nc veces (establecidoen los parámetros inicializados). En el cada una de las bacterias inicia subúsqueda, nadando y avanzando hacia una nueva posición si la dirección debúsqueda aleatoria genera una mejor solución; o girando para generar una

61

Page 72: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

nueva dirección de búsqueda porque su avance no fue favorable en la búsque-da de nutrientes (el valor de la función objetivo no mejora en el nuevo puntoal cual se habían dirigido), en ambos casos se utilizan las ecuaciones 5.5 y5.6 y las reglas de factibilidad antes descritas.

6. Se realiza el proceso de reproducción, en el se reproducen a Sre (usualmentela mitad del total de las bacterias) de las mejores bacterias y se elimina a laotra mitad, basados en las reglas de factibilidad.

7. Se realiza el proceso de eliminación-dispersión en este se elimina única-mente a la peor bacteria de la población θw(j, G), con base en las reglas defactibilidad y se genera una nueva bacteria aleatoriamente.

8. Se realiza otra vez el proceso desde el paso número 4 hasta cumplir con elnúmero máximo de generaciones.

5.2. Algoritmo de Optimización del Forrajeode Bacterias Modicado para problemasMulti-Objetivo (MOMBFOA)

El MOMBFOA es una adaptación del MBFOA con el propósito, en primerlugar, de resolver problemas multi-objetivo con restricciones y, segundo, demejorar su desempeño en la búsqueda de soluciones en el espacio restringidodel problema multi-objetivo, en particular el problema del TVC descrito enla sección 3.3 del capítulo 3. Dicho caso de estudio es dinámico debido a queuna de sus restricciones es dinámica (g14). Esta restricción se debe evaluara lo largo de la trayectoria que describe el mecanismo de cuatro barras, esdecir, el intervalo de tiempo que se utiliza para evaluar esta restricción ylos ángulos θ3 y θ4 es el tiempo que tarda en completar una revolución lamanivela del mecanismo de cuatro barras.

Resolver problemas multi-objetivo implica cambios en diferentes mecanismoscomo los siguientes: el criterio de selección, uso de elitismo y el manejo dediversidad en el espacio de las soluciones (población), éstos cambios permitenque se logre el primer propositó del MOMBFOA.

62

Page 73: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

El criterio de selección . El criterio más utilizado hoy en día para re-solver problemas multi-objetivo es la dominancia de Pareto (vista en lasección 2 de este documento) el cual será el utilizado por MOMBFOAcomo criterio de selección. Sin embargo, se combinará con las reglas defactibilidad de Deb[23] para dirigir la búsqueda hacia frentes de Paretofactibles.

El uso de elitismo. A diferencia del concepto de elitismo en opti-mización global, que consiste en almacenar la mejor solución obtenidahasta el momento, para el caso multi-objetivo se requiere de almacenarel conjunto de soluciones no-dominadas en un archivo externo comose propuso originalmente en [63] y [41]. Para MOMBFOA se proponeusar un archivo externo que almacene únicamente soluciones factiblesno dominadas. El contenido de dicho archivo será el que se reporte co-mo resultado de la ejecución de MOMBFOA al cumplirse la condiciónde paro.

El manejo de diversidad en el espacio de las funciones . Ademásde mantener la diversidad de soluciones en el espacio de las variablescomo en el caso de optimización mono-objetivo, se requiere de manejardiversidad en el espacio de las funciones objetivo. Una de las técnicasmás populares es el uso de la distancia de aglomeramiento (crowdingdistance) [25]. En él, se preeren aquellas soluciones que estén másdispersas en el espacio de las funciones objetivo con el objetivo de en-contrar soluciones en todo este espacio. A continuación en la tabla 5.3 semuestra el pseudocódigo para calcular la distancia de aglomeramiento.

extender el frente de Pareto y lograr encontrar y abarcar con solucionesfactibles la mayor parte del espacio objetivo

5.2.1. Implementación de mecanismos al MBFOA para

resolver problemas multi-objetivos

Se aplicarón al MBFOA los mecanismos mencionados en esta sección (criteriode selección, uso de elitismo y manejo de diversidad), el proceso de imple-mentación se llevó a cabo mediante una serie de experimentos, los cuales

63

Page 74: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Pseudocódigo del cálculo de la distancia de aglomeramiento

Entrada: Archivo externo Aa,b=size(A) //Guardar tamaño del archivo externoFor all (i ∈ A) doA[i]dist=0 //Iniciar distancia en 0

end forFor all φt doA=burbuja(A,φt) //Ordenar A descendentemente de acuerdo a φtA[i]dist=A[a]=∞ //Asignar ∞ a los valores extremosFor i=2 to a-1 do //Calcular distanciaA[i]dist = A[i]dist+ | A[i−1]dist,φt−A[i+1]dist,φt

A[1],φt−A[a],φt |end for

end for

Tabla 5.3: Pseudocódigo para calcular la distancia de aglomeramiento. A[1]es el valor máximo de la t-ésima función y A[a] es su valor mínimo. Size() esuna función de Matlab que devuelve el tamaño de las y columnas de unamatriz.

consisten en hacer versiones del MBFOA con los mecanismos mencionados yasi mejorar el desempeño del algoritmo para resolver el problema del TVC.

En todos los experimentos se ejecuto 10 veces el MBFOA, los parámetros deejecución fueron diferentes entre los experimentos, solo se reporta la mejorcombinación de parámetros que permite que el algoritmo obtenga solucionescompetitivas. Los parámetros de ejecución fueron ajustados de acuerdo alcomportamiento del algoritmo donde se busca que el algoritmo obtenga unconjunto grande y distribuido de soluciones factibles no dominadas con uncosto computacional moderado.

5.2.2. Versiones del MBFOA

Las versiones del MBFOA son el resultado de las adaptaciones y modicaciónde mecanismos al algoritmo para resolver el problema PODMR. Cabe men-cionar que las versiones del algoritmo fueron de manera incremental, es decir,de acuerdo al comportamiento y análisis de los resultados del algoritmo al

64

Page 75: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

experimentar con adaptaciones y modicaciones realizadas a este.

1.- El primer experimento (versión 1 del MBFOA) fue llevado a cabo proban-do al MBFOA tal cual se conoce, los parámetros fueron los mismo encontra-dos en [47], sólo se adaptó para que pudiera evaluar más de un objetivo, yaque el problema del TVC tiene dos funciones objetivo. El resultado de esteexperimento fue sólo una solución factible al problema, debido a que el algo-ritmo hace que las bacterias se dirijan a la mejor bacteria de la población encada generación provocando que al nal del algoritmo todas las bacterias secoloquen en una sola posición del espacio de búsqueda. Este comportamientose deriva del proceso de reproducción, donde la mitad de las mejores bacte-rias son duplicadas, es decir, se colocan en la misma posición del espacio debúsqueda a dos bacterias para que inicien su búsqueda a partir de allí parala siguiente generación lo cual no permite que se exploren otras partes delespacio de búsqueda.

Derivado de estos resultados y del comportamiento del algoritmo se ópto poreliminar el proceso de reproducción para el siguiente experimento, aunqueposteriormente se analizó la forma en cómo incluir este proceso de nuevo alalgoritmo.

2.- El segundo experimento (versión 2 del MBFOA) consistió en probar alMOMBFOA sin proceso de reproducción y la aplicación de cruza intermediaen el algoritmo, además de incluir el uso del archivo externo, el concepto dedistancia de aglomeramiento y la adaptación del ciclo quimiotáctico.

La cruza intermedia es un proceso llevado a cabo en los algoritmos evolutivosel cual consiste en generar dos nuevas soluciones a partir de la combinaciónde dos soluciones ya existentes la cuales se combinan intercambiando algunode los valores de sus variables, el resto de las variables de la solución es gene-rada aleatoriamente dentro del rango permitido de las variables, este procesocorresponde a hacer mutaciones en este caso de las bacterias. Una de lascaracterísticas de cruza intermedia es que garantiza que las mutaciones seangeneradas dentro del rango de las variables del problema [35].

El archivo externo es usado sólo para almacenar las soluciones factibles nodominadas encontradas en cada generación. A este archivo se le aplica el con-cepto de distancia de aglomeramiento y es ordenado de manera descendente

65

Page 76: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

para ser usado en el proceso quimiotáctico.

La idea original del MOMBFOA es que en el ciclo medio y último del procesoquimiotáctico las bacterias se dirigen en un cierto porcentaje a la posiciónde la mejor bacteria de la población, para este experimento, las bacterias sedirigen a la mejor bacteria de la población pero con respecto a la distanciade aglomeramiento en el ciclo medio y último.

Este experimento se realizó en dos etapas, la primera consistió en utilizarla cruza intermedia cada 10 generaciones durante la ejecución del algoritmo,donde se aplicaba cruza intermedia a cada par de bacterias que conformabanel archivo externo para hacer más grande dicho archivo y tener un frente másdistribuido y poblado. La segunda etapa del experimento consistió en aplicarcruza intermedia al nal de la ejecución del algoritmo, es decir, al archivoexterno nal, donde se hacía cruza intermedia solo a las soluciones con mejordistancia de aglomeramiento (extremos del frente de Pareto).

Para ambas etapas del experimento se utilizaron lo parámetros de la tabla 5.4.

Parámetros ValorBacterias 200Generaciones 80Ciclo quimiotáctico 20Factor de escalamiento 1.2Tamaño de paso 0.0012

Tabla 5.4: Parámetros para el experimento 2

El frente de Pareto obtenido por MOMBFOA en el experimento de la etapa1 fue muy pobre en soluciones debido a que las soluciones generadas con lacruza intermedia violaban restricciones. El 70% de las ejecuciones del algo-ritmo llegaba a su n y no se obtenian soluciones factibles, el 30% restantede las ejecuciones en promedio generaba 3 soluciones factibles por ejecucióndel algoritmo, en la gura 5.1 se presenta el frente de Pareto de las solucionesfactibles encontradas por este experimento.

66

Page 77: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 5.1: Frente de Pareto obtenido del experimento 2 etapa 1

Para la etapa 2 de este experimento, se aplico cruza intermedia al nal dela ejecución del algoritmo, especicamente a los extremos del archivo exter-no resultante debido a que se buscaba una mejor distribución del frente dePareto. En este experimento, el 50% de las ejecuciones del algoritmo gene-raban soluciones factibles. El frente de Pareto de esta etapa se muestra enla gura 5.2. Aunque el frente es uniforme, distribuido y con mayor númerode soluciones, la mayoría de las soluciones allí presentadas son soluciones nofactibles y esto es debido a la cruza intermedia aplicada al nal de cada eje-cución del algoritmo.

Para ambos casos, aunque la cruza intermedia garantiza que las variablesde las mutaciones estén dentro del rango de las variables del problema estono garantiza que las soluciones sean factibles para el problema que estamosresolviendo, ya que las restricciones del problema son muy sensibles y el valorde las variables generadas en las mutaciones no se complementan entre ellas,es decir, el vector de variables aunque esta dentro del rango no genera unasolución factible (se violan las restricciones).

En la gura 5.3 se presenta un promedio de soluciones factibles no dominadasgeneradas por generación de las ejecuciones realizadas en la etapa 2 de esteexperimento. Podemos observar como el algoritmo obtiene un conjunto desoluciones que al nal, las soluciones de los extremos del frente, son dupli-cadas por el uso de la cruza intermedia en este experimento. Sin embargo,

67

Page 78: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 5.2: Frente de Pareto obtenido del experimento 2 etapa 2

estas soluciones generadas por la cruza son no factibles.

3.- En el tercer experimento (versión 3 del MBFOA), se ejecuto al MOMB-FOA sin cruza intermedia y proceso de reproducción, quedando solo el usodel archivo externo, el concepto de distancia de aglomeramiento y el mismoproceso quimiotáctico donde las bacterias se dirigían a la mejor bacteria conrespecto a la distancia de aglomeramiento con el objetivo de tener una mejordiversidad en el espacio de funciones objetivo, es decir, dirigir a las bacteriashacia uno de los dos extremos (superior o inferior) del frente de Pareto quese forma con las soluciones factibles no dominadas encontradas en el archivoexterno. Se realizaron varias calibraciones de los parámetros del algoritmo,dando la mejor combinación de parámetros los presentados en la tabla 5.5 yel frente de Pareto obtenido se muestra en la gura 5.4.

Aunque el frente obtenido es más distribuido, uno de los inconvenientes deestos resultados era que de las 10 ejecuciones del algoritmo el 40% de ellas noencontraba ninguna solución factible, es decir, el algoritmo se terminaba deejecutar y no lograba generar soluciones factibles no dominadas, sin embargola suma de violación de restricciones de cada bacteria era menor comparadocon los resultados de las versiones anteriores, lo cual nos hizo pensar que elalgoritmo requería de mayor tiempo de exploración en el espacio de búsque-da y que era necesario aplicar el proceso de reproducción pero con menorpresencia, estas conclusiones son el motivo del cuarto y último experimento.

68

Page 79: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 5.3: Número promedio de soluciones factibles por generación sobre 10corridas independientes en la etapa 2 del experimento 2 de la adaptación delalgoritmo MBFOA

Parámetros ValorBacterias 200Generaciones 80Ciclo quimiotáctico 18Factor de escalamiento 1.2Tamaño de paso 0.0012

Tabla 5.5: Parámetros para el experimento 3

En la gura 5.5 se observa el número promedio de soluciones factibles no do-minadas generadas por cada generación del algoritmo en este experimento.Como podemos observar el algoritmo genera pocas soluciones pero de maneraincremental conforme el paso de las generaciones.

4.- El cuarto experimento (versión 4 del MBFOA) consistió en volver a com-binar distintos valores para los parámetros del MOMBFOA y se incluyó elproceso de reproducción de bacterias. Durante la ejecución del algoritmo condiversos valores en los parámetros, se observo que los ciclos 15 y 20 del procesoquimiotáctico permitian obtener mejores resultados. Los parámetros nales

69

Page 80: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 5.4: Frente de Pareto obtenido del experimento 3

Figura 5.5: Número promedio de soluciones factibles por generación sobre10 corridas independientes del experimento 3 de la adaptación del algoritmoMBFOA

70

Page 81: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 5.6: Frente de Pareto obtenido del experimento 4

de este experimento se muestran en la tabla 5.6. También se hicieron mul-tiples combinaciones de valores para el parámetro del número de bacteriasa reproducir, se ejecutó el algoritmo reproducciendo 10, 5, 3, 2 y 1 bacteriadonde la mejor opción era reproducir solo una bacteria, en este caso la mejorde la población, ya que si se reproducian más bacterias el algoritmo no obte-nia mejores resultados y el frente de Pareto era muy pobre con respecto alnúmero de soluciones.

Se realizaron las corridas independientes con esta versión del algoritmo ytodas las ejecuciones encontraron un conjunto de soluciones factibles no do-minadas, las cuales son presentadas en la gura 5.6 que presenta el frente dePareto nal de este experimento.

Parámetros ValorBacterias 200Generaciones 125Ciclo quimiotáctico 20Factor de escalamiento 1.7Tamaño de paso 0.0018

Tabla 5.6: Parámetros para el experimento 4

71

Page 82: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Los resultados de este experimento son altamente competitivos y factibles,el número de evaluaciones son 500,000.

5.2.3. Adaptaciones a los mecanismos propios del MB-

FOA

Derivado de los experimentos realizados, aparte de los mecanismos implemen-tados, se relizaron las siguientes tres adaptaciones a los mecanismos propiosdel MBFOA que a continuación se describen, las cuales estan presenten enla versión 4 del MBFOA.

El mecanismo de comunicación entre las bacterias y la mejor bac-

teria de la población de una generación es modicado. El mecanismode comunicación descrito en el punto 4 de la sección 5.1 se modica de mane-ra que ahora la mejor bacteria será aquella con el mejor (mayor) valor de ladistancia de aglomeramiento (para cálculo de la distancia de aglomeramien-to de cada solución se usa el pseudocódigo de la tabla 5.3). El proceso, queaplicará en las iteraciones 15 y 20 del ciclo quimiotáctico, se realiza comosigue:

Si existen soluciones dentro del archivo externo se calcula la nueva posi-ción de la bacteria i, usando el efecto de swarming con la Ecuación 5.7:

θi(j + 1, G) = θi(j, G) + F (θBCr(G)− θi(j, G)) (5.7)

Donde θi(j+1, G) es la nueva posición de la bacteria i, θBCr es la actualposición de una de las bacterias con mejor Crowding de la generaciónG seleccionada del archivo externo, esto con el n de propiciar la di-versidad en el espacio de las soluciones y F es el factor de escalamiento.

Si no existen soluciones dentro del archivo externo se calcula la nuevaposición de la bacteria con la Ecuación 5.5.

Los pasos restantes en el ciclo quimiotáctico se realizan siguiendo los mismoscriterios que MBFOA, usando la ecuación 5.6.

72

Page 83: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Actualización del archivo externo. Cuando las bacterias comienzan subúsqueda el archivo externo se encuentra vacio, éste es llenado cuando lasbacterias encuentran la región factible, es decir, cuando las soluciones noviolan restricciones (es decir, no se almacenan en él soluciones no factibles).El archivo externo es actualizado después de cada generación, donde se in-troducen las soluciones factibles. Dentro de este archivo se realiza una ve-ricación de dominancia de Pareto (solo quedan soluciones no dominadas yse eliminan aquellas dominadas) y se evalúa la distancia de aglomeramientode cada bacteria, obteniendo con ello que el archivo externo quede ordenadode forma descendente con referencia a la distancia de aglomeramiento. Éstofacilita la elección de las soluciones usadas en el proceso quimiotáctico, yaque se utilizan las soluciones no dominadas con mejor valor de la distancia deaglomeramiento y así favorecer a la diversidad en el espacio de las funcionesobjetivo.

El mecanismo de reproducción es menos frecuente : en este caso solose reproduce una bacteria en cada generación la cual es la mejor de to-da la población (mejor con respeto a dominancia de Pareto). El motivo dereproducir el mínimo de bacterias es debido a que se pierde diversidad alreproducir un número elevado de bacterias en cada generación. La repro-ducción consiste en posicionar en el mismo lugar a varias bacterias, para elcaso de optimización mono-objetivo ésto es muy favorable ya que sólo se tra-ta de encontrar una solución al problema, pero para el caso de problemasmulti-objetivo pudiera tener el efecto contrario, pues se busca un conjuntode soluciones, todas óptimas de Pareto, al problema.

5.2.4. Pseudocódigo del MOMBFOA

Con base en las adaptaciones realizadas al MBFOA para resolver problemasmulti-objetivo, a continuación se presenta en la tabla 5.7 el pseudocódigoresultante.

5.2.5. Descripción del pseudocódigo MOMBFOA

A continuación se describe el pseudocódigo del MOMBFOA presentado enla Tabla 5.7 teniendo como entrada un PODMR.

73

Page 84: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Pseudocódigo MOMBFOA

BeginInicialización de parámetrosGenerar una población inicial aleatoria θi(j,G) ∀i, i = 1, SbEvaluar φt(θi(j, G)) ∀i, i = 1, Sb, t = 1, FoFor G=1 to GMAX DoFor i=1 to Sb DoFor j=1 to Nc DoRealizar el paso quimiotáctico (giro-nado o giro-giro) para labacteria θi(j, G) usando las reglas de factibilidad, conceptode dominancia de Pareto y las Ec.5.6 y 5.7End For

End Forc,f=size(archivoExt) //Guardar tamaño actual del archivo externoFor i=1 to Sb DoIf θi(j, G) es factiblearchivoExt[c+1]=θi(j, G)

end Ifend For* Vericación de dominancia de Pareto(archivoExt)* Calcular distancia de aglomeramiento(archivoExt)* Realizar el paso de reproducción para la eliminación de la antepenúltima peor bacteria y duplicar la mejor bacteria, basado enlas reglas de factibilidad y el concepto de dominancia de Pareto.* Eliminar a la peor bacteria θw(j,G) de la población, basado enlas reglas de factibilidad y el concepto de dominancia de Pareto,y generar una nueva aleatoriamente.

End ForEnd

Tabla 5.7: MOMBFOA. Los parámetros de entrada son el número de bacte-rias Sb, límite del paso quimiotáctico Nc, factor de escalamiento F, porcentajedel tamaño de paso R y el número de generaciones GMAX. Donde Fo cor-responde al numero de funciones objetivo. Size() es una función de Matlabque devuelve el tamaño de las y columnas de una matriz.

74

Page 85: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

1. Se inicializan los parámetros con los que trabajará el algoritmo, los cualesson número de bacterias Sb, límite del paso quimiotáctico Nc, factor de es-calamiento F, porcentaje de tamaño de paso R y el número de generacionesGMAX.

2. Se procede a generar una población aleatoria de bacterias θi(j, G)∀i, i =1, ..., Sb, el tamaño de la población permanece constante durante toda la eje-cución del algoritmo.

3. Se evalúa cada una de las bacterias φt(θi(j,G)) ∀i, i = 1, Sb, t = 1, Fo,donde cada bacteria es sustituida en cada una de las funciones objetivo yrestricciones del problema.

4. Se incrementa en 1 el contador de generaciones que correrá hasta el númeromáximo establecido en los parámetros, En cada generación se llevará a cabopara cada una de las bacterias el proceso quimiotáctico Nc veces, un procesode reproducción y un proceso de eliminación-dispersión en la población debacterias.

5. Para cada bacteria se realiza el ciclo quimiotáctico Nc veces (establecidoen los parámetros inicializados), en el cual cada una de las bacterias iniciasu búsqueda, nadando y avanzando hacia una nueva posición si la direcciónde búsqueda aleatoria genera una mejor solución; o girando para generar unanueva dirección de búsqueda si su avance no fue favorable en la búsquedade nutrientes, es decir no se obtuvo una solución (posición de la bacteria)factible no dominada, en ambos casos se utilizan las ecuaciones 5.6 y 5.7, asícomo las reglas de factibilidad y el concepto de dominancia de Pareto.

6. Una vez terminado el ciclo quimiotáctico el archivo externo es actual-izado con soluciones factibles encontradas por las bacterias, las cuales sonsometidas al concepto de dominancia de Pareto y se evalúa su distancia deaglomeramiento y así obtener el archivo externo ordenado de manera descen-dente en referencia a la distancia de aglomeramiento, que será utilizada enla proxima generación por el ciclo quimiotáctico.

7. Se realiza el proceso de reproducción, donde sólo se reproduce la mejorbacteria y se elimina a la ante penúltima bacteria de acuerdo a las reglas de

75

Page 86: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

factibilidad y el concepto de dominancia de Pareto.

8. Se realiza el proceso de eliminación-dispersión en el cual se elimina úni-camente a la peor bacteria de la población θw(j,G), basados en la reglas defactibilidad y se genera una nueva bacteria aleatoriamente.

9. Se realiza otra vez el proceso desde el paso número 4 hasta cumplir con elnúmero máximo de generaciones.

76

Page 87: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 6

Resultados

En esta sección se discuten los resultados obtenidos por MOMBFOA loscuales se obtuvieron con la versión 4 del MBFOA la cual fue la más establey obtuvo resultados competitivos. Los resultados son comparandos con dosalgoritmos encontrados en la literatura especializada, el NSGA-II [26] el cuales uno de los más conocidos para resolver problemas multi-objetivo y haceuso del concepto de dominancia por capas y distancia de aglomeramiento,y una versión del Evolución Diferencial (ED) [45] para resolver problemasmulti-objetivo que hace uso de elitismo y distancia de aglomeramiento. Lostres algoritmos a comparar hacen uso de la distancia de aglomeramiento parael manejo de diversidad en el espacio de las funciones objetivo. El valor delos parámetros de inicialización de NSGA-II son: población 100, generaciones5000, porcentaje de cruza 0.8 y porcentaje de mutación 0.3. Para el algoritmoED el valor de los parámetros de inicialización son: población 100, genera-ciones 5000, constante de recombinación aleatorio [0.8, 1], y por último losvalores para MOMBFOA son los presentados en la tabla 5.6 los cuales son:población de bacterias 200, generaciones 125 y ciclos quimiotácticos 20.

6.1. Diseño experimental

Los resultados obtenidos por MOMBFOA serán comparados con los re-sultados obtenidos de la implementación del ED y NSGA-II a través de lasmétrica Two Set Coverage y Hypervolumen descritas a continuación.

77

Page 88: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Two Set Coverage Metric [64]. Esta métrica compara la cobertura dedos conjuntos de soluciones de los vectores A'y A. La métrica de coberturaC(A',A) calcula el número de soluciones en A que son dominadas por solu-ciones de A' :

C(A′, A′′) =|a′′ ∈ A′′|∃a′ ∈ A′ : a′ ≺ a′′|

|A′′|(6.1)

El valor de la métrica C(A',A)=1 signica que todos las soluciones deA son dominadas por A'. Por otra parte, C(A',A)=0 signica que ningu-na solución de A es dominada por A'. Cabe mencionar que el operador dedominancia no es simétrico, es decir, C(A',A) no es igual que 1-C(A',A)=1,por lo que es necesario calcular por ambas métricas C(A',A) y C(A,A').

Hypervolume (Hv) [65]. Esta métrica mide el volumen del espacio objeti-vo que es cubierto por el conjunto de soluciones (Q). Para cada solución i ∈Q se construye un hipercubo (rectángulo) vi con un punto de referencia W.El punto de referencia puede ser el valor máximo de cada función objetivo(problema multi-objetivo). La unión de cada hipercubo es el Hv y se calculade la siguiente manera:

Hv = (∪|Q|i=1vi) (6.2)

Donde un mayor Hv signica que Q ocupa mayor espacio objetivo.

En la Figura 6.1 se presenta el frente ltrado obtenido de los algoritmosED, NSGA-II y MOMBFOA al resolver el problema del TVC, cada uno eje-cuto 10 corridas independientes con 500,000 evaluaciones, en ésta gura seobserva que ED es quien encuentra soluciones en un área más grande del es-pacio de soluciones que los otros dos algoritmos, aunque MOMBFOA dominagran parte de las soluciones de ED. Las soluciones encontradas por NSGA-IIquedan en un espacio que es dominado por ED y MOMBFOA esto es de-bido al proceso de cruza y mutación del algoritmo no ayuda en el proceso debúsqueda de mejores soluciones para este problema. En el experimento 2 dela sección 5.2.2 se aplicó cruza intermedia al MOMBFOA lo cual generabamuchas soluciones pero la mayoría de ellas eran no factible y esto ocurre conel NSGA-II lo cual no permite que haya una mayor exploración y explotación

78

Page 89: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

del espacio de búsqueda.

Figura 6.1: Frente de Pareto de cada uno de los algoritmos

En el apartado de Anexos se presentan las soluciones del frente ltrado decada uno de los algoritmos en las guras correspondientes.

6.2. Análisis de comportamiento del MOMB-FOA para satisfacer a la restricción dinámi-ca y generar soluciones factibles y no do-minadas

En esta sección se presenta un análisis de comportamiento del MOMBFOAcon respecto a la satisfacción de la restricción dinámica del problema y lageneración de soluciones factibles y no dominadas. El análisis es derivado dela ejecución de 10 corridas independientes del algoritmo.

1. El primer análisis es sobre el comportamiento del MOMBFOA parasatisfacer solo la restricción dinámica del problema, en la Figura 6.2 se

79

Page 90: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

muestra el comportamiento del algoritmo (promedio de las 10 ejecu-ciones) en la cual se puede observar que entre las primeras 5 generacio-nes más de la mitad de la población satisface la restricción dinámica,esto tiene un costo de alrededor de las 20,000 evaluaciones. Entre las ge-neraciones 6-40 (antes de 160,000 evaluaciones) el 90% de la poblaciónsatisface la restricción dinámica, y el último 10% de la población lograsatisfacer la restricción dinámica entre las generaciones 41 a 125 (entre164, 000 y 500, 000 evaluaciones). Podemos deducir que MOMBFOA esrápido para satisfacer la restricción dinámica del problema, sin embar-go, esta no es la única restricción del problema y este comportamientono reeja la capacidad del algoritmo para generar soluciones factibles.

Figura 6.2: Número promedio de soluciones que satisfacen la restriccióndinámica por generación sobre 10 corridas independientes

2. El segundo análisis consistió en observar el comportamiento del MOMB-FOA para generar soluciones factibles (soluciones que no violen ningunarestricción), en la Figura 6.3 se presenta el comportamiento del algo-ritmo (promedio de las 10 ejecuciones) donde se observa un procesoincremental constante del algoritmo para generar soluciones factiblesal problema, sin embargo, este proceso es más lento con respecto alcomportamiento del análisis de satisfacción de la restricción dinámica.Analizando la Figura 6.3 a partir de la generación 22 (alrededor de88,000 evaluaciones) es cuando la mitad de la población es factible y es

80

Page 91: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

entre las generaciones 81 y 125 (entre 324,000 y 500,000 evaluaciones)cuando la población entera es factible.

Figura 6.3: Número promedio de soluciones factibles por generación sobre 10corridas independientes

3. Por último, el análisis de comportamiento del MOMBFOA (promediode las 10 ejecuciones) para generar soluciones factibles no dominadas lascuales son almacenadas en el archivo externo del algoritmo por cada ge-neración. En la Figura 6.4 se observa que el algoritmo también presentaun comportamiento incremental pero en este caso el número de solu-ciones factibles no dominadas es pequeño. Entre las primeras 20 gene-raciones (80,000 evaluaciones) sólo 6 soluciones factibles no dominadasson almacenadas en el archivo externo, para el resto de las generacionesen promedio otras 6 soluciones más son almacenadas, dando en totalun aproximado de 12 soluciones factibles no dominadas almacenadasen el archivo externo por ejecución del algoritmo. Cabe mencionar queel problema que se está resolviendo es del mundo real y es muy difícilencontrar soluciones factibles no dominadas.

Derivado de estos análisis de comportamiento del MOMBFOA, se ob-serva que el mecanismo para el manejo de restricciones es tambiéneciente para restricciones en ambientes dinámicos, se tiene una rápidainserción de bacterias en la región factible del problema en un número

81

Page 92: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 6.4: Número promedio de soluciones factibles no dominadas por ge-neración sobre 10 corridas independientes

aproximado de 80,000 evaluaciones dicha propiedad resulta atractivapara diseñadores ya que es un costo mínimo de evaluaciones. Por otraparte, el comportamiento incremental del algoritmo en sus tres análisismuestra que MOMBFOA es capaz de encontrar soluciones factibles nodominadas con un costo computacional moderado.

Los resultados de las 10 corridas independientes del MOMBFOA conlas cuales se generó el frente de Pareto son comparados y analizados enlas siguientes secciones.

6.3. Resultados comparados con la métrica Twoset coverage

A continuación se presentan las estadísticas obtenidas al aplicar las métricasTwo set coverage a los resultados obtenidos de ED, MOMBFOA y NSGA-II,se coloca en negritas el mejor resultado. Cabe mencionar que se comparócada uno de los frentes obtenidos en las 10 corrida de un algoritmo contracada uno de los frentes obtenidos del algoritmo que se compara, esto con eln de conocer que algoritmo es mejor con respecto al número de soluciones

82

Page 93: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

que domina y al área que ocupa del espacio objetivo.

En la tabla 6.1 se presentan las estadísticas obtenidas por la métrica Two setcoverage.

Algoritmos Mejor Media Mediana Desv. Est. Peor U Mann de

Whitney

MOMBFOA-NSGA-II 1 1 1 0 1NSGA-II-MOMBFOA 0 0 0 0 0

ED-NSGA-II 1 1 1 0 1NSGA-II-ED 0 0 0 0 0

MOMBFOA-ED 0.9259 0.3366 0.3537 0.2571 0ED-MOMBFOA 1 0.3283 0.25 0.3266 0 =

Tabla 6.1: Estadísticas de la métrica Two set coverage. Desv. Est.: Desviaciónestándar. El signo

√: Si existe diferencia signicativa. El signo =: No existe

diferencia signicativa.

Para esta métrica Two set coverage el valor óptimo es 1. Observamos queNSGA-II es dominado por ED y MOMBFOA. En el caso de comparación deMOMBFOA-ED y ED-MOMBFOA ambos algoritmos presentan buenos re-sultados, aunque ED es quien obtiene el valor óptimo, analizando los valoresdel mejor, media, mediana y desviación estándar del MOMBFOA observa-mos que no hay una diferencia a simple vista de los algoritmo, por esta razónse aplicó una prueba para determinar si existe una diferencia signicativa delos resultados entre los algoritmos.

Para conocer que prueba se tiene que aplicar a los resultados de los algoritmosED y MOMBFOA primero se tiene que conocer si será una prueba paramétri-ca o no paramétrica, para ello se aplicó la prueba Kolmogorov-Smirnov [27]para determinar si los valores (resultados de algoritmos) se ajustan a la nor-mal, dando como resultado que los valores no se ajustan a la normal. Porlo tanto, la prueba será no-paramétrica, en este caso se aplicó la prueba UMann de Whitney o Wilcoxon [27] de la cual se muestra el resultado obtenidoen esta misma tabla en la última columna.

De acuerdo a los resultados de la prueba U Mann de Whitney, para la métricaTwo set coverage no existe una diferencia signicativa entre los algoritmosED y MOMBFOA. Para la comparación de ED-NSGA-II y MBFOA-NSGA-

83

Page 94: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

II y viceversa hay una diferencia signicativa a favor de MOMBFOA y EDrespectivamente.

6.4. Resultados comparados con la métrica Hy-pervolume

En la tabla 6.2 se presentan las estadísticas obtenidas por la métrica Hyper-volume, donde el valor de la media representa el área que puede un algoritmocubrir del espacio objetivo. El punto de referencia para calcular el área fueron(0,0.7).

Algoritmos Mejor Media Mediana Desv.Est. Peor

ED 0.3548 0.30517 0.3013 0.02662 0.2731NSGA-II 0.1478 0.10697 0.10765 0.03113 0.0478MOMBFOA 0.2890 0.2698 0.27495 0.01635 0.2465

Tabla 6.2: Estadísticas de la métrica Hypervolume. Desv. Est.:Desviaciónestándar

En la métrica Hypervolume se observa que ED y MOMBFOA obtienenmejores resultados que NSGA-II por que el valor de la media es mayor locual quiere decir que cubren mayor espacio objetivo. Comparando a ED yMOMBFOA se observa que es ED quien cubre un mayor espacio objetivo.Sin embargo no se sabe si hay una diferencia signicativa entre los resultadosde los algoritmos ED y MOMBFOA, para lo cual, se aplicó la misma pruebaque en el caso de la métrica Two set coverage porque los valores de ambosalgoritmos no se ajustan a la normal. Los resultados de la prueba se presen-tan en la tabla 6.3

De acuerdo al resultado de la prueba para la métrica Hypervolume, si existeuna diferencia signicativa al comparar los algoritmos y ED es quien ocupaun mayor espacio objetivo con respecto a NSGA-II y MOMBFOA. El se-gundo algoritmo en ocupar un mayor espacio objetivo es MOMBFOA y porúltimo, NSGA-II.

84

Page 95: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Algoritmo ED NSGA-II MOMBFOA

ED√+

√+

NSGA-II√-

√-

MOMBFOA√-

√+

Tabla 6.3: Identicando al mejor algoritmo con la prueba UMann deWhitneycon muestra de la métrica Hypervolume. El signo

√: Si existe una diferencia

signicativa. El signo =: No existe una diferencia signicativa. El signo +identica al mejor algoritmo, el signo - identica al peor algoritmo de lacomparación.

6.5. Calidad de los resultados

Calidad: El mejor resultado obtenido por cada algoritmo.

Calidad en los resultados con la métrica Two set coverage: se tomarán losvalores de la columna 2 de la tabla 6.1.

ED obtiene el mejor resultado cuando es comparado con NSGA-II yMOMBFOA.

MOMBFOA sólo obtiene un mejor resultado cuando es comparado conNSGA-II.

NSGA-II no obtiene ningún resultado competitivo.

Aunque ED obtiene resultados competitivos, la prueba no paramétrica de-terminó que no existe una diferencia signicativa entre el algoritmo ED yMOMBFOA, es decir, ambos algoritmos obtienes buenos resultados.

Calidad en los resultados con la métrica Hypervolume: se tomarán los valoresde la columna 2 de la tabla 6.2.

ED obtiene el mejor resultado, MOMBFOA se coloca en la segundaposición y por último, NSGA-II.

85

Page 96: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

6.6. Consistencia de los resultados

Consistencia: El valor en la media y su desviación estándar. Valores de lamedia cercanos al mejor valor obtenido y desviaciones estándar cercanas acero demuestran una mejor consistencia del algoritmo.

Consistencia en los resultados con la métrica Two set coverage: se tomaránlos valores de la columna 5 de la tabla 6.1.

ED y MOMBFOA obtienen una desviación estándar nula cuando escomparado con respecto a NSGA-II.

MOMBFOA obtiene mejor consistencia al ser comparado con ED.

Aunque MOMBFOA es más consistente, la prueba no paramétrica determinóque no existe una diferencia signicativa entre el algoritmo ED y MOMB-FOA, es decir, no se puede decir que un algoritmo es mejor que otro.

Consistencia en los resultados con la métrica Hypervolume: se tomarán losvalores de la columna 5 de la tabla 6.2.

MOMBFOA obtiene el mejor resultado, ED se coloca en una segundaposición y por último, NSGA-II.

6.7. Resultados comparados desde el punto devista mecánico

Debido a las comparaciones anteriores donde no se observa una diferenciasignicativa del algoritmo ED y MOMBFOA, el espacio de las funciones ob-jetivo se analizó desde el punto de vista de Ingeniería Mecánica para poderconcluir acerca de soluciones que ofrecen ventajas en la etapa de construcciónde dicho mecanismo. En la Fig. 6.5 se puede observar que las soluciones quese encuentran en el rango de (0.4, 0.8) y (0.3, 0.5) para las funciones φ1 y

86

Page 97: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

φ2 respectivamente, favorecen la construcción del mecanismo y presentan unmejor desempeño tanto para la generación de movimiento (φ1) como para lacalidad de funcionamiento del mecanismo (φ2) según los conocimientos del in-geniero en el diseño del TVC. Los tres algoritmos proveen soluciones factiblesen este rango, pero son las soluciones del MOMBFOA que son factibles nodominadas.

Las soluciones que se en encuentran en el rango, establecen una dimensióndel eslabón de salida (x4, ver columna 4 de las tablas de resultados de cadaalgoritmo en Anexos) mayor de 0.1m, lo que en principio permite una capaci-dad mayor de soportar esfuerzos de exión y permite una mayor capacidadde transmisión de energía entre la entrada y la salida del sistema.

Figura 6.5: Localizando al mejor espacio objetivo

En la tabla 6.4 se encuentra una solución de cada algoritmo que esta den-tro del rango que favorece la construcción del mecanismo del TVC. Dichassoluciones fueron probadas con un programa que simula el movimiento delmecanismo de cuatro barras del TVC. La entrada al programa es el vectorde variables de decisión x1, x2, x3, x4 y x5.

Desde el punto de vista mecánico, el ángulo θ4 debe tener un desplazamientoalrededor del eje vertical. Esto es, tomando como referencia un ángulo de 90

se debe tener una variación positiva y negativa de dicho ángulo, al mismo

87

Page 98: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Algoritmo x1/m x2/m x3/m x4/m x5/radED 0.4439 0.0505 0.4464 0.1406 -0.1295NSGA-II 0.3213 0.0745 0.3220 0.2054 -0.3013MOMBFOA 0.4825 0.0631 0.4825 0.1543 -0.1467

Tabla 6.4: Soluciones de cada algoritmo dentro del rango que favorece laconstrucción del TVC

tiempo el ángulo γ debe oscilar en el eje horizontal alrededor de un valor de90 para impulsar con mayor fuerza a la barra donde está el ángulo θ4 y ge-nerar un movimiento óptimo. En el caso del ángulo θ4 la variación tiene comolímites los valores de −45 y 45, es decir, entre 135 y 45 con respecto al ejehorizontal; en el caso del ángulo de γ el valor mínimo que puede tener parael buen funcionamiento del mecanismo es de 45. Los anteriores valores sonlos que se establecieron en las restricciones de diseño del mecanismo descritoen el capítulo 3.

El resultado de probar las soluciones de la tabla 6.4 en el simulador se pre-senta en la Figura 6.6.

Aunque todos los algoritmos obtienen soluciones factibles de construir y conángulos que permiten un movimiento adecuado para cada una de las barrasdel TVC, la solución más competitiva es aquella donde la onda tiene unamayor amplitud (2.3561 radianes como límite) y no excede los límites es-tablecidos (−45 por debajo del punto de desplazamiento y 45 por encimadel punto de desplazamiento).

En cada una de las ondas de la gura 6.6 colocamos el punto de desplaza-miento de θ4 que es de 90 (1.5707 radianes) representada con una línea azulhorizontal con una altura de 1.5707 radianes como punto de referencia paracomprobar que los ángulos del mecanismo sean factibles. A partir del puntode referencia, la onda debe oscilar entre −45 y 45, es decir, al punto dereferencia le sumamos 45 y este será la amplitud máxima de la onda que enradianes equivale a 2.3561 (90 + 45), por consiguiente, la onda debe de-scender hasta 0.7854 radianes que resulta de restarle al punto de referencia−45 (líneas rojas punteadas horizontales).

Como podemos observar es la onda de MOMBFOA quien presenta una ma-

88

Page 99: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 6.6: Graco resultante del simulador del comportamiento del meca-nismo de cuatro barras del TVC con una solución del ED, MOMBFOA yNSGA-II dentro del rango que favorece la construcción del mecanismo

yor amplitud para el caso de θ4 , es decir, se encuentra sobre 2.0 radianes. Laonda desciende a una profundidad que esta sobre 1.0 radianes. Con respectoa γ aunque los algoritmos ED y MOMBFOA son similares en dicho ángulo,por amplitud en el ángulo θ4 MOMBFOA es mejor.

En la gura 6.7 se presenta un Diseño Asistido por Computadora del TVC.Dicho diseño es una presentación real de como se verá construido el sistemaTVC.

89

Page 100: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 6.7: Diseño Asistido por Computadora del TVC

90

Page 101: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 7

Conclusiones

En este trabajo se adaptó el algoritmo del forrajeo de las bacterias modi-cado (MBFOA) para resolver un problema de optimización dinámico multi-objetivo con restricciones (PODMR). El sistema de transmisión de variacióncontinua (TVC) es un problema real del área de Mecatrónica que fue resueltoen este trabajo con el MOMBFOA versión del MBFOA. Éste problema tienecomo característica que es dinámico desde el punto de vista computacionalya que una de sus restricciones (g14) al ser evaluada en diferentes tiemposcon los mismos valores de las variables el resultado es diferente.

Los mecanismos aplicados al MBFOA para lograr el objetivo de este trabajofueron: uso del concepto de Dominancia de Pareto como criterio de selección,uso de un archivo externo para almacenar soluciones factibles no domina-das como mecanismo de elitismo y el uso de distancia de aglomeramiento(Crowding distance) para el manejo de diversidad en el espacio de las fun-ciones. Además de estos se realizaron adaptaciones a los mecanismos propiosdel MBFOA, en el caso del mecanismo de comunicación entre las bacterias yla mejor bacteria de la población en una generación, donde se determina quela mejor bacteria es aquella que tiene una mejor distancia de aglomeramien-to la cual es llamada en el ciclo 15 y 20 del ciclo quimiotáctico, esto paraexpandir el frente y por ende, tener mayor diversidad de soluciones. Para elproceso de reproducción solo se reproduce a la mejor bacteria de la poblaciónen cada generación para no perder diversidad.

Estas modicaciones y adaptaciones fueron aplicadas a MBFOA en diversosexperimentos, dando como resultado al MOMBFOA, el cual es un algoritmo

91

Page 102: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

capaz de resolver un problema PODMR. Los resultados de MOMBFOA parael problema del TVC fueron comparados con una versión del algoritmo deevolución diferencial (ED) y el NSGA-II ambos algoritmos capaces de resolverproblemas multi-objetivos, teniendo en común los tres algoritmos a compararel uso del mecanismo de distancia de aglomeramiento para el manejo de di-versidad en el espacio de las funciones objetivo. Cabe mencionar que los tresalgoritmos se ejecutaron 10 veces con 500, 000 evaluaciones cada ejecución.

Como parte de los resultados se analizó el comportamiento de MOMBFOApara satisfacer la restricción dinámica del problema, de lo cual se observó queel algoritmo es rápido ya que más de la mitad de la población en las primeras5 generaciones del algoritmo satisfacían dicha restricción. Por otra parte, seanalizó el comportamiento del algoritmo para generar soluciones factiblesdando como resultado un comportamiento incremental constante más suaveque el análisis para satisfacer a la restricción dinámica, y por último, elanálisis de comportamiento para generar soluciones factibles no dominadas,donde el algoritmo presentó también un comportamiento incremental peromás lento que en los dos análisis previos debido a que el problema a opti-mizar es muy complejo y por ende, es difícil encontrar soluciones factibles nodominadas.

Los resultados de MOMBFOA también fueron comparados y analizados conlas métricas Two set coverage y Hypervolume, dando como resultado que EDy MOMBFOA obtenían mejores resultados que NSGA-II, pero al compararED y MOMBFOA las métricas no son concretas para decir si un algoritmo esmejor que otro, por lo tanto, se analizaron exhaustivamente los resultados delos algoritmos desde el punto Mecatrónico donde las soluciones encontradaspor MOMBFOA permite una mayor capacidad de transmisión de energía en-tre la entrada y la salida del sistema lo cual permite un mejor movimiento delTVC, por lo tanto, MOMBFOA es quien encuentra las soluciones de mejorrendimiento.

Como trabajos futuros se espera usar al MOMBFOA para resolver otros pro-blemas reales multi-objetivos, por otra parte, se analizará el proceso quimiotác-tico enfocado en la relación entre el operador de nado y giro. Se experimentarácon el proceso de eliminación-dispersión aplicando una probabilidad de quela dispersión sea aleatoria o con dirección a la mejor solución a la mejor bac-teria de la población en la generación. Todo esto con el objetivo de que el

92

Page 103: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

algoritmo sea capaz de encontrar un conjunto de soluciones con mucha di-versidad y abarcar extensamente el espacio objetivo del problema a resolver.

93

Page 104: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Capítulo 8

Anexo

94

Page 105: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.1: Soluciones del frente ltrado de MOMBFOA

95

Page 106: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.2: Soluciones del frente ltrado de ED parte 1

96

Page 107: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.3: Soluciones del frente ltrado de ED parte 2

97

Page 108: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.4: Soluciones del frente ltrado de NSGA-II parte 1

98

Page 109: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.5: Soluciones del frente ltrado de NSGA-II parte 2

99

Page 110: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.6: Soluciones del frente ltrado de NSGA-II parte 3

100

Page 111: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.7: Soluciones del frente ltrado de NSGA-II parte 4

101

Page 112: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.8: Soluciones del frente ltrado de NSGA-II parte 5

102

Page 113: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Figura 8.9: Soluciones del frente ltrado de NSGA-II parte 6

103

Page 114: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Referencias

[1] Ajith Abraham, Arijit Biswas, Sambarta Dasgupta, and Swagatam Das.Analysis of reproduction operator in bacterial foraging optimization al-gorithm. In Congress on Evolutionary Computation (CEC 2008), pages14761483, 2008.

[2] H. Alvarez, O. Quintero, A. Angel, and M. Yepes. Strategies for avoidinglocal extreme in function optimization through bacterial chemotaxis.In Memorias del X Congreso Latinoamericano de Control Automático(CLCA 2002). Guadalajara, México, Diciembre 2002.

[3] K. M. Bakwad, S.S. Pattnaik, B. S. Sohi, S. Devi, and M.R. Lohakare.Parallel bacterial foraging optimization for video compression. Engi-neering Optimization, 1(1):118122, 2009.

[4] K.M. Bakwad, S.S.Pattnaik, B.S.Sohi, S.Devi, B.K.Panigrahi, andS.V.Gollapudi. Bacterial foraging optimization technique cascaded withadaptive lter to enhance peak signal to noise ratio from single image.IETE J RES, 1(55):173179, 2009.

[5] Arijit Biswas, Sambarta Dasgupta, Swagatam Das, and Ajith Abraham.A Synergy of Dierential Evolution and Bacterial Foraging Optimizationfor global optimization. Neural Network World, 17:607626, 2007.

[6] Arijit Biswas, Sambarta Dasgupta, Swagatam Das, and Ajith Abraham.Synergy of pso and bacterial foraging optimization - a comparative studyon numerical benchmarks. In E. Corchado et al., editor, Innovations inHybrid Intelligent Systems 2007, pages 255263. Springer-Verlag, 2007.

[7] Peter A.N. Bosman. Learning and Anticipation in Online Dynamic Op-timization, volume 51 of Studies in Computational Intelligence, chapter

104

Page 115: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Part I Optimum Tracking in Dynamic Environments, pages 129152.Springer, 2007.

[8] Hans J. Bremermann. Chemotaxis and optimization. J. Franklin Inst,297:397404, 1974.

[9] Hans J. Bremermann and R. Anderson. An alternative to back-propagation: A simple rule of synaptic modication for neural net train-ing and memory. Technical Report PAM-483, Center for Pure and Ap-plied Mathematics, University of California, Berkeley, California, USA,1989.

[10] B.Sumanbabu, S.Mishra, B.K.Panigrahi, and G.K.Venayagamoorthy.Robust tuning of modern power systems stabilizers using bacterial fora-ging algorithm. In Proceedings of the IEEE Congress on EvolutionaryComputation (CEC'2007), pages 23172324. Singapore, IEEE ServiceCenter, September 2007.

[11] Miguel G. Villarreal Cervantes Carlos A. Cruz Villar, Jaime Alvarez Gal-legos. Concurrent redesign of an underactuated robot manipulator.Mechatronics, 19(2):178183, 2009.

[12] Amitava Chatterjee and Fumitoshi Matsuno. Bacterial foraging tech-niques for solving ekf-based slam problems. In Proc. International Con-trol Conference (Control2006), Glasgow,UK, Aug. 30-Sep.01 2006.

[13] Hanning Chen, Yunlong Zhu, and Kunyuan Hu. Multi-colony bacteriaforaging optimization with cell-to-cell communication for rd networkplanning. Applied Soft Computing, 10(2):539547, 2010.

[14] Jae-Hoon Cho, Myung-Geun Chun, and Dae-Jong Lee. Parameter opti-mization of extreme learning machine using bacterial foraging algorithm.In Proceedings of the 8th Symposium on Advanced Intelligent systems(ISIS 2007), pages 742747, 2007.

[15] Ying Chu, Hua Mi, Huilian Liao, Zhen Ji, and Q. H. Wu. A fast bacte-rial swarming algorithm for high-dimensional function optimization. InCongress on Evolutionary Computation (CEC 2008), pages 31343139,2008.

105

Page 116: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

[16] A. Coello Coello, David A. Van Veldhuizen, and Gary B. Lamont. Evo-lutionary Algorithms for Solving Multi-Objective Problems. Kluwer Aca-demic Publishers, México, 2002.

[17] Swagatam Das, Archana Chowdhury, and Ajith Abraham. A bacterialevolutionary algorithm for automatic data clustering. In Congress onEvolutionary Computation (CEC 2009), pages 24032410, 2009.

[18] Swagatam Das, Sambarta Dasgupta, Arijit Biswas, and Tribeni PrasadBanerjee. On stability of the chemotactic dynamics in bacterial fora-ging optimization algorithm. In Proccedings in 2nd National ConferenceMathematical Techniques: Emerging Paradigms for Electronics and ITIndustries (MATEIT-2008), pages 153158, 2008.

[19] Sambarta Dasgupta, Arijit Biswas, Swagatam Das, and Ajith Abraham.Automatic circle detection on imágenes with and adptive bacterial fo-raging algoritm. In Proccedings of the 10th anual conference on geneticand evolutionary computation (GECCO'08), pages 16951696, 2008.

[20] Sambarta Dasgupta, Arijit Biswas, Swagatam Das, Bijaya Ketan Pan-igrahi, and Ajith Abraham. A micro-bacterial foraging algorithm forhigh-dimensional optimization. In Congress on Evolutionary Computa-tion (CEC 2009), pages 31343139, 2009.

[21] Sambarta Dasgupta, Swagatam Das, Ajith Abraham, and Arijit Biswas.Adaptive computational chemotaxis in bacterial foraging optimiza-tion: An analysis. IEEE Transactions on Evolutionary Computation,13(4):919941, 2009.

[22] Kalyanmoy Deb. Optimization for Engineering Design. Prentice-Hall,rst edition, 1995.

[23] Kalyanmoy Deb. An Ecient Constraint Handling Method for GeneticAlgorithms. Computer Methods in Applied Mechanics and Engineering,186(2/4):311338, 2000.

[24] Kalyanmoy Deb. Multi-Objetive Optimization using Evolutionary Algo-rithms. John Wiley Sons, LTD, 2002.

[25] Kalyanmoy Deb, S Agrawal, A Pratap, and Meyarivan. A fast elitist non-dominated sorting genetic algorithm for multi-objective optimization:

106

Page 117: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Nsga-ii. In Proceedings of the Parallel Problem Solving from Nature VIConference, pages 849858, 2000.

[26] Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and T. Meyarivan. Afast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE Trans-actions on Evolutionary Computation, 6(2):182197, 2002.

[27] Joaquín Derrac, Salvador García, Daniel Molina, and FranciscoHerrera. A practical tutorial on the use of nonparametric sta-tistical tests as a methodology for comparing evolutionary andswarm intelligence algorithms. Swarm and Evolutionary Computationdoi:10,1016/j.swevo.2011.02.002, pages 116, 2011.

[28] Marco Dorigo, Vittorio Maniezzo, and Alberto Colorni. The Ant System:Optimization by a Colony of Cooperating Agents. IEEE Transactionsof Systems, Man and Cybernetics-Part B, 26(1):2941, 1996.

[29] A.P. Engelbrecht. Fundamentals of Computational Swarm Intelligence.John Wiley & Sons, 2006.

[30] Diccionario De La Real Academia Española. http://raes.es. Agosto,2008.

[31] Edgar A. Portilla Flores. Diseño mecatrónico y ténicas heurísticas. Tech-nical report, Instituto Politécnico Nacional, CIDETEC, Julio 2010.

[32] Edgar A. Portilla Flores. Diseño óptimo de un sistema de transmisiónde variación continua. Technical report, Instituto Politécnico Nacional,CIDETEC, Abril 2010.

[33] Jaime Alvarez Gallegos, Carlos A. Cruz Villar, and Edgar A. PortillaFlores. Parametric optimal design of a pinion-rack based continuouslyvariable transmission. In of the 2005 IEEE/ASME International Con-ference on Advanced Intelligent Mechatronics, pages 899904, MontereyCalifornia USA, 2005.

[34] Adriana Cortés Godínez. Comparación de dos algoritmos metaheurísti-cos en la solución multi-objetivo de un modelo particular de la cadenade suministros. Master's thesis, Instituto Tecnológico de León, 2010.

107

Page 118: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

[35] Schwefel H.P. Numerical Optimization of Computer Models. Wiley,Chichester, 1981.

[36] James Kennedy and Russell C. Eberhart. Particle swarm optimization.In Proceedings of IEEE International Conference on Neural Networks,Piscataway, volume 4, pages 19421948, 1995.

[37] James Kennedy and Russell C. Eberhart. Swarm Intelligence. MorganKaufmann, UK, 2001.

[38] D.Hwa Kim, A.Abraham, and J.Hoon C. A hybrid genetic algorithmand bacterial foraging approach for global optimization. InformationSciences, 177(18):39183937, 2002.

[39] Dong Hwa Kim, Ajith Abraham, and Jae Hoon Cho. A hybrid gene-tic algorithm and bacterial foraging approach for global optimization.Information Sciences, 177(18):39183937, 2007.

[40] K.M.Bakwad, S.S.Pattniak, B.S.Sohi, S.Devi, S.Gollapudi, C.Sagar, andP.K Patra. Synchronous bacterial foraging optimization for multimodaland high dimensional functions. In Proceedings of the 2008 Internation-al Conference on Computing, Communication and Networking (ICCCN2008), pages 18, 2008.

[41] J Knowles and D Corne. The pareto archived evolution strategy: Anew baseline algorithm for multiobjective optimization. In Congress onEvolutionary Computation, pages 98105, 1999.

[42] Wael Korani. Bacterial foraging oriented by particle swarm optimizationstrategy for pid tuning. In Proceedings of the Genetic and Evolution-ary Computation Conference (GECCO 2008), pages 18231826, Atlanta,GA, USA, 2008. ISBN:978-1-60558-131-6.

[43] Ritanjali Majhi and Ganapti Panda. Bacteria foraging based identica-cion of nonlinear dynamic system. In Proceedings of the IEEE Congresson Evolutionary Computation (CEC'2007), pages 16361641. Singapore,IEEE Service Center, September 2007.

[44] Ritanjali Majhi, Ganapti Panda, Gadadhar Sahoo, Pradipta K. Dash,and D. P. Das. Stock market prediction of s&p 500 and djia usingbacterial foraging optimization technique. In Proceedings of the IEEE

108

Page 119: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Congress on Evolutionary Computation (CEC'2007), pages 25692575.Singapore, IEEE Service Center, September 2007.

[45] Efrén Mezura-Montes, Carlos A. Coello Coello, and Edy I. Tun-Morales.Simple feasibility rules and dierential evolution for constrained op-timization. In Raúl Monroy, Gustavo Arroyo-Figueroa, Luis EnriqueSucar, and Humberto Sossa, editors, of the 3rd Mexican InternationalConference on Articial Intelligence (MICAI & apos), pages 707716,Heidelberg Germany, 2004.

[46] Efrén Mezura Montes and Betania Hernández Ocaña. Bacterial foragingfor engineering design problems: Preliminary results. In Proceedings delCuarto Congreso Mexicano de Computación Evolutiva (COMCEV'08),volume 3, pages 3338, Centro de Investigación en Matemáticas, A.C.CIMAT, Guanajuato, Gto. México, Octubre, 2008. ISBN 968-5733-10-4.

[47] Efrén Mezura-Montes and Betania Hernández-Ocaña. Modied bacte-rial foraging optimization for engineering design. In Proceedings of theArticial Neural Networks in Enginnering Conference (ANNIE'2009),volume 19, pages 357364. in Cihan H. Dagli et al. (editors), ASMEPress Series, Intelligent Engineering Systems Through Articial NeuralNetworks, 2009.

[48] Efrén Mezura-Montes, Edgar A. Portilla-Flores, Carlos A. Coello Coel-lo, Jaime Álvarez Gallegos, and Carlos A. Cruz-Villar. An Evolution-ary Approach to Solve a Novel Mechatronic Multiobjective OptimizationProblem, chapter Advances in Metaheuristics for Hard Optimization,pages 329351. Natural Computing Series. Springer-Verlag, 2008.

[49] K.M. Miettinen. Nonlinear Multiobjective Optimization. Kluwer Aca-demic Publishers, Boston Massachusetts, 1999.

[50] Sibylle D. Müller, Jarno Marchetto, Stefano Airaghi, and PetrosKoumoutsakos. Optimization based on bacterial chemotaxis. IEEETransac. Evolution computational, 6:1616, 2002.

[51] S. D. Muller, Jarno M., S. A., and Petros K. Optimization based onbacterial chemotaxis. IEEE Transactions on Evolutionary Computation,6(1):1629, 2002.

109

Page 120: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

[52] N. Nariman-Zadeh, M. Felezi, A. Jamali, and M. Ganji. Pareto opti-mal synthesisof four-bar for path generation. Mechanism and MachineTheory, 1(44):180191, March 2009.

[53] R.L. Norton. Diseño de Maquinaria, una introducción a la síntesis y alanálisis de mecanismos y máquinas. McGraw Hill, México, 1997.

[54] Betania Hernández Ocaña. Adaptación del forrajeo de bacterias pararesolver problemas de optimización con restricciones, 2009.

[55] Panos Y. Papalambros and Douglass J. Wilde. Principles of optimal de-sign: Modeling and Computation. Cambridge University Press, 2 edition,2000.

[56] Kevin M. Passino. Biomimicry of bacterial foraging for distributed op-timization and control. IEEE Control Systems Magazine, 22(3):5267,2002.

[57] Edgar A. Portilla-Flores, Efrén Mezura-Montes, Jaime Álvarez Gallegos,Carlos A. Coello Coello, and Carlos A. Cruz-Villar. Integration of struc-ture and control using an evolutionary approach: an application to theoptimal concurrent design of a cvt. International Journal for NumericalMethods in Engineering, 8(71):883901, 2007.

[58] R. Radovan and R. Stevan. On the optimum synthesis of a four-barlinkage usingdierential evolution and method of variable controlled de-viations. Mechanism and Machine Theory, 1(44):235246, March 2009.

[59] Vitorino Ramos, C. Fernandes, A. C. Rosa, and A.Abraham. Compu-tational chemotaxis in ants and bacteria over dynamic environments.In Proceedings of the IEEE Congress on Evolutionary Computation(CEC'2007), pages 11091117. Singapore, IEEE Service Center, Septem-ber 2007.

[60] Jesús Velázquez Reyes. Evolución diferencial para problemas de op-timización de espacios restringidos. Master's thesis, Sección de Com-putación, CINVESTAV-IPN, México, 2006.

[61] B. Sumanbabu, S. Mishra, B.K.Panigrahi, and G.K.Venayagamoorthy.Robust tuning of modern power systems stabilizers using bacterial fora-ging algorithm. In Proceedings of the IEEE Congress on Evolutionary

110

Page 121: Diseño Mecatró nico usando optimización basada en bacteriasemezura/util/files/tesis_Betania.pdf · Laboratorio Nacional de Informática Avanzada Diseño Mecatró nico usando optimización

Computation (CEC'2007), pages 23172324. Singapore, IEEE ServiceCenter, September 2007.

[62] W.J.Tang, Q.H.Wu, and J.R.Saunders. A bacterial swarm algorithmfor global optimization. In Proceedings of the IEEE Congress on Evo-lutionary Computation (CEC'2007), pages 12071212. Singapore, IEEEService Center, September 2007.

[63] E Zitzler and L Thiele. Multiobjective evolutionary algorithm: A com-parative case study and the strength pareto approach. IEEE Transac-tions on Evolutionary Computation, 3(4):257271, 1999.

[64] Eckart Zitzler, Kalyanmoy Deb, and Lothar Thiele. Comparison of mul-tiobjective evolutionary algorithms: Empirical results. evolutionary com-putation. Evolutionary Computation, 8(2):173195, 2000.

[65] Eckart Zitzler and Lothar Thiele. Multiobjective optimization using evo-lutionary algoritms: A comparative case study. Parallel Problem Solvingfrom Nature V (PPSN-V), pages 292301, 1998.

[66] Z.Lu, M.S.Li, Z. Lu, M. S. Li, W. J. Tang, and Q. H. Wu. Optimallocation of FACTS devices by a bacterial swarming algorithm for reactivepower planning. In Proceedings of the IEEE Congress on EvolutionaryComputation (CEC'2007), pages 23442349. Singapore, IEEE ServiceCenter, September 2007.

111