电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx

上传人:b****4 文档编号:14377515 上传时间:2022-10-22 格式:DOCX 页数:12 大小:113.76KB
下载 相关 举报
电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx_第1页
第1页 / 共12页
电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx_第2页
第2页 / 共12页
电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx_第3页
第3页 / 共12页
电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx_第4页
第4页 / 共12页
电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx

《电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx》由会员分享,可在线阅读,更多相关《电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。

电动自行车租赁系统监管平台设计与实现第4章下Word文件下载.docx

FirstParseGPS()核心代码如下:

privatestaticvoidFirstParseGPS(stringstringGPS)

{

string[]stringSeparators=newstring[]{"

"

};

string[]strs=stringGPS.Split(stringSeparators,stringSeparators.None);

stringBicycleId=strs[0];

stringSendTime=strs[1];

stringLongitude=strs[2];

stringLatitude=strs[3];

stringPower=strs[4];

stringBicycleStateId=strs[5];

}

translateGPS()类的核心代码如下:

privatestaticvoidtranslateGPS(stringLongitude,stringLatitude)

{

stringlongitude1=(Decimal.Parse(Longitude)/100).ToString();

stringlongitude2=(Decimal.Parse(Longitude)%100/60).ToString();

stringlongitude=(Decimal.Parse(longitude1)+Decimal.Parse(longitude2)).ToString();

stringlatitude1=(Decimal.Parse(Latitude)/100).ToString();

stringlatitude2=(Decimal.Parse(Latitude)%100/60).ToString();

stringlatitude=(Decimal.Parse(latitude1)+Decimal.Parse(latitude2)).ToString();

4.4车辆调度的分析与设计

为解决实际运营中出现的“借车难、还车难”问题,本文根据大量GPS定位信息、站点租车还车记录信息,结合聚类算法,获取车辆调度的最短路径。

本小节是重点研究内容,将详细介绍其设计和实现过程。

4.4.1数据存储格式分析与设计

监管平台对车辆定位信息的存储分为两类,一类存储在MySQL中,另一类存储在Hadoop中。

在MySQL数据库中创建有关车辆实时位置的BicycleGPS表,为保证实时性,存储每辆被租车辆的最近一次的租借信息;

针对历史信息,以文本形式保存在Hadoop中,为后期车辆调度提供数据基础。

其中,BicycleGPS表和文本记录包含信息格式相同,每条记录均由以下字段组成:

车辆ID、发送时间、纬度值、经度值,电量、车行速度、车辆状态,具体如表4.4所示。

表4.4GPS信息帧格式

6字节

20字节

10字节

3字节

4字节

车辆ID

发送时间

纬度值

经度值

电量

车行速度

车辆状态

考虑到车辆定位的准确性以及传统关系型数据库的存储空间,本文设计每隔3分钟对GPS数据进行采集。

根据项目规模、电动自行车数量、平均每天每辆车被租赁次数预测,如果数据不压缩,30天可产生20G字节左右的数据。

为此,在存储车辆GPS信息前,需对数据进行预处理,本文主要涉及两种,即数据过滤和数据裁剪,具体设计在下一节进行详细阐述。

在实际测试中,本文以重庆市为例进行设计和调试,如图4.10所示。

图4.10车辆行驶轨迹信息

图4.10为重庆市2014年3月19日下午四公里到六公里的一段路程,车辆ID为“300005”的电动自行车的行驶轨迹,每一行信息代表一条GPS定位信息,每条记录均按照时间顺序进行存储。

4.4.2原始数据预处理的过程

由于车载终端上传到监管平台可能存在错误、不完整等无效定位数据,为提高数据存储和数据处理效率,首先使用数据过滤和数据裁剪两种方式实现对原始数据的预处理。

1.数据过滤

分析可知,收集到的GPS信息可能存在两种错误情况,分别是区域错误和轨迹错误。

所谓区域错误也包含两种情况,一是GPS信息中包含的经纬度超出所在城市或省市的范围;

二是经纬度位于不可能的位置,如河流、山川等。

轨迹错误是指电动自行车的行驶路径和速度与实际严重不符,如车速大于40km/h。

以重庆市为例,分析错误信息来源,在保证数据过滤的正确性和覆盖率的前提下,本文设计了两种对原始GPS信息的过滤条件,一是根据重庆市所在经纬度范围,过滤明显超出其范围的GPS信息,重庆市经度范围是(105°

17'

-110°

11'

),纬度范围是(28°

10′-32°

13′);

二是过滤电动自行车速度大于40km/h的信息。

通过上述两条过滤条件,能够达到滤除错误信息的目的,具体实现过程如图4.11所示。

图4.11数据过滤流程图

根据一条租借记录中的GPS信息,依次提取GPS信息中的每条记录,首先判断该记录中的车辆行驶速度,若大于40km/h,则直接丢弃,继续轮询提取下一条记录;

若行驶速度在0到40km/h之间,则依次判断该记录中的经纬度,判断其是否处于重庆市经纬度范围内,若不在,丢弃提取下一次记录,若满足则保存为一次正确数据;

重复上述步骤,依次处理GPS数据,直到所有记录均被处理。

2.数据裁剪

通过过滤方法,可滤除原始GPS信息中的错误和冗余数据,针对具体应用和需求,设计一种裁剪方法,去除原始数据中的无关数据,进一步提高结果的准确性和数据处理效率。

参照第三章的需求分析可知,车辆调度功能所需数据是数据库中有效的GPS数据。

本文通过对原始信息的分析,设计了有效数据需要满足的条件。

有效数据需满足两个条件:

车辆状态处于“在租”的数据;

用户从一个站点直接到达另一站点的路径,对于用户其他行为活动而导致的车辆长时间停放的GPS信息为无效数据。

为获取有效数据,本文采用以下裁剪方法,去除无效数据,具体实现过程是:

针对每辆车的每次租借记录,若行驶过程中监管平台采集到的GPS信息中,存在连续的、相同的GPS定位数据,则将此连续的GPS信息的第一条作为有效数据,其余为无效数据,并将真实的行驶时间计为用户此次租赁的总时间减去重复GPS数据次数的三倍。

通过车辆状态判断信息的开始和结束,开始即为车辆状态从“待租”到“在租”,结束点是车辆状态由“在租”到“待租”,这之间的GPS信息代表“路径”。

分离出子路径后,根据用户实际行驶的时间、租借站点和归还站点间的距离,得出电动自行车车速。

上述所说“路径”是指一条租借记录中的所有GPS点组成的行驶路径,“子路径”是指一条租借记录中的有效GPS点组成的有效行驶路径。

上述数据裁剪过程如图4.12所示。

图4.12数据裁剪流程图

获取上述“子路径”后,为保证后期数据处理需要,将这些子路径单独存放到一个文件中,包括GPS点及其所在的路径集。

4.4.3调度最短路径的分析与设计

完成数据预处理和存储后,本节详细阐述车辆调度最短路径的分析与设计。

首先将车辆GPS信息以文件形式存储在Hadoop中,根据上述过滤、裁剪等预处理方式,除去错误、不完整、无效的信息,然后采用基于密度的聚类算法实现调度最短路径选择。

参照数据挖掘步骤和实际应用,在对GPS定位信息进行挖掘和提取时,主要包括模型建立、算法分析和车辆调度设计三个过程。

1.建立基于GPS路径的距离模型

为提取GPS有效路径中的最短路径,结合数据特征和具体应用,首先建立基于路径的距离模型。

具体实现方法是确定、两条路径,其中代表路径,表示路径中包含的GPS点。

按照上述对路径和GPS点的定义可知表示路径中包含个GPS点、表示路径中包含个GPS点,表示它们之间的距离。

模型包含的参数的具体定义如表4.5所示。

表4.5模型中的基本参数定义

序号

参数名称

定义

1

路径

定义为,表示一条有效电动自行车路径,表示GPS定位点数,分别是,点与点之间均是按照时间排列。

每一个GPS均包含其所在的经纬度,即,该GPS点数据传送的时间戳是

2

线段

每一条路径上的相邻两点之间的连线用线段表示,用来预测车辆行驶轨迹

3

多线段

多个连续的上述组成多线段,用表示,其中线段的终点同时也是线段的起点

4

点-线段距离

点到线段上所包含的所有GPS点中距离最小值即为此点到该线段的距离,如图4.13所示

5

点-多线段距离

一条路径上的一个GPS点到另一路径上的多线段的所有线段中距离最小值,路径上点到路径中多线段的距离,表示为

6

点集-多线段距离

路径上的点集,即包含个有效GPS点,该点集与另一路径中多线段的距离表示为,即此点集所包含的所有GPS点到此多路径线段距离的平均值

计算两条路径、之间距离的方法如下,首先将看做点集,看做多线段,按照表4.5对点集-多线段的距离定义,计算出;

之后交换两条路径,

使用上述相同的计算方法,计算出,那么、之间的距离就是上述距离中的较小值。

图4.13聚类算法距离定义

为保证模型更加接近实际,对模型进行多次验证,具体表现在两个方面,首先使用软件模拟实际中位置较近的两条路径,利用上述模型,计算出路径的距离近似为零;

对于路径中的异常点,采用多次求均值的方法,降低其对结果的影响。

2.GPS路径聚类算法的分析与设计

由前文可知,基于GPS数据特征和聚类算法

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 韩语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1