Bacharelado em Ciência da Computação · CEFET/RJ

GCC1734 — Inteligência Artificial

Semestre 2026.2

Informações gerais

Aulas

Terças-feiras: 16h30–18h10
Sextas-feiras: 14h35–16h15

Locais informados na página anterior:
terça: P1-204 (sala 2); sexta: P1-103 (sala 3).

Microsoft Teams

Canal operacional para bilhetes de entrada, enunciados, entregas, avisos, dúvidas e resultados.

Esta página e o GitHub concentram materiais e código. O Teams concentra prazos e comunicação.

Objetivos e ementa

Objetivo

Apresentar conceitos, modelos, métodos, técnicas e aplicações da Inteligência Artificial, combinando fundamentos clássicos, raciocínio sob incerteza, aprendizado e agentes baseados em IA generativa.

Ementa

Introdução à Inteligência Artificial; agentes inteligentes; estratégias de busca em espaços de estados; busca sem informação e busca heurística; busca adversarial; satisfação de restrições; agentes lógicos e representação de conhecimento; redes Bayesianas e inferência probabilística; aprendizado por reforço; fundamentos de aprendizado de máquina; modelos de linguagem e agentes baseados em IA generativa.

Conteúdo programático: aprendizado e modelos de linguagem

A sequência de aprendizado por reforço é seguida por três encontros de fundamentos de aprendizado de máquina e três encontros de Modelos de Linguagem. Esses fundamentos preparam o estudo de agentes baseados em LLMs.

  1. Fundamentos e generalização em AM: paradigmas supervisionado, não supervisionado, autossupervisionado e por reforço; entradas, alvos, parâmetros e funções de perda; treino, validação e teste; vazamento de dados; diagnóstico de underfitting e overfitting; intuição de viés, variância e regularização.
  2. Modelos lineares e aprendizado por gradiente: regressão linear e logística; gradiente descendente, SGD e mini-lotes; escala das entradas; logits, softmax e entropia cruzada.
  3. Redes neurais e representações aprendidas: neurônio e MLP; funções de ativação e não linearidade; retropropagação e otimização; características manuais, representações aprendidas e embeddings; generalização em redes.
  4. Modelagem da linguagem: tokens, embeddings e posições; distribuição do próximo token; probabilidade de sequências e entropia cruzada; treinamento e geração.
  5. Transformer e pré-treinamento: autoatenção, consultas, chaves e valores; máscara causal; pré-treinamento autossupervisionado.
  6. Pós-treinamento e alinhamento: ajuste supervisionado para seguir instruções (SFT); aprendizado a partir de preferências; visão conceitual de RLHF e DPO; limitações do alinhamento; distinção entre modelo de linguagem e agente.

Na sequência, o curso aborda arquiteturas de agentes, planejamento iterativo, uso de ferramentas, RAG, MCP, observabilidade, avaliação, segurança e guardrails.

Apêndices opcionais da nota de AM: árvores de decisão e métodos ensemble; k-means e PCA; aprofundamentos em modelos lineares, engenharia de características, generalização, regularização, validação cruzada, métricas e redes neurais. Esses tópicos e suas atividades não integram o roteiro obrigatório nem seus objetivos de avaliação e não são pré-requisitos para Modelos de Linguagem.
Pré-requisitos recomendados: estruturas de dados, recursividade, probabilidade básica, relações de recorrência e noções de complexidade de algoritmos.

Dinâmica das aulas

A disciplina adota, na maior parte do semestre, o modelo de sala de aula invertida. O primeiro contato com o conteúdo ocorre antes da aula. O encontro presencial concentra discussão, resolução de problemas, análise de erros e prática.

  1. Leras notas indicadas
  2. Respondero bilhete de entrada
  3. Executarnotebook, código ou prática
  4. Participarda aula e das atividades
  5. Revisardúvidas e erros

Bilhetes de entrada

Devem ser enviados pelo Teams até 12h do dia da aula. A correção é binária: realizado ou não realizado. Os quatro menores resultados do período são descartados. O bilhete só é válido quando o estudante comparece à aula correspondente.

Presença e participação

A chamada ocorre no início do encontro. As atividades presenciais podem ser feitas em duplas ou pequenos grupos e podem ser recolhidas. A participação considera a entrega válida dos bilhetes e o envolvimento efetivo nas atividades.

Materiais

Demonstrações interativas

Experimentos curtos para explorar visualmente conceitos da disciplina.

Mundo Grade: política e estocasticidade

Explore um ambiente de grade com transições estocásticas, recompensas e políticas. Ajuste a probabilidade de sucesso, o living reward e o fator de desconto para observar como os valores e a política ótima se alteram.

Abrir demonstração

Como usar

Use as demonstrações como apoio à leitura das notas e à discussão em aula. Varie um parâmetro por vez, formule uma previsão e compare-a com o comportamento observado.

Novas demonstrações serão adicionadas ao longo do semestre.

Plano de aulas — 2026.2

Primeira aula em 04/08/2026. Encontros regulares às terças e sextas.

Calendário acadêmico oficial
Aula Prática Data proposta de avaliação Calendário institucional
DataAtividadeNatureza
Apresentação da disciplina; canais, dinâmica, avaliação e uso responsável de IAAbertura
Visão geral da IA; agentes inteligentes e ambientesAula
Formulação de problemas de busca; espaço de estadosAula
Busca sem informação: BFS, UCS e DFSAula
Busca sem informação: análise e práticaPrática
Busca heurística: heurísticas e busca gulosaAula
Busca A*: funcionamento, completude e otimalidadeAula
Lab: Busca simplesPrática
Busca adversarial: jogos, minimax e árvore de jogoAula
Poda alfa--betaAula
Funções de avaliação e busca com profundidade limitadaAula
Lab: Busca adversarial - minimaxPrática
Exercícios de revisãoAula
Busca adversarial: MCTS - parte IAula
Sem aulaAula
Teste 1Avaliação
Busca adversarial: MCTS - parte IIAula
Lab: Busca adversarial - MCTSPrática
Exercícios de revisãoAula
Aprendizado por reforço: agentes, recompensas e retornoAula
Aprendizado por reforço: Aprendizado TDL; Q-learningAula
Aprendizado por reforço: Aproximação linear de Q-funçõesAula
Lab: Aprendizado por reforçoPrática
Aprendizado de máquina — fundamentos e generalização: taxonomia, dados, modelos e perda; treino, validação e teste; vazamento, overfitting e regularização
Nota de AM: seções 1–3; atividades do encontro 1 na seção 7.
Aula
Aprendizado de máquina — modelos lineares e aprendizado por gradiente: regressão linear e logística; SGD, logits, softmax e entropia cruzada
Nota de AM: seção 4; atividades do encontro 2 na seção 7.
Aula
Aprendizado de máquina — redes neurais e representações aprendidas: MLP, não linearidade, retropropagação e embeddings; generalização em redes
Nota de AM: seções 5–6; atividades do encontro 3 na seção 7.
Aula
Lab: Aprendizado de MáquinaPrática
Modelos de Linguagem I — tokens, embeddings e posições; modelagem autoregressiva, probabilidade de sequências e perda; treinamento e geraçãoAula
Modelos de Linguagem II — autoatenção, arquitetura Transformer, máscara causal e pré-treinamento autossupervisionadoAula
Dia Nacional de Zumbi e da Consciência Negra — sem aulaCalendário institucional
Modelos de Linguagem III — SFT, preferências e alinhamento; visão conceitual de RLHF e DPO; limitações e passagem do modelo ao agenteAula
Teste 2Avaliação
Agentes baseados em LLM — Planejamento iterativo: ReAct, Plan-and-Act e ReflexionAula
Agentes baseados em LLM — Uso de ferramentas e integração com bases de conhecimento (RAG)Aula
Lab: Agentes baseados em LLMPrática
Agentes baseados em LLM — MCP, observabilidade, avaliação, segurança e guardrailsAula
Exame FinalAvaliação
Segunda chamadaAvaliação
Leitura do cronograma. O início do semestre em 03/08, o encerramento das aulas em 18/12 e o período final em dezembro derivam do calendário institucional. As datas de T1, T2, Teste 1, Teste 2, segunda chamada e exame final são propostas e serão confirmadas pelo professor via MS Teams.

Avaliação

30%Participação em aula e bilhetes de entrada
30%Dois trabalhos práticos por bimestre, com pesos iguais
40%Teste de múltipla escolha do bimestre

Trabalhos práticos

Implementados em Python 3.11. Cada trabalho deve incluir vídeo explicativo de aproximadamente 20 a 30 minutos, com explicação do código, execução e análise dos resultados.

Atrasos sofrem desconto de 20% da nota máxima por dia corrido. Frações de dia contam como um dia. Após cinco dias, a nota é zero.

Testes e segunda chamada

Há dois testes regulares. Uma única segunda chamada, discursiva e cumulativa, pode substituir no máximo um teste. O exame final segue as normas e o calendário institucionais.

Orientações de estudo

As notas de aula são o texto central da disciplina. O estudante deve lê-las antes do encontro correspondente. A aula não repete o texto. Ela parte da leitura prévia.

Para a nota de Aprendizado de Máquina, siga o roteiro de três encontros: seções 1–3, seção 4 e seções 5–6, respectivamente, com as atividades correspondentes da seção 7. Os apêndices A–H são de consulta e aprofundamento opcionais.

Uma estratégia recomendada é a Técnica de Feynman: explicar o conceito com palavras próprias, identificar lacunas, revisar o material e reconstruir a explicação de forma mais simples e precisa.

Livro-texto

Russell & Norvig. Artificial Intelligence: A Modern Approach. 4ª edição.

Python

Os capítulos 1–11 de Learning with Python cobrem os fundamentos recomendados.

Uso responsável de IA generativa

A IA deve funcionar como tutora. Não como substituta do raciocínio.

Usos aceitáveis

  • Esclarecer dúvidas conceituais.
  • Revisar sintaxe Python.
  • Discutir complexidade temporal e espacial.
  • Explorar variações de algoritmos.
  • Identificar erros em uma solução própria.

Usos inadequados

  • Gerar uma solução completa e adaptá-la superficialmente.
  • Redigir integralmente os bilhetes de entrada.
  • Submeter código que não se consegue explicar.
  • Contornar partes centrais da implementação.
Transparência. Sempre que uma ferramenta contribuir de forma relevante para código, texto, análise ou decisão de implementação, registre no notebook ou relatório a ferramenta, a finalidade, as partes auxiliadas e a forma de verificação.