基于多Agent的图书物流配送线路优化研究
——以SF物流公司为例
2019-08-08
(天津交通职业学院,天津 300110;天津市物资贸易学校,天津 300181)
一、图书物流的特点
图书物流与其他商品的物流相比具有以下6个特点:
图书的品种繁多、需求量大,入库时需要拆包录入相关信息,出库也要再次复核,给图书进出库作业造成了一定的困难;图书的包装方式与一般物流商品不同。图书的材料为纸质,有8开本,16开本,32开本等,各类图书版面大小不同,根据价格和需求量的不同,可以选择单件包装,也可以选择纸质包装,这大大增加了采用标准化处理的难度;图书采用码洋为基本单位,增加了会计人员核算的难度;图书的ISBN码不唯一,存在一码多书的情况,这无疑给账目管理和实物管理带来困难,很难采取单一品种进行管理的策略;图书由于自身的属性,对存储保管的环境要求严格,尤其要注意温湿度、防火、防虫;图书的退货量大,提高了图书物流自动化、信息化的要求,成为长期困扰图书物流系统的难题。
二、多Agent概述
(一)Agent与多Agent的概念及系统特点
Agent的概念由麻省理工学院的著名计算机学家和人工智能学科创始人之一的Minsky率先提出的。1986年,Minsky在《思维的社会》中指出Agent是社会中的某些个体经过协商之后可求得问题的解,这些个体就是Agent,它们应具有社会交互性和智能性。由此以后,Agent的概念快速成为研究的热点问题,进而引入到人工智能和计算机领域,并迅速成为研究热点。我国许多学者也进行了大量的研究,其中刘大有教授在对 Agent 的描述基础上指出,一个Agent应该具有自治性、反应性、针对性和面向目标性四个基本特征,除此之外,还可以针对具体问题表现出其他计算机智能化的特性,如自适应性、持续性、可调节性等。
多Agent系统(Multi-Agent)是多个Agent组成的集合,也可以理解为将一个复杂的Agent系统,划分为若干个Agent的小系统。各个Agent 都具有特定的资源和功能,他们之间相互协调,相互服务,共同完成一个任务。多Agent主要研究目的是通过多个Agent所组成的交互式团体来求解超出Agent个体能力的复杂问题。因此,可以对多 Agent的定义概括为:多Agent系统由多个单个Agent组成,通过各个Agent之间的相互沟通与协助,共同完成对现实复杂多变问题的求解。与单个Agent相比,多Agent系统具有下列5个特点:对复杂问题的解决能力强:由多个Agent组合,解决能力优于单个Agent;系统更加灵活多变:为完成同一目标,各Agent既相互独立,又相互协调;系统计算能力强:各个Agent之间可以并行计算,快速对问题求解;系统扩展性能强大:各Agent之间彼此独立,增减参数、变量方便控制;系统可靠性能增强:各系统相对独立,单个Agent出现问题,具有相似功能的Agent可以代替执行,对整个系统影响小,增强系统可靠性能。
(二)多Agent建模的主要步骤
多Agent系统是由多个Agent组成,它是一种从点到面的建模方法。首先,根据问题,分析环境,将负责多变的环境进行抽象;然后,逐个建立单个Agent,并设置参数、变量等;最后,将各Agent封装在一个系统里,按照一定的规则对问题进行求解。建模的基本步骤可以概括为:第一步,对各Agent进行抽象。根据分析将负责的系统抽象为一个个独立Agent,他们可以独立完成各自任务。第二步,建立Agent模型。通过对Agent任务的分析,建立Agent,并根据各Agent的不同赋予一定的变量、参数或者函数等。第三步,构建多Agent体系。将已建立的Agent进行组合,根据设置目标,共同来完成任务。
三、多Agent在SF物流公司的应用
(一)配送现状
SF物流公司是一家专注于国内干线运输、市区配送、货物仓储、国际货代、物流解决方案策划与设计的国家5A级综合物流企业。目前,全国拥有215家分公司,自由货车1300多辆,长期加盟的社会车辆10000多辆,仓储总面积65万平方米。公司始终奉行“一切从客户的需求出发,超越客户期望”的经营理念,秉持配送速度更快一点、图书损耗更少一点、信息对接更便捷一点,增值服务再多一点的愿景,SF物流公司与时俱进、不断创新,服务的客户数量与质量递增,整体运营水平与经济效益蒸蒸日上。SF物流公司一般是当天配送前一天的图书订单,在前一天晚上已规划好配送路径并进行装车,现从众多案例中随机抽取某一天的配送订单。每一种图书的包装单位为一个标准包件,重量约为20公斤,0.03个方,配送时不满一包的按一包处理;物流配送中心拥有同一型号配送车辆12台,装载容量为500标准包件;现需将一定的数量的客户订单送到需求地点。
(二)建立数学模型
1.假设条件。在整个配送过程中,受诸多因素影响,为了方便建模和求解,需对该问题进行一定的抽象和简化。具体假设条件如下:(1) 每辆配送车的最大载重量一定,不允许超重,每个客户需求量不超过车辆的最大载重量;(2) 配送中心以及每个客户所在的地理位置已经确定;(3) 配送中心采用统一规格的配送车辆,车容确定;(4) 在配送任务开始前,所有客户的货物已经提前装上配送车辆,等待发车;(5) 在一次配送任务中,每个客户的货物不允许分批配送,且只能被一辆车服务;(6) 每辆配送车均从配送中心出发,完成配送任务后,立即返回配送中心;(7) 每辆配送车到达客户后,立即卸货,且卸货时间固定。
2.模型建立。目标函数的建立
(式4-1)
(式4-2)
(式4-3)
(式4-4)
(式4-5)
模型中相关参数定义如下:
其中,k为车辆总数,k∈{1,2,…,K};C为客户需求点总数,配送中心定义为0;Cij为由需求点i到需求点j的运输成本,其中i≠j,且i,j∈{0,1,2,…,V};Q为车辆的装载容量。
上述模型中,式(4-1)为目标函数,表示总的配送成本最低,式(4-2)为车辆的承载能力约束条件;式(4-3)保证了每个需求点的配送任务仅由一辆车服务,而所有配送任务则至多由V辆车共同完成;式(4-4)和式(4-5)限制了车辆到达和离开需求点有且仅有一辆车。
3.模型改进。通过对图书配送中心以及图书物流配送作业活动的调研分析,为了便于问题研究,将配送中心作业活动中与配送作业不直接相关的成本排除,可以将配送活动涉及的成本分为三个方面:固定成本(不随配送量和配送距离变化的成本)、单位距离变动成本和单位配送量变动成本。
结合图书物流配送所涉及的成本主要分为三个部分:与出车数量相关的成本、与图书配送量相关的成本以及与配送距离相关的成本。则对原VRP模型进行改进:
模型中相关参数定义如下:
s:单位出车固定成本
m:出车数量
u:单位配送量变动成本
Q: 客户总需求量
c:单位配送量变动成本
d:i,j之间的距离。
(三)数据整理
1.成本数据。通过对SF物流公司实地调查研究,固定成本中驾驶员基本工资与保险,主要包括基本工资、安全奖、社保、司机月雇主险,合计3315元/每人/每月;车辆的月检与流量通信费,合计300元/每人/每月;折旧及保险车船费用,其中折旧年限一般按照5-7年进行折旧,本文以5年为例,合计4800元/每辆/每月。按照1辆货车配备2个工作人员,驾驶员基本工资与保险221元/每辆/每天,车辆的月检与流量通信费20元/每辆/每天,折旧及保险车船费160元/每辆/每天,总计单位车辆固定成本是401.2元/每辆/每天。单位距离变动成本中维修费用与轮胎费用为0.8元/公里,燃油费为1.5元/公里,驾驶员变工工资0.6元/公里。单位配送量变动成本中拣选单位时间成本120元/小时,每小时拣选240包,合计拣选成本为0.5元/包,装车单位时间成本60元/小时,每小时装车120包,合计装车成本为0.5元/包。
2.客户需求数据。从众多配送量中截取某天的配送量如下表1所示:
表1 客户坐标及订单量表
3.配送优化。首先,在AnyLogic软件8.3.2版的平台界面中创建一个新的模型,将其命名为“基于多Agent的图书物流配送路径优化”。(1)系统层Agent构建。在AnyLogic中,Main层是各Agent之间创建信息的交流和交换的平台,同时该层也是进行仿真模拟运行的界面。在一个模型创建完成后,系统内部本身就已经包含一个主界面Main层,因此,在创建完模型后,仅需按照需要创建各Agent,再将各Agent与主界面Main创建联系,也就是将其他Agent拖入到Main中。在该模型中,结构层Agent有配送中心Agent、客户Agent、车辆Agent,在AnyLogic中,通过创建新智能体即可实现,分别命名为Distribution、Customer、Truck,在通过Main将其链接。对于这三个结构Agent进行各项参数的设置,其中Distribution和Customer在模型中均有名称和位置两个基本属性,一般在配送系统中都含有多个客户,需要对客户进行编码或识别不同客户。在主界面Main中加入GIS地图,建立配送的路网信息,然后将已建立的各Agent进行连接,同时将订单发送给车辆Agent,车辆接到指令后,按照设置好的路径进行配送。
目标函数:
出车成本:401 * nCars
图书配送距离成本:2.9*D(配送车辆总距离公里)
图书配送量成本:订单数*1
总成本=出车成本+图书配送距离成本+图书配送量成本
(2)结构层Agent的构建。在结构Agent层中,需要根据各Agent的不同功能来设置不同的属性,最后通过Agent之间的交流和协作共同完成配送车辆线路优化。第一步,建立配送中心Agent。创建配送中心Agent,从面板三维物体建筑物中加入配送中心库房,并对配送中心Agent进行设置。第二步,建立车辆Agent。创建车辆Agent,从面板三维物体中道路运输中加入货车,并对配送中心Agent进行设置。第三步,创建客户Agent。创建客户Agent,从面板三维物体建筑物中加入客户仓库,并对客户Agent进行设置。第四步,对所创建多Agent进行求解。完成上面的操作后,点击基于多Agent的图书物流配送路径优化运行按钮,模型即开始运行,经过一段时间的运行,生成车辆配送方案和目标函数,如下:
路线1:配送中心—客户4—客户5—客户3—配送中心
路线2:配送中心—客户8—客户7—客户6—配送中心
路线3:配送中心—客户2—配送中心
路线4:配送中心—客户1—配送中心
总成本=出车成本+图书配送距离成本+图书配送量成本=3441.41
五、结论
本文主要讲出车成本、图书配送距离成本和图书配送量成本作为总成本,下面通过表格的方式对优化前后的成本做简单的分析。
表2 配送路线优化线路前后的线路效益对比
由表2中,我们可以从总成本节约了571.17,这样不仅缩短了图书配送的距离和时间,更使配送中心有 辆配送车辆闲置,就可以用来应对紧急状况,或者可以提前配送较远地区的图书或其他物品等,有利于提高车辆的利用率,降低运输成本,使运输效率达到更高,从整体上提高了配送效率和服务质量以及企业的信誉。同时采用模拟仿真,不仅可以看到每辆车在实际配送中的动态过程,直到配送过程结束,还可以直观地看到最优化配送路线及总配送成本,为图书物流配送路线优化提供重要参考。