Esse repositório contem os codigos produzidos na disciplina de "Modelagem e Resolução de Problemas de Otimização Combinatória", que estou cursando com o Professor Alexandre Salles da Cunha, no Departamento de Ciência da Computação da Universidade Federal de Minas Gerais (UFMG).
Este curso tem como objetivo principal oferecer uma introdução à modelagem de problemas de otimização, concentrando-se especificamente na otimização combinatória. Durante o curso, serão apresentados diversos problemas dessa natureza, juntamente com suas aplicações, e serão discutidos diferentes modelos de Programação Matemática para abordar esses problemas. Em seguida, esses modelos serão implementados em Python e serão resolvidos utilizando algoritmos disponibilizados previamente, através de pacotes de otimização.
Não está dentro do escopo do curso a investigação detalhada dos algoritmos empregados para resolver esses problemas. Serão apresentadas apenas as ideias centrais de alguns desses algoritmos, o suficiente para que os alunos possam utilizar confortavelmente os pacotes de otimização e resolver os modelos propostos, interpretando as soluções encontradas. O foco central está na discussão de técnicas de modelagem.
Em geral, serão discutidas várias formulações distintas para cada problema, explorando diferentes paradigmas de modelagem e destacando as vantagens e desvantagens de cada abordagem. Além disso, serão analisadas as implicações algorítmicas de cada formulação, contribuindo para uma compreensão mais ampla dos desafios envolvidos na resolução de problemas de otimização combinatória.
- Problemas básicos de conexão em grafos.
- Problema de Steiner em Grafos e variantes.
- Projeto de redes de comunicação resilientes.
- Problemas de Interdição em redes.
- Problema do Caixeiro Viajante e variantes.
- Problemas de estruturas induzidas em grafos.
- Problema de Roteamento de Veículos.
- Problema de Coloração em Grafos.
- Problema de Dominância e Dominância Conexa em Grafos.
- Problemas de Agrupamento e de Clusterização.
- Problema do Corte Máximo.
- Problemas de Sequenciamento de Atividades/Máquinas.
- Cutting-stock (problemas de definir padrões ótimos de cortes)
- Problemas de empacotamento.
Agradeço ao Prof. Alexandre por suas aulas unicas.