CN113044458A - 一种物流机器人动态任务分配方法及系统 - Google Patents

一种物流机器人动态任务分配方法及系统 Download PDF

Info

Publication number
CN113044458A
CN113044458A CN202110319717.2A CN202110319717A CN113044458A CN 113044458 A CN113044458 A CN 113044458A CN 202110319717 A CN202110319717 A CN 202110319717A CN 113044458 A CN113044458 A CN 113044458A
Authority
CN
China
Prior art keywords
logistics robot
logistics
sorting
state
orders
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
CN202110319717.2A
Other languages
English (en)
Other versions
CN113044458B (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.)
Beijing Wuzi University
Original Assignee
Beijing Wuzi 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 Beijing Wuzi University filed Critical Beijing Wuzi University
Priority to CN202110319717.2A priority Critical patent/CN113044458B/zh
Publication of CN113044458A publication Critical patent/CN113044458A/zh
Application granted granted Critical
Publication of CN113044458B publication Critical patent/CN113044458B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • B65G1/137Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
    • B65G1/1373Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed for fulfilling orders in warehouses

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

本发明实施例提供一种物流机器人动态任务分配方法及系统,包括:选取仓库已经处理完毕的某一时段的所有订单,基于马尔可夫决策过程构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,得到最优物流机器人动态任务分配模型;在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单动态分配给物流机器人。在物流机器人分配任务时,在一定的搜索时间范围内保证收益估计的准确度。

Description

一种物流机器人动态任务分配方法及系统
技术领域
本发明涉及物流领域,具体涉及一种物流机器人动态任务分配方法及系统。
背景技术
针对采用物流机器人进行货物拣选时,物流机器人任务分配系统的多机器人和动态性导致的复杂性使搜索空间巨大的问题,但是传统算法对物流机器人任务分配搜索过程中没有考虑收益变化的幅度对节点选择的影响。
发明内容
本发明实施例提供一种物流机器人动态任务分配方法及系统,在物流机器人分配任务时,在一定的搜索时间范围内保证收益估计的准确度。
为达上述目的,一方面,本发明实施例提供一种物流机器人动态任务分配方法,包括:
选取仓库已经处理完毕的某一时段的所有订单,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置,将物流机器人运输货架的路径和时间代价简化为物流机器人与目标位置的曼哈顿距离,其中,目标位置是指货架和/或拣选台;以及,基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;
采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型;所述最优物流机器人动态任务分配模型,能够将新收到的订单分配给拣选台,将每个拣选台的订单分解成独立的任务,将每个任务分配到物流机器人,物流机器人根据为其分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将相应的货架运回原位;
在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单分配给拣选台、将每个拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人;物流机器人将其被分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将货架运回原位。
另一方面,本发明实施例提供一种物流机器人动态任务分配系统,包括:
构建任务分配模型单元,用于选取仓库已经处理完毕的某一时段的所有订单,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置,将物流机器人运输货架的路径和时间代价简化为物流机器人与目标位置的曼哈顿距离,其中,目标位置是指货架和/或拣选台;以及,基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;
训练模型单元,用于采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型;所述最优物流机器人动态任务分配模型,能够将新收到的订单分配给拣选台,将每个拣选台的订单分解成独立的任务,将每个任务分配到物流机器人,物流机器人根据为其分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将相应的货架运回原位;
模型运用单元,用于在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单分配给拣选台、将每个拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人;物流机器人将其被分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将货架运回原位。
上述技术方案具有如下有益效果:在物流机器人分配任务时,在一定的搜索时间范围内保证收益估计的准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种物流机器人动态任务分配方法的流程图;
图2是本发明实施例的一种物流机器人动态任务分配系统的结构图;
图3是本发明实施例的物流机器人无人仓的“货到人”拣选示意图;
图4是本发明实施例的物流机器人动态模型的状态演变过程;
图5是本发明实施例的改进后的蒙特卡洛搜索树原理图;
图6是本发明实施例的采用蒙特卡洛搜索树的节点扩展图;
图7是本发明实施例采用的启发规则构成图;
图8是本发明实施例的改进的蒙特卡洛搜索树算法流程;
图9是本发明实施例的某电商的仓库示意图;
图10是针对某电商仓库设计的四组方案,采用本发明实施例的改进后的蒙特卡洛搜索树算法训练以及采用传统的蒙特卡洛搜索树算法训练形成的总出库时间对比(左图);以及机器人完成任务行走总距离对比(右图);
图11是图10的某电商仓库设计的四组方案,采用本发明实施例的改进后的蒙特卡洛搜索树算法训练以及采用传统的蒙特卡洛搜索树算法训练形成的平均等待时间(左图)及拣选台利用率(右图);
图12是本发明实施例的针对某电商仓库设计的另外四组方案,采用本发明实施例的改进后的蒙特卡洛搜索树算法训练以及采用传统的蒙特卡洛搜索树算法训练形成的总出库时间对比(左图);以及机器人完成任务行走总距离对比(右图);
图13是图12的某电商仓库设计的另外四组方案,采用本发明实施例的改进后的蒙特卡洛搜索树算法训练以及采用传统的蒙特卡洛搜索树算法训练形成的平均等待时间(左图)及拣选台利用率(右图)。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,结合本发明的实施例,提供一种物流机器人动态任务分配方法,包括:
选取仓库已经处理完毕的某一时段的所有订单,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置,将物流机器人运输货架的路径和时间代价简化为物流机器人与目标位置的曼哈顿距离,其中,目标位置是指货架和/或拣选台;以及,基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;
采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型;所述最优物流机器人动态任务分配模型,能够将新收到的订单分配给拣选台,将每个拣选台的订单分解成独立的任务,将每个任务分配到物流机器人,物流机器人根据为其分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将相应的货架运回原位;
在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单分配给拣选台、将每个拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人;物流机器人将其被分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将货架运回原位。
优选地,所述基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型,具体包括:
根据订单内货物所在货架、运输货架的机器人、接收货架的拣选台确定物流机器人动态任务分配模型的基本变量和决策变量,根据基本变量和决策变量构建物流机器人动态任务分配模型,所述构建物流机器人动态任务分配模型包括为拣选台设置的状态转移方程;其中,所述基本变量包括:订单集合、货架集合、拣选台集合、物流机器人集合、物流机器人完成任务的集合、拣选台任务的集合、拣选任务的时间、物流机器人完成某一任务的成本、物流机器人到货架行走的距离、物流机器人自货架到货架需要行走的距离、物流机器人从拣选台到拣选台需要行走的距离、物流机器人从货架到拣选台需要行走的距离;所述决策变量包括:根据任务分配情况,定义某订单是否在某拣选台进行拣选的函数表达式、定义订单中的货架是否分配给某物流机器人进行拣选的函数表达式、定义某机器人所运输的某货架是否在拣选台拣选的函数表达式、定义某订单是否包括货架的函数表达式。
优选地,采用优化的蒙特卡洛搜索树算法所述对物流机器人动态任务分配模型进行训练求解,具体包括:
物流机器人动态任务分配模型包括为拣选台设置的状态转移方程:P(st,at,st+1)=1,通过对状态转移方程进行演变,得到所有拣选台的最大化动作序列(A1,A2,...,An);所述所有拣选台的最大化动作序列则为物流机器人动态任务分配模型的求解结果;其中,s1,s2,...,sterminal分别表示拣选台的任务分配连续状态,st表示拣选台的第t个状态,sterminal表示拣选台的终止状态;at表示拣选台的状态由st转变到st+1是所选的动作;A1表示拣选台1的动作序列,A2表示拣选台2的动作序列,每个拣选台的动作序列为a1,a2,...,an,n就是动作次数;
对状态转移方程进行演变包括如下3步:
第1步:构建拣选台的初始状态s1和拣选台的终止状态sterminal的n×S矩阵;其中,n是指n个拣选台,S是指所有拣选台的动作序列数量;
第2步:将拣选台的状态由st演变为st+1:st~st+1,设定拣选台访问订单的次数阈值;当拣选台的当前状态st节点访问次数N(st)<P时,使用启发式规则为拣选台选择动作,将订单分配给相应的拣选台;当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行收益Q(st,at)评估,根据评估结果选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;其中,Q表示动作at的收益评估,当前状态st节点是指拣选台当前的工作状态,动作是指将订单选择拣选台;优化的蒙特卡洛搜索树算法是指在传统蒙特卡洛搜索树算法节点选择中加入节点收益的幅度,以对传统蒙特卡洛搜索树算法进行优化;
第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal
所述物流机器人动态任务分配模型还包括为物流机器人设置的状态转移方程,所述为物流机器人设置的状态转移方程是指在拣选台每进行一次状态演变后,将任务分配给物流机器人进行任务分配的状态转移:
第1步:构建所有物流机器人的初始状态和所有物流机器人的终止状态的矩阵;在矩阵中包含所有机器人自初始状态到终止状态的所有状态;
第2步:将所有物流机器人的状态由当前状态演变为下一状态,设定物流机器人访问任务的次数阈值;当物流机器人的当前状态访问次数小于访问任务的次数阈值时,使用启发式规则为物流机器人选择动作,将任务分配给相应的物流机器人;当当前状态访问次数大于访问任务的次数阈值时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将任务分配给动作at所对应的物流机器人,状态更新完毕,更新至状态st+1;其中,当前状态st节点是指物流机器人当前的工作状态,动作是指将任务选择物流机器人;
第3步:如果物流机器人演变后的状态不等于终止状态,重复执行第2步直至终止状态。
优选地,为拣选台设置的状态转移方程,在对为拣选台设置的状态转移方程进行演变时,第2步:根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;以及,第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal,具体包括:
将订单动态分配给拣选台的过程看作优化的蒙特卡洛搜索树算法的落子;其中,拣选台的初始状态s1作为蒙特卡洛搜索树的根节点,拣选台的终止状态sterminal作为优化的蒙特卡洛搜索树的目标节点,除根节点和目标节点之外的节点为叶子节点,采用优化的蒙特卡洛树算法进行搜索确定订单分配给拣选台的过程包括选择阶段、扩展阶段、模拟阶段和回溯阶段,其中:
选择阶段:节点选择时在优化的蒙特卡洛搜索树算法中增加对该节点的收益变化幅度约束;
扩展阶段:如果当前节点为优化的蒙特卡洛搜索树的叶子节点,则对蒙特卡洛搜索树进行分支扩展,扩展的原则是在该叶子节点被选择后该叶子节点模拟的动作唯一、且自动跳转到下一状态被当做扩展节点s1所选择的子节点s21时,其子节点为s3,可扩展节点(s21,s3),使得订单分配动作确定时,假如其货架分配动作唯一,则直接扩展节点至下个状态,当下个状态存在多个订单分配动作(a31,a32)时扩展停止;
模拟阶段:在扩展停止后,通过贪心启发规则选择叶子节点中的某个叶子节点作为当前节点之后的节点;其中,将订单分配给拣选台所采用的启发规则包括:订单相似度、剩余任务量最少、剩余任务代价最小;
回溯阶段:每次模拟完成后,重新更新父节点信息,同时更新各个节点的收益历次平方和信息。
优选地,还包括:模拟阶段将对任务货架分配给物流机器人阶段所采用的启发规则包括:最短路径时间、最长路径时间、距离最近车辆、最长空闲时间车辆。
优选地,所述当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,具体包括:
在对动作序列At进行收益Q(st,at)评估时,动作节点收益时以初次迭代结果为标准,之后每次迭代计算当前收益与初次迭代收益之差;当前收益与初次迭代收益之差小于等于0时,收益为初次迭代收益与当前收益之差并加上1;
当前收益与初次迭代收益之差大于0时,收益为0;则重新分别进行启发规则选择、节点扩展、模拟和回溯直到达到终止条件得到动作选择的最优解,所述最优解是指具有最高收益的动作序列;自最优解中选择具有最小出库时间的最优解作为最终最优解。
优选地,所述使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型,具体包括:
每次训练得到求解结果后,均需通过性能指标评估各求解结果,根据对各求解结果的评估结果确定最优求解结果,所述最优求解结果对应的物流机器人动态任务分配模型为最优物流机器人动态任务分配模型;其中,性能指标包括:所有物流机器人完成所有订单拣选的总时间成本、以及完成所分配任务时间最长的物流机器人所用的时间成本。
优选地,还包括:
采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解时,为每个物流机器人设置相应的任务列表,所述任务列表表示相应物流机器人的任务序列,每个任务列表中包括该物流机器人所要执行的任务、以及该物流机器人所要执行任务所对应的货架的唯一顺序。
如图2所示,结合本发明的实施例,提供一种物流机器人动态任务分配系统,包括:
构建任务分配模型单元,用于选取仓库已经处理完毕的某一时段的所有订单,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置,将物流机器人运输货架的路径和时间代价简化为物流机器人与目标位置的曼哈顿距离,其中,目标位置是指货架和/或拣选台;以及,基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;
训练模型单元,用于采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型;所述最优物流机器人动态任务分配模型,能够将新收到的订单分配给拣选台,将每个拣选台的订单分解成独立的任务,将每个任务分配到物流机器人,物流机器人根据为其分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将相应的货架运回原位;
模型运用单元,用于在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单分配给拣选台、将每个拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人;物流机器人将其被分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将货架运回原位。
优选地,在所述构建任务分配模型单元内,所述基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型,具体用于:
根据订单内货物所在货架、运输货架的机器人、接收货架的拣选台确定物流机器人动态任务分配模型的基本变量和决策变量,根据基本变量和决策变量构建物流机器人动态任务分配模型,所述构建物流机器人动态任务分配模型包括为拣选台设置的状态转移方程;其中,所述基本变量包括:订单集合、货架集合、拣选台集合、物流机器人集合、物流机器人完成任务的集合、拣选台任务的集合、拣选任务的时间、物流机器人完成某一任务的成本、物流机器人到货架行走的距离、物流机器人自货架到货架需要行走的距离、物流机器人从拣选台到拣选台需要行走的距离、物流机器人从货架到拣选台需要行走的距离;所述决策变量包括:根据任务分配情况,定义某订单是否在某拣选台进行拣选的函数表达式、定义订单中的货架是否分配给某物流机器人进行拣选的函数表达式、定义某机器人所运输的某货架是否在拣选台拣选的函数表达式、定义某订单是否包括货架的函数表达式。
优选地,所述训练模型单元具体用于:
物流机器人动态任务分配模型包括为拣选台设置的状态转移方程:P(st,at,st+1)=1,通过对状态转移方程进行演变,得到所有拣选台的最大化动作序列(A1,A2,...,An);所述所有拣选台的最大化动作序列则为物流机器人动态任务分配模型的求解结果;其中,s1,s2,...,sterminal分别表示拣选台的任务分配连续状态,st表示拣选台的第t个状态,sterminal表示拣选台的终止状态;at表示拣选台的状态由st转变到st+1是所选的动作;A1表示拣选台1的动作序列,A2表示拣选台2的动作序列,每个拣选台的动作序列为a1,a2,...,an,n就是动作次数;
对状态转移方程进行演变包括如下3步:
第1步:构建拣选台的初始状态s1和拣选台的终止状态sterminal的n×S矩阵;其中,n是指n个拣选台,S是指所有拣选台的动作序列数量;
第2步:将拣选台的状态由st演变为st+1:st~st+1,设定拣选台访问订单的次数阈值;当拣选台的当前状态st节点访问次数N(st)<P时,使用启发式规则为拣选台选择动作,将订单分配给相应的拣选台;当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行收益Q(st,at)评估,根据评估结果选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;其中,Q表示动作at的收益评估,当前状态st节点是指拣选台当前的工作状态,动作是指将订单选择拣选台;优化的蒙特卡洛搜索树算法是指在传统蒙特卡洛搜索树算法节点选择中加入节点收益的幅度,以对传统蒙特卡洛搜索树算法进行优化;
第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal
所述物流机器人动态任务分配模型还包括为物流机器人设置的状态转移方程,所述为物流机器人设置的状态转移方程是指在拣选台每进行一次状态演变后,将任务分配给物流机器人进行任务分配的状态转移:
第1步:构建所有物流机器人的初始状态和所有物流机器人的终止状态的矩阵;在矩阵中包含所有机器人自初始状态到终止状态的所有状态;
第2步:将所有物流机器人的状态由当前状态演变为下一状态,设定物流机器人访问任务的次数阈值;当物流机器人的当前状态访问次数小于访问任务的次数阈值时,使用启发式规则为物流机器人选择动作,将任务分配给相应的物流机器人;当当前状态访问次数大于访问任务的次数阈值时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将任务分配给动作at所对应的物流机器人,状态更新完毕,更新至状态st+1;其中,当前状态st节点是指物流机器人当前的工作状态,动作是指将任务选择物流机器人;
第3步:如果物流机器人演变后的状态不等于终止状态,重复执行第2步直至终止状态。
优选地,为拣选台设置的状态转移方程,在对为拣选台设置的状态转移方程进行演变时,第2步:根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;以及,第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal,具体包括:
将订单动态分配给拣选台的过程看作优化的蒙特卡洛搜索树算法的落子;其中,拣选台的初始状态s1作为蒙特卡洛搜索树的根节点,拣选台的终止状态sterminal作为优化的蒙特卡洛搜索树的目标节点,除根节点和目标节点之外的节点为叶子节点,采用优化的蒙特卡洛树算法进行搜索确定订单分配给拣选台的过程包括选择阶段、扩展阶段、模拟阶段和回溯阶段,其中:
选择阶段:节点选择时在优化的蒙特卡洛搜索树算法中增加对该节点的收益变化幅度约束;
扩展阶段:如果当前节点为优化的蒙特卡洛搜索树的叶子节点,则对蒙特卡洛搜索树进行分支扩展,扩展的原则是在该叶子节点被选择后该叶子节点模拟的动作唯一、且自动跳转到下一状态被当做扩展节点s1所选择的子节点s21时,其子节点为s3,可扩展节点(s21,s3),使得订单分配动作确定时,假如其货架分配动作唯一,则直接扩展节点至下个状态,当下个状态存在多个订单分配动作(a31,a32)时扩展停止;
模拟阶段:在扩展停止后,通过贪心启发规则选择叶子节点中的某个叶子节点作为当前节点之后的节点;其中,将订单分配给拣选台所采用的启发规则包括:订单相似度、剩余任务量最少、剩余任务代价最小;
回溯阶段:每次模拟完成后,重新更新父节点信息,同时更新各个节点的收益历次平方和信息。
优选地,还包括:模拟阶段将对任务货架分配给物流机器人阶段所采用的启发规则包括:最短路径时间、最长路径时间、距离最近车辆、最长空闲时间车辆。
优选地,所述当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,具体包括:
在对动作序列At进行收益Q(st,at)评估时,动作节点收益时以初次迭代结果为标准,之后每次迭代计算当前收益与初次迭代收益之差;当前收益与初次迭代收益之差小于等于0时,收益为初次迭代收益与当前收益之差并加上1;
当前收益与初次迭代收益之差大于0时,收益为0;则重新分别进行启发规则选择、节点扩展、模拟和回溯直到达到终止条件得到动作选择的最优解,所述最优解是指具有最高收益的动作序列;自最优解中选择具有最小出库时间的最优解作为最终最优解。
优选地,所述使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型,具体包括:
每次训练得到求解结果后,均需通过性能指标评估各求解结果,根据对各求解结果的评估结果确定最优求解结果,所述最优求解结果对应的物流机器人动态任务分配模型为最优物流机器人动态任务分配模型;其中,性能指标包括:所有物流机器人完成所有订单拣选的总时间成本、以及完成所分配任务时间最长的物流机器人所用的时间成本。
优选地,还包括:
采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解时,为每个物流机器人设置相应的任务列表,所述任务列表表示相应物流机器人的任务序列,每个任务列表中包括该物流机器人所要执行的任务、以及该物流机器人所要执行任务所对应的货架的唯一顺序。
下面结合具体的应用实例对本发明实施例上述技术方案进行详细说明,实施过程中没有介绍到的技术细节,可以参考前文的相关描述。
本发明为基于改进蒙特卡洛搜索树的动态任务分配,针对物流机器人任务分配系统的多机器人和动态性导致的复杂性使搜索空间巨大的问题,且传统的蒙特卡洛搜索树算法在一定的搜索时间范围内不能保证收益估计的准确度,并且在搜索过程中没有考虑收益变化的幅度对节点选择的影响,本发明对传统的蒙特卡洛搜索树算法进行优化改进,研究针对收益估计和收益变化的幅度的蒙特卡洛搜索树算法,优化改进的蒙特卡洛搜索树算法能够对系统状态进行评估,反复模拟任务分配结果,模拟完成后汇总结果输出,从而达到基于改进的蒙特卡洛搜索树算法的动态任务分配。首先,构建了物流机器人动态任务分配模型;然后,根据马尔可夫决策过程建立状态转移的动态模型,运用启发规则和考虑收益变化的节点选择方法对蒙特卡洛搜索树算法进行优化;最后,通过对比实验验证改进蒙特卡洛搜索树算法的有效性。在验证有效性之后用于街道订单后根据订单拣选货物时对物流机器人进行动态任务分配。
1.1物流机器人动态任务分配模型构建
物流机器人动态任务分配(Logistics Robots Dynamic Task Assignment,LRDTA)是解决无人仓库中利用AGV小车(物流机器人)进行“货到人”模式订单拣选的动态调度问题。动态调度问题的动态性指的是两个方面:第一,新的任务会在物流机器人执行任务的过程中动态产生,需要分配新任务;第二,物流机器人的移动可能会影响其他物流机器人的路径规划,需要避开其他机器人,各机器人之间不相撞。
在订单到达系统后:首先,使用智能算法将订单分配给拣选台;其次,将订单中需要的货架分配给物流机器人,根据物流机器人分配货架的位置信息进行路径规划,使得物流机器人从当前位置移动到目标位置搬运货架;之后,将货架运输到指定的拣选台,在拣选完成后将货架运回原位;最后,物流机器人从当前位置移动到目标货架位置,依次循环直至到达终止状态,即所有订单都已拣选完成。无人仓“货到人”拣选系统的示意图如图3所示:
LRDTA描述为:n个订单经由P个拣选台进行拣选打包,仓库内有m个物流机器人将订单所需要的货物所在的货架搬运到所有需要该货架货物的拣选台前,并将货架搬回原位置,直至所有订单拣选完成。调度过程满足以下约束条件:
(1)任务分配时,订单i只能在一个拣选台上进行拣选,且每个拣选台在同一时刻只能处理p个订单。
(2)任务分配时,物流机器人j同一时刻只能搬运一台货架,并在拣选完成后需要将货架送回其原始位置。
(3)允许物流机器人在到达拣选台前等待。
1.1.1变量说明
1.基本变量
O为订单集合,O1,...,On;O={S1,...,Sn};其中,O1,...,On分别表示第1个…n个订单,S1,...,Sn表示某订单包括第1个…n个货架;
S为货架集合,S1,...,Sn;表示所有订单中的货架集合;
P为拣选台集合,P1,..,Pl;表示l个拣选台;
R为AGV机器人集合,R1,...,Rm;R1,...,Rm分别表示第1个…m个AGV机器人;
SR为AGV机器人完成任务的集合,
Figure BDA0002992322290000121
Figure BDA0002992322290000122
分别表示第R1个、R2个…Rm个AGV机器人各自完成的任务;
OP为拣选台的任务集合,
Figure BDA0002992322290000123
tpick为拣选任务的时间;
Figure BDA0002992322290000124
为AGV机器人i完成任务j的成本;
c1为机器人空载成本系数;
c2为机器人负载成本系数;
Figure BDA0002992322290000131
为AGV机器人i到货架j需要行走的距离,
Figure BDA0002992322290000132
其中,x表示x方向,y表示y方向,且x方向、y方向互相垂直;
Figure BDA0002992322290000133
为AGV机器人从货架i到货架j需要行走的距离,
Figure BDA0002992322290000134
其中,x表示x方向,y表示y方向,且x方向、y方向互相垂直;
Figure BDA0002992322290000135
为AGV机器人从拣选台i到拣选台j需要行走的距离,
Figure BDA0002992322290000136
Figure BDA0002992322290000137
其中,x表示x方向,y表示y方向,且x方向、y方向互相垂直;
Figure BDA0002992322290000138
为AGV机器人从货架i到拣选台j需要行走的距离,
Figure BDA0002992322290000139
Figure BDA00029923222900001310
其中,x表示x方向,y表示y方向,且x方向、y方向互相垂直。
2.决策变量
Figure BDA00029923222900001311
为如果订单Oi在拣选台Pj进行拣选,则
Figure BDA00029923222900001312
否则
Figure BDA00029923222900001313
Figure BDA00029923222900001314
为如果货架Sj的运送操作任务分配给AGV机器人Ri
Figure BDA00029923222900001315
否则
Figure BDA00029923222900001316
Figure BDA00029923222900001317
为如果AGV机器人i所搬运的货架j在拣选台s进行拣选,则
Figure BDA00029923222900001318
否则
Figure BDA00029923222900001319
Figure BDA00029923222900001320
为如果订单包含货架,则
Figure BDA00029923222900001321
否则
Figure BDA00029923222900001322
其中,在上述各种变量中以及后面所涉及的变量中,表示某机器人的下标符号、表示某货架的下标符号、表示某任务的下标符号、表示某拣选台的下标符号均处于各自总数量范围内。
1.1.2模型建立
为实现AGV机器人任务量负载均衡,计算机器人被分配的两个相邻任务Sj-1和Sj之间的相关性:若两个任务服务于同一个拣选台,则
Figure BDA00029923222900001323
否则
Figure BDA00029923222900001324
因此AGV机器人完成任务的成本
Figure BDA00029923222900001325
分为以下两种情况:
Figure BDA00029923222900001326
Figure BDA00029923222900001327
每个AGV机器人维护一个任务的列表
Figure BDA00029923222900001328
Figure BDA00029923222900001329
中有j个任务,则
Figure BDA00029923222900001330
表示任务序列,且AGV机器人搬运货架的顺序唯一。因此单个AGV机器人完成所分配任务的执行成本为:
Figure BDA00029923222900001331
其中,IC为等待成本,当AGV机器人到达拣选台时,若前面有其他AGV机器人还有货物等待拣选,则AGV机器人需要等待。
Figure BDA0002992322290000141
拣选台P完成已分配任务OP的拣选成本为:
Figure BDA0002992322290000142
此外,定义两个性能指标STC、TT。STC表示LRDTA中所有AGV机器人完成所有订单拣选的总成本,即订单拣选的总时间;TT表示所有AGV机器人中,完成所分配任务成本最高的AGV机器人的成本,即完成所有拣选的时间。
Figure BDA0002992322290000143
Figure BDA0002992322290000144
以LRDTA(任务分配)总出库时间最短为目标函数,即Min最短STC和Min最短TT,且约束条件为:
Figure BDA0002992322290000145
Figure BDA0002992322290000146
Figure BDA0002992322290000147
Figure BDA0002992322290000148
Figure BDA0002992322290000149
Figure BDA00029923222900001410
其中,式(1-8)用来约束一个任务只被分配到一个拣选台上,式(1-9)确保一个任务只分配给一个机器人,式(1-10)指一个任务只在一个货架上,式(1-11)、式(1-12)和式(1-13)为随机变量取值约束。
1.2改进蒙特卡洛搜索树算法
传统的蒙特卡洛搜索树算法在相对有限的搜索时间内不能保证对价值估计的准确度,并且在搜索的过程中没有考虑收益变化的幅度对选择策略的影响。针对以上问题,基于蒙特卡洛搜索树算法求解物流机器人动态任务分配问题,其思路是将订单动态分配的过程看作落子的过程,将分配过程分为两个阶段,首先根据订单的相关性将订单分配给拣选台,每个拣选台被分配一个或者多个订单;然后将订单中的任务分解,每个任务包含一个货架,将任务分配给物流机器人,每个物流机器人被分配一个或多个任务。
1.2.1任务分配动态模型
本节基于MDP(马尔可夫决策过程)构建LRDTA动态模型,设状态转移方程P(st,at,st+1)=1,以s1,s2,...,sterminal描述任务分配连续状态,状态演变过程中动作序列为a1,a2,...,an,目标是求解最大化动作序列(A1,A2,...,An)。如图4所示,动态模型的演变分为3步:
第1步 构建拣选台的初始状态s1和拣选台的终止状态sterminal的n×S矩阵;
第2步 进行状态演变st~st+1,当前状态st节点访问次数N(st)<P时,使用启发式规则选择动作;当N(st)>P时,根据改进蒙特卡洛搜索树算法的选择策略(公式1-16,按照大的数选)对动作序列At进行评估Q(st,at),选出动作at,然后更新至状态st+1
第3步 如果st+1≠sterminal,执行第2步直至环境终止状态sterminal
1.2.2改进蒙特卡洛搜索树算法求解过程
蒙特卡洛搜索树算法存在搜索过程中收益估计准确度和没有考虑收益变化的幅度进行节点选择的问题,建立搜索树,以初始状态为根节点,终止状态为目标节点,搜索的过程分为选择、扩展、模拟和回溯4个阶段,如图5所示。
1.选择
在本阶段进行节点选择。在传统的蒙特卡洛搜索树算法中,在进行选择时往往只考虑访问次数,没有考虑收益变化的幅度,而在求解动态任务分配时,寻找的最优动作是收益更高的动作。因此,提出了一种考虑收益的节点选择方法。
传统蒙特卡洛搜索树算法节点选择根据采用置信区间上界算法(UpperConfidence bounds applied to Trees,UCT):
Figure BDA0002992322290000151
其中,N(vi)表示节点被访问的次数,vi表示以节点为根节点的模拟结果的平均值,
Figure BDA0002992322290000152
为参数,用以平衡搜索的深度优先与广度优先。
本节将收益变化幅度作为第3项加入到节点选择中:
Figure BDA0002992322290000153
其中,N(s)表示节点被访问的次数,N(s,a)表示状态s时执行分配动作a的次数,Q(s,a)表示节点s处选择动作a的结果平均值,即收益。∑Q2(s,a)中表示搜索树中全部节点在模拟过程中的结果平均值的平方之和,是本小节加入的考虑节点收益的选择策略,能够在搜索时以合理的模拟次数扩展分支,一定程度上增加了收益估计的准确度。常量D的作用是避免选择频率不高的动作被忽略。
当s节点存在多个分支时,需要对节点的子树进行剪枝,为节点的收益设定区间[Ql,Qr],,Qr:Ql(s,a1)=Q(s,a1)-rd·σ1·Qr(s,a1)=Q(s,a1)+rd·σ1,其中,σ1和σ2是标准差,rd=1.1。当Ql(s2,a1)>Qr(s2,a2)时,剪掉a2所在的分支。然后再通过公式(1-15)估算Q(s,a),并选择最大值:
Figure BDA0002992322290000161
2.扩展
如果当前节点为搜索树叶子节点,要对搜索树进行分支扩展,LRDTA在动态运行路径规划结果中,选择后该节点模拟的动作唯一,并且环境自动跳转到下一状态当扩展节点s1选择子节点s21时,其子节点为s3,可扩展节点(s21,s3),即在订单分配动作确定时,假如其货架分配动作唯一,则直接扩展节点至下个状态,当下个状态存在多个订单分配动作(a31,a32)时扩展停止,如图6所示。
3.模拟
在模拟阶段,任务分配被分为订单分配和货架分配两个阶段,分别对这两个阶段建立贪心启发规则,对订单分配阶段,取订单相似度(order similarity,OS)、剩余任务量最少(minimum request queue,MRQ)、剩余任务代价最小(minimum cost of requestqueue,MCRQ)3种规则作为启发规则。
订单相似度计算方式如下:
Figure BDA0002992322290000162
对货架分配阶段,取最短路径时间(shortest traveling time,STT)、最长路径时间(longest traveling time,LTT)、距离最近车辆(nearest vehicle,NV),最长空闲时间车辆(longest idle vehicle,LIV)4种规则作为启发规则。启发规则的构成如图7所示。
4.回溯
模拟完成后,需要重新更新父节点信息,同时更新各个节点的收益历次平方和信息:
∑Q2(s,a)=∑Q2(s,a)+z2 式(1-18)
其中z表示此次搜索到根节点所得收益。
应用改进蒙特卡洛搜索树算法解决LRDTA问题,计算收益的思路需要以初次迭代结果为标准,之后每次迭代计算Tn-T1。如果Tn-T1≤0,收益为T1-Tn+1,反之收益为0。之后需要分别进行策略选择、节点扩展、模拟和回溯直到达到终止条件选择最优解。以求解最小出库时间为优化目标,因此,最高收益的动作序列为最终最优解。
根据本节提出的改进的蒙特卡洛搜索树算法和LRDTA动态模型,算法流程如图8所示,根节点通过选择、扩展、模拟的步骤进行状态演变至终止节点sterminal,选择策略平衡了深度搜索与广度搜索并考虑节点平均收益,目标是最大化收益。因此改进蒙特卡洛搜索树算法优化最大化收益和平均收益。
1.3实验设计与结果分析
为了更好地验证本章提出的蒙特卡洛搜索树算法的有效性,本节实验根据某电商公司的仓库数据和订单数据进行实验。对蒙特卡洛搜索树算法和改进前的算法针对不同应用场景下的效果进行对比实验并分析实验结果。
1.3.1实验设计
本节实验根据某电商公司的仓库数据和订单数据进行,仓库数据包含货架、货格、拣选台的位置及大小。根据仓库数据,仓库中包含13个拣选台,4行货架(其中每行货架有25对货架,共200个货架)。仓库示意如图9如下。
为验证动态任务分配的效果,本文假设两个个基本条件:第一,物流机器人搬运货架的路径和时间代价被简化为物流机器人与目标位置(货架或拣选台)的曼哈顿距离;第二,新任务在机器人执行任务的过程中动态生成。
订单集合为O1,...,On;O={o1,...,on};o={S1,...,Sn},一批订单的集合包含n个订单,每个订单包含n个货架。机器人的集合表示为R1,...,Rm,货架的集合可以表示为S1,...,Sn,拣选台的集合表示为P1,..,Pl
Figure BDA0002992322290000171
Figure BDA0002992322290000172
分别表示机器人、货架和拣选台的坐标。此外,本文假设机器人系统由订单分配机器人、货架分配机器人和AGV机器人组成。在多机器人系统中,机器人之间的通信是必不可少的。在实验中,假设AGV机器人之间不进行通信,货架分配机器人和AGV机器人之间点对点通信。机器人的功能与数量如表1所示:
表1机器人功能与数量
Figure BDA0002992322290000173
Figure BDA0002992322290000181
根据本章实验的仓库数据,货架和拣选台的坐标已知,且保持不变,因此机器人在完成拣选后需要将货架送回原位。如表2所示,给出其中20个货架和5个拣选台的坐标。
表2货架和拣选台的坐标
Figure BDA0002992322290000182
实验数据中的订单共685个,订单包含了货物信息与货物所在的货架编号,每个订单包含若干个货架,此处给出其中10个订单的列表,如表3所示:
表3订单列表
Figure BDA0002992322290000183
机器人的数量增加会导致机器人成本的增加,而拣选台数量的增加会导致人工成本的增加。为了验证本章提出算法的效果,并且在机器人成本和人工成本之间找到平衡,本节构建了8个实验方案,实验方案的设计如表4所示。
表4实验方案
Figure BDA0002992322290000184
Figure BDA0002992322290000191
1.3.2实验结果与分析
为验证改进蒙特卡洛搜索树算法的性能,在Windows10操作系统上,基于python语言进行实验。PC机配置为Intel(R)Core(TM)i7-8750H CPU@2.20GHz,16G内存,且本文所有实验均采用此硬件设置。实验中,设机器人平均行进速度为1m/s,将传统的蒙特卡洛搜索树算法与改进蒙特卡洛搜索树算法进行比较。
本章分别比较算法在总出库时间、完成所有任务的总距离、机器人等待时间、拣选台利用率和搜索时间与任务完成率4个指标上的表现。其中,总出库时间指的是从第一个订单到达系统到最后一个订单出库所需的时间,单位为秒;完成所有任务的总距离指的是机器人完成所有任务需要行走的距离之和,单位为米;机器人等待时间指的是机器人到达拣选台前排队等待的时间,单位为秒;拣选台利用率指的是拣选台的拣选时间占总出库时间的比率;完成任务时间与任务完成率指的是算法搜索结果所需的时间与任务完成率的关系。
将8个方案的实验结果分为两组进行分析,方案一到方案四为拣选台数量不变,机器人数量分别为5、10、15、20;方案五到方案八为机器人数量不变,拣选台数量分别为2、4、6、8。
1.机器人数量变化
第一组实验结果如图10、图11所示。从实验结果可以看出,改进后的算法相比于蒙特卡洛搜索树算法性能有所提升。当机器人数量增加时,总出库时间明显减少,这是因为机器人的平均等待时间更少,因此拣选台利用率也因此增加,订单完成率能够更快地达到100%。同时,机器人完成任务所需的总距离不受机器人数量的影响,这是因为订单的数据都相同,机器人完成任务所需行走的距离相对固定。虽然机器人数量越多,订单的总出库时间越短,但是当机器人数量达到15个后,总出库时间的下降趋势有所减缓,因此方案五到方案八选取15个机器人针对不同拣选台数量进行实验。
2.拣选台数量变化
第二组实验结果如图12、图13所示。从实验结果可以看出,改进后的算法相比蒙特卡洛搜索树算法性能有所提升。当机器人数量不变而拣选台数量增加时,总出库时间相对变化较小,这说明机器人数量的变化相对于拣选台数量变化对总出库时间影响更大。拣选台数量增加时,机器人的平均等待时间更短,这是因为任务分配到了更多的拣选台,机器人到达拣选台后排队的情况有所改善。
综合以上两组实验结果可以得出结论,改进后的算法即改进的蒙特卡洛搜索树算法能够对动态任务分配进行求解,并且在不同的机器人数量和不同拣选台数量的情况下,表现均优于改进前的算法,鲁棒性更强。
应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本申请公开的原理和新颖性特征的最广范围相一致。
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种物流机器人动态任务分配方法,其特征在于,包括:
选取仓库已经处理完毕的某一时段的所有订单,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置,将物流机器人运输货架的路径和时间代价简化为物流机器人与目标位置的曼哈顿距离,其中,目标位置是指货架和/或拣选台;以及,基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;
采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型;所述最优物流机器人动态任务分配模型,能够将新收到的订单分配给拣选台,将每个拣选台的订单分解成独立的任务,将每个任务分配到物流机器人,物流机器人根据为其分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将相应的货架运回原位;
在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单分配给拣选台、将每个拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人;物流机器人将其被分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将货架运回原位。
2.根据权利要求1所述的物流机器人动态任务分配方法,其特征在于,所述基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型,具体包括:
根据订单内货物所在货架、运输货架的机器人、接收货架的拣选台确定物流机器人动态任务分配模型的基本变量和决策变量,根据基本变量和决策变量构建物流机器人动态任务分配模型,所述构建物流机器人动态任务分配模型包括为拣选台设置的状态转移方程;其中,所述基本变量包括:订单集合、货架集合、拣选台集合、物流机器人集合、物流机器人完成任务的集合、拣选台任务的集合、拣选任务的时间、物流机器人完成某一任务的成本、物流机器人到货架行走的距离、物流机器人自货架到货架需要行走的距离、物流机器人从拣选台到拣选台需要行走的距离、物流机器人从货架到拣选台需要行走的距离;所述决策变量包括:根据任务分配情况,定义某订单是否在某拣选台进行拣选的函数表达式、定义订单中的货架是否分配给某物流机器人进行拣选的函数表达式、定义某机器人所运输的某货架是否在拣选台拣选的函数表达式、定义某订单是否包括货架的函数表达式。
3.根据权利要求2所述的物流机器人动态任务分配方法,其特征在于,采用优化的蒙特卡洛搜索树算法所述对物流机器人动态任务分配模型进行训练求解,具体包括:
物流机器人动态任务分配模型包括为拣选台设置的状态转移方程:P(st,at,st+1)=1,通过对状态转移方程进行演变,得到所有拣选台的最大化动作序列(A1,A2,...,An);所述所有拣选台的最大化动作序列则为物流机器人动态任务分配模型的求解结果;其中,s1,s2,...,sterminal分别表示拣选台的任务分配连续状态,st表示拣选台的第t个状态,sterminal表示拣选台的终止状态;at表示拣选台的状态由st转变到st+1是所选的动作;A1表示拣选台1的动作序列,A2表示拣选台2的动作序列,每个拣选台的动作序列为a1,a2,...,an,n就是动作次数;
对状态转移方程进行演变包括如下3步:
第1步:构建拣选台的初始状态s1和拣选台的终止状态sterminal的n×S矩阵;其中,n是指n个拣选台,S是指所有拣选台的动作序列数量;
第2步:将拣选台的状态由st演变为st+1:st~st+1,设定拣选台访问订单的次数阈值;当拣选台的当前状态st节点访问次数N(st)<P时,使用启发式规则为拣选台选择动作,将订单分配给相应的拣选台;当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行收益Q(st,at)评估,根据评估结果选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;其中,Q表示动作at的收益评估,当前状态st节点是指拣选台当前的工作状态,动作是指将订单选择拣选台;优化的蒙特卡洛搜索树算法是指在传统蒙特卡洛搜索树算法节点选择中加入节点收益的幅度,以对传统蒙特卡洛搜索树算法进行优化;
第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal
所述物流机器人动态任务分配模型还包括为物流机器人设置的状态转移方程,所述为物流机器人设置的状态转移方程是指在拣选台每进行一次状态演变后,将任务分配给物流机器人进行任务分配的状态转移:
第1步:构建所有物流机器人的初始状态和所有物流机器人的终止状态的矩阵;在矩阵中包含所有机器人自初始状态到终止状态的所有状态;
第2步:将所有物流机器人的状态由当前状态演变为下一状态,设定物流机器人访问任务的次数阈值;当物流机器人的当前状态访问次数小于访问任务的次数阈值时,使用启发式规则为物流机器人选择动作,将任务分配给相应的物流机器人;当当前状态访问次数大于访问任务的次数阈值时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将任务分配给动作at所对应的物流机器人,状态更新完毕,更新至状态st+1;其中,当前状态st节点是指物流机器人当前的工作状态,动作是指将任务选择物流机器人;
第3步:如果物流机器人演变后的状态不等于终止状态,重复执行第2步直至终止状态。
4.根据权利要求3所述的物流机器人动态任务分配方法,其特征在于,为拣选台设置的状态转移方程,在对为拣选台设置的状态转移方程进行演变时,第2步:根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;以及,第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal,具体包括:
将订单动态分配给拣选台的过程看作优化的蒙特卡洛搜索树算法的落子;其中,拣选台的初始状态s1作为蒙特卡洛搜索树的根节点,拣选台的终止状态sterminal作为优化的蒙特卡洛搜索树的目标节点,除根节点和目标节点之外的节点为叶子节点,采用优化的蒙特卡洛树算法进行搜索确定订单分配给拣选台的过程包括选择阶段、扩展阶段、模拟阶段和回溯阶段,其中:
选择阶段:节点选择时在优化的蒙特卡洛搜索树算法中增加对该节点的收益变化幅度约束;
扩展阶段:如果当前节点为优化的蒙特卡洛搜索树的叶子节点,则对蒙特卡洛搜索树进行分支扩展,扩展的原则是在该叶子节点被选择后该叶子节点模拟的动作唯一、且自动跳转到下一状态被当做扩展节点s1所选择的子节点s21时,其子节点为s3,可扩展节点(s21,s3),使得订单分配动作确定时,假如其货架分配动作唯一,则直接扩展节点至下个状态,当下个状态存在多个订单分配动作(a31,a32)时扩展停止;
模拟阶段:在扩展停止后,通过贪心启发规则选择叶子节点中的某个叶子节点作为当前节点之后的节点;其中,将订单分配给拣选台所采用的启发规则包括:订单相似度、剩余任务量最少、剩余任务代价最小;
回溯阶段:每次模拟完成后,重新更新父节点信息,同时更新各个节点的收益历次平方和信息。
5.据权利要求4所述的物流机器人动态任务分配方法,其特征在于,还包括:模拟阶段将对任务货架分配给物流机器人阶段所采用的启发规则包括:最短路径时间、最长路径时间、距离最近车辆、最长空闲时间车辆。
6.根据权利要求4所述的物流机器人动态任务分配方法,其特征在于,所述当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,具体包括:
在对动作序列At进行收益Q(st,at)评估时,动作节点收益时以初次迭代结果为标准,之后每次迭代计算当前收益与初次迭代收益之差;当前收益与初次迭代收益之差小于等于0时,收益为初次迭代收益与当前收益之差并加上1;
当前收益与初次迭代收益之差大于0时,收益为0;则重新分别进行启发规则选择、节点扩展、模拟和回溯直到达到终止条件得到动作选择的最优解,所述最优解是指具有最高收益的动作序列;自最优解中选择具有最小出库时间的最优解作为最终最优解。
7.根据权利要求3所述的物流机器人动态任务分配方法,其特征在于,所述使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型,具体包括:
每次训练得到求解结果后,均需通过性能指标评估各求解结果,根据对各求解结果的评估结果确定最优求解结果,所述最优求解结果对应的物流机器人动态任务分配模型为最优物流机器人动态任务分配模型;其中,性能指标包括:所有物流机器人完成所有订单拣选的总时间成本、以及完成所分配任务时间最长的物流机器人所用的时间成本。
8.根据权利要求1所述的物流机器人动态任务分配方法,其特征在于,还包括:
采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解时,为每个物流机器人设置相应的任务列表,所述任务列表表示相应物流机器人的任务序列,每个任务列表中包括该物流机器人所要执行的任务、以及该物流机器人所要执行任务所对应的货架的唯一顺序。
9.一种物流机器人动态任务分配系统,其特征在于,包括:
构建任务分配模型单元,用于选取仓库已经处理完毕的某一时段的所有订单,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置,将物流机器人运输货架的路径和时间代价简化为物流机器人与目标位置的曼哈顿距离,其中,目标位置是指货架和/或拣选台;以及,基于马尔可夫决策过程,根据订单数量,订单内各任务所对应的货架,货架所在的货格的位置,运输货架的物流机器人数量、速度,接收货架的拣选台数量、位置和大小,构建物流机器人动态任务分配模型;构建所述物流机器人动态任务分配模型采用将订单分配给拣选台、将分配给拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人的任务分配方式;
训练模型单元,用于采用优化的蒙特卡洛搜索树算法对物流机器人动态任务分配模型进行训练求解,使得得到的解为物流机器人分配相应的一个或多个任务、且被分配任务的所有物流机器人完成所有货架拣选的总成本最优,得到最优物流机器人动态任务分配模型;所述最优物流机器人动态任务分配模型,能够将新收到的订单分配给拣选台,将每个拣选台的订单分解成独立的任务,将每个任务分配到物流机器人,物流机器人根据为其分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将相应的货架运回原位;
模型运用单元,用于在仓库接收到订单并根据订单拣选货物时,采用最优物流机器人动态任务分配模型将新收到的订单分配给拣选台、将每个拣选台的订单分解成独立任务、将每个独立任务分配到物流机器人;物流机器人将其被分配的任务所对应的货架运输到拣选台,在拣选台拣选完成后将货架运回原位。
10.根据权利要求9所述的物流机器人动态任务分配系统,其特征在于,所述训练模型单元具体用于:
物流机器人动态任务分配模型包括为拣选台设置的状态转移方程:P(st,at,st+1)=1,通过对状态转移方程进行演变,得到所有拣选台的最大化动作序列(A1,A2,...,An);所述所有拣选台的最大化动作序列则为物流机器人动态任务分配模型的求解结果;其中,s1,s2,...,sterminal分别表示拣选台的任务分配连续状态,st表示拣选台的第t个状态,sterminal表示拣选台的终止状态;at表示拣选台的状态由st转变到st+1是所选的动作;A1表示拣选台1的动作序列,A2表示拣选台2的动作序列,每个拣选台的动作序列为a1,a2,...,an,n就是动作次数;
对状态转移方程进行演变包括如下3步:
第1步:构建拣选台的初始状态s1和拣选台的终止状态sterminal的n×S矩阵;其中,n是指n个拣选台,S是指所有拣选台的动作序列数量;
第2步:将拣选台的状态由st演变为st+1:st~st+1,设定拣选台访问订单的次数阈值;当拣选台的当前状态st节点访问次数N(st)<P时,使用启发式规则为拣选台选择动作,将订单分配给相应的拣选台;当N(st)>P时,根据优化的蒙特卡洛搜索树算法对动作序列At进行收益Q(st,at)评估,根据评估结果选出动作at,将订单分配给动作at所对应的拣选台,状态更新完毕,更新至状态st+1;其中,Q表示动作at的收益评估,当前状态st节点是指拣选台当前的工作状态,动作是指将订单选择拣选台;优化的蒙特卡洛搜索树算法是指在传统蒙特卡洛搜索树算法节点选择中加入节点收益的幅度,以对传统蒙特卡洛搜索树算法进行优化;
第3步:如果拣选台演变后的状态不等于终止状态:st+1≠sterminal,重复执行第2步直至终止状态sterminal
所述物流机器人动态任务分配模型还包括为物流机器人设置的状态转移方程,所述为物流机器人设置的状态转移方程是指在拣选台每进行一次状态演变后,将任务分配给物流机器人进行任务分配的状态转移:
第1步:构建所有物流机器人的初始状态和所有物流机器人的终止状态的矩阵;在矩阵中包含所有机器人自初始状态到终止状态的所有状态;
第2步:将所有物流机器人的状态由当前状态演变为下一状态,设定物流机器人访问任务的次数阈值;当物流机器人的当前状态访问次数小于访问任务的次数阈值时,使用启发式规则为物流机器人选择动作,将任务分配给相应的物流机器人;当当前状态访问次数大于访问任务的次数阈值时,根据优化的蒙特卡洛搜索树算法对动作序列At进行评估Q(st,at),选出动作at,将任务分配给动作at所对应的物流机器人,状态更新完毕,更新至状态st+1;其中,当前状态st节点是指物流机器人当前的工作状态,动作是指将任务选择物流机器人;
第3步:如果物流机器人演变后的状态不等于终止状态,重复执行第2步直至终止状态。
CN202110319717.2A 2021-03-25 2021-03-25 一种物流机器人动态任务分配方法及系统 Expired - Fee Related CN113044458B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110319717.2A CN113044458B (zh) 2021-03-25 2021-03-25 一种物流机器人动态任务分配方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110319717.2A CN113044458B (zh) 2021-03-25 2021-03-25 一种物流机器人动态任务分配方法及系统

Publications (2)

Publication Number Publication Date
CN113044458A true CN113044458A (zh) 2021-06-29
CN113044458B CN113044458B (zh) 2022-05-27

Family

ID=76515178

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110319717.2A Expired - Fee Related CN113044458B (zh) 2021-03-25 2021-03-25 一种物流机器人动态任务分配方法及系统

Country Status (1)

Country Link
CN (1) CN113044458B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113673887A (zh) * 2021-08-25 2021-11-19 深圳市库宝软件有限公司 任务分配方法、装置、服务器和存储介质
CN113968445A (zh) * 2021-11-18 2022-01-25 宝开(上海)智能物流科技有限公司 一种轻小件高速分拣控制方法、系统及装置
CN113988624A (zh) * 2021-10-28 2022-01-28 杭州电子科技大学 一种引入公平性并降低通勤成本的任务分配方法
CN114330978A (zh) * 2021-11-11 2022-04-12 深圳大学 一种空地机器人任务动态分配方法、存储介质及终端设备
CN114852566A (zh) * 2022-04-11 2022-08-05 深圳市库宝软件有限公司 订单处理方法、装置、设备、仓储系统及存储介质
CN114995393A (zh) * 2022-05-11 2022-09-02 杭州蓝芯科技有限公司 移动机器人的调度方法、装置和调度系统
CN115170004A (zh) * 2022-09-08 2022-10-11 江西省智能产业技术创新研究院 多系统混合调度方法、系统、计算机及可读存储介质
CN116620775A (zh) * 2023-06-12 2023-08-22 江苏齐鑫智能科技有限公司 一种封闭仓档案机器人设备中转仓的调用方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080208776A1 (en) * 2007-02-07 2008-08-28 Samsung Electronics Co., Ltd. Method and apparatus for learning behavior in software robot
CN109669452A (zh) * 2018-11-02 2019-04-23 北京物资学院 一种基于并行强化学习的云机器人任务调度方法和系统
CN111240318A (zh) * 2019-12-24 2020-06-05 华中农业大学 一种机器人的人员发现算法
US20200272899A1 (en) * 2019-02-22 2020-08-27 Ubotica Technologies Limited Systems and Methods for Deploying and Updating Neural Networks at the Edge of a Network
CN112476424A (zh) * 2020-11-13 2021-03-12 腾讯科技(深圳)有限公司 机器人控制方法、装置、设备及计算机存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080208776A1 (en) * 2007-02-07 2008-08-28 Samsung Electronics Co., Ltd. Method and apparatus for learning behavior in software robot
CN109669452A (zh) * 2018-11-02 2019-04-23 北京物资学院 一种基于并行强化学习的云机器人任务调度方法和系统
US20200272899A1 (en) * 2019-02-22 2020-08-27 Ubotica Technologies Limited Systems and Methods for Deploying and Updating Neural Networks at the Edge of a Network
CN111240318A (zh) * 2019-12-24 2020-06-05 华中农业大学 一种机器人的人员发现算法
CN112476424A (zh) * 2020-11-13 2021-03-12 腾讯科技(深圳)有限公司 机器人控制方法、装置、设备及计算机存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王力锋等: "物流运输快速配送路径规划仿真", 《计算机仿真》, no. 08, 15 August 2017 (2017-08-15), pages 348 - 351 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113673887A (zh) * 2021-08-25 2021-11-19 深圳市库宝软件有限公司 任务分配方法、装置、服务器和存储介质
CN113673887B (zh) * 2021-08-25 2024-06-07 深圳市库宝软件有限公司 任务分配方法、装置、服务器和存储介质
CN113988624A (zh) * 2021-10-28 2022-01-28 杭州电子科技大学 一种引入公平性并降低通勤成本的任务分配方法
CN114330978A (zh) * 2021-11-11 2022-04-12 深圳大学 一种空地机器人任务动态分配方法、存储介质及终端设备
CN114330978B (zh) * 2021-11-11 2022-08-09 深圳大学 一种空地机器人任务动态分配方法、存储介质及终端设备
CN113968445A (zh) * 2021-11-18 2022-01-25 宝开(上海)智能物流科技有限公司 一种轻小件高速分拣控制方法、系统及装置
CN113968445B (zh) * 2021-11-18 2022-09-09 宝开(上海)智能物流科技有限公司 一种轻小件高速分拣控制方法、系统及装置
CN114852566A (zh) * 2022-04-11 2022-08-05 深圳市库宝软件有限公司 订单处理方法、装置、设备、仓储系统及存储介质
CN114852566B (zh) * 2022-04-11 2024-05-14 深圳市库宝软件有限公司 订单处理方法、装置、设备、仓储系统及存储介质
CN114995393A (zh) * 2022-05-11 2022-09-02 杭州蓝芯科技有限公司 移动机器人的调度方法、装置和调度系统
CN115170004A (zh) * 2022-09-08 2022-10-11 江西省智能产业技术创新研究院 多系统混合调度方法、系统、计算机及可读存储介质
CN116620775A (zh) * 2023-06-12 2023-08-22 江苏齐鑫智能科技有限公司 一种封闭仓档案机器人设备中转仓的调用方法

Also Published As

Publication number Publication date
CN113044458B (zh) 2022-05-27

Similar Documents

Publication Publication Date Title
CN113044458B (zh) 一种物流机器人动态任务分配方法及系统
CN109447317B (zh) 一种基于多人同时拣货的仓库最短路径优化方法
CN113408771B (zh) 物品出库调度方法、装置以及存储介质
CN112685138B (zh) 云环境下基于多种群混合智能优化的多工作流调度方法
CN112232545B (zh) 基于模拟退火算法的agv任务调度方法
CN111967672B (zh) 一种基于狮群进化算法的面向空间众包平台的路径规划方法
CN115454070B (zh) 一种K-Means蚁群算法多机器人路径规划方法
CN114862313B (zh) 一种基于bp神经网络的组合规则动态选取方法
CN111626516A (zh) 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法
CN116542365A (zh) 移动机器人履行系统中订单分配和agv调度联合优化方法
CN113960969A (zh) 一种基于大数据的物流仓储的调度方法及系统
CN113033970A (zh) 一种针对大规模任务的auv集群分层分配方法
Harris et al. A memetic algorithm for the quadratic assignment problem with parallel local search
CN113887782A (zh) 一种面向维修资源配送调度的遗传-烟花混合方法及系统
CN113706081A (zh) 基于城市屋顶自动快递装置的无人机取送货系统和方法
CN114399161A (zh) 基于离散映射差分进化算法的多无人机协同任务分配方法
CN117669992B (zh) 面向智能仓储多移动机器人实时两阶段调度方法及系统
CN116796910B (zh) 基于货物分配策略的订单分批优化方法
Chyu et al. Optimizing fuzzy makespan and tardiness for unrelated parallel machine scheduling with archived metaheuristics
CN112528524B (zh) 一种混流装配线平衡优化调度方法
CN113435805B (zh) 物品存储信息确定方法、装置、设备和存储介质
CN110689320A (zh) 一种基于协同进化算法的大规模多目标项目调度方法
CN113313447B (zh) 一种基于寄居蟹算法的立体仓库货位分配方法
CN114493181A (zh) 一种智能仓储环境下的多负载agv任务调度方法
Mirabelli et al. Adaptation of the multi-layer allocation problem for warehouse layout optimization: A case study

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: 20220527

CF01 Termination of patent right due to non-payment of annual fee