黑箱优化 (BBO)
许多现实世界优化问题的黑箱性质源于以下一个或多个因素,如经典书籍Introduction to Derivative-Free Optimization或开创性论文Random Gradient-Free Minimization of Convex Functions所示,仅举几例:
数学建模中日益增加的复杂性,
科学计算的高度复杂性,
大量遗留或专有代码(修改成本过高或不可能),
噪声函数评估,
由于快速微分需要对所有中间计算进行,因此存在内存限制,
昂贵的工作时间(计算偏导数的工作时间通常比计算时间要昂贵得多),
梯度概念在非光滑情况下的非平凡扩展,
一个简单的准备阶段。
以下是BBO的一些常见问题特征:
在各种黑箱设置中,梯度信息的不可用性,例如
[Moon et al., 2023, Nature Medicine], [Wang et al., 2023, Nature Mental Health], [Xie et al., 2023, Nature Communications], [Mathis et al., 2023, Nature Biotechnology], [Muller et al., 2023, ICML], [Tian et al., 2023, KDD], [Schuch et al., 2023, JAMA], [Cowen-Rivers, 2022, Doctoral Thesis], [Flam-Shepherd et al., 2022, Nature Communications], [Roman et al., 2021, Nature Machine Intelligence], [Beucler et al., 2021, PRL], [Shen et al., 2021, Nature Communications], [Gonatopoulos-Pournatzis et al., 2020, Nature Biotechnology], [Valeri et al., 2020, Nature Communications], 以及来自AutoML社区的更多研究;
[Chen et al., 2020, Science Robotics], [Schumer and Steiglitz, 1968, TAC], [Karnopp, 1963, Automatica], [Ashby, 1952] 来自 自适应控制 社区;
[Brooks, 1959, OR], [Brooks, 1958, OR] 来自运筹学(OR)社区;
没有一个精确的数学模型(例如,由于复杂的模拟),例如
不可微性,例如
当自动微分不可行时(提供无信息梯度)[Li et al., 2023, NeurIPS];
非线性,例如
多模态/非凸性,例如
病态条件,例如
噪声/随机性,例如
有时甚至是不连续性,例如
大海捞针
简而言之,对于黑箱问题,算法唯一可访问的信息是通过采样评估,这可以由算法自由选择,从而引出黑箱优化(BBO)或零阶优化(ZOO)或无导数优化(DFO)或无梯度优化(GFO)或全局优化(GO)。“我们曾经……但觉得需要一个统一的视角。……这绝对是有趣且具有挑战性的,而且,并非偶然,非常有用。”
没有免费的午餐定理 (NFL)
正如[Wolpert&Macready, 1997, TEVC]中数学证明的那样,“对于任何算法,任何在一类问题上的提升性能都会被另一类问题上的性能所抵消。”
这可能部分解释了为什么在实践中存在大量来自不同研究社区的优化算法。然而,不幸的是并非所有的优化器都设计良好且被广泛接受。请参阅设计哲学部分进行讨论。
大规模黑箱优化(LBO)的维度诅咒
可以说,所有黑箱优化器都有可能遭受臭名昭著的“维度诅咒”(在组合优化场景中也称为组合爆炸),因为所有黑箱优化器的本质(驱动力)在实践中都基于有限的采样。请参考例如[Nesterov&Spokoiny, 2017, FoCM]进行理论分析。
幸运的是,对于一些实际应用,可能存在一些可用的结构。如果能够以自动化的方式(通过精心设计的优化策略)有效地利用这些结构,那么收敛速度可能会显著提高,如果可能的话。因此,任何通用的黑箱优化器可能仍然需要在利用具体问题结构和探索优化器的整个设计空间之间保持一种微妙的平衡。
通用优化算法
注意
“鉴于黑箱优化算法和优化问题的丰富性,如何最好地将算法与问题匹配。”—[Wolpert&Macready, 1997, TEVC]
“显然,在单一问题上评估和比较算法不足以确定其质量,因为它们的许多优势在于其性能能够推广到大量问题类别。可以说,优化研究的目标之一是为从业者提供可靠、强大且通用的算法。” 作为一个用于BBO的库,自然的选择是首先优先考虑并覆盖通用优化算法(与高度定制版本相比),因为对于大多数现实世界的黑箱优化问题,(可能有用的)问题结构通常事先是未知的。
以下常见标准/原则可能被高度期望满足通用优化算法:
有效性和效率,
优雅(美丽),
灵活性(多功能性),
鲁棒性(可靠性),
可扩展性,
简洁性。
可以说,通用黑箱优化器的美应该来自于理论的深度和/或实践的广度,尽管审美判断有些主观。我们相信,设计良好的优化器可以在黑箱优化的历史中通过时间的考验。有关最近的批判性讨论,请参考例如“基于隐喻的元启发式算法,行动的呼吁:房间里的象”和“基准测试和进化计算方法分析中的一个关键问题”。
对于基准测试连续优化器,请参考例如 [Hillstrom, 1977, ACM-TOMS], [More et al., 1981, ACM-TOMS], [Hansen et al., 2021, OMS], [Meunier et al., 2022, TEVC]。正如[More et al., 1981, ACM-TOMS]中所说,“不在大量函数上测试算法很容易让怀疑者得出结论,认为该算法是针对特定函数进行调整的”。
基于人口的优化 (POP)
注意
“进化方法解决问题的本质是将可能的解决方案等同于种群中的个体,并根据解决方案的质量引入适应度的概念。”—[Eiben&Smith, 2015, Nature]
“似乎无导数算法和进化策略是完全不同的算法,因为它们源自不同的思想。然而,它们密切相关。”—[Ye&Zhang, 2019]
基于群体的(特别是基于进化和群体的)优化器(POP)通常在处理黑箱问题时具有以下优势,特别是与基于个体的优化器相比:
很少的先验假设(例如,具有有限的知识偏见),
灵活的框架(易于通过例如文化算法等与特定问题知识集成),
稳健的性能(例如,关于噪声扰动或超参数),
多样化的解决方案(例如,用于多模态/多目标/动态优化),
新颖性(例如,超越设计问题的直觉)。
有关POP的详细信息(模型、算法、理论和应用),请参考以下写得很好的评论或书籍(仅举几例):
Miikkulainen, R. 和 Forrest, S., 2021. 从生物学角度看进化计算. 自然机器智能, 3(1), pp.9-15.
Schoenauer, M., 2015. 第28章:进化算法。科学中的进化思维手册。Springer出版社。
Eiben, A.E. 和 Smith, J., 2015. 从进化计算到事物的进化. Nature, 521(7553), pp.476-482.
De Jong, K.A., Fogel, D.B. 和 Schwefel, H.P., 1997. 进化计算的历史. 进化计算手册. 牛津大学出版社.
Forrest, S., 1993. 遗传算法:自然选择原理应用于计算。科学, 261(5123), pp.872-878.
关于连续随机搜索的原则设计,可以参考例如, [Nikolaus&Auger, 2014]; [Wierstra et al., 2014, JMLR],仅举几例。
对于每个算法家族,我们尽力在其API文档中提供一些广泛认可的参考资料。 你也可以查看这个在线项目 以获取在众多(虽然不是全部)顶级以及专注于EC/SI的期刊和会议上发表的进化计算(EC)和群体智能(SI)的(不断增长的)论文列表。
BBO的局限性
注意
“如果你能获得干净的导数(即使需要相当大的努力)并且定义你的问题的函数是平滑且无噪声的,你不应该使用无导数方法。也许无导数方法最主要的限制是,在串行机器上,通常不合理的尝试优化超过几十个变量的问题,尽管一些最新的技术可以处理数百个变量的无约束问题”—[Conn et al., 2009, Introduction to Derivative-Free Optimization]
非常重要的一点是,并非所有优化问题都适合使用黑箱优化器。事实上,它们在科学和工程中的任意滥用已经引起了广泛的批评。尽管并非总是如此,但黑箱优化器通常被视为“搜索方法的最后选择”。当然,“需要梯度知识的一阶方法在实践中并不总是可行的。”(来自[Mhanna&Assaad, 2023, ICML])