Programación Específica > Inteligencia Artificial
Problema De Algoritmos Genéticos
Amilius:
--- Cita de: "AURED" --- Me temo que el asunto de la mutación no lo entiendo.
--- Fin de la cita ---
La mutación es muy importante para evitar el estancamiento en máximos locales.
----
Creo que esos puntos deberían ser configurables, por ejemplo lo del elitismo:
1.- Elitismo o sólo ruleta.(Un porcentaje de 1 a n% de la población tendrá como padre al "macho alfa" :D , con cruce con el resto de la población, el resto según la ruleta.)
2.- Opción para incluir un "clon" del mejor evaluado en la siguiente generación para asegurar que evites perder el mejor "espécimen" :D
3.- Nivel de mutación. (Tal vez automático: aumentando si se llega al estancamiento y disminuyendo si la población ya es bastante diversa)
Y un detalle más: ¿Las piezas sólo pueden girarse 90º en 2 dimensiones? Por que también es necesario considerar que se las puede girar 180º usando una tercera dimensión siendo el resultado la pieza "reflejada" en vertical u horizontal. Por ejemplo en lugar de girar una pieza de 3 dimensiones por una cuarta y que todo quede denuevo en 3dimensiones es más sencillo reflejarla en algún eje. ;)
Finalmente siempre hecha una ojeada entre varios a todo el algoritmo, no vaya a ser que por un detalle "casi invisible" las cosas no funcionen como deben.
AURED:
Je je je, no me as entendido, si que entiendo en que consiste la mutación, de hecho la he implementado en varios algoritmos. Lo que me refería es que no entendía el método en el que Geneticos había empleado la mutación.
AURED:
En cuanto a la mutación puedes plantearte una mutación no uniforme, de modo que conforme avancen las generaciones el rango en el que puede mutar el gen seleccionado se ciña cada vez más en el el entorno del gen original.
El problema que veo es como vas a agregar ambos objetivos, puedes tener soluciones de muy baja área con elevado grado de solapamiento y también lo contrario. Deberás seleccionar los pesosde un modo muy cuidadoso.
Tengo una pregunta, ¿permites que haya solapamiento en las piezas?¿o por el contrario no lo deseas? en este caso te comentaba lo de emplear el grado de solapamiento como una penalización, mejor que como un objetivo adicional, si por el contrario puedes asumir cierto grado de solapamiento te sugiero que te plantees una optimización de dos objetivos, en la red hay muchos artículos donde buenos algoritmos multiobjetivo son descritos, busca SPEA,SPEA2, MOGA,NPGA,NSGA....
Imagino que todas estas palabras llegan tarde.....lo siento. :(
cad666:
Por favor si puedes enviame el codigo que tienes en Matlab de la resolucion de tu problema ya que estoy intentado resolver un problema similar en Matlab pero recien lo instale hace poco asi que no termino de enteder bien como funciona el GA Toolbox, gracias.
Mi email es cad666@hotmail.com
Navegación
[*] Página Anterior
Ir a la versión completa