在优化问题中,如何有效寻找函数的局部最小值一直是一个备受关注的课题。而一维线搜寻技术作为解决此问题的基本迭代方法,无疑成为了优化领域中的一个秘密武器。这种方法不仅适用于简单的单变量情况,也能被扩展到多变量的复杂情境中,帮助研究者和工程师们找到更合适的解决方案。
一维线搜寻首先会找出一个下降方向,然后计算出步长,以决定在该方向上移动的距离。
首先,让我们了解一维线搜寻的基本概念。假设我们有一个一维的函数 f,且它是单峰的,这意味着在某个区间 [a, z] 中,仅包含一个局部最小值 x*。在这样的情况下,函数 f 在 [a, x*] 之间是严格递减的,而在 [x*, z] 之间则是严格递增的。
为了找到这个最小点,可以采取几种不同的方法,其中包括零阶方法和一阶方法。零阶方法不利用导数,而仅仅依赖函数的评估。其中,三分搜寻法被广泛使用。此法通过选择两个点 b 和 c,藉由比较 f(b) 与 f(c) 的大小,逐步缩小搜寻范围。若 f(b) ≤ f(c),那么最小值必定在 [a, c] 之间;反之,则在 [b, z] 之中。
这种逐步缩小的方式,虽然每一次缩小约为 1/2,但需要进行两次函数评估,因此收敛速度是线性的,收敛率约为 0.71。若选取 b、c 使得区间 a、b、c、z 的长度相等,则搜寻区间在每次迭代中缩小 2/3,收敛率将提升为约 0.82。
斐波那契搜寻和黄金分割搜寻同样是零阶搜寻法的变体,但都仅需要一个函数评估,因而收敛效率更高,收敛率均为约0.618,这在零阶方法中是最优的。
进一步说明,一阶方法假定函数 f 是连续可微的,这意味着我们不仅可以评估函数的值,还可以计算出其导数。譬如,二分法就是一种常见的搜寻方式。在每次迭代中,如果我们能找到区间中点 c,藉由检测导数 f'(c) 的值,我们便可以确定最小值的位置。
然而,若要求达到超线性收敛,我们则需要采用曲线拟合方法。这些方法将已知的函数值用多项式来拟合,然后求出拟合函数的最小值作为新的工作点。不得不提到牛顿法,该方法使用一阶和二阶导数,当初始点接近于一个非退化的局部最小值时,会有二次收敛。
曲线拟合方法具有超线性收敛特性,当初始点接近于局部最小值时,这使得它们在许多应用场景中具有强大的适用性。
在涉及多维的情况下,尽管具体的计算过程变得更加复杂,但一维线搜寻依旧可在多维的存在下进行。它首先找出一个下降方向,然后确定步长以进行有效的优化。通常,这样的模型可以与其他方法如模拟退火相结合,以克服陷入局部极小值的风险。
透过这些方法,优化能够达到更高的效能,也能够帮助我们更好地理解数学模型背后的机制。对于寻找最佳解的渴望,无论是科研还是商业应用,一维线搜寻都展示了其不可或缺的价值。
你是否曾经想过,未来会有什么其他创新方式来优化现有的线搜寻技术呢?