一种人机协同混流装配线平衡问题的解决方法和装置

文档序号:32981984发布日期:2023-01-17 22:11阅读:185来源:国知局
一种人机协同混流装配线平衡问题的解决方法和装置

1.本发明涉及管理科学技术领域,特别是指一种人机协同混流装配线平衡问题的解决方法和装置。


背景技术:

2.制造业是国民经济的重要一环,作为一种面向流程的生产系统,装配线运转率与制造企业的生产效率息息相关,其中,装配线平衡问题 (assembly line balancing problem, albp) 是关键的装配调度问题。随着智能制造的深入推进,将工业机器人引入人工装配线开展人机协同装配受到学术界和工业界的广泛关注,人机协同装配线研究具有重要的理论意义和实践价值。同时,社会经济的发展和人民生活水平的提高,促使消费者的个性化产品需求增多,此类产品生产规模通常不是太大,但品种丰富,企业一般不会单独新建装配线来生产各类产品。因此,为快速响应市场、满足生产平准化需求,混流装配线得到广泛运用。混流装配线是指在同一条装配线上连续生产结构相似、工艺接近的多种类产品,进一步提高了装配过程的灵活性和适应性,同时其平衡问题也更为复杂。因此,人机协同混流装配线平衡问题(mixed-model assembly line balancing problem with human-robot collaboration, malbp-hrc)研究具有重要的理论价值和实践意义。
3.当前malbp-hrc不仅需要分配工序,还需要调度机器人资源和确定工序的加工方式(人工加工、机器人加工和人机协同加工),增加了问题的复杂性,同时在多产品混线生产场景下,进一步增加了问题的求解难度。


技术实现要素:

4.本发明提供了一种人机协同混流装配线平衡问题的解决方法和装置,用以解决人机协同混流装配线平衡问题。所述技术方案如下:一方面,提供了一种人机协同混流装配线平衡问题的解决方法,所述方法包括:将人机协同混流装配线平衡问题malbp-hrc的原问题分解为一个主问题和多个子问题,所述主问题用于确定机器人分配、工序分配以及工序的加工方式,所述子问题用于确定工序的具体加工时间;采用加强策略和两阶段的主问题求解框架对所述主问题进行模型求解;当完成所述主问题的求解后,用所述子问题来验证当前主问题的解;当所述当前主问题的解对所有子问题都可行,那么所述当前主问题的解就是一个可行解或最优解;如果存在子问题不可行,那么所述当前主问题的解就是不可行的,则生成相应的割cut,并加入到主问题中,以此循环往复迭代,直至所有子问题都可行。
5.可选地,所述加强策略包括以下至少一种:1)计算所述原问题的节拍时间的上下限,并在算法迭代过程中动态更新;2)计算工序的最早加工工位和最晚加工工位,进一步压缩模型求解空间;3)计算两个工序间的最小间隔工位数,并作为约束添加到模型中;
4)在第三个加强策略的基础上,计算不能分配到同一个工位中的工序对,进一步加速模型求解。
6.可选地,采用两阶段的主问题求解框架对所述主问题进行模型求解,具体包括:在第一阶段中,将第一阶段主问题的目标函数设为0,使所述第一阶段主问题的节拍时间不超过所述原问题的节拍时间的下限,进行可行性验证,如果可行,则所述原问题的节拍时间的下限即为主问题的节拍时间;如果不可行,则将所述原问题的节拍时间的下限值增加1,完成原问题节拍时间下限的更新并继续求解;如果在一定时限内,无法判断所述第一阶段主问题的可行性,则进入第二阶段;在第二阶段中,第二阶段主问题模型与原始的主问题模型相同,区别在于所述第二阶段主问题模型被允许在一定的误差gap值内求解。
7.可选地,所述用所述子问题来验证当前主问题的解,具体包括:malbp-hrc混流装配多种不同类型的产品,为每种类型产品的每个工位建立一个所述子问题,所述子问题用于计算当前工位中工序的具体加工时间;对于有机器人的工位,计算各个工序的开始时间以及工位的完工时间,如果工位的完工时间不超过所述主问题节拍时间,则当前子问题可行,反之,则不可行。
8.可选地,所述cut的生成具体包括:当所述子问题不可行时,所述主问题提供的解不符合实际需求,生成所述cut,并加回到主问题中;采用三角搜索triangle_search、交叉搜索cross_search和非活跃搜索inactive_search,以及剪枝策略,找出不可行工序子集,生成新的cut。
9.可选地,在进行搜索时,对当前工位中机器人侧以及人工侧的工序分别处理,当前选中工序被视为活跃工序,所述triangle_search采用三角角度搜索,将活跃工序、活跃工序对侧上的前驱工序和后继工序三者视为一个三角工序集,计算并验证其可行性,总加工时间超过所述主问题的节拍时间的上限则不可行,反之可行;所述cross_search使用交叉角度搜索,将活跃工序同侧前驱任务、活跃工序、活跃工序对侧后继任务,以及活跃工序对侧前驱任务、活跃工序、活跃工序同侧后继任务分别视为待验证的任务集,计算并验证其可行性;所述inactive_search是对于所述triangle_search的三角工序集和所述cross_search的待验证的任务集,分别增加当前工位上加工时间最长的非活跃工序。
10.可选地,所述方法的优化目标是最小化节拍时间,所述主问题所计算的节拍时间是所述原问题的下限;而所述子问题计算所得的各工位完工时间最大值是所述原问题的上限。
11.另一方面,提供一种人机协同混流装配线平衡问题的解决装置,所述装置包括:分解模块,用于将人机协同混流装配线平衡问题malbp-hrc的原问题分解为一个主问题和多个子问题,所述主问题用于确定机器人分配、工序分配以及工序的加工方式,所述子问题用于确定工序的具体加工时间;求解模块,用于采用加强策略和两阶段的主问题求解框架对所述主问题进行模型求解;验证模块,用于当完成所述主问题的求解后,用所述子问题来验证当前主问题的
解;当所述当前主问题的解对所有子问题都可行,那么所述当前主问题的解就是一个可行解或最优解;如果存在子问题不可行,那么所述当前主问题的解就是不可行的,则所述装置还包括生成模块,用于生成相应的割cut,并加入到主问题中,以此循环往复迭代,直至所有子问题都可行。
12.另一方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述人机协同混流装配线平衡问题的解决方法。
13.另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述人机协同混流装配线平衡问题的解决方法。
14.本发明提供的技术方案带来的有益效果至少包括:本发明有助于填补当前人机协同混流装配线平衡问题中的算法不足,不仅可以高效解决大规模算例,提供有质量保障的解,同时算法不依赖于算例本身,具有良好的适用性。
附图说明
15.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
16.图1是本发明实施例提供的一种人机协同混流装配线平衡问题的解决方法流程图;图2是本发明实施例提供的一种人机协同混流装配线平衡问题的解决方法的详细步骤流程图;图3是本发明实施例提供的一种人机协同混流装配线平衡问题的解决装置框图;图4是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
17.为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
18.如图1所示,本发明实施例提供了一种人机协同混流装配线平衡问题的解决方法,所述方法包括:s1、将人机协同混流装配线平衡问题malbp-hrc的原问题分解为一个主问题和多个子问题,所述主问题用于确定机器人分配、工序分配以及工序的加工方式,所述子问题用于确定工序的具体加工时间;s2、采用加强策略和两阶段的主问题求解框架对所述主问题进行模型求解;s3、当完成所述主问题的求解后,用所述子问题来验证当前主问题的解;s4、当所述当前主问题的解对所有子问题都可行,那么所述当前主问题的解就是
一个可行解或最优解;如果存在子问题不可行,那么所述当前主问题的解就是不可行的,则生成相应的割cut,并加入到主问题中,以此循环往复迭代,直至所有子问题都可行。
19.下面结合图2,对本发明实施例提供的一种面向人机协同混流装配线平衡问题的解决方法进行详细的说明,所述方法包括:(1)原问题分解albp已经是np-困难问题,在引入机器人资源以及混合模型等元素后,问题复杂度进一步提高,直接求解malbp-hrc难度较大。
20.本发明实施例将malbp-hrc的原问题分解为一个主问题和多个子问题。本发明实施例首先确定将原问题分解为什么样的主问题和什么样的子问题。具体的,本发明实施例确定的所述主问题用于确定机器人分配、工序分配以及工序的加工方式,所述子问题用于确定工序的具体加工时间。
21.对于malbp-hrc,包括如下四个关键决策点:机器人分配、工序分配、工序加工方式确定、工序具体加工时间,分别对应原问题的相关数学表达式;通过将机器人分配、工序分配、工序加工方式确定相关的数学表达式进行建模,就完成了主问题的建模过程;类似的,通过将工序具体加工时间相关的数学表达式进行建模,就完成了子问题的建模过程。
22.所述工序的加工方式包括:人工、机器人和人机协同;所述子问题用于确定工序的具体加工时间,主要是指确定工序的开始时间,因为某一道工序的某一种加工方式的加工时间是已知的,所以,在主问题确定了机器人分配、工序分配以及工序的加工方式的基础上,子问题确定了某一道工序的开始时间,则该工序的完工时间也能得出。
23.(2)为主问题添加加强策略对所述主问题进行模型求解的基本求解过程是已经公知的技术,可以包括:机器人分配、工序分配以及工序的加工方式由模型的相关变量进行定义,根据变量的初始范围,结合各约束情况,确定模型的解空间;在求解过程中,对所述解空间中的每一个节点,对应一个解决方案,在所述解空间中进行搜索,并使用数学求解器计算所述每一个节点相应的目标值,也就是主问题的节拍时间,所述每一个节点是指各变量的一个组合,也就是机器人分配、工序分配以及工序的加工方式;通过不断的搜索,最终确定模型最优的目标值,即所述主问题的节拍时间,以及对应的解决方案,也就是机器人分配、工序分配以及工序的加工方式。
24.所述节拍时间:流水线上,连续完成两个产品之间的间隔时间,等于各个工位完工时间的最大值。
25.为进一步提高主问题的计算效率,本发明实施例在已知的模型求解的基础上,采用多种加强策略,并且采用两阶段的主问题求解框架。
26.可选地,加强策略包括以下至少一种:1)计算所述原问题的节拍时间的上下限,并在算法迭代过程中动态更新;本发明实施例通过计算原问题目标值,也就是节拍时间的上限和下限,并在求解过程中动态更新;通过夹逼的方式,不断压缩上下限间的空间,即增大下限值,减小上限值,当上限等于下限时,完成原问题的最优求解;如果上限不等于下限,即没能最优求解,也可以通过比较上下限间差距,得到具有一定误差gap的解,提供比较有质量保障的解。
27.在原问题中,每个工位至少分配有一个工序,因此所有工序的三种加工方式的加工时间的最小值,一定是工位完工时间的下限,同时由于节拍时间是各工位完工时间的最大值,因此,所有工序的三种加工方式的加工时间的最小值一定是节拍时间的下限。
28.对于上限,将malbp-hrc的机器人资源去掉,就变成了混流装配线平衡问题malbp,因为去掉了机器人资源,malbp节拍时间会等于或长于malbp-hrc节拍时间,即malbp的节拍时间是malbp-hrc的上限,通过使用已有成熟的malbp上限计算方法,计算求得malbp的上限,也是malbp-hrc节拍时间的上限。
29.节拍时间的上下限将在子问题和主问题求解过程中动态更新。
30.2)计算工序的最早加工工位和最晚加工工位,进一步压缩模型求解空间;对于malbp-hrc,每个工序可能存在前驱工序或后继工序,当前工序只能在前驱工序都加工完成后,才能开始加工;类似的,只有当前工序完成后,其后继工序才能开始加工。
31.使用前向搜索计算工序的最早开始加工时间。从前往后,即从编号为1的工序开始搜索,找出当前工序的链式前驱工序集,即,前驱工序中彼此具有先后关系的工序的集合,然后计算各链式前驱工序集加工时间总和的最大值,这个最大值就是当前工序的最早开始加工时间。
32.然后,将工序最早开始加工时间除以原问题节拍时间的上限,即可得工序最早加工工位。
33.使用反向搜索计算工序的最晚结束加工时间。从后往前,即从编号最大的工序开始搜索,找出当前工序的链式后继工序集,即,后继工序中彼此具有先后关系的工序的集合,然后计算各链式后继工序集加工时间总和的最大值,将工位数量乘以节拍时间上限减去当前最大值后,所得到的就是工序最晚结束加工时间。
34.然后,将工序最晚结束加工时间除以原问题节拍时间的下限,即可得工序最晚加工工位。
35.3)计算两个工序间的最小间隔工位数,并作为约束添加到模型中;对于给定的两个工序i和j,工序i的最早和最晚加工工位分别为a和b,工序j的最早和最晚加工工位分别为c和d;如果b小于c或者d小于a,则c-b或a-d则为工序i和j的最小间隔工位数,否则,最小间隔工位数为0。
36.4)在第三个加强策略的基础上,计算不能分配到同一个工位中的工序对,进一步加速模型求解。
37.如果两个工序间的最小间隔工位数大于1,则说明这两个工序无法分配到一个工位中,即为不可兼容的工序对。
38.(3)求解两阶段主问题在本发明实施例中,主问题用于确定机器人分配、工序分配以及工序的加工方式,整体复杂性较高,如果直接求解的话,求解时间可能较长,因此,本发明实施例提出一个两阶段的主问题求解框架,所述两阶段的主问题求解框架包括:在第一阶段中,将第一阶段主问题的目标函数设为0,使所述第一阶段主问题的节拍时间不超过所述原问题的节拍时间的下限,进行可行性验证,如果可行,则所述原问题的节拍时间的下限即为主问题的节拍时间;如果不可行,则将所述原问题的节拍时间的下限值增加1,完成原问题节拍时间下限的更新并继续求解;如果在一定时限内,无法判断所述
第一阶段主问题的可行性,则进入第二阶段;在第二阶段中,第二阶段主问题模型与原始的主问题模型相同,区别在于所述第二阶段主问题模型被允许在一定的误差gap值内求解。
39.如果第二阶段主问题最后求解的gap值为0,即问题被完全求解,由于后续求解过程中,cut越加越多,约束也更多,原问题的节拍时间会越来越大,因此当前第二阶段主问题所求的节拍时间一定是原问题节拍时间的一个新的下限,则使用当前第二阶段主问题所求的节拍时间替换原问题节拍时间的下限,完成原问题节拍时间下限的更新。
40.所述误差gap等于(解的上限-解的下限)/解的上限。
41.采用两阶段的主问题求解框架,可以实现求解质量和求解效率间的良好匹配。
42.(4)子问题验证当完成所述主问题的求解后,用所述子问题来验证当前主问题的解;当所述当前主问题的解对所有子问题都可行,那么所述当前主问题的解就是一个可行解或最优解;如果存在子问题不可行,那么所述当前主问题的解就是不可行的,则生成相应的割cut,并加入到主问题中,以此循环往复迭代,直至所有子问题都可行。
43.所述用所述子问题来验证当前主问题的解,具体包括:malbp-hrc混流装配多种不同类型的产品,为每种类型产品的每个工位建立一个所述子问题,所述子问题用于计算当前工位中工序的具体加工时间;对于malbp-hrc,机器人的数量通常少于工位数量,当工位没有被分配机器人,其子问题不用刻意计算,其工位的完工时间等于各个工序人工加工时间的总和;对于有机器人的工位来说,计算各个工序的开始时间以及工位的完工时间,如果工位的完工时间不超过所述主问题节拍时间,则当前子问题可行,反之,则不可行。
44.使用和主问题类似的数学求解器来对子问题进行模型求解,包括计算各个工序的开始时间以及工位的完工时间。
45.所述可行解是指当前的解决方案是原问题的一个可行的解决方案,当前解的目标值通常具有一定的误差gap。
46.所述最优解是一个可行解,当当前解目标值误差gap等于0时,当前解为最优解。
47.(5)生成cut当所述子问题不可行时,所述主问题提供的解不符合实际需求,生成cut,并加回到主问题中,以避免所述主问题再次产生类似不可行的解;所述cut,是用于压缩原问题的可行域,产出符合子问题要求的解。
48.为了进一步收紧所述主问题,在常用cut基础上,采用三角搜索triangle_search、交叉搜索cross_search和非活跃搜索inactive_search等多种搜索策略,以及剪枝策略,以找出不可行工序子集,生成新的cut,加速问题求解。
49.可选地,当某个子问题不可行时,那么当前工位完工时间一定超过了所述主问题的节拍时间,即当前工位所分配的工序过多,常用cut是一些经常使用的cut,用于避免当前工位的所有工序再次被分配到同一工位中;在进行搜索时,对当前工位中机器人侧以及人工侧的工序分别处理,当前选中工序被视为活跃工序,所述triangle_search主要采用三角角度搜索,将活跃工序、活跃工序对侧上的前驱工序和后继工序三者视为一个三角工序集,计算并验证其可行性,总加工时
间超过所述主问题的节拍时间的上限则不可行,反之可行;所述计算并验证其可行性,具体包括:将所述三角工序集里的工序加工时间求和得到所述总加工时间,所述总加工时间超过所述主问题的节拍时间的上限则不可行,反之可行。
50.所述cross_search使用交叉角度搜索,将活跃工序同侧前驱任务、活跃工序、活跃工序对侧后继任务,以及活跃工序对侧前驱任务、活跃工序、活跃工序同侧后继任务分别视为待验证的任务集,计算并验证其可行性;所述计算并验证其可行性,具体包括:将所述待验证的任务集里的工序加工时间求和得到所述总加工时间,所述总加工时间超过所述主问题的节拍时间的上限则不可行,反之可行。
51.所述inactive_search是对于所述triangle_search的三角工序集和所述cross_search的待验证的任务集,分别增加当前工位上加工时间最长的非活跃工序。
52.所述inactive_search,具体包括:将所述当前工位上加工时间最长的非活跃工序和所述三角工序集里工序求和,得到所述总加工时间,所述总加工时间超过所述主问题的节拍时间的上限则不可行,反之可行;或者将所述当前工位上加工时间最长的非活跃工序和所述待验证的任务集里工序求和,得到所述总加工时间,所述总加工时间超过所述主问题的节拍时间的上限则不可行,反之可行。
53.所述剪枝策略则用来进一步精简搜索策略给出的不可行工序集,找出新的不可行工序子集。
54.可选地,所述方法的优化目标是最小化节拍时间,同时,因为所述主问题是去掉了所述原问题的工序的具体加工时间这一约束,因此所述主问题所计算的节拍时间是所述原问题的下限;而所述子问题计算所得的各工位完工时间最大值是所述原问题的上限。
55.所述子问题根据主问题所给出的工序分配、机器人分配和加工方式分配,计算各工序的具体加工时间以及各工位的完工时间,如果所述各子问题各工位的完工时间均小于主问题节拍时间,即,所有子问题都可行,此时各子问题所求解的工序加工时间分配是一个可行解,各工位完工时间最大值也是所述原问题的上限,此时使用当前各工位完工时间最大值替换原问题的上限,完成原问题上限的更新。
56.通过对比主问题和子问题的解的质量,就可以评价当前解的质量。
57.另一方面,还提供了一种人机协同混流装配线平衡问题的解决装置,如图3所示,所述装置包括:分解模块310,用于将人机协同混流装配线平衡问题malbp-hrc的原问题分解为一个主问题和多个子问题,所述主问题用于确定机器人分配、工序分配以及工序的加工方式,所述子问题用于确定工序的具体加工时间;求解模块320,用于采用加强策略和两阶段的主问题求解框架对所述主问题进行模型求解;验证模块330,用于当完成所述主问题的求解后,用所述子问题来验证当前主问题的解;当所述当前主问题的解对所有子问题都可行,那么所述当前主问题的解就是一个
可行解或最优解;如果存在子问题不可行,那么所述当前主问题的解就是不可行的,则所述装置还包括生成模块340,用于生成相应的割cut,并加入到主问题中,以此循环往复迭代,直至所有子问题都可行。
58.本发明实施例提供的一种人机协同混流装配线平衡问题的解决装置,其功能结构与本发明实施例提供的一种人机协同混流装配线平衡问题的解决方法相对应,在此不再赘述。
59.图4是本发明实施例提供的一种电子设备400的结构示意图,该电子设备400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)401和一个或一个以上的存储器402,其中,所述存储器402中存储有至少一条指令,所述至少一条指令由所述处理器401加载并执行以实现上述人机协同混流装配线平衡问题的解决方法的步骤。
60.在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述人机协同混流装配线平衡问题的解决方法。例如,所述计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
61.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
62.以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1