CN107247844B - 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法 - Google Patents

基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法 Download PDF

Info

Publication number
CN107247844B
CN107247844B CN201710435947.9A CN201710435947A CN107247844B CN 107247844 B CN107247844 B CN 107247844B CN 201710435947 A CN201710435947 A CN 201710435947A CN 107247844 B CN107247844 B CN 107247844B
Authority
CN
China
Prior art keywords
particle
algorithm
population
fitness
particles
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710435947.9A
Other languages
English (en)
Other versions
CN107247844A (zh
Inventor
刘耿耿
郭文忠
陈国龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuzhou University
Original Assignee
Fuzhou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuzhou University filed Critical Fuzhou University
Priority to CN201710435947.9A priority Critical patent/CN107247844B/zh
Publication of CN107247844A publication Critical patent/CN107247844A/zh
Application granted granted Critical
Publication of CN107247844B publication Critical patent/CN107247844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种基于自适应PSO和混合转换策略的X结构Steiner最小树算法:读取测试电路数据并进行排序;初始化算法的所有参数,随机生成初始种群;计算每个粒子的适应度值,选择适应度值最小的粒子作为种群的全局最优,并将第一代中每个粒子设置为其历史最优;采用混合转换策略作为粒子更新的基础操作;更新粒子的位置和速度;重新计算粒子的适应度值,若当前粒子的适应度值小于其历史最优值,则将更新后的粒子设置为其历史最优;若更新后的粒子的适应度值小于种群的全局最优粒子的适应度值,则将更新后的粒子设置为种群全局最优;若达到算法最大迭代次数,则算法终止,否则回到更新操作。本发明以优化线长为目标,最终达到对线长这一重要目标的优化。

Description

基于自适应PSO和混合转换策略的X结构Steiner最小树布线 方法
技术领域
本发明涉及一种基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法
背景技术
总体布线是超大规模集成电路(very large scale integration,VLSI)物理设计中一个非常重要的步骤。Steiner最小树(Steiner Minimal Tree,SMT)问题是在给定引脚集合的基础上通过引入一些额外的点(Steiner点)以寻找一棵连接给定引脚集合的最小代价布线树。因为SMT模型是超大规模集成电路总体布线中多端线网的最佳连接模型,所以SMT构建是超大规模集成电路布线中一个关键环节。
近年来,集成电路在设计规模和制造工艺方面都迅猛地发展,由此为电子设计自动化带来新的挑战。而物理设计中总体布线阶段所面临的问题也是越来越复杂,总体布线问题的研究工作主要集中在曼哈顿结构下布线树的构造和总体布线算法的设计,并取得一些不错的研究成果。特别是在ISPD所举行的VLSI总体布线算法竞赛中,涌现出NCTU-R,NTHU-Route2.0,NCTU-GR,NCTU-GR2.0等总体布线器,并在总体布线竞赛中脱颖而出。
目前,大多数布线算法都是基于曼哈顿结构而提出的。随着超大规模集成电路的制造工艺不断发展,互连线效应逐渐成为影响芯片性能的主要挑战。而基于曼哈顿结构的布线模型要求芯片引脚之间的连线只能是水平方向和垂直方向,导致对芯片中互连线的线长优化能力受到限制。因此,能够更充分利用布线资源而带来更强的线长优化能力的非曼哈顿结构吸引越来越多研究人员的兴趣。
为了更好地研究非曼哈顿结构结构布线,首要工作是研究非曼哈顿结构Steiner最小树的构建问题。关于非曼哈顿结构Steiner最小树的构建包括了基于分支界限法、精确算法和一系列的剪枝策略。针对精确算法的时间复杂度高,人们开始探索启发式策略在构造非曼哈顿结构Steiner树中的应用,包括采用边替换技术、三角收缩技术以及贪心策略等启发式策略,从而取得了非曼哈顿结构结构布线的一些相关成果。
构造非曼哈顿结构Steiner树是一个NP难问题,以上求解非曼哈顿结构Steiner树的研究工作都是基于精确算法和传统的启发式算法,而其中精确算法的时间复杂度随着问题规模呈指数增长,传统的启发式算法大多基于贪心策略,易陷入局部极值。且二者在构造Steiner树时,并未充分利用非曼哈顿结构的几何性质,不能保证Steiner树的质量,且主要优化目标集中在线长优化,而较少提供拓扑优化的合适方法,导致在时间效率、线长缩短等方面还不能令人满意。
发明内容
有鉴于此,本发明的目的在于提供一种基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,以优化布线树线长为目标,最终达到对布线树线长这一重要目标的优化。
为实现上述目的,本发明采用如下技术方案:
一种基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于,包括以下步骤:
步骤1:读取测试电路数据,引脚的坐标按照X轴、Y轴的升序进行排序;
步骤2:初始化PSO-HT-XSMT算法中种群大小、迭代次数、惯性权重因子、加速因子的数值,同时随机生成初始种群;
步骤3:计算每个粒子的适应度值,再从中选择适应度值最小的粒子作为种群的全局最优粒子,并将第一代中每个粒子设置为其历史最优粒子;
步骤4:采用混合转换策略作为粒子更新的基础操作;
步骤5:根据粒子群的更新公式更新粒子的位置和速度;
步骤6:重新计算每个粒子的适应度值,若当前粒子的适应度值小于其历史最优值,则将更新后的粒子设置为其历史最优粒子;
步骤7:若更新后的粒子的适应度值小于种群的全局最优粒子的适应度值,则将更新后的粒子设置为种群全局最优粒子;
步骤8:检查是否达到设定的算法最大迭代次数,如果达到,则算法终止,反之,转到步骤4。
进一步的,所述步骤3和步骤6中计算粒子的适应度值的具体方法如下:
fitness=1/(L(TX)+1)
Figure GDA0002512267880000031
其中,fitness为粒子的适应度值,L(Tx)为一颗XSMT的长度,l(ei)表示布线树Tx中第i个边片段ei的长度。
进一步的,所述步骤4中混合转换策略的具体内容为:迭代算法的前期采用便变换和点变换结合的变换方式,后期只采用点变换。
进一步的,所述步骤5中粒子群的更新公式为:
Figure GDA0002512267880000032
其中,w是惯性权重因子,c1和c2是加速因子,N1表示变异操作,N2和N3表示交叉操作,r1,r2,r3都是在区间[0,1)的随机数。
进一步的,所述粒子群的更新公式分为三个更新操作,包括粒子的速度更新,粒子的个体经验学习和粒子与种群其他粒子进行合作学习;
粒子的速度更新表示如下:
Figure GDA0002512267880000033
粒子的个体经验学习表示如下:
Figure GDA0002512267880000034
粒子与种群其他粒子进行合作学习
Figure GDA0002512267880000035
进一步的,所述惯性权重因子w的更新过程如下:
Figure GDA0002512267880000036
其中,w_star表示参数w迭代开始的初始值,w_end表示参数w的迭代的最终值,eval表示当前迭代次数,evaluations则表示算法的最大迭代次数。
进一步的,所述加速因子c1和c2的更新过程如下:
Figure GDA0002512267880000041
c2=1-c1
其中,fAVE表示种群中所有粒子适应度值的平均值,p(i).fitness表示粒子i的适应度值,fMIN表示种群中适应度的最小值,fMAX表示种群中适应度的最大值。
本发明与现有技术相比具有以下有益效果:本发明采用高效的混合转换策略,基于Steiner点变换和边变换两个角度去优化布线线长,并且引入自适应参数调整的粒子群优化算法,从而能够获得优秀的解方案,提高布线树的质量,为布线问题提高较好的布线树。
附图说明
图1是本发明的算法流程图。
图2A是本发明一实施例的边L的坐标信息。
图2B是边L对应的PS点的0选择方式示意图。
图2C是边L对应的PS点的1选择方式示意图。
图2D是边L对应的PS点的2选择方式示意图。
图2E是边L对应的PS点的3选择方式示意图。
图3A是本发明构建XSMT进化过程中的一种布线树拓扑。
图3B是本发明构建XSMT进化过程中的另一种布线树拓扑。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
请参照图1,本发明提供一种基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于,包括以下步骤:
步骤1:读取测试电路数据,引脚的坐标按照X轴、Y轴的升序进行排序;
步骤2:初始化PSO-HT-XSMT算法中种群大小、迭代次数、惯性权重因子、加速因子的数值,同时随机生成初始种群;
步骤3:计算每个粒子的适应度值,再从中选择适应度值最小的粒子作为种群的全局最优粒子,并将第一代中每个粒子设置为其历史最优粒子;其中,粒子的适应度值的具体计算方法如下:
一颗XSMT的长度是该布线树中所有边片段的长度总和,其计算方式如下所示:
Figure GDA0002512267880000051
其中,l(ei)表示在布线树Tx中每个边片段ei的长度。
在计算XST中每条边片段的长度总和时,所有边片段分为以下四种类型:水平边片段、垂直边片段、45°斜边片段及135°斜边片段;算法首先将所有边片段分为以上四种类型,再将其中45°边片段顺时针方向旋转为水平边,同时将135°边片段顺时针方向旋转为垂直边,然后将最终的水平边按照其左边引脚的大小从下向上、从左到右的方式排列,同时将垂直边按照其下边引脚的大小从左到右、从下到上的方式排列,最后,XST的长度即为这些边片段扣除重复部分的总长度之和。
因为PSO中粒子的适应度函数值通常是越小代表该粒子越优秀,所以本文算法中的粒子的适应度函数设计如下所示:
fitness=1/(L(TX)+1)
其中,分母是布线树的长度加1,这样是为了防止当布线树的长度可能为0,即可能两端线网中两个引脚的位置重合这种情况带来的计算无意义问题。
步骤4:采用混合转换策略作为粒子更新的基础操作;混合转换策略的具体内容为:迭代算法的前期采用便变换和点变换结合的变换方式,后期只采用点变换。
步骤5:根据粒子群的更新公式更新粒子的位置和速度粒子群的更新公式为:vcxza;
Figure GDA0002512267880000052
其中,w是惯性权重因子,c1和c2是加速因子,N1表示变异操作,N2和N3表示交叉操作,r1,r2,r3都是在区间[0,1)的随机数。
进一步的,所述粒子群的更新公式分为三个更新操作,包括粒子的速度更新,粒子的个体经验学习和粒子与种群其他粒子进行合作学习;
粒子的速度更新表示如下:
Figure GDA0002512267880000061
粒子的个体经验学习表示如下:
Figure GDA0002512267880000062
粒子与种群其他粒子进行合作学习
Figure GDA0002512267880000063
进一步的,所述惯性权重因子w的更新过程如下:
Figure GDA0002512267880000064
其中,w_star表示参数w迭代开始的初始值,w_end表示参数w的迭代的最终值,eval表示当前迭代次数,evaluations则表示算法的最大迭代次数。
进一步的,所述加速因子c1和c2的更新过程如下:
Figure GDA0002512267880000065
c2=1-c1
其中,fAVE表示种群中所有粒子适应度值的平均值,p(i).fitness表示粒子i的适应度值,fMIN表示种群中适应度的最小值,fMAX表示种群中适应度的最大值。
步骤6:重新计算每个粒子的适应度值,若当前粒子的适应度值小于其历史最优值,则将更新后的粒子设置为其历史最优粒子;
步骤7:若更新后的粒子的适应度值小于种群的全局最优粒子的适应度值,则将更新后的粒子设置为种群全局最优粒子;
步骤8:检查是否达到设定的算法最大迭代次数,如果达到,则算法终止,反之,转到步骤4。
为了让一般技术人员更好的理解本发明的技术方案,以下结合具体设计过程对本发明进行详细介绍。
1、混合转换策略的设计
为了进一步扩大算法的寻优空间同时加快算法的收敛效率,本发明步骤4提出了一种基于点变换和边变换的混合转换策略,
性质1采用PS点转换策略,在构建Steiner最小树时,其优化能力有限。
如果算法只采用PS点转换策略,即是一种基于最小生成树构造SMT的方法,在矩形的布线结构中,基于最小生成树构造的SMT相对于准确的RSMT来说,其线长距离最多是准确解方案的1.5倍,离最优解有一定距离,如公式(1)所示,其中COST(MST)代表基于最小树构造的SMT的长度,而COST(RSMT)代表准确算法所构造的RSMT。在走线方向更多的X结构布线问题,这种最大距离将更远。
COST(MST)/COST(RSMT)<3/2 (1)
因此,在构建SMT如果只进行PS点转换,会存在解空间不一定包含最优解,甚至离最优解有将近0.5倍的最优线长距离。故本文需要在此基础上改进转换策略,这里我们先探讨了另外一种基础转换策略——边变换。
性质2边变换的引入,扩大了算法的搜索空间,有机会获得相对于点变换转换方式更优的布线方案,甚至在有些情况可以帮助算法搜索到最优解。
在构建XSMT的工作中,更新操作只考虑到PS变换。然而,在构建RSMT或XSMT或的过程中,布线树的拓扑可能是变化的。例如,如图3A和图3B所示的两张图分别是构建XSMT的进化过程中存在两种布线树拓扑,两者的拓扑是不一样的,其中边(4,2)存在于如图3B所示的布线树中,而在如图3A所示的布线树中却不存在。因此在RSMT或XSMT构建算法的更新操作中,除了PS点变换操作外,仍需引入边变换操作。而且边变换操作的引入可进一步增强线长的优化能力。
考虑到PS点变换和边变换在不同测试实例中,各有优势,因此,我们设想把这两种变换通过不同的组合方式进行策略,寻找一种最优的混合策略。
(1)边变换与PS点变换的混合策略
性质3边变换与PS点变换的混合策略,进一步扩大了算法的搜索空间,同时带来收敛速度较慢,甚至有些情况会收敛不到一个更优的解方案。
最直接的想法就是在算法的整个迭代过程中均采用边变换与PS点变换结合的混合方式,将这种方式应用在前期工作算法中,获得相关的实验室结果。如表1所示。从表1可以看出在部分测试实例中,边变换与PS点变换的混合策略(表中用‘PS+E’表示)的寻优空间大于PS点变换,但是由于PS+E策略的搜索空间变大,可能在某些测试实例中,寻优能力弱于点变换和边变换,如表3所示中,Test5,6,7,9四个测试实例,PS+E策略会比点变换策略寻优结果差,而在Test5,6,8,9四个测试实例,PS+E策略会比点变换策略寻优结果差。
表1基于PS+E混合策略的线长优化情况
Figure GDA0002512267880000081
(2)(PS+E):PS混合策略
性质4PS+E可进一步扩大算法的搜索空间,而PS转换策略有助于加快算法的收敛效率。
表2基于(PS+E):PS混合策略的线长优化情况
Figure GDA0002512267880000091
(PS+E):PS混合策略是指在迭代算法的前期采用边变换和点变换结合,后期采用只进行单纯的点变换。这种混合策略,可取得相对点变换策略来说1.22%的线长减少率,如表2所示。这里要特别指出,在这种基于同样布线结构的Steiner最小树构造方法对比中,能够取得1%的线长减少率,已经是不错的优化效果,所以这种(PS+E):PS混合策略的寻优效果不错。
从表2的实验结果来看,算法迭代的前期采用PS+E的搜索策略,一定程度上扩大了算法的搜索空间,而后期采用单纯PS策略,帮助算法在较丰富的搜索空间中收敛到一个更优解。
综上,我们选择优化效果最好的混合策略(PS+E):PS作为本文的一个高效的混合转换策略,并将其与PSO结合,从而提出一种结合自适应PSO和混合转换策略的有效算法以更高效地求解X结构下VLSI布线问题。
2、算法编码策略的设计
一棵生成树的编码策略通常可包括Prufer数编码和边点对编码两种方式。Prufer数编码的长度比边点对编码的长度少三分之二左右,但由于Prufer数编码改变编码中一位数字,会对整个生成树的拓扑产生很大的变化,尚不能较好地保留粒子的最优拓扑信息。而边点对编码则能更好地适应粒子群优化算法在迭代过程中保留粒子的最优拓扑信息的特点,且改变边点对编码中一位编码一般不会对生成树的拓扑产生巨大影响,故算法采用更适合于进化算法的边点对编码方式作为粒子的编码策略。
定义1(Pseudo-Steiner点)假设除了引脚外的连接点,称为Pseudo-Steiner(PS)点。图2A至2E中S为PS点,PS点包含Steiner点。
定义2(0选择)如图2A所示,(x1,y1)和(x2,y2)为边L的两个端点A和B的坐标信息,其中x1<x2。边L对应的PS点的选择方式如图2B所示,从A先引曼哈顿结构边至S再从S引非曼哈顿结构边至B,则称作0选择。
定义3(1选择)如图2C所示,从A先引非曼哈顿结构边至S再从S引曼哈顿结构边至B,则称作1选择。
定义4(2选择)如图2D所示,从A先引竖直边至S再从S引水平边至B,则称作2选择。
定义5(3选择)如图2E所示,从A先引水平边至S再从S引竖直边至B,则称作3选择。
边点对编码是用一条生成树的边和一位在定义2至5中所定义的PS点选择方式表示候选X结构Steiner最小树的一条边。PS点选择方式是将生成树的边转化成X结构Steiner树(X-architecture Steiner Tree,XST)的X结构边。每个PS点选择方式位包含了四种选择方式,即0选择、1选择、2选择和3选择。如果一个待布线网有n个引脚,则每一棵候选的XST包含n-1条生成树边、n-1位PS点选择方式及一位数字表示粒子的适应度值。又由于一条生成树的边需要两位数字表示该边的两个引脚,所以每个粒子编码的总长度为3×(n-1)+1。例如,一个候选XST(n=8)可用PSO-HT-XSMT算法中一个粒子的编码表示,其编码采用如下所示的数字串表示:
7 6 0 6 4 1 7 5 1 5 1 2 1 3 0 1 8 1 5 2 2 10.0100
其中,最后一位数字‘10.0100’是表示该粒子的适应度值,而每一位斜体字体的数字则是表示每条边相应的PS点选择方式。第一个数字子串(760)表示一棵Steiner树的一条边,该边两个引脚编号为7和6,PS点选择方式位是如定义2所示的0选择方式。
3、算法的操作算子设计
本算法基于遗传算法的交叉和变异操作提出了PSO-HT-XSMT算法的粒子更新方式以实现构建XSMT这一离散问题。粒子的更新公式如下所示。
Figure GDA0002512267880000111
其中,w是惯性权重因子,c1和c2是加速因子,N1表示变异操作,N2和N3表示交叉操作,假定r1,r2,r3都是在区间[0,1)的随机数。
边变换操作的引入使得在算法迭代过程中布线树可能会出现环的情况,导致无效解的产生,从而破坏粒子编码的强壮性。为了解决边变换操作带来的不足,本算法将并查集策略融入到以下三个更新操作中。
(1)粒子的速度更新可表示如下。
Figure GDA0002512267880000112
其中,w表示粒子进行变异操作的概率。
在粒子的变异过程中,本文算法随机选择准备变异的一条边进行删除,删除之后布线树被分为两棵子树。本文算法使用并查集分别记录两棵子树的引脚集合,并从两个引脚集合中分别选取一个引脚作为变异后新布线边的两个端点。变异算子的伪代码如算法1所示:
Figure GDA0002512267880000113
Figure GDA0002512267880000121
(2)粒子的个体经验学习可表示如下。
Figure GDA0002512267880000122
其中,c1表示粒子与其历史最优方案进行交叉操作的概率。
(3)粒子与种群其他粒子进行合作学习可表示如下。
Figure GDA0002512267880000123
其中,c2表示粒子与种群全局最优方案进行交叉操作的概率。
在公式(4)和(5)中,在粒子跟其历史最优位置进行交叉,本文算法选取它们相应的布线树之间的共同边集合作为交叉后新布线树的一部分边,将剩余的边存储在一个集合,称为剩余边集合。然后从剩余边集合中不断随机选取边作为交叉后新布线树的边,直至构成一棵完整的新布线树,这个过程中采用并查集策略避免在随机选取边的过程中,出现环的情况。交叉的过程交叉算子的伪代码如算法2所示。
Figure GDA0002512267880000131
4、算法的加速因子的设计
性质5惯性权重因子w的设置将影响到粒子的局部搜索能力和全局搜索能力的平衡情况。
从粒子的速度更新公式中可看出,公式的第一部分为粒子提供了在搜索空间的飞行动力,代表粒子在飞行轨道中受先前速度的影响程度。因此,惯性权重因子w是反映这种影响程度的具体数值。
性质6设置值较大的惯性权重因子w将使算法拥有更强的全局搜索能力。
从性质5中可看出惯性权重因子w是决定粒子保留多少先前的飞行速度。因此一个较大的惯性权重因子将增强粒子搜索未知区域的能力,有助于提高算法的全局搜索能力从而跳出局部最优解。而一个较小的惯性权重因子预示算法将主要集中在当前搜索位置的附近搜索,有助于增强算法的局部搜索能力从而加快收敛速度。
在早期工作中,Shi和Eberhart设计了一种基于线性递减的惯性权重因子调整策略的PSO算法。为了确保算法在早期拥有较强的全局搜索能力,采用一个较大的惯性权重因子,同时为了保证后期的收敛速度,即增加局部搜索能力,则后期采用一个较小的惯性权重因子。通过在四种不同的基准测试函数上的实验仿真,最终的实验结果表明基于这种参数调整策略的PSO算法能够有效地提高算法的性能。
性质7值较大的加速因子c1可能导致算法在局部范围内搜索,而值较大的加速因子c2则将使得算法过早收敛至局部最优解。
加速因子c1和c2是用于粒子间的交流学习。本文根据性质8,采用根据粒子的适应度值判断目前粒子与当前种群的平均适应度值的优劣情况,如果比当前种群的均值更优,则采用较大的c1值,保障这种较优粒子在自己附近搜索。若当前粒子劣于当前种群的均值,则采用较大的c2值,促使较差粒子向种群最优搜索。通过这种方式,可保障算法中较优粒子可在自己的局部范围内进行详细搜索,而较差粒子可倾向于种群的学习,使算法较快较好地收敛到质量好的解方案。
基于以上PSO算法的参数性质分析,本文算法的惯性权重因子w采用Shi等所提的线性递减策略进行设置如公式(6)所示,具体设置为惯性权重因子w从0.9线性递减至0.1。两个加速因子c1和c2采用本文所提的自适应策略,如公式(7)和(8)所示。每次迭代中相应的参数设置具体按照公式(9),(10)和(11)进行更新。
Figure GDA0002512267880000141
Figure GDA0002512267880000142
c2=1-c1(8)
其中,w_star表示参数w迭代开始的初始值,w_end表示参数w的迭代的最终值,eval表示当前迭代次数,evaluations则表示算法的最大迭代次数。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (6)

1.一种基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于,包括以下步骤:
步骤1:读取测试电路数据,引脚的坐标按照X轴、Y轴的升序进行排序;
步骤2:初始化基于自适应PSO和混合转换策略的X结构Steiner最小树算法中种群大小、迭代次数、惯性权重因子、加速因子的数值,同时随机生成初始种群;
步骤3:计算每个粒子的适应度值,再从中选择适应度值最小的粒子作为种群的全局最优粒子,并将第一代中每个粒子设置为其历史最优粒子;
步骤4:采用混合转换策略作为粒子更新的基础操作;
步骤5:根据粒子群的更新公式更新粒子的位置和速度;
步骤6:重新计算每个粒子的适应度值,若当前粒子的适应度值小于其历史最优值,则将更新后的粒子设置为其历史最优粒子;
步骤7:若更新后的粒子的适应度值小于种群的全局最优粒子的适应度值,则将更新后的粒子设置为种群全局最优粒子;
步骤8:检查是否达到设定的算法最大迭代次数,如果达到,则算法终止,反之,转到步骤4;
所述步骤3和步骤6中计算粒子的适应度值的具体方法如下:
fitness=1/(L(TX)+1)
Figure FDA0002512267870000011
其中,fitness为粒子的适应度值,L(Tx)为一颗X结构Steiner最小树的长度,l(ei)表示布线树Tx中第i个边片段ei的长度;
在计算X结构Steiner树中每条边片段的长度总和时,所有边片段分为以下四种类型:水平边片段、垂直边片段、45°斜边片段及135°斜边片段;首先将所有边片段分为以上四种类型,再将其中45°边片段顺时针方向旋转为水平边,同时将135°边片段顺时针方向旋转为垂直边,然后将最终的水平边按照其左边引脚的大小从下向上、从左到右的方式排列,同时将垂直边按照其下边引脚的大小从左到右、从下到上的方式排列,最后,X结构Steiner树的长度即为这些边片段扣除重复部分的总长度之和。
2.根据权利要求1所述的基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于:所述步骤4中混合转换策略的具体内容为:迭代算法的前期采用便变换和点变换结合的变换方式,后期只采用点变换。
3.根据权利要求1所述的基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于:所述步骤5中粒子群的更新公式为:
Figure FDA0002512267870000021
其中,w是惯性权重因子,c1和c2是加速因子,N1表示变异操作,N2和N3表示交叉操作,r1,r2,r3都是在区间[0,1)的随机数。
4.根据权利要求3所述的基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于:所述粒子群的更新公式分为三个更新操作,包括粒子的速度更新,粒子的个体经验学习和粒子与种群其他粒子进行合作学习;粒子的速度更新表示如下:
Figure FDA0002512267870000022
粒子的个体经验学习表示如下:
Figure FDA0002512267870000023
粒子与种群其他粒子进行合作学习
Figure FDA0002512267870000024
5.根据权利要求3所述的基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于:所述惯性权重因子w的更新过程如下:
Figure FDA0002512267870000025
其中,w_star表示参数w迭代开始的初始值,w_end表示参数w的迭代的最终值,eval表示当前迭代次数,evaluations则表示算法的最大迭代次数。
6.根据权利要求3所述的基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法,其特征在于:所述加速因子c1和c2的更新过程如下:
Figure FDA0002512267870000031
c2=1-c1
其中,fAVE表示种群中所有粒子适应度值的平均值,p(i).fitness表示粒子i的适应度值,fMIN表示种群中适应度的最小值,fMAX表示种群中适应度的最大值。
CN201710435947.9A 2017-06-10 2017-06-10 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法 Active CN107247844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710435947.9A CN107247844B (zh) 2017-06-10 2017-06-10 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710435947.9A CN107247844B (zh) 2017-06-10 2017-06-10 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法

Publications (2)

Publication Number Publication Date
CN107247844A CN107247844A (zh) 2017-10-13
CN107247844B true CN107247844B (zh) 2020-11-03

Family

ID=60018218

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710435947.9A Active CN107247844B (zh) 2017-06-10 2017-06-10 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法

Country Status (1)

Country Link
CN (1) CN107247844B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109583133B (zh) * 2018-12-20 2022-05-17 福州大学 一种x结构下基于多阶段转换和遗传操作的粒子群优化斯坦纳最小树构造方法
CN110032808B (zh) * 2019-04-16 2022-05-13 福州大学 基于混合离散粒子群优化的轨道分配器构建方法
CN110059405B (zh) * 2019-04-16 2022-05-13 福州大学 X结构下带差分进化的高质量Steiner最小树构建方法
CN110795907B (zh) * 2019-09-30 2021-05-18 福州大学 一种考虑布线资源松弛的X结构Steiner最小树构造方法
CN111339726B (zh) * 2020-02-26 2022-04-05 福州大学 考虑电压转换速率的X结构Steiner树构造方法
CN111539181B (zh) * 2020-04-28 2022-05-13 福州大学 基于离散差分进化的多策略优化x结构最小树构建方法
CN111582431B (zh) * 2020-05-14 2022-07-08 福州大学 一种两步式X结构Steiner最小树构建方法
CN111723544A (zh) * 2020-06-18 2020-09-29 福州大学 X结构下考虑障碍内布线的Steiner树构建方法
CN112395822B (zh) * 2020-11-26 2022-08-09 福州大学 时延驱动的非曼哈顿结构Steiner最小树构建方法
CN113065310B (zh) * 2021-03-30 2022-06-14 福州大学 基于粒子群算法的连续微流体生物芯片高级综合设计方法
CN113377646B (zh) * 2021-05-20 2023-11-14 山东科技大学 一种基于粒子群算法的数据流测试用例自动生成方法
US11501052B1 (en) * 2021-05-27 2022-11-15 Taiwan Semiconductor Manufacturing Company, Ltd Conductor scheme selection and track planning for mixed-diagonal-Manhattan routing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491641A (en) * 1993-10-04 1996-02-13 Lsi Logic Corporation Towards optical steiner tree routing in the presence of rectilinear obstacles
CN103902775B (zh) * 2014-03-31 2017-02-15 福州大学 超大规模集成电路多层绕障Steiner最小树构造方法
CN106682682A (zh) * 2016-10-20 2017-05-17 北京工业大学 一种基于粒子群优化算法对支持向量机的优化方法

Also Published As

Publication number Publication date
CN107247844A (zh) 2017-10-13

Similar Documents

Publication Publication Date Title
CN107247844B (zh) 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法
CN111582431B (zh) 一种两步式X结构Steiner最小树构建方法
CN108053119B (zh) 一种求解零等待流水车间调度问题的改进粒子群优化方法
CN109948029B (zh) 基于神经网络自适应的深度哈希图像搜索方法
CN109583133B (zh) 一种x结构下基于多阶段转换和遗传操作的粒子群优化斯坦纳最小树构造方法
CN112036512A (zh) 基于网络裁剪的图像分类神经网络架构搜索方法和装置
CN110533096A (zh) 基于K-means聚类的多元宇宙算法的DNA存储编码优化方法
CN110659284A (zh) 基于树图结构的区块定序方法及系统、数据处理终端
CN112528591A (zh) 一种基于联合蒙特卡洛树搜索的pcb板自动布线方法
CN109582985A (zh) 一种改进的遗传退火的片上网络映射方法
CN111882065A (zh) 映射脉冲神经网络到类脑计算平台的方法、系统及介质
CN106204719B (zh) 基于二维邻域检索的三维场景中海量模型实时调度方法
CN115563927A (zh) 一种gpu加速构建最小直角斯坦纳树的芯片布线方法
CN104866903A (zh) 基于遗传算法的最美路径导航算法
JP6325762B1 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
Zhao et al. Dynamic regret of online markov decision processes
CN110222816B (zh) 深度学习模型的建立方法、图像处理方法及装置
CN110751319A (zh) 基于Alpha Zero以及结合启发式策略的自动排料方法
CN112183001B (zh) 一种基于超图的集成电路的多级聚类方法
CN101853202A (zh) 一种基于遗传算法和带权匹配算法的测试案例自动生成方法
CN107480096B (zh) 一种大规模群体仿真中的高速并行计算方法
CN111582094A (zh) 并行选取超参数设计多分支卷积神经网络识别行人的方法
CN113822008B (zh) 基于多引脚同时扩散搜索的超大规模集成电路布线方法
CN114841611A (zh) 一种基于改进海洋捕食者算法求解作业车间调度的方法
CN111881327A (zh) 基于顶点重排序与优先缓存的大数据处理能力测试方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant