是否可以在Cplex中建模非线性分段成本函数?
例如我在这里提到的数字:
non linear piece wise Cost function (black line)
我知道一种方法是将二次部分线性化为线性部分,但是,我想按原样使用二次部分。
您可以看到条件在决策变量本身上,成本函数可以表示如下:
如果x≲x0那么成本是二次部分;
其他费用是线性部分。
提前致谢:)
答案 0 :(得分:1)
一种方法是在x:
选择最便宜的曲线M=|f(xmax)−g(xmax)|
M是常数:两条曲线之间的最大差异(即 min cost
cost ≥ f(x) or cost ≥ g(x)
)。 δ是二元变量。我假设我们正在最小化成本,并且二次函数是凸的。
此构造实现
x0
解算器将始终丢弃最昂贵的功能,并保持最便宜。在你的图片中,这正是我们想要的:在x0
的左边,二次函数是最便宜的,在data
的右边,线性函数更便宜。这个公式将自动选择更便宜的选项。