machine-learning - 推荐的控制域局部搜索优化算法

标签 machine-learning artificial-intelligence mathematical-optimization genetic-algorithm

背景:我正在尝试为低级 Controller 找到一个浮点参数列表,该 Controller 将导致机器人在行走时保持平衡。

问题:有人可以向我推荐任何适合我刚才描述的域的本地搜索算法吗?对我来说,主要的标准是收敛到正确解决方案的速度。

任何帮助将不胜感激!

P.S.此外,我进行了一些研究并发现“进化论 “策略”算法非常适合连续状态空间。但是,我并不完全确定它们是否适合我的特定问题。

更多信息:我正在尝试优化 8 个参数(尽管我可以将参数数量减少到 4 个)。我确实有一个模拟器,对我来说,一个标准是试验次数的速度,因为模拟重置的成本很高(平均需要 10-15 秒)。

最佳答案

对于低维度(最多大约 10 左右)的最佳本地搜索算法之一是 Nelder-Mead simplex method 。顺便说一句,它在 MATLAB 的 fminsearch 中被用作默认优化器功能。我个人使用这种方法来查找一些教科书二阶或三阶动态系统的参数(尽管非常简单)。

其他选项是已经提到的进化策略。目前最好的一个是协方差矩阵自适应 ES,或者 CMA-ES 。该算法有多种变体,例如BI-POP CMA-ES 等可能比普通版本更好。

您只需尝试最适合您的方法即可。

关于machine-learning - 推荐的控制域局部搜索优化算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36379868/

相关文章:

machine-learning - 不变奖励如何帮助训练?

python - 使用转换时 Scikit Learn 分类器加载问题 : Vocabulary wasn't fitted or is empty!

python - 在Windows 10和python 3.7 64位上安装fancyimpute时出错

python - StandardScaler 如何不破坏数据完整性?

algorithm - 检测表格数据结构的最佳方法是什么?

javascript - 如果轮盘赌选择返回相同的父项怎么办?

arrays - 从数组中选择其和为最小可能正数的元素组合

algorithm - 最优性和效率之间有什么区别?

python - 将分布拟合到数据 : how to penalize "bad" parameter estimates?

optimization - 什么是快速查找集合列表的非空交集的数据结构?