Parte II - Sistemas de Aprendizado: Overview
Seminários 2007 – 2º Semestre
Maíra Gatti
Agenda
• Reinforcement Learning
– Exemplo SMA
• Algoritmos Genéticos
– Exemplo SMA
• Bibliografia
© LES/PUC-Rio
2
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
Sinal de reforço
Meio externo
ações
Estado do meio
externo
© LES/PUC-Rio
Agente
inteligente
output
3
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
© LES/PUC-Rio
4
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
© LES/PUC-Rio
5
Exemplo Simples
O 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
© LES/PUC-Rio
6
Exemplo Simples
O Algoritmo para calcular o valor de Q
Neste caso foi usado o modelo
do ambiente!
© LES/PUC-Rio
7
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
© LES/PUC-Rio
8
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
momento
 encapsulam o que o agente aprendeu até o
• Objetivo: calcular um gradiente aproximado de Q, usá-lo
para atualizar , em um passo curto η.

© LES/PUC-Rio
9
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
© LES/PUC-Rio
10
Exemplo:
Reinforcement Learning and Self-Organization
© LES/PUC-Rio
11
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.
© LES/PUC-Rio
12
Algoritmos Genéticos
BEGIN /* genetic algorithm */
generate initial population
mérito da solução
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
descendente
IF population has converged THEN
finished <- TRUE
END
END
© LES/PUC-Rio
13
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
© LES/PUC-Rio
14
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
© LES/PUC-Rio
15
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
© LES/PUC-Rio
16
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
© LES/PUC-Rio
17
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
© LES/PUC-Rio
18
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
© LES/PUC-Rio
19
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.
© LES/PUC-Rio
20
Frameworks
• Reinforcement Learning
– JReLM – Java Reinforcement Learning Module
• RL no Repast
• Release com o Repast
• http://www.cs.iastate.edu/~charlesg/
© LES/PUC-Rio
21
Bibliografia
• Reinforcement Learning:
http://www.inf.furb.br/~jomi/robotica/slides/rl.pdf
• Q-Learning:
http://people.revoledu.com/kardi/tutorial/ReinforcementLearning/QLearning-Algorithm.htm
© LES/PUC-Rio
22
Parte II - Sistemas de Aprendizado: Overview
Seminários 2007 – 2º Semestre
Maíra Gatti
Download

07-02-Learning-Parte