CN116402002B - 一种用于芯片布局问题的多目标分层强化学习方法 - Google Patents
一种用于芯片布局问题的多目标分层强化学习方法 Download PDFInfo
- Publication number
- CN116402002B CN116402002B CN202310386626.XA CN202310386626A CN116402002B CN 116402002 B CN116402002 B CN 116402002B CN 202310386626 A CN202310386626 A CN 202310386626A CN 116402002 B CN116402002 B CN 116402002B
- Authority
- CN
- China
- Prior art keywords
- layout
- chip layout
- chip
- optimization
- reinforcement learning
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000002787 reinforcement Effects 0.000 title claims abstract description 45
- 238000005457 optimization Methods 0.000 claims abstract description 72
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 41
- 238000013461 design Methods 0.000 claims abstract description 23
- 238000012549 training Methods 0.000 claims abstract description 23
- 238000012805 post-processing Methods 0.000 claims abstract description 8
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 238000012795 verification Methods 0.000 claims description 27
- 238000004088 simulation Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 18
- 238000013136 deep learning model Methods 0.000 claims description 11
- 230000017525 heat dissipation Effects 0.000 claims description 11
- 230000002068 genetic effect Effects 0.000 claims description 10
- 230000035772 mutation Effects 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims description 4
- 230000009471 action Effects 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 239000002131 composite material Substances 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 8
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提出了一种基于带约束强化学习的芯片布局优化方法,属于电子工程领域,方法包括:收集芯片设计信息指标,对信息指标和芯片布局进行预处理,定义强化学习空间;对芯片布局进行优化训练;对多目标芯片布局进行高效优化;验证和调整芯片布局;对芯片布局进行后处理。本发明将芯片布局问题分解为多个子问题,并使用分层强化学习算法(如分层深度Q网络)来优化各个子问题,将多目标强化学习应用于芯片布局设计具有明显的必要性和优势。它能够在复杂多目标优化场景下找到全局最优解,同时权衡性能、功耗和尺寸等多个因素,实现整体性能的优化。此外,通过与其他优化算法相结合,多目标强化学习方法在芯片布局设计领域具有广泛的应用前景。
Description
技术领域
本发明属于电子工程领域,尤其涉及一种用于芯片布局问题的多目标分层强化学习方法。
背景技术
芯片布局设计是集成电路设计的关键步骤之一,它对芯片性能、功耗和尺寸等多方面具有重要影响。传统的芯片布局设计方法通常基于启发式算法,如遗传算法、模拟退火。然而,这些方法可能难以在复杂的多目标优化场景下找到全局最优解。为了解决这一问题,考虑将多目标强化学习应用于芯片布局设计。
现有的布局方法通常是基于人工经验和启发式规则的,它们在处理简单问题时表现出色,但在处理复杂多目标优化问题时可能遇到困难。这是因为在复杂问题中,设计空间变得更大,而解空间中的全局最优解可能受到多个互相竞争的目标的影响。这使得搜索全局最优解变得困难,且需要大量的计算资源。
发明内容
本发明的目的是提出一种用于芯片布局问题的多目标分层强化学习方法,通过学习任务的动态特性,能够在大型设计空间中自动探索和发现最优策略,多目标强化学习能够更好地权衡各个目标,以找到在多个目标之间达到平衡的最佳解决方案,这对于在芯片布局设计中权衡性能、功耗和尺寸等多个因素至关重要。
为了达到上述目的,在本发明提供了一种用于芯片布局问题的多目标分层强化学习方法,方法包括:
S1:收集芯片设计信息指标,对信息指标和芯片布局进行预处理,定义强化学习空间;
S2:对芯片布局进行优化训练;
S3:对多目标芯片布局进行高效优化;
S4:验证和调整芯片布局;
S5:对芯片布局进行后处理。
进一步地,所述信息指标包括但不限于元件尺寸、连接关系、功耗约束、性能要求、元件的热特性、电磁兼容性和元件之间的互连距离。
进一步地,所述对信息指标和芯片布局问题进行预处理,具体为:
对信息指标进行预处理,具体为:
S101:将信息指标归一化;
S102:使用模糊逻辑将归一化的信息指标映射到0-1之间的模糊集;
S103:利用模糊规则和隶属度函数计算每个布局方案在各个目标上的模糊评分;
S104:将所述模糊评分聚合成一个综合评分;
对芯片问题进行预处理,具体为:
S105:将芯片布局区域看作一个无向图,其中节点表示元件,边表示元件之间的连接;
S106:使用图分割算法将整个布局区域划分为若干子区域。
进一步地,所述定义强化学习空间,具体步骤为:
将元件尺寸、元件之间的互连距离、元件的热特性和电磁兼容性纳入状态空间;
将移动、旋转元件、交换相邻元件的位置和自动调整元件尺寸纳入动作空间;
引入所述信息指标设计奖励函数,采用动态权重调整策略,使得不同阶段的优化过程关注不同的优化目标。
进一步地,所述对芯片布局进行优化训练,具体步骤为:
S201:随机初始化多目标强化学习算法的参数;
S202:设计分层训练策略;
S203:调整自适应权重;
S204:设计课程学习策略;
S205、使用经验回放优化策略。
进一步地,所述步骤S202的具体层次为:
第一层:关注布局尺寸的优化;
第二层:关注功耗和性能的平衡;
第三层:关注散热和电磁兼容性。
进一步地,,所述对多目标芯片布局进行高效优化,具体步骤为:
S301:选取一组初始布局作为优化算法的起点;
S302:进行Pareto前沿优化,得到Pareto前沿解;
S303:使用遗传算法优化;
S304:采用强化学习的输出来指导遗传算法的交叉和变异操作;
S305:监控优化过程中Pareto前沿的变化,收敛速度稳定且解的多样性达到预期水平时,停止优化过程;
所述S303的具体步骤为:
使用锦标赛选择策略或其他选择策略,从 Pareto前沿解中选取一组布局进入交叉和变异阶段;
对选取的布局进行交叉操作,生成新的布局;
对新生成的布局进行变异操作,增加探索空间。
进一步地,所述验证和调整芯片布局,具体步骤为:
S401:对Pareto前沿的解进行初始化;
S402:进行基于深度学习模型的快速仿真验证;
S403:进行基于实际仿真系统的验证;
S404:对实际仿真结果继续进行调整。
进一步地,所述对芯片布局进行后处理,具体步骤为:
S501:获取调整后的多目标芯片布局解;
S502:对多目标芯片布局解进行稳定性评估;
S503:对多目标芯片布局解的多目标性能进行排序;
S504:选择与输出多目标芯片布局解。
进一步地,所述S502的具体步骤为:
对每个优化后的布局解,计算其在各个性能指标上的梯度,表示为:
g_i(x) = ∇f_i(x), i = 1, 2, ..., n
其中,g_i(x) 表示第i个性能指标的梯度,∇f_i(x) 表示第i个性能指标关于布局 x 的梯度;
计算解的稳定性指数,采用以下公式:
S(x) = Σ|g_i(x)|, i = 1, 2, ..., n
其中,S(x) 表示布局x的稳定性指数,|g_i(x)| 表示第 i 个性能指标梯度的绝对值;
根据稳定性指数筛选出稳定性较高的解,用于确保在实际应用中,芯片性能不会受到波动;
所述S503的具体步骤为:
使用拓扑排序算法对多目标性能指标进行排序,表示如下:
R(x) = Σ w_i * f_i(x), i = 1, 2, ..., n
其中,R(x) 表示布局 x 的多目标性能排序值,w_i 表示第 i 个性能指标的权重;
根据排序值,对所有布局解进行排序,得到一个综合多目标性能的解排序列表;
所述S504的具体步骤为:
在解排序列表中,选取综合多目标性能最优的解作为最终解,同时,根据实际需求和用户偏好,提供多个候选解供选择;
输出最终选择的芯片布局解,并提供详细的多目标性能报告。
本发明的有益技术效果至少在于以下几点:
(1)自适应性:多目标强化学习算法能够在不断的学习过程中自动调整策略,以适应不同问题的特性,从而在解决复杂布局问题时具有更好的性能。
(2)可扩展性:由于多目标强化学习算法在处理大规模设计空间时表现出色,它们可以轻松地应用于大型芯片布局问题,而不会受到计算资源的限制。
(3)泛化能力:多目标强化学习算法在训练过程中能够捕捉到任务之间的共性,这使得训练好的模型能够在其他类似问题上具有较好的泛化能力。
(4)多目标平衡:多目标强化学习算法在权衡多个优化目标方面具有很强的优势。通过设计合适的奖励函数,算法可以在不同的目标之间找到一个平衡点,从而实现整体性能的优化。
(5)有效利用计算资源:多目标强化学习算法通过智能地探索设计空间和利用先前的经验进行决策,从而减少了无效搜索和冗余计算,提高了计算资源的利用效率。
(6)与其他方法的融合:多目标强化学习方法可以与其他现有的优化算法(如遗传算法、粒子群优化等)相结合,实现更强大的优化效果。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
图1为本发明一种用于芯片布局问题的多目标分层强化学习方法流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
如图1所示,本发明实施例提供的方法包括:
S1:收集芯片设计信息指标,对信息指标和芯片布局进行预处理,定义强化学习空间。
S101、包括元件尺寸、连接关系、功耗约束、性能要求等。 除了收集常规的芯片设计信息(如元件尺寸、性能参数等),还可以收集以下不容易想到的信息:
元件的热特性:考虑到芯片运行时的散热问题,研究元件在不同工作条件下的热特性有助于优化散热设计。
电磁兼容性:收集元件在不同频率下的电磁特性数据,以评估和降低电磁干扰对芯片性能的影响。
元件之间的互连距离:考虑到互连线对信号传输的影响,收集元件之间的互连距离有助于优化信号传输性能。
通过收集和利用更多的设计信息,以及引入额外的优化因素,可以实现更全面的芯片布局优化。
S102、为了更好地权衡多目标优化问题的目标函数,采用基于模糊逻辑的方法。
具体地,首先,将性能、功耗和尺寸等指标归一化,然后使用模糊逻辑将它们映射到0-1之间的模糊集。接下来,利用模糊规则和隶属度函数计算每个布局方案在各个目标上的模糊评分,最后将模糊评分聚合成一个综合评分。这种方法允许灵活地调整各个目标的权重,实现在不同目标之间的平衡。基于模糊逻辑的多目标融合方法和动态权重调整策略,有助于实现在不同优化目标之间的更好平衡。
S103、为了更有效地将芯片布局问题分解为多个子问题,采用基于图分割的方法。
具体地,首先,将芯片布局区域看作一个无向图,其中节点表示元件,边表示元件之间的连接。接下来,使用图分割算法(如Kernighan-Lin算法)将整个布局区域划分为若干子区域,使得子区域之间的连接尽可能减少。这种方法可以减小子问题之间的依赖,降低优化难度。
S104、在定义强化学习空间时,引入一些创新:
状态空间:除了元件的位置和尺寸等信息,还可以考虑包括元件的热特性、电磁兼容性等因素,以实现更全面的优化。
动作空间:除了移动和旋转元件等基本操作,可以引入一些高级操作,如交换相邻元件的位置、自动调整元件尺寸等,从而增加探索空间并提高优化能力。
奖励函数设计:除了考虑性能、功耗和尺寸等因素,还以引入散热、电磁干扰等额外因素,以实现更全面的优化。同时,可以采用动态权重调整策略,使得不同阶段的优化过程关注不同的优化目标,进一步提高多目标平衡能力。
S2:对芯片布局进行优化训练。
S201、初始化:随机初始化多目标 强化学习算法的参数。
具体地,为了加速收敛过程,使用预训练的模型作为起点,这可以通过在类似问题上进行训练获得。
S202、分层训练策略:
第一层:关注布局尺寸的优化。在这一层中,调整奖励函数以强调布局尺寸的优化,如最小化面积或周长。训练模型以最小化布局尺寸为主要目标。
第二层:关注功耗和性能的平衡。在这一层中,调整奖励函数以考虑功耗和性能之间的权衡。训练模型在保持布局尺寸优化的基础上,进一步优化功耗和性能。
第三层:关注散热和电磁兼容性。在这一层中,调整奖励函数以考虑散热和电磁兼容性问题。训练模型在前两层优化的基础上,进一步提高散热性能和降低电磁干扰。
S203、自适应权重调整。
具体地,在训练过程中,可以根据不同阶段的优化需求,动态调整各目标在奖励函数中的权重。例如,在训练初期,可以将更多的关注放在布局尺寸和功耗上;而在训练后期,可以逐渐增加性能、散热和电磁兼容性的权重,以实现多目标之间的平衡。
S204、 Curriculum Learning:
具体地,可以采用课程学习策略,从简单的布局问题开始训练,逐步增加问题的复杂度。这种策略有助于模型在初期阶段快速掌握基本布局策略,从而加速收敛过程。
S205、经验回放优化:
在训练过程中,可以使用优先经验回放策略,根据TD误差的大小为每个经验样本分配优先级,优先学习具有较大TD误差的样本。这样可以提高训练效率,加速模型收敛。
通过以上优化训练阶段方案,可以实现针对多目标芯片布局问题的高效优化。
S3:对多目标芯片布局进行高效优化。
S301、初始化:选取一组初始布局作为优化算法的起点。为了加速收敛过程,可以使用启发式算法生成初始布局,以获得相对优质的起点。
S302、Pareto前沿优化。
步骤一,计算每个布局的目标函数值,例如布局尺寸、功耗、性能、散热和电磁兼容性。使用以下公式表示目标函数值:
f_i(x) = w_i * g_i(x), i = 1, 2, ..., n
其中,f_i(x) 表示第 i 个目标函数值,w_i 表示第 i 个目标的权重,g_i(x) 表示第 i 个目标在布局 x 下的性能指标。
步骤二,使用非支配排序策略对布局进行排序,以找到 Pareto 前沿上的解。在此过程中,可以使用快速非支配排序算法 (Fast Non-dominated Sorting Algorithm,FNSA) 或其他非支配排序方法。
S303、遗传算法优化。
选择:使用锦标赛选择策略或其他选择策略,从 Pareto 前沿上的解中选取一组布局进入交叉和变异阶段。
交叉:对选取的布局进行交叉操作,生成新的布局。可以采用部分匹配交叉(Partially Matched Crossover, PMX) 或其他专门针对布局问题的交叉策略。
变异:对新生成的布局进行变异操作,以增加探索空间。可以使用基于模式的变异策略,该策略可以从历史布局中学习模式,并将其应用于新布局。
S304、强化学习引导。
具体地,将训练好的强化学习模型应用于当前布局,以提供优化建议。可以采用强化学习的输出来指导遗传算法的交叉和变异操作,从而更快地找到优秀的解。
S305、收敛判断。
具体地,监控优化过程中 Pareto 前沿的变化,如收敛速度、解的多样性等。当收敛速度趋于稳定且解的多样性达到预期水平时,停止优化过程。
具体地,收敛速度趋于稳定且解的多样性达到预期水平的指标为:
(1)收敛度指标(Convergence Metric,CM):
对于每个候选芯片布局,计算其与参考前沿(任意确定一个前沿)之间的最短距离。距离可以使用归一化的加权欧几里得距离度量。对于每个软约束条件,需要计算归一化的加权值:
d_i = min(||w_k * (x_i,k - y_k)||)
其中,x_i,k是第i个候选布局在第k个软约束条件上的值,y_k是参考前沿中一个解在第k个软约束条件上的值,w_k是第k个软约束条件的权重。
计算所有候选芯片布局与参考前沿之间的距离的平均值:
CM = Σd_i / N
其中,N是候选布局的数量,当CM趋于稳定时(这个随具体问题会变化,一般就是CM在10次迭代中的变化都小于0.1),表示Pareto前沿收敛。
(2)多样性指标(Diversity Metric,DM):
a) 对于Pareto前沿中的每对芯片布局,计算它们之间的归一化加权欧几里得距离:
d_ij = ||w_k * (x_i,k - x_j,k)||
其中,x_i,k和x_j,k分别是Pareto前沿中第i个和第j个布局在第k个软约束条件上的值。
b) 计算Pareto前沿布局之间的平均距离、最小距离和最大距离:
d_avg = Σd_ij / C
d_min = min(d_ij)
d_max = max(d_ij)
其中,C是Pareto前沿中布局对的数量。
(3)计算多样性指标:
DM = (d_avg - d_min) / (dmax - d_min)
多样性指标的值在0到1之间,越接近1表示解的多样性越好,具体的DM指标也会随问题变化,如果希望解的多样性较好,可以设定阈值为0.8;如果对解的多样性要求不高,可以将阈值设定为0.6。
通过以上优化阶段方案,可以实现针对多目标芯片布局问题的高效优化。Pareto前沿优化有助于在不同目标之间实现平衡;遗传算法优化加速收敛过程;强化学习引导进一步提高。
S4:验证和调整芯片布局。
S401、初始化:从优化阶段得到一组 Pareto 前沿解,这些解在多目标上表现良好,需要进一步进行验证和调整。
S402、基于深度学习模型的快速仿真验证:
具体地,使用深度学习模型拟合芯片布局的性能指标,如功耗、时钟频率、散热等。在训练过程中,可以使用历史数据进行监督学习,以便在验证阶段快速预测布局性能。
对 Pareto 前沿解进行快速仿真验证。将布局解输入深度学习模型,预测各性能指标,如:
f_i(x) = h_i(x), i = 1, 2, ..., n
其中,f_i(x) 表示第 i 个性能指标,h_i(x) 表示深度学习模型预测的第 i 个性能指标值。
对快速仿真的结果进行分析,筛选出在多目标上表现优异的解,并对表现不佳的解进行修正或淘汰。
基于实际仿真系统的验证:
选取经过快速仿真验证的优秀解,使用实际的芯片布局仿真系统进行验证。这一步骤耗时较长,但可以得到更为准确的性能指标;
将实际仿真系统得到的性能指标与深度学习模型的预测进行比较,如:
Δf_i(x) = |f_i(x) - h_i(x)|, i = 1, 2, ..., n
其中,Δf_i(x) 表示第 i 个性能指标的误差。
根据误差情况对深度学习模型进行调整。如果误差较大,可以使用实际仿真的结果对深度学习模型进行微调,以提高预测准确性。
S404、调整阶段。
具体地,根据实际仿真系统的验证结果,对 Pareto前沿解进行调整。可以使用启发式算法或局部搜索策略对布局进行微调,以改进性能。
对调整后的解重新进行快速仿真验证和实际仿真系统验证,确保多目标性能得到优化。
重复调整和验证过程,直至达到预设的收敛标准或满足多目标性能要求。
通过以上验证与调整阶段方案,可以实现针对多目标芯片布局问题的高效优化。快速仿真验证基于深度学习模型的预测能力,可以大大降低验证时间,提高方案评估效率。实际仿真系统的验证则提供了更为准确的性能指标,为调整阶段提供了可靠依据。
两种验证方法相互协作,可以有效发现并改进优化阶段可能产生的不足。在调整阶段,=根据两种验证方法的反馈,采用启发式算法或局部搜索策略对布局进行微调,以在多目标上实现更优的性能。不断迭代调整和验证过程,直至达到预设的收敛标准或满足多目标性能要求。
此外,在整个验证与调整阶段中,可以持续关注深度学习模型预测与实际仿真系统的误差情况,对模型进行微调,以提高预测准确性。这有助于在后续的快速仿真验证中,获得更为准确的性能指标预测,从而进一步提高验证与调整阶段的效率。
总之,为多目标芯片布局问题提出了一个完整的验证与调整阶段方案。该方案充分利用了快速仿真验证和实际仿真系统验证的优势,以实现在多目标上的高效优化。
S5:对芯片布局进行后处理。
S501 初始化:在验证与调整阶段完成后,获得了一组经过优化的多目标芯片布局解。这些解在多目标性能指标上表现良好,接下来进行后处理阶段。
S502、解的稳定性评估。
具体地,对每个优化后的布局解,计算其在各个性能指标上的梯度,表示为:
g_i(x) = ∇f_i(x), i = 1, 2, ..., n
其中,g_i(x) 表示第 i 个性能指标的梯度,∇f_i(x) 表示第 i 个性能指标关于布局 x 的梯度。
计算解的稳定性指数,采用以下公式:
S(x) = Σ|g_i(x)|, i = 1, 2, ..., n
其中,S(x) 表示布局 x 的稳定性指数,|g_i(x)| 表示第 i 个性能指标梯度的绝对值。
根据稳定性指数筛选出稳定性较高的解,以确保在实际应用中,芯片性能不会受到较大波动。
S503、解的多目标性能排序。
具体地,使用拓扑排序算法对多目标性能指标进行排序,可以采用以下方法:
R(x) = Σ w_i * f_i(x), i = 1, 2, ..., n
其中,R(x) 表示布局 x 的多目标性能排序值,w_i 表示第 i 个性能指标的权重。
根据排序值,对所有布局解进行排序,从而得到一个综合多目标性能的解排序列表。
S504、最终解的选择与输出:
具体地,在排序列表中,选取综合多目标性能最优的解作为最终解。同时,可以根据实际需求和用户偏好,提供多个候选解供选择。
输出最终选择的芯片布局解,并提供详细的多目标性能报告,以便在实际应用中,用户能够全面了解布局的性能表现。
通过以上后处理阶段方案,实现了针对多目标芯片布局问题的高效优化。该方案充分考虑了解的稳定性和多目标性能排序,从而确保在实际应用中,芯片性能能够满足用户的多样化需求。
综上所述,本发明通过设计一种针对芯片布局问题的多目标分层强化学习方法,有效地将复杂的布局问题分解为多个简单的子问题,降低优化难度,提高整体优化效果。通过权衡性能、功耗和尺寸等多个优化目标,找到满足设计要求的最佳芯片布局方案。此外,分层强化学习算法在各个子问题之间进行知识共享,从而进一步提高优化效果。
通过本发明提出的多目标分层强化学习方法,可以在保证芯片性能、功耗和尺寸等多方面优化的同时,大大提高设计效率。此方法具有广泛的应用前景,可以应用于各种集成电路设计领域,为芯片设计师提供强大的优化工具。
在实际应用中,本发明的方法可以与其他优化算法相结合,例如遗传算法、粒子群优化等,进一步提高优化效果。同时,针对不同类型的芯片布局问题,可以灵活调整分层强化学习模型的结构和参数,以适应不同的优化需求。
尽管已经示出和描述了本发明的实施例,本领域技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变形,本发明的范围由权利要求及其等同物限定。
Claims (7)
1.一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述方法包括:
S1:收集芯片信息指标,对信息指标和芯片布局进行预处理,定义强化学习空间;
所述定义强化学习空间,具体步骤为:
将元件尺寸、元件之间的互连距离、元件的热特性和电磁兼容性纳入状态空间;
将移动、旋转元件、交换相邻元件的位置和自动调整元件尺寸纳入动作空间;
引入所述信息指标设计奖励函数,采用动态权重调整策略,使得不同阶段的优化过程关注不同的优化目标;
S2:对芯片布局进行优化训练,具体步骤为:
其中,所述对芯片布局进行优化训练,具体步骤为:
S201:使用预训练的模型作为起点,随机初始化多目标强化学习算法的参数;
S202:设计分层训练策略,关注不同的优化目标,使用奖励函数分别调整目标进行优化;
S203:根据不同阶段对目标的优化需求,动态调整各目标在奖励函数中的权重,用于实现多目标之间的平衡;
S204:设计课程学习策略,训练从简单布局问题开始再增加问题的复杂性进行;
S205、在训练过程中使用经验回放优化策略,根据TD误差的大小为每个经验样本分配优先级;
S3:对多目标芯片布局进行高效优化,具体步骤为:
S301:选取一组初始布局作为优化算法的起点;
S302:进行Pareto前沿优化,得到Pareto前沿解;
S303:使用遗传算法优化;
S304:采用强化学习的输出来指导遗传算法的交叉和变异操作;
S305:监控优化过程中Pareto前沿的变化,收敛速度稳定且解的多样性达到预期水平时,停止优化过程;
所述S303的具体步骤为:
使用锦标赛选择策略或其他选择策略,从 Pareto前沿解中选取一组布局进入交叉和变异阶段;
对选取的布局进行交叉操作,生成新的布局;
对新生成的布局进行变异操作,增加探索空间;
S4:验证和调整芯片布局;
S5:对芯片布局进行后处理。
2.根据权利要求1所述的一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述信息指标包括但不限于元件尺寸、连接关系、功耗约束、性能要求、元件的热特性、电磁兼容性和元件之间的互连距离。
3.根据权利要求2所述的一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述对信息指标和芯片布局问题进行预处理,具体为:
对信息指标进行预处理,具体为:
S101:将信息指标归一化;
S102:使用模糊逻辑将归一化的信息指标映射到0-1之间的模糊集;
S103:利用模糊规则和隶属度函数计算每个布局方案在各个目标上的模糊评分;
S104:将所述模糊评分聚合成一个综合评分;
对芯片问题进行预处理,具体为:
S105:将芯片布局区域看作一个无向图,其中节点表示元件,边表示元件之间的连接;
S106:使用图分割算法将整个布局区域划分为若干子区域。
4.根据权利要求1所述的一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述步骤S202的具体层次为:
第一层:关注布局尺寸的优化;
第二层:关注功耗和性能的平衡;
第三层:关注散热和电磁兼容性。
5.根据权利要求1所述的一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述验证和调整芯片布局,具体步骤为:
S401:对Pareto前沿的解进行初始化;
S402:进行基于深度学习模型的快速仿真验证;
S403:进行基于实际仿真系统的验证;
S404:对实际仿真结果继续进行调整。
6.根据权利要求5所述的一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述对芯片布局进行后处理,具体步骤为:
S501:获取调整后的多目标芯片布局解;
S502:对多目标芯片布局解进行稳定性评估;
S503:对多目标芯片布局解的多目标性能进行排序;
S504:选择与输出多目标芯片布局解。
7.根据权利要求6所述的一种用于芯片布局问题的多目标分层强化学习方法,其特征在于,所述S502的具体步骤为:
对每个优化后的布局解,计算其在各个性能指标上的梯度,表示为:
;
其中,g_i(x) 表示第 i 个性能指标的梯度,表示第 i 个性能指标关于布局x 的梯度;
计算解的稳定性指数,采用以下公式:
S(x) = Σ|g_i(x)|, i = 1, 2, ..., n
其中,S(x) 表示布局 x 的稳定性指数,|g_i(x)| 表示第 i 个性能指标梯度的绝对值;
根据稳定性指数筛选出稳定性较高的解,用于确保在实际应用中,芯片性能不会受到波动;
所述S503的具体步骤为:
使用拓扑排序算法对多目标性能指标进行排序,表示如下:
R(x) = Σ w_i * f_i(x), i = 1, 2, ..., n
其中,R(x) 表示布局 x 的多目标性能排序值,w_i 表示第 i 个性能指标的权重;
根据排序值,对所有布局解进行排序,得到一个综合多目标性能的解排序列表;
所述S504的具体步骤为:
在解排序列表中,选取综合多目标性能最优的解作为最终解,同时,根据实际需求和用户偏好,提供多个候选解供选择;
输出最终选择的芯片布局解,并提供详细的多目标性能报告。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310386626.XA CN116402002B (zh) | 2023-04-12 | 2023-04-12 | 一种用于芯片布局问题的多目标分层强化学习方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310386626.XA CN116402002B (zh) | 2023-04-12 | 2023-04-12 | 一种用于芯片布局问题的多目标分层强化学习方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116402002A CN116402002A (zh) | 2023-07-07 |
CN116402002B true CN116402002B (zh) | 2024-02-06 |
Family
ID=87012004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310386626.XA Active CN116402002B (zh) | 2023-04-12 | 2023-04-12 | 一种用于芯片布局问题的多目标分层强化学习方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116402002B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116629189B (zh) * | 2023-07-19 | 2024-01-26 | 深圳市周励电子科技有限公司 | 一种集成电路的布局生成方法及装置 |
CN116738920B (zh) * | 2023-08-11 | 2023-10-20 | 中诚华隆计算机技术有限公司 | 一种三维几何内核的芯片3d设计方法及系统 |
CN116841804B (zh) * | 2023-09-01 | 2023-11-17 | 中诚华隆计算机技术有限公司 | 一种基于chiplet的动态重配置方法和芯片 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10755026B1 (en) * | 2017-11-14 | 2020-08-25 | Synopsys, Inc. | Circuit design including design rule violation correction utilizing patches based on deep reinforcement learning |
CN113971366A (zh) * | 2020-07-23 | 2022-01-25 | 辉达公司 | 应用人工智能的标准单元布局生成 |
CN114139254A (zh) * | 2021-11-24 | 2022-03-04 | 上海交通大学 | 基于强化学习的设施布局优化方法 |
CN114154412A (zh) * | 2021-11-25 | 2022-03-08 | 上海交通大学 | 基于深度强化学习的优化芯片布局系统及方法 |
CN114896937A (zh) * | 2022-05-24 | 2022-08-12 | 广东工业大学 | 一种基于强化学习的集成电路布局优化方法 |
CN114897266A (zh) * | 2022-06-13 | 2022-08-12 | 南京邮电大学 | 基于深度强化学习的微电网能源系统的多目标安全优化方法 |
DE202023100506U1 (de) * | 2023-02-02 | 2023-02-16 | Albert-Ludwigs-Universität Freiburg, Körperschaft des öffentlichen Rechts | Vorrichtung zum optimierten Trainieren eines bestärkenden Lernalgorithmus zur Erzeugung eines Steuerbefehls |
CN115758981A (zh) * | 2022-11-29 | 2023-03-07 | 东南大学 | 一种基于强化学习和遗传算法的布图规划方法 |
EP4152336A1 (en) * | 2021-09-17 | 2023-03-22 | TotalEnergies OneTech | Method and computing system for molecular design via multi-task reinforcement learning |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220261654A1 (en) * | 2021-02-17 | 2022-08-18 | International Business Machines Corporation | Automatic robust optimization of circuits |
-
2023
- 2023-04-12 CN CN202310386626.XA patent/CN116402002B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10755026B1 (en) * | 2017-11-14 | 2020-08-25 | Synopsys, Inc. | Circuit design including design rule violation correction utilizing patches based on deep reinforcement learning |
CN113971366A (zh) * | 2020-07-23 | 2022-01-25 | 辉达公司 | 应用人工智能的标准单元布局生成 |
EP4152336A1 (en) * | 2021-09-17 | 2023-03-22 | TotalEnergies OneTech | Method and computing system for molecular design via multi-task reinforcement learning |
CN114139254A (zh) * | 2021-11-24 | 2022-03-04 | 上海交通大学 | 基于强化学习的设施布局优化方法 |
CN114154412A (zh) * | 2021-11-25 | 2022-03-08 | 上海交通大学 | 基于深度强化学习的优化芯片布局系统及方法 |
CN114896937A (zh) * | 2022-05-24 | 2022-08-12 | 广东工业大学 | 一种基于强化学习的集成电路布局优化方法 |
CN114897266A (zh) * | 2022-06-13 | 2022-08-12 | 南京邮电大学 | 基于深度强化学习的微电网能源系统的多目标安全优化方法 |
CN115758981A (zh) * | 2022-11-29 | 2023-03-07 | 东南大学 | 一种基于强化学习和遗传算法的布图规划方法 |
DE202023100506U1 (de) * | 2023-02-02 | 2023-02-16 | Albert-Ludwigs-Universität Freiburg, Körperschaft des öffentlichen Rechts | Vorrichtung zum optimierten Trainieren eines bestärkenden Lernalgorithmus zur Erzeugung eines Steuerbefehls |
Non-Patent Citations (2)
Title |
---|
Optimizing Routerless Network-on-Chip Designs: An Innovative Learning-Based Framework;Ting-Ru Lin;《Computer Science》;1-13 * |
基于强化学习的参数化电路优化算法;唐长成;《中国优秀硕士学位论文全文数据库 信息科技辑》;I135-97 * |
Also Published As
Publication number | Publication date |
---|---|
CN116402002A (zh) | 2023-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116402002B (zh) | 一种用于芯片布局问题的多目标分层强化学习方法 | |
Pant et al. | Differential Evolution: A review of more than two decades of research | |
Zhang et al. | Multi-objective particle swarm optimization approach for cost-based feature selection in classification | |
Manjarres et al. | A survey on applications of the harmony search algorithm | |
Elsayed et al. | Differential evolution with multiple strategies for solving CEC2011 real-world numerical optimization problems | |
Zhang et al. | Vector coevolving particle swarm optimization algorithm | |
Orouskhani et al. | Evolutionary dynamic multi-objective optimization algorithm based on Borda count method | |
Chen et al. | A hybrid fuzzy inference prediction strategy for dynamic multi-objective optimization | |
CN112784362A (zh) | 一种用于无人机辅助边缘计算的混合优化方法及系统 | |
CN108563863B (zh) | 城市轨道交通系统的能耗计算与调度方法 | |
CN112528591A (zh) | 一种基于联合蒙特卡洛树搜索的pcb板自动布线方法 | |
Zeng et al. | Whale swarm algorithm with the mechanism of identifying and escaping from extreme points for multimodal function optimization | |
CN117539726B (zh) | 绿色智算中心能效优化方法及系统 | |
CN111597757A (zh) | 基于多目标加点准则的gp模型辅助slpso算法 | |
CN117454824B (zh) | 基于双层多目标优化的芯片电路设计方法 | |
Ducange et al. | Multi-objective evolutionary fuzzy systems | |
Gao et al. | An efficient evolutionary algorithm based on deep reinforcement learning for large-scale sparse multiobjective optimization | |
CN113722980A (zh) | 海洋浪高预测方法、系统、计算机设备、存储介质、终端 | |
Korejo et al. | Multi-population methods with adaptive mutation for multi-modal optimization problems | |
CN116822742A (zh) | 一种基于动态分解-重构集成处理的电力负荷预测方法 | |
CN112116305A (zh) | 一种用于机器学习的电网概率可视化模型构建方法和系统 | |
Yang et al. | Research on cognitive radio engine based on genetic algorithm and radial basis function neural network | |
Yang et al. | Attribute reduction based on multi-objective decomposition-ensemble optimizer with rough set and entropy | |
CN111144611A (zh) | 一种基于聚类和非线性自回归的空间负荷预测方法 | |
Guo et al. | New algorithms of feature selection and big data assignment for CBR system integrated by Bayesian network |
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 |