El programador de algoritmo genético obtiene funciones

[Kory] ha estado escribiendo algoritmos genéticos durante unos meses. Esto en sí mismo no es nada único o excepcional, excepto por lo que está haciendo estos algoritmos genéticos. [Kory] ha estado usando algoritmos genéticos para escribir programas en Brailfuck. Sí, es una computadora programando una computadora. Ser agradecido SkyNet tiene 18 años tarde.

Cuando vimos por primera vez el trabajo [Kory], había programado una computadora para escribir y dirigir sus propios programas en Brailfuck. Aunque el nombre del idioma [Kory] eligió podría usar algún trabajo, en realidad es el idioma ideal para los programas generados por computadora. Con solo ocho comandos, cada uno que consiste en un solo carácter, reduce en gran medida la sobrecarga de lo que debe producir cualquier algoritmo genético y cuál debe evaluar una función de acondicionamiento físico.

Hubo un deficiencia a los esfuerzos iniciales de [Kory]: funciones. Es relativamente fácil conseguir un programa para decir Hello World, pero para hacer algo complejo, necesitará algo como una macro o una función. Brainfuck, es su forma más simple, no soporta funciones. Esto lanza una llave en el plan de [Kory] para que su computadora de programación de computadora crezca más inteligente y supere los mínimos locales en sus algoritmos genéticos.

La solución a este problema fue la creación de un nuevo dialecto de Brainfuck [Kory] llama a BrainPlus. Esto lleva las mejores partes de Brainfuck extendido y agrega un comando que básicamente sirve como una declaración de descanso.

Con esto, la computadora autogestionadora [Kory] puede desarrollar programas más complejos. Ya ha creado un programa para generar los primeros números de la secuencia Fibonacci. Solo sube a 233 porque 255 es el valor máximo para un byte, y el programa en sí tomó siete horas para generar. Sin embargo, sí lo hace. Otros programas generados con las nuevas funciones de BrainPlus incluyen recitar 99 botellas en la pared y un programa que multiplica dos valores.

A pesar de que la computadora [Kory] está pasando mucho tiempo para generar estos programas, dado tiempo suficiente, realmente no puede hacerlo este programa. Brainfuck, y el pleplus de [Kory], están tratando, por lo que se le da una memoria infinita y el tiempo, puede calcular cualquier cosa. Con la nueva adición de funciones, puede calcular cualquier cosa más rápida.

Todo el código para la GA [Kyle] está disponible en GitHub.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post