9 爬山似乎是进行优化的强大工具。但是,如何生成解决方案的“邻居”总是让我感到困惑。 例如,我正在优化解决方案 (x1,x2,x3)(x1,x2,x3)。这里x1x1 在范围内 (0,0.1)(0,0.1), x2x2 在范围内 (0,100)(0,100), x3x3 在范围内 (0,1000000)(0,1000000)。生成“邻居”的最佳方法是什么?我在这里不能真正选择“步长”,因为步长为1对x1x1,但对 x3x3。 在爬山算法中生成“邻居”的最佳通用方法是什么? algorithms optimization — 仇杀队 source
3 文森特的解决方案将帮助您克服第一个障碍。您可能仍然想知道如何选择步长,即使所有尺寸都具有相同范围。在这种情况下,它有助于理解函数的行为,因此您可以选择适当的值。另一种方法是根据梯度来自适应地设置步长(如果函数变化很大,则应略微踩一下)。 本文也可能有一些有趣的想法:关于具有自适应步长的爬山算法:寻求控制参数少的黑匣子优化算法 — 埃姆雷 source