1.一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:包括以下步骤:步骤1:采集每条道路坐标数据,依据采集到的坐标利用数据结构链表建立路网拓扑结构,路网拓扑结构包括相互交叉的道路之间的拓扑结构及单条道路的拓扑结构;
步骤2:连续采集每条道路在24小时之内间隔1min的车辆速度,持续三周,将采集到的车辆速度与路网拓扑结构中坐标点进行匹配,并利用采集到的车辆速度以及对应的时刻分别对每个路段的路况趋势进行BP神经网络建模,建立好的模型的输入是时刻,输出是该时刻对应的车辆速度;
步骤3:利用最短路径算法A*验证步骤1路网拓扑结构的正确性,并以A*算法作为任意两个坐标之间最短路径的求解算法;
步骤4:从已有的客户订单数据中获取客户货物需求,包含投递和拣货需求、客户时间窗范围,将这些客户信息附加到路网拓扑结构中的每个坐标点,使每个客户信息和坐标点一一对应,每个坐标点相当于一个客户;
步骤5:设置车辆路径规划问题中的基础信息,包括仓库位置、仓库开放时间、是否有动态订单、订单的个数、订单服务时间和车辆最大载货量,至此,实时路况下的车辆路径规划问题模型创建完毕。
2.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:所述步骤1中采集道路坐标数据的方法为:首先利用高德地图的交通态势API获取指定区域的道路坐标并转化成图层覆盖到高德经纬度查询地图上,之后沿着显示的道路点选所需坐标点并记录其经纬度,主要记录各道路交叉路口坐标点的经纬度信息并保证交叉路口所连接的各条道路在交叉路口处的坐标相同。
3.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:所述步骤1中路网拓扑结构重建的方法为:道路坐标数据集中包含了各个路段之间的连接关系,由于道路之间具有链式连接关系,利用双向链表将单个道路中的坐标点连接起来,每个坐标点有多个前驱及后继,只要将每个坐标点的前驱和后继全部找到,就完成了路网拓扑结构的重建。
4.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:步骤2中所述匹配方法为:首先判断当前需匹配速度的坐标点属于哪一条道路,然后判断该坐标点属性描述中的道路方向在路况数据中是否存在,若存在,则该点速度与路况数据中相同,否则,计算在路况数据中对应道路中距离该坐标点最近的一点的速度。
5.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:步骤2中所述以BP神经网络为骨架网络的深度神经网络的输入层神经元个数设置为2,输出层神经元个数设置为1,激活函数为sigmod,路况模型的创建以每一条道路中的每一个坐标点为单位,训练数据为每个坐标点在一周内的每个时刻的车辆速度,模型的输入为一周中的某一天,及这一天中的某个时刻,输出为对应的车辆速度。
6.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:在步骤3中,A*算法具体为:f(n)=g(n)+h(n),其中:g(n)为车辆从起点到当前节点的实际行驶时间,h(n)表示车辆从当前节点行驶到终点所需的估计时间,即l(n)/v(n),l(n)表示当前节点距离终点的直线距离,v(n)表示当前节点在当前时刻的车辆速度。
7.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:在步骤3中,A*算法验证步骤1路网拓扑结构的正确性的方法为:利用A*算法对路网中任意两点之间的最短路径进行求解,若A*算法能够找到指定两点之间的最短路径,则表明这两点之间的拓扑结构创建正确,否则利用Openframework将路网可视化,依据可视化之后的路网查找未找到最短路径的两点之间缺失的坐标点并补充。
8.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:在步骤4中,每个客户订单的位置直接采取路网拓扑结构中坐标点的位置,即每个坐标点除了其经纬度信息,还包括订单发起时间、订单的货物需求、订单允许被处理的时间窗范围和订单需要被服务的时间,这些信息都以对象的方式进行封装。
9.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:步骤5中的各种基础信息设置通过类的封装实现,即所有参数都作为车辆路径规划问题类的数据成员,仓库位置根据路网拓扑结构的规模自由设定,仓库开放时间默认为8:00-
24:00,订单的个数最大为路网拓扑结构中经纬度坐标点的数目,是否有动态订单的设定用来决定模型是否考虑动态客户,若模型不考虑动态客户,则该模型仅考虑实时路况这一个动态信息,所有订单服务时间默认设置成30min或根据实际订单数据自定义设置,最大载货量是车辆类的数据成员,默认为3吨。
10.如权利要求1所述的一种实时路况下的车辆路径规划问题模型创建方法,其特征在于:所述步骤5中实时路况下的车辆路径规划问题模型相关函数如下:目标函数:
f1=K (1)
约束条件:
其中:目标函数f1表示使用的车辆总数目;目标函数f2表示所有车辆行驶的总路程;目标函数f3表示所有车辆的延迟时间之和;目标函数f4表示所有车辆的等待时间之和;目标函数f5表示最长的车辆行驶时间,其他符号定义如下:K:实际用到的车辆数;
k:第k辆车;
Dij:节点vi到vj的路径长度;
ai(t):车辆到达顾客节点i的时间;
若车辆k从节点vi访问节点vj,值为1,否则为0;
vik:若节点vi由车辆k服务过,则值为1,否则为0;
bi(t):若t时刻节点vi已被服务,则值为1,否则为0;
车辆k通过节点vi到节点vj之间的路径行驶的时间;
CS(t):客户不满意度,即所有客户的等待时间之和;
TTk(t):车辆k的行驶时间之和;
si:车辆在顾客节点i的服务时间
Sk:车辆k的服务时间之和;
bi:订单i的起始时间窗;
ei:订单i的最晚时间窗;
di:客户节点vi的收货需求;
pi:客户节点vi的发货需求;
C:车辆的最大载重量。