nnaisense/evotorch
Advanced evolutionary computation library built directly on top of PyTorch, created at NNAISENSE.
解決的問題
EvoTorch 是為了解決可能不可微分的優化問題而設計的,也就是無法使用傳統梯度下降法求解的問題。這包括黑箱優化(連續與離散)、強化學習任務以及監督學習任務。
工作原理
此套件建構於 PyTorch 之上,實作多種進化計算演算法。它利用 PyTorch 的向量化與平行化能力,加速 GPU 上的優化過程。對於更大規模的工作負載,它整合了 Ray,可將計算分散至多個 CPU、GPU 和整個叢集。
適用對象
適合需要可擴展、GPU 加速的進化演算法框架的研究人員與開發者,特別是在優化、神經演化與強化學習領域工作的人士。
主要特色
- 多樣化的演算法套件:包含基於分佈的搜尋(PGPE、XNES、CMA-ES、SNES、CEM)與基於族群的搜尋(遺傳演算法、CoSyNE、MAP-Elites)。
- GPU 加速:原生 PyTorch 實作支援在 GPU 上進行高速向量化運算。
- 可擴展性:整合 Ray,可跨多台機器與硬體加速器進行擴展。
- 靈活的目標函數:支援在 PyTorch 中定義的任意目標函數,無論是否向量化。
相關
- 專案
- 專案
- 專案
- 專案
- 專案