如果给定了起点而且准确知道模型数据,采用传统搜索方法查找局部解决方案效果很好。但是,对于不确定性很高的实际问题,采用这些方法无法搜索全局解决方案。优化领域最近开发设计了高效的搜索方法,能够为涉及不确定性元素的复杂问题查找最优解决方案。
OptQuest 纳入了启发式演算法来指引搜索算法获得更好的解决方案。这种方法采用适应性记忆形式来记住之前行之有效的解决方案,将其重组成更好的新解决方案。由于这项技术并不采用普通解算程序的爬山方法,因此不会陷入局部解决方案,也不会因干扰性(不确定的)模型数据而失去效用。您可以在《Oracle Crystal Ball Reference and Examples Guide》中 OptQuest 部分列出的公共参考资料中找到有关 OptQuest 搜索方法的更多信息。
在您描述优化问题(通过选择决策变量和目标,可能还要施加约束和要求)后,OptQuest 会调用 Crystal Ball,根据模拟模型求出几组不同的决策变量值。OptQuest 会求出模拟模型统计输出的值,对其进行分析并将其与之前运行模拟的输出合并在一起,确定要求出的一组新值。这是相继生成几组新值的迭代过程。这些值并非全都能改善目标,但是经过一段时间,该过程可以呈现一个非常有效的轨迹,进而得到最佳解决方案。
如以下流程图中所示,搜索过程一直继续,直到 OptQuest 达到某些终止标准为止,终止标准是对搜索所用时间长度或最大模拟次数的限制。