• Nenhum resultado encontrado

Aprendizagem por Reforço

No documento dis jlaolliveirajúnior (páginas 42-46)

1 INTRODUÇÃO

2.3 Revisão de Inteligência Artificial

2.3.2 Aprendizagem por Reforço

A forma mais básica de aprendizagem do ser humano é através da interação com o meio ambiente. Através das estruturas sensoriais e motoras, aplicamos estímulos que resultam em ações, os resultados dessas ações são então a fonte de informação qualitativa da ação tomada. Quando uma criança aprende a caminhar, não há um ensinamento de quais músculos devem ser contraídos ou de que forma é possível manter-se em equilíbrio, pois esse tipo de aprendizagem vem através dos resultados obtidos em tentativas anteriores. É possível, partindo desse conceito, desenvolver aplicações computacionais autônomas que utilizem a aprendizagem por reforço (Reinforcement Learning – RL) (SUTTON; BARTO, 2012).

Em abordagens computacionais de aprendizagem por reforço, o sistema inteligente, também denominado agente, não possui uma saída correta determinada, ao invés disso, ele realiza ações (at) através de um sistema atuador, observa o ambiente (st) e suas alterações por

meio de sensores e por fim define um valor de recompensa (rt) para a ação tomada com base

nas observações realizadas (SUTTON; BARTO, 2012). A Figura 12 apresenta o diagrama da relação entre o ambiente e o do agente.

Figura 12 – Diagrama de interação entre agente e ambiente

A tarefa do agente, portanto, é selecionar a ação que apresente um maior acumulado de recompensas ao final do processo. A probabilidade de escolha de ações é denominada política (πt(st,at)), sendo essa uma função do estado do ambiente e das ações possíveis daquele

estado (SUTTON; BARTO, 2012).

Ainda de acordo com Sutton e Barto (2012), em algoritmos de aprendizagem por reforço estimam-se valores que definem quão bom é determinado estado ou ação. Essas avaliações são organizadas em forma de uma função denominada Função de Valor (Vπ(s)).

Essas avaliações levam em conta não só a recompensa obtida em um estado, mas todas as possíveis recompensas futuras, bem como o tipo de política que é utilizada. Em um sistema onde a função de valor represente corretamente a avaliação de cada estado ou ação, a política ótima fica definida através da decisão pelos estados ou ações com maiores valores. A equação (28) apresenta a forma de cálculo da função de valor de estado, nela indica uma amortização de valores de recompensas futuras, que possui valor entre 0 e 1.

1 0 ( ) k t k t k V s

r  s       

 (28)

Alguns algoritmos de aprendizagem por reforço não consideram apenas a função de valor de estado, más sim a função de valor de ação (Qπ(st,at)) que se refere a avaliação de

cada possível ação para cada estado. A equação apresenta a forma de cálculo dessa variável.

1 0 ( , ) k , t k t t k Q s a

r  s a     

(29)

Como é possível perceber, as funções de valores dependem das recompensas obtidas quando se segue determinada política. O valor das recompensas obtidas muitas vezes é desconhecido a priori, sendo necessário que o próprio agente realize iterações com o ambiente, que lhe permitam mensurar as recompensas obtidas. Dessa forma, existem alguns modelos de algoritmos que propõem formas de iteração e atualização das funções de valores.

Programação dinâmica (Dynamic Programming – DP) é um algoritmo básico, que embora possuía elevado custo computacional, é essencial para a compreensão dos métodos de aprendizagem por reforço. Em DP uma política de escolha probabilística inicial é selecionada, através dela, inicia-se as iterações que ajustam os valores de estado/ação, em seguida, ajusta-se

a política de forma a incrementar sua ganância (greed), isto é, aumenta-se a probabilidade escolha de uma ação com função de valor maior. Esse processo se dá de forma intercalada, até que a função de valor se torne ótima (V*(s)) definindo a política ótima (π*) ser seguida

(SUTTON; BARTO, 2012). A Figura 13 demonstra graficamente o processo de intercalar os ajustes de política e de função de valor.

Figura 13 – Gráfico de aprendizagem por Programação Dinâmica

V

*

(s),π

*

V

0

(s),π

0

Fonte: adaptado de (SUTTON; BARTO, 2012)

No algoritmo DP o ajuste das funções de valor de estado são calculados de acordo com a equação (30).

1( ) r 1 ( 1) ,

k t k t t t

V s    V s s a (30)

Após um certo número de iterações com o ambiente, a avaliação descrita pela função de valor permite encontrar a política ótima, definida pela escolha determinística do estado futuro de melhor avaliação. Embora seja melhor que algoritmos de busca direta, esse método de aprendizagem por reforço, requer um modelo do espaço de busca.

Outro algoritmo classificado como aprendizagem por reforço é o método de Monte Carlo (MC). Diferente do algoritmo DP, este método não requer um modelo do espaço de busca. Os ajustes realizados através de MC ocorrem apenas ao final dos episódios, não a cada iteração entre o agente e o ambiente (SUTTON; BARTO, 2012).

A equação (31) apresenta as formas de ajuste das funções de valor de estado e de estado/ação, a partir do método de MC. O coeficiente α indica uma taxa de aprendizado,

referindo-se a proporção de ajuste que será tomado a cada episódio, Rt indica o valor de

recompensas médias, calculado ao término do episódio.

1 1 1 ( ) ( ) ( ) ( , ) ( , ) ( , ) k k t t k t k k t k V s V s R V s Q s a Q s a R Q s a           (31)

Este algoritmo consiste em ajustar as avaliações de estados e estados/ações a partir do valor médio de recompensas obtidas durante um episódio. Dessa forma, episódios com muitos passos de iteração e diversas recompensas pequenas, será pouco reforçado, se comparado a um episódio com poucas iterações e apenas uma recompensa significativa, uma vez que os valores médios no segundo caso podem superar o primeiro caso.

Já o método das diferenças temporais (TD) apresenta a unificação de conceitos de DP e MC, unificados em um único algoritmo, que permite realizar ajustes de avaliações a cada iteração entre o agente e o ambiente, sem a necessidade de conhecer completamente o ambiente (SUTTON; BARTO, 2012).

Em algoritmos baseados em TD, diferentemente de MC, o ajuste é realizado levando-se em consideração a recompensa imediata, anulando assim, a necessidade de finalização de um episódio para ajustar as avaliações. A equação (32) apresenta a forma de ajuste da função de valor através do algoritmo de TD. O valor rk neste caso, indica a recompensa

obtida na última iteração e é um coeficiente que pondera a importância das avaliações futuras, de forma que haja uma melhoria da avaliação, mesmo que não haja uma boa recompensa instantânea. O termo apresentado dentro dos colchetes é denominado diferença temporal, responsável pelo nome do algoritmo (SUTTON; BARTO, 2012).

1

( )

( )

(

1)

( )

k k k k k

V

s

V s



r

V s V s

(32)

Por fim, tem-se o algoritmo Q-learning que é basicamente uma modificação aplicada ao algoritmo TD, utilizando a avaliação das ações, ao invés das avaliações dos estados. A equação (33) apresenta a forma de ajuste da função de valor de ação, realizada no algoritmo Q-learning.

1( , ) ( , ) .max(Q ( 1, ) ( , )

k k k a k k

Q s aQ s a r  saQ s a

Embora tenha uma excelente e comprovada eficácia em solução de problemas, sistemas de aprendizagem por reforço podem em certos casos necessitam de grandes espaços de memória, o que se mostra a grande desvantagem de aplicações com essa estrutura.

No documento dis jlaolliveirajúnior (páginas 42-46)

Documentos relacionados