CN111582431B - 一种两步式X结构Steiner最小树构建方法 - Google Patents

一种两步式X结构Steiner最小树构建方法 Download PDF

Info

Publication number
CN111582431B
CN111582431B CN202010410094.5A CN202010410094A CN111582431B CN 111582431 B CN111582431 B CN 111582431B CN 202010410094 A CN202010410094 A CN 202010410094A CN 111582431 B CN111582431 B CN 111582431B
Authority
CN
China
Prior art keywords
particle
tree
edge
particles
pin
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
CN202010410094.5A
Other languages
English (en)
Other versions
CN111582431A (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 CN202010410094.5A priority Critical patent/CN111582431B/zh
Publication of CN111582431A publication Critical patent/CN111582431A/zh
Priority to PCT/CN2020/134417 priority patent/WO2021227463A1/zh
Priority to US17/776,249 priority patent/US11886786B2/en
Application granted granted Critical
Publication of CN111582431B publication Critical patent/CN111582431B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/347Physical level, e.g. placement or routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/06Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及集成电路计算机辅助设计技术领域中针对超大规模集成电路(Very Large Scale Integration,VLSI)的一种两步式X结构Steiner最小树构建方法,充分利用X结构模型和粒子群优化技术的优势,分两步进行实现:1)社会学习离散粒子群搜索阶段,其中包括使用能够保持粒子最优拓扑信息的边点对编码策略,设计考虑线长的适应值函数,采用了一种混沌下降变异策略和新的社会学习策略以设计出新的离散粒子群更新公式;2)线长优化阶段,其中设计了一种基于局部拓扑优化的策略以最小化X结构Steiner树的线长。本发明不仅能保证产生的线网总线长较短,并且具有极强的稳定性,从而构建出高质量的X结构Steiner最小树。

Description

一种两步式X结构Steiner最小树构建方法
技术领域
本发明涉及集成电路计算机辅助设计技术领域,特别是针对超大规模集成电路中的一种两步式X结构Steiner最小树构建方法。
背景技术
SMT(Steiner Minimum Tree,SMT)问题是在给定引脚集合的基础上,通过引入额外的点(Steiner点)来寻找一棵连接这些引脚集合的具有最小代价的布线树。因此,SMT的构建是超大规模集成电路(Very Large Scale Integration,VLSI)布线中的重要环节之一。
随着VLSI制造工艺的不断进步和发展,互连线效应逐渐成为影响芯片性能的重要因素。然而,目前大多数布线算法的研究都是基于曼哈顿结构展开的,这种基于曼哈顿结构的布线模型要求引脚之间的走线方式只能是水平方向和垂直方向,导致芯片中互连线的线长优化更加困难。而非曼哈顿结构由于具有更多的走线方向,能够更加充分利用布线资源,从而提高布线质量,改善芯片的性能。
为了更好地开展非曼哈顿结构下的布线工作,非曼哈顿结构Steiner最小树的构建是关键的一步。X结构是非曼哈顿结构的一种,除了水平和垂直方向,引脚之间的走线还可以使45°和135°方向。而现有的X结构Steiner最小树(X-architecture Steiner MinimumTree,XSMT)构建算法主要分为精确算法和启发式算法。随着问题规模地不断扩大,这些算法要么面临时间复杂度的剧增,要么极易陷入局部极值,很难得到一个高质量的解方案。因此,迫切需要一种高效可行的X结构Steiner最小树构建方法以提高VLSI布线质量,最终优化芯片的性能。
发明内容
有鉴于此,本发明的目的是提供一种两步式X结构Steiner最小树构建方法,目的是在保证时间复杂度较低的前提下,利用粒子群优化算法强大的搜索能力,优化布线树拓扑结构,最终构建一棵线长最短的X结构Steiner树,从而减少布线资源的冗余。
本发明采用以下方案实现:一种两步式X结构Steiner最小树构建方法,包括以下步骤:
步骤S1:提供X结构模型,进行社会学习离散粒子群搜索阶段,通过粒子群优化技术找到一棵具有较短线长的次优X结构Steiner树;
步骤S2:线长优化阶段:设计了一种基于局部拓扑优化的策略用以最小化X结构Steiner树的线长;从而构建出一棵线长最短的X结构Steiner树模型,也就是X结构Steiner最小树。
进一步地,所述X结构模型的定义如下:
定义1.伪Steiner点:假设除了引脚外,引入的额外的连接点,称为伪Steiner点即PS(Pseudo-Steiner point,PS);
定义2.0选择:从出发引脚节点先引曼哈顿结构边至PS,再从PS引X结构边至目标引脚节点,这种连接方式称作0选择;
定义3.1选择;从出发引脚节点先引X结构边至PS,再从PS引曼哈顿结构边至目标引脚节点,这种连接方式称作1选择;
定义4.2选择;从出发引脚节点先引竖直边至PS,再从PS引水平边至目标引脚节点,这种连接方式称作2选择;
定义5.3选择;从出发引脚节点先引水平边至PS,再从PS引竖直边至目标引脚节点,这种连接方式称作3选择。
进一步地,所述步骤S1具体包括以下步骤:
步骤S11:使用能够保持粒子最优拓扑信息的边点对编码策略;
步骤S12:设计考虑线长的适应值函数;
步骤S13:采用了一种混沌下降变异策略和新的社会学习策略用以设计出新的离散粒子群更新公式。
进一步地,所述步骤S11的具体内容为:
所述边点对编码是使用一条生成树的边和这条边的PS点选择方式来表示候选X结构Steiner树的一条边;PS点的选择方式是将生成树的边转化成为X结构Steiner树的X结构边;每个PS点选择方式包含4种选择,即0选择、1选择、2选择和3选择;如果一个待布线网有n个引脚,每棵候选的XST包含n-1条生成树边、n-1位PS点选择方式及一位数字表示粒子的适应度值;又由于一条生成树的边需要两位数字表示该边的两个引脚,所以每个粒子编码的总长度为3(n-1)+1。
进一步地,所述步骤S12的具体内容为:
一棵XSMT的长度是该布线树中所有边线段的长度总和:
Figure BDA0002492429370000041
其中l(ei)表示在布线树Tx中每个边线段ei的长度。通常粒子的适应度函数值越小表示该粒子越优秀,所以粒子的适应度计算函数设计如下:
fitness=L(Tx) (2)
进一步地,步骤S13中所述混沌下降变异策略的具体内容为:
采用Logistic映射来产生混沌变量,其公式如下:
zn+1=μ·zn·(1-zn),n=0,1,2,... (3)
其中,z∈(0,1)是混沌变量,混沌变量的初始值z0≠{0.25,0.5,0.75},否则产生的随机序列将具有周期性;μ∈[0,4]是控制参数,如果μ=4,logistic映射将呈现完全的混沌动力学,混沌变量的轨迹在整个搜索空间内都是稠密的,这意味着其混沌结果的区间为[0,1];
为了使粒子群优化算法在迭代前期具有较强的全局勘探能力,而在后期能够快速收敛,同时保持粒子在整个迭代过程中变异的随机性,使用如下具有混沌下降性质的惯性权重:
Figure BDA0002492429370000042
其中,winit和wend分别是惯性权重w的初始值和结束值,Maxiter和iter分别是最大迭代次数的和当前迭代次数,z是混沌变量,遵循公式(3);这样,惯性权重既具有混沌特性,同时又能保持原有的变化趋势。
进一步地,步骤S13中所述新的社会学习策略的具体内容为:
首先,将当前种群中的所有粒子按适应值大小升序排列,则对于每个粒子,位于其前面的粒子群构成了该粒子的样例池;然后,粒子在每次迭代时,都会从自身当前的样例池中随机选择一个粒子作为学习对象;当粒子选择的学习对象是其样例池中的第一个粒子,则粒子此时的学习对象就是种群最优粒子;接着,粒子通过学习其学习对象的历史最优经验,来完成各自的社会学习行为;在这个过程中,不同的粒子,其学习对象不同;而同一个粒子,在不同的迭代即每次社会学习中,其样例池也不一定相同;因此,粒子的社会学习不再单一地只向种群最优粒子学习,当前种群中任何一个更优秀的粒子都可能成为该粒子的学习对象。这样的学习过程允许粒子在进化过程中通过不断学习不同的优秀个体来提升自己,有利于种群的多样化发展,从而有机会探索到更佳的XST模型。
进一步地,步骤S13中所述粒子更新公式的具体内容为:
为了使粒子群优化算法能够更好地解决XSMT这个离散问题,引入变异和交叉算子;粒子遵循以下的更新公式:
Figure BDA0002492429370000051
其中,w为惯性权重因子,决定了粒子变异的概率;c1和c2为加速因子,决定了两次交叉的概率;F1为变异操作,代表惯性保持部分;F2和F3为交叉操作,分别代表粒子的个体认知和社会认知部分;具体的更新过程如下:
惯性保持部分:
算法通过F1操作完成粒子的速度更新,表示如下:
Figure BDA0002492429370000061
其中,w为粒子进行变异操作的概率,遵循公式(4)的混沌下降公式,r1是[0,1)内的随机数。
所述变异和交叉的具体内容为:采用两点变异,如果产生的随机数r1<w,粒子群优化算法将随机选出两条边,更换这两条边的选择方式,从而达到随机改变布线树拓扑结构的目的;如果产生的随机数r1≥w,则保持布线树不变。
个体认知部分:
算法通过F2完成粒子的个体认知,表示如下:
Figure BDA0002492429370000062
其中,c1表示粒子与个体历史最优方案(Xi P)交叉的概率,r2是[0,1)内的随机数;这部分反应了粒子学习自身经验的过程;
社会认知部分:
算法通过F3完成粒子的社会认知,表示如下:
Figure BDA0002492429370000063
其中,c2表示粒子与样例池中的任意一个粒子的历史最优方案
Figure BDA0002492429370000071
交叉的概率,r3是[0,1)内的随机数;这部分反应了粒子间的信息共享和交流;
公式(7,8)中的交叉操作如下:当产生的随机数r2<c1(或r3<c2),F2执行交叉操作,对一棵含n个引脚的斯坦纳树:粒子群优化算法首先随机产生需要交叉的连续区间[Cstart,Cend],其中Cstart和Cend是[1,n-1]之间的随机整数;然后,找到粒子Xi的学习对象(Xi P或Xk P)在区间[3×Cstart,3×Cend]上的编码;最后,将粒子Xi该区间上的数字替换其学习对象该区间上的编码;经过上述交叉操作,粒子Xi能够从更优秀的粒子上学习到部分基因,反复的迭代学习就能使得粒子Xi逐渐向全局最优位置靠拢;并且,设定加速因子c1采用线性递减策略,c2采用线性递增策略。
进一步地,所述步骤S2的具体内容为:基于局部拓扑优化的策略遍历每个引脚至多q条邻接边,并进行适当的调整,其中,1≤q≤Q,Q为线网中引脚的最大度数;同时,通过调整参数q的大小,能够获得更好的优化效果或更短的运行时间;q值越接近Q,优化效果就越好;每个引脚被赋予两个属性,一个是该引脚的度数degree,代表了其邻接点的个数;另一个是该引脚的邻接点列表adj_list[],用来存储各个邻接点;该阶段具体的实现过程如下:
步骤SA:记录XST中每个点的度数及其邻接点列表,对于度大于q的点来说,仅仅记录该点的q个邻接点;
步骤SB:设置局部拓扑优化的顺序为:从度数大的引脚往度数小的引脚优化;通过将所有引脚按度数从大到小排列,同时将每个引脚的邻接点也按度数从大到小排列,来实现先优化密集区域的拓扑结构,再优化稀疏区域的拓扑结构;
步骤SC:依次优化各个点的局部拓扑结构,通过对引脚与各个邻接点之间边的选择方式进行调整,尝试用除当前选择方式以外的其余三种选择方式进行连接,从中保留适应度值最小的连接方式;通过不断调整XST中各个引脚的q条邻接边的PS点选择方式,以获得在当前XST拓扑下的局部最优结构,最终构建具有最短线长的X结构Steiner树。
与现有技术相比,本发明具有以下有益效果:
(1)本发明利用粒子群优化算法强大的搜索能力,优化布线树拓扑结构,最终构建一棵线长最短的X结构Steiner树,从而减少布线资源的冗余。
(2)本发明不仅能保证产生的线网总线长较短,并且具有极强的稳定性,从而构建出高质量的X结构Steiner最小树。
附图说明
图1为本发明实施例的X结构模型图,图1(a)为线段L,图1(b)为0选择,图1(c)为1选择,图1(d)为2选择,图1(e)为3选择。
图2为本发明实施例的XSMT示意图,图2(a)为待布线网的引脚分布;图2(b)为对应的XSMT拓扑图。
图3为本发明实施例的流程图。
图4为本发明实施例的粒子的样例池图。
图5为本发明实施例的粒子的变异操作图。
图6为本发明实施例的粒子的交叉操作图。
图7为本发明实施例的X结构下二度引脚的局部最优拓扑图。
图8为本发明实施例的局部拓扑优化策略的伪代码图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
本实施例提供一种两步式X结构Steiner最小树构建方法,包括以下步骤:
步骤S1:提供X结构模型,进行社会学习离散粒子群搜索阶段,通过粒子群优化技术找到一棵具有较短线长的次优X结构Steiner树;
步骤S2:线长优化阶段:设计了一种基于局部拓扑优化的策略用以最小化X结构Steiner树的线长;从而构建出一棵线长最短的X结构Steiner树模型,也就是X结构Steiner最小树。
其中考虑了所有引脚的度数及其邻接点列表,用以达到优化从密集区域到稀疏区域拓扑结构的目的。
在本实施例中,所述X结构模型的定义如下:
定义1.伪Steiner点:假设除了引脚外,引入的额外的连接点,称为伪Steiner点即PS(Pseudo-Steiner point,PS);
定义2.0选择:从出发引脚节点先引曼哈顿结构边至PS,再从PS引X结构边至目标引脚节点,这种连接方式称作0选择;
定义3.1选择;从出发引脚节点先引X结构边至PS,再从PS引曼哈顿结构边至目标引脚节点,这种连接方式称作1选择;
定义4.2选择;从出发引脚节点先引竖直边至PS,再从PS引水平边至目标引脚节点,这种连接方式称作2选择;
定义5.3选择;从出发引脚节点先引水平边至PS,再从PS引竖直边至目标引脚节点,这种连接方式称作3选择。
在本实施例中,所述步骤S1具体包括以下步骤:
步骤S11:使用能够保持粒子最优拓扑信息的边点对编码策略;
步骤S12:设计考虑线长的适应值函数;
步骤S13:采用了一种混沌下降变异策略和新的社会学习策略用以设计出新的离散粒子群更新公式。
在本实施例中,所述步骤S11的具体内容为:
XSMT构建是一个离散问题,一个有效的编码策略能够提高算法性能和搜索效率。边点对编码策略相比传统的Prufer编码,能够在迭代中保持粒子的最优拓扑信息,且编码长度要短三分之二左右,更适合于粒子群优化算法这类进化算法。
所述边点对编码是使用一条生成树的边和这条边的PS点选择方式来表示候选X结构Steiner树的一条边;PS点的选择方式是将生成树的边转化成为X结构Steiner树的X结构边;每个PS点选择方式包含4种选择,即0选择、1选择、2选择和3选择;如果一个待布线网有n个引脚,每棵候选的XST包含n-1条生成树边、n-1位PS点选择方式及一位数字表示粒子的适应度值;又由于一条生成树的边需要两位数字表示该边的两个引脚,所以每个粒子编码的总长度为3(n-1)+1。例如,一个候选XST(n=8)可使用数字串:7 6 0 6 4 1 7 5 1 5 1 2 13 0 1 8 1 5 2 2 10.01来表示。其中,最后一位数字10.01表示该粒子的适应度值,而每位斜体数字表示每条边相应的PS点选择方式。第一个数字子串(760)表示一棵Steiner树的一条边,该边两个引脚编号分别为7和6,PS点的选择方式为0选择。
在本实施例中,所述步骤S12的具体内容为:
一棵XSMT的长度是该布线树中所有边线段的长度总和:
Figure BDA0002492429370000111
其中l(ei)表示在布线树Tx中每个边线段ei的长度。通常粒子的适应度函数值越小表示该粒子越优秀,所以粒子的适应度计算函数设计如下:
fitness=L(Tx) (2)。
为了方便计算X结构Steiner树的长度,所有的边线段被分为以下四种:水平边线段、垂直边线段、45°边线段和135°边线段。具体的计算过程如下:(1)将45°边顺时针旋转成水平边,同时将135°边顺时针旋转成垂直边;(2)对于水平边,根据边线段左端的引脚坐标,按从下到上再从左到右的顺序排列;(3)对于垂直边,根据边线段下端的引脚坐标,按从左到右再从下到上的顺序排列。则X结构Steiner树的线长等于这些边线段长度的总和(不包括重叠部分)。
在本实施例中,步骤S13中所述混沌下降变异策略的具体内容为:
惯性权重是粒子群算法中一个非常重要的参数,直接影响算法收敛的精度。在传统粒子群优化技术中,惯性权重为一个常数,导致算法的全局勘探能力较弱。为了解决这个问题,本发明设计了一种混沌下降的惯性权重并结合变异算子实现这部分的离散化操作。
混沌搜索是一种具有伪随机性、遍历性和规律性的随机运动,具有对初始值不敏感、计算精度高的特点。本实施例采用Logistic映射来产生混沌变量,其公式如下:
zn+1=μ·zn·(1-zn),n=0,1,2,... (3)
其中,z∈(0,1)是混沌变量,混沌变量的初始值z0≠{0.25,0.5,0.75},否则产生的随机序列将具有周期性;μ∈[0,4]是控制参数,如果μ=4,logistic映射将呈现完全的混沌动力学,混沌变量的轨迹在整个搜索空间内都是稠密的,这意味着其混沌结果的区间为[0,1];
为了使粒子群优化算法在迭代前期具有较强的全局勘探能力,而在后期能够快速收敛,同时保持粒子在整个迭代过程中变异的随机性(具体的变异过程见后文),使用如下具有混沌下降性质的惯性权重:
Figure BDA0002492429370000131
其中,winit和wend分别是惯性权重w的初始值和结束值,Maxiter和iter分别是最大迭代次数的和当前迭代次数,z是混沌变量,遵循公式(3);这样,惯性权重既具有混沌特性,同时又能保持原有的变化趋势。
在本实施例中,步骤S13中所述新的社会学习策略的具体内容为:
社会学习在群体智能的学习行为中扮演着重要角色,有利于种群中的个体在不会增加自身试验和错误的代价的前提下,从其他个体上学习行为。本发明基于一种新的社会学习策略,提出了社会学习离散粒子群优化算法以更好地构建X结构Steiner最小树。
传统的粒子群优化算法采取的社会学习模式是在每次迭代中向当前种群中最优的粒子学习,而本发明通过引入样例池,改变了这种单一的学习方式。首先,将当前种群中的所有粒子按适应值大小升序排列,则对于每个粒子,位于其前面的粒子群构成了该粒子的样例池;然后,粒子在每次迭代时,都会从自身当前的样例池中随机选择一个粒子作为学习对象;当粒子选择的学习对象是其样例池中的第一个粒子,则粒子此时的学习对象就是种群最优粒子;接着,粒子通过学习其学习对象的历史最优经验,来完成各自的社会学习行为;在这个过程中,不同的粒子,其学习对象不同;而同一个粒子,在不同的迭代即每次社会学习中,其样例池也不一定相同;因此,粒子的社会学习不再单一地只向种群最优粒子学习,当前种群中任何一个更优秀的粒子都可能成为该粒子的学习对象。这样的学习过程允许粒子在进化过程中通过不断学习不同的优秀个体来提升自己,有利于种群的多样化发展,从而有机会探索到更佳的XST模型。
图4显示了粒子学习的样例池。五角星是未知的待探索的最优解,粒子XG是目前种群找到的最优解。对粒子Xi来说,位于以XG位置为圆心,Xi和XG之前距离为半径的圆以外的粒子是相对落后的粒子,而位于该圆以内的粒子比Xi更接近全局最优解,具有比Xi更好的适应值,这些粒子(包括全局最优解XG)构成了Xi的样例池,其中每一个粒子都有可能成为其社会学习的对象。粒子Xi在每一次迭代会随机选择样例池中的任意一个粒子,通过学习该粒子的历史经验(即学习该粒子的历史最优方案),来完成自身的社会学习过程。
在本实施例中,步骤S13中所述粒子更新公式的具体内容为:
为了使粒子群优化算法能够更好地解决XSMT这个离散问题,引入变异和交叉算子;粒子遵循以下的更新公式:
Figure BDA0002492429370000141
其中,w为惯性权重因子,决定了粒子变异的概率;c1和c2为加速因子,决定了两次交叉的概率;F1为变异操作,代表惯性保持部分;F2和F3为交叉操作,分别代表粒子的个体认知和社会认知部分;具体的更新过程如下:
惯性保持部分:
算法通过F1操作完成粒子的速度更新,表示如下:
Figure BDA0002492429370000151
其中,w为粒子进行变异操作的概率,遵循公式(4)的混沌下降公式,r1是[0,1)内的随机数;
所述变异和交叉的具体内容为:采用两点变异,如果产生的随机数r1<w,粒子群优化算法将随机选出两条边,更换这两条边的选择方式,从而达到随机改变布线树拓扑结构的目的;如果产生的随机数r1≥w,则保持布线树不变。图5给出了一棵含有6个引脚的布线数的变异示意图,布线数下方是粒子的编码(图中未给出粒子适应值)。从图5可以看到,算法随机选择了粒子Xi:321122253423260673的两条边m1(3,2,1)和m2(2,5,3),经过F1操作后,m1和m2的布线方式分别由1选择,3选择变成2选择和0选择。
个体认知部分:
算法通过F2完成粒子的个体认知,表示如下:
Figure BDA0002492429370000152
其中,c1表示粒子与个体历史最优方案(Xi P)交叉的概率,r2是[0,1)内的随机数;这部分反应了粒子学习自身经验的过程;
社会认知部分:
算法通过F3完成粒子的社会认知,表示如下:
Figure BDA0002492429370000161
其中,c2表示粒子与样例池中的任意一个粒子的历史最优方案(Xk P)交叉的概率,r3是[0,1)内的随机数;这部分反应了粒子间的信息共享和交流;
公式(7,8)中的交叉操作如下:当产生的随机数r2<c1(或r3<c2),F2执行交叉操作,对一棵含n个引脚的斯坦纳树:粒子群优化算法首先随机产生需要交叉的连续区间[Cstart,Cend],其中Cstart和Cend是[1,n-1]之间的随机整数;然后,找到粒子Xi的学习对象(Xi P或Xk P)在区间[3×Cstart,3×Cend]上的编码;最后,将粒子Xi该区间上的数字替换其学习对象该区间上的编码;如图6所示,粒子Xi(321122253423260673)是待交叉的粒子,粒子(321121250423262673)是其学习对象,在公式(7)中呈现为个体历史最优粒子,在公式(8)中呈现为样例池中任意粒子的历史最优方案。算法首先产生一个连续区间[Cstart,Cend]=[2,4],对应的需要交叉的边为e1,e2和e3;接着,找到Xi的学习对象在区间[3×(2-1),3×4]=[3,12]上的编码:121250423,;最后,将粒子Xi该区间上的编码替换为上述编码串。交叉操作结束后,Xi中的边e1,e2和e3的布线方式分别由2选择,3选择和3选择转变成1选择,0选择和3选择,同时其余边的拓扑结构不变。
经过上述交叉操作,粒子Xi能够从更优秀的粒子上学习到部分基因,反复的迭代学习就能使得粒子Xi逐渐向全局最优位置靠拢;并且,设定加速因子c1采用线性递减策略,c2采用线性递增策略,用以使得粒子群优化算法在迭代前期具有较大概率学习自身历史经验以增强算法的全局勘探能力,而在迭代后期具有较大概率学习优秀粒子的历史经验以增强算法开发能力,从而快速收敛至一个接近全局最优的位置。
在本实施例中,所述步骤S2的具体内容为:
考虑X结构下二度引脚所在的局部拓扑,其邻接点的相对位置以及它们与PS的相对位置决定了它们与该引脚之间的最佳连接方式是直角结构还是非曼哈顿结构;不同的引脚分布位置自然会产生不同的拓扑结构,因此,设计了基于局部拓扑的优化策略来进一步优化第一阶段得到的X结构Steiner树,考虑到实际线网结构的复杂性,本发明没有对引脚的所有邻接边进行调整,否则会付出很大的时间代价。因此,基于局部拓扑优化的策略遍历每个引脚至多q条邻接边,并进行适当的调整,其中,1≤q≤Q,Q为线网中引脚的最大度数;同时,通过调整参数q的大小,能够获得更好的优化效果或更短的运行时间;q值越接近Q,优化效果就越好;该局部拓扑优化策略的伪代码如图8所示。每个引脚被赋予两个属性,一个是该引脚的度数degree,代表了其邻接点的个数;另一个是该引脚的邻接点列表adj_list[],用来存储各个邻接点;该阶段具体的实现过程如下:
步骤SA:记录XST中每个点的度数及其邻接点列表,对于度大于q的点来说,仅仅记录该点的q个邻接点;
步骤SB:设置局部拓扑优化的顺序为:从度数大的引脚往度数小的引脚优化;通过将所有引脚按度数从大到小排列,同时将每个引脚的邻接点也按度数从大到小排列,来实现先优化密集区域的拓扑结构,再优化稀疏区域的拓扑结构;
步骤SC:依次优化各个点的局部拓扑结构,通过对引脚与各个邻接点之间边的选择方式进行调整,尝试用除当前选择方式以外的其余三种选择方式进行连接,从中保留适应度值最小的连接方式;通过不断调整XST中各个引脚的q条邻接边的PS点选择方式,以获得在当前XST拓扑下的局部最优结构,最终构建具有最短线长的X结构Steiner树。
较佳的,在本实施例中,1.X结构模型:
X结构是非曼哈顿结构的一种,除了水平和垂直方向,引脚之间的走线还可以使45°和135°方向。本发明使用X结构作为Steiner最小树的布线模型,定义如下:
定义1.伪Steiner点。假设除了引脚外,引入的额外的连接点,称为伪Steiner点(Pseudo-Steiner point,PS)。
定义2.0选择。从出发引脚节点先引曼哈顿结构边至PS,再从PS引X结构边至目标引脚节点,这种连接方式称作0选择。图1(a)给出了连接引脚A和B的边L。边L对应的PS点的选择方式如图1(b)所示。
定义3.1选择。从出发引脚节点先引X结构边至PS,再从PS引曼哈顿结构边至目标引脚节点,这种连接方式称作1选择,如图1(c)所示。
定义4.2选择。从出发引脚节点先引竖直边至PS,再从PS引水平边至目标引脚节点,这种连接方式称作2选择,如图1(d)所示。
定义5.3选择。从出发引脚节点先引水平边至PS,再从PS引竖直边至目标引脚节点,这种连接方式称作3选择,如图1(e)所示。
2.X结构Steiner最小树:
X结构Steiner最小树是VLSI布线中多端线网的最佳连接模型。XSMT问题描述为:给定引脚集合P={P1,P2,...,Pn}为待布线网的n个引脚,每一个引脚Pi(1≤i≤n)对应一个坐标对(xi,yi)。通过X结构的布线方式连接集合P中所有的引脚,其中PS点的选择包括定义2-5给出的四种选择,从而构建一棵XSMT。如图2所示,图2(a)为待布线网的引脚分布,其所对应的一棵XSMT的拓扑图如图2(b)所示。
3.X结构Steiner最小树构建目标:
考虑线长的X结构Steiner最小树构建问题是在给定引脚信息的情况下,通过组合四种PS点的选择方式,来连接所有的引脚,最终构建一棵具有最短线长的X结构Steiner树。因此,布线树的总线长是衡量布线结果质量高低的一个重要指标,直接影响芯片的性能。同时,由于本文采取的是一种基于群体智能的启发式算法,产生的解方案不是唯一确定的,这就需要设计的方法具有较强的稳定性,在多次实验下都能获得优质的解。因此,本发明最终的目标是最小化布线树的总线长以构建X结构Steiner最小树,同时保证该构建方法具有较强的稳定性。
4.方法概述:
所提出的两步式X结构Steiner最小树构建方法优化了线网的总线长,具体包括社会学习离散粒子群搜索阶段和线长优化阶段,如图3所示。
在第一阶段,使用了一种全新的粒子群优化技术,主要包括设计能够保持粒子最优拓扑信息的边点对编码策略;考虑线长的适应值函数;一种混沌下降变异策略和新的社会学习策略;提出的新的社会离散粒子群搜索算法融合了变异和交叉算子,能够更好地实现X结构Steiner最小树的构建。在这个阶段,通过粒子群优化技术搜索到一个次优的解方案,可得到比一般启发式算法更短线长的Steiner树。而第二阶段则针对第一阶段得到的次优解方案进行进一步优化,通过优化各个引脚的局部最优拓扑,最小化X结构Steiner树的线长。所提的每个策略和每个阶段的具体实现在后续分别详细描述。
较佳的,本实施例主要分为两个阶段:
第一阶段(社会学习离散粒子群搜索):
本实施例第一阶段的目的是通过粒子群优化技术找到一棵具有较短线长的次优X结构Steiner树。在这一阶段,包括三个关键技术设计:(1)能够保持粒子最优拓扑信息的边点对编码策略;(2)考虑线长的适应值函数;(3)新的离散粒子群更新公式,包括采用混沌下降变异策略和新的社会学习策略。本发明设计的社会学习离散粒子群优化算法使得粒子在每次迭代中不仅会根据自身的经验来学习,也会学习当前群体中任意一个更好的粒子的历史经验。同时,混沌下降的惯性权重也增大了种群进化过程中的多样性,有利于增强算法的勘探能力,从而突破局部极值。另一方面,样例池中的粒子Xk具有比粒子Xi更好的适应值,粒子没有学习此时的Xk,而是直接学习Xk的历史最优方案,有利于加强算法的开发能力,加速算法收敛。该阶段具体的实现过程如下:
(1)初始化种群和各项参数。粒子群优化算法通过最小生成树方法构建初始布线树,并随机初始化每条边的PS选择方式为0选择或1选择。
(2)根据公式(2)计算每个粒子的适应值,并按适应值升序排序:S={X1,...,Xi-1,Xi,Xi+1,...,XM}。
(3)初始化每个粒子的自身历史最优解和种群最优解为其本身,每个粒子的样例池EP={X1,...,Xi-1}。
(4)根据公式(5-8)更新每个粒子的速度和位置。其中,w采用混沌下降策略(公式(4)),c1和c2分别采用线性递减和线性递增策略。
(5)计算每个粒子的适应值。
(6)更新每个粒子的自身历史最优解和样例池,以及种群最优解。
(7)如果满足终止条件(达到设定的最大迭代次数),结束算法;否则,返回步骤4.
本实施例在初始化边的布线选择时,没有随机初始化为定义2-5中的4种PS点选择方式,而是直接随机初始化为0选择和1选择。这是由于直角的走线方式(2选择和3选择)限制了线长的优化能力,而45°和135°的走线方式,更能充分利用有限的布线资源。因此,在某种程度上,将布线树的边初始化为0选择和1选择,能够产生较为优质的初始粒子,加快粒子群优化算法找到最优方案。
虽然粒子群优化算法是一种随机算法,但是本阶段使用的社会学习离散粒子群优化算法具有较强的稳定性。一是因为本发明利用了混沌搜索的伪随机性、遍历性和对初始值不敏感的特点,使得惯性权重的值能较均匀地分布在线性递减的区域中,在变异概率相对稳定的同时又能随迭代次数的增长,逐渐降低。二是因为传统的粒子群优化技术只通过学习种群最优粒子来进行社会学习,对于种群中落后的粒子来说,由于与种群最优粒子得到差距较大,它们的一次更新可能产生很大的位置波动,从而导致算法稳定性较差。而在本发明中,粒子的社会学习是通过样例池实现的,扩大了学习对象的范围,在一定程度上,缓和了这种跳跃的状况,从而提高了算法稳定性。
第二阶段(线长优化):
本实施例第二阶段的目的是针对粒子群优化技术搜索到的次优X结构Steiner树进行更精确的拓扑优化,从而得到最终的XSMT。由于针对大规模离散问题,粒子群优化技术虽然能在有限的时间内找到令人满意的解,但是在大多数情况下,离未知的最优解仍存在有一定的差距。另外,X结构的引入,在一定程度上减少了Steiner树的总线长,但并不是所有的情况,X结构的走线方式都优于直角结构。
图7列出了X结构下二度引脚所在的局部拓扑,v2是一个度数为2的引脚,分别与引脚v1和v3连接(其中s2和s3是v2分别通过直角结构和X结构与v1相连形成的PS点)。在已有的拓扑结构(v2,v3,s1)的基础上(其中s1是连接点v2和v3的PS点),本发明考虑v2和v1之间的连接方式,以使得二度引脚v2具有最优的拓扑结构,主要分为以下情况:
当s2位于s1右侧时(图7(a)):v2通过3选择连接到v1,需要新增线长e(s2,v1);v2通过0选择连接到v1,需要新增线长e(s3,v1)。很明显,(v2,v1,s2)是最优的结构,因为直角边e(s2,v1)始终小于斜边e(s3,v1)。
当s2位于s1左侧时(图7(b)(c)(d)):在图7(b)中,有e(s1,s2)=d,使得e(s1,s2)+e(s2,v1)=e(s3,v1)。在这种情况下,针对已给的拓扑结构,(v2,v1,s2)和(v2,v1,s3)两种连接方式得到的总线长是一样的;而当e(s1,s2)>d时(图7(c)),由于始终有e(s1,s3)+(e(s1,s2)+e(s2,v1))>e(s1,s3)+e(s3,v1),所以v2通过0选择连接到v1,即(v2,v1,s3)是最优的结构;当e(s1,s2)<d时(图7(d)),很明显,相比X结构,直角结构的布线方式能获得更短的线长,即(v2,v1,s2)是最优的结构。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (3)

1.一种两步式X结构Steiner最小树构建方法,其特征在于:包括以下步骤:
步骤S1:提供X结构模型,进行社会学习离散粒子群搜索阶段,通过粒子群优化算法找到一棵具有较短线长的次优X结构Steiner树;
步骤S2:线长优化阶段:设计了一种基于局部拓扑优化的策略用以最小化X结构Steiner树的线长;从而构建出一棵线长最短的X结构Steiner树模型,也就是X结构Steiner最小树;
所述步骤S1具体包括以下步骤:
步骤S11:使用能够保持粒子最优拓扑信息的边点对编码策略;
步骤S12:设计考虑线长的适应度函数;
步骤S13:采用了一种混沌下降变异策略和新的社会学习策略用以设计出新的离散粒子群更新公式;
所述步骤S11的具体内容为:
所述边点对编码策略是使用一条生成树的边和这条边的PS点选择方式来表示候选X结构Steiner树的一条边;PS点选择方式是将生成树的边转化成为X结构Steiner树的X结构边;每个PS点选择方式包含4种选择,即0选择、1选择、2选择和3选择;如果一个布线树有n个引脚,每棵候选X结构Steiner树包含n-1条生成树的边、n-1位PS点选择方式及一位数字表示粒子的适应度函数值;又由于一条生成树的边需要两位数字表示该边的两个引脚,所以每个粒子编码的总长度为3(n-1)+1;
所述步骤S12的具体内容为:
一棵候选X结构Steiner树的长度是该布线树中所有边线段的长度总和:
Figure FDA0003657124490000011
其中l(ei′)表示在布线树Tx中每个边线段ei′的长度;所以粒子的适应度函数设计如下:fitness=L(Tx) (2);
步骤S13中所述混沌下降变异策略的具体内容为:
采用Logistic映射来产生混沌变量,其公式如下:
zt+1=μ·zt·(1-zt),t=0,1,2,... (3)
其中,z∈(0,1)是混沌变量,混沌变量的初始值z0≠{0.25,0.5,0.75},否则产生的随机序列将具有周期性;μ∈[0,4]是控制参数,如果μ=4,logistic映射将呈现完全的混沌动力学,混沌变量的轨迹在整个搜索空间内都是稠密的,这意味着其混沌结果的区间为[0,1];
为了使粒子群优化算法在迭代前期具有强的全局勘探能力,而在后期能够快速收敛,同时保持粒子在整个迭代过程中变异的随机性,使用如下具有混沌下降性质的惯性权重:
Figure FDA0003657124490000021
其中,winit和wend分别是惯性权重w的初始值和结束值,Maxiter和iter分别是最大迭代次数的和当前迭代次数,z是混沌变量,遵循公式(3);这样,惯性权重既具有混沌特性,同时又能保持原有的变化趋势;
步骤S13中所述新的社会学习策略的具体内容为:
首先,将当前种群中的所有粒子按适应度函数值大小升序排列,则对于每个粒子,位于其前面的粒子群构成了该粒子的样例池;然后,粒子在每次迭代时,都会从自身当前的样例池中随机选择一个粒子作为学习对象;当粒子选择的学习对象是其样例池中的第一个粒子,则粒子此时的学习对象就是种群最优粒子;接着,粒子通过学习其学习对象的历史最优经验,来完成各自的社会学习行为;在这个过程中,不同的粒子,其学习对象不同;而同一个粒子,在不同的迭代即每次社会学习中,其样例池也不一定相同;因此,粒子的社会学习不再单一地只向种群最优粒子学习,当前种群中任何一个更优秀的粒子都可能成为该粒子的学习对象;这样的学习过程允许粒子在进化过程中通过不断学习不同的优秀个体来提升自己,有利于种群的多样化发展,从而有机会探索到更佳的X结构Steiner树模型;
所述步骤S2的具体内容为:
基于局部拓扑优化的策略遍历每个引脚至多q条邻接边,并进行调整,其中,1≤q≤Q,Q为布线树中引脚的最大度数;同时,通过调整参数q的大小,能够获得更好的优化效果或更短的运行时间;q值越接近Q,优化效果就越好;每个引脚被赋予两个属性,一个是该引脚的度数degree,代表了其邻接点的个数;另一个是该引脚的邻接点列表adj_list[],用来存储各个邻接点;该阶段具体的实现过程如下:
步骤SA:记录X结构Steiner树中每个引脚的度数及其邻接点列表,对于度数大于q的引脚来说,仅仅记录该引脚的q个邻接点;
步骤SB:设置局部拓扑优化的顺序为:从度数大的引脚往度数小的引脚优化;通过将所有引脚按度数从大到小排列,同时将每个引脚的邻接点也按度数从大到小排列,来实现先优化密集区域的拓扑结构,再优化稀疏区域的拓扑结构;
步骤SC:依次优化各个引脚的局部拓扑结构,通过对引脚与各个邻接点之间边的选择方式进行调整,尝试用除当前选择方式以外的其余三种选择方式进行连接,从中保留适应度函数值最小的连接方式;即通过调整X结构Steiner树中各个引脚的q条邻接边的PS点选择方式,以获得在当前X结构Steiner树拓扑下的局部最优结构,最终构建具有最短线长的X结构Steiner树。
2.根据权利要求1所述的一种两步式X结构Steiner最小树构建方法,其特征在于:所述X结构模型的定义如下:
定义1.伪Steiner点:假设除了引脚外,引入的额外的连接点,称为伪Steiner点即PS;定义2.0选择:从出发引脚节点先引曼哈顿结构边至PS,再从PS引X结构边至目标引脚节点,这种连接方式称作0选择;
定义3.1选择;从出发引脚节点先引X结构边至PS,再从PS引曼哈顿结构边至目标引脚节点,这种连接方式称作1选择;
定义4.2选择;从出发引脚节点先引竖直边至PS,再从PS引水平边至目标引脚节点,这种连接方式称作2选择;
定义5.3选择;从出发引脚节点先引水平边至PS,再从PS引竖直边至目标引脚节点,这种连接方式称作3选择。
3.根据权利要求1所述的一种两步式X结构Steiner最小树构建方法,其特征在于:步骤S13中所述离散粒子群更新公式的具体内容为:
为了使粒子群优化算法能够更好地解决候选X结构Steiner树这个离散问题,引入变异和交叉算子;粒子遵循以下的更新公式:
Figure FDA0003657124490000031
其中,w为惯性权重,决定了粒子变异的概率;c1和c2为加速因子,决定了两次交叉的概率;F1为变异操作,代表惯性保持部分;F2和F3为交叉操作,分别代表粒子的个体认知和社会认知部分;具体的更新过程如下:
惯性保持部分:
算法通过F1操作完成粒子的速度更新,表示如下:
Figure FDA0003657124490000032
其中,w为惯性权重,遵循公式(4)的混沌下降公式,r1是[0,1)内的随机数;
所述变异和交叉的具体内容为:采用两点变异,如果产生的随机数r1<w,粒子群优化算法将随机选出两条边,更换这两条边的选择方式,从而达到随机改变布线树拓扑结构的目的;如果产生的随机数r1≥w,则保持布线树不变;
个体认知部分:
算法通过F2完成粒子的个体认知,表示如下:
Figure FDA0003657124490000041
其中,c1表示粒子与个体历史最优方案
Figure FDA0003657124490000042
交叉的概率,r2是[0,1)内的随机数;这部分反应了粒子学习自身经验的过程;
社会认知部分:
算法通过F3完成粒子的社会认知,表示如下:
Figure FDA0003657124490000043
其中,c2表示粒子与样例池中的任意一个粒子的历史最优方案
Figure FDA0003657124490000044
交叉的概率,r3是[0,1)内的随机数;这部分反应了粒子间的信息共享和交流;公式(7),(8)中的交叉操作如下:当产生的随机数r2<c1或r3<c2,F2执行交叉操作,对一棵含n个引脚的斯坦纳树:粒子群优化算法首先随机产生需要交叉的连续区间[Cstart,Cend],其中Cstart和Cend是[1,n-1]之间的随机整数;然后,找到粒子Xi的学习对象
Figure FDA0003657124490000045
Figure FDA0003657124490000046
在区间[3×Cstart,3×Cend]上的编码;最后,将粒子Xi该区间上的数字替换其学习对象该区间上的编码;经过上述交叉操作,粒子Xi能够从更优秀的粒子上学习到部分基因,反复的迭代学习就能使得粒子Xi逐渐向全局最优位置靠拢;并且,设定加速因子c1采用线性递减策略,c2采用线性递增策略。
CN202010410094.5A 2020-05-14 2020-05-14 一种两步式X结构Steiner最小树构建方法 Active CN111582431B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010410094.5A CN111582431B (zh) 2020-05-14 2020-05-14 一种两步式X结构Steiner最小树构建方法
PCT/CN2020/134417 WO2021227463A1 (zh) 2020-05-14 2020-12-08 一种两步式X结构Steiner最小树构建方法
US17/776,249 US11886786B2 (en) 2020-05-14 2020-12-08 Two-step x-architecture steiner minimum tree construction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010410094.5A CN111582431B (zh) 2020-05-14 2020-05-14 一种两步式X结构Steiner最小树构建方法

Publications (2)

Publication Number Publication Date
CN111582431A CN111582431A (zh) 2020-08-25
CN111582431B true CN111582431B (zh) 2022-07-08

Family

ID=72112229

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010410094.5A Active CN111582431B (zh) 2020-05-14 2020-05-14 一种两步式X结构Steiner最小树构建方法

Country Status (3)

Country Link
US (1) US11886786B2 (zh)
CN (1) CN111582431B (zh)
WO (1) WO2021227463A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111582431B (zh) * 2020-05-14 2022-07-08 福州大学 一种两步式X结构Steiner最小树构建方法
CN112487626B (zh) * 2020-11-23 2024-02-27 阳光新能源开发股份有限公司 光伏电站布线方法和装置
CN112395822B (zh) * 2020-11-26 2022-08-09 福州大学 时延驱动的非曼哈顿结构Steiner最小树构建方法
CN113919280A (zh) * 2021-10-12 2022-01-11 福州大学 基于两阶段竞争粒子群优化的时延驱动xsmt构建方法
CN115130400A (zh) * 2022-05-31 2022-09-30 福州大学 连续微流控生物芯片控制模式分配方法
CN116402010B (zh) * 2023-05-10 2023-11-21 南京邮电大学 基于斯坦纳树算法的多实例化分块顶层布线方法
CN116801288B (zh) * 2023-06-25 2024-01-26 中电佰联通信科技南京有限公司 基于粒子群与遗传算法的自组织网络拓扑优化方法和系统
CN116522838B (zh) * 2023-06-29 2024-01-26 深圳国微晶锐技术有限公司 寻径算法的优化方法、基于多fpga系统的布线方法
CN117195825B (zh) * 2023-09-13 2024-04-26 南京集成电路设计服务产业创新中心有限公司 一种基于完备最优斯坦纳树预测布线概率分布的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4227304B2 (ja) * 1998-12-22 2009-02-18 富士通株式会社 概略配線方法及び装置並びに概略配線プログラムを格納した記録媒体
CN104200264A (zh) * 2014-09-25 2014-12-10 国家电网公司 一种包括独立全局搜索的两阶段粒子群优化算法
CN107247844A (zh) * 2017-06-10 2017-10-13 福州大学 基于自适应PSO和混合转换策略的X结构Steiner最小树算法
CN109583133A (zh) * 2018-12-20 2019-04-05 福州大学 一种x结构下基于多阶段转换和遗传操作的粒子群优化斯坦纳最小树构造方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI410819B (zh) * 2010-05-10 2013-10-01 Univ Nat Chiao Tung 考量元件與佈線對稱之類比佈局方法
CN104462628A (zh) * 2013-09-24 2015-03-25 复旦大学 一种绕过障碍物的八叉Steiner最小树的构建方法及装置
CN110059405B (zh) * 2019-04-16 2022-05-13 福州大学 X结构下带差分进化的高质量Steiner最小树构建方法
CN110795907B (zh) * 2019-09-30 2021-05-18 福州大学 一种考虑布线资源松弛的X结构Steiner最小树构造方法
CN111582431B (zh) * 2020-05-14 2022-07-08 福州大学 一种两步式X结构Steiner最小树构建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4227304B2 (ja) * 1998-12-22 2009-02-18 富士通株式会社 概略配線方法及び装置並びに概略配線プログラムを格納した記録媒体
CN104200264A (zh) * 2014-09-25 2014-12-10 国家电网公司 一种包括独立全局搜索的两阶段粒子群优化算法
CN107247844A (zh) * 2017-06-10 2017-10-13 福州大学 基于自适应PSO和混合转换策略的X结构Steiner最小树算法
CN109583133A (zh) * 2018-12-20 2019-04-05 福州大学 一种x结构下基于多阶段转换和遗传操作的粒子群优化斯坦纳最小树构造方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Survey of Swarm Intelligence Techniques in VLSI Routing Problems;XIAOHUA CHEN et al.;《IEEE Access》;20200204;第8卷;全文 *
基于自适应PSO和混合转换策略的X结构Steiner最小树算法;刘耿耿等;《模式识别与人工智能》;20180531;第31卷(第05期);全文 *

Also Published As

Publication number Publication date
US20230112223A1 (en) 2023-04-13
WO2021227463A1 (zh) 2021-11-18
US11886786B2 (en) 2024-01-30
CN111582431A (zh) 2020-08-25

Similar Documents

Publication Publication Date Title
CN111582431B (zh) 一种两步式X结构Steiner最小树构建方法
Lamini et al. Genetic algorithm based approach for autonomous mobile robot path planning
CN107247844B (zh) 基于自适应PSO和混合转换策略的X结构Steiner最小树布线方法
Qiongbing et al. A new crossover mechanism for genetic algorithms with variable-length chromosomes for path optimization problems
CN112462803B (zh) 一种基于改进nsga-ii的无人机路径规划方法
CN109542103A (zh) 一种基于烟花粒子群算法的机器人焊接路径规划方法
CN109271320B (zh) 一种上位多目标测试用例优先级排序方法
CN108413963A (zh) 基于自学习蚁群算法的条形机器人路径规划方法
CN112784362A (zh) 一种用于无人机辅助边缘计算的混合优化方法及系统
CN109583133B (zh) 一种x结构下基于多阶段转换和遗传操作的粒子群优化斯坦纳最小树构造方法
CN113917925B (zh) 一种基于改进遗传算法的移动机器人路径规划方法
CN104866903A (zh) 基于遗传算法的最美路径导航算法
Liu et al. Adaptive grouping cloud model shuffled frog leaping algorithm for solving continuous optimization problems
CN114158105B (zh) 应用于综合能源系统的无线传感器网络的路由方法及装置
Xiao-Ting et al. Flight path planning based on an improved genetic algorithm
CN112395822B (zh) 时延驱动的非曼哈顿结构Steiner最小树构建方法
CN112598189B (zh) 基于shade算法的多路径多目标应急物资配送路径选择方法
CN116307328A (zh) 一种旅行商问题的贪婪求解方法
CN115826591A (zh) 一种基于神经网络估计路径代价的多目标点路径规划方法
CN115620046A (zh) 一种基于半监督性能预测器的多目标神经架构搜索方法
CN115344046A (zh) 一种基于改进深度q网络算法的移动机器人路径规划
CN111360823A (zh) 一种汽车门板焊点焊接路径规划方法
CN112784948A (zh) 一种基于章鱼学习记忆系统仿生的混合进化方法
Wang Intelligent Path Planning of Mobile Robot Based on Genetic Algorithm
CN115293430A (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