一种全节点遍历路径优化方法技术

技术编号:5437883 阅读:319 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种高效快速的全节点遍历路径优化的方法,最终生成一个单向的节点队列路径。本方法包括以下几个步骤:首先根据需要解决的实际问题构建节点网络,该网络可以是全向网络,以节点间的边记录路径花费;然后对全部节点建立最小生成树,针对生成树上的所有分支和端点建立队列;之后通过试探性的算法对有分支的节点逐一切断各个分支,每切断一个分支就根据端点队列搜索距离最小的端点对进行连接,不断进行这步操作,直到原最小生成树中的所有分支都被断开,所有节点连接成一个单向队列。在建立新的端点连接时,本方法还提供一种检测机制以避免新连接使节点队列形成一个环,从而避免路径中有节点丢失。此外本发明专利技术中还包括一个横向或纵向优先的路径作为优化路径的备选,以提高整个方法的可靠性。

【技术实现步骤摘要】

本专利技术属于路径规划领域,特别应用于对源和宿没有特殊规定的全节点遍历路径 规划,其模型可应用于SMT(表面贴装技术)自动检测路径规划等实际问题。
技术介绍
路径规划作为一种抽象的数据模型,其原型可以是存在于任一领域的一个规划问 题,以自动检测为例,在工业自动化领域,很多自动检测过程都是针对一个平面中的多个检 测点检查,由于大多数设备都是串行工作,需要在检查完一个节点后再检查另一个,路径优 化的好就可以明显的节省时间,提高检查效率。以SMT领域,焊点的自动光学检测(AOI)为例,绝大多数检测设备的工作方式是, 移动X、Y轴使被检测的电路板(PCB)与取像的工业相机产生相对运动,移动相机到需要检 查的位置上方进行曝光取像,获得图像后再通过检测算法进行不良检查。这样,整个检查时 间就由控制轴移动时间、相机曝光时间、检测算法时间等3个不同的时间段的总和决定。由 于其中的检测过程是纯粹的软件过程,可以与控制轴的运动过程和相机的报告过程并行处 理,也就是在轴运动和相机曝光的同时,计算机运行检测算法进行不良检查,而相机曝光时 间一般极小(毫秒级),整个检查过程的时间花费主要归结为控制轴移动的时间。因此,为 了提高检测速度,缩短轴移动距离、提高电机速度就成了最直接有效的方法,任何电机的速 度都有其极限,而且高速电机的功率很高,启动、停止时对设备机体的冲击很大,价格也非 常昂贵,所以从设备综合性能的角度来讲,更好的优化检测过程的路径,缩小轴移动的距离 才是缩小检测时间最高效的手段。根据上面介绍的自动检查方式,可以不失一般性的假设被检测的电路板不运动, 只有相机在2维平面上进行运动。将相机停下曝光、检测的过程抽象为一个节点,相机移动 路径抽象为连接节点的边,边上的值为相机移动的距离。这样,寻找最优路径的问题就转化 为在检测节点网络中搜寻最优的遍历路径。由于实际检测中,相机可以在任意两个节点间 移动,所以这个网络为一个全向全连通图。又由于装载、卸载电路板的过程存在,使得相机 可以并行的移动到出发节点或从最终节点回到原点,所以遍历过程的源节点和宿节点可以 是任意的。理论上,寻找一个图的最优遍历路径是一个NP完全问题,也就是不可能在有限时 间得到真正的最优解,因此大多数检测设备都是以横向或者纵向优先的方法取得S型路 径,或者从外到内获得螺旋形的路径。这几种常用的方法在检测点足够密集的情况下与最 优遍历路径比较相似,但是当节点网络不是很密集甚至是稀疏的情况下,会带来很大的浪 费,如图2所示的情况。而在实际的检测过程中,由于被检测的电路板形状、大小经常会变 化,电路板上元件的布局也非常不固定,所以固定的S型路径和螺旋型路径基本上不可能 得到最优路径的近似。
技术实现思路
为了解决上述问题,提高自动检测效率,本专利技术提供了一种高效、可靠的全节点遍 历路径寻优方法。所述方法具体包括—种全节点遍历路径优化方法,其特征在于,所述方法包括以下步骤步骤A、根据需要解决的问题构建节点网络,在可能出现分支的地方建立节点,以 从一个节点到另一个节点的花费作为该有向边的值;步骤B、构建节点网络的最小生成树;步骤C、根据最小生成树,以新增边花费最小为原则,对所有有分支的节点,逐一去 除分支并建立端点间的连接;步骤D、不断重复步骤C直到网络的最小生成树每个节点都没有分支,转化为节点 单向队列,从而生成优化后的遍历路径。优选的,所述步骤B中的节点网络一般为双向或者全向网络,所述的双向网络是 指两个连通的节点间的边是有向的,即对于连通的A、B节点,无论从A节点到B节点还是从 B节点到A节点都是可行的(如果A、B节点间是单向连通的,则只能从A到B,不能从B到 A)。所述全向网络是指网络中任一个节点和网络中的所有其他节点间都是双向连通的。两 个节点间的边代表从一个节点到另一个节点间的花费。其中所述花费是节点间的距离,在其他应用中也可以是时间、金钱等其他代价,所 以在本专利技术中对于花费并不仅仅限定于节点之间的距离。优选的,所述步骤B中构建最小生成树的具体步骤为优选但不限于使用Prim算 法构建网络的最小生成树。优选的,在所述步骤A中,根据需要解决的问题构建节点网络,其方法为根据具体问题,在可能出现分支的地方建立节点;以从一个节点到另一个节点的花费作为该有向边的值;优选的,所述步骤C包括以下具体步骤(1)根据构建的最小生成树建立节点间的连通矩阵;优选的,矩阵横纵坐标均为 节点索引,矩阵值代表横纵坐标节点对间是否连通,连通的值为1,不连通的值为0 ;(2)根据构建的最小生成树建立有分支的节点队列优选的,节点队列中的每个 节点最少包含节点序号和分支个数两个信息;(3)根据构建的最小生成树建立端点节点的队列;优选的,端点队列中的每个节 点最少包含节点序号信息;(4)对分支节点队列的每一个节点,试探性切断节点的一个分支,同时建立端点间 的一个新连接,记录网络增加的花费(网络增加的花费是指新增边的花费和被截断边花费 的差值);优选的,在切断节点分支时,临时性的将分支节点队列中的该节点分支数减1,将 新连接的端点的分支数加1 ;(5)以增加花费最小为准则,对有分支节点逐一去掉其它分支,直到保留花费最小 的单向连接。增加的花费是新增边和去除边的花费差,去分支时一个有分支的节点最少有3 个分支可以选择,如图5中的N0.4节点,新增的连接也有很多选择,而去掉不同分支时,端 点的情况也不一样,也就是新增连接的候选也不一样,所以需要一个准则来决定去掉哪个 新增哪个,这个准则就是新增的花费减去去掉的花费最小。要把新增连接的花费和去除分4支的花费当做一个整体看,就是整个网络的新增花费;(6)更新连通矩阵;优选的,将新增加的连通的端点设为1,断开的分支位置设为0 ;(7)更新分支节点队列;优选的,从节点队列中去掉没有分支的节点;(8)更新端点队列。优选的,从端点队列中去掉新建立连接后的两个端点;优选的,所述步骤(4)中建立端点间新连接的操作中需要检查新建立的连接是否 会使节点的拓扑结构中出现环,如果使环结构出现则不能建立该连接。优选的,检查环结构出现的具体步骤为(9)以端点队列中的一个端点为起始点,通过连通矩阵检查与该端点连接的其他 端点,所有相连的端点都以该端点序号作为标记;(10)再检查与已标记节点相连接的节点,以同样的值标记未标记的节点;(11)重复上一步骤,直到相连接的所有节点都被标记;(12)检查网络中的所有节点,如果所有节点都被标记,则表示所有节点间是连通 的,没有环结构,否则,代表网络中出现环结构,网络已不是全连通的。优选的,所述步骤D的具体步骤为重复步骤(4)至步骤(8),直到分支节点队列为空,端点队列中只有2个端点。优选的,端点队列的2个端点一个为起点,一个为终点,从起点出发通过连通矩阵 可以得到节点遍历路径。优选的,在得到优化好的路径后,还可以按横向或纵向优先的方式即S路径方式, 或者螺旋路径方式,得到另一遍历路径作为备份路径。优选的,在得到优化好的路径后,通过和备份路径比较花费,选取花费最小的路径 作为优化后的遍历路径。附图说明图1是全节点遍历路径优化简要流程图;图2是一种可能的检测点分布示意图;图3是全节点遍历路径优化方法流程图;图4是节点去分支过程的流程图;图5本文档来自技高网
...

【技术保护点】
一种全节点遍历路径优化方法,其特征在于,所述方法包括以下步骤:步骤A、根据需要解决的问题构建节点网络,在可能出现分支的地方建立节点,以从一个节点到另一个节点的花费作为该有向边的值;步骤B、构建节点网络的最小生成树;步骤C、根据最小生成树,以新增花费最小为原则,对所有有分支的节点,逐一去除分支并建立端点间的连接;步骤D、不断重复步骤C直到网络的最小生成树每个节点都没有分支,转化为节点单向队列,从而生成优化后的遍历路径。

【技术特征摘要】
1.一种全节点遍历路径优化方法,其特征在于,所述方法包括以下步骤步骤A、根据需要解决的问题构建节点网络,在可能出现分支的地方建立节点,以从一 个节点到另一个节点的花费作为该有向边的值;步骤B、构建节点网络的最小生成树;步骤C、根据最小生成树,以新增花费最小为原则,对所有有分支的节点,逐一去除分支 并建立端点间的连接;步骤D、不断重复步骤C直到网络的最小生成树每个节点都没有分支,转化为节点单向 队列,从而生成优化后的遍历路径。2.根据权利要求1所述的方法,其特征在于,所述步骤B中的节点网络为双向或者全向 网络,两个节点间的边代表从一个节点到另一个节点间的花费。3.根据权利要求1所述的方法,其特征在于,所述步骤B优选但不限于使用Prim算法 构建网络的最小生成树。4.根据权利要求1所述的方法,所述步骤C优选进一步包括以下具体步骤(1)根据构建的最小生成树建立节点间的连通矩阵;(2)根据构建的最小生成树建立有分支的节点队列(3)根据构建的最小生成树建立端点节点的队列;(4)对分支节点队列的每一个节点,试探性切断该分支节点的一个分支,同时从端点 ...

【专利技术属性】
技术研发人员:李鹏杰郑众喜
申请(专利权)人:北京优纳科技有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1