Pergunta

Existem boas ferramentas para resolver programas inteiros no Linux?

Estou com um pequeno problema que quero calcular para economizar tempo :D.É uma espécie de problema de soma de subconjuntos.Tenho uma lista de cerca de 20 valores inteiros e quero calcular o subconjunto com a menor soma que satisfaça um determinado mínimo.Você poderia formular isso com um programa inteiro ...algo como

\sum_{i=1}^{n} w*x -> min

com

\sum_{i=1}^{n} w*x >= c with x \in \{0,1\}

Ou existe outra boa maneira de fazer isso?

Foi útil?

Solução

eu tentaria também GLPK ou SCIP.

Eles têm sua própria linguagem de modelagem, GLPK tem GNU MathProg e SCIP tem ZIMPL, para que você possa codificar convenientemente seu problema de LP.

GNU MathProg tem a vantagem de ser compatível com AMPL.Assim, você poderia experimentar a versão estudantil do AMPL com CPLEX ou Gurobi com seu modelo GNU MathProg.Tenha em mente que AMPL, CPLEX e Gurobi são softwares comerciais.

Outras dicas

Você já tentou fazer isso com LibreOffice Calc Solucionador?

Fundação Microsoft Solver no Mono Framework também pode fazer o trabalho para você se você conhece C#.

Tentar Lindo/Lingo.Eles não são gratuitos, mas você pode experimentá-los.

Eles permitem que você especifique seu problema de uma forma matemática muito clara.

Você poderia tentar gnu oitava - é um subconjunto do matlab

Queria adicionar mais uma opção às sugestões do GLPK que @Ali fez.Sugiro que qualquer pessoa interessada em resolver LPs/IPs também dê uma olhada nos pacotes de otimização que a Linguagem R oferece.

Se você já conhece e usa R, basta baixar o pacote certo.E mesmo que não o faça, esta é uma boa maneira de se familiarizar com o R, que está realmente decolando no espaço analítico.

Esse vinheta é uma ótima maneira de saber quais pacotes R são relevantes.Para você, RSymphony ou Rglpk podem ser os únicos para começar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top