AlphaEvolve 可以针对多个并发目标进行优化。虽然 AlphaEvolve 支持多目标优化,但应将各个目标的数量限制在人类专家在分析结果时可以掌握的范围内。
您可以使用以下方法来构建多目标搜索策略:
组合目标函数:多目标优化的一种方法是利用组合目标函数:
obj = w1 * in_stock_rate - w2 * inventory_level将一个目标视为限制条件:另一种方法是将一个目标视为限制条件。这有助于在优化一个指标的同时,防止另一个指标降至阈值以下或升至阈值以上。
obj = in_stock_rate` # Optimize this # With: inventory_level <= budget (enforced as penalty where if inventory # level exceeds budget then a high negative value is returned)此方法可能需要在不同的限制级别下运行多次实验,以描绘出帕累托前沿。
将不同的指标作为字典中的各个指标纳入其中。请参阅以下与此方法相关的重要注意事项:
将多目标优化限制为 3-5 个指标。如果指标过多,帕累托比较器会失效,因为几乎每个计划在至少一个指标上都占主导地位。MAP Elites 大部分时间都用于进化可优化微不足道或噪声指标的父级。通过汇总、选择或 PCA 将维度降至 3-5 个有意义的指标。
每个基准的单独得分可能会导致过拟合。如果传递 5 个基准的各个得分,可能会导致某些基准过拟合,而如果仅传递汇总总和,则可以更好地泛化到未见过的基准。如果泛化很重要,请考虑在将得分传递给 AlphaEvolve 之前对其进行汇总,而不是单独优化每个基准。
启用此功能后,AlphaEvolve 会跟踪帕累托前沿,而 MAP-Elites 会保留每个指标的最佳程序。不过,组合加权得分可简化推理和调试。