【发布时间】:2011-04-04 14:55:07
【问题描述】:
我有一个优化问题,我尝试使用求解器解决。其中,一个决策变量是包含日期的单元格。 Solver 应根据时间序列选择最佳时间点。然而,虽然它改变了其他决策单元,但它永远不会改变这个!我什至尝试删除其他决策变量(保持它们不变) - 仍然没有变化。
为了帮助您锁定我的问题,我创建并附加了一个 Excel 表格(此处为:download link),其中包含一个简化的问题,求解器应从股票价格的时间序列中选择价格最高的日期。 (我知道这个特殊问题可以很容易地用 MAX 公式解决,但我真正的优化问题要复杂得多,并且不允许这种解决方案。)
求解器在初始日期值处仍然没有改变任何东西 - 即使在这个非常简化的设置中!
从数学的角度来看,目前的问题可以被描述为一个(非线性)阶跃函数,其中特定的时间点(在 x 轴上)对应于不同的价格(在 y 轴上的阶跃)。
是否有任何技巧可以让求解器处理时间(日期)值? 如果您有幸找到一组正确的 Solver 设置以使其获得正确的解决方案(即 2009 年 1 月 10 日),我将非常高兴听到它们。
编辑:我发现具有非平滑不连续函数的非线性问题(比如这个问题,它基本上是一个阶梯函数)通常很难被任何(非线性)线性优化器解决。精通此事的人可以帮助我以可解决的方式重新提出问题。我在 stack overflow 上找到了一个类似的主题,并提供了建议的解决方案(请参阅第一个答案),但不知道如何将其应用于我的问题。
谢谢, 史蒂夫
【问题讨论】: