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