¿Por qué se ha ralentizado la investigación sobre algoritmos genéticos?

45

Mientras se discuten algunos temas de nivel de introducción hoy, incluido el uso de algoritmos genéticos; Me dijeron que la investigación realmente se ha ralentizado en este campo. La razón dada fue que la mayoría de las personas se están centrando en el aprendizaje automático y la minería de datos.
Actualización: ¿Es esto exacto? Y si es así, ¿qué ventajas tiene ML / DM en comparación con GA?

Carlos fosilizado
fuente
2
Reformule la pregunta para que pida menos opinión pero más hechos (por ejemplo, desventajas de GA / EA que se han vuelto más aparentes con el tiempo).
Raphael
1
Hasta donde sé, si se dan muchos algoritmos que pueden resolver un problema específico, GA no será el mejor en la mayoría de los casos.
Strin

Respuestas:

33

Bueno, el aprendizaje automático en el sentido del reconocimiento de patrones estadísticos y la minería de datos son definitivamente áreas más candentes, pero no diría que la investigación en algoritmos evolutivos se ha ralentizado particularmente. Las dos áreas generalmente no se aplican a los mismos tipos de problemas. No está claro de inmediato cómo un enfoque basado en datos lo ayuda, por ejemplo, a descubrir cómo programar mejor los turnos de trabajadores o enrutar paquetes de manera más eficiente.

Los métodos evolutivos se utilizan con mayor frecuencia en problemas de optimización difíciles en lugar del reconocimiento de patrones. Los competidores más directos son los enfoques de investigación de operaciones, básicamente la programación matemática y otras formas de búsqueda heurística como la búsqueda tabú, el recocido simulado y docenas de otros algoritmos conocidos colectivamente como "metaheurística". Hay dos conferencias anuales muy grandes sobre computación evolutiva (GECCO y CEC), una gran cantidad de conferencias más pequeñas como PPSN, EMO, FOGA y Evostar, y al menos dos revistas importantes de alta calidad (IEEE Transactions on Evolutionary Computation y MIT Press revista Evolution Computation), así como una serie de pequeños que incluyen la parte EC de su enfoque más amplio.

Dicho todo esto, hay varias ventajas que el campo más generalmente considerado como "aprendizaje automático" tiene en cualquier comparación de "atractivo". Una, tiende a estar en un terreno teórico mucho más firme, que siempre les gusta a los matemáticos. Dos, estamos en una era de oro para los datos, y muchos de los métodos de aprendizaje automático de vanguardia realmente solo comienzan a brillar cuando se les da toneladas de datos y toneladas de potencia de cálculo, y en ambos aspectos, el tiempo es en cierto sentido "derecho".

deong
fuente
¿Puede aclarar / resaltar cuál es su respuesta a la pregunta?
Raphael
No estoy seguro de qué específicamente le gustaría que explique.
deong
Simplemente responda claramente a la pregunta del OP: ¿Cuáles son las ventajas (duras) de ML sobre GA / EA? ¿O estás proponiendo algo ortogonal?
Raphael
2
Estoy diciendo que no (en su mayoría) no se aplican a los mismos problemas. La ventaja de ML es que funciona realmente bien para el reconocimiento y clasificación de patrones; La ventaja de los GA es que trabajan en problemas difíciles de optimización. Más allá de eso, es como pedir ventajas de los automóviles frente a las casas. Muchos algoritmos de ML implican resolver un problema de optimización como un paso de entrenamiento, y existen enfoques de aprendizaje basados ​​en GA (sistemas de clasificación de aprendizaje), pero en su mayoría, son solo áreas completamente diferentes.
deong
21

Hace algunas décadas, la gente pensaba que los algoritmos genéticos y evolutivos eran navajas suizas, impulsadas por espectaculares resultados iniciales. Se hicieron declaraciones como la hipótesis del bloque de construcción en un esfuerzo por demostrar que, en general, eran buenas estrategias.

Sin embargo, los resultados rigurosos tardaron en llegar y, a menudo, fueron aleccionadores, sobre todo el Teorema del Almuerzo Libre . Se hizo evidente que los algoritmos genéticos / evolutivos a menudo son heurísticos decentes pero nunca óptimos en ningún sentido.

Hoy sabemos que cuanto más sepamos acerca de un problema, respectivamente, su estructura, menos sentido tiene emplear algoritmos genéticos / evolutivos, ya que otros métodos que utilizan este conocimiento los superan en magnitud. Sin embargo, en los casos en que se sabe poco sobre el problema en cuestión, siguen siendo una alternativa viable porque funcionan en absoluto.

Rafael
fuente
8
Creo que debe enfatizarse que la NFLT establece "limitaciones" no solo en los GA, sino en todos los algoritmos de búsqueda heurísticos. Ninguno de ellos es excelente en todos los casos, por lo que, en su sentido, ninguno de ellos es óptimo en ningún sentido.
Juho
Recuerdo haber usado algoritmos genéticos para resolver un problema aerodinámico, y después de semanas y semanas de cálculos, el resultado fue infinitamente peor que el resultado proporcionado por la teoría aerodinámica más aproximada. Tengo la impresión de que la inteligencia artificial y similares no reemplazan absolutamente el conocimiento del dominio
user5193682
@ user9589 Los dos no son mutuamente excluyentes. El conocimiento del dominio puede ayudarlo a elegir y ajustar métodos heurísticos.
Raphael
@Raphael Diría que la inteligencia artificial te ayuda a sintonizar el conocimiento del dominio.
user5193682
13

Una parte crítica de la historia, tal como la veo, falta en las otras respuestas hasta ahora:

Los algoritmos genéticos son principalmente útiles para problemas de búsqueda de fuerza bruta.

En muchos contextos, las estrategias de optimización más simples o los modelos de inferencia (lo que en general se llamaría aprendizaje automático) pueden funcionar muy bien, y lo hacen mucho más eficientemente que la búsqueda de fuerza bruta.

Los algoritmos genéticos, como el recocido simulado, son más efectivos como estrategia para tratar los problemas de búsqueda difíciles (por ejemplo, NP completo). Estos dominios tienden a estar tan limitados por la dureza intrínseca de los problemas que ajustar e iterar sobre factores modestos en la estrategia de solución, al mejorar gradualmente los algoritmos genéticos, a menudo no es muy útil y, por lo tanto, no es terriblemente emocionante.

jrk
fuente
12

Hasta cierto punto, el aprendizaje automático se está volviendo más matemático y con algoritmos que pueden ser 'probados' para funcionar. De alguna manera, los GA son muy "con lo que sucedió allí" y no puedes responder perfectamente a la pregunta "¿qué hizo tu programa?" (Bueno, a los ojos de algunas personas, de todos modos).

Personalmente defiendo la combinación de redes neuronales y GA = GANN. En mi tesis de honores, produje un algoritmo de predicción de drogas primero usando NN, luego un GA, y finalmente un GANN que tomó lo mejor de ambos mundos y superó a los otros dos conjuntos. YMMV, sin embargo.

Mark Mayo
fuente
2
Dé un ejemplo simple donde las ventajas de "ML" se hagan evidentes para proporcionar alguna evidencia de su (s) reclamo (s). Además, proporcione una referencia / enlace adecuado a su tesis.
Raphael
relacionado: Neuroevolución
Franck Dernoncourt
4

El aprendizaje automático revela una gran parte del aparato matemático que se desarrollará y aplicará. Algoritmos genéticos realizados principalmente por heurística.

Om nom nom
fuente
2
Puedes probar cosas sobre GA / EA. Sin embargo, es difícil. Mientras que ML tiene bases rigurosas, aquellos que aplican técnicas de ML a menudo lo hacen de manera ad-hoc. Entonces, ¿su argumento solo existe en el papel, o hay una diferencia en la práctica?
Raphael