next up previous
Next: 9.8.1 The Pitt Approach Up: 9. Algoritmos Genéticos Previous: 9.7 GA para Cambiar

9.8 GA para Cambiar Código

El espacio descrito por cambios en código es más grande y más complejo.

Tenemos que escoger el lenguaje de programación adecuado. Una representación ``natural'' de programas puede ser desastrosa, ya que mutación y cruce producirian muy pocos programas sintácticamente correctos y menos aún semánticamente correctos.

Una alternativa es diseñar nuevos operadors genéticos específicos del lenguaje para preservar por lo menos la integridad sintáctica y enfocarse a lenguajes con sintáxis sencilla (e.g., Lisp o Prolog ``puros'').

Sin embargo, algo como Lisp, que es procedural por naturaleza, hace que el cambio de dos lineas de código o pequeños cambios hagan todo el programa sin sentido.

Esto orillo (por lo menos en un principio) a enfocarse a sistemas de reglas de producción.

Ventajas:

Surgieron dos formas de representar reglas:



Subsections
next up previous
Next: 9.8.1 The Pitt Approach Up: 9. Algoritmos Genéticos Previous: 9.7 GA para Cambiar
Eduardo Morales Manzanares 2004-11-02