CN111360463A - 基于混合离散教与学优化算法的焊接路径规划方法和系统 - Google Patents
基于混合离散教与学优化算法的焊接路径规划方法和系统 Download PDFInfo
- Publication number
- CN111360463A CN111360463A CN202010204684.2A CN202010204684A CN111360463A CN 111360463 A CN111360463 A CN 111360463A CN 202010204684 A CN202010204684 A CN 202010204684A CN 111360463 A CN111360463 A CN 111360463A
- Authority
- CN
- China
- Prior art keywords
- sequence route
- sequence
- route
- teacher
- student
- 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
Links
- 238000003466 welding Methods 0.000 title claims abstract description 235
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 65
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000005457 optimization Methods 0.000 title claims abstract description 28
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000000137 annealing Methods 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 22
- 229910000679 solder Inorganic materials 0.000 claims description 10
- 101150050759 outI gene Proteins 0.000 claims description 3
- 230000002068 genetic effect Effects 0.000 abstract description 4
- 238000002922 simulated annealing Methods 0.000 abstract description 3
- 238000012549 training Methods 0.000 abstract description 3
- 230000008901 benefit Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 5
- 230000002028 premature Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000001295 genetical effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
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
- B23K37/00—Auxiliary devices or processes, not specially adapted to a procedure covered by only one of the preceding main groups
- B23K37/02—Carriages for supporting the welding or cutting element
- B23K37/0252—Steering means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- 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)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- Mechanical Engineering (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Manufacturing & Machinery (AREA)
- Optics & Photonics (AREA)
- Robotics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Primary Health Care (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Numerical Control (AREA)
Abstract
本发明公开了一种基于混合教与学算法的焊接路径规划方法,以提高机器人的焊接效率。所述方法首先对教与学算法进行改进,采用遗传算法离散化的方法将传统的教与学算法离散化,然后将原有的两个阶段的教学过程扩展优化为教师培训、教师教学、学生学习、学生自学、教师反向学习五个阶段。其次,将离散后的教与学优化算法和多种智能优化算法混合,结合教与学优化算法算子的集中性、模拟退火算法算子的多样性,从而增强了混合教与学算法的解的多样性,有效平衡了算法的局部搜索和全局搜索能力,提高了算法收敛速率,使得算法更快搜索到最佳路径。
Description
技术领域
本发明属于焊机机器人控制技术领域,更具体地,尤其是一种基于混合离散教与学优化算法的焊接路径规划方法和系统。
背景技术
焊接机器人被广泛应用于自动化制造领域中,而合理的焊接路径规划有助于焊接效率的大幅度提升。因此,焊接机器人的焊接路径规划成为制造领域一类重要的优化问题,寻求高效的求解该问题的方法具有很高的应用价值。
现有的针对焊接机器人的焊接路径规划方法,主要是基于粒子群优化(ParticleSwarm Optimization,简称PSO)的焊接路径规划方法和基于遗传算法(即GeneticAlgorithm)的焊接路径规划方法。其中前者是采用神经网络训练碰撞罚函数,得到无碰撞路径,然后采用粒子群优化算法解决路径的最优问题,而后者是根据已有的高程数据得到三维地形,在此基础上用遗传算法规划路径,且设计了目标函数和插入算子。
然而,上述现有的焊接路径规划方法存在一些不可忽略的缺陷:第一,由于它们在迭代过程中种群多样性降低,导致算法容易“早熟”,并陷入局部最优;第二,由于它们的搜索能力不够,导致算法有效性较差,解的精度较低。第三,由于它们的搜索速度不快,导致算法收敛较慢,效率不高。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于混合教与学算法的焊接路径规划方法,其目的在于,解决现有焊接路径规划方法由于种群多样性降低导致其容易“早熟”、并陷入局部最优的技术问题,以及现有焊接路径规划方法由于搜索能力有限导致有效性较差、解的精度较低的技术问题,以及现有焊接路径规划方法由于搜索速度不快导致其收敛较慢、效率不高的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于混合离散教与学优化算法的焊接路径规划方法,包括以下步骤:
(1)获取多个焊点p1,p2,...,pN及其坐标,先后对获得的所有焊点进行M次随机化处理,以得到M个不同的焊点序列,并设置计数器i=1,其中N表示获取的焊点总数;
(2)判断计数器i是否大于迭代总数,如果是则转入步骤(16),否则转入步骤(3);
(4)从当前的M个焊点序列中选择焊接路径长度最短的一个焊接序列作为教师序列Route_t,剩余的所有焊接序列都是作为学生序列Route_s,从教师序列Route_t中随机选择两个焊点并交换其在该教师序列中的位置,以获得更新后的教师序列Route_t′,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t′对应的焊接路径长度,如果是则将更新后的教师序列Route_t′赋值为教师序列Route_t,然后进入步骤(5),否则直接进入步骤(5);
(5)从教师序列Route_t中随机获取一个焊点,将该焊点插入该教师序列Route_t中随机选取、且不同于该焊点原来位置的一个位置,以获得另一个更新后的教师序列Route_t″,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t″对应的焊接路径长度,如果是则将更新后的教师序列Route_t″赋值为教师序列Routet,然后进入步骤(6),否则直接进入步骤(6);
(6)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号n1和n2,根据序号n1和n2对教师序列Route_t进行处理,以得到教师序列Route_t;
(7)判断学生序列Route_s与步骤(6)得到的新的学生序列Route_s′之间的差值ΔC是否大于0,如果是则将新的学生序列Route_s′赋值为学生序列Route_s,并进入步骤(9),否则进入步骤(8)。
(9)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号m1和m2,从当前的M个焊点序列中随机选择一个不同于学生序列Route_s以及教师序列Route_t的序列Route_rs,根据m1和m2对序列Route_rs进行处理,以得到新的学生序列Route_s″;
(10)判断学生序列Route_s与步骤(9)得到的新的学生序列Route_s″之间的差值ΔC′是否大于0,如果是则将新的学生序列Route_s″赋值为学生序列Route_s,并进入步骤(12),否则进入步骤(11);
(12)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机获取两个序号,并利用2-opt算子对这两个序号之间的所有焊点进行处理,从而得到新的学生序列Route_s″′,
(13)判断学生序列Route_s与步骤(12)得到的新的学生序列Route_s″′之间的差值ΔC″是否大于0,如果是则将新的学生序列Route_s″′赋值为学生序列Route_s,并进入步骤(15),否则进入步骤(14);
(15)从所有学生序列中选择一个对应的焊接路径最长的学生序列Route_bs,从教师序列Route_t中随机选择两个序号q1和q2,根据序号q1和q2对教师序列Route_t进行处理,以得到新的教师序列Route_t′,并判断新的教师序列Route_t′对应的焊接路径长度是否小于教师序列Route_t对应的焊接路径长度,如果是,则将新的教师序列Route_t′赋值为教师序列Route_t,然后设置计数器i=i+1,并返回步骤(2),否则设置计数器i=i+1,并返回步骤(2);
(16)根据得到的教师序列Route_t中的所有焊点确定焊接顺序。
优选地,步骤(6)中根据序号n1和n2对教师序列Route_t进行处理,以得到教师序列Route_t这一过程具体为,保留序号n1和n2之间的序列Route_st,从教师序列Route_t中删除序列Route_st中的所有焊点,以得到教师序列Route_tt,从教师序列Route_tt中顺序取出与教师序列Route_t中位于序列Route_st前面的焊点数量相同的焊点,并将取出的焊点替换教师序列Route_t中位于序列Route_st前面的焊点,再将教师序列Route_tt中剩余的焊点全部替换教师序列Route_t中位于序列Route_st后面的焊点,从而得到新的学生序列Route_s′。
优选地,步骤(9)中根据m1和m2对序列Route_rs进行处理,以得到新的学生序列Route_s″这一过程具体为,保留序号m1和m2之间的序列Route_st,从序列Route_rs中删除序列Route_st中的所有焊点,以得到序列Route_rst,从序列Route_rst中顺序取出与教师序列Route_rs中位于序列Route_st前面的焊点数量相同的焊点,并将取出的焊点替换序列Route_rs中位于序列Route_st前面的焊点,再将序列Route_rst中剩余的焊点全部替换序列Route_rs中位于序列Route_st后面的焊点,从而得到新的学生序列Route_s″。
优选地,步骤(15)中根据序号q1和q2对教师序列Route_t进行处理,以得到新的教师序列Route_t′这一过程具体为,保留序号q1和q2之间的序列Route_tt,从学生序列Route_bs中删除序列Route_tt中的所有焊点,以得到学生序列Route_bst,从学生序列Route_bst中顺序取出与教师序列Route_t中位于序列Route_tt前面的焊点数量相同的焊点,并将取出的焊点替换教师序列Route_t中位于序列Route_tt前面的焊点,再将序列Route_bst中剩余的焊点全部替换教师序列Route_t中位于序列Route_tt后面的焊点,从而得到新的教师序列Route_t′。
按照本发明的另一方面,提供了一种基于混合离散教与学优化算法的焊接路径规划系统,包括:
第一模块,用于获取多个焊点p1,p2,...,pN及其坐标,先后对获得的所有焊点进行M次随机化处理,以得到M个不同的焊点序列,并设置计数器i=1,其中N表示获取的焊点总数;
第二模块,用于判断计数器i是否大于迭代总数,如果是则转入第十六模块,否则转入第三模块;
第四模块,用于从当前的M个焊点序列中选择焊接路径长度最短的一个焊接序列作为教师序列Route_t,剩余的所有焊接序列都是作为学生序列Route_s,从教师序列Route_t中随机选择两个焊点并交换其在该教师序列中的位置,以获得更新后的教师序列Route_t′,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t′对应的焊接路径长度,如果是则将更新后的教师序列Route_t′赋值为教师序列Route_t,然后进入第五模块,否则直接进入第五模块;
第五模块,用于从教师序列Route_t中随机获取一个焊点,将该焊点插入该教师序列Route_t中随机选取、且不同于该焊点原来位置的一个位置,以获得另一个更新后的教师序列Route_t″,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t″对应的焊接路径长度,如果是则将更新后的教师序列Route_t″赋值为教师序列Routet,然后进入第六模块,否则直接进入第六模块;
第六模块,用于对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号n1和n2,根据序号n1和n2对教师序列Route_t进行处理,以得到教师序列Route_t;
第七模块,用于判断学生序列Route_s与第六模块得到的新的学生序列Route_s′之间的差值ΔC是否大于0,如果是则将新的学生序列Route_s′赋值为学生序列Route_s,并进入第九模块,否则进入步骤第八模块;
第九模块,用于对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号m1和m2,从当前的M个焊点序列中随机选择一个不同于学生序列Route_s以及教师序列Route_t的序列Route_rs,根据m1和m2对序列Route_rs进行处理,以得到新的学生序列Route_s″;
第十模块,用于判断学生序列Route_s与第九模块得到的新的学生序列Route_s″之间的差值ΔC′是否大于0,如果是则将新的学生序列Route_s″赋值为学生序列Route_s,并进入第十二模块,否则进入第十一模块;
第十二模块,用于对于每一个学生序列Route_s而言,从该学生序列Route_s中随机获取两个序号,并利用2-opt算子对这两个序号之间的所有焊点进行处理,从而得到新的学生序列Route_s″′,
第十三模块,用于判断学生序列Route_s与第十二模块得到的新的学生序列Route_s″′之间的差值ΔC″是否大于0,如果是则将新的学生序列Route_s″′赋值为学生序列Route_s,并进入第十五模块,否则进入第十四模块;
第十五模块,用于从所有学生序列中选择一个对应的焊接路径最长的学生序列Route_bs,从教师序列Route_t中随机选择两个序号q1和q2,根据序号q1和q2对教师序列Route_t进行处理,以得到新的教师序列Route_t′,并判断新的教师序列Route_t′对应的焊接路径长度是否小于教师序列Route_t对应的焊接路径长度,如果是,则将新的教师序列Route_t′赋值为教师序列Route_t,然后设置计数器i=i+1,并返回第二模块,否则设置计数器i=i+1,并返回第二模块;
第十六模块,用于根据得到的教师序列Route_t中的所有焊点确定焊接顺序。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)由于本发明采用了步骤(3)、步骤(7)-(8)、步骤(10)-(11)和步骤(13)-(15),既使得算法在执行初期可以在较大范围内搜索,又使得算法在寻优过程中以一定概率接受较差解,从而增强了种群的多样性,提高了算法全局搜索能力;因此,能够解决现有焊接路径规划方法中存在的算法过快“早熟”的问题。
(2)由于本发明采用了步骤(4)-(6)及步骤(9),通过选取最好的解作为教师,并对教师优化培训,之后所有其它解向教师学习,且任意两个解之间也可相互学习,从而使得种群向最优解趋近,有效平衡了算法的局部寻优和全局勘探能力;因此,能够解决现有焊接路径规划方法中存在的搜索能力不足的问题。
(3)由于本发明采用了步骤(12),通过对每一个学生采用2-opt算子快速搜索其领域进行勘探寻优;因此,能够解决现有焊接路径规划方法中存在的收敛速度较慢的问题。
(4)本发明的方法实现简单,效率高。
(5)本发明方法的应用领域较广。
附图说明
图1是本发明方法的步骤(1)得到的多个焊点坐标示意图;
图2是本发明方法得到的收敛曲线示意图;
图3是本发明方法最终得到的最优焊接路径示意图;
图4是本发明基于混合离散教与学优化算法的焊接路径规划方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的基本思路在于,提供一种基于混合教与学算法的焊接路径规划方法,以提高机器人的焊接效率。所述方法首先对教与学算法进行改进,采用遗传算法离散化的方法将传统的教与学算法离散化,然后将原有的两个阶段的教学过程扩展优化为教师培训、教师教学、学生学习、学生自学、教师反向学习五个阶段。其次,将离散后的教与学优化算法和多种智能优化算法混合,结合教与学优化算法算子的集中性、模拟退火算法算子的多样性,从而增强了混合教与学算法的解的多样性,有效平衡了算法的局部搜索和全局搜索能力,提高了算法收敛速率,使得算法更快搜索到最佳路径。
如图4所示,本发明提供了一种基于混合离散教与学优化算法的焊接路径规划方法,包括以下步骤:
(1)获取多个焊点p1,p2,...,pN及其坐标(如图1所示),先后对获得的所有焊点进行M次随机化处理,以得到M个不同的焊点序列,并设置计数器i=1,其中N表示获取的焊点总数;
具体而言,本步骤中的焊点,是可以从例如印刷电路板(Printed circuit board,简称PCB)获取,该焊点的坐标,既可以是二维坐标,也可以是三维坐标;
在本实施方式中,随机化处理的次数M的取值范围是100到1000之间,优选为200。
例如,第一次随机化处理后的焊点序列是{p1,p3,p5,...,pN},次二次随机化处理后的焊点序列是{p2,pN,p1,...p6},依此类推...。
(2)判断计数器i是否大于迭代总数,如果是则转入步骤(16),否则转入步骤(3);
具体而言,迭代次数取值是N的10倍以上,迭代次数的取值越大,则得到的结果越精确,但计算量大。
退火温度的初始值(即i=1时)等于步骤(1)中得到的M个不同的焊点序列所对应的M条焊接路径中最长路径与最短路径的差。
步骤(3)的优点在于,混合模拟退火思想,引入自适应温度算子,在算法搜索初期温度较高,搜索范围较大,而当搜索接近最优解附近,温度变低,搜索范围随之缩小,在提高解的多样性的同时,还有效平衡了算法的全局勘探和局部搜索能力。
(4)从当前的M个焊点序列中选择焊接路径长度最短的一个焊接序列作为教师序列Route_t,剩余的所有焊接序列都是作为学生序列Route_s,从教师序列Route_t中随机选择两个焊点并交换其在该教师序列中的位置,以获得更新后的教师序列Route_t′,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t′对应的焊接路径长度,如果是则将更新后的教师序列Route_t′赋值为教师序列Route_t,然后进入步骤(5),否则直接进入步骤(5);
例如,针对上述示例而言,如果发现{p1,p3,p5,...,pN}这个焊点序列,从p1->p3->p5->...->pN构成的焊接路径的长度是最短的,那就把这个{p1,p3,p5,...,pN}焊点序列作为教师序列Route_t,然后随机选择教师序列中p3和p5的顺序进行交换,从而得到{p1,p5,p3,...,pN}作为更新后的教师序列Route_t′。
(5)从教师序列Route_t中随机获取一个焊点,将该焊点插入该教师序列Route_t中随机选取、且不同于该焊点原来位置的一个位置,以获得另一个更新后的教师序列Route_t″,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t″对应的焊接路径长度,如果是则将更新后的教师序列Route_t″赋值为教师序列Routet,然后进入步骤(6),否则直接进入步骤(6);
例如,针对上述示例而言,从{p1,p3,p5,...,pN}这个教师序列中取焊点p3和位置N,则更新后的教师序列Route_t″为{p1,p5,...,pN,p3};
(6)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号n1和n2(其中n1<n2,且分别为对应的两个焊点在该学生序列Route_s中的序号),保留序号n1和n2之间的序列Route_st,从教师序列Route_t中删除序列Route_st中的所有焊点,以得到教师序列Route_tt,从教师序列Route_tt中顺序取出与教师序列Route_t中位于序列Route_st前面的焊点数量相同的焊点,并将取出的焊点替换教师序列Route_t中位于序列Route_st前面的焊点,再将教师序列Route_tt中剩余的焊点全部替换教师序列Route_t中位于序列Route_st后面的焊点,从而得到新的学生序列Route_s′;
举例而言,针对上述示例而言,假如学生序列Route_s为{p2,p5,p1,...,pN},教师序列为{p1,p3,p5,...,pN},首先从该学生序列中取出的焊点是p5和p1,然后从教师序列中删除p5和p1,从而得到教师序列Route_tt={p3,...,pN},然后从{p3,...,pN}中取出1个焊点p3替换学生序列Route_s中的p2,随后将Route_tt={p3,...,pN}中p3之后的所有焊点替换Route_s={p3,p5,p1,...,pN}中p5后的所有焊点。
步骤(4)至步骤(6)的优点在于,通过选择当前最优解作为教师,同时通过交换和插入提高教师序列的质量,并通过学习使得其它解向最优解靠近,从而增强了算法的寻优能力,提高其搜索精度。
(7)判断学生序列Route_s与步骤(6)得到的新的学生序列Route_s′之间的差值ΔC是否大于0,如果是则将新的学生序列Route_s′赋值为学生序列Route_s,并进入步骤(9),否则进入步骤(8);
具体而言,min{}表示取括号内二者中的最小值操作。
步骤(7)至步骤(8)的优点在于,通过以一定概率接受差解,从而增加解的多样性,帮助算法有效避免陷入局部最优,克服“早熟”问题。
(9)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号m1和m2(其中m1<m2,且分别为对应的两个焊点在该学生序列Route_s中的序号),从当前的M个焊点序列中随机选择一个不同于学生序列Route_s以及教师序列Route_t的序列Route_rs,保留序号m1和m2之间的序列Route_st,从序列Route_rs中删除序列Route_st中的所有焊点,以得到序列Route_rst,从序列Route_rst中顺序取出与教师序列Route_rs中位于序列Route_st前面的焊点数量相同的焊点,并将取出的焊点替换序列Route_rs中位于序列Route_st前面的焊点,再将序列Route_rst中剩余的焊点全部替换序列Route_rs中位于序列Route_st后面的焊点,从而得到新的学生序列Route_s″;
(10)判断学生序列Route_s与步骤(9)得到的新的学生序列Route_s″之间的差值ΔC′是否大于0,如果是则将新的学生序列Route_s″赋值为学生序列Route_s,并进入步骤(12),否则进入步骤(11);
步骤(9)至步骤(11)的优点在于,通过学生序列间相互学习,使得学生序列路径长度逐渐变短,提高了全体序列的质量,保证了解的集中性,增强了算法的局部搜索能力,同时又以一定概率接受了较差的学生序列,增强了解的多样性,有效平衡了算法的全局寻优能力。
(12)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机获取两个序号,并利用2-opt算子对这两个序号之间的所有焊点进行处理,从而得到新的学生序列Route_s″′,
举例而言,如果当前的学生序列Route_s是{p2,p5,p1,p6,p9...,pN},选择的两个序号是2和5,即选中了p5和p9,则经过本步骤处理后得到的新的学生序列Route_s″′是{p2,p9,p6,p1,p5...,pN}。
(13)判断学生序列Route_s与步骤(12)得到的新的学生序列Route_s″′之间的差值ΔC″是否大于0,如果是则将新的学生序列Route_s″′赋值为学生序列Route_s,并进入步骤(15),否则进入步骤(14);
步骤(12)至步骤(14)的优点在于,通过对每个学生序列利用2-opt算子进行自我学习,增加算法局部搜索能力,加快收敛速率。并通过在自学阶段以一定概率接受较差的结果,从而增加解的多样性,提高算法有效性。
(15)从所有学生序列中选择一个对应的焊接路径最长的学生序列Route_bs,从教师序列Route_t中随机选择两个序号q1和q2(其中q1<q2,且分别为对应的两个焊点在该学生序列Route_s中的序号),保留序号q1和q2之间的序列Route_tt,从学生序列Route_bs中删除序列Route_tt中的所有焊点,以得到学生序列Route_bst,从学生序列Route_bst中顺序取出与教师序列Route_t中位于序列Route_tt前面的焊点数量相同的焊点,并将取出的焊点替换教师序列Route_t中位于序列Route_tt前面的焊点,再将序列Route_bst中剩余的焊点全部替换教师序列Route_t中位于序列Route_tt后面的焊点,从而得到新的教师序列Route_t′,并判断新的教师序列Route_t′对应的焊接路径长度是否小于教师序列Route_t对应的焊接路径长度,如果是,则将新的教师序列Route_t′赋值为教师序列Route_t,然后设置计数器i=i+1,并返回步骤(2),否则设置计数器i=i+1,并返回步骤(2);
步骤(15)的优点在于,通过路径最短的教师序列向路径最长的学生序列反向学习,从而增加全体序列的多样性,有效避免算法陷入“早熟”。
(16)根据得到的教师序列Route_t中的所有焊点确定焊接顺序;
如图3所示,其示出了本步骤结束后,通过确定的焊接顺序最终形成的焊接路径。
模拟测试结果
以下描述本发明的测试环境和测试结果:
测试环境是MATLAB2018b,在操作系统为Windows10、处理器的主频为2.50GHz的Intel(R)Core(TM)i5_7200U处理器4GB内存的电脑上进行仿真测试。
图2给出了仿真环境下获得的混合离散教与学优化算法收敛曲线图,横坐标代表了迭代次数,纵坐标表示每次迭代获得的路径长度,从图2中可以看出,曲线的斜率较大,表明算法的收敛速度较快。平均解和最优解在迭代过程中相差不大表明了算法具有较好的稳定性。算法在迭代200次左右时就取得了最优解。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于混合离散教与学优化算法的焊接路径规划方法,其特征在于,包括以下步骤:
(1)获取多个焊点p1,p2,...,pN及其坐标,先后对获得的所有焊点进行M次随机化处理,以得到M个不同的焊点序列,并设置计数器i=1,其中N表示获取的焊点总数;
(2)判断计数器i是否大于迭代总数,如果是则转入步骤(16),否则转入步骤(3);
(4)从当前的M个焊点序列中选择焊接路径长度最短的一个焊接序列作为教师序列Route_t,剩余的所有焊接序列都是作为学生序列Route_s,从教师序列Route_t中随机选择两个焊点并交换其在该教师序列中的位置,以获得更新后的教师序列Route_t′,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t′对应的焊接路径长度,如果是则将更新后的教师序列Route_t′赋值为教师序列Route_t,然后进入步骤(5),否则直接进入步骤(5);
(5)从教师序列Route_t中随机获取一个焊点,将该焊点插入该教师序列Route_t中随机选取、且不同于该焊点原来位置的一个位置,以获得另一个更新后的教师序列Route_t″,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t″对应的焊接路径长度,如果是则将更新后的教师序列Route_t″赋值为教师序列Routet,然后进入步骤(6),否则直接进入步骤(6);
(6)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号n1和n2,根据序号n1和n2对教师序列Route_t进行处理,以得到教师序列Route_t;
(7)判断学生序列Route_s与步骤(6)得到的新的学生序列Route_s′之间的差值ΔC是否大于0,如果是则将新的学生序列Route_s′赋值为学生序列Route_s,并进入步骤(9),否则进入步骤(8)。
(9)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号m1和m2,从当前的M个焊点序列中随机选择一个不同于学生序列Route_s以及教师序列Route_t的序列Route_rs,根据m1和m2对序列Route_rs进行处理,以得到新的学生序列Route_s″;
(10)判断学生序列Route_s与步骤(9)得到的新的学生序列Route_s″之间的差值ΔC′是否大于0,如果是则将新的学生序列Route_s″赋值为学生序列Route_s,并进入步骤(12),否则进入步骤(11);
(12)对于每一个学生序列Route_s而言,从该学生序列Route_s中随机获取两个序号,并利用2-opt算子对这两个序号之间的所有焊点进行处理,从而得到新的学生序列Route_s″′,
(13)判断学生序列Route_s与步骤(12)得到的新的学生序列Route_s″′之间的差值ΔC″是否大于0,如果是则将新的学生序列Route_s″′赋值为学生序列Route_s,并进入步骤(15),否则进入步骤(14);
(15)从所有学生序列中选择一个对应的焊接路径最长的学生序列Route_bs,从教师序列Route_t中随机选择两个序号q1和q2,根据序号q1和q2对教师序列Route_t进行处理,以得到新的教师序列Route_t′,并判断新的教师序列Route_t′对应的焊接路径长度是否小于教师序列Route_t对应的焊接路径长度,如果是,则将新的教师序列Route_t′赋值为教师序列Route_t,然后设置计数器i=i+1,并返回步骤(2),否则设置计数器i=i+1,并返回步骤(2);
(16)根据得到的教师序列Route_t中的所有焊点确定焊接顺序。
3.根据权利要求1或2所述的基于混合离散教与学优化算法的焊接路径规划方法,其特征在于,步骤(6)中根据序号n1和n2对教师序列Route_t进行处理,以得到教师序列Route_t这一过程具体为,保留序号n1和n2之间的序列Route_st,从教师序列Route_t中删除序列Route_st中的所有焊点,以得到教师序列Route_tt,从教师序列Route_tt中顺序取出与教师序列Route_t中位于序列Route_st前面的焊点数量相同的焊点,并将取出的焊点替换教师序列Route_t中位于序列Route_st前面的焊点,再将教师序列Route_tt中剩余的焊点全部替换教师序列Route_t中位于序列Route_st后面的焊点,从而得到新的学生序列Route_s′。
4.根据权利要求1至3中任意一项所述的基于混合离散教与学优化算法的焊接路径规划方法,其特征在于,步骤(9)中根据m1和m2对序列Route_rs进行处理,以得到新的学生序列Route_s″这一过程具体为,保留序号m1和m2之间的序列Route_st,从序列Route_rs中删除序列Route_st中的所有焊点,以得到序列Route_rst,从序列Route_rst中顺序取出与教师序列Route_rs中位于序列Route_st前面的焊点数量相同的焊点,并将取出的焊点替换序列Route_rs中位于序列Route_st前面的焊点,再将序列Route_rst中剩余的焊点全部替换序列Route_rs中位于序列Route_st后面的焊点,从而得到新的学生序列Route_s″。
5.根据权利要求1至4中任意一项所述的基于混合离散教与学优化算法的焊接路径规划方法,其特征在于,步骤(15)中根据序号q1和q2对教师序列Route_t进行处理,以得到新的教师序列Route_t′这一过程具体为,保留序号q1和q2之间的序列Route_tt,从学生序列Route_bs中删除序列Route_tt中的所有焊点,以得到学生序列Route_bst,从学生序列Route_bst中顺序取出与教师序列Route_t中位于序列Route_tt前面的焊点数量相同的焊点,并将取出的焊点替换教师序列Route_t中位于序列Route_tt前面的焊点,再将序列Route_bst中剩余的焊点全部替换教师序列Route_t中位于序列Route_tt后面的焊点,从而得到新的教师序列Route_t′。
6.一种基于混合离散教与学优化算法的焊接路径规划系统,其特征在于,包括:
第一模块,用于获取多个焊点p1,p2,...,pN及其坐标,先后对获得的所有焊点进行M次随机化处理,以得到M个不同的焊点序列,并设置计数器i=1,其中N表示获取的焊点总数;
第二模块,用于判断计数器i是否大于迭代总数,如果是则转入第十六模块,否则转入第三模块;
第四模块,用于从当前的M个焊点序列中选择焊接路径长度最短的一个焊接序列作为教师序列Route_t,剩余的所有焊接序列都是作为学生序列Route_s,从教师序列Route_t中随机选择两个焊点并交换其在该教师序列中的位置,以获得更新后的教师序列Route_t′,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t′对应的焊接路径长度,如果是则将更新后的教师序列Route_t′赋值为教师序列Route_t,然后进入第五模块,否则直接进入第五模块;
第五模块,用于从教师序列Route_t中随机获取一个焊点,将该焊点插入该教师序列Route_t中随机选取、且不同于该焊点原来位置的一个位置,以获得另一个更新后的教师序列Route_t″,并判断教师序列Route_t对应的焊接路径长度是否大于更新后的教师序列Route_t″对应的焊接路径长度,如果是则将更新后的教师序列Route_t″赋值为教师序列Routet,然后进入第六模块,否则直接进入第六模块;
第六模块,用于对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号n1和n2,根据序号n1和n2对教师序列Route_t进行处理,以得到教师序列Route_t;
第七模块,用于判断学生序列Route_s与第六模块得到的新的学生序列Route_s′之间的差值ΔC是否大于0,如果是则将新的学生序列Route_s′赋值为学生序列Route_s,并进入第九模块,否则进入步骤第八模块;
第九模块,用于对于每一个学生序列Route_s而言,从该学生序列Route_s中随机选择两个序号m1和m2,从当前的M个焊点序列中随机选择一个不同于学生序列Route_s以及教师序列Route_t的序列Route_rs,根据m1和m2对序列Route_rs进行处理,以得到新的学生序列Route_s″;
第十模块,用于判断学生序列Route_s与第九模块得到的新的学生序列Route_s″之间的差值ΔC′是否大于0,如果是则将新的学生序列Route_s″赋值为学生序列Route_s,并进入第十二模块,否则进入第十一模块;
第十二模块,用于对于每一个学生序列Route_s而言,从该学生序列Route_s中随机获取两个序号,并利用2-opt算子对这两个序号之间的所有焊点进行处理,从而得到新的学生序列Route_s″′,
第十三模块,用于判断学生序列Route_s与第十二模块得到的新的学生序列Route_s″′之间的差值ΔC″是否大于0,如果是则将新的学生序列Route_s″′赋值为学生序列Route_s,并进入第十五模块,否则进入第十四模块;
第十五模块,用于从所有学生序列中选择一个对应的焊接路径最长的学生序列Route_bs,从教师序列Route_t中随机选择两个序号q1和q2,根据序号q1和q2对教师序列Route_t进行处理,以得到新的教师序列Route_t′,并判断新的教师序列Route_t′对应的焊接路径长度是否小于教师序列Route_t对应的焊接路径长度,如果是,则将新的教师序列Route_t′赋值为教师序列Route_t,然后设置计数器i=i+1,并返回第二模块,否则设置计数器i=i+1,并返回第二模块;
第十六模块,用于根据得到的教师序列Route_t中的所有焊点确定焊接顺序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010204684.2A CN111360463B (zh) | 2020-03-22 | 2020-03-22 | 基于混合离散教与学优化算法的焊接路径规划方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010204684.2A CN111360463B (zh) | 2020-03-22 | 2020-03-22 | 基于混合离散教与学优化算法的焊接路径规划方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111360463A true CN111360463A (zh) | 2020-07-03 |
CN111360463B CN111360463B (zh) | 2020-10-02 |
Family
ID=71200689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010204684.2A Expired - Fee Related CN111360463B (zh) | 2020-03-22 | 2020-03-22 | 基于混合离散教与学优化算法的焊接路径规划方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111360463B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989745A (zh) * | 2021-02-20 | 2021-06-18 | 南京工程学院 | 一种pcb电子元器件优化布置的热设计方法 |
CN113019594A (zh) * | 2021-03-01 | 2021-06-25 | 广东道氏技术股份有限公司 | 基于多智能体tlbo算法的球磨机制粉优化控制方法 |
CN116900538A (zh) * | 2023-09-14 | 2023-10-20 | 天津大学 | 基于深度强化学习和区域平衡的多机器人任务规划方法 |
CN117891258A (zh) * | 2024-03-12 | 2024-04-16 | 江苏韦尔汀轨道工程技术有限公司 | 一种轨道焊接路径智能规划方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4874963A (en) * | 1988-02-11 | 1989-10-17 | Bell Communications Research, Inc. | Neuromorphic learning networks |
US6302698B1 (en) * | 1999-02-16 | 2001-10-16 | Discourse Technologies, Inc. | Method and apparatus for on-line teaching and learning |
US6912515B2 (en) * | 2001-06-04 | 2005-06-28 | Xerox Corporation | Method and system for algorithm synthesis in problem solving |
CN103675799A (zh) * | 2013-10-24 | 2014-03-26 | 华中科技大学 | 一种相控阵声纳系统换能器稀疏面阵优化方法 |
CN105226638A (zh) * | 2015-09-06 | 2016-01-06 | 清华大学 | 基于改进教与学算法的电力系统可用输电能力计算方法 |
US20190179858A1 (en) * | 2017-12-11 | 2019-06-13 | Facebook, Inc. | Fast Indexing with Graphs and Compact Regression Codes on Online Social Networks |
-
2020
- 2020-03-22 CN CN202010204684.2A patent/CN111360463B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4874963A (en) * | 1988-02-11 | 1989-10-17 | Bell Communications Research, Inc. | Neuromorphic learning networks |
US6302698B1 (en) * | 1999-02-16 | 2001-10-16 | Discourse Technologies, Inc. | Method and apparatus for on-line teaching and learning |
US6912515B2 (en) * | 2001-06-04 | 2005-06-28 | Xerox Corporation | Method and system for algorithm synthesis in problem solving |
CN103675799A (zh) * | 2013-10-24 | 2014-03-26 | 华中科技大学 | 一种相控阵声纳系统换能器稀疏面阵优化方法 |
CN105226638A (zh) * | 2015-09-06 | 2016-01-06 | 清华大学 | 基于改进教与学算法的电力系统可用输电能力计算方法 |
US20190179858A1 (en) * | 2017-12-11 | 2019-06-13 | Facebook, Inc. | Fast Indexing with Graphs and Compact Regression Codes on Online Social Networks |
Non-Patent Citations (3)
Title |
---|
岳振芳,高岳林: "融合模拟退火的改进教与学优化算法", 《河南师范大学学报》 * |
未建英,张丽娜,付发: "混合模拟退火和教与学的鸽群优化算法", 《科技经济导刊》 * |
石庆民: "混合教与学算法求解多行程车辆路径问题", 《数学的实践与认识》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989745A (zh) * | 2021-02-20 | 2021-06-18 | 南京工程学院 | 一种pcb电子元器件优化布置的热设计方法 |
CN113019594A (zh) * | 2021-03-01 | 2021-06-25 | 广东道氏技术股份有限公司 | 基于多智能体tlbo算法的球磨机制粉优化控制方法 |
CN116900538A (zh) * | 2023-09-14 | 2023-10-20 | 天津大学 | 基于深度强化学习和区域平衡的多机器人任务规划方法 |
CN116900538B (zh) * | 2023-09-14 | 2024-01-09 | 天津大学 | 基于深度强化学习和区域平衡的多机器人任务规划方法 |
CN117891258A (zh) * | 2024-03-12 | 2024-04-16 | 江苏韦尔汀轨道工程技术有限公司 | 一种轨道焊接路径智能规划方法 |
CN117891258B (zh) * | 2024-03-12 | 2024-05-28 | 江苏韦尔汀轨道工程技术有限公司 | 一种轨道焊接路径智能规划方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111360463B (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111360463B (zh) | 基于混合离散教与学优化算法的焊接路径规划方法和系统 | |
CN107609298B (zh) | 一种Jiles-Atherton模型参数辨识方法和装置 | |
CN112464611B (zh) | 一种基于云端协同智能处理的pcb自动布线系统 | |
CN107169557A (zh) | 一种对布谷鸟优化算法进行改进的方法 | |
CN112528591A (zh) | 一种基于联合蒙特卡洛树搜索的pcb板自动布线方法 | |
CN113311829B (zh) | 一种基于动态时间窗冲突搜索的多机器人路径规划方法 | |
CN113570112B (zh) | 求解考虑合作的带时间窗的车辆路径问题的优化算法 | |
CN111880559A (zh) | 一种多无人机任务分配和路径规划联合问题的优化方法 | |
CN103838820A (zh) | 基于近邻传播的进化多目标优化社区检测方法 | |
CN115859899B (zh) | 一种多驱动能力的集成电路标准单元版图迁移的方法 | |
CN112613126A (zh) | 一种应用于飞行器外形的壁面距离计算方法及装置 | |
CN117422041A (zh) | 模拟芯片自动化布线模型训练方法及自动化布线方法 | |
CN115617690A (zh) | 基于改进自适应遗传算法的并行测试任务调度方法 | |
CN115719133A (zh) | 一种基于改进多目标灰狼优化算法解决rhfs调度问题 | |
CN108834058B (zh) | 一种基于遗传与烟花组合算法的室内定位信号源优化部署方法 | |
CN113029150B (zh) | 一种多约束条件下的智能飞行器航迹规划方法 | |
CN113552881B (zh) | 一种用于神经网络训练的多路径规划数据集生成方法 | |
CN112666890B (zh) | 一种曲面工件加工轨迹规划方法 | |
Tang et al. | Fundamental matrix estimation by multiobjective genetic algorithm with Taguchi's method | |
CN114564905A (zh) | 一种基于迭代禁忌搜索算法的电路示意图布局布线方法 | |
CN107133639A (zh) | 融合Boost模型的非平衡数据自适应采样方法 | |
JP2008299641A (ja) | 連立一次方程式の並列求解方法およびノード順序付け方法 | |
CN117634414B (zh) | 不同元器件之间的飞线互连方法、电子设备及存储介质 | |
US20240085894A1 (en) | SYSTEM OF INDUSTRIAL INTERNET OF THINGS (IoT) FOR OPERATION MANAGEMENT OF AUTOMATED GUIDED VEHICLE (AGV), METHOD, AND MEDIUM THEREOF | |
CN115134815B (zh) | 无线ap部署优化方法、系统、设备及存储介质 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20201002 |
|
CF01 | Termination of patent right due to non-payment of annual fee |