Aprendizagem Automática

39
Algoritmos Genéticos Aprendizagem por Reforço

Transcript of Aprendizagem Automática

Page 1: Aprendizagem Automática

Algoritmos GenéticosAprendizagem por Reforço

Page 2: Aprendizagem Automática

Apresentação Breves notas sobre a história da AA / IA

Page 3: Aprendizagem Automática

Dado um conjunto de pontos e as distâncias entre eles, qual a ordem de visita que minimiza o caminho percorrido passando por todos os pontos, uma única vez em cada ponto.

Page 4: Aprendizagem Automática

Dadas as cidades (pontos) A, B, C ... as soluções são todas as combinações possíveis em que estão representadas apenas uma vez todas as cidades

Podemos ver estas soluções ligadas entre si como um espaço / grafo

Umas soluções podem ser transformadas noutras por (por exemplo) troca de posições entre duas cidades

Page 5: Aprendizagem Automática

Sequencial (experimentar todas as combinações)

Aleatório (experimentar várias combinações, escolher a melhor)

A* (fazer todas as alterações possíveis à melhor solução encontrada até ao momento)

Simulated Annealing (Arrefecimento simulado)

Algoritmos Genéticos (Genetic / Evolutionary Algorithms)

Page 6: Aprendizagem Automática

Semelhante ao processo de arrefecimento de ligas metálicas

Tenta prevenir problema dos mínimos locais Exploração aleatória Aceita novo estado

Sempre que estado é melhor

Com uma probabilidade decrescente, mesmo quando é pior (prob. controlada por diferença ao melhor e temperatura)

Page 7: Aprendizagem Automática

Mínimos locais

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Erro

Valor de um parâmetro / diferentes soluções

Page 8: Aprendizagem Automática

Probabilidade de aceitação de novo estado

0

0.2

0.4

0.6

0.8

1

1.2

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2

P(dE) T=.125 P(dE) T=0.25 P(dE) T=0.5 P(dE) T=1 P(dE) T=2 P(dE) T=4 P(dE) T=8

T

E

eEP )(

Page 9: Aprendizagem Automática

Inspirado na teoria da evolução das espécies

Tenta encontrar soluções com maior aptidão:

gerando uma “população” de soluções possíveis,

avaliando-as

mutando ou recombinando as mais promissoras, gerando nova população

Page 10: Aprendizagem Automática

Capacidade para resolver o problema Inverso do erro Adequação de um padrão à resolução do problema

Conveniente que seja um número real e que as diferenças nas soluções sejam tão precisas quanto possível

Avaliação dos “sobreviventes”: Proporcional à qualidade da solução N melhores Torneio …

Page 11: Aprendizagem Automática

Para N gerações (ou até Fbest > E )

Para Si (Espécime/Specimen) em população

▪ Avaliar Si -> Fi (Aptidão/Fitness)

Escolher os melhores (Bi) (selected pool / survivors)

Gerar nova população, para Si

▪ Si = mutate(Ba): a = rand (prioridade aos mais aptos)? OU

▪ Si = crossover(Ba, Bb): a, b = rand

Page 12: Aprendizagem Automática

Dada uma mochila com capacidade limitada (peso ou volume)

Cada “pacote” tem um peso e um valor (monetário por exemplo)

Como escolher que pacotes levar de modo a maximizar o valor dos pacotes, sem exceder o peso

Page 13: Aprendizagem Automática

Formulação para GA

1 1 0 1 …

Cada quadrado indica se o pacote n é levado ou não

(20,2) (24,3) (10,2) (3,2) …

Page 14: Aprendizagem Automática

Formulação para GA

Topologia de uma rede neuronal.

Page 15: Aprendizagem Automática

1 1 0 0 1 0 1 …

Page 16: Aprendizagem Automática

Alterar uma solução

1 1 1 0 0 0 1 …

1 1 0 0 1 0 1 …

Page 17: Aprendizagem Automática

Fusão de duas soluções

1 1 0 0 0 0 1 …

1 1 0 0 1 1 0 …

0 1 1 0 0 0 1 …

crossover-point +

Page 18: Aprendizagem Automática

Principais sub-tipos(ver discussão em GA-FAQ) [Heitkoetter et al. 94]

Genetic Algorithms

Evolutionary Programming / Evolution Strategies

Genetic Programming

Classifier Systems

(Neuro Evolution)

Page 19: Aprendizagem Automática

[Metropolis et al. 53] N. Metropolis, A.W. Rosenbluth, M.N. Rosenbluth, A.H. Teller, and E. Teller. "Equations of State Calculations by Fast Computing Machines". Journal of Chemical Physics, 21(6):1087-1092, 1953.

[Kirkpatrick et al. 83] Kirkpatrick, S.; C. D. Gelatt, M. P. Vecchi (1983-05-13). "Optimization by Simulated Annealing". Science. New Series 220 (4598): 671-680. ISSN 00368075.

[Cerny 85] V. Cerny, A thermodynamical approach to the travelling salesman problem: an efficient simulation algorithm. Journal of Optimization Theory and Applications, 45:41-51, 1985

[Goldberg 89] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Kluwer Academic Publishers, Boston, MA, 1989.

[Fogel 06] D. B. Fogel, Evolutionary Computation: Toward a New Philosophy of Machine Intelligence, IEEE Press, Piscataway, NJ. Third Edition, 2006.

[Holland 75] John H. Holland, Adaptation in Natural and Artificial Systems, University of Michigan Press, Ann Arbor, 1975

[Koka 92] John Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, MIT Press. ISBN 0-262-11170-5, 1992

[Heitkoetter et al. 94] Heitkoetter, Joerg and Beasley, David, eds. (1994) "The Hitch- Hiker's Guide to Evolutionary Computation: A list of Frequently Asked Questions (FAQ)", USENET : comp.ai.genetic.

Recursos vários sobre GA

Page 20: Aprendizagem Automática

10 minutos p.f. seja pontual

Page 21: Aprendizagem Automática

Dado um labirinto, que pode ser percorrido repetidas vezes, é possível criar um programa que aprenda qual o melhor caminho para sair desse labirinto?

Page 22: Aprendizagem Automática

Aplicado em problemas em que um “agente” tem de interagir com um ambiente

O agente tem de aprender quais as acções que lhe dão maiores recompensas

O agente consegue observar o estado do ambiente (ou parte dele) e/ou o seu estado interno

Page 23: Aprendizagem Automática

Recepção de estado do ambiente (s) no tempo t

Escolha da acção (a) Recepção da recompensa

(r, positiva, negativa, binária ou decimal) Actualização dos parâmetros de escolha da

acção (usando a politica de escolha, (s,a))

Page 24: Aprendizagem Automática

Pode ser externa (do ambiente) ou interna (crítico heurístico, heuristic critic)

Tipicamente tenta-se optimizar a soma das recompensas a longo prazo:

R: recompensa totalrt: recompensa no tempo tγ: termo de desconto para recompensas futuras 0< γ<1

t

t

trR

Page 25: Aprendizagem Automática

Equação de Bellman

V*(s): Valor óptimo (ou utilidade) do estado sP(s,a,s’): Probabilidade de transitar do estado s, para o estado s’ após efectuar

acção a

Parte do princípio que são conhecidos r,s,a e P(s,a,s’) e pode ser usado sem interagir com um ambiente (este est| “descrito” internamente)

Itera pelos valores possíveis para o estado (há várias politicas para o efeito) até convergir.

))'()',,((max)( *,

*

s

asa

sVsasPrsV

Page 26: Aprendizagem Automática

TD(λ) [Sutton 88]

s’: estado seguinte a s (observado) (note-se que esta actualização é feita só ao atingir o objectivo)

e(s): elegibilidade do estado s para actualização, com t = tempo actualpode ser visto também como o grau em que foi visitado no passado recenteNote-se que 0<λ<1 e 0< γ<1

λ = 0, apenas considera o estado seguinte (implementação mais comum)λ = 1, actualização de todos os estados de acordo o número de vezes que foram visitados

Em geral:

t

k

ss

kt

kse

1

,)()(

)())'(()()1()( sesVrsVsV

k

k

ssss

ss

k ,0

,1,

0

1)(0

1

)( sese

s = estado actual

s = s visitado há n<N iterações e se t1>t2, e(st1)>e(st2)

s = s visitado há n>N iterações

Page 27: Aprendizagem Automática

Q(s,a): Qualidade da escolha da acção a, no estado s

Para garantir desempenho óptimo é preciso passar por todos os pares (s,a) um número infinito de vezes e que α diminua ao longo do treino.

))','(max(),()1(),('

, asQrasQasQa

as

Page 28: Aprendizagem Automática

O máximo da qualidade prevista para a próxima acção é substituído pela qualidade efectiva da acção tomada

Vantagem: não usa estimativas

Desvantagem: só pode ser actualizado depois de escolher acção seguinte

))','((),()1(),( , asQrasQasQ as

Page 29: Aprendizagem Automática

Problema: Exploration vs. Exploitation

Escolher a melhor (Exploitation)

Exploração (de Boltzmann) (com temperatura (T) decrescente)Mesmo princípio que Simulated Annealing.

ε-greedy Escolher com probabilidade 1-ε a melhor acção Escolher com probabilidade ε uma acção aleatória ε deve diminuir ao longo do treino

'

/)'(

/)(

)(

a

TaQ

TaQ

e

eaP

Page 30: Aprendizagem Automática

Problemas Exploração de Boltzmann: cálculo de exponenciais Sistemas com grande variância Observações parciais do estado Grande número de estados e acções, possibilidades de

solução: ▪ ANN▪ Hierarchical RL (MSc/PhD)

Repetição das experiências por ordem inversa [Lin 92]

Dyna: Aprender modelo e repetir experiências [Sutton90]

Page 31: Aprendizagem Automática

MAS em estudo actualmente (possíveis temas, TF e/ou MSc)

Homogéneos / Heterogéneos Com / Sem comunicação explícita Modelos separados / partilhados Hierarquias Estado / Recompensa global / parcial Modelação das reacções de outros Cooperativos / Competitivos Capacidade de afectar outros agentes Equilíbrios ...

Page 32: Aprendizagem Automática

Visão parcial do estado

Dinâmica do ambiente/problema por acção dos outros agentes

Necessidade de coordenação (?)

Tragedy of the Commons (TOC) Procura da solução óptima por todos em simultâneo leva uma solução

abaixo da média (ás vezes, catastrófica), exemplo: El Farol

Uma solução possível: Equilíbrio de Nash Acontece quando nenhum agente, mudando apenas a sua política da

acção, pode melhorar a recompensa global (não é necessariamente o equilíbrio óptimo, utilidade discutível)

Page 33: Aprendizagem Automática

Aprendizagem por Reforço (muitas variantes)

MinimaxQ (Littman 94) Semelhante a Q-Learning Maximizar em relação {s “nossas” acções, minimizar em relação {s dos outros

COIN (COllective INteligences) “ANN” + RL Aprendizagem a dois níveis, do agente e do grupo

Ant-Colony/Farm Baseados no conceito de aprendizagem do caminho mais curto por traços de

feromonas, usado pelas formigas. ANN + GA Q-Learning

Evolutionary Algorithms (exemplo)

Genetic Programming (exemplo)

Teoria dos Jogos: controlo óptimo, com previsão das acções dos outros agentes (uma comparação com estratégias derivadas do Q-Learning)

Page 34: Aprendizagem Automática

Subsumption Architecture (robótica) (Brooks)

Conceito fundamental na robótica/IA actual

“Elefants don’t play chess” [Brooks 90]

“... the AI community need not attempt to build "human level" intelligence into machines directly from scratch. {…} we can first create simpler intelligences, and gradually build on the lessons learned from these to work our way up to move complex behaviors. Brooks' Subsumptionarchitecture was designed to provide all the functionality displayed by lower level life forms, namely insects {…}. The Subsumption architecture provides these capabilities through the use of a combination of simple machines with no central control, no shared representation, slow switching rates and low bandwidth communication.”

in http://ai.eecs.umich.edu/cogarch3/Brooks/Brooks.html

Page 35: Aprendizagem Automática

[Bellman 57] R. Bellman, Dynamic Programming, Princeton University Press, 1957 [Sutton 88] R. S. Sutton, Learning to predict by the method of temporal

diferences, Machine Learning 3(1), pp 9-44, 1988 [Watkins 89] C. J. C. H. Watkins, Learning from Delayed Rewards, Ph.D. thesis Kings

College, Cambridge, UK, 1989 [Sutton 90] R. S. Sutton, Integrated architectures for learning planning and reacting

based on approximating dynamic programmig, in Proc. of the Seventh InternationalConfertence on Machine Learning, Austin TX, Morgan Kaufmann, 1990

[Kaelbling et al. 96] Leslie P. Kaelbling, Michael L. Littman, Andrew W. Moore, Reinforcement Learning: A Survey, in Journal of Artificial Intelligence Research4: 237–285, 1996

[Sutton, Barto 98] Richard S. Sutton, Andrew G. Barto, Reinforcement Learning: An Introduction. MIT Press. ISBN 0-262-19398-1, 1998

[Rummery, Niranjan 94] G. A. Rummery, M. Niranjan, Online Q-Learning using connectionist systems., Tech. report CUED/F-INFENG/TR166, Cambridge University.

[Whitehead 91] S. D. Whitehead, A complexity analysis of cooperative mechanisms in reinforcement learning, in Proc. of the 9th National Conf. on AI (AAAI-91), pp. 607–613, 1991

[Lin 92] L.-J. Lin, Self-improving reactive agents based on reinforcement

learning, planning and teaching. Machine Learning, 8, 293–321 ,1992

Page 36: Aprendizagem Automática

[Stone, Veloso 00] Peter Stone, Manuela Veloso, Multiagent systems: A survey from a machine learning perspective, Autonomous Robots, 8 (3), pp. 345-383 2000(versão original 1996/97)

[Wiering et al. 99] M. Wiering, B. Krose, F. Groen, Learning in multiagentsystems, Technical report, University of Amsterdam, 1999

[Hoen 06] Pieter Jan ’t Hoen, Karl Tuyls, Liviu Panait, Sean Luke, and Johannes La Poutre. An Overview of Cooperative and Competitive Multiagent Learning. In K. Tuyls, P.J. ’t Hoen, K. Verbeeck, and S. Sen, editors, Learning and Adaptation in Multi-Agent Systems, Lecture Notes in Artificial Intelligence, pp. 1–49, Springer Verlag, Berlin, 2006.

[Panait, Luke 05] L. Panait, S. Luke, Cooperative Multi-Agent Learning: The State of the Art, in Autonomous Agents and Multi-Agent Systems, 2005

[Brooks 86] R. A. Brooks,"A Robust Layered Control System For A Mobile Robot", IEEE Journal Of Robotics And Automation, RA-2, April. pp. 14-23, 1986.

[Brooks 87] R. A. Brooks, "Planning is just a way of avoiding figuring out what to do next", Technical report, MIT Artificial Intelligence Laboratory, 1987.

[Brooks 90] R. A. Brooks, “Elephants Don’t Play Chess”, Robotics andAutonomous Systems 6, pp. 3-15, 1990

Page 37: Aprendizagem Automática

[Littman 94] L. M. Littman, Markov games as a framework for multi-agent reinforcement learning. Proceedings of the Eleventh International Conference on Machine Learning (pp. 157–163). San Francisco: Morgan Kaufman, 1994.

[Bowling 00] Michael Bowling, Convergence problems of general-sum multiagentreinforcement learning, In Proceedings of the Seventeenth International Conference on Machine Learning (ICML) , pages 89--94. Morgan Kaufman, June 2000

[Haynes et al. 95] T. Haynes, S. Sen, D. Schoenefeld, andR.Wainwright, Evolvingmultiagent coordination strategieswith geneticprogramming, Technical Report UTULSA-MCS-95-04, The University ofTulsa, May 31, 1995.

[Pottes et al. 95] M. Potter, K. De Jong, and J. J. Grefenstette. A coevolutionaryapproach to learning sequential decision rules.In Proceedings from the SixthInternational Conference on Genetic Algorithms, pages 366–372.Morgan Kaufmann, Publishers, Inc., 1995.

[Bowling, Veloso 00] M. Bowling,M. Veloso. An analysis of stochastic game theory for multiagent reinforcement learning.Technical Report CMU-CS-00-165, Computer Science Department, Carnegie Mellon University, 2000.

[Wolpert et al. 99] D. Wolpert, K. Tumer, and J. Frank. Using collective intelligence to route internet traffic. In Advances in Neural Information Processing Systems -11. MIT Press, 1999.

Page 38: Aprendizagem Automática

Mitchell 97, Capítulo 4

Page 39: Aprendizagem Automática

Algoritmos Genéticos Aprendizagem por Reforço