公共抽象静态类IloCP.IntParam
扩展java.lang.Object
IloCP参数的符号参数名。| 构造函数和说明 |
|---|
IloCP.IntParam() |
| 修饰符和类型 | 方法和说明 |
|---|---|
abstract int |
getValue() |
公共静态最终IloCP.IntParam DefaultInferenceLevel
IloCP.ParameterValues.Default的约束条件指定一般推理级别。 该参数的可能值(按推理强度递增顺序排列)为 "IloCP.ParameterValues.Low"、"IloCP.ParameterValues.Basic"、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended"。 默认值为 "IloCP.ParameterValues.Basic。公共静态最终IloCP.IntParam AllDiffInferenceLevel
IloCP实例的每个 "IloAllDiff约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloAllDiff约束条件的推理强度。public static finalIloCP.IntParam DistributeInferenceLevel
IloCP实例的每个 "IloDistribute约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloDistribute约束条件的推理强度。public static finalIloCP.IntParam CountInferenceLevel
IloCP实例的每个 "IloCount约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloCount约束条件的推理强度。public static finalIloCP.IntParam SequenceInferenceLevel
IloCP实例的每个 "IloSequence约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloSequence约束条件的推理强度。public static finalIloCP.IntParam AllMinDistanceInferenceLevel
IloCP实例的每个 "IloAllMinDistance约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloAllMinDistance约束条件的推理强度。public static finalIloCP.IntParam ElementInferenceLevel
IloCP实例的每个元素约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有元素约束的推理强度。公共静态最终IloCP.IntParam FailLimit
IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax为默认值。公共静态最终IloCP.IntParam ChoicePointLimit
IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax为默认值。public static finalIloCP.IntParam LogVerbosity
IloCP.ParameterValues.Quiet、"IloCP.ParameterValues.Terse"、"IloCP.ParameterValues.Normal"和 "IloCP.ParameterValues.Verbose"。 模式 "IloCP.ParameterValues.Quiet不显示任何信息,其他模式显示的信息会逐渐增多。 默认值为 "IloCP.ParameterValues.Normal。公共静态最终IloCP.IntParam LogPeriod
k,日志会每 k 个分支(搜索决策)显示一次。公共静态最终IloCP.IntParam SearchType
IloCP.ParameterValues.DepthFirst时,将采用常规的深度优先搜索。 当设置为 "IloCP.ParameterValues.Restart时,将采用深度优先搜索,并不时重新启动。 在调度问题(至少有一个区间变量)上设置为 "IloCP.ParameterValues.IterativeDiving时,会采用更激进的下潜技术,以便更快地找到大型问题的解决方案。 当设置为 "IloCP.ParameterValues.MultiPoint时,应用的是将一组(可能是部分的)解决方案组合起来的方法。 设置为 "IloCP::Neighborhood时,将应用本地邻域搜索(功能正在测试中)。 当设置为 "IloCP.ParameterValues.Auto时,CP 优化器在考虑到其他参数设置的情况下,使用它认为适合所解决问题的上述搜索类型。 默认值为 "IloCP.ParameterValues.Auto。公共静态最终IloCP.IntParam RandomSeed
IloCP.IntMax。 缺省值为 0。public static finalIloCP.IntParam RestartFailLimit
IloCP.ParameterValues.SearchType设置为 "IloCP.ParameterValues.Restart时,深度优先搜索会在一定失败次数后重新开始。 该参数控制重新启动搜索之前必须发生的失败次数。 可能的值范围从 0 到 "IloCP.IntMax。 缺省值为 100。 该值会在每次重新启动之后增加:请参阅参数 RestartGrowthFactor。公共静态最终IloCP.IntParam MultiPointNumberOfSearchPoints
公共静态最终IloCP.IntParamWorkers
Auto。 这等效于使用与机器上的可用 CPU 核心数量相同的工作程序。 请注意,CP Optimizer 需要的内存大致随着工作线程数量的增加呈线性增长。 如果是在多核处理器上对非常大的模型求解,并且内存用量是不能忽视的问题,建议指定较少数量的工作程序,哪怕仅指定一个工作程序,也不要使用缺省值。公共静态最终IloCP.IntParam BranchLimit
x == value 和 x != value。 分支仅在执行决策时计算一次,而不是在决定选择点的两个分支时计算。 即使决策会导致不一致(故障)也会对分支计数。 该参数的可能值范围为 0 至 "IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax的值为默认值。public static finalIloCP.IntParam DynamicProbing
IloCP.ParameterValues.On(以恒定强度激活动态探测)、"IloCP.ParameterValues.Auto(激活动态探测并自适应调整其强度)和 "IloCP.ParameterValues.Off(停用动态探测)。 探测强度可通过参数DynamicProbingStrength 来定义。 只有在使用 "重新启动"(IloCP.ParameterValues.Restart)搜索类型时,动态探测才会对没有区间变量的问题产生影响。 该参数的默认值为 "IloCP.ParameterValues.Auto。public static finalIloCP.IntParam SolutionLimit
IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax为默认值。public static finalIloCP.IntParam PrecedenceInferenceLevel
IloCP实例的区间变量之间优先级约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,这样就可以通过 "IloCP.ParameterValues.DefaultInferenceLevel来控制区间变量之间先例约束的推理强度。public static finalIloCP.IntParam IntervalSequenceInferenceLevel
IloIntervalSequenceVar extracted to the invoking IloCP instance. 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,这样就可以通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloIntervalSequenceVar的推理强度。 有关区间序列变量的更多信息,请参阅 CP 优化器中的 "区间变量排序概念。公共静态最终IloCP.IntParam NoOverlapInferenceLevel
IloCP实例的每个 "IloNoOverlap约束指定推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloNoOverlap约束条件的推理强度。 有关无重叠约束的更多信息,请参阅 CP 优化器中的区间变量排序概念。public static finalIloCP.IntParam CumulFunctionInferenceLevel
IloCumulFunctionExpr extracted to the invoked IloCP instance. 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有约束条件 "on IloCumulFunctionExpr的推理强度。 有关无重叠约束的更多信息,请参阅 CP 优化器中的Cumul 函数概念。public static finalIloCP.IntParam StateFunctionInferenceLevel
IloStateFunction的推理级别,并将其提取到调用的 "IloCP实例中。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制状态函数 "IloStateFunction上所有约束条件的推理强度。 有关无重叠约束的更多信息,请参阅 CP 优化器中的状态函数概念。公共静态最终IloCP.IntParam TimeMode
IloCP.ParameterValues.ElapsedTime和 "IloCP.ParameterValues.CPUTime。 CP 优化器将时间用于显示和通过 "IloCP.NumParam.TimeLimit限制搜索。 请注意,当有多个处理器可用,且工作者(IloCP.IntParam.Workers)的数量大于 1 时,CPU 时间可能会大于已用时间,其倍数不超过工作者数量。 默认值为 "IloCP.ParameterValues.ElapsedTime。public static finalIloCP.IntParam TemporalRelaxation
IloCP引擎内部时空松弛的使用。 该参数的值可以是 "IloCP.ParameterValues.On或 "IloCP.ParameterValues.Off,默认值为 "IloCP.ParameterValues.On,这意味着引擎在需要时会使用该松弛值。 对于某些模型,使用松弛会变得效率低下,因此可以使用值 "IloCP.ParameterValues.Off停用时态松弛。public static finalIloCP.IntParamPresolve
IloCP.ParameterValues.On(激活预溶解)和 "IloCP.ParameterValues.Off(停用预溶解)。 缺省值为 IloCP.ParameterValues.On。public static finalIloCP.IntParam ConflictRefinerIterationLimit
IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax为默认值。公共静态最终IloCP.IntParam ConflictRefinerBranchLimit
IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax为默认值。public static finalIloCP.IntParam ConflictRefinerFailLimit
IloCP.IntMax。 IloCP.IntMax值不设置任何限制。 IloCP.IntMax为默认值。公共静态最终IloCP.IntParam ConflictRefinerOnVariables
IloCP.ParameterValues.On(冲突细化器将细化约束域和变量域)和 "IloCP.ParameterValues.Off(冲突细化器仅细化约束域)。 缺省值为 IloCP.ParameterValues.Off。public static finalIloCP.IntParam ModelAnonymizer
dumpModel转储的模型的匿名化。 该参数的合法值为 "IloCP.ParameterValues.Off和 "IloCP.ParameterValues.On。 缺省值为 IloCP.ParameterValues.Off。 当 anonymizer 被关闭时,模型中的变量和约束的名称可以在输出文件中找到。 当 anonymizer 开启时,为模型中的变量或约束指定的名称不会反映到输出文件中,并将使用标准的匿名化名称。公共静态最终IloCP.IntParam FailureDirectedSearch
IloCP.IntParam.SearchType设置为 "IloCP.ParameterValues.Restart或 "IloCP.ParameterValues.Auto时使用。 IloCP.IntParam.FailureDirectedSearch参数的合法值为 "IloCP.ParameterValues.On(默认值)和 "IloCP.ParameterValues.Off。 当值为 "IloCP.ParameterValues.On时,CP 优化器会在其他搜索策略(不再)成功且搜索所需的内存不超过参数 "IloCP.IntParam.FailureDirectedSearchMaxMemory设置的值时启动故障导向搜索。 将 "IloCP.IntParam.FailureDirectedSearch设置为 "IloCP.ParameterValues.Off将禁用该功能。public static finalIloCP.IntParam FailureDirectedSearchMaxMemory
IloCP.IntParam.FailureDirectedSearch。 失败导向搜索有时会使用大量内存,尤其是间隔变量的结束时间为无界限的情况。 因此,通常不会立即启动,而是仅在有效时域(CP Optimizer 必须考虑的时间段)变得足够小,让失败导向搜索能够在该参数指定的内存限制内运行时启动。 对于许多类型的调度问题,有效时域往往会在 CP Optimizer 找到更好解法时减少(通常在找到初始解法时最明显)。 因此,找到每个新解法时,CP Optimizer 决定是否开启失败导向搜索。 请注意,一旦启动故障导向搜索,该参数不会影响搜索效果。 其目的只是为了控制失败导向搜索将开始发挥作用的时间点。公共静态最终IloCP.IntParam WarningLevel
该参数控制启动求解时 CP Optimizer 发出的警告级别。 尤其是,高于该参数的级别的所有警告都会被屏蔽。 由于 CP 优化程序的警告级别从 1 到 4 不等,因此将该参数设置为 0 时,将关闭所有警告。 发出的警告可能表示模型中有潜在错误或效率低下的情况。 该参数的默认值为 2。
public static finalIloCP.IntParam UseFileLocations
该参数控制 CP Optimizer 是否处理文件位置。 对于每个约束、变量和表达式,可以关联源文件位置(文件名和行号)。 CP Optimizer 稍后可以使用位置报告错误和冲突。 位置也包含在导出/转储模型中(#line指令)。
可以通过以下方式向 CP Optimizer 提供源文件位置:
ILOADD和 "ILOSETLOCATION。#line指令。IloCP.add、"IloCP.intVar、"IloCP.intervalVar、"IloCP.intervalSequenceVar"和 "IloCP.stateFunction"自动分配,除非该参数为 "Off。 调用类在编译时必须包含行号和源文件的调试信息。该参数的合法值为 "IloCP.ParameterValues.On(默认值)和 "IloCP.ParameterValues.Off。 当值为 "IloCP.ParameterValues.Off时,CP 优化器将忽略输入模型中的位置,也不会以 CPO 文件格式输出(函数 "和 "IloCP.dumpModel(java.lang.String))。IloCP.exportModel(java.lang.String)
public static finalIloCP.IntParam PrintModelDetailsInMessages
每当 CP Optimizer 输出错误或警告消息,也会输出输入模型的相关部分(使用 CPO 文件格式)。 该参数控制该附加信息的输出。 可能的值为 "IloCP.ParameterValues.On和 "IloCP.ParameterValues.Off,默认值为 "IloCP.ParameterValues.On。
公共静态最终IloCP.IntParam CountDifferentInferenceLevel
IloCP实例的每个 "IloCountDifferent约束的推理级别。 该参数的可能值为 "IloCP.ParameterValues.Default、"IloCP.ParameterValues.Low、"IloCP.ParameterValues.Basic、"IloCP.ParameterValues.Medium"和 "IloCP.ParameterValues.Extended。 默认值为 "IloCP.ParameterValues.Default,允许通过 "IloCP.ParameterValues.DefaultInferenceLevel控制所有 "IloCountDifferent约束条件的推理强度。public static finalIloCP.IntParam LogSearchTags
IloCP.ParameterValues.On时,发动机将在解算模型时在发动机日志中显示故障标签(索引)。 要指定要解释的故障,需要调用成员函数 "IloCP.explainFailure(int failureTag)或 "IloCP.explainFailure(int[] tagArray),并将故障标记作为参数。 可以添加多个失败标记。 成员函数 "IloCP.clearExplanations()用于清除待解释的故障标记集。 要查看故障标记和说明,必须将参数 "IloCP.IntParam.SearchType设置为 "IloCP.ParameterValues.DepthFirst,将参数 "IloCP.IntParam.Workers设置为 1。 该参数的默认值为 "IloCP.ParameterValues.Off。公共静态最终IloCP.IntParamKPIDisplay
IloCP.ParameterValues.SingleLine:所有关键绩效指标都显示在一行中。 替代值为 "IloCP.ParameterValues.MultipleLines:每个关键绩效指标显示在单独一行。公共静态最终IloCP.IntParam ParallelSynchronizationSolutionCapacity