eggzec/pyswarm
Particle Swarm Optimization (PSO) for Python
解決的問題
當無法取得函數的梯度資訊(函數的斜率)或計算過於困難時,提供一種尋找函數最小值的方法。這對於傳統微積分方法失效的複雜最佳化問題非常有用。
工作原理
該庫實作了粒子群優化(PSO),這是一種模仿鳥類群飛或魚類群游社會行為的進化演算法。它透過在搜尋空間中移動一組「粒子」來尋找最佳解,每個粒子根據自身已知的最佳位置以及整個群體的最佳位置調整其位置。
適用對象
需要一個輕量級、無梯度資訊的Python最佳化工具,並支援約束(下限與上限)的開發者與研究人員。
特點
- 輕量且易於使用。
- 內建約束支援。
- 回傳結果與
scipy.optimize.OptimizeResult兼容。 - 僅需 Python 3.10+ 與 NumPy。
相關
- 專案
- 專案
- 專案
- 專案
- 專案