作者简介:本人擅长运筹优化建模及算法设计,包括各类车辆路径问题、生产车间调度、二三维装箱问题,熟悉CPLEX和gurobi求解器
微信公众号:运筹优化与学习
如有运筹优化相关建模或代码定制需求,可通过微信公众号联系我们
前言
之前和大家介绍了二维装箱问题、三维装箱问题,如果大家感兴趣可以看之前的几篇推文:
今天这篇推文将介绍考虑二维装箱的车辆路径问题(Two-dimensional loading constrained vehicle routing problem, 2L-VRP)
问题简介
在传统的车辆路径问题的基础上,Iori等率先考虑运输货物的二维尺寸,首次将二维装箱问题与VRP问题相结合提出了2L-VRP。区别于传统车辆路径问题,2L-VRP将客户需求的货物明确为已知长度、宽度和数量的物料箱,故不仅需要考虑车辆的最大载重,还需要考虑货物的合理摆放。
根据是否考虑物料箱装载顺序(即先进后出约束)以及是否允许二维平面上旋转,将2L-VRP分为四类:
(1) 2|UO|L:不考虑先进后出约束且货物不可旋转;
(2) 2|UR|L:不考虑先进后出约束,货物允许二维平面上的旋转;
(3) 2|SO|L:考虑先进后出约束,货物不可旋转;
(4) 2|SR|L:考虑先进后出约束且货物允许二维平面上的旋转。
模型构建
将2L-VRP定义为完备的有向图 G = ( V , E ) G=(V,E) G=(V,E),其中所有节点集合 V = 0 ∪ V 0 V={0}∪V_0 V=0∪V0,0表示配送中心,客户点集合 V 0 = { 1 , 2 , ⋯ , v } V_0=\left\{1,2,⋯,v\right\} V0={1,2,⋯,v};弧集合 E = { ( i , j ) ∣ i , j ∈ V } E=\left\{(i,j)|i,j∈V\right\} E={(i,j)∣i,j∈V}, c i j c_{ij} cij为节点 i i i和 j j j之间的运输成本。每个客户 i i i的货物需求量为 q i q_i qi,矩形物料箱个数为 m i m_i mi。客户 i i i的第 h h h个物料箱表示为 I i h ( h ∈ Φ i ) I_{ih} (h∈Φ_i) Iih(h∈Φi),其长、宽分别为 l i h l_{ih} lih、 w i h w_{ih} wih, a i ( = ∑ h ∈ Φ i ( l i h × w i h ) ) a_i (=∑_{h∈Φ_i}(l_{ih}×w_{ih})) ai(=∑h∈Φi(lih×wih))表示客户i所有物料箱的总面积。配送中心可用于运输的车辆集合为 K K K,车辆的最大载重量为 Q Q Q,车辆长、宽分别为 L L L, W W W。
目标函数(1)表示最小化总运输成本
约束(2)确保每辆车装载的货物总重量不超过车辆最大载重
约束(3)表示每个客户仅被服务一次
约束(4)为流量守恒约束
约束(5)明确每个客户点的货物由哪辆车进行服务
约束(6)和(7)确保货物摆放位置不超出车厢范围
约束(8)-(10)表示任意两货物之间不能重叠摆放
约束(11)–(15)描述货物旋转约束以及先进后出约束
参考文献
IORI M, SALAZAR-GONZáLEZ J-J, VIGO D. An exact approach for the vehicle routing problem with two-dimensional loading constraints[J]. Transportation Science, 2007, 41(2): 253-64.