
粒子群最佳化演算法(PSO)的發展,本質上就是一部不斷「人工設計」的歷史。過去幾十年裡,研究者圍繞慣性權重、學習策略、群體拓撲、子群結構等環節提出了大量改進方法,逐漸圍繞PSO形成了一個龐大的演算法設計空間。但空間越大,選擇越困難。面對一個具體的最佳化任務,該選什麼參數、用什麼學習方式、怎麼組織粒子群體——這些高度耦合的設計決策,至今仍高度依賴研究者的經驗與反覆試錯。PSO越來越豐富,卻也越來越難「選對」。那如果把「選擇PSO」這件事本身,也交給演算法去演化呢?
EvoX團隊提出的AutoPSO,將PSO的參數設定、學習機制與群體結構統一編碼為一個可搜尋的演化空間,並透過元演化(meta-evolution)自動尋找適配特定目標問題的最佳PSO變體。這一框架不僅最佳化了問題的解,還在更高一層自動最佳化「用什麼樣的PSO求解」。
元演化的大規模搜尋依賴大量平行評估,而EvoX的張量化計算、批次處理與GPU平行能力恰好解決了這一瓶頸——數千候選變體可同時演化,使CPU上原本不可行的元層搜尋成為現實。
GPU運算力×元演化,讓PSO從「人工設計」走向「自動生成」。
PSO不缺方法,缺的是自動組合方法的能力
過去幾十年,PSO研究已累積了豐富的機制選項:參數如何隨迭代變化、粒子向誰學習、群體是否劃分子群、不同子群採用何種更新策略。
問題不在於機制不夠,而在於這些機制大多以面向特定問題的獨立演算法形式存在。面對新的任務,研究者仍要從大量機制中手動選擇、組合、驗證,再重新調整。
AutoPSO的思路不是丟掉這些累積,而是把它們重新整理成一個可複用的元件空間。它將PSO的關鍵設計拆解為多個模組:
-
參數如何演化;
-
粒子向誰學習;
-
群體如何劃分子群;
-
不同子群採用何種更新策略。
傳統方法中,這些選擇主要由人來完成;在AutoPSO中,它們變成了演算法可以搜尋的對象。換句話說,AutoPSO並非「手工再造一個PSO」,而是構建一個在求解當前問題之前,能夠自動為其配置合適PSO變體的元框架(meta-framework)。

圖1:AutoPSO將PSO的關鍵設計組織為可組合、可搜尋的模組。
把研究者做的「外層最佳化」,也交給演算法
傳統最佳化研究一直帶有一種雙層結構。內層是在用PSO求解目標問題——函數最佳化、工程設計或控制策略;外層還存在著不那麼顯性的最佳化:研究者在最佳化演算法本身。
選擇什麼更新規則、怎樣設定參數、採用哪種學習對象、要不要引入子群機制、哪些機制可以組合、哪些組合不穩定——這些過去通常由研究者根據經驗判斷,再透過實驗不斷試錯。
AutoPSO的關鍵轉變,就是把這個原本由研究者手工完成的外層過程,也交給演算法來做。一個外層粒子不再表示目標問題的一個候選解,而是表示一種候選PSO設計,編碼了參數、學習對象、子群劃分和更新策略。內層PSO拿著這些配置求解目標問題,並將表現回饋給外層,外層據此繼續搜尋更好的演算法配置。
AutoPSO不僅最佳化問題的解,更在最佳化「用什麼樣的PSO去求解這個問題」。
它將過去依賴研究者經驗的演算法設計過程,轉化成了一個可自動搜尋、自動評估、自動迭代的系統內部演化過程。

圖2:外層搜尋演算法配置,內層使用該配置求解目標問題。
EvoX和GPU,讓自動演算法設計真正可行
提出自動搜尋演算法結構並不難,真正的難點在於計算成本。比較一套候選PSO設計,意味著先讓它完整跑完一次目標問題求解;候選方案越多,內層運算量越大。
在傳統CPU序列環境下,這樣的代價很高。但這類計算天然適合平行:候選演算法平行評估,候選演算法內部的粒子也可以批次更新。AutoPSO藉助EvoX,將演化計算的種群結構映射到GPU的批次處理能力上,使外層配置搜尋與內層任務求解能夠同時推進。
這裡的GPU加速不僅是縮短一次運行的時間,更意味著單位時間內可比較的候選設計數量大幅增加。元演化本質上是在演算法空間中做搜尋,搜尋品質直接取決於評估過多少種候選PSO設計。評估得越充分,就越可能找到適配當前問題的配置。
EvoX的價值正在於提供這種能力:它把內層的粒子更新、適應度評估,以及外層的候選演算法比較,全部組織成GPU上的張量運算,使數千個候選設計可以在同一輪迭代中同步推進。換句話說,EvoX讓元演化從「慢慢試」變成「大規模平行試」——這正是AutoPSO得以成立的計算基礎。
不僅更快,也更會「用搜尋」
AutoPSO想證明的並不是「GPU上跑得快」這麼簡單,而是當PSO的設計過程被自動化之後,演算法能不能真正找到更適合當前問題的搜尋方式。
在CEC2022數值最佳化基準上,EvoX團隊將AutoPSO與原始PSO、CSO、CLPSO、FIPS以及社會學習PSO的不同版本進行比較。在相同運行時間預算下,很多固定結構的PSO變體前期下降較快、隨後容易停滯;AutoPSO則能在運行過程中持續調整內層PSO的配置,在多個函數上保持更穩定的改進趨勢。
研究團隊還在相同函數評估次數下比較,AutoPSO仍表現更優,說明其優勢來自更有效地組織搜尋,而不只是消耗更多計算。

圖3:CEC2022數值最佳化問題上的實驗結果。
研究團隊進一步將AutoPSO應用於神經演化機器人控制任務中。相比數值函數,這類任務更接近真實應用:策略參數維度高、回饋雜訊大、目標函數不規則,梯度資訊也並非總是可得。
在多個Brax機器人控制環境中,AutoPSO取得了更快的獎勵提升和更好的最終表現。這說明它不只是為某一類函數定製的技巧,而是一種具有實際遷移潛力的自動演算法構造方法。

圖4:Brax機器人控制問題上的實驗結果。
EvoX的價值在可擴展性實驗中體現得尤為直接。AutoPSO的雙層結構天然會帶來更大的種群規模:外層有許多候選演算法,內層每個候選演算法又有自己的粒子群。若按傳統序列方式,所需的計算時間將迅速變得不可承受。
但在GPU上,總種群規模擴大100倍時,運行時間只增加約3倍;在8192維測試中,AutoPSO仍能保持可接受的時間開銷,並相比CPU獲得數量級加速。

圖5:種群規模擴展對運行時間的影響。
不浪費算力,也不浪費歷史知識
AutoPSO並非以算力取代演算法研究,而是把長期累積的研究成果轉化為可操作的設計資產。過去散落在不同PSO變體中的有效機制,被抽象為可複用的元件;過去依賴經驗完成的組合判斷,被交給元演化在具體任務中驗證。
歷史研究提供搜尋空間,自動最佳化負責尋找組合,EvoX與GPU提供平行評估能力。三者缺一不可:沒有歷史知識,搜尋缺少有價值的候選;沒有自動最佳化,知識難以針對任務重組;沒有平行計算,搜尋規模又難以支撐。
AutoPSO讓研究者從重複的參數試錯中抽身,轉而投入到更有價值的工作:定義元件、設計搜尋空間,以及建立更可靠的評估流程。
從改演算法,到構建會產生演算法的系統
AutoPSO的意義不止於得到一個更強的PSO變體。它展示出平行計算時代演化演算法的一種新範式:
-
過去,我們研究「怎樣設計一個更好的演算法」;
-
現在,我們研究「怎樣構建一個能夠自動產生、篩選、改進演算法的系統」。
當GPU大規模候選評估逐步成為研究的常態,演化計算的邊界也一定會隨之改變:平行計算的硬體不單是承載演算法運行的平台,更開始參與重塑演算法的設計方式。
AutoPSO×EvoX,助力演化計算從手動時代邁向自動時代。
開源程式碼 / 社群資源
論文:
https://arxiv.org/abs/2608.07539
GitHub:
https://github.com/EMI-Group/autopso
上游專案(EvoX):
https://github.com/EMI-Group/evox
QQ交流群:
297969717

EvoX QQ社群群組QR Code。