Programação dinâmica e aprendizado por reforço

Imagem por: DrSJS

Programação dinâmica é uma técnica que permite a modelagem de problemas de decisão sequencial sob incerteza. Um tomador de decisão (também chamado de controlador) interage com um sistema, o qual pode assumir estados diferentes ao longo do tempo. As decisões tomadas afetam os estados futuros do sistema, cuja evolução ao longo do tempo é imprevisível (estocástica).

A cada decisão, o tomador de decisão recebe uma recompensa (ou incorre em um custo). O objetivo da programação dinâmica é obter uma política ótima (um conjunto de regras de decisão) de forma a maximizar a recompensa total esperada ou minimizar o custo total esperado ao longo do horizonte de planejamento.

A técnica é alternativamente chamada de aprendizado por reforço (reinforcement learning) na comunidade envolvida com aprendizado de máquina, e tem sido aplicada promissoramente nas áreas de robótica e jogos. Neste caso, o tomador de decisão é chamado de agente, enquanto o sistema é referido como ambiente.

Fonte: Free Code Camp

Neste projeto, é estudada a modelagem de problemas de decisão sequenciais estocásticos que ocorrem nas áreas de produção, logística e transportes. Os problemas são abordados com uso de técnicas de programação dinâmica aproximada e aprendizado por reforço.

São utilizados modelos estatísticos e redes neurais como aproximadores para as funções de valor ou aproximadores diretos de políticas. Para o treinamento, são usados algoritmos com base no método do gradiente estocástico, filtro de kalman e aprendizado bayesiano.

Também tem sido explorada a técnica de aprendizado por reforço profundo, no qual se utilizam redes neurais profundas como aproximadores para funções de valor e políticas. Essa técnica permite, por exemplo, a representação de estados por meio de formatos de dados não estruturados, como imagens e texto.


Integrantes do projeto

Anselmo R. Pitombeira Neto (Coordenador)

Arthur H. F. Murta (Mestrando)

Vitória I.T. Mendonça (Mestranda)

Rodrigo F. Meneses (bolsista de iniciação científica)