Professional Documents
Culture Documents
INSTITUTO DE INFORMTICA
CURSO DE ENGENHARIA DA COMPUTAO
JOREL SETTIN
Trabalho de Diplomao.
AGRADECIMENTOS
Devo esse trabalho e minha jornada de aprendizado minha famlia, que sempre me
incentivou e apoiou o meu desejo de estudar.
Agradeo aos colegas que estiveram comigo durante minha vida acadmica,
especialmente ao Rodrigo, Fernando e Maurcio, e a todos os amigos que estiveram
juntos durante minha vida.
Realizo esse trabalho com esforo e dedicao aos professores, to pacientes, que
contriburam com sua experincia para a formao do meu intelecto e carter, bem
como aos membros da universidade.
Devo minha autoconfiana aos meus colegas e amigos, que reavivaram minha
vontade e capacidade de realizar uma grande obra, especialmente a Shankar Dev e
Lakshmi.
Dedico os resultados desse trabalho somente para o bem e evoluo da sociedade.
Finalmente, relembro de Deus, a Quem todas as causas e resultados pertencem.
SUMRIO
5 CONCLUSO.................................................................................................37
5.1 As Contribuies Desse Trabalho.................................................................................................37
5.2 Os Problemas.................................................................................................................................38
5.2.1 Continuum de solues...........................................................................................................38
5.2.2 Amostragem para conhecimento do espao de busca.............................................................38
5.2.3 Perda da informao nos algoritmos de estatstica online......................................................39
5.2.4 Busca Inversa a Partir de um Ponto........................................................................................40
5.3 Tcnicas Relevantes.......................................................................................................................40
5.3.1 Estatstica No Paramtrica....................................................................................................40
5.3.2 Mtricas de Distncia Entre Distribuies Normais Multidimensionais................................42
5.3.3 Visualizao do espao de busca............................................................................................42
5.4 Trabalho Futuro............................................................................................................................44
REFERNCIAS..................................................................................................46
ANEXO ARTIGO DA PROPOSTA DESSE TRABALHO...............................48
APNDICE TABELAS DE RESULTADOS ....................................................62
funo gradiente
desvio-padro
N(u, )
N1 U N2
tempo
T0
[a,b]
sgm(x)
NEAT
Neuroevoluo de topologias
Augmenting Topologies)
1
1e x
aumentativas
(NeuroEvolution
of
LISTA DE FIGURAS
Figura 1.1: Problema do carro-pndulo...........................................................................12
Figura 1.2: Rede neural multicamada..............................................................................13
Figura 1.3: Modelo de aprendizado por reforo..............................................................14
Figura 1.4: Mtodo do gradiente ascendente...................................................................16
Figura 2.1: Casando genomas de diferentes topologias no NEAT..................................18
Figura 2.2: Os dois tipos de mutao estrutural no NEAT..............................................19
Figura 2.3: Problema de classificao de N-Pontos........................................................19
Figura 2.4: Desempenho do NEAT no problema de N-Pontos .......................................20
Figura 2.5: Mtodo de aprendizagem em cascata............................................................22
Figura 2.6: Algoritmo de aprendizado para redes neurais evolutivas em cascata...........22
Figura 3.1: Deteco de representatividade para aprendizado por reforo.....................24
Figura 3.2: Arquiteturas de redes neurais........................................................................25
Figura 3.3: Dupla representatividade por pesos e bias diferentes...................................25
Figura 3.4: Dupla representatividade estrutural..............................................................26
Figura 3.5: Dupla representatividade por soma de componentes....................................26
Figura 3.6: Alteraes nas funes durante recombinao no mtodo NEAT................27
Figura 3.7: Recombinao em redes neurais de camada simples....................................27
Figura 3.8: Arquitetura de rede neural proposta..............................................................28
Figura 3.9: Histograma do espao de busca e taxa de aceitao ()................................28
Figura 3.10: Exemplo de clusterizao proposta.............................................................30
Figura 3.11: Distncia entre duas distribuies normais.................................................30
Figura 3.12: Mapeando redes neurais de diferentes topologias.......................................31
Figura 3.13: Exemplo da gerao de candidatos baseada em estatstica.........................32
Figura 3.14: Algoritmo de treinamento...........................................................................33
Figura 4.1: Evoluo de clusters no problema de carro-pndulo....................................35
Figura 4.2: Espao de busca do carro-pndulo................................................................36
Figura 5.1: Continuum de solues no problema N-Pontos............................................38
Figura 5.2: Diferente nmero de timos locais do espao de busca ...............................39
Figura 5.3: Problema da perda de informao, impedindo a reclusterizao..................40
Figura 5.4: Aproximao iterativa do mtodo EM..........................................................40
Figura 5.5: Histograma multidimensional dinmico.......................................................41
Figura 5.6: Mtodo de ncleo para estimativa de densidade...........................................41
Figura 5.7: Distncia de Mahalanobis.............................................................................42
Figura 5.8: Espao de busca em mtodos genticos........................................................43
Figura 5.9: Espao de busca no mtodo de recozimento simulado.................................43
Figura 5.10: O mtodo de reduo de dimensionalidade................................................44
Figura 5.11: Rede Neural Recorrente de Elman..............................................................45
LISTA DE TABELAS
Tabela 1 Resultados do algoritmo no problema de carro-pndulo...............................62
Tabela 2 Resultados do algoritmo no problema de duplo carro-pndulo.....................63
RESUMO
Esse trabalho analisa as principais tcnicas de treinamento de redes neurais para
problemas de aprendizado por reforo, e finalmente prope um novo modelo utilizando
suas melhores caractersticas, alm de metaotimizao baseada em amostragem
estatstica. O estudo tem por objetivos a obteno de um mtodo com alta taxa de
sucesso, baixo nmero de simulaes do problema, mnima necessidade de prvia
especificao de parmetros de treinamento, adaptabilidade a diversas classes de
problemas, ter um comportamento determinstico para obter solues com a mnima
complexidade necessria, e de baixo custo computacional. Compara-se o desempenho
do algoritmo proposto s tcnicas utilizadas no atual estado da arte, em problemas de
controle de sistemas fsicos, e outros comumente utilizados como teste de desempenho.
ABSTRACT
This work analyzes the main techniques for training neural networks in
reinforcement learning problems, and finally proposes a new algorithm using their best
features, and besides, utilizing meta-optimization based on statistical sampling. The
study aims to obtain a method with a high rate of success, low number of the simulated
problem evaluations, minimal needs of prior training parameters specification,
adaptability to different problem classes, deterministic behavior for obtaining minimal
complexity solutions, and low computational cost. The performance of the new
algorithm is compared to the main techniques used in state of the art, in problems of
physical system control and other usual benchmarks.
11
1 INTRODUO
12
Neste trabalho objetiva-se analisar as principais heursticas utilizadas atualmente,
tentando fundamentar matematicamente a grande flexibilidade dos algoritmos
genticos, e analisando a complexidade computacional e desempenho nem sempre
aceitveis, porm mais precisos, dos mtodos de recozimento simulado.
13
manter o pndulo equilibrado em relao vertical. A soluo desse problema pode ser
calculada matematicamente utilizando como variveis a posio do carro (X), a
velocidade do carro X , a posio angular do pndulo () e a velocidade angular do
. A medida de qualidade de uma soluo o tempo em que o sistema
pndulo
consegue manter o pndulo equilibrado sem o carro ultrapassar um limite de posio
(lt).
A figura 1.2 apresenta uma arquitetura tpica de rede neural, onde neurnios de
entrada (an) recebem valores dos sensores do sistema, os neurnios ocultos (bn)
calculam a funo de transferncia do valor da soma das entradas multiplicadas por seus
respectivos pesos (vnp), e os neurnios de sada (cn) calculam a funo de transferncia
do valor da soma dos neurnios ocultos multiplicados por seus respectivos pesos (wnp), e
finalmente obtm um valor de sada que ser utilizado por um atuador no sistema
simulado.
14
15
1.2.2 Recozimento Simulado
Os mtodos de recozimento simulado de aprendizado baseiam-se na termodinmica,
especificamente na ideia de recozimento da siderurgia, onde aquecendo um material a
uma alta temperatura faz com que os tomos sejam capazes de desprenderem-se de suas
posies iniciais, e ento, lentamente resfriando o material, os tomos tendem a entrar
em um estado ordenado de baixa energia. Analogamente, no sistema de aprendizado
chamado recozimento simulado (Simulated Annealing) inicia-se com uma grande taxa
de variao (anlogo a uma alta temperatura), causando uma grande variabilidade de
solues, e gradualmente reduz-se a taxa de variao (anlogo ao resfriamento), porm
utilizando uma taxa de aceitao que d preferncia a estados onde a soluo possui
maior desempenho (anlogo ao fato dos tomos tenderem a estados de baixa energia).
Desse modo, conforme a temperatura, ou taxa de variao, baixada, obtido o
refinamento de uma soluo at tender ao timo global. Normalmente apresentada
uma prova matemtica de convergncia ao timo global, assumindo distribuies de
probabilidades de estados similares ao processo termodinmico.
Os primeiros algoritmos de recozimento simulado eram fortemente baseados na
termodinmica, inclusive utilizando as mesmas equaes de distribuio de
probabilidades do espao de busca. O mtodo original descrito deve utilizar um roteiro
de resfriamento muito lento com T =T 0 /logt , sendo T a temperatura no instante t,
alm de iniciar com uma temperatura alta suficiente para sair de qualquer timo local
presente no espao de busca, o que leva a um tempo de computao excessivamente alto
para objetivos prticos. Alm disso, o espao de solues percorrido pelo algoritmo
muito superior ao prprio tamanho do espao de solues, pois o algoritmo mantm
apenas um estado atual, podendo regressar ao mesmo aleatoriamente. Devido a esses
problemas tm sido propostas diversas formas de acelerar o processo. Para evitar o
contratempo de percorrer o espao de solues aleatoriamente, uma das solues
iniciar em vrios pontos do espao de busca, assim sendo possvel iniciar com uma
temperatura menor e convergir em menos tempo. Para aumentar a probabilidade de
obter bons candidatos a prximos estados, possvel utilizar alguma heurstica sobre os
melhores candidatos j encontrados, como analisar os pesos e bias das solues
(INGBER, 1989). O roteiro do resfriamento e a taxa de aceitao de candidatos esto
intrinsecamente ligados ao gerador de candidatos, portanto muitos estudos propem
ambos relacionadamente.
De uma forma geral, os principais parmetros a ser escolhidos para o algoritmo so:
a energia (qualidade da soluo) alvo; o gerador de candidatos; a probabilidade de
aceitao, pois o algoritmo deve aceitar estados piores do que o atual com alguma
probabilidade a fim de transpor timos locais e percorrer o espao de solues; a
temperatura inicial; e o roteiro de resfriamento de temperatura.
1.2.3 Mtodo do Gradiente Ascendente
O mtodo do gradiente ascendente (gradient ascent) baseia-se na ideia de que
possvel derivar a qualidade de uma soluo em relao aos pesos e bias de uma rede
neural, obtendo o gradiente () do escore e assim variando-os em direo ao mximo
escore.
A figura 1.4 ilustra quatro passos sucessivos (xn) na busca do timo global do espao
de busca (pequeno crculo central).
16
17
Nessa seo so descritos dois dos mais eficientes mtodos utilizados para
otimizao de problemas de aprendizado por reforo, sendo o primeiro gentico e o
segundo de recozimento simulado. Em seguida, na seo 2.3 so apresentados os
mtodos de aprendizado de redes neurais cascateadas, por conterem um princpio
determinstico eficiente na busca de solues a partir da complexidade mnima.
18
(aqueles no relacionados, mostrados entre o primeiro e o ltimo gene relacionado) e
genes em excesso (aqueles no relacionados, mostrados aps o ltimo gene relacionado)
so herdados do Pai mais adaptado. Nesse caso, igual adaptao assumida, ento os
genes disjuntos e os genes em excesso so tambm herdados aleatoriamente. Os genes
desabilitados podem se tornar habilitados novamente em futuras geraes: existe uma
chance pr-determinada que um gene herdado esteja desabilitado se ele estiver
desabilitado no pai tambm. (STANLEY, 2001). Nesse caso, adaptao refere-se ao
escore de uma rede neural.
19
20
mesmo ocorre conforme N aumenta. Esse resultado reala a dificuldade do NEAT em
produzir solues com alta variabilidade. (KOHL, 2009).
21
assim tornando o algoritmo prtico para diversos tipos de problemas, porm nem
sempre alcanando o timo global.
2.2.1 Descrio
A verso anterior, chamada Fast Simulated Annealing, de H. Szu e R. Hartley, utiliza
uma distribuio estatstica de Cauchy (similar a uma distribuio normal, podendo
assumir valores infinitos) para a gerao de pesos e bias da rede neural, requerendo um
roteiro para a queda de temperatura proporcional a T =T 0 /t para obteno do timo
global. Finalmente Ingber props que os pesos e bias a ser otimizados encontram-se em
uma faixa finita de valores [Ai,Bi], e que esta faixa poderia iniciar com valores fixos de
A e B e ser amostrada e estimada durante a execuo do algoritmo de treinamento. Isso
1
D
22
conectado novamente a x36 e x23, alm de z1. Como o candidato z2 no aumentou a
qualidade da soluo, o neurnio descartado, e a prxima entrada (x10) utilizada na
prxima iterao. Novamente z2 criado conectado a z1, x36 e x10, melhorando a
qualidade da soluo e, portanto sendo consolidado, e assim por diante. Quando todas as
entradas foram utilizadas, o algoritmo interrompido.
23
24
nica sada) e ao bias do neurnio de sada (no ilustrados na figura) (detalhes da
arquitetura da rede neural so apresentados na seo 3.2).
25
Uma vantagem dessas arquiteturas apresentadas na figura 3.2 que um mesmo
neurnio oculto pode realizar um clculo relevante para vrias sadas, visto que, em um
problema de controle, as sadas podem estar relacionadas identificao de um
determinado estado das entradas.
1sgm x00=1sgmx01
Figura 3.3: Dupla representatividade por pesos e bias diferentes
26
O problema apresentado na figura 3.3 pode ser resolvido utilizando somente pesos
positivos nos neurnios, embora isso impea a utilizao de um mesmo neurnio oculto
em duas sadas da rede neural, caso uma necessite o peso positivo, e outra necessite o
peso negativo.
27
3.2.2 A Recombinao de Redes Neurais
A adio de novos neurnios, bem como a recombinao gentica utilizados no
mtodo NEAT, aplicados em redes neurais multicamada, conforme a figura 3.2 (b),
causam uma grande alterao na funo calculada pela rede neural. A figura 3.6 ilustra a
adio de um novo neurnio, da mesma forma que o problema de dupla representao
apresentado na figura 3.4. O fator 4,9 utilizado pelo NEAT consegue minimizar os
efeitos da adio de um novo neurnio, devido ao comportamento linear da funo
sigmoide utilizando esse fator. Porm percebida a alterao drstica na funo
realizada pelos neurnios.
sgm4.9X
sgm4.9sgm4.9X
sgm x3sgm x4
sgm x4sgm x3
sgm
28
29
Conforme so gerados candidatos com escore superior, eles so agrupados
(conforme a seo 3.4 explica) e seus pesos e bias analisados, avaliando a mdia e
desvios-padro, e assim esperado um aumento gradual nos escores de um
agrupamento. Porm, para realizar a deteco de timos locais que devem ser
eliminados, ser utilizada uma abordagem parecida do mtodo de recozimento
simulado, ou seja, quando a quantidade de candidatos gerados aceitos for menor do que
uma parcela de candidatos gerados, assumido que o agrupamento atingiu um timo
local. Por exemplo, caso seja utilizado =0.1, esperado que 10% dos candidatos
gerados atinjam o escore superior a 90% dos candidatos at ento amostrados. Pode-se
utilizar uma margem de segurana para evitar a eliminao incorreta do agrupamento,
levando em conta que o mtodo estatstico.
30
2
N
u1xu2x
1
N x=1 N 1x N 2x
D N 2,0.5 , N 2,0.5=1.94
D N 2,5 , N 2,5=0.74
Sendo a distncia: D N 1, N 2=
u1 u2
N 1N 2
31
3.4.2 Distncia Entre Redes Neurais de Topologias Diferentes
A arquitetura de rede neural apresentada na seo 3.2.3 permite que seja calculada
uma distncia entre duas redes neurais de diferentes topologias. Segue a explicao do
algoritmo: so calculadas as distncias entre todos pares possveis das duas redes
neurais, e ento criado o mapa de neurnios mais parecidos entre as duas redes
neurais, a partir das menores distncias.
A figura 3.12 ilustra o caso onde durante a comparao de dois neurnios eles
contenham diferentes conexes s entradas da rede neural (d falta na segunda rede
neural), pode-se assumir que a distribuio normal de pesos da conexo faltante seja
zero. Caso as redes neurais contenham diferente nmero de neurnios, assume-se que os
neurnios faltantes possuem peso zero (b, conexo com o neurnio de sada), porm
assim no so calculadas as distncias entre os pesos e bias das conexes com os
neurnios de entrada. Ento realizado o clculo do valor mdio quadrtico dos pesos
(a), (b), (c), (d), e dos bias (e) e (f).
32
posteriormente sua criao, venham a ser identificados como de baixo escore. Porm,
do mesmo modo, os clusters que eram considerados de baixo escore podem vir a ser
reabilitados.
Cada cluster tambm mantm estatsticas sobre todos os candidatos gerados, a fim
de detectar timos locais, conforme explicado na seo 3.3.
A figura 3.13 ilustra o comportamento esperado para a busca de candidatos. X e Y
representam duas dimenses hipotticas (pesos e bias) de uma rede neural. Inicialmente
as duas redes neurais representadas pelos pontos na elipse cinza-clara, obtidas pela
amostragem de todo o espao de busca, formam um cluster. Em seguida, so obtidos os
dois pontos da elipse cinza-mdia, representando um alto escore em relao elipse
cinza-clara. A partir dos pontos da elipse cinza-mdia, finalmente obtido o timo local
representado pela elipse cinza-escura.
33
// Parmetros de treinamento
// Parcela da populao considerada de alto escore // Conforme seo 3.3
clustering_
// distncia em desvios-padro permitidos para clusterizao // Seo 3.4
passo_mximo // a quantidade de novos neurnios, ou novas entradas, adicionados a cada
passo de treinamento, conforme seo 3.1
// Classes
classe TOPOLOGIA
{
ESTATSTICAS_CANDIDATOS
// de todos os candidatos gerados pela TOPOLOGIA
CLUSTERS
// Lista de CLUSTER
}
classe CLUSTER
{
ESTATSTICAS_CANDIDATOS
// de todos os candidatos gerados pelo CLUSTER
ESTATSTICAS_MEMBROS
// somente dos candidatos de alto escore
}
// Variveis globais
TOPOLOGIAS
AMOSTRAS
// Lista de topologias
// Lista de candidatos de alto escore a ser clusterizados
// Algoritmo
Faa
{
TOPOLOGIAS so criadas topologias, ou so adicionados neurnios e entradas conforme
passo_mximo // Conforme seo 3.1.
Para cada TOPOLOGIA em TOPOLOGIAS
{
se o nmero de candidatos gerados pela TOPOLOGIA < nmero desejado // Seo 5.2.2.
{
gerar CANDIDATO
adicionar escore do CANDIDATO s ESTATSTICAS da TOPOLOGIA
se escore do CANDIDATO > ESCORE_ALTO_TOPOLOGIA // Conforme seo 3.3.
adicionar CANDIDATO s AMOSTRAS
}
para cada CLUSTER em TOPOLOGIA
{
caso a taxa (nmero de membros/nmero de candidatos) > (*margem_segurana)
{
o CLUSTER finalizado // um timo local, conforme seo 3.3.
prossegue o lao de CLUSTER
}
caso o escore do CLUSTER < alto escore da TOPOLOGIA
finaliza o CLUSTER
caso contrrio, reabilita o CLUSTER // Ver seo 3.5.
// Opcionalmente pode-se finalizar clusters de baixo escore em relao a outros
clusters.
// Opcionalmente pode-se favorecer clusters de alto escore em relao a outros
clusters, gerando vrios candidatos.
gerar CANDIDATO de CLUSTER
// Conforme seo 3.5.
adicionar escore do CANDIDATO s ESTATSTICAS_CANDIDATOS do CLUSTER
se escore do CANDIDATO > ESCORE_ALTO_MEMBROS
// Conforme seo 3.3.
adicionar CANDIDATO s AMOSTRAS
adicionar escore do CANDIDATO s ESTATSTICAS_MEMBROS do CLUSTER
}
caso nmero de AMOSTRAS da TOPOLOGIA > MIN_AMOSTRAS
clusterizar CLUSTERS e AMOSTRAS, com desvio-padro clustering_
caso nmero de AMOSTRAS da TOPOLOGIA > FINAL_AMOSTRAS & CLUSTERS est vazia
o treino da TOPOLOGIA encerrado // ver seo 5.2.2.
}
Opcionalmente:
{
Para cada TOPOLOGIA em TOPOLOGIAS
estatsticas da TOPOLOGIA Estatsticas do melhor CLUSTER da TOPOLOGIA
TOPOLOGIAS de escore mximo inferior a outras topologias so eliminadas
}
Clusterizar TOPOLOGIAS, com desvio-padro clustering_ // Ver seo 3.4.2
Caso no houve aumento de escore nas topologias, considera-se o algoritmo encerrado
}
34
equao: F =k 1sgm k 2X k 3X k 4k
5 (GEVA, 1993), sendo (F) a fora
aplicada ao carro, (X) a posio do carro, ( X ) a velocidade do carro, () a posio
angular do pndulo, ( ) a velocidade angular do pndulo, e (kn) as constantes a ser
otimizadas.
Devido simplicidade da equao soluo do problema, estimado que um nico
neurnio, tanto no mtodo NEAT quanto no mtodo proposto nesse trabalho, ser
suficiente para obter uma soluo. Levando em conta que o mtodo NEAT inicia sua
populao com todas as entradas conectadas ao neurnio de sada, concludo que o
processo iniciado com a topologia ideal para a soluo do problema. Portanto nesse
trabalho ser utilizada a mesma topologia inicial, para fins de comparao, e, portanto
servindo como teste somente para a eficincia da clusterizao e da busca pelos pesos e
bias. Foram feitas diversas execues do algoritmo proposto, para vrias configuraes
de parmetros. Os resultados podem ser vistos nas tabelas do Apndice.
Os melhores resultados obtidos foram uma mdia de 1824 execues do algoritmo
do carro-pndulo, com erro mximo de 182 execues, com 95% de confiana, com
desvio-padro de 1213 execues, at a obteno de uma soluo, utilizando =0.1;
sem eliminao de clusters de baixo desempenho; com desvio-padro para
clusterizao de 2,8; e com um nmero mnimo de amostras de alto escore para realizar
a clusterizao de uma amostras.
O mtodo NEAT necessita em mdia 3600 execues da simulao fsica, com
desvio-padro de 2704 execues, nenhuma falha, sendo os dados obtidos de 120
execues (STANLEY, 2001). Assim, assume-se que a mdia possa ter um erro de 644
execues, com 95% de confiana, assumindo uma distribuio normal.
35
4.2 Carro-Pndulo
O problema de carro-pndulo simples possui apenas um pndulo, sendo, portanto de
soluo mais fcil. Nesse trabalho, o problema utilizado de forma mais complexa,
devendo equilibrar o pndulo iniciando de vrias configuraes iniciais crticas (GEVA,
1993), ou seja: com o carro nos dois extremos do espao disponvel, movimentando-se
para fora da pista, com o pndulo caindo em direo ao centro da pista, e com um
ngulo inicial do pndulo tambm direcionado ao centro da pista. Esse o nico modo
em que o problema difcil suficiente para que uma busca aleatria no seja suficiente
(GEVA, 1993).
Foram utilizadas 2,2 amostras por dimenso, para a minimizao de falhas (no
encontrar nenhuma soluo) conforme a seo 5.2.2 explica. Alm disso, foi necessrio
utilizar um fator de seis vezes para margem de segurana da eliminao de clusters, ou
seja, se =0.1, elimina-se um cluster quando a taxa de amostras aceitas pelo nmero de
amostras geradas for 0.1/6 (conforme seo 3.3). Os resultados podem ser vistos nas
tabelas do Apndice.
A cada situao resolvida dentre as duas configuraes iniciais, esperado um
aumento de aproximadamente cinco pontos no escore. Tambm, em cada situao, o
escore pode dobrar proporcionalmente ao tempo em que o carro fica mais prximo do
centro do espao disponvel. Portanto, o escore mximo vinte, e o escore considerado
uma soluo aceitvel foi 19,25.
4.2.1 Evoluo da Clusterizao no Problema de Carro-Pndulo
36
4.2.2 O Espao de Busca no Problema do Carro-Pndulo
37
5 CONCLUSO
38
problema da dupla representao e da recombinao de redes neurais atravs de
correes matemticas; o desenvolvimento de um eficiente gerador de candidatos
baseado em amostras das redes neurais obtidas; a fundamentao matemtica para a
eliminao de timos locais; a utilizao de topologias crescentes de forma bem
controlada; e as mtricas de distncia entre redes neurais so tcnicas que podem
imediatamente ser incorporadas nos algoritmos genticos existentes, devendo ser
cuidadosamente testadas em diversas classes de problemas, e validadas ou rejeitadas.
A boa eficincia do mtodo proposto nesse trabalho justifica a utilizao de
metaotimizao estatstica, bem como a clusterizao, devendo servir de inspirao para
futuras pesquisas. Embora o mtodo proposto ainda esteja longe de tornar-se um
mtodo que resolva qualquer classe de problemas, alguns passos adiante foram dados. A
identificao do problema do continuum de solues (seo 5.2.1), do nmero de
amostras necessrios para conhecer o espao de busca (seo 5.2.2), a identificao das
vantagens das topologias cascateadas, o bom desempenho obtido no carro-pndulo
utilizando distribuies normais como heurstica, e algumas tcnicas que so vistas na
seo 5.3 prometem contribuir para a criao de um mtodo altamente adaptativo.
5.2 Os Problemas
5.2.1 Continuum de solues
A figura 5.1 mostra trs solues que classificam corretamente pontos no problema
de N-Pontos, criando assim um continuum de solues podendo chegar a valores
infinitos para pesos e bias que classificam corretamente os pontos. Isso causou com que
o algoritmo proposto divergisse ao invs de convergir para uma soluo, criando um
nmero insuportvel de clusters.
Para a soluo desse problema, dois pontos devem ser levados em conta: as
distncias entre a funo realizada pela rede neural e o ponto a ser classificado devem
ser minimizadas; e os pesos das entradas nos neurnios devem ser artificialmente
limitados, ou implementar um mecanismo que detecte a divergncia de solues.
sgm1.7E 06.7
sgm3E 0 10.5
sgm7E 0 23.5
39
2 2=4 amostras, e assim por diante.
O problema de duplo carro-pndulo funcionou razoavelmente bem com duas
amostras por dimenso, obtendo uma baixa taxa de falhas, indicando que h certa
convexidade no espao de busca. J o problema do carro-pndulo, devido a sua maior
complexidade (ver seo 4.2) e presena de timos locais obteve um nmero maior de
falhas. Assim, a figura 5.1 ilustra um espao de busca com apenas um timo global (a) e
um espao de busca com vrios timos locais (b), bem como a quantidade de pontos
necessrios para o conhecimento deles.
Pode-se amenizar esse problema aumentando o nmero de amostras a cada cluster
encontrado. Assim amostras=clusters1N dimenses , sendo N o nmero de amostras
por dimenso desejado, devendo ser alto o suficiente para amenizar as chances de uma
aleatorizao ruim ou de m sorte, que recai em mnimos globais, e no se devem
contar amostras que recaiam em clusters j conhecidos.
40
41
5.3.1.2 Histograma multidimensional
Outra abordagem, ao invs de utilizar clusterizao baseada em distribuies
normais, seria utilizar um histograma completo do espao de busca. Baseando-se na
anlise do histograma obtido atravs de amostras, pode-se criar um eficiente gerador de
candidatos, tentando explorar espaos prximos a solues de alto escore, permitindo
alcanar e identificar todos os timos locais. A figura 5.5 ilustra um eficiente algoritmo
adaptativo que mantm aproximaes (b) de uma amostra real (a).
42
5.3.2 Mtricas de Distncia Entre Distribuies Normais Multidimensionais
Um estudo analisou o desempenho de diferentes mtricas de distncia em espaos
multidimensionais para vrias classes de problemas (AGGARWAL), obtendo resultados
variados em qualidade. A seguir so apresentadas algumas tcnicas de estatstica
paramtrica relevantes ao problema de clusterizao realizado no mtodo proposto
nesse trabalho.
5.3.2.1 Distncia de Mahalanobis
A mtrica de distncia de Mahalanobis permite uma anlise mais precisa da
correlao entre uma distribuio normal em vrias dimenses, permitindo calcular a
componente diagonal, conforme a figura 5.7 ilustra.
43
44
45
46
REFERNCIAS
ADAPTIVE
Simulated
Annealing
Readme.
Disponvel
<http://www.ingber.com/ASA-README.html>. Acesso em: nov. 2010.
em
47
LAHNAJRVI, J. J. T., Lehtokangas, M. I., Saarinen, J. P. P. Evaluation of
Constructive Neural Networks With Cascaded Architectures. Neurocomputing 48, p.
573607, 2002.
MAHFOUD, S. W.; Goldberg, D. E. Parallel Recombinative Simulated Annealing: A
Genetic Algorithm. Parallel Computing, n. 21, p.1-28, 1995.
NEUROEVOLUTION. The Neuroevolution of Augmenting Topologies (NEAT) Users
Page. Disponvel em <http://www.cs.ucf.edu/~kstanley/neat.html>. ltimo update:
19/7/2010. Acesso em: nov. 2010.
PADERSEN, M. E. H. Tuning & Simplifying Heuristical Optimization. 2010, 204 f.
Thesis (Doctorate in Philosophy) School of Engineering Sciences, University of
Southampton.
RAM, D. J; Sreenivas, T. H; Subramaniam, K. G. Parallel Simulated Annealing
Algorithms. Journal of Parallel and Distributed Computing 37, n. 121, p. 207212,
1996.
SCHETININ, V. A Learning Algorithm for Evolving Cascade Neural Networks. Neural
Processing Letters 17, p. 2131, 2003.
STANLEY, K. O., Miikkulainen, R. Evolving Neural Networks through Augmenting
Topologies. 2001. Department of Computer Sciences, The University of Texas at
Austin, Austin, TX.
STANLEY, K. O., Bryiant B. D., Miikkulainen, R. Evolving Neural Network Agents in
the NERO Video Game. 2005. Proceedings of the IEEE 2005 Symposium on
Computational Intelligence and Games.
STHREL, Alexander. Relationship-based Clustering and Cluster Ensembles for
High-dimensional Data Mining. 2002, 214 f. Dissertation (Doctorate in Philosophy)
Faculty of the Graduate School of The University of Texas at Austin.
SUTTON, R. S.; Barto, A. G.; Anderson, C. W. Neuronlike Adaptive Elements That Can
Solve Difficult Learning Control Problems. 1983. IEEE Transactions on Systems,
Man and Cybernetics, Vol. SMC-13, n. 5, p. 835-846.
THAPER, N. et al. Dynamic Multidimensional Histograms. ACM SIGMOD '2002
June 4-6, Madison, Wisconsin, USA. 2002.
48
49
{jsettin,engel}@inf.ufrgs.br
1. Introduo
Este trabalho apresenta uma proposta de algoritmo de aprendizado de redes neurais para
situaes complexas e de incerteza onde h solues diferentes que podem atingir a
qualidade desejada, onde a complexidade da rede neural necessria para alcanar uma
soluo desconhecida, e onde a qualidade de solues dificilmente avaliada devido a
complexidade do ambiente ou problema simulado [Black Box 2010]. Essas situaes
podem ter de exemplo a natureza, onde so encontradas solues diversas como as
diferentes maneiras que os animais desenvolveram para caminhar ou correr
eficientemente [Basso 2005], sendo uma rea inspiradora para a robtica. Pode-se citar
a complexidade algortmica de estratgias de jogos, onde a complexidade
computacional exigida para a obteno de uma estratgia inicial desconhecida
[Neyman 2003] [Stanley 2005], e sistemas caticos, como aerodinmica e outros
sistemas fsicos, que podem variar bruscamente a qualidade de uma soluo com
pequenas mudanas.
No corrente estado da arte, tm sido propostas vrias arquiteturas de redes
neurais e de algoritmos de aprendizagem, conseguindo-se bons resultados para
aplicaes especficas. Porm so demonstradas vrias dificuldades em ambientes
complexos, e mesmo mtodos como algoritmos genticos tem se mostrado ineficientes
por apresentar uma baixa variabilidade na procura de solues [Kohl 2009], justificando
a utilizao do mtodo probabilstico de Recozimento Simulado (Simulated Annealing)
onde a busca por solues tem a variabilidade controlada dinamicamente pelo
parmetro temperatura.
A arquitetura de Redes Neurais Evolutivas em Cascata (Evolving Cascade
Neural Networks - ECNN) tem se mostrado promissora para obter solues aceitveis
com nmero mnimo de neurnios e conexes, por primeiramente avaliar as entradas
mais relevantes de um sistema [Schetinin 2003], portanto uma escolha razovel como
50
51
52
53
54
55
56
57
58
funo a ser aproximada, bem como a respectiva rede neural mnima que capaz de
representar a funo.
Figura 8. Rede neural mnima a ser obtida para representao da funo a ser
aproximada ilustrada na figura 7. A funo de sada da rede neural idntica
funo a ser aproximada.
59
60
5. Planejamento de Atividades
Tabela 1: Plano de atividades
Tarefa
Importncia
Ordem
xidade
Arquitetura bsica
da rede neural
20
Baixo
Alta
Interface de
criao de novos
neurnios
10
Baixo
Mdia
Interface de
medida de
diferena entre
redes neurais
10
Alto
Baixo
Funes a serem
aproximadas
(Black Box)
Baixo
Baixa
Algoritmo de
treinamento
10
Baixo
Alto
Estatstica
20
Alto
Alto
Teste, possveis
aprimoramentos,
concluses e
monografia
25
Baixo
Mdio
Total
100
6. Concluso
O problema de aprendizado de mquina tem se mostrado um problema de difcil
soluo, com diversas adaptaes para situaes especficas. A adaptao de tcnicas
tornou-se um procedimento padro, exigindo vrios ajustes em parmetros de
algoritmos e muitas vezes no se conseguindo alcanar solues aceitveis.
Com este projeto espera-se obter um mtodo eficiente de aprendizado nos
seguintes requisitos: alcanar a soluo tima com alta probabilidade e preciso;
alcanar a soluo tima minimizando o tamanho da rede neural; minimizar o nmero
de parmetros ajustveis pr-escolhidos; alcanar a soluo tima com desempenho
aceitvel (alta eficincia computacional); alcanar a soluo tima sistematicamente
independente da complexidade da rede neural exigida para a soluo.
O algoritmo de treinamento de redes neurais proposto utiliza um misto de
tcnicas j amplamente utilizadas e validadas no corrente estado da arte. Algumas
modificaes nos algoritmos originais foram apresentadas, aumentando a complexidade
do projeto para a integrao dos mtodos escolhidos.
61
Referncias
Basso, D. M. (2005) Arquitetura Neural para Controle da Locomoo de um Rob
Quadrpede Baseada em Referncias Biolgicas. 2005. 54 f. Dissertao (Mestrado
em Cincia da Computao) Instituto de Informtica, UFRGS, Porto Alegre.
Black Box. Wikipedia. Disponvel em <http://en.wikipedia.org/wiki/Black_box>.
Acesso em: jun. 2010.
Elman, J. L. (1993) Learning and development in neural networks: the importance of
starting small Cognition, 48. Departments of Cognitive Science and Linguistics,
University of California, San Diego, La Jolla, CA 92093-0526, USA.
Fahlman, S. E. e Lebiere, C. (1991) The Cascade-Correlation Learning Architecture.
School of Computer Science, Carnegie Mellon University, Pittsburgh.
Interactive Statistical Calculation Pages. Disponvel em <http://statpages.org>. Acesso
em: jun. 2010.
Kohl, N. (2009) Learning in Fractured Problems with Constructive Neural Network
Algorithms. Thesis (Doctorate in Philosophy) Faculty of the Graduate School,
The University of Texas at Austin.
Neyman, A. (2003) Algorithmic Strategy Complexity. Hebrew University of
Jerusalem,
Jerusalem
Israel.
Disponvel
em:
<http://ratio.huji.ac.il/dp/neyman/algorslidesnwu.pdf>. Acesso em: jun. 2010.
Padersen, M. E. H. (2010) Tuning & Simplifying Heuristical Optimization. Thesis
(Doctorate in Philosophy) School of Engineering Sciences, University of
Southampton.
Ram, D. J., Sreenivas, T. H., Subramaniam, K. G. (1996) Parallel Simulated Annealing
Algorithms. Journal of Parallel and Distributed Computing 37, n. 121, p. 207212.
Root
Mean
Square
Deviation.
Wikipedia.
Disponvel
em
<http://en.wikipedia.org/wiki/Root_mean_square_deviation>. Acesso em: jun. 2010.
Schetinin, V. A. Learning Algorithm for Evolving Cascade Neural Networks. Neural
Processing Letters 17, p. 2131, 2003.
Stanley, K. O., Miikkulainen, R. (2001) Evolving Neural Networks through
Augmenting Topologies Department of Computer Sciences, The University of
Texas at Austin, Austin, TX.
Stanley, K. O., Bryiant B. D., Miikkulainen, R. (2005) Evolving Neural Network
Agents in the NERO Video Game. Proceedings of the IEEE 2005 Symposium on
Computational Intelligence and Games.
Universal
Approximation
Theorem.
Wikipedia.
Disponvel
em
<http://en.wikipedia.org/wiki/Universal_approximation_theorem>. Acesso em: jul.
2010.
62
=0,2
=0,15
=0,1
=0,05
2,2 u
8912
5735
4230
2,2
5833
3151
2633
1 O nmero de amostras foi ajustado para obter um erro mximo de 20% na mdia, com confiana de
95%, assumindo uma distribuio normal.
63
=0,1
=0,1
=0,1
=0,1
=0,05
=0,05
=0,05
=0,05
1
2
4
8
2,0 u
1 2083
2 2166
4 2927
8
1
2
4
8
2,0
1279
1308
3750
2,4
1508
1419
2558
4185
2,8 u
2465
2336
2581
2727
2,8
2048
1654
1912
2457
3,2 u
2422
2308
2275
2783
3,2
1307
1216
2114
2523
2,4 u
2028
2160
2540
2671
2,4
1386
1367
2836
2889
2,8 u
1824
2038
2194
2668
2,8
1213
1402
1626
2628
3,2 u
1962
2136
2361
2494
3,2
1205
1231
2130
1920
2,4 u
2085
2278
2721
3022
2,4
1707
2181
2894
3279
2,8 u
1931
1954
2310
3027
2,8
1188
1284
1796
3816
3,2 u
2026
1978
2116
2539
3,2
1828
1194
1703
2467
2 O nmero de amostras foi ajustado para obter um erro mximo de 10% na mdia, com confiana de
95%, assumindo uma distribuio normal.