一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种向驾驶者推荐货源的方法及装置与流程

2022-09-15 05:20:26 来源:中国专利 TAG:


1.本技术总体涉及推荐算法,特别是涉及一种向驾驶者推荐货源的方法及装置、电子设备、计算机可读介质。


背景技术:

2.随着我国网络基础建设的实施,互联网已成为大众生活不可分割的一部分。各种基于互联网的应用如雨后春笋般涌现,网络技术已经深入改造了传统产业的各方各面,同样互联网技术也为物流行业开辟了新的天地。如何发挥互联网技术的优势,整合闲散社会运力资源,提高物流效率就成了物流行业的迫切需求。
3.物流行业中,尤其是干线整车、沿海散货,都存在大量计划物流的场景。例如生产企业发布全年或季度物流计划,在一定周期内按计划运输货物的场景非常普遍。反观承运方群体,大多按照单程承接业务,运输任务不够连续,空驶率高,运营成本高。


技术实现要素:

4.针对现有技术的缺陷,本技术提供了一种向驾驶者推荐货源的方法及装置、电子设备、计算机可读介质,改进现有技术中存在的诸多问题。
5.本技术提供了一种向驾驶者推荐货源的方法,包括:获取多个货源的货源信息及运输需求;获取驾驶者信息以及运输工具信息,所述驾驶者信息包括驾驶者基础信息和运输计划信息;确定多个标签及其权重,所述多个标签至少包括时间匹配标签和地点匹配标签,所述时间匹配标签用于指示驾驶者与货源在时间这个维度上的匹配度,所述地点匹配标签用于指示驾驶者与货源在地点这个维度上的匹配度;根据所述驾驶者基础信息、所述运输计划信息、所述运输工具信息和所述货源信息及运输需求确定所述多个标签中每个标签的得分;根据每个标签的得分及其权重计算每个货源与驾驶者的匹配度得分;按照匹配度得分的高低向驾驶者推荐货源。
6.进一步地,所述多个标签还包括以下至少之一:运输工具型号匹配度标签、运输工具载重匹配度标签。
7.进一步地,获取驾驶者的运输计划信息之后,根据所述运输计划信息确定驾驶者的空闲信息,获取所述货源信息及运输需求之后,确定货源的运输需求的装货时间地点、运输需求的卸货时间地点,根据所述驾驶者的空闲信息、货源的运输需求的装货时间地点、运输需求的卸货时间地点确定所述时间匹配标签、所述地点匹配标签的得分。
8.进一步地,所述时间匹配标签包括两类时间匹配标签,其中,第一类时间匹配标签用于指示货源的运输需求的时间区间是否位于驾驶者的某一个空闲时间区间之内,所述第二类时间匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的时间区间的两个端点分别与驾驶者的该空闲时间区间的两个端点之间的时间间隔的长短。
9.进一步地,当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内
时,计算地点匹配标签的得分,其中,所述地点匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的装货地点与在驾驶者的空闲时间区间的左端点驾驶者所在地点的距离长短,以及货源的运输需求的卸货地点与在驾驶者的空闲时间区间的右端点驾驶者所在地点的距离长短。
10.进一步地,所述方法还包括优化各个标签的权重,优化各个标签的权重,具体包括:按照匹配度的高低向驾驶者推荐货源之后,记录驾驶者对货源的评价信息;根据驾驶者对货源的评价信息优化各个标签的权重。
11.进一步地,所述根据驾驶者对货源的评价信息优化各个标签的权重,具体包括:调整标签的权重,重新根据每个标签的得分及其调整后的权重计算每个货源与驾驶者的匹配度得分,并根据匹配度得分重新推荐货源;获取驾驶者对重新推荐的货源的评分;根据货源与驾驶者的匹配度得分与驾驶者对重新推荐的货源的评分之间的偏差计算推荐的偏差度参数;确定出推荐的偏差度参数最小时标签的权重,作为优化后标签的权重。
12.本技术还提供了一种向驾驶者推荐货源的装置,其特征在于,包括:第一获取单元,用于获取多个货源的货源信息及运输需求;第二获取单元,用于获取驾驶者信息以及运输工具信息,所述驾驶者信息包括驾驶者基础信息和运输计划信息;第一确定单元,用于确定多个标签及其权重,所述多个标签至少包括时间匹配标签和地点匹配标签,所述时间匹配标签用于指示驾驶者与货源在时间这个维度上的匹配度,所述地点匹配标签用于指示驾驶者与货源在地点这个维度上的匹配度;第二确定单元,用于根据所述驾驶者基础信息、所述运输计划信息、所述运输工具信息和所述货源信息及运输需求确定所述多个标签中每个标签的得分;计算单元,用于根据每个标签的得分及其权重计算每个货源与驾驶者的匹配度得分;推荐单元,用于按照匹配度得分的高低向驾驶者推荐货源。
13.进一步地,所述多个标签还包括以下至少之一:运输工具型号匹配度标签、运输工具载重匹配度标签。
14.进一步地,获取驾驶者的运输计划信息之后,根据所述运输计划信息确定驾驶者的空闲信息,获取所述货源信息及运输需求之后,所述第二确定单元确定货源的运输需求的装货时间地点、运输需求的卸货时间地点,根据所述驾驶者的空闲信息、货源的运输需求的装货时间地点、运输需求的卸货时间地点确定所述时间匹配标签、所述地点匹配标签的得分。
15.进一步地,所述时间匹配标签包括两类时间匹配标签,其中,第一类时间匹配标签用于指示货源的运输需求的时间区间是否位于驾驶者的某一个空闲时间区间之内,所述第二类时间匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的时间区间的两个端点分别与驾驶者的该空闲时间区间的两个端点之间的时间间隔的长短。
16.进一步地,当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,所述第二确定单元计算地点匹配标签的得分,其中,所述地点匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的装货地点与在驾驶者的空闲时间区间的左端点驾驶者所在地点的距离长短,以及货源的运输需求的卸货地点与在驾驶者的空闲时间区间的右端点驾驶者所在地点的距离长短。
17.进一步地,所述装置还包括优化单元,用于优化各个标签的权重,所述优化单元具
体包括:记录子单元,用于按照匹配度的高低向驾驶者推荐货源之后,记录驾驶者对货源的评价信息;优化子单元,用于根据驾驶者对货源的评价信息优化各个标签的权重。
18.进一步地,所述优化子单元具体包括:调整模块,用于调整标签的权重,重新根据每个标签的得分及其调整后的权重计算每个货源与驾驶者的匹配度得分,并根据匹配度得分重新推荐货源;获取模块,用于获取驾驶者对重新推荐的货源的评分;计算模块,用于根据货源与驾驶者的匹配度得分与驾驶者对重新推荐的货源的评分之间的偏差计算推荐的偏差度参数;确定模块,用于确定出推荐的偏差度参数最小时标签的权重,作为优化后标签的权重。
19.本技术还提供了一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的方法。
20.本技术还提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现上述的方法。
21.本发明的技术方案,通过使用时间匹配标签对驾驶者与货源在时间这个维度上进行匹配,使用地点匹配标签对驾驶者与货源在地点这个维度上进行匹配,在计算每个货源与驾驶者的匹配度得分时,加入了时间匹配和地点匹配的因素,从而筛选出与驾驶者已有的运输计划在时间和地点维度上良好衔接的运输任务,这就解决了现有技术中承运方群体大多按照单程承接业务,运输任务不够连续,空驶率高的问题,有效降低了空驶率和运营成本,并且提前对驾驶者的未来工作计划进行了安排。
附图说明
22.为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
23.图1为本技术实施例提供的一种向驾驶者推荐货源的方法的流程图;
24.图2-1、2-2、2-3、2-4为本技术实施例提供的一种驾驶者与货源进行匹配的示意图;
25.图3为本技术实施例提供的一种向驾驶者推荐货源的方法的流程图;
26.图4为本技术实施例提供的一种向驾驶者推荐货源的方法的流程图;
27.图5为本技术实施例提供的一种执行向驾驶者推荐货源的方法的系统的计算框架示意图;
28.图6为本技术实施例提供的一种向驾驶者推荐货源的装置的示意图;
29.图7为本技术实施例提供的一种电子设备的框架示意图;
30.图8为本技术实施例提供的一种计算机可读介质的框图。
具体实施方式
31.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
32.在本技术中,除非特别指出或者根据上下文的理解可以得出不同的含义,否则各个术语具有本领域通常理解的含义。
33.运输计划、运输安排、运输任务、任务的含义相同。
34.本技术提供了一种向驾驶者推荐货源的方法,如图1所示,包括以下步骤:
35.步骤s101:获取多个货源的货源信息及运输需求。
36.货源信息及运输需求可以是货品信息、货主信息、运输开始时间、运输结束时间、装货地点(gps经纬度坐标)、卸货地点(gps经纬度坐标)、运输运价等。例如,货源1需要1月2日从济南出发,1月5日到达天津。货源2需要1月7日从太原出发,1 月14日到达西安。货源3需要1月1日从济南出发,1月4日到达包头。货源4需要1 月8日从成都出发,1月12日到达杭州。货源5需要1月9日从晋中出发,1月11日到达咸阳。
37.步骤s102:获取驾驶者信息以及运输工具信息,驾驶者信息包括驾驶者基础信息和运输计划信息。
38.驾驶者基础信息可以包括驾驶者证件标号、驾驶者姓名、驾驶证信息、驾驶者的资质、驾驶者的证件信息、驾驶者的居住地、驾驶者经常跑的线路、驾驶者的历史评分等。
39.驾驶者的运输计划信息是指驾驶者的运输任务信息,包括运输任务编号、运输工具信息、驾驶者信息、运输开始时间、运输结束时间、装货地点(gps经纬度坐标)、卸货地点(gps经纬度坐标)、任务分类(历史/进行/计划)等。例如,驾驶者张三已经有了2个任务,任务1是1月4日从天津出发,运送一批货物,1月8日到太原;任务2 是1月12日从西安出发,运送一批货物,1月17日到广州。
40.运输工具即车辆、船只等具有货物运输功能的交通工具。运输工具基础信息包括运输工具牌号(如车牌号、船号)、运输工具类型(如车型、船型)、载重、长宽高、运输用途、装卸方式等。
41.步骤s103:确定多个标签及其权重,多个标签至少包括时间匹配标签和地点匹配标签,时间匹配标签用于指示驾驶者与货源在时间这个维度上的匹配度,地点匹配标签用于指示驾驶者与货源在地点这个维度上的匹配度。
42.本技术发明人发现,物流行业承运方群体空驶率高,运营成本高。发明人想到,如果能够提前安排承运人的运输任务,并让承运人的运输任务连续起来,既能够解决承运人的未来工作计划问题,又能够有效降低空驶率及运营成本。为此,本技术使用了时间匹配标签、地点匹配标签来分别在时间、空间(地点)上对驾驶员和货源进行匹配,以找到和驾驶员匹配程度高的货源以推荐给驾驶者。
43.如图2-1、2-2、2-3、2-4所示,驾驶者张三在今天(假设为1月1日)空闲,当前时刻位于济南,具有2个已经安排好的运输计划:任务1、任务2。任务1是1月4日从天津出发,运送一批货物,1月8日到太原。任务2是1月12日从西安出发,运送一批货物,1月17日到广州。
44.驾驶者张三1月4日至1月8日的时间被任务1占用,1月12日至1月17日的时间被任务2占用,驾驶者张三的空闲时间为1月1日至1月4日,1月8日至1月12日,1 月17日以后。最理想的货源推荐是推荐3个货源,分别占用上述3个空闲时间段,如图 2-1所示,货源1的出发地点是当前位置(济南),到达地点是任务1的出发地点(天津);货源2的出发地点是任务1的到达地点(太原),到达地点是任务2的出发地点(西安);货源3的出发地点是任务2的到达地点(广州),到达地点是某地(根据实际需要,可以是任意地点)。图2-1中所示的货源推荐
是最理想的情形,时间和地点都完美衔接。
45.如图2-2所示,有一个货源1,是需要1月2日从济南出发,1月5日到达天津,货源2是需要1月7日从太原出发,1月14日到达西安,货源3是需要1月15日从广州出发。从时间来说,这3个货源不应该推荐给驾驶者张三。因为如果货源1推荐给张三,那么张三1月2日从济南出发,运输货源1,1月5日到达天津,而张三原有的任务1需要1月4日从天津出发,这就耽误了任务1。货源2也不应该推荐给张三。因为货源2 需要1月7日从太原出发,而张三1月7日还在从天津到太原的途中,1月8日才能到达太原。货源3也不应该推荐给张三。因为货源3需要1月15日从广州出发,而1月15 日张三还在从西安到广州的途中,1月17日才能到达广州。
46.如图2-3所示,有一个货源1,是需要1月1日从济南出发,1月4日到达包头,货源2是需要1月8日从成都出发,1月12日到达杭州,货源3是需要1月17日从大连出发。这3个货源不应该推荐给驾驶者张三。因为如果货源1推荐给张三,那么张三1 月1日从济南出发,运输货源1,1月4日到达包头,而张三原有的任务1需要1月4日从天津出发,包头距离天津很远,张三1月4日到达包头后,无法当天再从天津出发执行任务1,这就耽误了任务1。货源2也不应该推荐给张三。因为货源2需要1月8日从成都出发,而张三1月8日执行完任务1到达太原,太原距离成都很远,无法当天再赶到成都运输货源2。货源3也不应该推荐给张三。因为货源3需要1月17日从大连出发,而1月17日张三执行完任务3到达广州,广州距离大连很远,无法当天再赶到大连运输货源3。
47.如图2-4所示,有一个货源1,是需要1月2日从淄博出发,1月3日到达大兴,货源2是需要1月9日从晋中出发,1月11日到达咸阳,货源3是需要1月18日从佛山出发。这3个货源与驾驶者张三从时间和地点上来说均较为匹配,可以推荐给张三。具体来说,张三可于1月2日从淄博出发,装载货源1,于1月3日到达大兴,将货源1 卸货后赶往天津,由于大兴与天津之间的距离较近,可于1月4日之前赶到天津,1月4 日从天津出发,1月8日到达太原,以执行任务1。然后从太原赶往晋中,1月9日在晋中装载货源2,1月11日到达咸阳,将货源2卸货后赶往西安。由于咸阳与西安之间的距离较近,可于1月12日之前赶到西安。1月12日从西安出发,1月17日到达广州,以执行任务2。然后从广州赶往佛山,由于广州与佛山之间的距离较近,可于1月18日之前赶到佛山。1月18日在佛山装载货源3并出发。
48.步骤s104:根据驾驶者基础信息、运输计划信息、运输工具信息和货源信息及运输需求确定多个标签中每个标签的得分。
49.步骤s105:根据每个标签的得分及其权重计算每个货源与驾驶者的匹配度得分。
50.步骤s106:按照匹配度得分的高低向驾驶者推荐货源。
51.可以将时间匹配标签和地点匹配标签的权重设置得较高,这样就能使得时间符合和地点符合的货源脱颖而出,取得较高的匹配度得分,从而能够被推荐给驾驶者。
52.可选地,多个标签还包括以下至少之一:运输工具型号匹配度标签、运输工具载重匹配度标签。
53.在本技术中,有一类标签,具有双重筛选作用,在整个向驾驶者推荐货源的方法中实施了两次筛选,第一次筛选的过程不涉及标签的得分,第二次筛选的过程才涉及标签的得分。如果顺利通过了第一次筛选,才能有资格进入第二次筛选。如果第一次筛选失败了,则结束匹配过程,直接认定不推荐。这就像是考试,用60分作为及格分,如果一个学生超过了60分,则通过了第一次筛选,这种情况下需要展示该学生的实际分数(类似于第二次筛
选);如果一个学生得分小于60分,则不通过第一次筛选,这种情况下仅需要展示该学生未通过,并不展示实际分数,例如,学生李四的分数为88分,学生王五的分数为60分,学生赵六的分数为不及格。
54.不同运输工具的载重能力是不同的,例如,驾驶者1的运输工具为车辆1,车辆1 的载重能力为1.8吨;驾驶者2的运输工具为车辆2,车辆2的载重能力为6吨;驾驶者 3的运输工具为车辆3,车辆3的载重能力为14吨;驾驶者4的运输工具为车辆4,车辆 4的载重能力为100吨;驾驶者5的运输工具为车辆5,车辆5的载重能力为150吨。
55.不同的货源对运输工具的载重能力的要求是不同的。
56.例如,假设货源1的重量为110吨,在根据运输工具载重匹配度进行匹配的时候,货源1的重量超出了车辆1、2、3、4的载重能力,与驾驶者1、2、3、4均匹配失败,其余标签的匹配度不再进行计算,货源1不会推荐给驾驶者1、2、3、4。货源1的重量在车辆5的载重能力之内,与驾驶者5匹配成功,其余标签的匹配度继续进行计算,货源1可能会被推荐给驾驶者5。
57.例如,假设货源2的重量为10吨,在根据运输工具载重匹配度进行匹配的时候,货源2的重量超出了车辆1、2的载重能力,与驾驶者1、2均匹配失败,其余标签的匹配度不再进行计算,货源1不会推荐给驾驶者1、2。货源2的重量在车辆3、4、5的载重能力之内,与驾驶者3、4、5匹配成功。其余标签的匹配度继续进行计算,货源2可能会被推荐给驾驶者3、4、5。需要注意的是,虽然,货源2与驾驶者3、4、5均匹配成功,但是这三次匹配在运输工具载重匹配度标签这个维度的得分并不相同,其中,货源2与驾驶者3在运输工具载重匹配度标签这个维度的得分是最高的,货源2与驾驶者5在运输工具载重匹配度标签这个维度的得分是最低的。
58.不同的货源对运输工具的型号的要求是不同的。例如,车型分为平车、自卸车、牵引车、箱车、半挂等。通过运输工具型号匹配度标签这个标签筛选出型号符合货源要求的车辆。
59.请参见图3,可选的,本技术实施例提供的向驾驶者推荐货源的方法包括以下步骤:
60.步骤s301:驾驶者信息采集。驾驶者信息可以包括驾驶者证件标号、驾驶者姓名、驾驶证信息、驾驶者的资质、驾驶者的证件信息、驾驶者的居住地、驾驶者经常跑的线路、驾驶者的历史评分等。
61.步骤s302:运输工具基础信息采集。运输工具即车辆、船只等具有货物运输功能的交通工具。运输工具基础信息包括运输工具牌号(如车牌号、船号)、运输工具类型(如车型、船型)、载重、长宽高、运输用途、装卸方式等。
62.步骤s303:现有运输计划信息采集。现有运输计划指的是驾驶者已有的任务,包括运输任务编号、运输工具信息、驾驶者信息、运输开始时间、运输结束时间、装货地点 (gps经纬度坐标)、卸货地点(gps经纬度坐标)、任务分类(历史/进行/计划)等。例如,驾驶者张三已经有了2个任务,任务1是1月4日从天津出发,运送一批货物,1 月8日到太原,任务2是1月12日从西安出发,运送一批货物,1月17日到广州。
63.步骤s304:货源信息及运输需求采集。货源信息及运输需求可以是货品信息、货主信息、运输开始时间、运输结束时间、装货地点(gps经纬度坐标)、卸货地点(gps 经纬度坐标)、运输运价等。例如,货源1需要1月2日从济南出发,1月5日到达天津,货主愿意支付的价
格是15元/吨公里。货源2需要1月7日从太原出发,1月14日到达西安,货主愿意支付的价格是18元/吨公里。货源3需要1月1日从济南出发,1月4日到达包头,货主愿意支付的价格是20元/吨公里。货源4需要1月8日从成都出发,1月12日到达杭州,货主愿意支付的价格是15元/吨公里。货源5需要1月9日从晋中出发, 1月11日到达咸阳,货主愿意支付的价格是15元/吨公里。
64.步骤s305:运力资源供需匹配。
65.运力资源供需匹配可以包括多个维度的匹配,例如,时间维度的匹配、地点维度的匹配、车型的匹配、载重的匹配、运费的匹配、线路历史运营次数的匹配、双方历史合作次数的匹配等。不同维度的匹配优先级是不同的,例如,车型的匹配、载重的匹配是位于第一优先级的,只有在车型、载重均匹配成功的情况下,才继续进行其他维度的匹配;如果车型、载重有一个没有匹配成功,或者车型、载重都没有匹配成功,这说明,这个车是没有能力装载运输这个货的,在这种情况下,其他维度的匹配已经没有意义,不再进行其他维度的匹配,该货源信息会被清除,而不会被推荐给驾驶者。
66.时间维度的匹配、地点维度的匹配位于第二优先级。在车型、载重均匹配成功的情况下,进行时间维度的匹配、地点维度的匹配。可以先进行时间维度的匹配,再进行地点维度的匹配;也可以先进行地点维度的匹配,再进行时间维度的匹配。如果这两个维度均匹配失败或者有一个维度匹配失败,则该货源与驾驶者无法匹配成功,即,该货源信息会被清除,而不会被推荐给驾驶者。只有这两个维度均匹配成功,才继续进行其他维度的匹配,该货源才可能被推荐给驾驶者。
67.获取驾驶者的运输计划信息之后,根据运输计划信息确定驾驶者的空闲信息,获取货源信息及运输需求之后,确定货源的运输需求的装货时间地点、运输需求的卸货时间地点,根据驾驶者的空闲信息、货源的运输需求的装货时间地点、运输需求的卸货时间地点确定时间匹配标签、地点匹配标签的得分。
68.时间匹配标签包括两类时间匹配标签,其中,第一类时间匹配标签用于指示货源的运输需求的时间区间是否位于驾驶者的某一个空闲时间区间(空闲期)之内。如果货源的运输需求的时间区间包含在驾驶者的某一个空闲期内,则继续进行第二类时间匹配标签的匹配度的计算;如果货源的运输需求的时间区间不包含在驾驶者的任何一个空闲期内,说明驾驶者没有足够的空闲时间来运输该货源,该货源不应该被推荐给该驾驶者,这种情况下,不再进行第二类时间匹配标签的匹配度的计算。第二类时间匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的时间区间的两个端点分别与驾驶者的该空闲时间区间的两个端点之间的时间间隔的长短。
69.当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,计算地点匹配标签的得分,其中,地点匹配标签指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的装货地点与在驾驶者的空闲时间区间的左端点驾驶者所在地点的距离长短,以及货源的运输需求的卸货地点与在驾驶者的空闲时间区间的右端点驾驶者所在地点的距离长短。
70.当前时间为t0,驾驶者所在位置为l0,驾驶者已有2个运输任务,第一个运输任务是t1从地点l1出发,t2到达地点l2,第二个运输任务是t3从地点l3出发,t4到达地点l4,其中,t0<t1<t2<t3<t4。
71.驾驶者的空闲期(空闲时间区间):(t0,t1)、(t2,t3)、(t4,t*)。t*>t4,为将来某一时刻。空闲时间区间的左端点为空闲时间区间的开始时间,空闲时间区间的右端点为空闲时间区间的结束时间。同一个空闲时间区间的左端点的数值小于右端点的数值。空闲时间区间(t0,t1)的左端点为t0;右端点为t1。空闲时间区间(t2,t3)的左端点为t2;右端点为t3。空闲时间区间(t4,t*)的左端点为t4;右端点为将来某一时刻。
72.货源需要在时间ta从地点la出发,在时间tb到达地点lb。则货源的运输需求的时间区间是(ta,tb)。其中,t0≤ta<tb。
73.如果tb≤t1或者t2≤ta<tb≤t3或者ta≥t4,那么货源的运输需求的时间区间包含在驾驶者的某一个空闲期内,则第一类时间匹配标签匹配成功,否则,货源的运输需求的时间区间不包含在驾驶者的任何一个空闲期内,第一类时间匹配标签匹配失败。在第一类时间匹配标签匹配成功的情况下,进行下一步匹配;在第一类时间匹配标签匹配失败的情况下,不再进行下一步匹配,清除该货源的数据,该货源不会推荐给驾驶者。因为第一类时间匹配标签匹配失败意味着,货源的运输需求与驾驶者的已有运输计划在时间上有冲突,该驾驶者没有时间来运输这个货源,就算其他条件都满足(匹配),该驾驶者也是无法承担该货源的运输任务的,因此,压根不再去考虑其他条件是否满足(匹配),就可以清除该货源的数据,确定该货源不会推荐给这个驾驶者,从而提高匹配的效率。
74.第二类时间匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的时间区间的两个端点分别与驾驶者的该空闲时间区间的两个端点之间的时间间隔的长短。具体地,货源的运输需求的时间区间的左端点与驾驶者的该空闲时间区间的左端点的时间间隔越短,货源的运输需求的时间区间的右端点与驾驶者的该空闲时间区间的右端点的时间间隔越短,第二类时间匹配标签的得分越高,说明承接该货源能够非常高效地利用驾驶者的该段空闲时间,降低空驶率,提高车辆的运营效率。
75.第一种情况:tb≤t1,货源的运输需求的时间区间包含在驾驶者的空闲期(t0,t1),则第一类时间匹配标签匹配成功,驾驶者需要从当前地点l0赶往地点la,到达地点la 的时间不能晚于ta。然后驾驶者将货源装车,在时间ta从地点la出发,在时间tb到达地点lb,这样就完成了对货源的运输。驾驶者于时间tb在地点lb将货源卸货,赶往地点l1,到达地点l1的时间不能晚于t1。
76.货源的运输需求的时间区间的两个端点分别为ta、tb。驾驶者的该空闲时间区间的两个端点分别为t0、t1。
77.货源的运输需求的时间区间的左端点ta与驾驶者的该空闲时间区间的左端点t0的时间间隔越短,货源的运输需求的时间区间的右端点tb与驾驶者的该空闲时间区间的右端点t1的时间间隔越短,第二类时间匹配标签的得分越高,说明承接该货源能够非常高效地利用驾驶者的该段空闲时间,在时间这个维度上,运输该货源后能够很快衔接上上述第一个已有的运输任务。
78.第二种情况:t2≤ta<tb≤t3,货源的运输需求的时间区间包含在驾驶者的空闲期(t2, t3),则第一类时间匹配标签匹配成功,驾驶者需要从地点l2赶往地点la,到达地点 la的时间不能晚于ta。然后驾驶者将货源装车,在时间ta从地点la出发,在时间tb 到达地点lb,这样就完成了对货源的运输。驾驶者于时间tb在地点lb将货源卸货,赶往地点l3,到
达地点l3的时间不能晚于t3。
79.货源的运输需求的时间区间的两个端点分别为ta、tb。驾驶者的该空闲时间区间的两个端点分别为t2、t3。
80.货源的运输需求的时间区间的左端点ta与驾驶者的该空闲时间区间的左端点t2的时间间隔越短,货源的运输需求的时间区间的右端点tb与驾驶者的该空闲时间区间的右端点t3的时间间隔越短,第二类时间匹配标签的得分越高,说明承接该货源能够非常高效地利用驾驶者的该段空闲时间,在时间这个维度上,上述第一个已有的运输任务完成后能很快衔接上该货源的运输,运输该货源并卸货后能够很快衔接上上述第二个已有的运输任务。
81.第三种情况:ta≥t4,货源的运输需求的时间区间包含在驾驶者的空闲期(t4,t*),则第一类时间匹配标签匹配成功,驾驶者需要从地点l4赶往地点la,到达地点la的时间不能晚于ta。
82.货源的运输需求的时间区间的两个端点分别为ta、tb。驾驶者的该空闲时间区间的两个端点分别为t4、t*。
83.货源的运输需求的时间区间的左端点ta与驾驶者的该空闲时间区间的左端点t4的时间间隔越短,第二类时间匹配标签的得分越高,说明承接该货源能够非常高效地利用驾驶者的该段空闲时间,在时间这个维度上,上述第二个已有的运输任务完成后能很快衔接上该货源的运输。
84.在这三种情况下,都需要驾驶者从一个地点赶往另一个地点,这就涉及地点维度的匹配问题。
85.当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,计算地点匹配标签的得分,其中,地点匹配标签指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的装货地点与在驾驶者的空闲时间区间的左端点驾驶者所在地点的距离长短,以及货源的运输需求的卸货地点与在驾驶者的空闲时间区间的右端点驾驶者所在地点的距离长短。货源的运输需求的装货地点与在驾驶者的空闲时间区间的左端点驾驶者所在地点的距离越短,以及货源的运输需求的卸货地点与在驾驶者的空闲时间区间的右端点驾驶者所在地点的距离越短,地点匹配标签得分越高。
86.下面以上述第一种情况为例进行详细说明。
87.如果当前地点l0与地点la之间的距离较远,或者,地点lb与地点l1之间的距离较远,一方面因时间有限,驾驶者不一定能赶得过去,另一方面,即使时间上赶得过去,在效率和经济上也不划算,这样的货源对于驾驶者来说不是理想的货源。举个例子来说,t0为2月3日,l0为北京;ta为2月4日,la为广州;tb为2月8日,lb为重庆;t1为2月10日,l1为哈尔滨。驾驶者2月3日位于北京,如果想要运输这个货源,则需要2月4日赶到广州,而北京与广州的距离很远,1天之内无法赶到,这就决定了驾驶者无法运输这个货源,虽然这个货源的运输需求的时间区间在驾驶者的空闲期内,但是距离维度上不匹配,这个货源不应推荐给驾驶者。比较理想的情况是,当前地点l0 与地点la之间的距离较近,并且,地点lb与地点l1之间的距离较近。这样,不仅驾驶者在有限的时间能赶过去,并且在路上消耗的时间也较短,在效率和经济上划算。距离较近是一个比较笼统的说法,具体多近是距离较近呢?这个较近的距离并不一定是个固定值,它可以由多方面的因素决定:货源的运输需求的时间区间的两个
端点与驾驶者的空闲期的两个端点之间的时间间隔、驾驶者愿意接受空跑的距离、驾驶者意愿休息时长,等。
88.步骤s303中提到,驾驶者张三已经有了2个任务,任务1是1月4日从天津出发,运送一批货物,1月8日到太原,任务2是1月12日从西安出发,运送一批货物,1月 17日到广州。
89.步骤s304中提到的货源1不应该推荐给驾驶者张三。因为如果货源1推荐给张三,那么张三1月2日从济南出发,运输货源1,1月5日到达天津,而张三原有的任务1需要1月4日从天津出发,这就耽误了任务1。
90.步骤s304中提到的货源2也不应该推荐给张三。因为货源2需要1月7日从太原出发,而张三1月7日还在从天津到太原的途中,1月8日才能到达太原。
91.步骤s304中提到的货源3不应该推荐给张三。因为如果货源3推荐给张三,那么张三1月1日从济南出发,运输货源1,1月4日到达包头,而张三原有的任务1需要1月 4日从天津出发,包头距离天津很远,张三1月4日到达包头后,无法当天再从天津出发执行任务1,这就耽误了任务1。
92.步骤s304中提到的货源4也不应该推荐给张三。因为货源4需要1月8日从成都出发,而张三1月8日执行完任务1到达太原,太原距离成都很远,无法当天再赶到成都运输货源4。
93.步骤s304中提到的货源5可以推荐给张三。货源5需要1月9日从晋中出发,1月 11日到达咸阳。张三执行完任务1后,1月8日位于太原,由于太原与晋中距离很近,张三可于1月9日之前赶往晋中,1月9日在晋中装载货源5并出发,1月11日到达咸阳,卸载货源5后,赶往西安。由于咸阳与西安之间的距离很近,张三可于1月12日之前到达西安,执行任务2。
94.步骤s304中提到的货源1、2、3、4均与驾驶者张三匹配失败,只有货源5与张三匹配成功。
95.步骤s306:再次进入匹配推荐流程,并短期内对失败双方不再匹配。短期内,货源 1、2、3、4与驾驶者张三不再进行匹配。
96.步骤s307:插入匹配运输任务并更新运输计划,并按照新运输计划再次进行匹配。根据货源5的运输需求更新张三的运输计划,下次进行匹配时,使用张三更新后的运输计划进行匹配。
97.本技术提供的方法基于近远期的运力运输计划获取运输资源空档时间、地点、在途及空闲状况等信息,精准匹配发货计划的起止时间、装卸货地等信息,结合运力需求端的计划运输需求,及社会运力资源的运输计划,使二者更高效准确的达成匹配关系,起到了未雨绸缪、计划发运、计划运输、连续高效的作用。
98.作为一种可选的实施方式,在步骤s304之后,步骤s305之前,将货源进行拼接,对拼接后的货源执行步骤s305。
99.对货源进行拼接的具体方法是:获取与驾驶者的“运输工具信息”匹配的匹配货源;将在时间上和地点上具有连续性的匹配货源进行拼接形成拼接的货源,将该拼接的货源加入货源信息中。两个货源在时间上具有连续性的含义是一个货源的卸货(卸车)时间与另一个货源的装货(装车)时间之间的时间间隔在某一预设时间间隔之内。两个货源在地点上具有连续性的含义是一个货源的卸货(卸车)地点与另一个货源的装货(装车) 地点之间的距离在某一预设距离之内。
100.例如,货源1的运输需求的开始时间是1月3号,装车地点是a地,结束时间是1 月8号,卸车地点是b地;货源2的运输需求的开始时间是1月8号,装车地点是c地,结束时间是1月12号,卸车地点是d地。a地与b地的距离在预设距离之内,则将货源1、货源2进行拼接,得到新的货源信息:货源1’。货源1’的运输需求的开始时间是1 月3号,装车地点是a地,运输需求的结束时间是1月12号,卸车地点是d地。
101.再例如,货源3的运输需求的开始时间是1月2号,装车地点是e地,运输需求的结束时间是1月6号,卸车地点是f地;货源4的运输需求的开始时间是1月7号,装车地点是g地,结束时间是1月9号,卸车地点是h地;货源5的运输需求的开始时间是1月10号,装车地点是i地,结束时间是1月15号,卸车地点是j地。f地与g地的距离在预设距离之内,h地与i地的距离在预设距离之内,则将货源3、货源4、货源5 进行拼接,得到新的货源信息:货源2’。货源2’的运输需求的开始时间是1月2号,装车地点是e地,运输需求的结束时间是1月15号,卸车地点是j地。
102.货源拼接的步骤结束之后,使用拼接后得到的货源信息与驾驶者进行匹配,匹配包括时间维度的匹配、地点维度的匹配等。先对货源进行拼接,再使用拼接后得到的货源与驾驶者进行匹配的好处是:一次性可匹配两个或更多的货源,提高匹配的效率,在向驾驶者推荐货源的时候,一次性推荐两个或更多在时间、地点上紧密联系的货源,提高向驾驶者推荐货源的效率。
103.如图4所示,本技术实施例包括以下步骤:
104.步骤s401:获取驾驶者与车辆信息,获取驾驶者与车辆的已知运输计划,获取货源信息。
105.驾驶者信息可以包括驾驶者证件标号、驾驶者姓名、驾驶证信息、驾驶者的资质、驾驶者的证件信息、驾驶者的居住地、驾驶者经常跑的线路、驾驶者的历史评分等。
106.车辆信息包括车牌号、车型、载重、长宽高、运输用途、装卸方式等。
107.现有运输计划指的是驾驶者已有的任务,包括运输任务编号、运输工具信息、驾驶者信息、运输开始时间、运输结束时间、装货地点(gps经纬度坐标)、卸货地点(gps 经纬度坐标)、任务分类(历史/进行/计划)等。例如,驾驶者张三已经有了2个任务,任务1是1月4日从天津出发,运送一批货物,1月8日到太原,任务2是1月12日从西安出发,运送一批货物,1月17日到广州。
108.货源信息及运输需求可以是货品信息、货主信息、运输开始时间、运输结束时间、装货地点(gps经纬度坐标)、卸货地点(gps经纬度坐标)、运输运价等。例如,货源1需要1月2日从济南出发,1月5日到达天津。货源2需要1月7日从太原出发,1 月14日到达西安。货源3需要1月1日从济南出发,1月4日到达包头。货源4需要1 月8日从成都出发,1月12日到达杭州。货源5需要1月9日从晋中出发,1月11日到达咸阳。
109.步骤s402:确定驾驶者的指定运输空档期(空闲期)。
110.驾驶者的指定运输空档期可由驾驶者的已知运输计划确定出。例如,假设当前时间为1月1日,驾驶者张三已经有了2个任务,任务1是1月4日从天津出发,运送一批货物,1月8日到太原,任务2是1月12日从西安出发,运送一批货物,1月17日到广州,那么张三的指定运输空档期为1月1日至1月4日、1月8日至1月12日、1月17 日至将来某时间。
111.步骤s403:对全部货源信息数据进行清洗,具体地,判断货源信息的运输区间是否
包含在指定运输空档期的开始时间至结束时间之内,如果是,将被保留;如果不是,将从对象样本池中清除。
112.货源1需要1月2日从济南出发,1月5日到达天津。货源2需要1月7日从太原出发,1月14日到达西安。货源3需要1月1日从济南出发,1月4日到达包头。货源4 需要1月8日从成都出发,1月12日到达杭州。货源5需要1月9日从晋中出发,1月 11日到达咸阳。
113.货源1的运输区间为(1月2日,1月5日),未包含在上述三个指定运输空档期中的任何一个中,因此,货源1属于匹配失败的货源,其数据被清除。
114.货源2的运输区间为(1月7日,1月14日),未包含在上述三个指定运输空档期中的任何一个中,因此,货源2属于匹配失败的货源,其数据被清除。
115.货源3的运输区间为(1月1日,1月4日),包含在指定运输空档期(1月1日,1 月4日)中。
116.货源4的运输区间为(1月8日,1月12日),包含在指定运输空档期(1月8日, 1月12日)中。
117.货源5的运输区间为(1月9日,1月11日),包含在指定运输空档期(1月8日, 1月12日)中。
118.货源1、2的数据被清除,货源3、4、5的数据保留。
119.步骤s404:对清洗后的数据进行要素匹配度评分及组合数据建模,输出货源信息排列组合推荐结果。
120.要素匹配可以包括多个维度的匹配,例如,地点维度的匹配、运费的匹配、线路历史运营次数的匹配、双方历史合作次数的匹配等。不同的要素在匹配时权重是不同的,越是重要的要素,权重越高。根据多个要素的得分和权重,计算货源与驾驶者的匹配度。
121.此推荐算法将基于决策树(decision tree)及决策加权评分的机器学习。主要步骤包括:基于决策树的非叶子节点要素整理;基于决策树的叶子节点类别的加权评分;冷启动下的加权设定及机器学习方案。
122.步骤s405:输出的货源信息排列组合推荐结果经由驾驶者选择,并记录匹配成功信息,同时生成匹配后的新的运输任务计划。
123.步骤s406:特定档期推荐执行结束。
124.本技术涉及一种基于运力提供方(驾驶者)近远期运输任务计划中任务空档期与运力需求方(货源的货主)近远期运力需求的供需匹配方法,该方法采用决策树对匹配维度进行要素归类,并对决策机制进行了改进,通过机器学习对结果进行验证与纠偏,最终实现运力资源供需精准匹配,提高近远期运输任务的计划性。
125.作为一种可选的实施方式,本技术提供的向驾驶者推荐货源的方法可以包括两个部分:一、权重评分推荐;二、机器学习权重优化。下文对这两个部分进行详细阐述。
126.一、权重评分推荐:
127.定义1.推荐标签
128.推荐标签是用于计算匹配度的条件维度。被定义为:
129.t=(t1,t2,

,t
p
)
130.其中tk标签为第k个条件维度。后续加权也基于此维度设定。
131.定义2.标签权重
132.标签权重是指推荐标签的权重值。
133.s=(t,tagrating)
134.其中t为推荐标签,tagrating为权重属性。重要性越高的维度权重绝对值越高,反之则越低。
[0135][0136]
注释:
[0137]
载重符合(

1)是指:货主对于运输工具承载能力的要求,包括发货重量与承载工具载重的匹配度,或货物体积与运输工具的空间匹配度。
[0138]
时间符合(

2)是指:货主要求的运输时间区间,即运输开始、结束时间段,是否在驾驶者现在或未来的运输任务空闲时间区间内。即不与现有任务计划时间冲突。
[0139]
运输任务的出发地点与空闲期开始位置距离近(

3)是指:货主的运输委托中指定的装货地点与驾驶者现在或者未来空闲开始地点的距离,空闲开始地点指:驾驶者如现在处于空闲(没有运输任务)状态则为现在所在地点,如未来某段时间空闲,则为未来空闲时间之前最近运输任务的卸货地点。货主装货地点与驾驶者空闲开始地点距离越近评分越高。
[0140]
运输任务的出发时间与空闲期开始时间间隔短(

4)是指:货主的运输委托中指定的装货时间与驾驶者现在或者未来空闲开始时间的间隔,空闲开始时间指:驾驶者如现在处于空闲(没有运输任务)状态则为当前时间,如未来某段时间空闲,则为未来空闲时间之前最近运输任务的结束时间。货主发货时间与驾驶者空闲开始时间的间隔越短评分越高。
[0141]
运输任务的到达地点与空闲期结束位置距离近(

5)是指:货主的运输委托中指定的卸货地点与驾驶者现在或者未来空闲结束地点的距离,空闲结束地点指:驾驶者如现在处于空闲(没有运输任务)状态则为现在之后最近运输任务的出发地点,如未来某段时间
(20210112,“西安”,“start”)]}
[0160]
i为货源信息集合,其中ik(k=1,2,

,m)为货源的第 k项基本属性。为方便说明,货源信息以单一任务为例,假设某货主的发布信息如下:
[0161]
i={30,3,“砂石”,(20210109,“晋中”,start),(20210111,“咸阳”,end)}
[0162]
表示砂石货量30吨,需要车型编号3(仓栅车),2021年1月9日山西晋中出发, 2021年1月11日至陕西咸阳。
[0163]
按照以上的拆解示例,忽略部分基础属性可理解基础属性i1为装货时间20210109, i2为装货地点晋中等。
[0164]
r表示驾驶者对货源信息偏好评分的集合,其中rk表示用户u对货源i的第k项基础属性的偏好评分。例如上述示例张三与货源信息对于装车时间的偏好为1天,即张三u2’
中(20210108,“太原”,“end”)与货源i中的 (20210109,“晋中”,start)的偏好,i=(1,





),以此省略表示驾驶者与货源发货时间的偏好评分为1分。
[0165]
s为用户对货源信息的标签权重集合,其中t为标签属性, tagrating为权重属性。且满足其中t为用户对货源信息的标签集合。
[0166]
y为上述u,i,r,s上的四元素关系,且满足例如y=(u,i,r,(t, tagrating))∈y表示用户u对货源信息i的偏好评分为r,同时指定货源信息i的第一个标签权重为s=(t,tagrating)。其中t是用户u认为货源信息i具有的其中一个特征,且认为该标签上的权重为tagrating。
[0167]
定义4.相关符号
[0168]
(1)s(u,i)∈s表示用户u对货源信息i的其中一个标签权重评分;
[0169]
(2)表示用户u对货源信息i的其中一个标签权重评分集合;
[0170]
(3)s(u,i)={s(u,i|u∈u,i∈i)}表示用户集合u中的用户对货源信息集合i中的货源信息的标签权重评分集合;
[0171]
(4)s(u)∈s表示用户u的其中一个标签权重特征;
[0172]
(5)表示用户u的标签权重特征集合;
[0173]
(6)s(u)={s(u)|u∈u}表示用户集合u中的用户的标签权重特征集合;
[0174]
(7)s(i)∈s表示货源信息i的其中一个标签权重特征;
[0175]
(8)表示货源信息i的标签权重特征集合;
[0176]
(9)s(i)={s(i)|i∈i}表示货源信息集合i中的货源信息的标签权重特征集合;
[0177]
(10)r(u,i)∈r表示用户u对货源信息i的偏好评分;
[0178]
(11)r(i)∈r表示货源信息i的整体评分;
[0179]
(12)r(i)={r(i)}表示货源信息集合i的整体评分;
[0180]
(13)r(u,i)={r(u,i|u∈u,i∈i)}表示用户集合u中的用户对货源信息集合i中的货源信息的偏好评分集合。
[0181]
定义5.算法流程
[0182]
输入:评分数据d={(u1,i1,r1,s1),(u2,i2,r2,s2),

,(un,in,rn,sn)}
[0183]
输出:货源信息的标签权重特征集合s(i)={s(i)|i∈i}
[0184]
算法过程:
[0185]
1,i={i|(u,i,r,s)∈d}//参与标签权重计算的对象
[0186]
2,s(i)={s(i)},//初始标签权重特征为空
[0187]
3,foreach(u,i,r,s)∈d do
[0188]
4,t=gettag(s);tagrating=gettagrating(s);
[0189]
5,addtoslider(s(i),t,r,tagrating);//增加相应特征的权重
[0190]
6,normalize(s(i))
[0191]
7,return s(i)
[0192]
算法流程如下:首先对计算的货源信息标签权重特征初始化为空(1~2行),对于 d中的任意一个元组,进行循环判断(3~5行)。首先分离出货源信息i的标签特征t 和该标签特征的权重tagrating(4行),并将当前的特征权重累计添加到货源信息i的相应标签权重特征s(i)中(5行)。迭代地判定每个元组,直到所有元组判定完毕(3~5 行),最后规范化s(i)(6行),返回得出所有参与标签权重计算的物品的标签权重特征 s(i)(7行)。
[0193]
简要运算示例:
[0194]
基于发货时间差(小时)、历史合作次数(次)偏好结果为
[0195]
i=(24h,

,15,

)
[0196]
若标签权重为
[0197]
s=(240,

,2.5,

)
[0198]
则简加权计算为
[0199]
s(i)=(240/24,

,2.5
×
15,

)
[0200]
假设发货时差为24小时,预设权重为240小时,则基于时间差的权重评分为 240/24=10分。历史成功合作次数为15次,预设权重为2.5次时,则基于合作偏好的权重评分为2.5x15=37.5分。偏好越低推荐度越高的标签界定下限,例如时差最低界定为4 小时,不足4小时视为4小时,偏好越高推荐度越高的评分根据情况设有上限值。
[0201]
二、机器学习权重优化:
[0202]
算法通过用户结果反馈对优先推荐的结果进行分析,优化算法中的权重份数(权重值)。
[0203]
定义1.评分指标
[0204]
对于推荐结果的准确性与优化评定,衡量推荐质量的指标也各不相同。对于评分采用的衡量算法准确性的采用以下两个指标作为依据:
[0205][0206]
其中,r表示用户对推荐货源信息的评分矩阵,r
i,j
表示第i个用户对于第j个货源信息的评分(回馈结果),r^
i,j
表示推荐算法预测的评分(推荐结果)。ω表示观测到的评分的集合,n是观测到的评分数量。对于rmse来说,数值越小代表推荐的准确性越高。例如推荐用户的货源信息按推荐排序为,n=(1,2,3,

),用户没有选择 n=1的推荐,而选择了n=3的推荐,则n=(1,2)的推荐评分应处于n=(3,

,n)之间。
[0207]
定义2.机器学习纠偏与回归测试
[0208]
若r
i,j
回馈结果条目与r^
i,j
推荐结果存在不同标签评分时,通过机器学习进行纠偏。
[0209][0210]
如上述推荐算法:
[0211]
y=(u,i,r,(t,tagrating))∈y
[0212]
对于纠偏权重tri纠偏方法:
[0213]
e(tr
i,j
)={e(tr
i,j
|i,j∈[α,β])}
[0214]
或:
[0215][0216]
其中tr
i,j
代表纠偏对象的权重tagrating,α,β表示纠偏项基础属性所在矩阵的横、纵坐标集合,e(tr
i,j
)表示使得y=(u,i,r,(t,e(tagrating)))∈y结果r在本次推荐的选择结果中的符合rmse的值最小的纠偏算式。
[0217]
定义3.算法流程
[0218]
输入:纠偏数据d={tr
1,1
,tr
1,2


,tr
i,j
}
[0219]
输出:货源信息的标签权重结果集合e(tr
i,j
)={e(tr
i,j
|i,j∈[α,β])}
[0220]
算法过程:
[0221]
1,tr
i,j
={i,j∈[α,β]}//参与标签权重计算的对象
[0222]
2,//初始标签权重特征为空
[0223]
3,foreach(i,j)∈[α,β]do
[0224]
4,e(tr
i,j
)=edittag(tr
1,1
,tr
1,2


,tr
i,j
);
[0225]
5,settagrating(e,t);//重置相应特征的权重
[0226]
6,normalize(e(tr
i,j
))
[0227]
7,return e(tr)
[0228]
算法流程如下:首先对纠偏的货源信息标签权重特征初始化为空(1~2行),对于 d中的任意一个元组,进行循环判断(3~5行)。首先代入货源信息集合的标签权重tr,并将调整后的特征权重重置添加到该驾驶者的相应标签权重特征t中(5行)。迭代重置对象的每个元组,直到所有元组判定完毕(3~5行),最后纠正权重e(tr)(6行),返回得出所有参与标签权重计算的物品的标签权重特征e(tr)(7行)。
[0229]
例如,有100个待匹配的货源,分别为货源1、货源2、
……
、货源100,有12个标签。将货源1与驾驶者张三进行匹配,得到12个标签中每个标签的得分,根据12个标签中每个标签的得分以及每个标签的权重计算货源1与张三的匹配度得分s1。将货源2 与驾驶者张三进行匹配,得到12个标签中每个标签的得分,根据12个标签中每个标签的得分以及每个标签的权重计算货源2与张三的匹配度得分s2。
……
将货源100与驾驶者张三进行匹配,得到12个标签中每个标签的得分,根据12个标签中每个标签的得分以及每个标签的权重计算货源100与张三的匹配度得分s100。
[0230]
在上述推荐算法中,标签的权重值的选取非常重要,当标签的权重值发生变化时,推荐结果往往随之改变。本技术提供的向驾驶者推荐货源的方法能够优化标签的权重值,从而达到最优的推荐效果。
[0231]
假设上述100个货源中,匹配度得分按照高低排序依次是货源91、货源27、货源11、货源56、货源82
……
将这100个货源中的前10个的货源信息显示并推荐给张三。张三没有选择匹配度得分最高的货源91,而是选择了匹配度得分第三名的货源11。这说明,计算出的匹配度排序并不精确等于用户(驾驶者)心中的匹配度排序。本技术提供的向驾驶者推荐货源的方法计算出的匹配度排序,货源11的匹配度得分低于货源91的匹配度得分,也低于货源27的匹配度得分。而驾驶者却认为,货源11比货源91、货源27 更加匹配。这就需要我们去调整本技术提供的向驾驶者推荐货源的方法,具体地,调整标签的权重,重新根据每个标签的得分及其调整后的权重计算每个货源与驾驶者的匹配度得分,并根据匹配度得分重新推荐货源;获取驾驶者对重新推荐的货源的评分;根据货源与驾驶者的匹配度得分与驾驶者对重新推荐的货源的评分之间的偏差计算推荐的偏差度参数;确定出推荐的偏差度参数最小时标签的权重,作为优化后标签的权重。偏差度参数可以是上述rmse。
[0232]
假设一共使用5000个货源、200个驾驶者对本技术提供的向驾驶者推荐货源的方法进行优化。
[0233]
计算5000个货源中每个货源与200个驾驶者中每个驾驶者的匹配度得分,一共得到 100万个匹配度得分。
[0234]
对于1号驾驶者来说,从5000个匹配度得分中选择得分最高的10个,假设得分最高的10个货源的得分分别为r^
1,1
、r^
1,2
、r^
1,3
、r^
1,4
、r^
1,5
、r^
1,6
、r^
1,7
、r^
1,8
、 r^
1,9
、r^
1,10
。将对应的货源信息按照得分高低顺序显示给1号驾驶者,1号驾驶者对这 10个货源进行打分,分值分别为r
1,1
、r
1,2
、r
1,3
、r
1,4
、r
1,5
、r
1,6
、r
1,7
、r
1,8
、r
1,9
、r
1,10

[0235]r1,1
、r^
1,1
对应同一个货源;r
1,2
、r^
1,2
对应同一个货源;r
1,3
、r^
1,3
对应同一个货源;r
1,4
、r^
1,4
对应同一个货源;r
1,5
、r^
1,5
对应同一个货源;r
1,6
、r^
1,6
对应同一个货源;r
1,7
、r^
1,7
对应同一个货源;r
1,8
、r^
1,8
对应同一个货源;r
1,9
、r^
1,9
对应同一个货源;r
1,10
、r^
1,10
对应同一个货源。
[0236]
对于2号驾驶者来说,从5000个匹配度得分中选择得分最高的10个,假设得分最高的10个货源的得分分别为r^
2,1
、r^
2,2
、r^
2,3
、r^
2,4
、r^
2,5
、r^
2,6
、r^
2,7
、r^
2,8
、 r^
2,9
、r^
2,10
,将对应的货源信息按照得分高低顺序显示给2号驾驶者,2号驾驶者对这 10个货源进行打分,分值分别为r
2,1
、r
2,2
、r
2,3
、r
2,4
、r
2,5
、r
2,6
、r
2,7
、r
2,8
、r
2,9
、r
2,10

[0237]r2,1
、r^
2,1
对应同一个货源;r
2,2
、r^
2,2
对应同一个货源;r
2,3
、r^
2,3
对应同一个货源;r
2,4
、r^
2,4
对应同一个货源;r
2,5
、r^
2,5
对应同一个货源;r
2,6
、r^
2,6
对应同一个货源;r
2,7
、r^
2,7
对应同一个货源;r
2,8
、r^
2,8
对应同一个货源;r
2,9
、r^
2,9
对应同一个货源;r
2,10
、r^
2,10
对应同一个货源。
[0238]
……
[0239]
对于200号驾驶者来说,从5000个匹配度得分中选择得分最高的10个,假设得分最高的10个货源的得分分别为r^
200,1
、r^
200,2
、r^
200,3
、r^
200,4
、r^
200,5
、r^
200,6
、r^
200
,7、r^
200,8
、r^
200,9
、r^
200,10
,将对应的货源信息按照得分高低顺序显示给200号驾驶者, 200号驾驶者对这10个货源进行打分,分值分别为r
200,1
、r
200,2
、r
200,3
、r
200,4
、r
200,5
、r
200,6
、r
200,7
、r
200,8
、r
200,9
、r
200,10

[0240]r200,1
、r^
200,1
对应同一个货源;r
200,2
、r^
200,2
对应同一个货源;r
200,3
、r^
200,3
对应同一个货源;r
200,4
、r^
200,4
对应同一个货源;r
200,5
、r^
200,5
对应同一个货源;r
200,6
、r^
200,6
对应同一个货源;r
200,7
、r^
200,7
对应同一个货源;r
200,8
、r^
200,8
对应同一个货源;r
200,9
、r^
200,9
对应同一个货源;r
200,10
、r^
200,10
对应同一个货源。
[0241]
rmse={[(r
1,1-r^
1,1
)2 (r
1,2-r^
1,2
)2 (r
1,3-r^
1,3
)2 (r
1,4-r^
1,4
)2 (r
1,5-r^
1,5
)2 (r
1,6-r^
1,6
)2 (r
1,7-r^
1,7
)2 (r
1,8-r^
1,8
)2 (r
1,9-r^
1,9
)2 (r
1,10-r^
1,10
)2 (r
2,1-r^
2,1
)2 (r
2,2-r^
2,2
)2 (r
2,3-r^
2,3
)2 (r
2,4-r^
2,4
)2 (r
2,5-r^
2,5
) 2 (r
2,6-r^
2,6
)2 (r
2,7-r^
2,7
)2 (r
2,8-r^
2,8
)2 (r
2,9-r^
2,9
)2 (r
2,10-r^
2,10
)2
ꢀ……
(r
200,1-r^
200,1
)2 (r
200,2-r^
200,2
)2 (r
200,3-r^
200,3
)2 (r
200,4-r^
200,4
)2 (r
200

5-r^
200,5
)2 (r
200,6-r^
200,6
)2 (r
200,7-r^
200,7
)2 (r
200,8-r^
200,8
)2 (r
200,9-r^
200,9
) 2 (r
200,10-r^
200,10
)2]/2000}
1/2
[0242]
计算出的rmse表示推荐的偏差,该数值越小,代表推荐的准确性越高。对于标签的特定一组权重值,计算出的rmse是唯一的。当标签的权重值改变时,货源与驾驶者的匹配度得分改变,推荐顺序也发生变化。调整标签的权重值,根据调整后的标签的权重值重复上述匹配、推荐和计算rmse的过程;继续调整标签的权重值,根据调整后的标签的权重值继续重复上述匹配、推荐和计算rmse的过程;直至得出一个rmse的最小值,那么,这个最小值对应的标签的权重即为优化后的权重。
[0243]
如图5所示,本技术实施例提供了一种向驾驶者推荐货源的系统,该系统用于执行上述向驾驶者推荐货源的方法。本系统具有用户界面,在该用户界面上,驾驶者可以输入自己以及运输工具的信息,例如,驾驶证信息、车型、车辆载重、常跑线路等信息。推荐引擎根据驾驶者信息、货源信息对二者进行匹配,匹配的过程包括对多个标签进行打分,根据标签的得分和权重计算货源与驾驶者的匹配度,根据匹配度排名,生成推荐结果,在用户界面上展示推荐结果。驾驶者在用户界面上可以选择向其推荐的货源,也可以对推荐的货源进行评分。根据驾驶者对推荐的货源的评分以及系统对货源的评分进行机器学习,优化标签的
权重,以得到更好的推荐效果。
[0244]
如图6所示,本发明实施例还提供了一种向驾驶者推荐货源的装置,该装置包括:第一获取单元61、第二获取单元62、第一确定单元63、第二确定单元64、计算单元65、推荐单元66。
[0245]
第一获取单元61,用于获取多个货源的货源信息及运输需求。
[0246]
第二获取单元62,用于获取驾驶者信息以及运输工具信息,驾驶者信息包括驾驶者基础信息和运输计划信息。
[0247]
第一确定单元63,用于确定多个标签及其权重,多个标签至少包括时间匹配标签和地点匹配标签,时间匹配标签用于指示驾驶者与货源在时间这个维度上的匹配度,地点匹配标签用于指示驾驶者与货源在地点这个维度上的匹配度。
[0248]
第二确定单元64,用于根据驾驶者基础信息、运输计划信息、运输工具信息和货源信息及运输需求确定多个标签中每个标签的得分。
[0249]
计算单元65,用于根据每个标签的得分及其权重计算每个货源与驾驶者的匹配度得分。
[0250]
推荐单元66,用于按照匹配度得分的高低向驾驶者推荐货源。
[0251]
可选地,多个标签还包括以下至少之一:运输工具型号匹配度标签、运输工具载重匹配度标签。
[0252]
可选地,获取驾驶者的运输计划信息之后,根据运输计划信息确定驾驶者的空闲信息,获取货源信息及运输需求之后,第二确定单元64确定货源的运输需求的装货时间地点、运输需求的卸货时间地点,根据驾驶者的空闲信息、货源的运输需求的装货时间地点、运输需求的卸货时间地点确定时间匹配标签、地点匹配标签的得分。
[0253]
可选地,时间匹配标签包括两类时间匹配标签,其中,第一类时间匹配标签用于指示货源的运输需求的时间区间是否位于驾驶者的某一个空闲时间区间之内,第二类时间匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的时间区间的两个端点分别与驾驶者的该空闲时间区间的两个端点之间的时间间隔的长短。
[0254]
可选地,当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,第二确定单元64计算地点匹配标签的得分,其中,地点匹配标签用于指示当货源的运输需求的时间区间位于驾驶者的某一个空闲时间区间之内时,货源的运输需求的装货地点与在驾驶者的空闲时间区间的左端点驾驶者所在地点的距离长短,以及货源的运输需求的卸货地点与在驾驶者的空闲时间区间的右端点驾驶者所在地点的距离长短。
[0255]
可选地,装置还包括优化单元,用于优化各个标签的权重,优化单元具体包括:记录子单元、优化子单元。
[0256]
记录子单元,用于按照匹配度的高低向驾驶者推荐货源之后,记录驾驶者对货源的评价信息。
[0257]
优化子单元,用于根据驾驶者对货源的评价信息优化各个标签的权重。
[0258]
可选地,优化子单元具体包括:调整模块、获取模块、计算模块、确定模块。
[0259]
调整模块,用于调整标签的权重,重新根据每个标签的得分及其调整后的权重计算每个货源与驾驶者的匹配度得分,并根据匹配度得分重新推荐货源。
[0260]
获取模块,用于获取驾驶者对重新推荐的货源的评分。
[0261]
计算模块,用于根据货源与驾驶者的匹配度得分与驾驶者对重新推荐的货源的评分之间的偏差计算推荐的偏差度参数。
[0262]
确定模块,用于确定出推荐的偏差度参数最小时标签的权重,作为优化后标签的权重。
[0263]
图7是根据一示例性实施例示出的一种电子设备的框图。
[0264]
下面参照图7来描述根据本公开的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0265]
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:至少一个处理单元710、至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730、显示单元740等。
[0266]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书中描述的根据本公开各种示例性实施方式的步骤。
[0267]
所述存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(rom) 7203。
[0268]
所述存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0269]
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0270]
电子设备700也可以与一个或多个外部设备700’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备700交互的设备通信,和/或该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器760可以通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0271]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图8所示,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述方法。
[0272]
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举
的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器 (ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0273]
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0274]
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan) 或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0275]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:获取多个货源的货源信息及运输需求;获取驾驶者信息以及运输工具信息,所述驾驶者信息包括驾驶者基础信息和运输计划信息;确定多个标签及其权重,所述多个标签至少包括时间匹配标签和地点匹配标签,所述时间匹配标签用于指示驾驶者与货源在时间这个维度上的匹配度,所述地点匹配标签用于指示驾驶者与货源在地点这个维度上的匹配度;根据所述驾驶者基础信息、所述运输计划信息、所述运输工具信息和所述货源信息及运输需求确定所述多个标签中每个标签的得分;根据每个标签的得分及其权重计算每个货源与驾驶者的匹配度得分;按照匹配度得分的高低向驾驶者推荐货源。
[0276]
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
[0277]
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施例的方法。
[0278]
以上具体地示出和描述了本公开的示例性实施例。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献