PracticaComputoEvolutivo EduardoDanielUcUicab
PracticaComputoEvolutivo EduardoDanielUcUicab
PracticaComputoEvolutivo EduardoDanielUcUicab
FORMATO
DE DESARROLLO DE SOFTWARE
RESUMEN:
La función de Rastrigin es una función matemática ampliamente reconocida y utilizada en el
ámbito de la evaluación de algoritmos de optimización. Su relevancia radica en su capacidad para
proporcionar un desafío significativo a los algoritmos de optimización, lo que permite evaluar su
eficiencia y robustez.
Lo que la distingue es su compleja topografía, que contiene numerosos mínimos y máximos
locales, lo que la convierte en un terreno propicio para poner a prueba las capacidades de
convergencia y exploración de algoritmos de optimización. Estos mínimos y máximos locales
pueden desorientar a los algoritmos y hacer que converjan a soluciones subóptimas si no están
diseñados para abordar este tipo de desafíos.
La función de Rastrigin fue concebida inicialmente en dos dimensiones por Rastrigin en 1974,
marcando un hito en la teoría de funciones de optimización. Posteriormente, investigadores
como Mühlenbein y colaboradores la generalizaron para múltiples dimensiones, lo que amplió su
aplicabilidad y su utilidad en el análisis y desarrollo de algoritmos de optimización
multidimensionales. Esta generalización ha permitido su aplicación en una amplia gama de
problemas que involucran múltiples variables, consolidándola como una herramienta
fundamental en la evaluación y comparación de algoritmos de optimización en la comunidad
científica.
MARCO TEÓRICO:
Matlab: Cada lenguaje de programación tiene su propia finalidad y una historia distintiva. Un
ejemplo de esto es MatLab, que guarda similitudes con otros lenguajes reconocidos como Java y
C#. MatLab viene acompañado de su propio entorno de desarrollo integrado (IDE) y un conjunto
de bibliotecas.
La denominación "Matlab" proviene de la abreviatura de "Laboratorio de matrices", ya que en
sus inicios se conocía como un lenguaje de programación centrado en manipulación de matrices.
Este lenguaje, clasificado como de cuarta generación, fue concebido por Cleve Moler, quien en
ese tiempo era el líder del departamento de informática en la Universidad de Nuevo México.
La creación de Matlab tuvo como objetivo principal encontrar una alternativa para realizar
álgebra lineal y computación numérica, evitando así que los estudiantes dependieran de Fortran.
Posteriormente, en 1984, Cleve Moler, junto a Steve Bangart y Jack Little, quienes reconocieron
el potencial comercial de Matlab, fundaron MathWorks. En ese mismo año, MathWorks lanzó la
primera versión oficial de Matlab.
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
Y = 20 + (X(1)^2)+(X(2)^2)-10*(cos(2*3.14159265*X(1))+cos(2*3.14159265*X(2)))
donde X(1) y X(2) son las dos dimensiones de entrada, y Y es el valor de la función de Rastrigin
para esas dimensiones.
La función FRastrigin toma un vector X con dos elementos (representando las coordenadas
en dos dimensiones) como entrada y devuelve el valor de la función de Rastrigin para esas
coordenadas.
Ahora, con respecto al uso de la función ga con parámetros por defecto, la función ga es una
función en MATLAB que implementa un algoritmo genético para la optimización global.
Cuando se utiliza con parámetros por defecto, significa que no se están modificando los
valores predeterminados de los parámetros del algoritmo genético y se están utilizando los
valores que MATLAB ha establecido internamente para ejecutar la optimización.
Algunos de los parámetros predeterminados incluyen la población inicial, el número máximo
de generaciones, la función de fitness (que en este caso sería la función de Rastrigin definida
anteriormente), etc. Al ejecutar ga con estos parámetros por defecto, MATLAB intentará
encontrar la solución óptima para la función de Rastrigin utilizando el algoritmo genético con
los valores preestablecidos para los parámetros.
INSTRUCCIONES DE USO:
Para esta práctica no se uso de mucho ya que todo depende de la librería de Matlab, al ejecutar
la función de “ga”, ponemos las condiciones adecuadas, tanto para el “Command window” como
en el “toolkit de optimización”.
Por consiguiente, se mostraran las capturas de pantalla de los resultado y se notaran los que
salieron exitosos y los erróneos.
• Ejemplo 1:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
Para este primer ejemplo podemos ver que fallo, ya que se acercó a 1.
• Ejemplo 2:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
En este resultado podemos observar que salió correcto, ya que se acercó a 0, lo cual es el
propósito de esta práctica.
• Ejemplo 3:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
Resultado correcto.
• Ejemplo 4:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
Ahora bien, la otra parte de la práctica es usar el toolkit de optimización, proseguimos a abrirlo y
colocar los parámetros y condiciones adecuados para ver qué resultados nos dan…
• Ejemplo 5:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
Podemos observar que colocando las condiciones, nombrando a la función y poniendo las
variables nos arroja la respuesta, que por supuesto salió correcto hasta la iteración número 79.
• Ejemplo 6:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
• Ejemplo 7:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
Para este ejemplo cambiamos los parámetros de bajo y alto, para ver que nos arroja, y como
podemos observar esta fue erróneo, no solo no se acercó a 0 sino que se quedó cerca de 2.
• Ejemplo 8:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
CODIGO RELEVANTE:
FACULTAD DE INGENIERÍA
FORMATO
DE DESARROLLO DE SOFTWARE
BIBLIOGRAFÍA:
https://recluit.com/que-es-matlab/