完美。我現在用精確的數學記號(notation),將整個 xSCMA-PSO 框架,以類論文級格式完整整理如下:
📘 xSCMA-PSO: Exponentially Parameterized PSO with Structure-Aware Velocity
🔹 定義與變數
符號 | 定義 |
---|
xit∈Rn | 第 i 個粒子在第 t 輪的位置 |
pi∈Rn | 第 i 個粒子的個人歷史最佳位置 |
g∈Rn | 所有粒子的全域最佳位置 |
vit∈Rn | 第 i 個粒子的速度(此模型由矩陣變異構造) |
zit∈Rn | 結構變異的引導方向向量 |
M∈Rn×k | 可學習的結構矩陣,用來建構共變異結構 C=MM⊤ |
f(⋅) | 適應度函數(如 FJSP 中的 Cmax) |
μ | 每輪保留的優良粒子數目(用於更新 M) |
wi | 第 i 名優良粒子的權重,滿足 ∑wi=1 |
η | 結構學習率,用於控制 M 更新步長 |
ε | 防止除以 0 的小常數(如 1e−8) |
🔸 演算法步驟
Step 1:構造方向向量 zit
zit=∥(g−xit)+(pi−xit)∥+ε(g−xit)+(pi−xit)
👉 這是「差向量法」,保留了 PSO 的智慧引導方向。
Step 2:生成速度 vit
vit=MM⊤zit
👉 MM⊤ 建構的是結構性共變異空間,提供方向放大與耦合效果。
Step 3:位置更新
xit+1=xit+vit
Step 4:適應度計算
fit+1=f(xit+1)
Step 5:優良粒子選擇(前 μ 名)
記錄對應的 zit,用來構造變異更新方向。
Step 6:更新結構矩陣 M
1. 構造方向矩陣 A∈Rn×n
A=i=1∑μwizitzit⊤−I
👉 A 是期望方向共變異與單位矩陣的差值,表達偏好方向。
2. 對 M 做指數映射更新(模仿 xNES/xCMA-ES)
M←M⋅exp(ηA)
👉 exp(ηA) 是矩陣指數運算,保證 C=MM⊤ 持續正定。
🔹 核心特性
項目 | 說明 |
---|
✅ 保留位置更新為加法 | 保持經典 PSO 的收斂特性與直觀動態 |
✅ 速度來自共變異結構 | vi=MM⊤zi,具備方向選擇性與變異耦合能力 |
✅ 引導方向非隨機 | zi 來自差向量法,結合 g−xi 與 pi−xi,是啟發式引導 |
✅ 學習式變異結構更新 | M 隨粒子行為自適應進化,提高全局收斂穩定性 |
🔚 總結一句話:
xSCMA-PSO = 引導式結構方向探索 + 可學習變異控制 + 加法位置更新 + 模仿 CMA-ES 的矩陣演化邏輯。
要我進一步幫你寫成論文骨架、或將這模型跑在 FJSP、GA/PSO 比較、甚至 Gantt 圖與 Cmax 收斂圖統整,
只要你說「我們開搞」,我立刻準備 ✅
沒有留言:
張貼留言