| Designação | Código | Curso | Regime | Regente |
|---|
Aprendizagem por Reforço | 16809 [ME95ME9500002024] | Mestrado em Inteligência Artificial [MIA] | S2 | Miguel Francisco Almeida Pereira Rocha |
Objetivos | Esta Unidade Curricular (UC) introduz os principais conceitos associados à aprendizagem por reforço. Apresenta diversos tipos de modelos e métodos de aprendizagem por reforço (e.g., Q-learning, Deep Q-learning), bem como exemplos de aplicação dos mesmos e sua utilização e configuração via ferramentas computacionais. |
Programa | 1. Introdução: principais conceitos e elementos de um cenário de aprendizagem por reforço (RL); variantes de cenários da RL; exemplos enquadradores 2. Modelos para a resolução de cenários multi-armed bandits; dilema experimentação-exploração. 3. Processos de decisão Markovianos; funções valor e políticas. 4. Programação dinâmica 5. Métodos de Monte Carlo 6. Métodos de diferenças temporais; Q-learning 7. Planeamento e aprendizagem; Métodos baseados em modelos; Monte Carlo Tree Search. 8. Aproximação de funções: métodos de gradiente; métodos lineares; métodos não lineares (e.g. redes neuronais) 9. Controlo on-policy com aproximação e controlo off-policy com aproximação. 10. O algoritmo TD(lambda) 11. Algoritmos de gradiente para políticas; REINFORCE; arquitetura ator-crítico 12. Aprendizagem por reforço profunda: Deep Q-learning; Alpha Zero e suas variantes 13. Algoritmos evolucionários para aprendizagem por reforço |
Bibliografia | Richard Sutton & Andrew Barto, Reinforcement Learning – An Introduction, 2nd ed., MIT Press, 2018. Laura Graesser & Wah Loon Keng. Foundations of Deep Reinforcement Learning: Theory and Practice in Python, Addison-Wesley, 2020. Lapan, Maxim. Deep Reinforcement Learning Hands-On: Apply modern RL methods, with deep Q-networks, value iteration, policy gradients, TRPO, AlphaGo Zero and more. Packt Publishing Ltd, 2018.
|
Resultados da aprendizagem | - Definir os principais conceitos nos campos da Aprendizagem por Reforço - Conhecer classes de métodos/algoritmos, aplicações e bibliotecas de programação apropriadas para a resolução dos principais problemas na área da Aprendizagem por Reforço - Aplicar software disponível de Aprendizagem por Reforço para a resolução de problemas, incluindo o uso de bibliotecas de software livre - Construir programas podendo usar bibliotecas de software disponíveis para a implementação de pipelines avançados de Aprendizagem por Reforço incluindo as abordagens tradicionais e as baseadas em Deep Learning - Construir programas que possam implementar algoritmos existentes ou desenvolver novos algoritmos ao nível da Aprendizagem por reforço |
Método de avaliação | A avaliação da aprendizagem envolve dois instrumentos de avaliação: trabalho prático de desenvolvimento (com peso de 70% a 80%) e avaliação contínua durante as aulas (com peso de 20% a 30%) consistindo na resolução de exercícios e fichas de trabalho. A classificação final é calculada pela ponderação dos diversos instrumentos de avaliação. É considerado aprovado o aluno cuja classificação final seja superior ou igual a 10 (dez) valores. Para o cálculo da classificação final podem-se estabelecer notas mínimas, sendo que, para instrumentos de avaliação de cariz prático, esta nota mínima não pode ser inferior a 10 (dez) valores.
|
Funcionamento | Turno: T 1; Docente: Miguel Francisco Almeida Pereira Rocha; Dep.: DI; Horas: 15. Turno: PL 1; Docente: Nuno Miguel Caetano Alves; Dep.: DI; Horas: 30. |