Целочисленное линейное программирование Java: доступны несколько инструментов с открытым исходным кодом и коммерческие. Какой использовать? - PullRequest
2 голосов
/ 16 декабря 2009

Мне нужно использовать Integer Linear Programming API / Tool для моего приложения. Хотя мое приложение написано на Java, но я не возражаю против вызова EXE (Tool) из Java, обеспечивающего ввод с использованием файла (MPS и т. Д.).

Мой поисковый анализ выглядит следующим образом: Существует множество инструментов с открытым исходным кодом и коммерческими инструментами для решения проблем ILP. Следующее, что я нашел и считаю полезным для моих нужд. 1. Gnu LP Kit (GLPK): я думаю, что это самый старый и, вероятно, самый стабильный и эффективный 2. IP_Solve: есть хорошие отзывы об этом. 3. JavaILP: нашел это, но не много отзывов об этом 4. Apache Common-Math: поддерживает LP, но не ILP, поэтому исключено. 5. Монета ИЛИ

Подскажите, пожалуйста, какой из них будет лучшим с точки зрения стабильности, эффективности, приемлемости и т. Д.

Привет

Ответы [ 2 ]

2 голосов
/ 31 декабря 2009

Я успешно вызвал другой бесплатный решатель LP / MIP под названием LPSolve из Java, используя их оболочку Java. Это довольно хороший решатель для приличных задач. Я решал проблемы с более чем 5000 целочисленными переменными. Похоже, из вашего списка вы хотите ограничиться бесплатными инструментами; в противном случае доступны коммерческие варианты.

1 голос
/ 25 марта 2010

Спасибо за ответ. Я наконец использую LP Solve. Хорошая вещь об этом (которая может присутствовать и в других инструментах решения LP) - это опция тайм-аута. Таким образом, я могу получить оптимальный результат в указанные секунды.

...