我是 Cplex 的新手。我需要同时计算几个间隔之间的重叠。为此,我一次计算两个间隔之间的重叠长度,并保存起点/终点的最大值和最小值。例如,让我们考虑三个区间变量 I1、I2、I3。目标是最大化三者之间的重叠。然后,代码如下:
over1=mdl.overlap_length(I1,I2)
start1=max(mdl.start_of(I1),mdl.start_of(I2))
end1=min(mdl.end_of(I1),mdl.end_of(I2))
over1=mdl.overlap_length(I3,(start1,end1)
然后我最大化over1。有了这个,我得到以下错误:
AssertionError:要表示固定间隔,'interval2' 应该是两个整数的元组
实际上,start1 和 end1 是 CP 整数表达式。我没有找到转换或获得价值的方法!有谁知道如何做到这一点?
谢谢,