2021年中青杯A题汽车组装车间流水线物料配送问题思路

有做B题的可以点击这个链接:
2021年中青杯B题 港珠澳大桥桥梁设计与安全策略思路

完整思路:https://mianbaoduo.com/o/bread/mbd-YZmalpdq
完整代码:https://mianbaoduo.com/o/bread/mbd-YZmalpdu

题目背景:汽车制造冲压、焊接、涂装和总装四大关键工艺。总装过程中物料的配送补充,是本次题目的核心。物料补充工作称为运输,一般由拖车完成。拖车接收到任务指令后,需要进行如下操作:
1)取料:前往目标物料的存储位,将物料装载至拖车;
2)配送:将物料运送至目标工位和卸载。需要注意的是,在不超过小车容量的情况下,多个任务可以同时进行。

问题 1:某总装车间内有两条并行的流水线,其布局如图1所示,其道路关键节点和工作点见附件1。该车间共有10辆拖车,目前采用承包制,即一个拖车负责若干个工位(称为“承包区”)的配送任务,且承包区互不交叠。请根据上述信息为拖车安排承包区(每个承包区不超过5个工位)。
2021年中青杯A题汽车组装车间流水线物料配送问题思路_第1张图片

图1:总装车间分为三个区域,其中I区和II区为装配区,III区为仓库。
I区和II区中,蓝色折线为两条相同的流水线,其附近的蓝色圆点为工位和编号。III区中,红色为存储点,其中工位和仓库点编号为一一对应,即k号工位需求的零件储存在k号仓储位。绿色为道路,小车必须遵循道路行进,至目标工位/仓储位最近点(工作点)执行操作。车间的左下角为坐标原点,附件1为道路上若干关键节点和工位/仓储位的工作点坐标。

分析题意:10辆拖车负责2条流水线共48个工位,采用承包制,要求每个承包区不超过5个工位,承包区互不交叠。

思路:
此问未要求优化,可以简单进行划分,根据初始划分的不同会影响后续题目的解答。也可以使用各工位彼此间距离进行聚类,可以获得所有的承包区内部工位之间距离最短的承包区划分方案。
第一步:
将道路节点、工作点坐班及任务数据进行处理,导入matlab。在将数据与车间示意图进行对比时发现,题目给出的总装车间Ⅲ号区域的坐标数据存在错误,若以车间左下角为坐标原点,Ⅲ-1 的坐标不应为(63,131.5),将数据修正后录入。
第二步:
考虑道路行走的实际情况。计算工位和存储点两两之间的距离。比对数据发现,道路关键节点的纵坐标与工作点和存储点的纵坐标一致,如下图所示,C点纵坐标与Ⅲ-20纵坐标一致。因此可以假设工作点和存储点紧贴道路。

2021年中青杯A题汽车组装车间流水线物料配送问题思路_第2张图片

第三步:
根根据48个工位之间的距离,确定十个拖车的承包区。随机确定两个1-10之间的整数,用于确定哪个承包区比5个工位少一个。以一个随机点a1为起始位置,寻找最近的a2-a4/5点,将这几个点排除后,再找距离a1最近的一个点作为b1。以b1为起始位置,从排除了a1-a4/5的点中寻找最近的b2-b4/5点……,直到j。至此,将48个工位划分为a~j十个承包区。
完整思路:https://mianbaoduo.com/o/bread/mbd-YZmalpdq
完整代码:https://mianbaoduo.com/o/bread/mbd-YZmalpdu
问题 3:问题2中的方案能否杜绝停线情况?若能,请解释原因;若不能,请改进或设计一种新的机制,并验证其效果。

分析题意:能否杜绝停线的情况,主要取决于各需求工位的需求时间之间是否贴近,如果有m个工位的需求时间相近(小于在两个工位之间移动所需时间),而可用的拖车数量n小于m时,则必会停线。不过实际计算时还需考量这m个工位两两之间的距离。

思路:若能够杜绝停线,则必然与其上相反;若不能,新机制建议可对10台拖车进行灵活调配,在现有拖车不能避免停线时,增加可使用的拖车数量。
经过编程发现,依靠需求时间的先后顺序安排派送方案的情况下,附件2给出的任务无法杜绝停线。避免停线的方法就是增加拖车数量。
且有的工位的需求时间过短,如任务2中第二个需求,需求工位是Ⅰ-7,需求时间是62s。拖车从B出发到Ⅲ-7取货再送到Ⅰ-7的距离为351.5m,所需时间为73.3s,已经大于62s。

所以哪怕此拖车只完成这一个需求,都会造成停线。
这一问程序与问题二的程序不同的地方主要在第二步。
第一步:筛选允许拖车在工位之间连续配送的关联工位。
第二步:随机设置配送顺序,记录每一次的最大停线时间PauseTimeMax,保存最大停线时间最短的一次的配送顺序。随机生成k次,k可进行修改,循环第三步到第六步,如果寻找到更小的最大停线时间,则进行第七步。
第三步:根据配送方案计算配送过程中造成的停线时间。
第四步:根据配送方案求取件路径及距离,再算出取件时间。
第五步:计算取件时间过长造成的停线时间
第六步:计算总停线时间和最大停线时间。
第七步:判断此次最大停线时间是否小于之前记录的最大停线时间。

你可能感兴趣的:(数学建模)