page1 das-5341: aprendizagem por reforço prof. eduardo camponogara

49
Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Upload: gustavo-beretta-furtado

Post on 07-Apr-2016

247 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page1

DAS-5341: Aprendizagem por Reforço

Prof. Eduardo Camponogara

Page 2: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page2

AgendaIntrodução a Aprendizagem por Reforço

(AR)• Aprendizagem supervisionada• Aprendizagem não-supervisionada• Elementos básicos de AR• Função ganho e função valor• Exemplo

Page 3: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page3

Introdução• Aprender por meio de nossas interações

com o ambiente– Uma criança não tem um professor, mas

possui habilidades cognitivas

– Através das interações, a criança descobre as relações de causa e efeito

– Aprendendo por meio de interações é uma idéia fundamental de quase todas as teorias de aprendizagem e inteligência

Page 4: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page4

Introdução – Aplicação em Robótica

Obstáculo

Robô

DomínioProblema Dinâmico

(PD)• Aprender a navegar dentro do domínio• Coletar lixo (ganho +)• Trombar em obstáculos (ganho -)

• Controle de força

Page 5: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page5

O Que Veremos?• Nas próximas aulas discutiremos uma

abordagem computacional para aprendizagem através de interações

• Exploraremos projetos de máquinas que são eficazes na solução de problemas de aprendizagem com interesse econômico e científico

• Avaliaremos a qualidade desses projetos por meio de análises matemáticas e experimentos computacionais

• A abordagem a ser explorada é chamada “Reinforcement Learning”

Page 6: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page6

Aprendizagem por Reforço• Aprendizagem por reforço consiste em

aprender o que fazer—como mapear situações em ações—de maneira a maximizar um sinal de ganho

• Ao aprendiz não é dito que ação tomar, o qual deve aprender quais ações produzem maior ganho por meio de interações

• Nas situações mais desafiadores, o ganho não é imediato, mas futuro

Page 7: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page7

Aprendizagem por Reforço• Características de RL (Reinforcement

Learning)– Ganho retardado– Busca por meio de tentativa e erro

• RL não é caracterizado por métodos de aprendizagem, mas por meio de um problema de aprendizagem

• O LP (Learning Problem) será especificado como um problema de controle ótimo sobre um processo de decisão Markoviano

Page 8: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page8

The Learning Problem• A formulação inclui três aspectos básicos

de um agente que interage com o ambiente:– Percepção– Ação– Objetivo

• O agente percebe, pelo menos parcialmente, o estado do ambiente, suas ações afetam o estado e ele possui um objetivo relacionado ao ambiente

Page 9: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page9

The Learning Problem

Agente

Ambiente

Ação at

Ganho rt+1

Estado st Problema

Encontre política de controle, at = (st) que maximize ganho total

Características

• Aprendizagem por tentativa e erro• Não necessita de modelos• Adaptação automática a ambientes desconhecidos ou dinâmicos

Page 10: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page10

Aprendizagem por Reforco – Aplicações em Controle de

Tráfego

Agente(st, rt) = (filas, atrasos)

at = sinais

(PD)

Atividades

• Modelagem (PD)

• Estudo e implementação de métodos RL• Análise Experimental

Page 11: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page11

Controle de Tráfego J2

J1

J3

J4

J5 J6

I1

I2

Page 12: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page12

Resultados Computacionais

Page 13: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page13

Resultados Computacionais

Page 14: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page14

Aprendizagem Supervisionada x Aprendizagem por Reforço

• RL difere de aprendizagem supervisionada– Em aprendizagem supervisionada, o aprendiz

aprende por meio de exemplos recebidos de um supervisor sábio (oráculo)

– Em um território inexplorado, um agente tem que ser capaz de aprender a partir de sua própria experiência

– Uma das dificuldades em RL é o trade-off entre a escolha de explorar outras possibilidades ou tomar a ação que traz maior retorno imediato

Page 15: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page15

Aprendizagem Supervisionada x Aprendizagem por Reforço

Aprendizagem Supervisionada

Situação Ação(x1

1, …, xn1) a1

(x12, …, xn

2) a2 … …

(x1m, …, xn

m) am

Problema: encontre função f(x) = a que:

a) aproxime os exemplos da tabela e

b) dado um estado x, indique a ação a que corresponda a uma interpolação dos exemplos de treinamento

Aprendizagem por Reforço

Não há tabela de dados. Esta deve ser construída implicitamente a partir da experiência adquirida por meio da interação com o ambiente

Problema: encontre f(x) = a, que maximize o ganho ao longo do tempo

Page 16: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page16

Trade-off

• Para obter maior ganho, o agente prefere as ações que no passado produziram bons resultados

• Todavia, para descobrir tais ações, o agente tem que experimentar ações que ainda não selecionou

Page 17: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page17

Trade-off: Exploration x Exploitation

• Dilema: tanto exploration quanto exploitation não podem ser seguidas exclusivamente sem que o agente falhe em sua tarefa.

– O agente deve explorar uma série de possibilidade e progressivamente favorecer aquelas que produzem melhores resultados

Page 18: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page18

Ambiente Desconhecido• Uma outra característica

chave de RL é que este considera explicitamente o problema completo do agente:– o agente busca atingir um

objetivo enquanto interage com um ambiente desconhecido e incerto

• Planejamento tipicamente considera como conhecido o ambiente

Onde estou?

Page 19: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page19

IA e Outras DisciplinasRL: • mais próxima da engenharia e outras disciplinas (como estatística e teoria do controle)• mais relacionada a grandezas numéricas, não apenas simbólicas

IA clássica está relacionada à lógica e símbolos

Hoje IA também engloba estatística, álgebra linear, equações diferenciais, etc.

Page 20: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page20

IA e Outras Disciplinas• RL estende idéias da teoria de controle

ótimo e aproximações estocásticas para tratar de objetivos abrangentes e ambiciosos da Inteligência Artificial

Page 21: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page21

Exemplos de Aprendizagem• Jogo de xadrez• Aprendizagem na natureza• Robótica

Page 22: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page22

Exemplo: Xadrez• Um mestre de xadrez faz um

movimento– A escolha é informada pelo planejamento

(antecipação de possíveis respostas do adversário) e pelo julgamento imediato e intuitivo da qualidade do movimento

Page 23: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page23

Exemplo: Aprendizagem na Natureza

• Uma gazela tem dificuldade de locomover-se logo após o nascimento. Horas depois está correndo a mais de 20 Km/h

Page 24: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page24

Exemplo: Robótica• Um robô móvel tem que decidir:

a) se entra em uma sala em busca de mais lixo ou

b) se volta para a estação onde recarregará sua bateria.

• O robô toma sua decisão com base na experiência passada, em quão fácil foi encontrar estações de recarga no passado.

Page 25: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page25

Similaridades Entre Exemplos Vistos

• Estes exemplos e muitos outros apresentam características comuns– Todos envolvem interação entre um

agente de tomada-de-decisão e o ambiente

– Um agente que procura atingir um ou mais objetivos

– Ambiente incerto

Page 26: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page26

Similaridades Entre Exemplos Vistos

• Estes exemplos e muitos outros apresentam características comuns

– As ações do agente afetam o estado futuro do ambiente

– A ação correta deve levar em consideração consequências indiretas e retardadas, requerendo predição e planejamento

Page 27: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page27

Outras Questões• Em todos os exemplos anteriores, os efeitos

das ações não podem ser perfeitamente antecipados; portanto, o agente deve monitorar o ambiente frequentemente e reagir apropriadamente

Plano a

Plano b

Plano c

Lucro

Prejuizo

Page 28: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page28

Elementos Básicos de RL

• Além de agente e ambiente, pode-se identificar quatro subelementos fundamentais em RL:

– Política (de controle ou de tomada-de-decisão)

– Função ganho (reward function)

– Função valor (value function)

– Modelo do ambiente (opcional)

Page 29: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page29

Política de Controle

• Define o comportamento do agente num dado momento• Em poucas palavras, uma política é uma função que

mapeia estados em açõesAção = (estado)

• Em alguns casos, a política pode ser simplesmente uma tabela; em outros casos ela pode envolver computações complexas

• Em geral políticas podem ser estocásticasNo estado s, a probabilidade de se tomar a ação a é

dada por (s,a)

Page 30: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page30

Função Ganho• A função ganho define a meta em um problema RL• Em poucas palavras, ela mapeia um estado (ou par estado-

ação) do ambiente para um número, denominado ganho

• O objetivo do agente é maximizar o ganho total que ele recebe a longo termo

• Ganhos podem ser estocásticos

Estado stAção at

st+1

Ganho rt+1 = r(st,at,st+1)

Page 31: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page31

Função Valor• Enquanto a função ganho indica os movimentos

promissores imediatos, a função valor estado indica o ganho total que pode ser acumulado no futuro se iniciarmos no estado em consideração

• A função valor indica o ganho potencial de longo termo de um estado, levando em conta os estados que sucedem o estado em consideração

V(s) = E[rt+1 + rt+2 + rt+3 + … : st = s]

Page 32: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page32

Função Valor• Ganhos são de certa forma primários,

enquanto que valores são secundários– Sem ganho, valores não poderiam existir

• O propósito de estimarmos valores é obter maiores ganhos

• É com valores que nos preocupamos quanto tomamos decisões

Page 33: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page33

Função Valor• Ganhos são basicamente dados diretamente

pelo ambiente, mas valores devem ser estimados e re-estimados, a partir das observações que o agente faz durante toda a sua vida

• De fato, um componente de quase todos os algoritmos de aprendizagem por reforço são métodos eficientes de estimar valores

Page 34: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page34

Função Valor• Os métodos de RL a serem visto são estruturados na

estimação da função valor• Estimar V(s), s S, a partir das interações com

o ambiente• Definir política (s,a) a partir de V(s)

• Métodos como algoritmo genético e simulated annealing são algumas vezes utilizados para resolver problemas de RL, mas estes fazem uma busca direta no espaço de políticas sem fazer qualquer referência à função valor

• Sugerir (s,a) e simular seu desempenho• Modificar sugestão

Page 35: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page35

Modelo• O modelo do ambiente imita o comportamento do

ambiente

• Dados um estado e uma ação, o modelo antecipa o próximo estado e o ganho

• Estado corrente no instante t: st• Ação a ser tomada: at• Modelo antecipa o próximo estado: P(st+1=s | st, at)

• Modelos são usados para planejamento, o que entendemos como qualquer método de decidir um curso de ação ao considerarmos futuras situações antes de encontrá-las

Page 36: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page36

Modelo: Equações• O modelo é representado por:

– espaço de estados S– Conjunto de ações que podem ser tomadas

em cada estado: A(s) para s S– Probabilidade das transições: P(st+1=s | st,

at)– Probabilidade dos ganhos: P(rt=r | st+1, st, at)

st=a

st+1=c

st+1=b

ra,c

ra,b

Page 37: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page37

Modelo: Simulador• Desenvolve-se um simulador do ambiente

– Dados o estado corrente st e a ação at, o simulador responde com o próximo estado st+1 e o ganho rt+1

Agente

Simulador

Ação atGanho

rt+1

Estado st

Page 38: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page38

Um Exemplo Ilustrativo – Jogo da Velha

• Cenário:

- Um jogador experiente jamais perde neste jogo

- Considere um adversário imperfeito, que às vezes toma decisões incorretas

X

X

X X

O O

O

Page 39: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page39

Jogo da Velha• Como poderíamos construir um jogador

artificial que “identifica” as imperfeições do oponente e aprende a maximizar as chances de vitória?

Page 40: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page40

Jogo da Velha• Como poderíamos construir um jogador

artificial que “identifica” as imperfeições do oponente e aprende a maximizar as chances de vitória?– Apesar de ser um jogo simples, uma solução

satisfatória não pode ser obtida através de técnicas clássicas

– A técnica MiniMax, por exemplo, baseada na teoria dos jogos, assume um comportamento particular do oponente

Page 41: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page41

Jogo da Velha• Como poderíamos construir um jogador

artificial que “identifica” as imperfeições do oponente e aprende a maximizar as chances de vitória?

– Métodos de otimização para problemas de decisão sequencial (programação dinâmica) são capazes de calcular uma solução ótima, mas exigem uma especificação completa do oponente, incluindo distribuições de probabilidades.

Page 42: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page42

Jogo da Velha• O comportamento do adversário pode não ser

conhecido a priori, mas podemos identificá-lo a partir das interações

– Podemos jogar com o oponente e identificar o modelo, até um certo nível de confiança

– Aplica-se então técnicas de programação dinâmica para calcular a política de decisão ótima

– RL não é muito diferente dos passos acima

Page 43: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page43

RL para Jogo da Velha• Passos para aplicar RL ao jogo da velha

– Criamos uma tabela de números, V(s), com uma entrada para cada estado s do jogo

– V(s) é a estimativa mais recente de vencermos o jogo a partir do estado s

– V(s) é o valor do estado s

– A tabela V representa a função valor

Page 44: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page44

RL para Jogo da Velha• Um estado s1 é considerado melhor do que um

estado s2, se V(s1) > V(s2)

• Uma linha com três X’s tem probabilidade 1 de vitória—nós já ganhamos o jogo

• Uma linha com três O’s tem probabilidade 0 de vitória—o jogo já está perdido

• Para os demais estados, chutamos probabilidade ½ de vitória

Page 45: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page45

RL para Jogo da Velha• Jogamos contra o oponente

– Na maioria das vezes selecionamos o movimento que nos leva ao estado com maior valor, ou seja, o estado com maior probabilidade de vitória (exploitation)

– Ocasionalmente, entretanto, selecionamos randomicamente dentre os demais movimentos possíveis (exploration)

Page 46: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page46

RL para Jogo da Velha• Enquanto jogamos, atualizamos a tabela

V– Tentamos obter estimativas mais acuradas

das probabilidades de vencer

• Para que isso seja feito, atualizamos o valor do estado após cada movimento guloso (exploitation)– O valor corrente é ajustado para se tornar

mais próximo do último valor

Page 47: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page47

RL para Jogo da Velha

S

S’’

Movimentodo Oponente

Page 48: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page48

RL para Jogo da Velha

• V(s) V(s) + [V(s’) – V(s)]– é um número positivo pequeno, chamado

de passo, o qual influencia a aprendizagem

– A regra de atualização acima é chamada de método de aprendizagem por diferença temporal (temporal-difference learning method)

Page 49: Page1 DAS-5341: Aprendizagem por Reforço Prof. Eduardo Camponogara

Page49

Fim• Obrigado pela presença!