Workshop de Otimização com R: Programação Linear e Descida do Gradiente

Explorando técnicas de otimização com R, desde programação linear para problemas de produção até algoritmos de aprendizado como descida do gradiente para redes neurais simples.
R
Otimização
Machine Learning
Programação Linear
Autor
Data de Publicação

3 de dezembro de 2023

Este post reúne o material base do workshop de otimização realizado em dezembro de 2022. Contém um resumo dos objetivos, referências aos scripts de exemplo e link para os slides usados durante a sessão.

TL;DR

  • Introdução prática à formulação e solução de problemas de Programação Linear em R (lpSolveAPI).
  • Demonstração da descida do gradiente (batch e estocástico) e exercícios para fixação.
  • Código-fonte e slides disponíveis no repositório (link abaixo).

Objetivos

  • Apresentar conceitos fundamentais de otimização numérica e modelagem de problemas de programação linear.
  • Demonstrar a formulação e resolução de problemas de Programação Linear em R (pacote lpSolveAPI).
  • Mostrar, na prática, a implementação da descida do gradiente (tanto em modo batch quanto estocástico) para ajuste de modelos simples.
  • Discutir boas práticas de modelagem, verificação de resultados e interpretações (naming, unidades, análise de sensibilidade).

Materiais

  • Scripts de exemplo (no repositório):

    • workshop - otimizacao/caso_01.R (fábrica de banheiras — PL, maximização)
    • workshop - otimizacao/caso_02.R (mistura de ração — PL, minimização)
    • workshop - otimizacao/gradient descend.R (implementação manual de descida do gradiente)
  • Slides do workshop: Slides do workshop — Otimização (PDF)

  • Repositório completo: aqui