Los algoritmos genéticos son una técnica de programación que los informáticos extraídas de la naturaleza. Naturaleza diseña soluciones de plantas y animales hermosos para problemas difíciles mediante estrictamente mecánicos sin llegar inteligentes. Los algoritmos genéticos pueden encontrar la respuesta óptima a los problemas de diseño difíciles cuando no tienes idea de cómo proceder. Las únicas limitaciones son necesarias que debe tener un problema de optimización y que las soluciones se pueden describir con una cadena de números . Instrucciones
1
diseño una serie de números que describe una solución a su problema . Diseñar una función que puede evaluar estas cadenas , dada una cadena, esta función le puede decir lo bueno que la cadena es una respuesta a su problema. Por ejemplo , la cadena puede ser una lista de mediciones del interior de un motor de bomba turbo cohete . La función sería un cálculo de empuje desde una cámara con estas mediciones. La cadena también podría ser los porcentajes de agua , arena , cemento y grava que constituyen una mezcla de hormigón submarino.
2
Escribir un programa informático que evoluciona hacia la optimización de las cadenas . Comience con una población de cadenas , donde todos los números en las cuerdas fueron escogidos al azar . Una "generación " consiste en la evaluación de todas las cadenas de la "población " y descartando las cuerdas con los valores más bajos . Las cadenas con las evaluaciones más altas continuarán en la próxima generación. Una mezcla aleatoria de las cadenas de preformado de alta también hará que sea a la siguiente generación . Algunas de estas cadenas tendrán mutaciones al azar a uno de los números de la cadena . Este proceso se repite para varias generaciones . El número de hilos en cada generación es la misma.
3
Encuentra el algoritmo genético mínimo en el funcionamiento de su solución con uno de los números que faltan. Si hay un número "n " en una cadena, esto significa correr "n " diferentes poblaciones que tiene cada uno de los números que faltan. Si las cadenas más cortas todavía tienen la misma alta evaluación , ejecute poblaciones cada vez más cortos hasta que encuentre la cadena más corta que funcione para el problema específico . Para el problema concreto , esto te diría si pudiera dejar de lado uno de los ingredientes .