当前位置: 首页 > 专利查询>福州大学专利>正文

X结构下带差分进化的高质量Steiner最小树构建方法技术

技术编号:21714912 阅读:54 留言:0更新日期:2019-07-27 19:20
本发明专利技术涉及一种X结构下带差分进化的高质量Steiner最小树构建方法,基于最小生成树和差分进化算法,通过最小生成树生成法对种群进行初始化,采用改进过的差分进化算法对种群进行求解,基于贪心的选择策略,使得每次迭代都能保留当前种群的最优解进入下一代继续进行迭代优化操作。本发明专利技术能够有效的优化布线树的线长,实现X结构下带差分进化的高质量Steiner最小树构建方法。

A High Quality Steiner Minimum Tree Construction Method with Differential Evolution under X Structure

【技术实现步骤摘要】
X结构下带差分进化的高质量Steiner最小树构建方法
本专利技术涉及明属于计算机辅助设计
,具体涉及一种X结构下带差分进化的高质量Steiner最小树构建方法。
技术介绍
总体布线是超大规模集成电路设计的一个重要环节,在总体布线中,多端线网的总体布线问题是寻找一棵给定引脚集合的布线树问题,而Steiner最小树作为超大规模集成电路总体布线的最佳模型,对如何构建一棵Steiner最小树,是当前超大规模集成电路制造工艺需要解决的问题。目前,大部分解决布线问题的算法都是以曼哈顿结构为模型基础开展相关工作,但基于曼哈顿结构进行线长优化,由于其布线走向有限,只能水平走线和垂直走线,不能够充分地利用布线区域,导致互连线资源的过分冗余。故基于曼哈顿结构的优化策略在进行互连线线长优化时,其优化能力受限。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种X结构下带差分进化的高质量Steiner最小树构建方法,以优化布线线长为目标,最终可得到高质量的X结构Steiner最小树布线方案。为实现上述目的,本专利技术采用如下技术方案:一种X结构下带差分进化的高质量Steiner最小树构建方法,包括以下步骤:步骤S1:采用Prim算法对种群进行初始化,得到初始解的种群;步骤S2:构建改进的差分进化算法和传统的差分进化算法;步骤S3:判断算法迭代次数是否达到阈值threshold,若未达到阈值则根据改进的差分进化算法对初始解的种群进行变异操作;若达到阈值则根据传统的差分进化算法对初始解的种群进行变异操作;步骤S4:基于贪心选择策略,选择种群中的最优个体进入到种群的下一代中;步骤S4:循环步骤S3-S4,直至种群迭代结束,得到全局最优解,即为最终的布线方案。进一步的,所述改进的差分进化算法的变异操作公式如下:其中Xp1(g),Xp2(g),Xp3(g)为第g代种群中的三个随机个体,且p1≠p2≠p3≠i,Vi(g)为第g代种群中第i个个体产生的变异个体。交叉操作的公式如下:其中Vi(g),Xi(g)分别第g代种群中第i个个体及第i个变异个体,XMi(g)为第g代种群中第i个个体和第i个变异个体产生的交叉个体。其中:表示求A与B的差集结果;表示若B为空集,则对A采取两点变异;若B为不为空,结合并查集策略,将A中元素作为待选边加入到B中,若A中可加入到B的边加完后B还为一棵不合法的树,则随机对未连接的点连成边并初始化边的走线方式加入到B中直至B为一棵合法的树结束;表示A与B依概率cr作交叉操作。进一步的,所述传统的差分进化算法的变异操作公式如下:Vi(g)=Xp1(g)+F*(Xp2(g)-Xp3(g))其中Xp1(g),Xp2(g),Xp3(g)为第g代种群中的三个随机个体,且p1≠p2≠p3≠i,Vi(g)为第g代种群中第i个个体产生的变异个体。其中,F采用自适应的策略,具体规则如下:式中Fl=0.1,Fu=0.9,fb,fm,fw分别为变异过程中选择出的三个个体适应值的从大到小排序后的结果;交叉操作公式如下:其中表示第i个个体的第j个比特位,cr采用自适应的策略,具体规则如下:其中crl=0.1,cru=0.6,fi,fmin,fmax,分别为当前个体的适应值,种群中最小适应值个体,种群中最大适应值个体及种群中平均个体适应值。其中适应值计算函数如下:其中Tx表示布线树的边集集合,l(ei)表示边集元素ei的长度。进一步的,所述贪心选择策略具体为:其中:f(XMi(g))表示交叉个体XMi(g)的适应值,f(Xi(g))表示当前个体Xi(g)的适应值,Xi(g+1)表示进入下一代种群的个体。进一步的,所述阈值threshold设置为算法迭代次数达到最大迭代次数的0.25倍。本专利技术与现有技术相比具有以下有益效果:本专利技术基于最小树生成策略、边点对策略、贪心选择策略以及离散差分进化算法,能够克服因曼哈顿结构下布线线长优化能力受限的问题。附图说明图1是本专利技术方法流程图;图2是本专利技术一实施例中X结构Steiner最小树构建实例;图3是本专利技术一实施例中使用边点对策略下的两引脚的走线方式情况;图4是本专利技术一实施例中种群中粒子实例的编码情况;图5是本专利技术一实施例中操作算子设计过程中改进后的变异操作一;图6是本专利技术一实施例中操作算子设计过程中改进后的变异操作二;图7是本专利技术一实施例中操作算子设计过程中改进后的交叉操作。具体实施方式下面结合附图及实施例对本专利技术做进一步说明。请参照图1,本专利技术提供X结构下带差分进化的高质量Steiner最小树构建方法,包括以下步骤:步骤S1:采用Prim算法对种群进行初始化,得到初始解的种群;本实施例中采用最小生成树生成法的方式对给定的引脚点集合进行初始化,以引脚点之间的曼哈顿距离作为权值,对该引脚点集合采用Prim算法进行最小生成树的构造步骤S2:构建改进的差分进化算法和传统的差分进化算法;步骤S3:判断算法迭代次数是否达到阈值threshold即算法迭代次数达到最大迭代次数的0.25倍,若未达到阈值则根据改进的差分进化算法对初始解的种群进行变异操作;若达到阈值则根据传统的差分进化算法对初始解的种群进行变异操作;步骤S4:基于贪心选择策略,选择种群中的最优个体进入到种群的下一代中;步骤S4:循环步骤S3-S4,直至种群迭代结束,得到全局最优解,即为最终的布线方案。在本实施例中改进的差分进化算法,编码策略采用边点对编码粒子,所谓边点对编码就是通过生成树的n-1条边、n-1个Steiner点选择方式和一位用来记录该生成树线长(适应值)的多余位构成对粒子的编码,每个粒子代表表示布线问题的一个解。如图2代表X结构Steiner最小树构建问题的一个例子。图5给出了Steiner点的4种选择方式,由左至右分别为0选择,1选择,2选择,3选择,主要由边的走线方式来定义。图6给出了布线例子(图4)的粒子编码情况,由编码位最后一位可知,因此粒子的线长长度是102.071。其次,由于所求解的问题是离散优化问题,因此,改进传统差分进化算法变异算子和交叉算子如下:定义以下集合运算:表示求A与B的差集结果表示将A中的元素以规则加入到B中,直至B满足运算结束的条件结束。表示A与B以规则作交叉操作对于本问题规则即为:①若B为空集,则对A采取两点变异②若B为不为空,结合并查集策略,将A中元素作为待选边加入到B中,若A中可加入到B的边加完后B还为一棵不合法的树,则随机对未连接的点连成边并初始化边的走线方式加入到B中直至B为一棵合法的树结束。则改进后的变异操作公式如下:其中Xp1(g),Xp2(g),Xp3(g)为第g代种群中的三个随机个体,且p1≠p2≠p3≠i,Vi(g)为第g代种群中第i个个体产生的变异个体。如图5所示,给出了算法的变异操作过程中,对于规则①的处理情况,将随机选出的三个个体p1,p2,p3代进公式,为空,那么运算则采用规则①,所谓两点变异即对p1个体随机选择一条待进行变异操作的边m1进行删除,删除后p1个体分为两棵子树,结合并查集的策略,分别从两棵子树随机选取两个引脚点,连线并随机初始化该边的走线方式后作为变异产生的个体。如图6所示,给出了算法的变异操作过程中,对于规则②的处理情况,将随机选出的三个个体p1,p2,p3代进本文档来自技高网...

【技术保护点】
1.一种X结构下带差分进化的高质量Steiner最小树构建方法,其特征在于,包括以下步骤:步骤S1:采用Prim算法对种群进行初始化,得到初始解的种群;步骤S2:构建改进的差分进化算法和传统的差分进化算法;步骤S3:判断算法迭代次数是否达到阈值threshold若未达到阈值则根据改进的差分进化算法对初始解的种群进行变异操作;若达到阈值则根据传统的差分进化算法对初始解的种群进行变异操作;步骤S4:基于贪心选择策略,选择种群中的最优个体进入到种群的下一代中;步骤S4:循环步骤S3‑S4,直至种群迭代结束,得到全局最优解,即为最终的布线方案。

【技术特征摘要】
1.一种X结构下带差分进化的高质量Steiner最小树构建方法,其特征在于,包括以下步骤:步骤S1:采用Prim算法对种群进行初始化,得到初始解的种群;步骤S2:构建改进的差分进化算法和传统的差分进化算法;步骤S3:判断算法迭代次数是否达到阈值threshold若未达到阈值则根据改进的差分进化算法对初始解的种群进行变异操作;若达到阈值则根据传统的差分进化算法对初始解的种群进行变异操作;步骤S4:基于贪心选择策略,选择种群中的最优个体进入到种群的下一代中;步骤S4:循环步骤S3-S4,直至种群迭代结束,得到全局最优解,即为最终的布线方案。2.根据权利要求1所述的X结构下带差分进化的高质量Steiner最小树构建方法,其特征在于:所述改进的差分进化算法的变异操作公式如下:其中Xp1(g),Xp2(g),Xp3(g)为第g代种群中的三个随机个体,且p1≠p2≠p3≠i,Vi(g)为第g代种群中第i个个体产生的变异个体。交叉操作的公式如下:其中Vi(g),Xi(g)分别第g代种群中第i个个体及第i个变异个体,XMi(g)为第g代种群中第i个个体和第i个变异个体产生的交叉个体。其由.表示求A与B的差集结果;表示若B为空集,则对A采取两点变异;若B为不为空,结合并查集策略,将A中元素作为待选边加入到B中,若A中可加入到B的边加完后B还为一棵不合法的树,则随机对未连接的点连成边并初始化边的走线方式加入到B中直至B为一棵合法的树结束;表示A与B依概率cr作交...

【专利技术属性】
技术研发人员:刘耿耿吴海林郭文忠陈国龙
申请(专利权)人:福州大学
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1