研究筆記

為甚麼重新開始,反而更快找到目標?

重新開始看似浪費進度,卻可能消除隨機搜尋中最漫長的等待。透過精確首次到達實驗,本文分辨平均速度、尾端風險、重啟成本,以及繼續前進反而更好的情況。

2026年9月9日 · 約 24 分鐘閱讀

一個搜尋程序已經運行了很久。它沒有報錯,也沒有宣布失敗,只是遲遲找不到目標。你可以繼續等,或者把它送回初始狀態,再試一次。重新開始似乎很浪費:之前走過的路、累積的運動,都不再算數。繼續前進則好像更合理,畢竟已經找了這麼久,總應該比剛出發時更接近成功吧?

問題恰好藏在「總應該」這三個字裏。有些搜尋確實會累積有用進度,有些卻只是四處游走。一段漫長而沒有結果的歷程,可能不是即將得到回報的投入,而是一次特別不幸的遠行。返回起點,既可能放棄一個很有希望的位置,也可能讓搜尋者離開一個比起點更不利的位置。我們不能只憑已經花掉多少時間,就知道現在屬於哪一種情況。

不妨想像一個假想搜尋裝置,在一條狹窄、向遠方無限延伸的通道上移動。目標位於其中一端,裝置可以被還原到原來的出發位置,但我們不利用它當前的位置來決定甚麼時候還原。這是一個數學思想實驗,不是已測試的機械人,也不是實際搜救程序。刻意簡化環境,是為了單獨研究一個看似矛盾的問題:主動打斷搜尋,能否令搜尋更快完成?

答案取決於「更快」究竟指甚麼。某項介入可以改善平均完成時間,卻不代表每一次搜尋都因此受益。由平均值選出的策略,也不一定由中位數選出。假如重啟完全免費,一個策略可能很好;一旦每次重啟都要等待,同一策略便可能變差。如果搜尋本身已有相當可靠的方向性,回到起點更可能是在破壞進展,而不是拯救一段不幸的歷程。

以下會用一個可推導、可獨立核對的模型,以及精確抽樣的模擬,逐步分開這些問題。目的不是勸人多試幾次,而是釐清:重啟失去了甚麼、更新了甚麼,以及我們真正想改善的是等待時間分布的哪一部分。只要這幾點沒有說清楚,「不要放棄」與「重新出發」都還只是直覺,而不是能夠接受檢驗的策略。

這個搜尋實驗發現了甚麼

在沒有方向性漂移的情況下,一個從不重啟的搜尋,最終找到目標的機率是一,期望完成時間卻是無限大。兩句話並不矛盾。幾乎每一次搜尋都會結束,但是極少數、極漫長的搜尋,足以令整體等待時間沒有有限的平均值。這不是電腦計算溢位,而是該機率模型本身的性質。

適量的隨機重啟會改變這個結果。當初始距離與擴散係數都設為一,而且重啟不花時間,理論上最好的重啟率約為 2.539638,相應平均完成時間為 1.544139。在相近的測試速率 2.5 下,50,000 次獨立搜尋得到的樣本平均為 1.545443,Monte Carlo 標準誤為 0.006903;同一速率的理論平均為 1.544195。模擬與推導在抽樣誤差範圍內吻合。

實驗亦保留了重啟沒有那麼吸引的情況。每次重啟加入固定成本後,較合適的重啟率下降。如果向目標前進的漂移已經夠強,在所研究的固定速率策略中,不重啟反而有最好的平均表現。這些結果不是要藏起來的反例,而是理解重啟為甚麼有效所必需的另一半。

本文是文獻引導的機制解說與合成實驗,不是新的定理,也沒有宣稱已驗證某個真實搜尋系統。經典擴散重啟結果來自 Evans 與 Majumdar 的研究;這裏著重把同一個可控制的比較拆開,讓讀者看見哪個機制改變了結果,以及哪個效能指標改變了決策。Evans 與 Majumdar,2011

一個可能愈走愈遠的搜尋

把目標放在零點,搜尋者從正距離 x0x_0 出發。在還未被重啟之前,位置遵循

dXt=vdt+2DdWt,X0=x0>0.\begin{aligned} dX_t&=-v\,dt+\sqrt{2D}\,dW_t,\\ X_0&=x_0>0. \end{aligned}

其中 DD 控制擴散強度:在一段短時間內,隨機位移的變異數等於 2D2D 乘以該段時間。布朗運動 WtW_t 提供彼此獨立的隨機增量。參數 v0v\geq0 則加入朝向目標的平均運動;因為目標在左方,所以漂移項帶負號。vv 愈大,方向性進展愈強;v=0v=0 時,只剩下沒有固定方向的擴散。

零點是吸收邊界,也就是搜尋者第一次到達那裏,整個實驗便立即結束。我們關心的是首次到達時間,而不是找到目標後還繼續移動的粒子位置。如果搜尋者曾經跨過目標,其後又回到原來一側,那次搜尋早已算作成功,不能因為後來的位置而把成功取消。這個定義會直接影響模擬應該如何處理兩次觀測之間發生的事件。

通道向遠離目標的一側無限延伸,這不是無關緊要的背景設定。若在遠方加上一面反射牆,搜尋者便不可能走到任意遠的位置,等待時間分布也會改變。同樣地,會移動的目標、只能以某個機率被偵測的目標,以及會記住已搜尋區域的裝置,都需要不同模型。我們保留無界、無記憶的設定,是因為它的首次到達分布能夠在模擬之外獨立求得。

搜尋進行時,另一個獨立的指數時鐘以速率 rr 觸發重啟。每次觸發,位置返回 x0x_0;未來的布朗增量與新時鐘都獨立於之前的歷程。固定成本 cc 表示恢復初始條件所需要的時間。在這段等待期間,搜尋與重啟時鐘都暫停。成功時不用支付重啟成本,第一次嘗試之前也不另外收取準備時間。這些安排把「重新開始」變成一個明確的隨機操作,而不只是文字上的比喻。

上方分開標示目標與重啟位置,下方以示意時間軸區分主動搜尋、兩段重啟成本,以及最後成功。
圖 1。模型把空間位置與經過時間分開處理。下方時間軸是明確指定的示意歷程,不是模擬軌跡。藍色代表主動搜尋,斜線區段代表重啟成本;會打斷搜尋的時鐘只在主動搜尋期間運行。

數值實驗採用無量綱單位,設 x0=D=1x_0=D=1。這不是說每個真實搜尋都具有相同距離或擴散強度。自然的擴散時間尺度是 x02/Dx_0^2/D,所以把結果用到有物理單位的情境,必須先估計該情境自己的距離與擴散係數。重新標示座標軸可以轉換單位,卻不能證明布朗運動適合描述某個應用;單位換算與模型驗證是兩件不同的工作。

幾乎必然成功,不等於平均等待有限

先考慮 v=r=0v=r=0,即沒有漂移,也沒有重啟。用 T0T_0 表示這個不受打斷的搜尋第一次到達零點的時間:

T0=inf{t0:Xt=0}.T_0=\inf\{t\geq0:X_t=0\}.

此時首次到達時間的機率密度為

f0(t)=x04πDt3×exp ⁣(x024Dt),t>0.\begin{aligned} f_0(t)&=\frac{x_0}{\sqrt{4\pi D t^3}}\\ &\quad\times\exp\!\left(-\frac{x_0^2}{4Dt}\right),\quad t>0. \end{aligned}

理解這個式子的一種方法,是在布朗軌跡首次碰到目標後,把它反射過來。反射所產生的對稱關係,讓「曾經跨過目標」的機率,可以用高斯位移的機率表示。對到達機率隨時間的變化取導數,便得到上面的密度。值得留意的是,這裏是「時間」的分布,不是固定某個時間後「位置」的分布。後者呈高斯形狀,並不代表前者也具有高斯分布那種快速衰減的尾端。

尚未完成的機率,也稱存活機率,等於

S0(t)=Pr(T0>t)=erf ⁣(x04Dt)x0πDt.\begin{aligned} S_0(t)&=\Pr(T_0>t)\\ &=\operatorname{erf}\!\left(\frac{x_0}{\sqrt{4Dt}}\right)\\ &\sim\frac{x_0}{\sqrt{\pi D t}}. \end{aligned}

這裏的「存活」只表示搜尋仍未結束,沒有任何生物存亡的意思。由於 S0(t)S_0(t) 最終趨近零,所以搜尋者最終找到目標的機率是一。然而,趨近零的速度很慢:在長時間尺度下,未完成比例只按時間的平方根倒數下降。把等待時間增加很多倍,剩下來的困難搜尋仍可能佔據不能忽略的比例。

對任何非負等待時間,期望值都等於存活曲線下方的面積:

E[T0]=0S0(t)dt=.\mathbb E[T_0]=\int_0^\infty S_0(t)\,dt=\infty.

曲線高度雖然一路下降,整片面積卻沒有有限上限。幾何上可以這樣想:尾端愈來愈低,但同時向右延伸得無限長;高度下降得不夠快,便無法把那片面積壓成有限值。這正是「最終會成功」與「平均要等多久」的差別。期望值不只在乎是否有終點,也在乎有多少機率被分配到極大的時間位置。

無重啟搜尋的存活曲線緩慢下降,而限制平均等待隨觀測期限延長持續增加,顯示有限期限不等於有限母體平均。
圖 2。零漂移、不重啟、初始距離與擴散係數皆為一。曲線是解析結果,標記來自 50,000 次完整模擬。下圖只把等待積分至指定期限;得到有限值,並不代表不設期限的平均也有限。

只要抽出的時間都是有限值,有限次模擬仍然會給出有限的算術平均。這不會推翻理論,因為電腦只從一個母體平均無限大的分布中,取出了有限個樣本。加入下一批搜尋,可能剛好抽到一個罕見而巨大的時間,令樣本平均突然改變。若在這裏照常報告一個「有限母體平均」的信賴區間,便是在估計模型根本不存在的量,而不是單純把誤差算得不夠準。

對有限時間的決策,更合適的問題是:在指定期限之前,我們實際要花多少時間等待?可以定義限制平均

m(τ)=E[min(T0,τ)]=0τS0(t)dt.m(\tau)=\mathbb E[\min(T_0,\tau)] =\int_0^\tau S_0(t)\,dt.

所有尚未完成的搜尋,都貢獻完整的觀測期限,而不是從平均值中消失。這個量最多等於 τ\tau,也有清楚的實際解讀:完成得早的搜尋計入真正所花時間,未完成的搜尋則計入截至期限已花的時間。不過,它仍然不同於最終完成時間的期望。對短期限最有利的策略,不一定也是對整個等待分布最有利的策略,兩者不能因為都帶有「平均」二字便互相替代。

這裏尤其容易出現一種選擇偏差。假如研究在固定時間停止,只對已完成的搜尋取平均,最慢的搜尋便會被系統性排除。結果看起來很好,可能恰恰因為最麻煩的觀測沒有被計入。把未完成比例與限制平均一起呈現,才能讓讀者看見期限的影響,而不是把被挑選過的成功樣本當成整體表現。圖 2 的下半部因此不是附加裝飾,而是在提醒我們比較的量究竟是甚麼。

新的一次嘗試,如何改寫等待時間

RR 表示一次嘗試期間的指數重啟時間。它的存活機率為

Pr(R>t)=ert,r>0.\Pr(R>t)=e^{-rt},\qquad r>0.

這個時鐘與搜尋獨立,既不偵測某一次嘗試是否沒有前景,也不會因為等待已久而愈來愈不耐煩。在每一刻主動搜尋期間,它都具有相同的瞬時重啟率。因此,有些很快就能成功的嘗試,也會不幸被打斷。重啟仍可能改善平均,是因為避免極長失敗遠行所節省的時間,有機會補償失去這些成功機會的代價,而不是因為時鐘總能作出聰明選擇。

Tr,cT_{r,c} 表示包括所有重啟成本的總完成時間。觀察第一次嘗試,便得到更新關係:

Tr,c=min(T0,R)+1{RT0}(c+Tr,c).T_{r,c}=\min(T_0,R) +\mathbf 1_{\{R\leq T_0\}}\bigl(c+T'_{r,c}\bigr).

右上角的撇號表示一個獨立、但分布完全相同的新副本。如果成功先發生,後面的項便是零;如果重啟先發生,我們先花掉時鐘所指出的時間,再付出成本 cc,然後重新面對同一個完整問題。這個角度稱為更新,也就是 renewal:每次重啟之後,統計上的起點恢復原狀。Pal 與 Reuveni 的研究提供了處理此類問題的一般框架,不需要先畫出搜尋在空間裏的每一個中間位置。Pal 與 Reuveni,2017

pr=Pr(T0<R)p_r=\Pr(T_0<R),表示一次嘗試能夠在時鐘觸發之前成功的機率。對更新關係取期望,再把未知的總平均移到同一側,得到

E[Tr,c]=E[min(T0,R)]+c(1pr)pr.\mathbb E[T_{r,c}] =\frac{\mathbb E[\min(T_0,R)]+c(1-p_r)}{p_r}.

分子是一次嘗試所花的平均主動時間,加上該次嘗試可能造成的重啟成本;分母則把「可能需要重複很多次才成功」計算進去。平均嘗試次數並不是一,因為每次失敗都會把過程送回同一個起始分布。這也說明,不能在無成本的平均搜尋時間上只加一次 cc,就當成已計入重啟代價。真正應該付多少次,取決於成功之前發生了多少次失敗。

利用兩個時鐘的獨立性,一次嘗試的平均主動時間可以寫成

E[min(T0,R)]=0S0(t)ertdt=1prr.\begin{aligned} &\mathbb E[\min(T_0,R)]\\ &\qquad=\int_0^\infty S_0(t)e^{-rt}\,dt\\ &\qquad=\frac{1-p_r}{r}. \end{aligned}

第一個等號仍然使用「平均等於存活曲線下面積」的原理;只是這次必須同時滿足搜尋未成功、重啟未觸發,兩個機率因此相乘。最後一個等號可以透過對首次到達密度作積分分部得到。另一方面,若先給定一個未受打斷的搜尋原本需要多久,再問重啟時鐘能否等到那時,便有

pr=E[erT0].p_r=\mathbb E[e^{-rT_0}].

這就是首次到達分布在重啟率處的拉普拉斯變換。它出現在這裏,不是為了把推導寫得更抽象,而是因為有明確的機率解釋:原本能在時間 tt 成功的嘗試,要先避過獨立時鐘,而避過的機率正是 erte^{-rt}。原本需要愈久的嘗試,完整避過重啟的機會便愈小。重啟因此改變了哪些嘗試有機會走到原來的終點。

對漂移擴散模型,這個變換也可以透過後向方程求出。若 u(x)u(x) 是從位置 xx 出發、趕在重啟之前到達目標的機率,則

Du(x)vu(x)ru(x)=0,u(0)=1,u()=0.\begin{aligned} Du''(x)-vu'(x)-ru(x)&=0,\\ u(0)=1,\qquad u(\infty)&=0. \end{aligned}

零點的邊界值是一,因為已經在目標位置就算立即成功;當起點愈來愈遠而重啟率保持為正,及時到達的機會則趨近零。選取符合這兩個條件的有界指數解,便得到

pr=exp ⁣[x02D(vv2+4Dr)].p_r=\exp\!\left[\frac{x_0}{2D} \left(v-\sqrt{v^2+4Dr}\right)\right].

代回更新關係,得到本文實驗最重要的平均時間預測:

E[Tr,c]=1prpr(1r+c).\mathbb E[T_{r,c}] =\frac{1-p_r}{p_r}\left(\frac1r+c\right).

這個式子把提高重啟率的兩種相反作用放在一起。單次嘗試會變短,但每次嘗試成功的機會也會下降。較快的打斷時鐘,並不是一個移動得更快的搜尋裝置;它只是以另一種方式,把可用時間分配給多次獨立嘗試。理解了這點,便不難預期「愈常重啟愈好」不可能是普遍結論。

模擬實際比較了甚麼

我們測試漂移 v=0,1,4v=0,1,4,以及重啟率 r=0,0.1,0.5,1,2.5,5,10r=0,0.1,0.5,1,2.5,5,10。21 個參數組合,每組各有 50,000 次獨立、完整的搜尋,合共 1,050,000 次。所有長時間等待都被保留,沒有因為超出圖表的橫軸或某個展示期限,就把那次搜尋停止或刪除。繪圖期限決定我們展示哪一段分布,不決定哪些搜尋可以進入資料。

模擬沒有把布朗軌跡切成一小格一小格的時間步,而是直接從精確分布抽出不受打斷時的首次到達時間。沒有漂移時,使用 Lévy–Smirnov 分布;有正漂移時,使用逆高斯分布。這個抽出的到達時間,再與獨立指數時鐘競賽,較早發生的事件決定搜尋是結束,還是進入下一次嘗試。因為重啟確實恢復同一分布,這個事件層次的模擬與模型相容。

這種做法避免了一個具體的數值問題:在離散時間記錄的位置之間,軌跡可能已經穿過吸收目標。較粗的積分器若只檢查兩個端點,就可能漏掉成功,憑空加上一段其實不應存在的等待。精確首次到達抽樣消除了這個模型內的時間步誤差,但並沒有消除「模型是否適用於真實情境」的不確定性。精確計算一個假設模型,和證明那個模型描述現實,仍然是不同層次的問題。

模擬分別記錄主動搜尋時間與重啟次數,再把四種成本 c=0,0.1,0.5,1c=0,0.1,0.5,1 套用到同一批歷程。這是配對比較,不是四個獨立實驗。它成立的原因是成本期間時鐘暫停,而且每次嘗試都從原狀態重新開始;在這些假設下,改變成本不會改變主動嘗試的先後序列。成本只是增加每次重啟之間的等待,而不會偷偷改變下一次成功的機率。

平均時間的解析預測,一方面與模擬的 Monte Carlo 標準誤比較,另一方面也與不重啟存活函數的獨立數值積分比較。所有有限平均案例都在五個估計標準誤之內,最大絕對差距約為 2.65。這種吻合核對的是實作與抽樣的一致性,不能把一條假想通道變成已通過實地驗證的環境。文中的信心來自清楚知道哪一層已被檢查,而不是把不同層次的證據混在一起。

經驗存活曲線比較不重啟與速率 0.5、2.5、10,顯示適量重啟減少長尾,但過密打斷會失去部分改善。
圖 3。零漂移、零成本下的完成時間尾端,每個速率有 50,000 次搜尋。曲線較低,表示在該時刻仍未完成的搜尋較少。圖中是沒有信賴帶的經驗估計;對數軸不畫零存活觀測,並不表示母體風險等於零。

在重啟率 2.5 下,時間 5 的未完成比例是 0.04018,時間 10 則是 0.00166。到時間 30,這一組已經沒有未完成的搜尋。最後一句描述的是 50,000 次觀測,不是任何搜尋都必定在時間 30 之前完成的保證。模型仍然容許一連串異常多的失敗嘗試;有限資料沒有看見這些情況,不等於它們在機率上已被排除。

圖中亦不能回答另一個更強的問題:某一次重啟搜尋,是否一定比「擁有完全相同未來」的某一次不重啟搜尋更快?這裏比較的是獨立樣本所描述的策略分布,不是逐條軌跡的因果配對。即使某個統計指標在分布層次改善,也不能保證每位搜尋者、每次執行都會親身得到相同好處。這個區分在解讀介入策略時尤其重要。

為甚麼太少與太多重啟都可能很慢

v=c=0v=c=0,平均時間便簡化為

E[Tr,0]=ex0r/D1r.\mathbb E[T_{r,0}] =\frac{e^{x_0\sqrt{r/D}}-1}{r}.

rr 非常小,時鐘很少打斷一次異常漫長的遠行。於是,隨著 rr 趨近零,平均時間再次沒有上限。另一端,當 rr 非常大,每次嘗試幾乎還未來得及穿越初始距離,就已被時鐘打斷。雖然每次失敗都很短,但這些短失敗會大量累積,最後同樣形成很長的總等待。單次嘗試縮短,與整個問題更快完成,不能被看成同一件事。

兩個極端之間存在一個平衡。引入無量綱速率變數 z=x0r/Dz=x_0\sqrt{r/D},對平均時間微分,可以得到正的駐點所滿足的條件:

z=2(1ez),r=Dz2x02.z_*=2(1-e^{-z_*}), \qquad r_* = \frac{D z_*^2}{x_0^2}.

非零解約為 1.593624。這個方程同時也有零解,但零不是具有有限平均時間的最小點;不能只因為數值求根找到零,就把它報告為最優速率。回到 x0=D=1x_0=D=1,便得到前面提到的結果。這裏的尺度關係與數字本身同樣重要:初始距離改變時,適合的重啟率按距離平方的倒數改變;擴散係數改變時,則按比例改變。

平均完成時間對重啟率呈中間較低的解析曲線,模擬點與誤差棒核對曲線,星號標示解析最優點。
圖 4。零漂移、零成本的平均完成時間。曲線是解析結果;方形標記是每組 50,000 次搜尋的平均,誤差棒為平均加減 1.96 個 Monte Carlo 標準誤所構成的逐點近似 95% 區間。星號是解析最優點,不是從帶抽樣雜訊的點擬合出來的最低點。部分誤差棒比標記本身更小。

如果真實應用的參數本身不確定,就沒有理由把操作設定調到數值上極其精確的最優點。一段相對平坦的低值區域,有時比很多位小數更有決策意義。這次測試的速率 2.5 已經非常接近解析最優率,兩者對應的理論平均差距很小。實驗核對的是權衡的形狀與量級,不是證明第六位小數對實際操作具有重要意義。結果寫得精細,並不表示模型輸入已經知道得同樣精細。

最優化亦必須有清楚的策略範圍。我們只調整與位置無關、具有固定速率的泊松重啟,沒有比較所有確定時間表、位置感知規則或自適應策略。若直接把它稱為「最好的搜尋策略」,便會把一個精確但有範圍的結論,擴張成沒有被支持的全面主張。圖上的最低點,只回答這一族時鐘之間應該怎樣選擇,並不把其他可能的決策方法一併排除。

平均的搜尋,與特別不幸的搜尋

平均值只是描述分布的一種方法,並不是效能的唯一意思。中位數是有一半搜尋已完成的時間;第 90 百分位留下十分之一未完成,第 99 百分位則留下百分之一。對期限敏感的應用,可能更在乎其中某個尾端機率,而不是總體平均。研究者若沒有先說清楚目標,就可能在計算完全正確的情況下,選出一個不符合實際需求的策略。

零漂移、零成本的模擬得到以下經驗摘要。每一列都是 50,000 次完整搜尋;第一列的「無限大」指理論平均,而不是把某個有限的樣本算術值改成無限大。

重啟率平均中位數第 90 百分位第 99 百分位
0無限大1.11330.9362611.378
0.13.6781.09410.18332.623
0.52.0451.0325.30812.130
11.7091.0164.2048.751
2.51.5451.0473.5377.247
51.6721.1713.7797.581
102.2591.5735.15310.214

最明顯的變化發生在尾端,而不是原本很快就完成的搜尋。不重啟時,觀測中位數約為 1.113,第 99 百分位卻超過 2600;在重啟率 2.5 下,中位數仍接近一,第 99 百分位則降至約 7.247。換句話說,重啟最顯著的作用,是重新安排漫長等待的機率,而不只是令每一次原本已經很快的搜尋再快一點。

兩個面板分別比較樣本平均與中位數,以及完成時間的高百分位;不重啟的母體平均明確標為無限大。
圖 5。同一批零漂移、零成本搜尋,用不同摘要看見不同部分。橫軸位置代表七個已測試速率,不是連續線性速率刻度;連線只連接這些摘要。下圖使用對數時間軸。百分位是經驗估計,不是經證明的完成期限。

在這批測試值中,最小的觀測中位數出現在速率 1,最小的觀測平均則出現在速率 2.5。這只是在指定網格與指定樣本上的描述比較。我們沒有連續最優化母體中位數,也沒有替每個百分位建立不確定性區間。因此,相鄰中位數之間的小差距,不應被提升成「已精確找出普遍最優值」。圖 5 的價值在於提醒讀者,不同摘要可以提出不同問題,而不是利用小數點製造過度確定的排序。

尾端估計尤其需要小心。50,000 次觀測的第 99 百分位,大致對應約 500 個位於其後的觀測;這不是完全沒有尾端資訊,但也不是整條罕見事件分布都已被充分測量。當尾端下降得很慢,機率位置的一點不確定性,可能對應很大的時間差。表格顯示三位小數,只表示計算後作了這樣的四捨五入,不表示物理上已建立三位小數的準確性。

因此,正確的問題應該先於最優化器出現:我們想降低平均資源使用,讓大部分搜尋更早完成,還是減少違反期限的機會?這幾個目標可能在大部分參數區域方向一致,卻在最優點附近出現分歧。一起報告相關摘要,能讓這種分歧被看見,而不是藏在一個綜合分數後面。對決策而言,承認目標不同,比把所有表現壓成同一個排行榜更有用。

回到起點,並不是免費的

一次重啟可能需要重新設定裝置、重建狀態,或者等待下一次嘗試具備啟動條件。我們的 cc 只代表經過時間,不是金錢或能源。如果希望把時間成本轉成這些其他成本,便需要額外假設,例如重啟期間的耗電功率,或每次操作造成的損耗。不能因為圖上寫了「成本」,就把不同單位的代價視為同一件事。

對每一條保留下來的歷程,都有一個精確的時間分解:

Tr,c=Tactive+cNreset.T_{r,c}=T_{\mathrm{active}}+cN_{\mathrm{reset}}.

首次成功之前的失敗次數服從幾何分布,所以

E[Nreset]=1prpr.\mathbb E[N_{\mathrm{reset}}]=\frac{1-p_r}{p_r}.

重啟得頻密,就會頻密地支付成本。零漂移、速率 2.5 的觀測平均重啟次數為 3.864080,解析值為 3.860488;到了速率 10,觀測平均次數升至 22.588180。單看一次操作,每次多等一小段時間似乎不算嚴重;但當它在成功之前反覆出現,總完成時間便可能主要由這些等待構成。這也是為甚麼了解「每次花多少」還不足夠,必須同時了解「平均發生幾次」。

四條解析平均完成時間曲線呈現不同重啟成本,下方面板顯示成本增加時,合適的重啟速率逐步下降。
圖 6。零漂移下,成本 0、0.1、0.5、1 的解析平均時間。上圖曲線的標記是最優化得到的速率,下圖則連接四個已算出的最優點作視覺引導;它不是另一批模擬,也不是擬合所得的普遍定律。

零漂移時,最優化得到以下比較:

每次重啟成本最優速率最小平均時間
02.5396381.544139
0.11.5109981.842512
0.50.7059192.523783
10.4547643.079879

成本愈高,給每次嘗試多一點時間便愈合理。在這幾個無漂移例子中,最優化器沒有完全放棄重啟,因為不重啟的平均仍然無限大,而任何正的有限速率都給出有限平均。然而,這個結論綁定了特定基準與平均目標,並不表示有限成本就無關痛癢,更不表示為免費重啟調好的速率,在加入成本後仍然合適。比較「有限」與「無限」只能回答一部分問題,不能替代有限值之間的實際權衡。

重啟成本從甚麼時候開始收取,也必須清楚交代。如果每次嘗試之前都收取,包括第一次,便會多出初始準備成本;如果環境在重啟期間持續改變,下一次嘗試的分布便可能與前一次不同;如果時鐘在準備期間仍繼續運行,更可能出現新的打斷方式。關於不應期的重啟文獻討論了這些區別。本文採用較簡單的安排:只在每次失敗後支付一段固定暫停時間。Evans、Majumdar 與 Schehr,2020

搜尋時間,究竟花在甚麼地方

圖 7 不再加入另一個總分,而是拆開總時間的來源。在 c=0.5c=0.5 時,圖中分開呈現主動搜尋的樣本平均,以及平均重啟次數的一半。兩部分來自同一批已完成歷程,因此它們相加後恰好等於總時間的樣本平均,不需要假設兩部分彼此獨立,也不是用不同實驗的平均值勉強拼接而成。

堆疊柱把平均時間分成主動搜尋與重啟等待,下圖再把平均重啟次數與幾何分布理論比較,說明時間成本的來源。
圖 7。零漂移、成本 0.5 的時間分解,每個速率有 50,000 次搜尋。斜線區段是成本乘以重啟次數,不是不確定性區間。下圖比較經驗次數與幾何分布預測。柱高使用配對歷程,所以分解在樣本層次精確成立。

當某個策略表現不好,這種分解有助於找出原因。總時間很大,可能是主動遠行太久,可能是反覆準備太多,也可能兩者同時發生。不同原因指向不同的修改方向。提高重啟率,在某段範圍內可能縮短主動搜尋,卻同時增加重啟等待;只看最後的總時間,便難以分辨改善與惡化是在哪一部分產生。圖中的分解把這種抵銷直接放到讀者面前。

配對方式亦避免了一種不必要的比較雜訊。如果不同成本使用不同亂數歷程,我們看到的差距會混合兩部分:確定性的計時改變,以及兩批搜尋剛好抽得不同。固定主動歷程,便能單獨看成本效應。不過,若成本本身會改變搜尋動力學,同樣的配對就不成立。配對的理由來自模型假設,而不是因為研究者偏好更整齊、更容易比較的曲線。

甚麼時候,繼續前進才是較好的決定

現在加入方向性進展。對 v>0v>0,不受打斷的漂移擴散搜尋具有

E[T0]=x0v,Var(T0)=2Dx0v3.\mathbb E[T_0]=\frac{x_0}{v}, \qquad \operatorname{Var}(T_0)=\frac{2Dx_0}{v^3}.

無限平均的基準消失了。重啟現在必須擊敗一個有限的替代方案,而不只是把發散的期望變成有限。當 v=1v=1,不重啟的平均是一;若重啟免費,最佳固定速率約為 1.372008,平均為 0.850953。適量重啟仍然有幫助,但改善幅度已遠小於無漂移時那種由無限變成有限的鮮明比較。基準變得可靠,介入能帶來的好處也跟著改變。

v=4v=4,不重啟的平均為 0.25。對這次檢查的四種成本,最優化都選擇不重啟。例如在速率 2.5、零成本下,解析平均約為 0.292961,已經比繼續前進更慢;若成本為一,同一速率的平均則變成約 1.025365。原本能拯救漫遊搜尋的機制,現在正在打斷相對可靠的進展。並不是重啟的定義變了,而是它所介入的基礎過程變了。

漂移一與漂移四的兩個面板,將不同成本的重啟策略與有限的不重啟平均比較,保留重啟反而拖慢的結果。
圖 8。具有方向的搜尋控制組,初始距離與擴散係數皆為一。曲線是解析平均,標記是每組 50,000 次搜尋的平均;配色、線型與標記區分四種成本。黑色虛線是不重啟的精確平均 1 與 0.25。同一速率的各種成本重用相同主動歷程。

一個局部計算可以解釋這種轉變。假設不重啟的完成時間有有限平均 mm,也有有限二階矩。把它的拉普拉斯變換在零附近展開,就能得到剛開始加入少量重啟時,平均時間的變化方向:

dE[Tr,c]drr=0=m2Var(T0)2+cm.\left.\frac{d\mathbb E[T_{r,c}]}{dr}\right|_{r=0} =\frac{m^2-\operatorname{Var}(T_0)}{2}+cm.

CV=Var(T0)/m\mathrm{CV}=\sqrt{\operatorname{Var}(T_0)}/m 表示變異係數,則少量重啟改善平均的條件為

CV2>1+2cm.\mathrm{CV}^2>1+\frac{2c}{m}.

較大的相對變異,可以令重啟有利;準備成本則把所需的變異門檻提高。對本例,CV2=2D/(vx0)\mathrm{CV}^2=2D/(vx_0),所以 v=1v=1v=4v=4 分別位於零成本局部條件的不同兩側。當 v=1,c=0.5v=1,c=0.5,一階導數恰好是零,單靠這個結果不能判斷全域最優點,仍然必須檢查完整平均曲線。導數告訴我們起步時往哪邊走,不會自動代替整條曲線的比較。

這個展開不適用於零漂移、平均無限大的情況,因為推導需要的矩在那裏並不存在。它也只是在說「加入很小的重啟率」會怎樣,不是在證明更大的速率都會更好。把這些條件保留在解釋裏,不是額外加上的管理限制,而是公式本身的意義。忽略條件,便可能把一個正確的局部判斷用到完全不同的問題上。

建議重新開始之前,應該先量度甚麼

開首的問題像是在談堅持,模型卻把它轉化成資訊與時間分配的選擇。若要把結果帶到另一個情境,首先必須確認:令每次嘗試成為「更新」的那些假設,在那個情境中是否合理。單純見到一個重新啟動按鈕,並不足以證明按下它之後,統計上的問題真的回到原點。

第一,重啟是否確實恢復同一個起始分布?會保留學習資訊的求解器、電池持續耗損的裝置,以及在準備期間不停改變的環境,都不會開始一個與原嘗試完全獨立、同分布的新副本。這些記憶可能提高重啟的價值,也可能降低它的價值。它們需要進入模型,而不是因為更新公式很好用,就把不能更新的狀態默默忽略。

第二,決策者真的只能看見已經經過多少時間嗎?本文的時鐘不看位置,也不看進展證據。如果搜尋者知道自己已接近目標,依狀態決策的策略或許能避免一次特別可惜的打斷。如果觀測只有完成時間,估計尚未完成者的剩餘等待分布便更重要。最好的策略取決於作決定當下能取得的資訊,而不只取決於事後我們可以算出的整體平均。

第三,成功究竟如何定義?我們假設目標固定而且完全吸收,第一次到達就算完成。偵測失敗、移動目標、多個可能結果,都會改變完成時間的分布。如果重啟只把搜尋者送回去,卻沒有把目標或環境恢復,整個問題就未必重新開始。「回到出發點」只是空間上的描述,真正需要恢復的是影響未來成功機會的統計狀態。

第四,真正受限制的是哪一種成本?重啟所花時間只是其中一種。能源、磨損、通訊限制,以及失去一個仍可恢復狀態的風險,都可能重要。最小化平均經過時間的策略,未必同時最小化這些代價。在不同目標之下選擇一個較慢的策略,沒有任何邏輯矛盾;矛盾只會出現在把不同目標當成同一個指標,卻又期望它們永遠選出同一答案。

最後,要怎樣分辨重啟真的有用,還是資料選擇造成了好看的結果?紀錄中應保留失敗與尚未完成的嘗試,清楚交代觀測期限,並在可比較的起始條件下比較政策。觀測樣本的不確定性,亦應與模型本身的不確定性分開處理。即使把一個不適當的更新模型模擬得非常精確,所得策略仍然可能在實際應用中給出錯誤建議。數值精度不能彌補問題定義的錯位。

結論

重新開始之所以可能令隨機搜尋更快完成,是因為累積運動不一定等於累積進展。在無漂移模型中,重啟阻止少數罕見而漫長的遠行支配平均時間;適中的速率,則在這種好處與打斷潛在成功嘗試的損失之間取得平衡。它沒有令搜尋者每一步走得更聰明,而是改變了時間如何分配給不同嘗試。

同一套計算也解釋了它的限制。過密打斷會製造大量失敗,準備時間令這些失敗變得昂貴,方向性進展則降低放棄當前嘗試的價值。而一個針對平均值的最優化器,不會自動回答期限或最慢一批搜尋的問題。把這些差別分開,才可以理解為甚麼同一個重啟動作,在不同條件下有完全不同的意義。

因此,下一個有用的問題,不只是「要不要再試一次」,而是:新的一次會從甚麼分布出發?為了得到它,要付出甚麼?我們究竟想改善哪些等待? 這幾個問題,讓重新開始成為可檢驗的建模決策,而不只是關於堅持或放棄的一句口號。

參考文獻

  1. Evans, M. R., and Majumdar, S. N. (2011). Diffusion with Stochastic Resetting. Physical Review Letters, 106, 160601。擴散首次到達的經典重啟基準。
  2. Pal, A., and Reuveni, S. (2017). First Passage under Restart. Physical Review Letters, 118, 030603。重啟下完成時間的一般更新框架。
  3. Evans, M. R., Majumdar, S. N., and Schehr, G. (2020). Stochastic Resetting and Applications. Journal of Physics A: Mathematical and Theoretical, 53, 193001。重啟模型的廣泛背景,包括成本慣例與不應期。