搜索方法和优化方法的含义

计算科学 优化
2021-12-23 07:16:44

我想知道“搜索方法”和“优化方法”之间有什么区别和关系?

特别是在解决优化问题时?我强调解决优化问题的上下文,因为我猜搜索方法不仅仅是解决优化问题,还包括非优化问题?

我的困惑来自以下事实:

  1. 有一些优化方法,命名为“xxx 搜索”,例如 本地搜索随机搜索、....。“搜索”究竟是什么意思?我想知道是否有不是“搜索”的优化方法?
  2. 同样在Spall 的《随机搜索和优化简介》这本书中,我不太明白“搜索”和“优化”在标题和内容上的区别。为什么需要区分“搜索”和“优化”,如果它们的含义相同?或者“优化”是指随机优化任务/问题而不是优化方法,而不是“搜索”是指解决优化任务/问题的方法?
  3. 搜索和优化中没有免费的午餐再次区分了搜索和优化。

谢谢并恭祝安康!

2个回答

search = 尝试找到一个满足所有约束的可行点(并且为了优化,比目前找到的更好的点),通常只使用函数值。

局部搜索:通过在相邻点之间搜索来改进可行点(或与可行性度量的距离)。

随机搜索:使用非确定性标准进行搜索以选择试验点。

这与是否给出优化标准无关。特别是,在“搜索和优化中没有免费的午餐”中,搜索是指寻找可行性,而优化是指寻找最优性。

一般来说,对于优化问题,搜索和优化是等价的。但是,它们的含义会影响该术语的使用。

优化方法=解决优化问题的方法,通常(但不一定)使用梯度(或次梯度甚至Hessian)信息。

能够使用梯度极大地提高了优化方法的效率。在这种情况下(即,已知梯度)仅在“线搜索”组合中使用术语搜索,这意味着沿着所选方向搜索更好的点。

“搜索”和“优化”在术语上的区别在于搜索是指找到一个x所以对于给定的g(x)我们有g(x)=0,即我们搜索一个根。在优化中,我们希望找到一个x以便f(x)min!. 至少如果f是平滑的,那么找到这个最小值通常会转化为寻找根的问题g(x)=f(x). 换句话说,术语“搜索”来自一个更一般的问题,但对于优化问题,处理优化的事情通常会简化为处理搜索的事情。