公共接口IloStateFunction
非正式来说,状态函数是决策变量,其值是一组非重叠区间,而在这些区间内此函数保持一种特定的非负整数状态。 在这些区间之间,并未定义函数的状态,原因通常是因为会持续发生两种状态的转换。
例如,可以使用状态函数来描述烤箱温度随时间的变化。 假设有 3 种可能的温度水平(以 0、1 和 2 为索引),则该状态函数的固定值可以是以下一组不重叠的有值区间:
[start=0, end=100): state=0,[start=150, end=250): state=1,[start=250, end=300): state=1,[start=320, end=420): state=2,[start=460, end=560): state=0, ...有一组约束条件可用于限制状态函数的演变。 这些限制条件允许指定
IloCP.alwaysEqual)。IloCP.alwaysConstant)内保持不变(无论其值如何)。IloCP.alwaysNoState)。[vmin, vmax](IloCP.alwaysIn)范围内。有关状态函数的更多信息,请参阅《C++ 参考手册》中的概念 "状态函数"。