Python 如何在IBM ILOG CPLEX CP优化器中处理大整数?
这是我们的后续行动。简而言之,我正在用Python解决一个约束编程问题。优化目标之一是使整数x_1*x_2*…*的乘积最大化x_n。随着问题的扩大(例如,n大约为300),产品显然会变得非常大,CP Optimizer似乎无法处理这个大整数。对于不同的n值,返回的产品始终为1.79769e+308 整数的大小是无限的,在本机Python中没有最大值,所以我猜CP优化器处理大整数的方式不同。在CP优化器中有没有处理大整数的方法 一些旁注:Python 如何在IBM ILOG CPLEX CP优化器中处理大整数?,python,optimization,constraint-programming,ilog,cp-optimizer,Python,Optimization,Constraint Programming,Ilog,Cp Optimizer,这是我们的后续行动。简而言之,我正在用Python解决一个约束编程问题。优化目标之一是使整数x_1*x_2*…*的乘积最大化x_n。随着问题的扩大(例如,n大约为300),产品显然会变得非常大,CP Optimizer似乎无法处理这个大整数。对于不同的n值,返回的产品始终为1.79769e+308 整数的大小是无限的,在本机Python中没有最大值,所以我猜CP优化器处理大整数的方式不同。在CP优化器中有没有处理大整数的方法 一些旁注: 我的程序在较小的数据量(小n)下运行良好 我试着最大化l
- 我的程序在较小的数据量(小n)下运行良好
- 我试着最大化log(x_1)+log(x_2)+…+日志(x_n),但程序正在不间断地运行。我认为日志使事情变得复杂
- 对于那些感兴趣的人,我的源代码和示例数据如下
在为IlcIntVar类指定域值时,应遵守此上限。这是float64的上限(因此,即使此数据类型对您也会失败;并且会在核心中静默使用)。由于可能不支持任意算术,您可能会尝试根据附加的模型假设为该总和添加上限。当然,这在某种程度上是假设您期望在这个有效范围内找到一个解决方案。