CN113312874A - 基于改进深度强化学习的总体布线方法 - Google Patents

基于改进深度强化学习的总体布线方法 Download PDF

Info

Publication number
CN113312874A
CN113312874A CN202110624691.2A CN202110624691A CN113312874A CN 113312874 A CN113312874 A CN 113312874A CN 202110624691 A CN202110624691 A CN 202110624691A CN 113312874 A CN113312874 A CN 113312874A
Authority
CN
China
Prior art keywords
wiring
profit
value
pins
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.)
Granted
Application number
CN202110624691.2A
Other languages
English (en)
Other versions
CN113312874B (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 CN202110624691.2A priority Critical patent/CN113312874B/zh
Publication of CN113312874A publication Critical patent/CN113312874A/zh
Application granted granted Critical
Publication of CN113312874B publication Critical patent/CN113312874B/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
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Medical Informatics (AREA)
  • Geometry (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种基于改进深度强化学习的总体布线方法,包括以下步骤:步骤S1:通过Prim算法将多端线网分解为两引脚问题;步骤S2:对所有两引脚进行状态编码,并通过A*算法构造初始布线结果,存入经验回放区进行预处理;步骤S3:完成预处理后传入DDQN模拟环境,采用并发训练,在预设的训练周期中生成布线结果。本发明提出了基于深度强化学习的总体布线器,将布线问题划分为多个端到端的路径规划子问题,智能体在有限的状态下执行离散动作进行随机决策和收益获取,有效提高布线效率。

Description

基于改进深度强化学习的总体布线方法
技术领域
本发明涉及集成电路设计技术领域,具体涉及一种基于改进深度强化学习的总体布线方法。
背景技术
在超大规模集成电路(Very Large Scale Integration,VLSI)的物理设计阶段,数以百万的引脚被集成在芯片中,具有相同电位的引脚集合构成线网,线网内部需要用导线互连.随着VLSI制造工艺的进步,单位面积芯片上的线网密度不断增加,所需的布线线长也随之增加.只含有两只引脚的线网是最简单的VLSI总体布线模型,但即使如此,两引脚线网的总体布线也是NP难问题,无法在多项式时间内计算出最优解, 因此在合理的时间内计算出可行的布线方案并且最大程度地缩减布线的线长成为VLSI物理设计阶段的难题之一。
发明内容
有鉴于此,本发明的目的在于提供一种基于改进深度强化学习的总体布线方法,基于深度强化学习的总体布线器,将布线问题划分为多个端到端的路径规划子问题,智能体在有限的状态下执行离散动作进行随机决策和收益获取,有效提高布线效率。
为实现上述目的,本发明采用如下技术方案:
一种基于改进深度强化学习的总体布线方法,包括以下步骤:
步骤S1:通过Prim算法将多端线网分解为两引脚问题;;
步骤S2:对所有两引脚进行状态编码,并通过A*算法构造初始布线结果,存入经验回放区进行预处理;
步骤S3:完成预处理后传入DDQN模拟环境,采用并发训练,在预设的训练周期中生成布线结果。
进一步的,所述步骤S1具体为:采用Prim算法构造线网内部的最小生成树,所有引脚被映射在二维平面上,引脚之间线段的权重设为引脚间的曼哈顿距离。
进一步的,所述状态编码,具体为:采用15位编码,起点、终点和智能体所处位置坐标均由3位编码所表示,六个方向的边容量由 6位编码所表示。
进一步的,所述经验回放区预处理,具体为:采用A*算法获取初始布线路径,代价函数g(n)代表执行了第n步所花费的代价,若超出边界或产生溢出时,代价g(n)=-1000,其他情况下g(n)=-1,启发函数 h(n)用于预估到达终点还需要的代价,用该位置到达目标点的曼哈顿距离表示。
进一步的,所述DDQN将动作的选择和评估两个步骤分割开, 用于消除过估计问题,DDQN将动作的选取方式从目标Q网络对应 Q值最大的动作替换为评估Q网络对应Q值最大的动作,如公式(7)所示,目标值的计算公式如公式(8)所示.
a(s′i;ω)=argmaxa′Q(s′i,a′;ω) (7)
yi=ri+γQ*(s′i,a(s′i;ω);ω′) (8)
其中,s′i是下一状态,a′是在下一状态所执行的动作,ω是神经网络参数,yi是目标值,ri是当前状态下获得的收益,γ为折扣因子。
进一步的,所述DDQN收益值函数,具体为:
智能体在环境中所做出的任何动作都会得到环境的回馈,这种回馈就是收益.收益值可以是正数、负数和零,正收益代表环境给予智能体积极的奖励,负收益代表环境给予智能体消极的惩罚,DDQN总是向累计收益最大化的方向收敛,在考虑缩短线长作为优化目标的前提下, 有如下收益值函数:
Figure RE-GDA0003170310150000031
其中,对于智能体到达引脚对的终点时获得+100的收益值,其他情况下,无论是智能体成功执行了动作还是由于边容量为0而被迫停留原地,均得到-1的收益值;
对线网内其他引脚对已经走过的路径进行标记,对能够使导线复用的收益值设置为0,对布线稀疏区域和密集区域的收益值进行设置, 得到如下收益函数:
Figure RE-GDA0003170310150000032
其中ec为边的容量,ed为边已经容纳的导线数量。
进一步的,所述DDQN采用的神经网络架构具体为:评估Q网络和目标Q网络均为三层全连接层,第一层至第三层的神经元数为32、64和32,神经元的激活函数为ReLU线性整流函数,输入层大小为15, 输出层大小为6。
进一步的,所述DDQN损失值的计算采用均方差函数,计算预测 Q值与目标值之间的欧式距离,损失函数如公式(11)所示,通过损失函数对网络权重参数ω求导得到梯度方程,采用Adam优化器进行随机梯度下降训练
Figure RE-GDA0003170310150000041
其中m为训练样本数量,yi由公式(8)计算。
进一步的,所述并发训练,具体为:
在给定的布线环境中,将线网按照引脚数量降序排序,其后将有序的线网存入并发队列中;
设线网数为Nnet,最大步数为maxStep,线网i含有的引脚对数为
Figure RE-GDA0003170310150000042
线网i所能执行的最大可执行步数为
Figure RE-GDA0003170310150000043
训练时将训练周期划分为多个时间片,单个时间片为并发队列中的所有线网都分配1个步长;
若线网i的最大可执行步数已耗尽或线网i已成功完成布线,则线网i在此训练周期内不再进入并发队列。
本发明与现有技术相比具有以下有益效果:
本发明基于深度强化学习的总体布线器,将布线问题划分为多个端到端的路径规划子问题,智能体在有限的状态下执行离散动作进行随机决策和收益获取,有效提高布线效率。
附图说明
图1是本发明一实施例中总体布线结构图;
图2是本发明一实施例中多端线网的分解图;
图3是本发明一实施例中总体布线样例图;
图4是本发明一实施例中线网内导线的复用图;
图5是本发明方法流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
在VLSI总体布线结构中,布线区域通常为多层结构,每层布线区域都被划分为若干个大小相同的矩形,每个矩形称为一个G-cell.图1 中左侧给出了两层总体布线结构,白色矩形区域为G-cell,G-cell之间被虚线划分,白色矩形上的方块为引脚,单个G-cell中存在着若干个引脚,白色矩形间的方块为布线通道,布线通道的数量决定G-cell之间所能容纳的最大导线数.总体布线是粗粒度的布线,通常只考虑G-cell之间的布线而忽略G-cell内部的详细布线,因此图1中左侧的模型可被进一步简化.图1中右侧给出了总体布线的结构图,每个G-cell被抽象为一个圆点,G-cell之间的布线通道被抽象为黑色实线,称之为边.由于制造工艺的限制,单层布线区域只能存在单方向的边,图1中右侧中第一层的G-cell之间只存在水平边,第二层的G-cell之间只存在垂直边, 层与层之间存在通孔,若需要改变走线方向,就必须穿越通孔到达另一层.
在给定的引脚集合中,具有相同电位的引脚集合为一个线网,同一个线网的引脚需要连接在一起,总体布线阶段解决跨越两个及以上G-cell的线网的布线问题.边所能容纳的最大导线数量为边的容量ec, 若该边所经过的导线数量为ed,则该边的拥塞度为ecg=ed/ec,若ed大于 ec时会产生溢出,溢出数为eof=max(0,ed-ec),产生溢出的总体布线结果往往会影响芯片的可制造性.因此,本方法首要考虑的布线目标是保证溢出数eof=0,并最小化总线长WL和拥塞度标准差Std
RL由状态st,动作at,收益rt,策略π和动作价值函数Q(s,a)五个核心要素组成,其中t代表当前所处时刻.状态st描述智能体所处环境的状态信息;动作at代表当前时刻下智能体所采取的动作;收益rt代表智能体在环境状态st下执行动作at到状态st+1所获得的收益,收益rt在 t+1时刻获得;策略π是智能体执行动作at的依据,通常为条件概率分布,即为在状态st的条件下执行动作at的概率,如公式(1)所示;动作价值函数Q(s,a)为期望函数,智能体在状态s和策略π下执行动作a后所获得收益的期望值,公式(2)为Q(s,a)的计算公式,Q(s,a)综合考虑当前收益和后续的延时收益,RL中期望的动作价值Q(s,a)往往与真实的动作价值Q*(s,a)存在差距,因此RL的核心过程为不断试错并修改预期的动作价值,从而发现使得动作价值最大化的策略π,如公式(3)所示.
π(at|st)=P(a=at|s=st) (1)
Q(s,a)=Eπ(rt+1+γrt+22rt+3+...|st=s,at=a) (2)
Q*(s,a)=maxπE(rt+1|st=s,at=a,π) (3)
其中γ为折扣因子,γ∈[0,1],若γ=0,当前的动作价值只由当前收益决定,若γ=1,后续的延时收益与当前收益的权重等同,一般情况下取0到1之间的小数,使得当前收益的权重高于后续延时收益.动作价值函数可递推得到贝尔曼方程形式,如公式(4)所示,RL算法中通常采用贝尔曼方程计算动作价值函数.
Figure RE-GDA0003170310150000072
DRL引入参数ω用于近似表示动作价值函数Q(s,a;ω)≈Q(s,a),近似方法总类繁多,最常用的是神经网络.DQN算法中的神经网络被称为Q网络,且DQN使用了两个Q网络,分别为评估Q网络和目标Q网络.评估Q网络用于评估当前状态对应的动作价值函数,并根据ε-greedy策略选择动作,如公式(5)所示.目标Q网络用于计算目标Q 值,采用延时更新的方式,每隔一段时间将评估Q网络的参数复制到目标Q网络中.DQN算法采用经验回放的方法,保存智能体与环境的交互所产生的经验五元组<s,a,r,s′,end>,其中s′代表在状态s执行动作 a后到达的下一状态,end代表下一状态是否为终点.通过从历史经验中随机采样得到训练样本,样本对应的状态作为目标Q网络的输入,每个方向的动作价值为目标Q网络的输出,DQN总是选取最高的动作价值用于计算目标Q值yi,如公式(6)所示.
Figure RE-GDA0003170310150000071
yi=ri+γmaxa'Q*(s′i,a′i;ω′) (6)
其中ε,rnd∈[0,1],rnd为0到1之间的随机数,rnd<ε时贪婪地选择动作价值最大的动作,否则选取一个随机的动作。
请参照图5,本发明提供一种基于改进深度强化学习的总体布线方法,包括以下步骤:
步骤S1:通过Prim算法将多端线网分解为两引脚问题;
步骤S2:对所有两引脚进行状态编码,并通过A*算法构造初始布线结果,存入经验回放区进行预处理;
步骤S3:完成预处理后传入DDQN模拟环境,采用并发训练,在预设的训练周期中生成布线结果。
在本实施例中,采用Prim算法构造线网内部的最小生成树,所有引脚被映射在二维平面上,引脚之间线段的权重设为引脚间的曼哈顿距离。图2中左侧给出了拥有四个引脚的线网的完全图,选择引脚A 作为起点构造最小生成树,如图2中右侧所示,通过最小生成树将四端线网分解为引脚对AB,引脚对AC和引脚对CD.由于距离越长的引脚对灵活性越低,寻路难度越高,在DRL训练过程中按照引脚对距离从长至短的顺序进行。
在本实施例中,状态编码,具体如下:
总体布线在三维环境中进行,引脚的位置通过三维坐标表示,一个引脚对可由两端引脚的坐标所确定.在引脚对中选取任意一端作为起点,另一端作为终点.导线从起点处引出,当前导线的布线位置(即智能体所处位置)可由导线非起点端的坐标表示,且智能体对应六个方向的边容量也需要被观察到.因此采用15位编码,起点、终点和智能体所处位置坐标均由3位编码所表示,六个方向的边容量由6位编码所表示。
为了更清晰的描述状态编码方式,图3给出了布线样例,起点坐标为(2,0,0),终点坐标为(0,2,0),智能体所处位置的坐标为(1,1,1),红线为智能体所经过的路径.假设各边容量和通孔容量均为2,按照左侧水平边,右侧水平边,下垂直边,上垂直边,下通孔和上通孔的顺序,智能体所观察到六个方向的容量为0,0,1,2,2,0,为了方便代码的编写,智能体所执行的动作同样按照上述顺序,用0到5之间数字描述动作的编码.综上所示,当前布线状态可被编码为200020111001220。
在Q网络中,输入为15为状态编码,对应输出为6个方向的动作价值函数,但是在图3给出的布线样例中,智能体处于坐标(1,1,1)时所能执行的动作少于6个.实际上,在两层结构的布线问题中,智能所能执行的最大动作数为3,因此考虑在选取动作时先排除无法执行的动作, 以防智能体在训练过程中执行无意义的动作,存储无意义的经验,进而学习到冗余信息。
在本实施例中,经验回放区取代Q学习中Q表的记录,用于更新评估Q网络的参数.智能体每次与环境交互得到的五元组信息<s,a,r,s′,end>都会被存入经验回放区,存储原则为先进先出,即存储空间满时,最先删除最早存入的记录。采用第二种方法初始化经验回放区,采用A*算法获取初始布线路径,代价函数g(n)代表执行了第n步所花费的代价,若超出边界或产生溢出时,代价g(n)=-1000,其他情况下g(n)=-1,启发函数h(n)用于预估到达终点还需要的代价,用该位置到达目标点的曼哈顿距离表示。
优选的,在本实施例中,DDQN设计如下:
DQN总是选取最大的动作价值用于计算目标值,由于两个Q 网络是异步更新参数的缘故,虽然贪婪地选择最大的Q值可以使得算法快速的靠近估计的目标值,但计算得到的模型与真实结果相比可能存在很大的偏差,造成过度估计的问题.
DDQN中将动作的选择和评估两个步骤分割开,用于消除过估计问题.DDQN将动作的选取方式从目标Q网络对应Q值最大的动作替换为评估Q网络对应Q值最大的动作,如公式(7)所示,目标值的计算公式也随之修改,如公式(8)所示.
a(s′i;ω)=argmaxa′Q(s′i,a′;ω) (7)
yi=ri+γQ*(s′i,a(s′i;ω);ω′) (8)
本发明采用基于DDQN算法作为总体布线的设计框架,接下来介绍DDQN布线器的详细设计部分.
收益设计:智能体在环境中所做出的任何动作都会得到环境的回馈,这种回馈就是收益.收益值可以是正数、负数和零,正收益代表环境给予智能体积极的奖励,负收益代表环境给予智能体消极的惩罚,DDQN总是向累计收益最大化的方向收敛.在考虑缩短线长作为优化目标的前提下,有如下收益值函数:
Figure RE-GDA0003170310150000101
其中,对于智能体到达引脚对的终点时获得+100的收益值,其他情况下,无论是智能体成功执行了动作还是由于边容量为0而被迫停留原地,均得到-1的收益值.该收益函数使智能体在环境中尽可能减少执行的动作,从而在线长上得以缩减.但该方法不能反映真实的布线情况, 缺少对线网内部导线复用的考虑.如图4左侧和4右侧所示,引脚A1、引脚A2和引脚A3为同一个线网内的三个引脚,通过线网分解方法获得引脚对A13和引脚对A23,用公式(9)的收益函数计算图4中左侧和图4中右侧累计收益均为193,显然图4中右侧通过导线的复用使得线长小于图4左侧,因此公式(9)在该方面存在不合理,我们对线网内其他引脚对已经走过的路径进行标记,对能够使导线复用的收益值设置为 0.除此之外,还需考虑布线的拥塞程度,若布线资源大量集中于某一部分,也会影响芯片的性能,我们对布线稀疏区域和密集区域的收益值进行微调,得到如下收益函数:
Figure RE-GDA0003170310150000111
其中ec为边的容量,ed为边已经容纳的导线数量.
神经网络架构:评估Q网络和目标Q网络均为三层全连接层,第一层至第三层的神经元数为32、64和32,神经元的激活函数为ReLU线性整流函数,输入层大小为15,输出层大小为6.
训练周期:为全部引脚对进行一次路径搜索为一个训练周期,一个训练周期得到总体布线的完整执行策略,DRL在同一问题集下进行重复的训练,直至网络模型达到收敛状态.
最大步数:在训练过程中,智能体可能在环境中长时间寻找不到目标状态或者根本无法找到目标状态从而陷入死循环,因此需要给每个引脚对分配固定大小的最大步数.若到达最大步数时该引脚对还未寻找到目标状态,则该引脚对在本训练周期被视为布线失败,退出该引脚对,转而执行下一个引脚对的布线.
损失函数:损失值的计算采用均方差(Mean Square Error,MSE)函数,计算预测Q值与目标值之间的欧式距离,损失函数如公式(11)所示. 通过损失函数对网络权重参数ω求导得到梯度方程,采用Adam优化器进行随机梯度下降训练.
Figure RE-GDA0003170310150000121
其中m为训练样本数量,yi由公式(8)计算.
优选的,在本实施例中,通过改变收益函数引导智能体增加线网内部导线资源的复用,可以发现线网内部的引脚对之间是协助关系,不存在竞争.但线网间的引脚对竞争边容量,在串行训练中(线网按给定的顺序逐个布线),先完成布线的线网被后布线的线网视为障碍物,导致布线顺序靠后的线网在布线难度上高于靠前的线网;本实施例中采用并发训练方式.在给定的布线环境中,将线网按照引脚数量降序排序, 其后将有序的线网存入并发队列中.假设线网数为Nnet,最大步数为 maxStep,线网i含有的引脚对数为
Figure RE-GDA0003170310150000122
线网i所能执行的最大可执行步数为
Figure RE-GDA0003170310150000123
训练时将训练周期划分为多个时间片,单个时间片为并发队列中的所有线网都分配1个步长(若线网i的最大可执行步数已耗尽或线网i已成功完成布线,则线网i在此训练周期内不再进入并发队列).通过并发训练方式,队列中所有线网的优先级被提高至同一水平,也消除了顺序布线中存在的不公平性。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和 /或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。

Claims (9)

1.一种基于改进深度强化学习的总体布线方法,其特征在于,包括以下步骤:
步骤S1:通过Prim算法将多端线网分解为两引脚问题;
步骤S2:对所有两引脚进行状态编码,并通过A*算法构造初始布线结果,存入经验回放区进行预处理;
步骤S3:完成预处理后传入DDQN模拟环境,采用并发训练,在预设的训练周期中生成布线结果。
2.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述步骤S1具体为:采用Prim算法构造线网内部的最小生成树,所有引脚被映射在二维平面上,引脚之间线段的权重设为引脚间的曼哈顿距离。
3.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述状态编码,具体为:采用15位编码,起点、终点和智能体所处位置坐标均由3位编码所表示,六个方向的边容量由6位编码所表示。
4.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述经验回放区预处理,具体为:采用A*算法获取初始布线路径,代价函数g(n)代表执行了第n步所花费的代价,若超出边界或产生溢出时,代价g(n)=-1000,其他情况下g(n)=-1,启发函数h(n)用于预估到达终点还需要的代价,用该位置到达目标点的曼哈顿距离表示。
5.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述DDQN将动作的选择和评估两个步骤分割开,用于消除过估计问题,DDQN将动作的选取方式从目标Q网络对应Q值最大的动作替换为评估Q网络对应Q值最大的动作,如公式(7)所示,目标值的计算公式如公式(8)所示.
a(s′i;ω)=argmaxa′Q(s′i,a′;ω) (7)
yi=ri+γQ*(s′i,a(s′i;ω);ω′) (8)
其中,s′i是下一状态,a′是在下一状态所执行的动作,ω是神经网络参数,yi是目标值,ri是当前状态下获得的收益,γ为折扣因子。
6.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述DDQN收益值函数,具体为:
智能体在环境中所做出的任何动作都会得到环境的回馈,这种回馈就是收益.收益值可以是正数、负数和零,正收益代表环境给予智能体积极的奖励,负收益代表环境给予智能体消极的惩罚,DDQN总是向累计收益最大化的方向收敛,在考虑缩短线长作为优化目标的前提下,有如下收益值函数:
Figure FDA0003101717430000021
其中,对于智能体到达引脚对的终点时获得+100的收益值,其他情况下,无论是智能体成功执行了动作还是由于边容量为0而被迫停留原地,均得到-1的收益值;
对线网内其他引脚对已经走过的路径进行标记,对能够使导线复用的收益值设置为0,对布线稀疏区域和密集区域的收益值进行设置,得到如下收益函数:
Figure FDA0003101717430000031
其中ec为边的容量,ed为边已经容纳的导线数量。
7.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述DDQN采用的神经网络架构具体为:评估Q网络和目标Q网络均为三层全连接层,第一层至第三层的神经元数为32、64和32,神经元的激活函数为ReLU线性整流函数,输入层大小为15,输出层大小为6。
8.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述DDQN损失值的计算采用均方差函数,计算预测Q值与目标值之间的欧式距离,损失函数如公式(11)所示,通过损失函数对网络权重参数ω求导得到梯度方程,采用Adam优化器进行随机梯度下降训练
Figure FDA0003101717430000032
其中m为训练样本数量,yi由公式(8)计算。
9.根据权利要求1所述的基于改进深度强化学习的总体布线方法,其特征在于,所述并发训练,具体为:
在给定的布线环境中,将线网按照引脚数量降序排序,其后将有序的线网存入并发队列中;
设线网数为Nnet,最大步数为maxStep,线网i含有的引脚对数为
Figure FDA0003101717430000041
线网i所能执行的最大可执行步数为
Figure FDA0003101717430000042
训练时将训练周期划分为多个时间片,单个时间片为并发队列中的所有线网都分配1个步长;
若线网i的最大可执行步数已耗尽或线网i已成功完成布线,则线网i在此训练周期内不再进入并发队列。
CN202110624691.2A 2021-06-04 2021-06-04 基于改进深度强化学习的总体布线方法 Active CN113312874B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110624691.2A CN113312874B (zh) 2021-06-04 2021-06-04 基于改进深度强化学习的总体布线方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110624691.2A CN113312874B (zh) 2021-06-04 2021-06-04 基于改进深度强化学习的总体布线方法

Publications (2)

Publication Number Publication Date
CN113312874A true CN113312874A (zh) 2021-08-27
CN113312874B CN113312874B (zh) 2022-12-06

Family

ID=77377736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110624691.2A Active CN113312874B (zh) 2021-06-04 2021-06-04 基于改进深度强化学习的总体布线方法

Country Status (1)

Country Link
CN (1) CN113312874B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116384321A (zh) * 2023-04-11 2023-07-04 之江实验室 一种基于深度强化学习的2.5d总体布线方法和系统
CN117078236A (zh) * 2023-10-18 2023-11-17 广东工业大学 复杂装备智能维护方法、装置、电子设备及存储介质
CN117829085A (zh) * 2024-03-04 2024-04-05 中国科学技术大学 一种适用于芯片布线的连通图生成方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106919769A (zh) * 2017-03-15 2017-07-04 冷明 一种基于多层次方法和赋权超图的层次式fpga布局布线方法
CN110515303A (zh) * 2019-09-17 2019-11-29 余姚市浙江大学机器人研究中心 一种基于ddqn的自适应动态路径规划方法
CN112179367A (zh) * 2020-09-25 2021-01-05 广东海洋大学 一种基于深度强化学习的智能体自主导航方法
CN112601284A (zh) * 2020-12-07 2021-04-02 南京邮电大学 基于多智能体深度强化学习的下行多小区ofdma资源分配方法
US20210103286A1 (en) * 2019-10-04 2021-04-08 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Systems and methods for adaptive path planning
CN112668235A (zh) * 2020-12-07 2021-04-16 中原工学院 基于离线模型预训练学习的ddpg算法的机器人控制方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106919769A (zh) * 2017-03-15 2017-07-04 冷明 一种基于多层次方法和赋权超图的层次式fpga布局布线方法
CN110515303A (zh) * 2019-09-17 2019-11-29 余姚市浙江大学机器人研究中心 一种基于ddqn的自适应动态路径规划方法
US20210103286A1 (en) * 2019-10-04 2021-04-08 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Systems and methods for adaptive path planning
CN112179367A (zh) * 2020-09-25 2021-01-05 广东海洋大学 一种基于深度强化学习的智能体自主导航方法
CN112601284A (zh) * 2020-12-07 2021-04-02 南京邮电大学 基于多智能体深度强化学习的下行多小区ofdma资源分配方法
CN112668235A (zh) * 2020-12-07 2021-04-16 中原工学院 基于离线模型预训练学习的ddpg算法的机器人控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YANG WANG ET.AL: "Deep Reinforcement Learning based Path Planning for Mobile Robot in Unknown Environment", 《JOURNAL OF PHYSICS: CONFERENCE SERIES》, 7 August 2020 (2020-08-07) *
刘耿耿 等: "VLSI 中高性能X结构多层总体布线器", 《自动化学报》, 31 January 2020 (2020-01-31) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116384321A (zh) * 2023-04-11 2023-07-04 之江实验室 一种基于深度强化学习的2.5d总体布线方法和系统
CN116384321B (zh) * 2023-04-11 2023-11-07 之江实验室 一种基于深度强化学习的2.5d总体布线方法和系统
CN117078236A (zh) * 2023-10-18 2023-11-17 广东工业大学 复杂装备智能维护方法、装置、电子设备及存储介质
CN117078236B (zh) * 2023-10-18 2024-02-02 广东工业大学 复杂装备智能维护方法、装置、电子设备及存储介质
CN117829085A (zh) * 2024-03-04 2024-04-05 中国科学技术大学 一种适用于芯片布线的连通图生成方法
CN117829085B (zh) * 2024-03-04 2024-05-17 中国科学技术大学 一种适用于芯片布线的连通图生成方法

Also Published As

Publication number Publication date
CN113312874B (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
CN113312874A (zh) 基于改进深度强化学习的总体布线方法
JP7413580B2 (ja) ニューラルネットワークを使用した集積回路フロアプランの生成
Dai et al. NCTU-GR: Efficient simulated evolution-based rerouting and congestion-relaxed layer assignment on 3-D global routing
CN114915630B (zh) 基于物联网设备的任务分配方法、网络训练方法及装置
CN109977098A (zh) 非平稳时序数据预测方法、系统、存储介质及计算机设备
CN110132282A (zh) 无人机路径规划方法及装置
CN106610867B (zh) 一种片上网络任务调度方法及装置
CN109344969B (zh) 神经网络系统及其训练方法以及计算机可读介质
CN109684190A (zh) 软件测试装置和方法
CN108985449B (zh) 一种对卷积神经网络处理器的控制方法及装置
Harris et al. A memetic algorithm for the quadratic assignment problem with parallel local search
CN114595871A (zh) 一种多无人机任务规划方法
CN111683010B (zh) 基于光缆网光路的双路由的生成方法及装置
CN113163004A (zh) 一种工业互联网边缘任务卸载决策方法、装置及存储介质
US20220083720A1 (en) Electrical circuit design
Deniziak et al. Hardware/software co-synthesis of distributed embedded systems using genetic programming
CN116484948A (zh) 事件预测方法、装置及电子设备
CN115526417A (zh) 多无人车任务分配方法、装置、车辆及存储介质
Mazidi et al. PSPGA: A New Method for Protein Structure Prediction based on Genetic Algorithm
CN113139644A (zh) 一种基于深度蒙特卡洛树搜索的信源导航方法及装置
Kim et al. SpecMCTS: Accelerating Monte Carlo Tree Search Using Speculative Tree Traversal
CN116776751B (zh) 一种智能决策算法模型设计开发辅助系统
CN115114877B (zh) Fpga芯片的布线方法和系统
CN117009092B (zh) 基于多重多臂老虎机的编译时间资源动态分配方法及系统
CN116205319A (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