¿Cuáles son algunos proyectos desafiantes en algoritmo genético para principiantes?

¡Excelente pregunta y me complacería responder!

En mi quinto semestre de pregrado, mis compañeros de equipo y yo buscábamos ideas de proyectos no triviales para nuestra clase de Inteligencia Artificial. Encontramos este excelente video:

Pensamos que sería genial probar lo mismo usando un algoritmo genético. Nuestro algoritmo toma una imagen como entrada y se aproxima a la imagen usando un número fijo de círculos / rectángulos de diferentes dimensiones y colores.

Codificamos una versión básica e intentamos ejecutarla en logotipos de compañías famosas y otros objetos ‘no tan complejos’. Aquí están los resultados (a la izquierda está la imagen original; a la derecha está la imagen reconstruida):

Pato

Logo de Nike

Logotipo de Pepsi

Corazón

Arte abstracto

Logotipo de dominó

Logotipo de Apple

Logo de Android

¡Ordenanza!

Otro arte abstracto

Bandera india

IBM

Observe cómo el algoritmo falla miserablemente en la reconstrucción de los radios en la bandera india. Esto se debe a que los radios son demasiado finos para ser captados por el algoritmo. A continuación se muestra una imagen de Angelina Jolie que el algoritmo no pudo reconstruir incluso después de ejecutarse durante aproximadamente 24 horas. Nuevamente, esto se debe a que es difícil para el algoritmo recoger detalles

Puede encontrar el código fuente aquí: amangoeliitb / Algoritmo genético. Puede intentar jugar con la heurística de medición de distancia y tal vez llegar a una implementación más rápida (compártala conmigo)

¡Feliz aprendizaje!