Plano de aula
O plano de aula desta disciplina está divido em seis (6) blocos. Para cada bloco as seguintes atividades estão planejadas.
Atenção!
O programa está sempre sujeito a alterações e adaptações conforme as disciplina é executada.
Introdução à Inteligência Artificial
Data |
Fundamentos / Conteúdo |
Dinâmica |
11-Ago |
Apresentação da disciplina e critérios de avaliação. Introdução à IA e ao conceito de agente autônomo |
Dinâmica em grupo |
13-Ago |
Revisão do conceito de agente autônomo, discussão sobre diferenças de agente autônomo e software convencional, e propriedades de ambientes. |
Dinâmica em grupo |
O conteúdo associado a este bloco é 1 e 2
Busca em Espaços de Estados
Data |
Fundamentos / Conteúdo |
Dinâmica |
18-Ago |
Resolução de problemas através de espaço de busca. |
Exercícios em sala de aula onde os alunos são convidados a definir estado, transição, estado meta e custo da solução encontrada para diversos problemas. |
20-Ago |
Estratégias de busca. Algoritmos de busca cegos (largura, profundidade, iterativo, custo uniforme). Critérios de comparação entre os algoritmos. |
Implementação dos algoritmos de busca e dos agentes autônomos em Python para resolver alguns problemas clássicos da literatura. |
01-Set |
Estratégias de busca. Algoritmos de busca cegos (largura, profundidade, iterativo, custo uniforme). Critérios de comparação entre os algoritmos. |
Implementação dos algoritmos de busca e dos agentes autônomos em Python para resolver alguns problemas clássicos da literatura. |
03-Set |
Estratégias de busca. Algoritmos de busca cegos (largura, profundidade, iterativo, custo uniforme). Critérios de comparação entre os algoritmos. |
Implementação dos algoritmos de busca e dos agentes autônomos em Python para resolver alguns problemas clássicos da literatura. |
Busca Heurística
Data |
Fundamentos / Conteúdo |
Dinâmica |
04-Set |
Estratégia de busca. Algoritmos de busca **informados** (busca gananciosa, $A^{*}$, família subida da montanha). Função heurística. Comparação entre os algoritmos. |
Implementação dos algoritmos de busca e dos agentes autônomos em Python para resolver alguns problemas clássicos da literatura. |
08-Set |
Estratégia de busca. Algoritmos de busca **informados** (busca gananciosa, $A^{*}$, família subida da montanha). Função heurística. Comparação entre os algoritmos. |
Implementação dos algoritmos de busca e dos agentes autônomos em Python para resolver alguns problemas clássicos da literatura. |
10-Set |
Estratégia de busca. Algoritmos de busca **informados** (busca gananciosa, $A^{*}$, família subida da montanha). Função heurística. Comparação entre os algoritmos. |
Implementação dos algoritmos de busca e dos agentes autônomos em Python para resolver alguns problemas clássicos da literatura. |
11-Set |
Desenvolvimento de um agente autônomo que atua em um ambiente discreto, determinístico, síncrono, simulado e *single agent*. |
Implementação de um projeto, provavelmente, envolvendo algum framework de simulação (i.e., Gym Open AI). |
Ambientes Competitivos
Data |
Fundamentos / Conteúdo |
Dinâmica |
15-Set |
Constraint Satisfaction Problems |
Implementação de um agente autônomo capaz de identificar estados que satisfazem determinadas restrições. |
17-Set |
Jogos de tabuleiro, busca competitiva, algoritmo min-max e função de utilidade. |
Implementação de um agente autônomo que deverá atuar em um ambiente competitivo, determinístico e completamente observável. |
22-Set |
SEMANA DE PROVAS |
SEMANA DE PROVAS - Prova Intermediária |
24-Set |
SEMANA DE PROVAS |
SEMANA DE PROVAS - Prova Intermediária |
Data |
Fundamentos / Conteúdo |
Dinâmica |
29-Set |
Desenvolvimento de um agente autônomo que atua em um ambiente discreto, determinístico, síncrono, simulado e *single agent* ou *multi-agent*. |
Desenvolvimento de projeto em sala de aula |
01-Out |
Desenvolvimento de um agente autônomo que atua em um ambiente discreto, determinístico, síncrono, simulado e *single agent* ou *multi-agent*. |
Desenvolvimento de projeto em sala de aula |
06-Out |
Desenvolvimento de um agente autônomo que atua em um ambiente discreto, determinístico, síncrono, simulado e *single agent* ou *multi-agent*. |
Desenvolvimento de projeto em sala de aula |
Aprendendo políticas
Data |
Fundamentos / Conteúdo |
Dinâmica |
08-Out |
Definição de aprendizagem por reforço, política de controle e algoritmo Q-Learning. |
Discussão em sala. Exercícios em sala de aula envolvendo o ambiente OpenAI Gym. Implementação de agentes autônomos usando o algoritmo Q-Learning. |
13-Out |
Algoritmo Q-Learning: detalhes e hiperparâmetros. Apresentação do ambiente OpenAI Gym. |
Exercícios em sala de aula envolvendo o ambiente OpenAI Gym. Implementação de agentes autônomos usando o algoritmo Q-Learning. |
15-Out |
Algoritmo Q-Learning: detalhes e hiperparâmetros. |
Implementação de agentes autônomos usando o algoritmo Sarsa. |
20-Out |
Ambientes não-determinísticos. Reinforcement Learning: métodos tabulares |
Implementação de agentes autônomos usando o algoritmo Q-Learning e Sarsa |
22-Out |
Ambientes não-determinísticos. Reinforcement Learning: métodos tabulares |
Implementação de agentes autônomos usando o algoritmo Q-Learning e Sarsa |
Robótica
Data |
Fundamentos / Conteúdo |
Dinâmica |
27-Out |
Visão geral sobre robótica e framework ROS2 |
Visão geral sobre robótica e framework ROS2 |
29-Out |
Desenvolvimento de um agente robótico (físico). |
Implementação de um projeto envolvendo um robô físico |
3-Nov |
Desenvolvimento de um agente robótico (físico). |
Implementação de um projeto envolvendo um robô físico |
5-Nov |
Desenvolvimento de um agente robótico (físico). |
Implementação de um projeto envolvendo um robô físico |
10-Nov |
Avaliação Final da disciplina |
Avaliação Final da disciplina |
12-Nov |
Avaliação Final da disciplina |
Avaliação Final da disciplina |
Reposições de aulas
Neste semestre não teremos aulas nos dias 25/8 e 27/8.
Estas aulas serão repostas nos dias 4/9 e 11/9, respectivamente. Quinta-feira das 14:15 às 16:15.