Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
1 Universidad de Guadalajara Centro Universitario de Ciencias Exactas e ingenierías Seminario de Solución de Problemas de Inteligencia Artificial (I7039) Sección: D04 Maestra: José de Jesús Hernández Barragán Alumno: José Luis Serna Serna Código: 218292327 Práctica 2 16/04/2021 2 Contenido Objetivo. ....................................................................................................................................... 2 Resultados: .................................................................................................................................. 3 Algoritmo Genético .................................................................................................................. 3 Función 1.............................................................................................................................. 3 Función 2.............................................................................................................................. 5 Algoritmo Genético Elitista ..................................................................................................... 7 Función 1.............................................................................................................................. 7 Función 2.............................................................................................................................. 9 Diagrama de caja de la función 1. ....................................................................................... 11 Diagrama de caja de la función 2. ....................................................................................... 11 Datos estadísticos. ................................................................................................................ 12 Conclusión. ................................................................................................................................ 12 Objetivo. El objetivo de la presente practica es desarrollar un programa de cómputo que encuentre los mínimos globales de las siguientes funciones implementando el Algoritmo Genético y el Algoritmo Genético Elitista. Función 1: 𝑓(𝑥, 𝑦) = 𝑥 𝑒−𝑥 2−𝑦2 , 𝑥, 𝑦 ∈ [−2, 2] Función 2: 𝑓(𝑥) = ∑ (𝑥𝑖 − 2) 2, 𝑑 = 2𝑑𝑖=1 = Al final mostrar los resultados, gráficas de resultados (función objetivo, valor mínimo encontrado), gráficas de convergencia, datos estadísticos y diagramas de caja. 3 Resultados: Algoritmo Genético Función 1. Mínimos globales. Gráfica 2D. 4 Gráfica 3D. Gráfica de convergencia. 5 Función 2. Mínimos globales. Gráfica en 2D. 6 Gráfica 3D. Gráfica de convergencia. 7 Algoritmo Genético Elitista Función 1. Mínimos globales. Gráfica 2D. 8 Gráfica 3D. Gráfica de convergencia. 9 Función 2. Mínimos globales. Gráfica 2D. 10 Gráfica 3D. Gráfica de convergencia. 11 Diagrama de caja de la función 1. Diagrama de caja de la función 2. 12 Datos estadísticos. Función Algoritmo Media STD Mínimo Máximo 1 GA -0.167592191 0.172012611 -0.42828 0.33577 1 GAE -0.4284373 0.00121219 -0.42888 -0.41808 2 GA 0.478448355 3.004408797 9.322E-05 48.216 2 GAE 0.475119851 1.116230506 6.315E-13 11.072 Conclusión. Esta actividad fue muy interesante ya que pude realizar la comparación del Algoritmo Genético con el Algoritmo Genético Elitista, donde básicamente se le aplican unas mejoras al Algoritmo Genético para hacer que funcione de mejor manera. Fue muy interesante ver como se pueden hacer distintas combinaciones entre los principales métodos que conforman el algoritmo elitista, por ejemplo las distintas clases de selección, cruza y mutación, pude darme cuenta que puede variar el rendimiento y la exactitud en los resultados dependiendo de en qué función se esté trabajando, que valor de mutación se este usando, y que tipo de selección, cruza y mutación se este utilizando, se puede jugar con esos distintos factores para encontrar el algoritmo que mejor se adapte a la tarea que vamos a realizar. Como, por ejemplo, en la función 1, el comportamiento del algoritmo genético normal fue bastante malo, se puede dar uno cuenta en el comportamiento de la gráfica de convergencia, también en el análisis estadístico se puede ver valores muy dispersos en el diagrama de caja, mientras tanto su desempeño en la función 2 fue un poco más regular, aunque si salieron algunos valores mas dispersos en el diagrama de caja. Por otro lado, el comportamiento del Algoritmo Genético Elitista con selección por ranking y mutación por distribución normal tuvo un desempeño bastante bueno en la función 1, se puede ver en el diagrama de caja donde hay una distribución uniforme, y en los datos estadísticos no hay mucha diferencia entre el mínimo y el máximo, por otro lado, en la función 2 también fue buen desempeño, pero no tanto como se esperaba, ya que en el análisis estadístico salieron por allí unos valores dispersos en el diagrama de caja. En conclusión, la ventaja de usar el Algoritmo Genético Elitista es que se pueden utilizar muchas variantes de cruza, mutación y selección para adaptar el algoritmo a nuestras necesidades y así lograr el mejor desempeño posible, por ello también es importante el análisis estadístico, ya que nos ayuda a tomar decisiones sobre cómo se comporta el algoritmo con una función en específico y así realizar las modificaciones pertinentes que nos ayuden a mejorar nuestro algoritmo, como por ejemplo en la función 2 puedo realizar modificaciones en dichos factores hasta encontrar el algoritmo que mejor se desempeñe. En general me considero que esta actividad me dejo un saldo positivo en cuento a conocimientos sobre el comportamiento y mejora de algoritmos y análisis estadístico, además de la teoría de los algoritmos, en la utilización de las herramientas y funciones que ofrece Matlab, sin duda será de gran ayuda lo aprendido en esta práctica para la realización de prácticas posteriores.
Compartir