Фреймворк программирования ограничений для задачи планирования

Я собираюсь работать над программным приложением для планирования проекта и ищу библиотеку программирования ограничений, которая поддерживает интервальную арифметику и ограничения для действительных чисел.

Функция, которую я должен реализовать, - это планирование проекта.

Не могли бы вы посоветовать мне структуру программирования ограничений для такой задачи?

Заранее спасибо!


person Kirill    schedule 17.04.2011    source источник
comment
На каком языке? Многие диалекты Пролога предлагают программирование с ограничениями из коробки, но сам язык Пролог требует крутого обучения, если вы привыкли только к императивному программированию.   -  person Fred Foo    schedule 17.04.2011
comment
В качестве языка программирования я использую C # \. Net или C ++.   -  person Kirill    schedule 17.04.2011
comment
В Java я бы предложил Drools Planner. Теперь есть пример, в котором используются ограничения типа double (= действительные числа), но его легко подключить к BigDecimal или любому другому числовому типу, который вам нужен.   -  person Geoffrey De Smet    schedule 17.04.2011


Ответы (1)


Есть хорошая книга под названием «Планирование на основе ограничений: применение программирования с ограничениями к задачам планирования», в соавторстве с Филиппом Батистом, Клодом Ле Папом и Вимом Нуйтеном.

У IBM есть коммерческий инструмент под названием ILOG CPLEX, специально разработанный для решения ограничений в качестве средства решения вопросов планирования http://www-01.ibm.com/software/integration/optimization/cplex-optimization-studio/ Бесплатная альтернатива - GeoCode http://www.gecode.org/ и Minion http://minion.sourceforge.net/ Оба основаны на C ++.

Однако вы должны знать, что решение ограничений над вещественными числами не всегда разрешимо и будет зависеть от типа ограничений, которые вы собираетесь использовать при моделировании. Пока ваши ограничения линейны, вы в безопасности ;-)

person Alexander Serebrenik    schedule 13.04.2012