CN115470880A - 一种基于蚁群算法的机器人清理优化方法 - Google Patents

一种基于蚁群算法的机器人清理优化方法 Download PDF

Info

Publication number
CN115470880A
CN115470880A CN202211136536.7A CN202211136536A CN115470880A CN 115470880 A CN115470880 A CN 115470880A CN 202211136536 A CN202211136536 A CN 202211136536A CN 115470880 A CN115470880 A CN 115470880A
Authority
CN
China
Prior art keywords
workpiece
workpieces
ant
cleaning
colony algorithm
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.)
Pending
Application number
CN202211136536.7A
Other languages
English (en)
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.)
Shenzhen Institute of Advanced Technology of CAS
Original Assignee
Shenzhen Institute of Advanced Technology of CAS
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 Shenzhen Institute of Advanced Technology of CAS filed Critical Shenzhen Institute of Advanced Technology of CAS
Priority to CN202211136536.7A priority Critical patent/CN115470880A/zh
Publication of CN115470880A publication Critical patent/CN115470880A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Abstract

本发明公开了一种基于蚁群算法的机器人清理优化方法。该方法包括:针对目标区域的待摆放工件,确定各工件的位置信息,所述位置信息包括在机械臂坐标系下的坐标点和旋转角度;以设定的损失函数为优化目标,利用蚁群算法获得工件清理的最佳执行顺序,其中将待摆放工件作为蚂蚁走过的位置点,将工件摆放工序作为蚂蚁的行走路径;驱动机械臂基于所获得的最佳执行顺序以及所述位置信息进行工件清理。本发明结合蚁群算法的优化能力,显著提升了机器人清理桌面的效率和智能性。

Description

一种基于蚁群算法的机器人清理优化方法
技术领域
本发明涉及机器人技术领域,更具体地,涉及一种基于蚁群算法的机器人清理优化方法。
背景技术
随着生产力的提高和高新技术的发展,机器人已经走进千家万户,智能化进程使得机器人与人类的栅栏逐渐消失。目前广泛进入人们家庭的机器人有清理地面的扫地机器人,清洁餐具的洗碗机器人,以及启发幼童的教育机器人等。然而,目前广泛应用在清洁领域的机器人只能有效地清理微观上的灰尘和杂质,或者是清理掉落地面或桌面的垃圾。当面对家庭中常用物品的凌乱摆放,现有的应用机器人无法高效快速且有针对性地将其摆放整齐。
清洁和清理是两项在机器人规划上完全不同却也密不可分的任务,清洁垃圾改善了人们的生活环境,清理物品使人们从枯燥繁重的工作环境中解放出来。以桌面清理为例,目前所研究的桌面清理机器人一般利用视觉模块进行目标检测,识别出桌面上常用的物件,然后通过相应的算法判断某些物件的摆放方式,最后通过机器人末端抓取摆放相应物体。但常规的清理机器人在清理物体时没有规划相应的抓取顺序,或者只是固定了一些物体的优先抓取顺序,从而导致了清理效率低下的问题。例如,桌面清洁机器人固定了先将a摆放到A位置,再将b摆放到B位置,如果出现b离A位置更近,而a离B位置更近的情况,如果依据预先配置的机器人摆放顺序则不可避免地降低了摆放效率。
在现有技术中,专利申请CN202110575065.9公开了一种基于深度学习的机器人多物体分拣方法。该方案基于旋转目标检测网络检测任务场景中目标物体的类别、位置及旋转角,然后通过基于先验知识的物体分拣次序推理算法获得物体的分拣次序,最后机器人根据获得的物体分拣次序和位姿,自主完成多物体分拣任务。
专利申请CN202111332133.5提供了一种基于深度学习的分拣机械手多物体分拣方法。该方案通过对任务场景中的不同目标物品的种类、位置以及位姿进行准确分析,确定对不同物品的分拣顺序,提高了对不同物品的分拣有序性,同时根据物品种类的不同调整抓取的方式,提高了对不同物品分拣的安全性,增强了分拣机械手对多物体分拣效率。
专利申请CN202111238334.9公开了一种检测废弃存数据储设备等的识别方法和装置,以及废弃数据存储设备分拣回收的系统。该方法基于YOLO目标检测模型来识别贴于废弃设备的二维码信息,从而获取废弃设备的状态,并控制机械臂抓取分拣到对应的回收区域。
经分析,现有的机器人抓取物件实现清理的技术方案一般按照设定好的顺序将物件安置于指定位置,或者根据各个物件距离放置点的距离进行逐个遍历,抓取离目标位置距离最小的物体到放置点。当需要清理的物件过多时,清理顺序则会成指数性爆炸增长,并且逐个遍历得到最佳顺序容易使机器人死机,这时使用机器人清理就会显得效率低下,耗时耗能,且无法实现智能化的清理。
发明内容
本发明的目的是克服上述现有技术的缺陷,提供一种基于蚁群算法的机器人清理优化方法,该方法包括以下步骤:
针对目标区域的待摆放工件,确定各工件的位置信息,所述位置信息包括在机械臂坐标系下的坐标点和旋转角度;
以设定的损失函数为优化目标,利用蚁群算法获得工件清理的最佳执行顺序,其中将待摆放工件作为蚂蚁走过的位置点,将工件摆放工序作为蚂蚁的行走路径;
驱动机械臂基于所获得的最佳执行顺序以及所述位置信息进行工件清理。
与现有技术相比,本发明的优点在于,所提供的基于蚁群算法的机器人清理优化方法能够依据各个物体摆放的位置自主规划物体摆放顺序,并且利用蚁群算法快速寻优的特点,将物体与放置点的距离和抓取的旋转角度作为寻优的对象,从而快速找到一条将所有物体都摆放在适当放置点的最佳抓取规划顺序。本发明具有更高的智能性和灵活性,能够应对复杂的清理场景,减少了人工操作。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是根据本发明一个实施例的基于蚁群算法的机器人清理优化方法的流程图;
图2是根据本发明一个实施例的机器人系统的示意图;
图3是根据本发明一个实施例的基于蚁群算法的机器人清理桌面优化方法的实现过程示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
参见图1所示,所提供的基于蚁群算法的机器人清理优化方法整体上包括:步骤S100,针对桌面上的待摆放工件,确定各工件的位置信息,所述位置信息包括在机械臂坐标系下的坐标点和旋转角度;步骤S200,以设定的损失函数为优化目标,利用蚁群算法获得工件清理的最佳执行顺序,其中将待摆放工件作为蚂蚁走过的位置点,将工件摆放工序作为蚂蚁的行走路径;步骤S300,驱动机械臂基于所获得的最佳执行顺序以及所述位置信息进行桌面清理。
需说明的是,本发明可以应用于桌面、地面、工作台等多类场景下的工件摆放或清理,所述工件可以是任何能够被机器人抓取的物品,机器人是指能够半自主或全自主工作的智能机器。为清楚起见,下文以桌面清理为例进行说明。
图2是一款桌面快速清理机器人系统,包括摄像头1、摄像头脚架3、机械臂2(设有伺服夹爪)、桌面5和待清理工件4等。待工件清理任务开始后,机械臂2首先移动到初始安全位置;然后,摄像头1拍摄桌面(或称工作台),得到桌面上工件的摆放情况,将拍摄的照片传给计算机;计算机通过图像检测和目标定位算法,得到工件所处的位置和倾斜角度;接下来,利用蚁群算法的迭代计算出各个工件的最佳摆放目标位置以及机械臂最佳摆放顺序;最后,驱动机械臂执行算法得到的运动规划。
在一个实施例中,使用越疆MG400机械臂作为机器人主体,摄像头固定在桌面上方,确保可以拍下整个桌面的实时情况,待清理工件为常用的桌面文具和摆设(如走珠笔、橡皮、削笔刀、手办、剪刀、公仔等),机械臂固定在桌面顶部,确保能清理一定范围内的工件,整套系统能清理40cm×40cm的桌面范围。
图3是基于蚁群算法的机器人清理桌面优化方法的实现过程,具体包括以下步骤。
步骤S101,预先准备。
例如,设置机器人、桌面和摄像头之间的位置关系。
步骤S102,获取常用工件的数据集。
在该步骤S102中,针对所研究场景下的常用工件构建数据集,用于训练工件识别模型。
在一个实施例中,制作数据集的过程包括:当待清理的桌面工件已知时,从不同方向拍摄多张工件散落摆布在桌面的图片作为数据集。然后,将每张图片裁剪成分辨率为“800*800”。最后,用“roLabelImg”软件进行标注。“roLabelImg”是一款旋转目标标注软件,可以获得标注物的位置和旋转角度。标注时保持旋转矩形框方向与工件的倾斜方向一致,框的大小则需要刚好将工件包围起来。在标注生成的xml文件里,表示为(x,y,w,h,θ),其中x、y表示工件的中心坐标,w、h表示宽和高,这四个参数确定了工件的具体位置,θ∈[-90°,0),确定了工件的旋转角度。而训练工件识别模型所用的数据集标注文件格式是“Dota”格式,即将(x,y,w,h,θ)格式转换为直接用框的四个点坐标来表示。
步骤S103,通过R3Det旋转目标检测网络训练。
例如,采用“R3Det旋转目标检测模型”作为工件识别模型或称为工件检测模型。“R3Det旋转目标检测模型”主要基于“RetinaNet”实现,并使用特征插值来获取精炼的位置信息。训练前,首先修改工件的标签信息和数目,修改训练次数(200-500)和学习率(0-1)。最后,将标注好的数据集输入“R3Det旋转目标检测模型”进行训练,即可得到桌面工件检测模型,进而可将模型导入到图片检测模块。
步骤S104,判断模型准确度是否达到90%以上。
判断工件检测模型的识别准确度是否达到设定阈值,例如,90%以上。如判断为“否”,则获取数据集重新进行训练。如判断为“是”,则执行后续步骤。
步骤S105,输入摆放的目标位置点。
例如,针对待摆放工件,输入预先设定的各工件的最终目标位置点。
步骤S106,机械臂到达初始安全位置。
步骤S107,相机拍摄桌面情况。
预先机械臂已经进行了手眼标定过程,首先固定在桌面上方的摄像头(相机)拍摄一张工件摆放图,获得桌面工件坐标位置。
步骤S108,将照片经过R3Det网络检测得出位置和旋转角度。
在该步骤S108中,R3Det网络即是步骤S103训练获得的工件检测模型。
图片经过“R3Det旋转目标检测”模型检测,生成多个预测框。在图片检测模块里筛选出置信度最高的预测框,即可得到各个工件准确的像素坐标和相对于像素坐标系下的旋转角度。然后,经过手眼标定矩阵运算转换为以机械臂基座坐标系下的坐标点和末端旋转角度,至此机械臂就可以夹取任意的工件。
步骤S109,用位置和旋转角度构建出损失函数。
初始确定了各个工件的摆放目标位置在机械臂坐标系下的坐标点和旋转角度,损失函数是以机械臂坐标系下初始工件与目标位置的距离差和旋转角度差的各自加权获得,表示为:
Figure BDA0003852329680000061
其中,di是在机械臂坐标系下任意一个随意摆放的工件i与目标位置点的距离,Ψi是在机械臂坐标系下任意一个随意摆放的工件i与目标位置点的角度差,ω1是距离差的加权系数,经多次实验后取0.8更合适,ω2是角度差的加权系数,取0.2;m是工件的数量。
步骤S110,随机生成不同损失函数值的多条摆放顺序。
步骤S111,利用蚁群算法往损失函数的最小值方向优化。
在该步骤中,经由蚁群算法得到最佳执行顺序。桌面清理可以等同于旅行商问题,蚁群算法是对自然界蚂蚁的寻径方式进行模拟而得出的一种仿生算法,蚂蚁在运动中能够在它所经过的路径上留下信息素的物质,并以此指导自己的运动方向。在桌面清理中,将待摆放的工件拟合为蚂蚁走过的路径点,将工件摆放工序拟合为蚂蚁所走的路径。
在蚁群算法中有两个关键的公式,第一个是转移公式,即蚂蚁在行进过程中选择某个工件作为摆放工序的下一个工件进行移动的概率,设τij(t)为信息素浓度,nij为上个工件位置点到下个工件位置点距离的倒数,a是信息素重要程度因子,b是启发函数重要程度因子。
Figure BDA0003852329680000071
上式(2)中代表蚂蚁k从位置点i到位置点j转移的概率,remain表示蚂蚁k还没走过的工序,很明显信息素浓度τij(t)越大,选择j点作为下一个移动点的概率就越大,而nij作为工件位置距离的倒数,距离越大,选择j点作为下一个移动点的概率就越小。t是迭代次数的索引,a和b可根据应用场景或经验预先设定。
蚁群算法中另一个重要公式是信息素(或称信息素浓度)更新公式,算法迭代一次后会更新一次信息素。信息素的更新分为两部分,第一部分是信息素的挥发,第二部分是蚂蚁走过一轮留下的信息素增量。
Figure BDA0003852329680000072
式(3)中ρ表示信息素的挥发程度,可根据经验或应用场景设置。
Figure BDA0003852329680000073
表示n只蚂蚁从i点走到j点留下的信息素增量。
步骤S112,判断是否收敛。
判断蚁群算法是否收敛,如达到设定的迭代次数或损失值不再增加。
步骤S113,得到最佳执行顺序。
在蚁群算法收敛的情况下,得到最佳的工件摆放的执行顺序。
步骤S114,机械臂按照最佳执行顺序去清理桌面。
步骤S115,清理完回到最初安全位置。
为清楚起见,进一步具体说明蚁群算法的步骤,包括:
首先,初始化蚂蚁种群数量,例如,设置为工件数量的1.5倍来并行搜索路径;
初始化信息素浓度,每只蚂蚁完成一次工序搜索,都在该工序留下适量的信息素,工序越短,信息素浓度越大;
随机生成每只蚂蚁该走的工序,规定每条工序经过的点不可重复;
设定迭代次数,每次迭代完成就更新一次信息素;
将损失函数作为算法的优化目标,根据工件的摆放可行性顺序的约束来随意生成多条可行性工序,不同工序有着不同的损失函数值,经过算法迭代找到最小损失函数的工序即为最佳的执行顺序;
在得到最佳的执行顺序后,启动机械臂,一一将桌面随意摆放的工件放到指定的位置,达到清理的效果。
综上所述,相对于现有技术,本发明具有以下优势:
1)现有技术仅提供了分拣或者清理的可行性规划与步骤,没有考虑分拣或清理时工件的执行顺序,或者通过固定顺序、或遍历和穷举法得到最佳的执行顺序。本发明将关注点聚焦于桌面清理的工件顺序问题上,结合了蚁群算法的优化能力,使机器人清理桌面变得更加快速和智能。
2)将R3Det旋转目标检测网络作为工件检测网络,用于机械臂抓取,将工件位于图像的像素坐标和旋转角度转变为机械臂末端的抓取位置和夹爪的旋转位姿。经验证,这种方式的成功率可达到98%左右。
3)本发明借助蚁群算法快速找到最佳的执行顺序,提升了机器人的智能化水平,增加了顾客的满意度,且应用于桌面清理等场景时,使得清理工作变得更高效和节能环保。
需说明的是,本发明涉及的软件(如“roLabelImg”)和硬件(如机器人)可以是商用产品、自行设计的产品或其他的开源软件,而不限于上述实施例中提到的类型。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++、Python等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种基于蚁群算法的机器人清理优化方法,包括以下步骤:
针对目标区域的待摆放工件,确定各工件的位置信息,所述位置信息包括在机械臂坐标系下的坐标点和旋转角度;
以设定的损失函数为优化目标,利用蚁群算法获得工件清理的最佳执行顺序,其中将待摆放工件作为蚂蚁走过的位置点,将工件摆放工序作为蚂蚁的行走路径;
驱动机械臂基于所获得的最佳执行顺序以及所述位置信息进行工件清理。
2.根据权利要求1所述的方法,其特征在于,所述以设定的损失函数为优化目标,利用蚁群算法获得工件清理的最佳执行顺序包括以下子步骤:
基于待摆放工件的数量初始化蚂蚁种群数量;
初始化信息素浓度,所述信息素浓度是每只蚂蚁完成一次工序搜索所留下的信息素;
随机生成每只蚂蚁行走的工序,并设置每条工序经过的点不重复;
设定迭代次数,每次迭代完成后更新一次信息素浓度;
根据工件的摆放可行性顺序的约束来随意生成多条可行性工序,进而通过迭代找到最小损失函数的工序作为所述最佳执行顺序。
3.根据权利要求1所述的方法,其特征在于,将所述损失函数设置为:
Figure FDA0003852329670000011
其中,di是在机械臂坐标系下工件i与目标位置点的距离,Ψi是在机械臂坐标系下工件i与目标位置点的角度差,ω1和ω2是对应项的加权系数,m是待摆放工件的数量。
4.根据权利要求2所述的方法,其特征在于,将蚂蚁在行走过程中选择某个工件作为摆放工序的下一个工件进行移动的概率设置为:
Figure FDA0003852329670000012
其中,τij(t)是信息素浓度,nij是上个工件位置点i到下个工件位置点j距离的倒数,a是信息素重要程度因子,b是启发函数重要程度因子,
Figure FDA0003852329670000021
代表蚂蚁k从位置点i到位置点j转移的概率,remain表示蚂蚁k还未走过的工序,t表示迭代次数索引。
5.根据权利要求4所述的方法,其特征在于,在每次迭代完成后,根据以下公式更新信息素浓度:
Figure FDA0003852329670000022
其中,ρ表示信息素的挥发程度,
Figure FDA0003852329670000023
表示n只蚂蚁从位置点i行走到位置点j所留下的信息素增量。
6.根据权利要求1所述的方法,其特征在于,所述针对目标区域的待摆放工件,确定各工件的位置信息包括以下步骤:
构建数据集,所述数据集反映工件的中心位置、宽、高以及工件旋转角度之间的对应关系;
基于所述数据集训练目标检测模型,得到工件检测模型;
拍摄目标区域的工件摆放图,基于所述工件检测模型,生成工件对应的多个预测框,筛选出置信度最高的预测框,进而得到各工件的像素坐标和相对于像素坐标系下的旋转角度,然后经过手眼标定矩阵运算转换为机械臂坐标系下的坐标点和旋转角度。
7.根据权利要求1所述的方法,其特征在于,所述目标检测模型是R3Det旋转目标检测网络。
8.根据权利要求3所述的方法,其特征在于,将ω1设置为0.8,ω2设置为0.2。
9.一种计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现根据权利要求1至8中任一项所述方法的步骤。
10.一种计算机设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
CN202211136536.7A 2022-09-19 2022-09-19 一种基于蚁群算法的机器人清理优化方法 Pending CN115470880A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211136536.7A CN115470880A (zh) 2022-09-19 2022-09-19 一种基于蚁群算法的机器人清理优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211136536.7A CN115470880A (zh) 2022-09-19 2022-09-19 一种基于蚁群算法的机器人清理优化方法

Publications (1)

Publication Number Publication Date
CN115470880A true CN115470880A (zh) 2022-12-13

Family

ID=84371305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211136536.7A Pending CN115470880A (zh) 2022-09-19 2022-09-19 一种基于蚁群算法的机器人清理优化方法

Country Status (1)

Country Link
CN (1) CN115470880A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116214529A (zh) * 2023-05-10 2023-06-06 泓浒(苏州)半导体科技有限公司 一种机器人机械臂移动路径控制系统及控制方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116214529A (zh) * 2023-05-10 2023-06-06 泓浒(苏州)半导体科技有限公司 一种机器人机械臂移动路径控制系统及控制方法

Similar Documents

Publication Publication Date Title
US11045949B2 (en) Deep machine learning methods and apparatus for robotic grasping
US11548145B2 (en) Deep machine learning methods and apparatus for robotic grasping
Murali et al. 6-dof grasping for target-driven object manipulation in clutter
US11717959B2 (en) Machine learning methods and apparatus for semantic robotic grasping
CN111275063B (zh) 一种基于3d视觉的机器人智能抓取控制方法及系统
US20210023707A1 (en) Virtual teach and repeat mobile manipulation system
CN113110513A (zh) 一种基于ros的居家整理移动机器人
CN115470880A (zh) 一种基于蚁群算法的机器人清理优化方法
Li et al. A review: Machine learning on robotic grasping
Tee et al. A framework for tool cognition in robots without prior tool learning or observation
Xu et al. Efficient object manipulation to an arbitrary goal pose: Learning-based anytime prioritized planning
US20230418302A1 (en) Online authoring of robot autonomy applications
CN113116229B (zh) 机器人控制方法、装置、扫地机器人及存储介质
CN115461199A (zh) 用于自主机器人操作的面向任务的3d重构
Burbridge et al. Learning the geometric meaning of symbolic abstractions for manipulation planning
Pinzón-Arenas et al. Path Planning for Robotic Training in Virtual Environments using Deep Learning
Wu et al. Prioritized planning for target-oriented manipulation via hierarchical stacking relationship prediction
Li Application of deep learning in target grasping of machine arm
CN117881506A (zh) 机器人任务规划
Pang et al. Object-Oriented Option Framework for Robotics Manipulation in Clutter
KR20230175122A (ko) 대상물의 조작, 특히 픽업을 위한 로봇 제어 방법
WO2023172673A1 (en) Feature driven next view planning of 3-dimensional surfaces
Luan et al. Fast task-specific target detection via graph based constraints representation and checking
Yun et al. Development of Autonomous Robotic Bin Picking System Using Convolutional Neural Network (CNN) Initially Trained by Human Skills
Zeng et al. Scene-level Programming by Demonstration

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