搜索驱动:多目标选择与相关概念解析
1. 搜索驱动的优势
搜索驱动在维护多样性、应对多模态问题以及控制计算开销方面具有显著优势。
- 多样性维护 :通过行为搜索驱动来维护多样性是一种自然的方式,相较于需要参数调整的生态位技术和岛模型,它更为便捷。
- 多模态处理 :程序合成任务通常具有多模态特性,即存在多个最优解。单一目标搜索过程可能只探索部分吸引域,而并行遵循多个目标的搜索过程更有可能探索更多的吸引域。同时,多模态也反对顺序使用搜索驱动,因为不同的搜索驱动可能会使搜索在不同的最优解之间循环振荡。
- 计算开销适度 :不同的搜索驱动可以共享计算所需的算法组件,因此计算多个搜索驱动并不一定会带来巨大的开销。例如,在某些情况下,记录程序跟踪信息只是程序执行的一个副作用,只会产生适度的开销。
2. 多目标选择方法
当同时使用多个搜索驱动时,传统的选择算子无法直接应用,需要采用特殊的处理方法。以下是几种常见的多目标选择方法:
|方法|描述|优点|缺点|
|----|----|----|----|
|聚合(标量化)|将多个搜索驱动合并为标量评估,再使用单目标选择方法。可采用算术平均、几何平均或基于排名的聚合方法。|可以使用众多传统选择算子|会产生补偿效应|
|字典序排序|根据搜索驱动的重要性递减对其进行排序,依次比较候选程序。如果在某个驱动上比较结果明确,则选择该程序;否则,继续比较下一个驱动。|避免直接聚合|需要特定领域的搜索驱动排序,且对于离散和粗粒度的目标更有效|
|字典序选择|基于字典序
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



