在工作中,我们正在努力优化生产的货物数量,以满足不确定的需求。通过对以前发生的需求的分析,了解需求的概率分布。
在数学上,这个问题是一个多阶段的随机整数规划.我们现在正在调查OptaPlanner来解决这个问题。然而,OptaPlanner似乎没有提供建模和解决此类问题的能力。一种可能是将程序转换成一个确定性的问题,这个问题可能是可解决的,但是这需要很长的时间来转换和解决。
因此,我们的问题是: OptaPlanner能否对此类问题进行建模并有效地解决这些问题?
发布于 2016-03-23 11:28:42
这类用例并不是开箱即用的示例,也不是经过仔细研究的,但是使用一些自定义代码是可能的。
Score,它本质上是一个Comparable。Score (参见docs),但在下面的示例中,我将使用一个标准的HardSoftScore,这样就可以了。HardSoftScore基本上是2 int变量。例如,假设下雨的概率是:星期一50%,星期二10%,星期三20%。现在假设我们有车辆路线问题,需要在那一周内运送100个包裹,其中2辆卡车可以装载20个包裹,不受雨水影响,B卡车可以运送40个包裹,但受雨水影响:雨水会给它带来维修费用,一周内过多的雨水会破坏它。
现在,我们可以编写一个分数计算函数,在我们的分数规则中考虑到这些因素:
尽管如此,OptaPlanner并没有为概率算法提供任何方法,这样做的概率之和(这是不平凡的)。但是,您可以插入任何提供这些功能的Java框架,为drools调用这些函数。此外,drools-chance应该会提供这种情况,但是该项目目前是不活动的(但是迟早我们会重新启动它)。
发布于 2016-03-30 07:12:27
下面是用OptaPlanner:投资组合优化进行随机优化的一个例子。
https://stackoverflow.com/questions/36174787
复制相似问题