CN115041842B - 一种芯片群孔的激光打孔路径优化方法和系统 - Google Patents
一种芯片群孔的激光打孔路径优化方法和系统 Download PDFInfo
- Publication number
- CN115041842B CN115041842B CN202210743485.8A CN202210743485A CN115041842B CN 115041842 B CN115041842 B CN 115041842B CN 202210743485 A CN202210743485 A CN 202210743485A CN 115041842 B CN115041842 B CN 115041842B
- Authority
- CN
- China
- Prior art keywords
- scanning line
- scanning
- chip
- preset
- line
- 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
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K26/00—Working by laser beam, e.g. welding, cutting or boring
- B23K26/36—Removing material
- B23K26/38—Removing material by boring or cutting
- B23K26/382—Removing material by boring or cutting by boring
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K26/00—Working by laser beam, e.g. welding, cutting or boring
- B23K26/08—Devices involving relative movement between laser beam and workpiece
- B23K26/0869—Devices involving movement of the laser head in at least one axial direction
- B23K26/0876—Devices involving movement of the laser head in at least one axial direction in at least two axial directions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K26/00—Working by laser beam, e.g. welding, cutting or boring
- B23K26/70—Auxiliary operations or equipment
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Optics & Photonics (AREA)
- Plasma & Fusion (AREA)
- Mechanical Engineering (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Laser Beam Processing (AREA)
Abstract
本发明属于半导体加工制造领域,尤其涉及一种芯片群孔的激光打孔路径优化方法和系统,所述方法包括以下步骤:构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线;根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型;结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果。本发明通过建立扫描线总长度最小化孔群全覆盖模型,并先后使用扫描线拆分策略处理扫描线、使用贪心搜索算法、局部最优二叉树两层贪心搜索算法、局部最优二叉树三层贪心搜索算法优化被拆分扫描线的连接方式,使得群孔路径优化问题规模缩小,缩短了计算时间,进而优化了芯片打孔的工艺效率。
Description
技术领域
本发明属于半导体加工制造领域,尤其涉及一种芯片群孔的激光打孔路径优化方法和系统。
背景技术
激光打孔路径优化问题是在一个数量为n的孔群列表K中,要求使用激光加工K中n个孔各一次,目标是寻找到一条包含这n个孔的激光最优加工路径,使得加工路径的加工成本为所有加工路径中的最小值的问题;而扫描线指的是在路径优化问题中,将孔群中处于同一行的孔或者处于同一列的孔用一条直线连接起来的直线,扫描线只有水平和垂直两个方向。激光打孔路径优化问题广泛存在于半导体芯片加工、机械零部件加工、印制电路板加工等电子、机械行业之中,对打孔加工路径进行研究有利于优化激光行走路径,提高加工效率,降低加工成本,从而提高企业的利润。目前,已经很多研究致力于研究中小规模打孔路径优化问题,在这方面已存在不少效率较高的优秀算法,但是对于大规模激光孔群加工路径优化问题,当前存在的文献和研究还仍然比较少。
目前在实际的应用环境中,缺少合适用于大规模的激光孔群路径优化算法,请参照图1,图1是现有技术提供的一种单向扫描方法的示意图,不少的加工企业目前采用如图1所示的简单的激光束x向全扫描或y向全扫描方式对孔群进行加工,这种方法在孔群分布疏密不均匀的情况下会使总行程过大,也使空行程占总行程的比例过多;其次,芯片孔群激光打孔路径优化问题本质上属于TSP(Travelling salesman problem,旅行商问题),使用普通方法求解该问题会得到一条需要大量转折的路径,这与激光善于连续行走的特点相悖;此外,TSP问题是一个NP难(NP-Hard,多项式复杂程度的非确定性问题),在孔群数量庞大,例如精密的芯片中甚至多达数十万个点的情况下,采用一般的精确式算法或智能启发式优化算法均无法在可接受时间内寻找到一个质量较高的可行解。
发明内容
本发明提供一种芯片群孔的激光打孔路径优化方法和系统,旨在解决现有的群孔路径优化算法无法在可接受时间内寻找到一个质量较高的可行解的问题。
第一方面,本发明实施例提供一种芯片群孔的激光打孔路径优化方法,所述方法包括以下步骤:
S1、构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线;
S2、根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型;
S3、结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果。
更进一步地,所述扫描线总长度模型满足如下关系式:
其中,yi、xj为二进制变量,分别表示所述芯片孔群的第i列或第j行是否被扫描,pi表示所述芯片孔群中第i列相距最远的两个孔之间的距离,qj表示所述芯片孔群中第j行相距最远的两个孔之间的距离,mi表示所述芯片孔群中第i列的孔的数量,Aij为二进制变量,表示所述芯片孔群中第i列第j行是否有孔存在,N、M分别表示所述芯片孔群的最大行数和最大列数。
更进一步地,所述预设路径优化策略包括:
根据预设扫描线拆分方法对所述扫描线进行拆分;
根据预设相邻扫描线连接方法对两条任意方向的所述扫描线进行连接;
根据曼哈顿距离计算相互连接的所述扫描线的综合评价值。
更进一步地,所述预设扫描线拆分方法具体为:
对每一条所述扫描线,根据预设拆分参数判断其中相邻两孔的间距是否过大,如果过大则对所述扫描线进行打断,形成以被断开的相邻两孔为端点的两条新的所述扫描线,所述预设拆分参数满足如下关系式:
其中,c表示所述预设打断参数,l表示待拆分的所述扫描线的长度,b表示预设拆分系数,所述预设拆分系数用于控制计算的所述扫描线的规模。
更进一步地,所述预设相邻扫描线连接方法包括第一连接方式和第二连接方式,所述第一连接方式为先生成竖直方向再生成水平方向的连接线,所述第二连接方式为先生成水平方向再生成竖直方向的连接线,所述预设相邻扫描线根据以下步骤选择所述第一连接方式或所述第二连接方式:
S201、根据两种不同连接方式生成连接线,两种连接方式中均包括两条原本的所述扫描线和两条相互垂直的连接线;
S202、根据预设评价规则计算通过所述连接线相互连接的所述扫描线之间的转角次数;
S203、判断不同连接方式中转角次数的累计值较小的一方,并按照对应的连接方式对所述扫描线进行连接。
更进一步地,所述预设评价规则具体为:
定义相互连接的两条所述扫描线为第一扫描线和第二扫描线,若所述第二扫描线的起点在所述第一扫描线的终点的左侧:
若所述第二扫描线与所述第一扫描线平行,则转角次数为2次;
若所述第二扫描线与所述第一扫描线垂直,且所述第二扫描线的扫描方向为远离所述第一扫描线,则转角次数为1次;
若所述第二扫描线与所述第一扫描线垂直,且所述第二扫描线的扫描方向为靠近所述第一扫描线,则转角次数为2次;
若所述第二扫描线的起点在所述第一扫描线终点的右侧:
若所述第二扫描线与所述第一扫描线垂直,则转角次数为3次;
若所述第二扫描线与所述第一扫描线平行,且所述第二扫描线与所述第一扫描线扫描方向相反,则转角次数为2次;
若所述第二扫描线与所述第一扫描线平行,且所述第二扫描线与所述第一扫描线扫描方向相同,则转角次数为3次。
更进一步地,定义第i条所述扫描线与第j条所述扫描线相互连接的所述综合评价值为Aij,所述综合评价值满足如下关系式:
其中,mij表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点的曼哈顿距离,tij表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点的转折次数,α表示扫描线之间的曼哈顿距离系数,β表示扫描线之间的转角次数系数。
更进一步地,所述扫描路径优化模型满足如下关系式:
其中,xij为二进制变量,表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点是否存在连接,oi、oj表示所述芯片群孔中第i条、第j条扫描线的连接次序,S表示所有扫描线编号的集合,size表示S中元素的个数。
更进一步地,步骤S3中,结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果的步骤,包括以下子步骤:
S31、建立一个包含所有所述扫描线的扫描线列表,建立关于所述扫描线的起点、终点与所述扫描线的对应关系,将所述起点与所述终点置于一点列表中,并初始化最大二叉树深度为n;
S32、将所述扫描线列表第一列的所述扫描线添加至一局部最优扫描线列表中,将所述局部最优扫描线列表最后一列的所述扫描线移除,并设置为当前扫描线,同时设置当前二叉树深度为0;
S33、调用最优二叉树贪心搜索函数,将所述当前二叉树深度自增1,并利用所述当前扫描线的所述终点在所述点列表中寻找使得所述综合评价值最优和次优的最优点和次优点;
S34、根据所述最优点的对应关系获得当前终点,并再使用最优二叉树贪心搜索函数重复步骤S33,其中,若所述当前二叉树深度到达所述最大二叉树深度,计算所述局部最优扫描线列表中所有所述扫描线的所述综合评价值之和,并记录所述综合评价值之和与当前的所述局部最优扫描线列表,在所述局部最优扫描线列表中往次优点方向搜索,直至将n层范围内所有连接方式搜索完毕,返回最终的所述局部最优扫描列表;
S35、将所述局部最优扫描线列表中的所有所述扫描线在所述扫描线列表中全部移除,判断此时的所述扫描线列表是否为空,若为空则返回S32,重复执行以上步骤;若非空,则将所述扫描线列表输出,得到对于所述扫描线列表的所述最优打孔路径结果。
第二方面,本发明实施例还提供一种芯片群孔的激光打孔路径优化系统,包括:
群孔扫描模块,用于构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线;
扫描路径处理模块,用于根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型;
路径优化模块,用于结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果。
本发明所得到的有益效果,由于通过建立扫描线总长度最小化孔群全覆盖模型,并先后使用扫描线拆分策略处理扫描线、使用贪心搜索算法、局部最优二叉树两层贪心搜索算法、局部最优二叉树三层贪心搜索算法优化被拆分扫描线的连接方式,使得群孔路径优化问题规模缩小,缩短了计算时间,进而优化了芯片打孔的工艺效率。
附图说明
图1是现有技术提供的一种单向扫描方法的示意图;
图2是本发明实施例提供的芯片群孔的激光打孔路径优化方法的步骤流程框图;
图3是本发明实施例提供的扫描线总长度模型优化示意图;
图4是本发明实施例提供的扫描线总长度模型求解数据示意图;
图5是本发明实施例提供的扫描线打断示意图;
图6是本发明实施例提供的第一连接方式和第二连接方式的示意图;
图7是本发明实施例提供的一种扫描线连接结果的路径;
图8是本发明实施例提供的一种扫描线最优连接的示意图;
图9是本发明实施例提供的芯片群孔的激光打孔路径优化系统300的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参照图2,图2是本发明实施例提供的芯片群孔的激光打孔路径优化方法的步骤流程框图,具体包括以下步骤:
S1、构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线。
请参照图3,图3是本发明实施例提供的扫描线总长度模型优化示意图,在激光束x向全扫描或y向全扫描总行程过大且未考虑综合x向和y向扫描可以使扫描行程减少的问题的背景下,本发明实施例对此问题提出所述扫描线总长度模型并对扫描行程优化,首先,将孔群按照竖直和水平方向分成行和列。将每一行每一列的孔全部映射至x轴和y轴上,此时问题得到简化,只需要获取每行每列所需的扫描长度,在确保所有孔被扫过的前提下减少映射点个数,即可使扫描行程最短。
更进一步地,所述扫描线总长度模型满足如下关系式:
其中,yi、xj为二进制变量,分别表示所述芯片孔群的第i列或第j行是否被扫描,pi表示所述芯片孔群中第i列相距最远的两个孔之间的距离,qj表示所述芯片孔群中第j行相距最远的两个孔之间的距离,mi表示所述芯片孔群中第i列的孔的数量,Aij为二进制变量,表示所述芯片孔群中第i列第j行是否有孔存在,N、M分别表示所述芯片孔群的最大行数和最大列数。
本发明实施例所述的二进制变量,在其取值为1时为确定结果,取值为0时为否定结果,例如Aij,其取值为1时,表示第i列第j行有孔存在,其取值为0时,表示第i列第j行没有孔存在。
本发明实施例使用CPLEX对所述扫描线总长度模型进行求解,请参照图4,图4是本发明实施例提供的扫描线总长度模型求解数据示意图,获得一个孔群列表时,首先遍历孔群列表将孔群划分为行和列,接着得到最大行数和最大列数、每一行、列的孔数量以及每一行、列的两孔最大间距,然后建立孔与其所在行列的映射关系,最后求解模型所需的数据全部获取完毕。
S2、根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型。
更进一步地,所述预设路径优化策略包括:
根据预设扫描线拆分方法对所述扫描线进行拆分;
根据预设相邻扫描线连接方法对两条任意方向的所述扫描线进行连接;
根据曼哈顿距离计算相互连接的所述扫描线的综合评价值。
请参照图5,图5是本发明实施例提供的扫描线打断示意图。更进一步地,所述预设扫描线拆分方法具体为:
对每一条所述扫描线,根据预设拆分参数判断其中相邻两孔的间距是否过大,如果过大则对所述扫描线进行打断,形成以被断开的相邻两孔为端点的两条新的所述扫描线,所述预设拆分参数满足如下关系式:
其中,c表示所述预设打断参数,l表示待拆分的所述扫描线的长度,b表示预设拆分系数,所述预设拆分系数用于控制计算的所述扫描线的规模。
使用比例系数可以比较准确地控制扫描线的整体规模,当算例规模非常小时,设置预设拆分系数b为0可将扫描线全部变为离散孔;当算例规模非常大时,设置b为1可不打断任何扫描线以保证规模不再扩大,其次,可以自适应扫描线长度对扫描线进行打断,以达到准确打断不同长度扫描线中两孔间距较大位置的目的。
更进一步地,所述预设相邻扫描线连接方法包括第一连接方式和第二连接方式,所述第一连接方式为先生成竖直方向再生成水平方向的连接线,所述第二连接方式为先生成水平方向再生成竖直方向的连接线,请参照图6,图6是本发明实施例提供的第一连接方式和第二连接方式的示意图,所述预设相邻扫描线根据以下步骤选择所述第一连接方式或所述第二连接方式:
S201、根据两种不同连接方式生成连接线,两种连接方式中均包括两条原本的所述扫描线和两条相互垂直的连接线;
S202、根据预设评价规则计算通过所述连接线相互连接的所述扫描线之间的转角次数;
S203、判断不同连接方式中转角次数的累计值较小的一方,并按照对应的连接方式对所述扫描线进行连接。
更进一步地,所述预设评价规则具体为:
定义相互连接的两条所述扫描线为第一扫描线和第二扫描线,若所述第二扫描线的起点在所述第一扫描线的终点的左侧:
若所述第二扫描线与所述第一扫描线平行,则转角次数为2次;
若所述第二扫描线与所述第一扫描线垂直,且所述第二扫描线的扫描方向为远离所述第一扫描线,则转角次数为1次;
若所述第二扫描线与所述第一扫描线垂直,且所述第二扫描线的扫描方向为靠近所述第一扫描线,则转角次数为2次;
若所述第二扫描线的起点在所述第一扫描线终点的右侧:
若所述第二扫描线与所述第一扫描线垂直,则转角次数为3次;
若所述第二扫描线与所述第一扫描线平行,且所述第二扫描线与所述第一扫描线扫描方向相反,则转角次数为2次;
若所述第二扫描线与所述第一扫描线平行,且所述第二扫描线与所述第一扫描线扫描方向相同,则转角次数为3次。
更进一步地,定义第i条所述扫描线与第j条所述扫描线相互连接的所述综合评价值为Aij,所述综合评价值满足如下关系式:
其中,mij表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点的曼哈顿距离,tij表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点的转折次数,α表示扫描线之间的曼哈顿距离系数,β表示扫描线之间的转角次数系数。
根据以上,为一个数量为n的扫描线列表K,要求经过K中n条线各一次,目标是求得最优行走顺序,使利用该行走顺序行走时空行程和总转角次数最少的所述扫描路径优化模型,为取得如图7所示的一种扫描线连接结果的路径,模型满足如下关系式:
其中,xij为二进制变量,表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点是否存在连接,oi、oj表示所述芯片群孔中第i条、第j条扫描线的连接次序,S表示所有扫描线编号的集合,size表示S中元素的个数。
S3、结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果。
为便于说明,本发明实施例首先介绍贪心算法及穷举的最优连接顺序寻找策略在路径优化上的应用。
使用贪心算法求解所述扫描路径优化模型的过程中,首先会将所有扫描线起点和终点一起置于一个列表里,取距离坐标原点最近的点对应扫描线作为第一条扫描线,扫描线的终点作为当前终点,接着遍历点列表中的每一个点并获得对应的扫描线,不断与当前终点对应扫描线进行计算得到综合评价值,取能得到最优综合评价值的点对应的扫描线作为下一条扫描线;其次,将下一条扫描线的起点、终点移出点列表,并重置其终点为当前终点,再次进行上述的遍历过程直至点列表为空为止,最终即可得到最优连接列表。
扫描线连接的综合评价值计算需要先计算转角次数以及空行程,其中转角次数需要获取当前终点对应的扫描线以及下一个起点对应的扫描线才能进行计算,所以需要建立每一条扫描线与其起点、终点的对应关系,以便可以通过一个点直接获取其对应的扫描线。根据点获取到扫描线后,需要将该点重置为扫描线的起点,再由起点直接获得扫描线的终点以重置扫描线终点,所以需要建立每一条扫描线起点、终点之间彼此对应关系,可以直接由一个点获得另一个点。故需要建立四个对应关系。过程如下:
Step1001、遍历扫描线列表;
Step1002、获取每一条扫描线的起点和终点。首先建立起点为键、扫描线为值的哈希表和终点为键、扫描线为值的哈希表,最后再建立起点为键、终点为值的哈希表和终点为键、起点为值的哈希表,由此建立关联关系。
在每一次基于当前扫描线终点寻找最优连接顺序的过程中,都要计算当前终点与点列表中所有点的综合评价值,取综合评价值最小的点作为下一个起点,再根据扫描线与点的对应关系得到下一个起点对应扫描线,将该扫描线的起点和终点进行重置,这条扫描线即为当前扫描线的最优连接。
示例性的,请参照图8,图8是本发明实施例提供的一种扫描线最优连接的示意图,基于穷举的最优连接顺序寻找策略假定只有三条扫描线x、y和z,当前扫描线终点编号为0,其他两条待确定连接扫描线的起点和终点编号分别为1、2、3、4。则由扫描线x寻找下一条扫描线的过程如下:
Step2001、当前终点0遍历点1、点2、点3和点4,并计算当前终点0对应扫描线x与以点1为起点对应的扫描线y、以点2为起点对应的扫描线y,以点3为起点对应的扫描线z、以点4为起点对应的扫描线z的综合评价值a、b、c、d。
Step2002、比较a、b、c、d的值,b为最小,得知应以点2为下一个起点。
Step2003、重置点2为扫描线y的起点,重置点1为扫描线y的终点。
贪心算法总是从局部出发寻找最优,没有考虑到整体情况,而基于穷举的寻找算法的时间复杂度过大,不宜用来寻找最优扫描线连接顺序。综合考虑以上两方面因素,本发明实施例使用结合多层二叉树与贪心算法用于求解最优路径,虽然在此方法中使用了贪心算法,有所区别的是会分别在局部区域内进行多层的回溯穷举贪心搜索,这样既保证算法的时间复杂度在可接受范围内,又将搜寻局部最优解的范围扩大以寻找更优的扫描线连接顺序。
更进一步地,步骤S3中,结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果的步骤,包括以下子步骤:
S31、建立一个包含所有所述扫描线的扫描线列表,建立关于所述扫描线的起点、终点与所述扫描线的对应关系,将所述起点与所述终点置于一点列表中,并初始化最大二叉树深度为n;
S32、将所述扫描线列表第一列的所述扫描线添加至一局部最优扫描线列表中,将所述局部最优扫描线列表最后一列的所述扫描线移除,并设置为当前扫描线,同时设置当前二叉树深度为0;
S33、调用最优二叉树贪心搜索函数,将所述当前二叉树深度自增1,并利用所述当前扫描线的所述终点在所述点列表中寻找使得所述综合评价值最优和次优的最优点和次优点;
S34、根据所述最优点的对应关系获得当前终点,并再使用最优二叉树贪心搜索函数重复步骤S33,其中,若所述当前二叉树深度到达所述最大二叉树深度,计算所述局部最优扫描线列表中所有所述扫描线的所述综合评价值之和,并记录所述综合评价值之和与当前的所述局部最优扫描线列表,在所述局部最优扫描线列表中往次优点方向搜索,直至将n层范围内所有连接方式搜索完毕,返回最终的所述局部最优扫描列表;
S35、将所述局部最优扫描线列表中的所有所述扫描线在所述扫描线列表中全部移除,判断此时的所述扫描线列表是否为空,若为空则返回S32,重复执行以上步骤;若非空,则将所述扫描线列表输出,得到对于所述扫描线列表的所述最优打孔路径结果。
优选的,所述最大二叉树深度n的取值为2或3,令n分别等于2或3即可实现最优两层或三层二叉树贪心搜索。
示例性的,本发明实施例在如表1所示的群孔规模算例上使用所述芯片群孔的激光打孔路径优化方法对其路径进行最优求解,并与x向全扫描、y向全扫描的结果进行对比。
表1群孔规模算例
对比结果如表2所示。
表2对比结果
可以看出,使用x向全扫描、y向全扫描不仅扫描次数多,而且扫描总行程大,经过求解本发明实施例构建的模型,扫描线长度被压缩,而且扫描次数也有所减少,在孔群分布不规则情况下,使用本发明实施例提供的所述扫描路径优化模型相比起使用x向全扫描、y向全扫描的方式具有明显优势。
使用不同求解方法在7042孔算例、508288孔算例上求解所述扫描路径优化模型的结果分别如表3、表4所示。
表3 7042孔算例求解
表4 508288孔算例求解
以上结果中,算法“最短化线相邻连接”指通过扫描线总长度最小化孔群全覆盖模型得到的所有最短化扫描线两两进行顺序相邻连接。7042孔算例设置所述预设打断参数c为0.25,由于508288孔算例规模庞大,故设定拆分扫描线参数b为0,不打断扫描线。两个算例的空行程系数α和转角系数β均设置为1。通过比较发现,使用本发明实施例提供的所述扫描路径优化模型比不使用的其他算法优势明显。在使用不同搜索算法进行最优扫描线连接顺序搜索时,最优三层二叉树搜索得到的转角/线数比最小,而贪心搜索的总行程最小。
本发明所得到的有益效果,由于通过建立扫描线总长度最小化孔群全覆盖模型,并先后使用扫描线拆分策略处理扫描线、使用贪心搜索算法、局部最优二叉树两层贪心搜索算法、局部最优二叉树三层贪心搜索算法优化被拆分扫描线的连接方式,使得群孔路径优化问题规模缩小,缩短了计算时间,进而优化了芯片打孔的工艺效率。
本发明实施例还提供一种芯片群孔的激光打孔路径优化系统300,请参照图9,图9是本发明实施例提供的芯片群孔的激光打孔路径优化系统300的结构示意图,所述芯片群孔的激光打孔路径优化系统300包括:
群孔扫描模块301,用于构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线;
扫描路径处理模块302,用于根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型;
路径优化模块303,用于结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果。
所述芯片群孔的激光打孔路径优化系统300能够实现如上述实施例中的芯片群孔的激光打孔路径优化方法中的步骤,且能实现同样的技术效果,参上述实施例中的描述,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,所揭露的仅为本发明较佳实施例而已,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式用等同变化,均属于本发明的保护之内。
Claims (7)
1.一种芯片群孔的激光打孔路径优化方法,其特征在于,所述方法包括以下步骤:
S1、构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线;
S2、根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型;
S3、结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果;
其中,所述扫描线总长度模型满足如下关系式:
obj.
s.t.
其中,yi、xj为二进制变量,分别表示所述芯片孔群的第i列或第j行是否被扫描,pi表示所述芯片孔群中第i列相距最远的两个孔之间的距离,qj表示所述芯片孔群中第j行相距最远的两个孔之间的距离,mi表示所述芯片孔群中第i列的孔的数量,Aij为二进制变量,表示所述芯片孔群中第i列第j行是否有孔存在,N、M分别表示所述芯片孔群的最大行数和最大列数;
所述预设路径优化策略包括:
根据预设扫描线拆分方法对所述扫描线进行拆分;
根据预设相邻扫描线连接方法对两条任意方向的所述扫描线进行连接;
根据曼哈顿距离计算相互连接的所述扫描线的综合评价值;
所述预设扫描线拆分方法具体为:
对每一条所述扫描线,根据预设拆分参数判断其中相邻两孔的间距是否过大,如果过大则对所述扫描线进行打断,形成以被断开的相邻两孔为端点的两条新的所述扫描线,所述预设拆分参数满足如下关系式:
c=bl,0≤b≤1
其中,c表示预设打断参数,l表示待拆分的所述扫描线的长度,b表示预设拆分系数,所述预设拆分系数用于控制计算的所述扫描线的规模。
2.如权利要求1所述的一种芯片群孔的激光打孔路径优化方法,其特征在于,所述预设相邻扫描线连接方法包括第一连接方式和第二连接方式,所述第一连接方式为先生成竖直方向再生成水平方向的连接线,所述第二连接方式为先生成水平方向再生成竖直方向的连接线,所述预设相邻扫描线根据以下步骤选择所述第一连接方式或所述第二连接方式:
S201、根据两种不同连接方式生成连接线,两种连接方式中均包括两条原本的所述扫描线和两条相互垂直的连接线;
S202、根据预设评价规则计算通过所述连接线相互连接的所述扫描线之间的转角次数;
S203、判断不同连接方式中转角次数的累计值较小的一方,并按照对应的连接方式对所述扫描线进行连接。
3.如权利要求2所述的一种芯片群孔的激光打孔路径优化方法,其特征在于,所述预设评价规则具体为:
定义相互连接的两条所述扫描线为第一扫描线和第二扫描线,若所述第二扫描线的起点在所述第一扫描线的终点的左侧:
若所述第二扫描线与所述第一扫描线平行,则转角次数为2次;
若所述第二扫描线与所述第一扫描线垂直,且所述第二扫描线的扫描方向为远离所述第一扫描线,则转角次数为1次;
若所述第二扫描线与所述第一扫描线垂直,且所述第二扫描线的扫描方向为靠近所述第一扫描线,则转角次数为2次;
若所述第二扫描线的起点在所述第一扫描线终点的右侧:
若所述第二扫描线与所述第一扫描线垂直,则转角次数为3次;
若所述第二扫描线与所述第一扫描线平行,且所述第二扫描线与所述第一扫描线扫描方向相反,则转角次数为2次;
若所述第二扫描线与所述第一扫描线平行,且所述第二扫描线与所述第一扫描线扫描方向相同,则转角次数为3次。
4.如权利要求2所述的一种芯片群孔的激光打孔路径优化方法,其特征在于,定义第i条所述扫描线与第j条所述扫描线相互连接的所述综合评价值为Aij,所述综合评价值满足如下关系式:
Aij=αm‘ij+βtij
其中,m′ij表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点的曼哈顿距离,tij表示所述芯片群孔中第i条扫描线终点到第j条扫描线起点的转折次数,α表示扫描线之间的曼哈顿距离系数,β表示扫描线之间的转角次数系数。
6.如权利要求5所述的一种芯片群孔的激光打孔路径优化方法,其特征在于,步骤S3中,结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果的步骤,包括以下子步骤:
S31、建立一个包含所有所述扫描线的扫描线列表,建立关于所述扫描线的起点、终点与所述扫描线的对应关系,将所述起点与所述终点置于一点列表中,并初始化最大二叉树深度为n;
S32、将所述扫描线列表第一列的所述扫描线添加至一局部最优扫描线列表中,将所述局部最优扫描线列表最后一列的所述扫描线移除,并设置为当前扫描线,同时设置当前二叉树深度为0;
S33、调用最优二叉树贪心搜索函数,将所述当前二叉树深度自增1,并利用所述当前扫描线的所述终点在所述点列表中寻找使得所述综合评价值最优和次优的最优点和次优点;
S34、根据所述最优点的对应关系获得当前终点,并再使用最优二叉树贪心搜索函数重复步骤S33,其中,若所述当前二叉树深度到达所述最大二叉树深度,计算所述局部最优扫描线列表中所有所述扫描线的所述综合评价值之和,并记录所述综合评价值之和与当前的所述局部最优扫描线列表,在所述局部最优扫描线列表中往次优点方向搜索,直至将n层范围内所有连接方式搜索完毕,返回最终的所述局部最优扫描列表;
S35、将所述局部最优扫描线列表中的所有所述扫描线在所述扫描线列表中全部移除,判断此时的所述扫描线列表是否为空,若为空则返回S32,重复执行以上步骤;若非空,则将所述扫描线列表输出,得到对于所述扫描线列表的所述最优打孔路径结果。
7.一种芯片群孔的激光打孔路径优化系统,其特征在于,包括:
群孔扫描模块,用于构建关于芯片孔群的扫描线总长度模型,并计算对所述芯片孔群进行扫描得到的扫描线;
扫描路径处理模块,用于根据所述扫描线以及预设的路径优化策略构建扫描路径优化模型;
路径优化模块,用于结合多层二叉树与贪心算法求解所述扫描路径优化模型,得到关于所述芯片孔群的最优打孔路径结果;
其中,所述扫描线总长度模型满足如下关系式:
obj.
s.t.
其中,yi、xj为二进制变量,分别表示所述芯片孔群的第i列或第j行是否被扫描,pi表示所述芯片孔群中第i列相距最远的两个孔之间的距离,qj表示所述芯片孔群中第j行相距最远的两个孔之间的距离,mi表示所述芯片孔群中第i列的孔的数量,Aij为二进制变量,表示所述芯片孔群中第i列第j行是否有孔存在,N、M分别表示所述芯片孔群的最大行数和最大列数;
所述预设路径优化策略包括:
根据预设扫描线拆分方法对所述扫描线进行拆分;
根据预设相邻扫描线连接方法对两条任意方向的所述扫描线进行连接;
根据曼哈顿距离计算相互连接的所述扫描线的综合评价值;
所述预设扫描线拆分方法具体为:
对每一条所述扫描线,根据预设拆分参数判断其中相邻两孔的间距是否过大,如果过大则对所述扫描线进行打断,形成以被断开的相邻两孔为端点的两条新的所述扫描线,所述预设拆分参数满足如下关系式:
c=bl,0≤b≤1
其中,c表示预设打断参数,l表示待拆分的所述扫描线的长度,b表示预设拆分系数,所述预设拆分系数用于控制计算的所述扫描线的规模。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210743485.8A CN115041842B (zh) | 2022-06-28 | 2022-06-28 | 一种芯片群孔的激光打孔路径优化方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210743485.8A CN115041842B (zh) | 2022-06-28 | 2022-06-28 | 一种芯片群孔的激光打孔路径优化方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115041842A CN115041842A (zh) | 2022-09-13 |
CN115041842B true CN115041842B (zh) | 2023-03-07 |
Family
ID=83163762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210743485.8A Active CN115041842B (zh) | 2022-06-28 | 2022-06-28 | 一种芯片群孔的激光打孔路径优化方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115041842B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115846912B (zh) * | 2023-02-14 | 2023-05-05 | 季华实验室 | 脑电极芯片打孔方法、装置、电子设备及激光打孔设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106662858A (zh) * | 2014-02-19 | 2017-05-10 | 广东正业科技股份有限公司 | 一种pcb板的钻孔路径设定方法 |
CN108975671A (zh) * | 2018-10-12 | 2018-12-11 | 广东工业大学 | 一种双机器人玻璃掰片作业规划方法及系统 |
CN109753362A (zh) * | 2019-01-14 | 2019-05-14 | 中国水利水电科学研究院 | 一种分布式水文模型的汇流并行调度方法 |
CN112836854A (zh) * | 2020-12-31 | 2021-05-25 | 合肥工业大学 | 基于贪心算法的板材多孔加工路径优化方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3774138B2 (ja) * | 2000-11-13 | 2006-05-10 | 住友重機械工業株式会社 | 加工計画方法、装置、及び、加工方法、装置 |
-
2022
- 2022-06-28 CN CN202210743485.8A patent/CN115041842B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106662858A (zh) * | 2014-02-19 | 2017-05-10 | 广东正业科技股份有限公司 | 一种pcb板的钻孔路径设定方法 |
CN108975671A (zh) * | 2018-10-12 | 2018-12-11 | 广东工业大学 | 一种双机器人玻璃掰片作业规划方法及系统 |
CN109753362A (zh) * | 2019-01-14 | 2019-05-14 | 中国水利水电科学研究院 | 一种分布式水文模型的汇流并行调度方法 |
CN112836854A (zh) * | 2020-12-31 | 2021-05-25 | 合肥工业大学 | 基于贪心算法的板材多孔加工路径优化方法 |
Non-Patent Citations (1)
Title |
---|
HDI 板孔群的K-means 聚类及加工路径优化研究;张明禄;《组合机床与自动化加工技术》;20180720;134-137页 * |
Also Published As
Publication number | Publication date |
---|---|
CN115041842A (zh) | 2022-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115041842B (zh) | 一种芯片群孔的激光打孔路径优化方法和系统 | |
CN104408055B (zh) | 一种激光雷达点云数据的存储方法及装置 | |
Song et al. | Solutions for processing k nearest neighbor joins for massive data on mapreduce | |
CN109872396B (zh) | 一种适用于三角网格模型的快速截面轮廓生成方法 | |
CN106708956B (zh) | 一种基于多url规则集的http数据匹配方法 | |
CN112507929B (zh) | 一种基于改进YOLOv3网络的车身点焊焊渣精准检测方法 | |
CN112035586A (zh) | 基于可扩展学习索引的空间范围查询方法 | |
CN111597943B (zh) | 一种基于图神经网络的表格结构识别方法 | |
CN108446712B (zh) | Odn网智能规划方法、装置及系统 | |
Martin et al. | Offline and online evolutionary bi-directional RRT algorithms for efficient re-planning in dynamic environments | |
CN113963123B (zh) | 一种融合深度学习和多点统计学的地质建模方法及装置 | |
Serra et al. | Large-scale sparse structural node representation | |
CN113326343B (zh) | 基于多级网格和文件索引的路网数据存储方法及系统 | |
CN112132187A (zh) | 基于随机森林快速判断钙钛矿结构稳定性的方法 | |
CN117151922A (zh) | 一种基于知识图谱的零件加工工艺路线生成方法及装置 | |
CN108052587B (zh) | 基于决策树的大数据分析方法 | |
CN104572820B (zh) | 模型的生成方法及装置、重要度获取方法及装置 | |
CN106484863A (zh) | 基于属性构建概念格的增加算法 | |
CN110347676A (zh) | 基于关系r树的不确定性时态数据管理与查询方法 | |
CN111709681B (zh) | 一种离散仓储选位方法 | |
Li | Glowworm Swarm Optimization Algorithm‐and K‐Prototypes Algorithm‐Based Metadata Tree Clustering | |
CN114926488A (zh) | 基于广义Hough模型和改进金字塔搜索加速的工件定位方法 | |
CN113763240B (zh) | 一种点云缩略图生成方法、装置、设备及存储介质 | |
CN112686468A (zh) | 一种公共设施稳定性优化方法 | |
CN114707174A (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 |