genetic-prog
Genetic Programming - GP
De que modo computadores podem resolver problemas, sem que tenham que ser explicitamente programados para isso?
Programação Genética - GP
Extensão de Algoritmos Genéticos no domínio dos programas
Indivíduo = programa de computador q Espaço de busca = todos os possíveis programas de computador q 1
Representação de Programas
Expressão matemática composta de funções + terminais. q Programa é codificado através de uma estrutura de árvore ao invés de linhas de árvore, código q Representação de Programas x2 + y é um programa de computador.
Se escrito na forma pré-fixada:
(+(*xx)y)
(+(*xx)y)
Representação sob a forma de árvore:
+
* x y x 2
Representação de Programas q q
Funções - aparecem nos vértices internos da árvore:
– operação aritmética (+, -, *, % etc)
– função matemática (sen, cos, tan,...)
– operação booleana (and, or, not)
– operadores condicionais (se-então-senão)
– funções que causam iteração (enquanto (condição) faça)
– funções que causam recursão
– funções específicas do domínio do problema
Terminais - aparecem nos vértices externos da árvore (folhas )
– variável (representando possivelmente as entradas)
– constante (número 3)
Representação de Programas
GP evolui programas de computador para resolver um problema, a partir do conjunto de terminais e do conjunto de funções; q Para que todos os programas de computador criados pelo GP sejam válidos, é necessário que o conjunto de funções e o conjunto de terminais atendam a propriedade de claus ura. q 3
Propriedade de Clausura
Funções devem aceitar como argumento argumento, qualquer valor e tipo de dado que seja dado, retornado por qualquer função do conjunto de funções, e qualquer valor e tipo de dado que possa ser assumido por qualquer terminal. Passos Preparatórios para GP
Existem 5 Passos Preparatórios na aplicação de GP : q q q q q Determinar o Conjunto de