WU | Otimização Inteligente
Um curso avançado que aborda a teoria e aplicação de técnicas de otimização inteligente, variando dos métodos clássicos de gradiente até metaheurísticas evolutivas modernas, otimização multiobjetivo, modelos auxiliados por surrogados e aplicações de aprendizado federado.
Aulas
Lesson
Visão Geral do Curso
📚 Resumo do Conteúdo
Um curso avançado que explora a interseção entre otimização matemática clássica, computação evolutiva e aprendizado de máquina contemporâneo. Cobremos otimização com uma e múltiplas objetivos, estratégias baseadas em dados e tópicos avançados como Busca de Arquitetura Neural e Aprendizado Federado.
Domine a evolução da inteligência por meio de otimização avançada baseada em dados e multiobjetivo.
🎯 Objetivos de Aprendizagem
- [Aplicar técnicas avançadas de otimização a problemas matemáticos complexos e baseados em dados.]
- [Projetar e avaliar arquiteturas evolutivas e de aprendizado de máquina para cenários multiobjetivo.]
🔹 Aula 1: Fundamentos da Otimização
Visão Geral: Esta aula oferece uma introdução abrangente às bases matemáticas da otimização, desde técnicas clássicas baseadas em gradientes até estratégias inspiradas na biologia evolutiva. Estabelece definições rigorosas de variáveis de decisão, funções objetivo e restrições, enquanto explora a taxonomia de problemas de otimização. O conteúdo transita dos métodos de busca local, como Newton-Raphson e Gradiente Descendente, para os princípios da evolução natural e a mecânica dos Algoritmos Genéticos.
Resultados de Aprendizagem:
- Definir e Classificar Problemas de Otimização: Distinguir entre otimização contínua, discreta, combinatória e convexa com base em propriedades matemáticas e restrições.
- Executar Métodos Clássicos Baseados em Gradiente: Aplicar o método de Newton-Raphson e Gradiente Descendente (incluindo variantes como RPROP e Momentum) para encontrar ótimos locais de funções diferenciáveis.
- Traduzir Evolução Biológica para Lógica Computacional: Explicar a relação entre genótipo/fenótipo, seleção natural e estrutura dos Algoritmos Evolutivos (AEs).
- Abordar Desafios Algorítmicos: Identificar e mitigar problemas comuns na otimização, como o "precipício de Hamming" no codificação binária, o "problema do gradiente desaparecendo" e o custo computacional da inversão da Hessiana.
🔹 Aula 2: Algoritmos Genéticos: Codificação, Seleção e Operadores Genéticos
Visão Geral: Esta aula aborda a mecânica fundamental dos Algoritmos Genéticos Canônicos e Codificados em Reais (RCGA). Explora representações de variáveis, incluindo codificação Binária, Gray e Real, além de mecanismos de reprodução como cruzamento e mutação. O material também introduz técnicas avançadas para resolver problemas combinatórios e lidar com restrições por meio de funções de penalidade e métodos de reparo.
Resultados de Aprendizagem:
- Analisar diferentes esquemas de representação (Binária vs. Codificação Gray) e seu impacto na causalidade da busca e nos "precipícios de Hamming".
- Calcular probabilidades de seleção e decodificar strings binárias em variáveis de decisão inteiras ou reais.
- Diferenciar entre diversos operadores de cruzamento para algoritmos genéticos binários (n-ponto, uniforme) e codificados em reais (BLX, SBX, linear).
- Formular estratégias para lidar com restrições e otimização combinatória em problemas NP-difíceis como o Problema do Caixeiro Viajante (TSP).
🔹 Aula 3: Estratégias Evolutivas e Adaptação do Passo
Visão Geral: Esta aula explora técnicas avançadas de computação evolutiva, focando especificamente em mecanismos de tratamento de restrições e na mecânica das Estratégias Evolutivas (ES). Detalha a transição da otimização binária para contínua, enfatizando a importância da adaptação do tamanho do passo. Métodos-chave discutidos incluem a regra 1/5 e a Adaptação da Matriz de Covariância (CMA-ES).
Resultados de Aprendizagem:
- Avaliar técnicas para lidar com restrições, incluindo métodos de reparo baseados em gradientes para problemas contínuos e classificação estocástica para soluções inviáveis.
- Aplicar operadores de Algoritmo Genético Codificado em Reais, especificamente Cruzamento Binário Simulado (SBX) e Mutação Polinomial.
- Analisar a estrutura algorítmica das Estratégias Evolutivas (ES), incluindo (1+1)-ES e variantes baseadas em população usando seleção (μ, λ) e (μ + λ).
- Explicar a lógica matemática por trás da adaptação do tamanho do passo, comparando a regra 1/5, o tamanho global do passo e estratégias de passo individual.
🔹 Aula 4: Programação Genética e Representações Baseadas em Árvores
Visão Geral: Esta aula aborda a Programação Genética (PG) como um método para resolver problemas de otimização e aprendizado de máquina representando funções matemáticas e códigos como estruturas de árvore. Os alunos exploram como a PG evolui essas estruturas por meio de métodos específicos de inicialização e operadores genéticos. A lição também aborda técnicas de tratamento de restrições como funções de aptidão penalizadas em regressão simbólica.
Resultados de Aprendizagem:
- Diferenciar entre conjuntos de funções primitivas e conjuntos terminais em representações baseadas em árvores.
- Executar estratégias de inicialização, incluindo os métodos Full, Grow e Ramped-half-and-half.
- Analisar a mecânica da recombinação e mutação baseadas em árvores, incluindo seus efeitos sobre o tamanho e estrutura da população.
- Avaliar técnicas para lidar com restrições na otimização evolutiva, especificamente penalidades duras, dinâmicas e adaptativas.
🔹 Aula 5: Diferenciação Evolutiva e Variantes de Otimização por Enxame de Partículas
Visão Geral: Esta aula explora técnicas meta-heurísticas avançadas de otimização, começando com tratamento de restrições baseado em reparo para problemas combinatórios e contínuos. Oferece uma análise profunda dos mecanismos da Diferenciação Evolutiva (DE) e da Otimização por Enxame de Partículas Canônica (PSO). O conteúdo se expande para variantes especializadas como PSO Baseado em Competição (CSO) e PSO de Aprendizado Social (SL-PSO) para otimização em grande escala.
Resultados de Aprendizagem:
- Analisar técnicas de tratamento de restrições, especificamente métodos de reparo para otimização combinatória (substituição de genes) e contínua (baseada em gradientes).
- Executar operadores matemáticos da Diferenciação Evolutiva, incluindo mutação por diferença vetorial, cruzamento e seleção.
- Formular as equações de atualização de velocidade e posição para PSO Canônico e suas variantes (PSO Local, Fator de Construção e CSO).
- Diferenciar entre diversos modelos de inteligência de enxame com base em suas estratégias de aprendizado (por exemplo, melhor global versus aprendizado social de demonstradores).
🔹 Aula 6: Otimização Multiobjetivo: Dominância de Pareto e Métodos Clássicos
Visão Geral: Esta aula cobre a transição fundamental da Otimização com uma Objetivo (SOO) para a Otimização Multiobjetivo (MOO). Destaca que a MOO resulta em um conjunto de soluções de compromisso em vez de um único ótimo. A lição avalia métodos clássicos como Agregação Ponderada contra abordagens modernas de decomposição evolutiva como MOEA/D e RVEA.
Resultados de Aprendizagem:
- Definir matematicamente dominância de Pareto, conjuntos ótimos de Pareto e frentes de Pareto.
- Distinguir entre abordagens A priori, A posteriori e Interativas para otimização multiobjetivo.
- Avaliar as limitações da agregação ponderada clássica, especialmente em relação a frentes de Pareto côncavas.
- Explicar os mecanismos de algoritmos baseados em decomposição, incluindo adaptação de pesos e orientação por vetores de referência.
🔹 Aula 7: Abordagens de MOO Baseadas em Dominância e Indicadores de Desempenho
Visão Geral: Esta aula explora abordagens baseadas em dominância na Otimização Multiobjetivo (MOO), focando em estratégias de seleção que transicionam de métodos univariados para seleção baseada em dominância e diversidade. Detalha técnicas específicas de atribuição de aptidão, incluindo mapeamento por rank e nicho para manter diversidade. A lição também avalia os passos procedimentais e complexidades computacionais dos principais algoritmos de ordenação não dominada aplicados no framework NSGA-II.
Resultados de Aprendizagem:
- Analisar a transição da seleção univariada para atribuição de aptidão baseada em dominância e diversidade.
- Calcular ranks de soluções, mapeamento de aptidão e contagens de nicho usando funções de compartilhamento.
- Comparar a lógica procedimental e a complexidade computacional dos algoritmos de Ordenação Não Dominada Básica, Rápida e Eficiente.
- Esboçar o fluxo de execução do Algoritmo Genético de Ordenação Não Dominada (NSGA-II).
🔹 Aula 8: Algoritmos de Estimação de Distribuição e Modelagem de Regularidade
Visão Geral: Esta aula explora mecanismos avançados de seleção na Otimização Multiobjetivo, focando especificamente no distância de empacotamento do NSGA-II e indicadores de desempenho como IGD e Hipervolume. Transita para Algoritmos de Estimação de Distribuição (EDAs), que substituem operadores genéticos tradicionais por modelos probabilísticos. Finalmente, o material introduz a "Modelagem de Regularidade" (MR-MOO), aproveitando propriedades geométricas dos conjuntos de Pareto para melhorar a eficiência da busca.
Resultados de Aprendizagem:
- Calcular e Implementar a Seleção do NSGA-II: Definir e calcular a distância de empacotamento e aplicar regras de torneio empacotado.
- Avaliar o Desempenho da MOO: Diferenciar entre indicadores de desempenho como Distância Geracional (GD), Distância Geracional Invertida (IGD) e Hipervolume.
- Analisar mecanismos de EDAs: Explicar a transição de operadores de busca aleatória para construção e amostragem de modelos probabilísticos (UMDA, UGM, MGM).
- Modelar Regularidade em PMOs: Descrever a propriedade de manifold (m-1)-dimensional dos conjuntos de Pareto e como a PCA local e mapeamento de espaço latente são usados no MR-MOO.
🔹 Aula 9: Aprendizado de Máquina: Redes Neurais, Retropropagação e Seleção de Modelos
Visão Geral: Esta aula aborda a transição da otimização muitos-objetivo para arquiteturas avançadas de aprendizado de máquina e avaliação de modelos. Detalha a mecânica das Redes Perceptron Multicamadas (MLPs), a fundação matemática da retropropagação e várias técnicas de otimização por descida do gradiente. Além disso, aborda questões críticas na seleção de modelos, como o trade-off viés-variância e métodos de ensemble.
Resultados de Aprendizagem:
- Identificar remédios para perda de pressão de seleção na Otimização Muitos-Objetivo, incluindo métodos baseados em hipervolume e decomposição.
- Diferenciar entre modelos Generativos e Discriminativos e seus papéis respectivos no aprendizado de máquina.
- Aplicar a regra Delta e retropropagação usando regras de diferenciação para atualizar pesos de redes neurais.
- Avaliar estratégias para reduzir o sobreajuste, especificamente regularização, parada antecipada e diversas técnicas de validação cruzada.
- Analisar métodos de aprendizado por ensemble (Bagging, Boosting, Stacking) para gerenciar o trade-off viés-variância e melhorar a diversidade do modelo.
🔹 Aula 10: Algoritmos Meméticos e Influência do Aprendizado ao Longo da Vida
Visão Geral: Esta aula explora os Algoritmos Meméticos (MA), que integram exploração genética global com refinamento fenotípico local por meio de aprendizado ao longo da vida. Examina as distinções mecânicas entre evolução Lamarckiana e Baldwiniana e a aplicação de busca local na otimização multiobjetivo. O material também aborda o uso de estratégias evolutivas para otimizar estruturas e parâmetros de redes neurais.
Resultados de Aprendizagem:
- Diferenciar entre Algoritmos Evolutivos padrão e Algoritmos Meméticos com base na inclusão de aprendizado ao longo da vida e busca local.
- Contrapor os paradigmas Lamarckiano e Baldwiniano quanto à transmissão de mudanças fenotípicas adquiridas aos descendentes.
- Avaliar a influência do Efeito Baldwin versus o Efeito Oculto sobre a taxa de evolução e a pressão de seleção.
- Descrever a metodologia para otimizar matrizes de conexão e parâmetros de peso de Redes Neurais (NN) por meio de treinamento evolutivo e por gradiente.
🔹 Aula 11: Aprendizado de Máquina Evolutivo e MOML
Visão Geral: Esta aula explora o Aprendizado de Máquina Multiobjetivo (MOML) como um framework para equilibrar objetivos concorrentes no design de redes neurais, como precisão versus complexidade. Usando algoritmos como NSGA-II, o material demonstra como otimizar estruturas e parâmetros da rede para derivar modelos ótimos de Pareto. O conteúdo se estende para aplicações práticas incluindo extração de regras, agrupamento multiobjetivo e extração robusta a ruídos de características.
Resultados de Aprendizagem:
- Definir a base matemática da regularização baseada em Pareto no MOML, especificamente o trade-off entre erro e complexidade do modelo.
- Explicar os mecanismos de representação de rede e mutação dentro de um framework evolutivo.
- Analisar frentes ótimas de Pareto para extrair regras de decisão interpretáveis de redes neurais.
- Descrever como a otimização multiobjetivo é aplicada ao agrupamento e extração de características.
🔹 Aula 12: Otimização Evolutiva Baseada em Dados e Gestão de Modelos
Visão Geral: Esta aula aborda as motivações e metodologias da Otimização Evolutiva Baseada em Dados (DDEO), focando em cenários onde funções objetivo são computacionalmente caras. Detalha o papel crítico da Gestão de Modelos e explora estratégias avançadas como abordagens baseadas em indivíduo e geração. Abordagens de Otimização Bayesiana usando modelos de substituição são examinadas para equilibrar exploração e exploração.
Resultados de Aprendizagem:
- Identificar as motivações centrais da otimização baseada em dados, incluindo intensidade computacional e custo de simulações físicas.
- Categorizar estratégias de gestão de modelos (Baseada em Indivíduo, Baseada em Geração e Baseada em População) e suas técnicas de implementação específicas.
- Explicar o fluxo de trabalho da Otimização Bayesiana e o papel dos Processos Gaussianos (GP) como modelos de substituição não paramétricos.
🔹 Aula 13: Otimização Bayesiana e Funções de Aquisição
Visão Geral: Esta aula aborda a aplicação avançada da Otimização Bayesiana (BO) em frameworks evolutivos, focando em otimização assistida por substituto. Detalha a transição de modelos Gaussianos Processos (GP) padrão para conjuntos para lidar com a "Maldição da Dimensão". O material explora ainda estratégias especializadas para Problemas Multiobjetivo de Custos Heterogêneos (HE-MOPs) e transferência de conhecimento.
Resultados de Aprendizagem:
- Definir e comparar funções de aquisição comuns (LCB, EI, Amostragem de Thompson) usadas para equilibrar exploração e exploração.
- Identificar as limitações computacionais dos Processos Gaussianos e explicar estratégias de redução de dimensão e substituição de modelos.
- Analisar métodos para lidar com objetivos de custo heterogêneo por meio de transferência de conhecimento baseada em parâmetros e instâncias.
🔹 Aula 14: Busca Evolutiva de Arquitetura Neural (E-NAS)
Visão Geral: Esta aula explora a automação do design de redes neurais por meio de algoritmos evolutivos, focando na transição de arquiteturas feitas à mão para espaços de busca automatizados. Cobremos o pipeline E-NAS, compartilhamento de pesos em super-redes, e técnicas avançadas como avaliação assistida por substitutos. O material também se estende para modelos inspirados na biologia, incluindo plasticidade evoluída e coevolução da morfologia.
Resultados de Aprendizagem:
- Definir o processo de cinco etapas do E-NAS e a distinção entre espaços de busca macro e micro.
- Explicar o conceito de compartilhamento de pesos em super-redes e identificar os principais desafios dos métodos de um só golpe.
- Descrever os mecanismos de herança de nós, incluindo como operadores de cruzamento e mutação são aplicados a Grafos Acíclicos Dirigidos (DAGs).
- Avaliar estratégias para reduzir custos computacionais, como métricas proxy, modelos de substituição e treinamento amostrado.
🔹 Aula 15: Aprendizado de Máquina Preservador de Privacidade e Federado
Visão Geral: Esta aula explora a transição do aprendizado de máquina centralizado em nuvem para frameworks distribuídos e preservadores de privacidade. Cobrimos as arquiteturas fundamentais do Aprendizado Federado (Horizontal e Vertical) e técnicas para aumentar a eficiência de comunicação. A lição também discute a integração de algoritmos evolutivos para Busca de Arquitetura Neural Federada (NAS) e Algoritmos Evolutivos Seguros Federados.
Resultados de Aprendizagem:
- Diferenciar entre aprendizado em nuvem centralizado e aprendizado distribuído no dispositivo em termos de privacidade, segurança e precisão do modelo.
- Explicar a mecânica de técnicas preservadoras de privacidade fundamentais, incluindo Privacidade Diferencial, Criptografia Homomórfica e Computação Multiparte Segura.
- Analisar o fluxo operacional do Aprendizado Federado Horizontal e Vertical e seus respectivos desafios com dados não-IID.
- Avaliar métodos de eficiência de comunicação, como Atualizações Assíncronas por Camada e Quantização Ternária.
- Descrever a implementação do Aprendizado Federado Bayesiano e Algoritmos Evolutivos Federados Seguros usando mascaramento Diffie-Hellman.