1

背景:我試圖找到浮點參數的低級控制器它行走時,這將導致機器人的平衡的列表。推薦本地搜索優化算法

問題:任何人都可以推薦我的任何本地搜索算法,這些算法對我剛纔描述的域來說性能很好嗎?對我來說主要的準則是融合到正確解決方案的速度。

任何幫助將不勝感激!

P.S.此外,我進行了一些研究,發現「Evolutianry 策略」算法非常適合連續狀態空間。但是,我不完全確定,如果它們能很好地適應我的特殊問題。

更多信息:我想優化8個參數(儘管我可以將參數數量減少到4個)。我確實有一個模擬器,對我來說一個標準是試驗次數很快,因爲模擬重置成本很高(平均需要10-15秒)。

回答

1

針對維數較少(最多約10個左右)的最佳本地搜索算法之一是Nelder-Mead simplex method。順便說一下,它被用作MATLAB的fminsearch函數中的默認優化器。我個人使用這種方法尋找一些教科書第二或第三度動態系統的參數(儘管非常簡單)。

其他選項是已經提到的進化策略。目前最好的是協方差矩陣自適應ES,或CMA-ES。該算法有多種變化,例如BI-POP CMA-ES等可能比香草版本更好。

你只需要嘗試一下最適合你的東西。

0

除了進化算法,我建議你也檢查強化學習。

正確的方法很大程度上取決於您的問題的細節。多少個參數?你有模擬器嗎?你只在模擬中工作,還是在真正的硬件中工作?速度是在試驗次數還是CPU時間?

+0

非常感謝您的回覆!我剛剛編輯了我的原始問題,並添加了該信息。 –