O pacote de software de código aberto para otimização do Google, OR-Tools, fornece o wrapper MPSolver para resolver problemas de programação linear e programação de números inteiros mista (links em inglês).
Para resolver problemas de programação de números inteiros puros, você também pode usar o solucionador CP-SAT.
Exemplos
As páginas a seguir fornecem exemplos que ilustram o uso do MPSolver:
- Solução do problema de dieta de Stigler usando Glop
- Como resolver um problema de LP usando o Glop
- Como resolver um problema de MIP usando SCIP
- Como resolver um problema de empacotamento usando SCIP
- Como resolver um problema de atribuição usando o CP-SAT
- Como usar matrizes para definir um modelo
Tarefas comuns
A seção a seguir demonstra tarefas comuns relacionadas à resolução de LPs e MIPs.
Limites de tempo
O exemplo abaixo mostra como definir um limite de tempo de pesquisa de 15 milissegundos ao usar o Glop.
Python
solver.set_time_limit(15)
C++
solver->set_time_limit(15);
Java
solver.setTimeLimit(15)
C#
solver.SetTimeLimit(15);