行为视角下的程序综合及其未来展望
1. 行为视角下的问题分解
在程序综合中,某些子程序的修改可能会影响整个程序的执行路径和最终结果。例如,若子程序的 c - 轨迹终点改变,为了保持最终结果不变,程序的其余部分可能需要相应修改。有证据表明,近可分解任务在自然系统中较为常见。
一些方法虽未明确进行水平问题分解,但基于整个执行轨迹定义搜索驱动的方法(如 pangea 和 tc)可被视为“隐性”地进行分解。例如,ftc 搜索驱动会促进具有高二向熵特征的程序,从而指定一类理想的 c - 状态,而非特定的 c - 状态。在 pangea 中,分类器从执行记录中提取的每个属性都可视为理想 c - 状态的一部分。当与代码重用结合时,问题分解的迹象更加明显,存档中的子程序的 c - 轨迹从某些起始状态开始,以 pangea 中分类器判定的理想 c - 状态结束。
除了聚类,还有其他寻找理想中间 c - 状态的方法,如语义反向传播。该方法从最终结果 t∗ 开始反向执行候选程序,产生可能理想的中间 c - 状态。不过,其关键挑战在于反向程序执行通常具有歧义性,可能会指定许多潜在有用的 c - 状态。但经验证据表明该方法可行,且优于语义遗传编程的其他变体。
1.1 相关方法特点总结
| 方法 | 特点 |
|---|---|
| ftc 搜索驱动 | 促进具有高二向熵特征的程序,指定一类理想 c - 状态 |
| pangea |
超级会员免费看
订阅专栏 解锁全文
14

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



