Skip to content

算法Algorithm

Remez 交换算法

Remez exchange algorithm · Remez algorithm · 雷梅兹算法

交替解等幅方程与更换参考点,以证据上下界判断最优或近最优,并报告退化和未认证退出。

形式陈述 ​

输入为 f∈C([a,b],R)、a<b、非负整数次数上限 n,以及区间内 n+2 个有序互异参考点 a≤x0<⋯<xn+1≤b。先选任一 Pn 基 ϕ0,…,ϕn,解线性方程组

∑j=0ncjϕj(xi)+(−1)ih=f(xi),i=0,…,n+1.

这里 h 是带符号幅值,p=∑cjϕj,参考误差为 (−1)ih;非负下界写成 L=|h|。互异点保证精确系统可逆:齐次解若 h≠0,多项式值严格交替,迫使次数至多 n 的多项式有 n+1 个根;若 h=0,它在全部参考点为零,仍只能为零。

随后在整个区间寻找残差 e=f−p 的最大绝对值点 x∗,并给误差上界 U≥‖e‖∞。当 h≠0、且实际发现 |e(x∗)|>|h|,用单点交换保持旧残差的符号交替:

  • x∗ 位于两参考点之间,替换这两个邻点中与 e(x∗) 同号的那个
  • x∗<x0,同号时替换 x0,异号时删去最右点再把 x∗ 放在最左;右端情形对称
  • 并列最大点按固定规则选一个,例如取最左点

重解等幅方程并继续。若无法认证全域最大点,可把搜索结果用于生成候选,但要保留“未认证”状态;不能把某个网格最大点无条件写成全局最大点。

直觉

等幅方程让当前参考点的峰同高,交换则把被遗漏的更高峰放进来。交错下界与全域上界始终承担不同任务:前者证明所有候选都不能优于 L,后者证明当前候选不差于 U。

交换确实提高下界。对新参考点 y0<⋯<yn+1,令

wi=1∏j≠i(yi−yj).

次数至多 n 的多项式 q 满足 ∑iwiq(yi)=0,因为这是它在 n+2 点的 Lagrange 表示中 xn+1 的系数,而该系数为零。wi 的符号为 (−1)n+1−i,故 wi(−1)i 全同号。对新等幅方程相加,得到

hnew=∑iwif(yi)∑iwi(−1)i.

可将分子中的 f 换成旧残差 e,因为旧 p 的和为零。若新点上旧残差仍交替,所有绝对值至少为 |h|,并有一点严格更大,上式的绝对值是这些绝对误差以 |wi| 加权的平均,因而严格大于 |h|。这证明精确交换的进步,不等于证明任意浮点实现都会收敛。

例子与边界

对 f=x3、[−1,1]、n=1,取初始参考点 (−1,0,1/2)。等幅方程的解为

p0(x)=3x/4−1/8,h0=−1/8.

三个参考误差为 (−1/8,+1/8,−1/8)。残差导数仍为 3x2−3/4;完整检查端点及 ±1/2 得

(e0(−1),e0(−1/2),e0(1/2),e0(1))=(−1/8,3/8,−1/8,3/8).

所以 L0=1/8、U0=3/8。最大点并列时取较左的 −1/2,它位于 −1 和零之间,误差为正,故替换同号的零。新参考为 (−1,−1/2,1/2),重解得

p1=3x/4,h1=−1/4.

再次检查全区间临界点,得 U1=1/4=L1,算法凭上下界相合结束。这是实际改变参考点的一次交换,不是先给出最优解再画等高峰。

若初始参考反而取 (−1,0,1),系统给 p=x,h=0。三个采样误差全为零,区间内却在 ±1/3 有大小 2/(33) 的误差。零幅表示当前符号交换退化,只有另外证明 f=p 才能称为精确成功;否则应重选互异参考点,例如上面的非对称三点。

推论与应用

一个可复核的实现至少返回候选多项式、参考点、方程残差、L,U、全域搜索方法和退出理由。输入无效、非有限函数值、病态系统导致求解不可靠、无法找到足够交替点、点合并、重复参考集合、进步停滞或达到预定工作预算,都应返回失败或未认证候选,保留当前证据。

已认证的停止规则可以是 U−L≤τabs+τrelU,其中容差由任务给定,U 必须真为全域上界。它认证当前误差与最佳误差的差距,不一定认证所有多项式系数都已接近最优系数。浮点参考误差若只“近似等高”,应用已验证符号和实际绝对误差的最小下界,而非直接把求解器打印的 |h| 当作严密下界。

在平滑、非退化的极值结构附近,适当的 Remez 变体可以很快;一般连续函数可能有尖点、平坦极值或许多局部峰,搜索与交换规则需要相应处理。工程上常用缩放后的 Chebyshev 基或重心表示,避免把高次单项式系统的病态误当成逼近问题无解。本文不把有理函数的非线性分母问题纳入这一线性系统。

参考资料
关系图谱7 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系