resueltos los inteligencia geneticos genetico fuente ejemplos codigo caracteristicas artificial aplicaciones algoritmos algoritmo machine-learning genetic-algorithm

machine-learning - los - codigo fuente de un algoritmo genetico



proyecto genial para usar un algoritmo genético? (12)

Considero que la evolución de las estructuras de lego es, con mucho, el proyecto de juguete más interesante para GA.

http://static.23.nu/md/Pictures/ZZ099735B6.jpg

Estoy buscando una aplicación práctica para usar un algoritmo genético para. Algunas cosas que han pensado son:

  • Optimización de la interfaz del sitio web
  • Optimización del vehículo con un simulador de física
  • Programación genética
  • Generación automática de casos de prueba

Pero ninguno realmente se me ha aparecido. Entonces, si tuvieras algo de tiempo libre (unos meses) para gastar en un proyecto de algoritmos genéticos, ¿qué elegirías abordar?


Creo que vi la mención de un proyecto para usar uno para probar y descubrir que con el diseño óptimo del teclado sería "vencer a Dvorak", por así decirlo. :RE


De vuelta a la universidad, hice la minimización de funciones multidimensionales. Digamos que tienes af (x) que toma los parámetros x1, x2, x3, ..., xn y genera un valor Y ... necesitas encontrar los parámetros x1, .., xn tal que Y = Y1 .. no es tan difícil .. interesante forma de aprender sin embargo. Aunque Nedlermead es mucho más eficiente ... esto no es propenso a atascarse en minimas locales.


Genera composiciones de música! Lea sobre David Cope y su programa Emily Howell.


He leído acerca de algo similar a lo propuesto en cuestión para la generación automática de casos de prueba. En realidad, fue todo lo contrario. Especifica casos de prueba y permite algoritmo (programación genética) para crear código que pasará. De esta manera usted proporciona especificaciones y cría su programa. Si busca un poco de Google, puede encontrar algunos estudios al respecto.
Encuentro que esta es una idea muy intrigante. Por supuesto, ahora nadie crearía ninguna aplicación como esta, pero esa es una gran área de estudio.


Los algoritmos genéticos son adecuados para la optimización y la programación. Un ejemplo sería programar un conjunto de máquinas, con partes y operadores a lo largo del tiempo para completar un conjunto de tareas. Aunque probablemente no sea el proyecto más emocionante, tendría aplicaciones en el mundo real.


Me divertí jugando con el Juego de la vida y los algoritmos genéticos de Conway,
tratando de desarrollar formas de vida avanzadas. No estoy seguro de si te mantendrá ocupado durante
varios meses sin embargo ..


Puede que le interese algo como la Mona Lisa de Roger Alsing


Se ha utilizado en sintetizadores complejos para generar parches de sonido (por ejemplo, el Clavia Nord Modular G2 ). Lo probaría también para otras máquinas, me viene a la mente el Yamaha DX7, pero creo que hay bastantes alternativas de software. O generación de imágenes.

Lea sobre la teoría detrás de los algoritmos de parche en un documento de Palle Dahlstedt . Parece estar en el momento, sin embargo ...


Tal vez encontrar un tour de vendedor ambulante . Recientemente traté de encontrar un recorrido a pie por 66 ubicaciones en París y encontré que codificar todas estas cosas era muy divertido. Pensé que mi entusiasmo provenía de dos fuentes: el hecho de que podía dibujar las giras (también una cosa buena sobre la idea de Mona Lisa, o si la ingeniería es lo tuyo, las estructuras de Lego) y el hecho de que hay tantos enfoques que puedes comparar:

  • Puede usar heurísticas simples, como "comenzar en algún lugar y siempre ir a la ubicación más cercana y no visitada".
  • Puede utilizar heurísticas más complejas, como "seguir agregando bordes (en cualquier lugar) en orden incrementando el costo, excepto cuando podría causar tres bordes en un vértice o un ciclo más pequeño".
  • Puede usar algoritmos de aproximación, como uno fácil basado en árboles de expansión mínima si sus costos satisfacen la desigualdad del triángulo. Como beneficio adicional, puede codificar árboles de expansión mínima (tal vez incluso podría usar GA allí, a pesar de la disponibilidad de algoritmos exactos rápidos y fáciles de usar). Si se siente seguro, puede codificar el algoritmo de aproximación más difícil (3/2) basado en árboles de expansión mínima y apareamientos perfectos.
  • Si tienes algún tour de vendedor ambulante y se cruza solo, puedes mejorarlo "descruzándolo". Nuevamente, esto supone algunas condiciones en la función de costo.
  • Incluso puede intentar buscar un recorrido usted mismo y ver si puede vencer a su computadora.
  • ¡Por último, pero no menos importante, algoritmos genéticos! El problema es muy adecuado para las GA porque hay una función de aptitud física muy clara y una forma muy fácil de hacer la recombinación.

Un tema con muchas posibilidades es utilizar algoritmos evolutivos para desarrollar estrategias para el juego. La gente ha usado la evolución para generar estrategias para el poker, damas / damas, Go y muchos otros juegos. La gente de J-GAP ha usado la programación genética para desarrollar bots para Robocode .

Recientemente publiqué un artículo introductorio sobre computación evolutiva. Incluye detalles de algunas de las cosas que los algoritmos evolutivos se han utilizado. Adam Marczyk también ha escrito un excelente artículo con muchos ejemplos. El blog Genetic Argonaut contiene docenas de enlaces a interesantes proyectos evolutivos.

Un tipo menos común de algoritmo evolutivo es el sistema clasificador de aprendizaje . Esto desarrolla un conjunto de reglas para clasificar las entradas. Se puede aplicar al mismo tipo de problemas para los que se utilizan las redes neuronales. Podría ser interesante desarrollar un LCS para un problema particular, como intentar predecir resultados deportivos basados ​​en la forma.