• Nenhum resultado encontrado

Capítulo 4: Programação em Lógica Indutiva Através de Algoritmo Estimador de

4.3 Principais Parâmetros dos Sistemas-AED

Os parâmetros dos sistemas controlam sua capacidade de busca e consequentemente a qualidade das teorias encontradas. Conforme afirmado anteriormente, almeja-se manter os sistemas tão simples quanto possível, o que implica que eles detenham um pequeno número de parâmetros, uma vez que, embora um grande número de parâmetros permita certa flexibilidade, eles acabam por fazer com que a configuração do sistema se torne complexa.

A seguir discutem-se todos os atuais parâmetros dos sistemas, sendo que o número de gerações (numGer1 para o AED-ILP e RAED-ILP, e numGer1, numGer2

para o HAED-ILP) e o tamanho da população (numPop1 para o AED-ILP e RAED-ILP,

e numPop1, numPop2 para o HAED-ILP), como, de modo geral, são relativos aos AGs,

foram discutidos no capítulo anterior. É importante notar que tal discussão apresenta apenas uma visão geral de como os parâmetros afetam o funcionamento do sistema, uma vez que, indiscutivelmente, a influência mais precisa de tais parâmetros depende invariavelmente do problema tratado.

numCls (número de cláusulas que compõe a teoria – para o AED-ILP e RAED- ILP): de forma geral, quanto maior o valor de numCls, maior será o tempo

118

forma, um número excessivamente grande numCls implica em uma lentidão de busca e em longas teorias que provam muitos exemplos positivos e negativos, o que não é interessante. Um valor muito baixo para este parâmetro acarretará, de forma geral, em teorias muito simples que provam poucos exemplos positivos e negativos, o que também não é interessante. Desta forma, numCls deve ser determinado para que o sistema evolua teorias simples (com poucas cláusulas), mas ainda assim acuradas.

P1, P2, e P3 (probabilidades iniciais das redes bayesianas – para todos os sistemas- AED): com visto, é necessário que tais probabilidades sejam inicializadas de forma

genérica, sendo que estas probabilidades serão atualizadas durante as sucessivas gerações e usadas para o cálculo das outras probabilidades das TPCs usando-se o noisy- OR. As probabilidades influenciam diretamente o número de literais que figurarão em uma cláusula, assim, altos valores de probabilidades acarretam em um grande número de literais na cláusula, enquanto que probabilidades baixas acarretam no aparecimento de uma pequena quantidade de literais. No primeiro caso, as cláusulas serão mais específicas e necessitarão de um maior tempo computacional para verificação de prova de exemplos quando comparado ao segundo caso, em que as cláusulas são mais gerais e por isso usam menos tempo computacional para este fim.

1 e 2 (taxa de aprendizado do modelo probabilístico - 1 para AED-ILP e READ- ILP, e 1 e 2 para o HEAD-ILP): os valores de 1 e 2 devem pertencer ao intervalo

(0, 1), sendo que quando eles assumem valores altos, os sistemas tendem a realizar uma convergência prematura da população para o melhor indivíduo atual. Já com baixos valores, a busca se torna desnecessariamente ampla e não converge para uma “boa” teoria. Assim, devem-se atribuir valores para que a busca não convirja prematuramente, mas que também não seja demasiadamente ampla.

k (número natural que determina quando o ciclo de evolução secundário deve ocorrer – para o HAED-ILP): este parâmetro, juntamente com o numGer1,determina

o limite superior de cláusulas nas teorias do HAED-ILP. Assim, para um dado valor fixo de numGer1, um valor baixo de k implica em teorias que podem ter muitas

cláusulas (problema já abordado na discussão do parâmetro numCls) e também faz também com que novas cláusulas sejam adicionadas prematuramente a teoria, uma vez que a evolução primária não teve tempo necessário para desenvolver boas cláusulas. Já um valor muito alto, além de implicar em teorias que podem ter poucas cláusulas (problema já abordado na discussão do parâmetro numCls) faz com que a adição de

119

cláusulas ao ciclo de evolução primário seja feito tardiamente, uma vez que as redes Bayesianas de tal ciclo já podem ter convergido para a geração de algum indivíduo. Caso isto ocorra, a adição de uma nova rede Bayesiana não gerará grande impacto, uma vez que o restante da teoria já estará praticamente formado.

numVezesGerSec (número máximo de vezes que o ciclo de evolução secundário tentará encontrar uma rede Bayesiana promissora – para o RAED-ILP): caso este

número seja muito grande, pode-se aumentar em muito o tempo computacional demandado pelo sistema, caso uma rede Bayesiana promissora não possa de fato ser encontrada. Com um valor muito baixo, poucas redes Bayesianas serão geradas no ciclo secundário e, portanto, corre-se o risco de não se encontrar uma rede Bayesiana que de fato melhoraria as teorias geradas pelo ciclo de evolução primário.

4.4 Resumo do Capítulo

Este capítulo apresentou uma proposta de aplicação de um AED ao problema de Programação em Lógica Indutiva. Como resultado, criou-se o sistema AED-ILP, bem como suas duas extensões, o RAED-ILP, e o HAED-ILP. O RAED-ILP pode ser entendido como o AED-ILP que usa o algoritmo Reduce para reduzir seu espaço de busca. Já o HAED-ILP pode ser visto como o AED-ILP com seu ciclo de busca completamente remodelado, uma vez que tal sistema apresenta dois “tipos” de evolução; um que trata do desenvolvimento de um conjunto de redes Bayesianas (para gerar teorias) enquanto que o outro lida com o desenvolvimento de uma única rede Bayesiana (para gerar cláusulas isoladas) a ser, caso seja promissora, adicionada ao conjunto de redes do primeiro ciclo.

De forma geral, todos os sistemas-AED utilizam redes Bayesianas para buscar por teorias cujos literais são subconjuntos dos literais de bottom clauses, sendo que a cada ciclo, tais redes Bayesianas são atualizadas no sentido de gerar teorias mais parecidas com a melhor teoria do ciclo atual. Com objetivo de fornecer certa velocidade aos sistemas, a regra de atualização do sistema PBIL foi adaptada para trabalhar com redes Bayesianas, não se manteve populações entre as gerações, bem como não foram utilizados operadores de seleção, tais como roleta, ranking ou torneio.

120