parte ii - sistemas de aprendizado: overview seminários 2007 – 2º semestre maíra gatti

23
Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

Upload: internet

Post on 16-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

Parte II - Sistemas de Aprendizado: Overview

Seminários 2007 – 2º Semestre

Maíra Gatti

Page 2: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

2© LES/PUC-Rio

Agenda

• Reinforcement Learning

– Exemplo SMA

• Algoritmos Genéticos

– Exemplo SMA

• Bibliografia

Page 3: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

3© LES/PUC-Rio

Aprendizado por Reforço (Reinforcement Learning)

• Sinal de reforço/ recompensa

– gerado pelo ambiente em resposta a transições de estado produzidas pelas ações executadas pelo sistema aprendiz.

• O objetivo de um aprendiz AR consiste em aprender uma política de escolha de ações, em cada estado, de forma a maximizar o reforço cumulativo no tempo

Agenteinteligente

Estado do meio externo output

Meio externoSinal de reforço

ações

Page 4: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

4© LES/PUC-Rio

Q-Learning

• Usado quando o agente não conhece o modelo de transição de estados do ambiente

• Ao invés de se considerar o valor do estado - V(o) -, considera-se o valor de escolher uma ação em um estado – Q(o,a)

• Definição Q

– Significa a recompensa de escolher a ação a (não necessariamente a melhor) no estado o e depois continuar escolhendo as ações ótimas

Page 5: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

5© LES/PUC-Rio

O Algoritmo para calcular o valor de Q

Política que o agente utiliza para escolher a ação:- Começa explorando: tenta uma ação de Q mesmo que não tenha o maior valor de Q- Termina exploitando: escolher a ação que tem o maior valor de Q

Page 6: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

6© LES/PUC-Rio

Exemplo SimplesO Algoritmo para calcular o valor de Q

• O agente vai aprender através da experiência

• O agente vai explorar cada estado até atingir o estado desejado

• Cada exploração é um episódio

• Em cada episódio o agente vai do estado inicial ao desejado

• Quando o agente atinge o estado desejado, o algoritmo passa para o próximo episódio

• Dado: diagrama de estados com um estado desejado

– Representado pela matriz R

• Descubra: o menor caminho a partir de qualquer estado inicial para o estado desejado

– Representado pela matriz Q

Page 7: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

7© LES/PUC-Rio

Exemplo SimplesO Algoritmo para calcular o valor de Q

Neste caso foi usado o modelo do ambiente!

Page 8: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

8© LES/PUC-Rio

Exemplo com SMA: Reinforcement Learning and Self-Organization

• Sherief Abdallah

– Multiagent Reinforcement Learning and Self-Organization in a Network of Agents

• Alocação de tarefa usando uma rede de agentes

Page 9: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

9© LES/PUC-Rio

Exemplo: Reinforcement Learning and Self-Organization

• Algoritmo de Aprendizado

• Estrutura de dados para cada agente i

– Qi -> valores de ação

• Qi = |Si| linhas ×|Ai| colunas (S é o conjunto de estados que o agente se encontra)

– i -> valores de política

• célula Qi(s, a) contem o prémio que o agente i espera se executada a ação a no estado s.

• célula i(s, a) contem a probabilidade que o agente i tem de executar a ação a no estado s

• Juntos, Q e encapsulam o que o agente aprendeu até o momento

• Objetivo: calcular um gradiente aproximado de Q, usá-lo para atualizar , em um passo curto η.

Page 10: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

10© LES/PUC-Rio

Exemplo: Reinforcement Learning and Self-Organization

• Operações de reestruturação da rede

– Adicionar nós

– Remover nós

• Mecanismos de Auto-organização

– Qual vizinho adicionar ou remover?

– Quando parar de adicionar ou remover?

– Como ajustar Q e após o processo de adição ou remoção?

• Mecanismo de Auto-organização usa informação de aprendizado para guiar o seu processo

Page 11: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

11© LES/PUC-Rio

Exemplo: Reinforcement Learning and Self-Organization

Page 12: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

12© LES/PUC-Rio

Algoritmos Genéticos

• Utilizam um procedimento de busca inspirado na evolução natural

• Rotinas análogas, de uma certa forma,

– ao cruzamento de indivíduos,

– cruzamento de cromossomos,

– mutação de genes, e

– seleção natural.

• Assim como na evolução natural, os algoritmos genéticos sacrificam parte da sua população em ótimos locais para que outros indivíduos consigam atingir o ótimo global.

Page 13: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

13© LES/PUC-Rio

Algoritmos Genéticos

BEGIN /* genetic algorithm */

generate initial population

compute fitness of each individual

WHILE NOT finished DO

BEGIN /* produce new generation */

FOR populationsize / 2 DO

BEGIN /* reproductive cycle */

select two individuals from old generation for mating

/* biassed in favour of the fitter ones */

recombine the two individuals to give two offspring

compute fitness of the two offspring

insert offspring in new generation

END

IF population has converged THEN

finished <- TRUE

END

END

mérito da solução

descendente

Page 14: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

14© LES/PUC-Rio

Algoritmos Genéticos

• Várias aplicações em Aprendizado

– Sistemas de classificação

• AG tentam evoluir (aprender) um conjunto de regras if..then

• Ex.: jogos

– Controle

• Parâmetros de controle precisam ser ajustados para que o sistema rode em um modo ótimo

Page 15: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

15© LES/PUC-Rio

Exemplo SMA com AG

• Iterative Multi-Agent Bidding and Co-ordination Based On Genetic Algorithm

– M K LIM and Z ZHANG

• Sistema de manufatura

• SMA para

– integrar planejamento e agendamento de processo dinâmico para aumentar tempo de resposta

– Otimizar utilização de máquina

– Prover uma plataforma para reconfigurar o sistema

– Minimizar custo na presença de mudanças dinâmicas

Page 16: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

16© LES/PUC-Rio

Exemplo SMA com AG

• Agentes

– Order handling agent: interpreta e processa as ordens de serviço

– Component agent: recomenda processos adequados para a construção de componentes

– Tool agent: recomenda ferramentas a serem usadas na produção do componente. Cada ferramenta tem seu preço.

– Material handling agent

– Machine agents: negociam entre si para ofertar trabalho

– Mecanismo de oferta iterativo facilita atribuição de trabalho para os agentes (realizado entre o component agent e os machine agents)

• Arquitetura

– 3 seções:

• Atividades relacionadas a demanda

• Atividades relacionadas ao componente

• Atividades relacionadas a fábrica

Page 17: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

17© LES/PUC-Rio

Exemplo SMA com AG

• O component agent inclui um esquema de moeda para cada processo de construção de componente– O esquema contem todos os valores virtuais para cada feature

do componente

• Machine agents lançam ofertas para o trabalho de acordo com o custo total

• o valor atribuído para cada componente é ajustado de acordo com a performance das ofertas, em termos de custo e tempo de produção– Objetivo de minimizar o custo de produção ao mesmo tempo

que cumpre deadlines.

=> AG

Page 18: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

18© LES/PUC-Rio

Exemplo SMA com AG

• Solução dada

– Passo1: Codificação

• Uma população de cromossomos, e número de gens são determinados

• Os gens em cada cromossomo representam o valor corrente para todas as features de um componente

– Passo2: Função de fitness

• Component agent anuncia todos os cromossomos para os Machine agents.

• Baseados nos valores e em suas performances, machine agents ofertam trabalho

Page 19: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

19© LES/PUC-Rio

Exemplo SMA com AG

• Funções de fitness

• ti : tempo para produzir feature i

• K: número de features de um componente

• Ci: custo total da produção da feature i

• O cromossomo com o menor custo e que esteja no prazo é registrado como a melhor solução

Page 20: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

20© LES/PUC-Rio

Exemplo SMA com AG

– Passo3: Seleção dos cromossomos• Todos são selecionados

– Passo4: Crossover• Decide quem vai cruzar a partir de um threshold de probabilidade

• Cruzamento entre os cromossomos são realizados até que descendentes sejam diferentes dos pais e atendam as funções de fitness

– Passo5:Mutação• Decide qual cromossomo vai mutar a partir de um threshold de

probabilidade

• Mutação no custo de uma feature

– Passo6: Reavaliação pelas funções de fitness• Os cromossomos descendentes são reavaliados pelas funções de

fitness, isto é, cada machine agent recebe o anúncio dos cromossomos

• Se os descendentes obtiverem melhor solução que os pais, os pais são substituídos

• Passos 3 ao 6 são repetidos até que a condição seja satisfeita.

Page 21: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

21© LES/PUC-Rio

Frameworks

• Reinforcement Learning– JReLM – Java Reinforcement Learning Module

• RL no Repast

• Release com o Repast

• http://www.cs.iastate.edu/~charlesg/

Page 22: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

22© LES/PUC-Rio

Bibliografia

• Reinforcement Learning: http://www.inf.furb.br/~jomi/robotica/slides/rl.pdf

• Q-Learning:

http://people.revoledu.com/kardi/tutorial/ReinforcementLearning/Q-Learning-Algorithm.htm

Page 23: Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti

Parte II - Sistemas de Aprendizado: Overview

Seminários 2007 – 2º Semestre

Maíra Gatti