论文部分内容阅读
基因表达式编程(Gene Expression Programming, GEP)算法是由葡萄牙学者Candida Ferreira于2001年提出的一种新的基于基因型(genotype)和表现型(phenotype)的自适应进化算法。GEP算法综合了遗传算法(GA)和遗传编程(GP)的各自优点,又克服了两者的各自缺点。它采用类似于GA中的固定长度的线性染色体作为个体(基因型),同时GEP又将个体转换为类似于GP个体的大小、形状都不同的非线性表达式树(表现型),因此,它可以利用简单编码解决复杂问题,而且可以方便的进行选择、交叉、变异等遗传操作。在求解很多复杂问题时,基因表达式编程的性能可以比普通的遗传编程高出2-4个数量级。可逆逻辑电路是由可逆逻辑门依次级联构成的,完全具备可逆性操作的特性,能够有效地解决集成电路能耗问题。可逆逻辑综合就是利用给定的可逆逻辑门,按照可逆网络无扇入扇出、无反馈等约束条件和限制,实现具备预期逻辑功能且尽可能优化的可逆逻辑电路。然而,可逆逻辑门是以“异或”运算为基础,使得“积之异或和”取代“积之和”成为了可逆逻辑最适用的表达形式。基因表达式编程具有在缺乏知识和经验的情况下自动发现最优表达式的能力,因而有望较好地解决可逆逻辑电路的综合、优化问题。本文重点研究并实现了一种新的可逆逻辑电路进化设计方法——GEP算法。本文首先分析了可逆逻辑综合的特点和需要,介绍并比较了常用的可逆逻辑综合方法的优缺点。其次,研究了基因表达式编程算法,针对可逆逻辑综合的特点和需求提出了一种适用的GEP算法。最后,对GEP算法进行改进,使之适用于多输出逻辑函数的优化。初步实验表明,该GEP算法可根据预期的逻辑功能,自动求取便于构造可逆逻辑网络的最简“积之异或和”表达式,是一种可行有效的可逆逻辑电路进化设计方法。因此,相信本文对于可逆逻辑综合、优化算法的研究有一定的参考价值和指导意义。