Это продолжение от этого поста .Короче говоря, я использую IBM ILOG CPLEX CP Optimizer в Python для решения проблемы программирования с ограничениями.Одна из целей оптимизации - максимизировать произведение целых чисел x_1 * x_2 * ... * x_n.По мере увеличения проблемы (например, n составляет около 300), продукт, очевидно, станет очень большим, и Оптимизатор CP, похоже, не сможет обработать это большое целое число.Для различных значений n возвращаемый продукт всегда был 1.79769e + 308.
Целые числа не ограничены по размеру и не имеют максимального значения в собственном Python, поэтому я предполагаю, что CP Optimizer обрабатывает большие целые числапо-другому.Есть ли способ справиться с большими целыми числами в CP Optimizer?
Некоторые примечания:
- Моя программа работала нормально с меньшими размерами данных (маленький n ).
- Я пытался максимизировать log (x_1) + log (x_2) + ... + log (x_n), но программа работала без остановок.Я считаю, что log усложняет ситуацию.
- Для тех, кто заинтересован, мой исходный код и примеры данных здесь .
Большое спасибо!