The Xiamen taxi trajectory datasets consist one-month trajectory data of almost 5,000 taxicabs in Xiamen, totally about 220 million GPS position records and 8 million live trips. On the time aspect, the dataset covered all the daytime and nighttime on both weekdays and weekends, being able to reflect mobility patterns in heavy, moderate, and light traffic conditions. Paper about a taxi route recommendation systems:
Yongxuan Lai, Zheng Lv, Kuan-Ching Li, Minghong Liao: Urban Traffic Coulomb's Law: A New Approach for Taxi Route Recommendation, in IEEE Transactions on Intelligent Transportation Systems, Volume 20, Issue 8, Aug. 2019, Pages 3024-3037. [PDF]
Zheng Lv, Yongxuan Lai, Kuan-Ching Li,Minghong Liao and Xing Gao: Taxi Route Recommendation Based on Urban Traffic Coulomb's Law, the 18th International Conference on Web Information Systems Engineering (WISE), 2017
Visualization
The total trip happend from 07:00 a.m. to 08:00 a.m. on July 24th, 2017 (green spot stands for the start location of a trip and red spot stands for the end location of a trip).
Description
The form of the position trajectories is ".dmp" and can be imported into Oracle. The files consist of multiple serialized data units of the following structure, and each data unit is a sample of a taxi's location and time.
The form of the operation trajectories is ".mdf" and can be imported into SQL Server. The files consist of multiple serialized data units of the following structure, and each data unit is a sample of a taxi's trip.
Data Structure
position trajectories
typedef struct _pdata_unit{
char CLBH; // Car ID (e.g. 3459271471)
datetime GPSTIME; // GPS time (e.g. 2014-07-02 15:31:34)
double JD; // Location Longitude (e.g. 24.4752283333333)
double WD; // Location Latitude (e.g. 118.024231666667)
int GD; // Orientation(Orientation/10, bettwen 0 to 35)
char SUDU; // Speed (km/h)
char JQBH; // alarm information (including the information on whether the taxi is occupied or not)
} data_unit;
operation trajectories
typedef struct _odata_unit{
char SIM; // Car ID (there is a one-to-one correspondence betwwen _pdata_unit.CLBH and _odata_unit.SIM)
int GPSONTIME; // GPS time when the trip start (e.g. 2014-07-01 00:01:17.000)
int GPSONTIME; // GPS time when the trip end (e.g. 2014-07-01 00:01:53.000)
char SJD; // Longitude when the trip start (Longitude*10e6, e.g. 118122895)
char SWD; // Latitude when the trip start (Latitude*10e6, e.g. 24483057)
char SANGLE; // Orientation when the trip start (Orientation/10, bettwen 0 to 35)
char EJD; // Longitude when the trip end (Longitude*10e6, e.g. 118122895)
char EWD; // Latitude when the trip end (Latitude*10e6, e.g. 24483057)
char EANGLE; // Orientation when the trip end (Orientation/10, bettwen 0 to 35)
double DISTANCE; // driving distance of this trip (e.g. 0.2km)
double MONEY; // income of this trip (e.g. 9.6)
} data_unit;
You are welcome to contact: laiyx@xmu.edu.cn.
更多
随着汽车技术的发展,车辆数量迅速增长,交通状况日益恶化,为加强车辆之间的信息交互,减少车辆事故,车联网(IOV)的概念应运而生。XMU IOV Simulator是一个高效的模拟器,以模拟IOV节点的移动性和应用。
车联网模拟器的主要设计思路如下:
图1 基于雾节点的车联网示意图
图2 模拟器界面
车联网模拟器主要用于模拟城市中车辆的行驶。 整个模拟器分为三层,图1显示了模拟器的节点结构。 顶层作为整体调度部署在云中,第二层是边缘节点层。 根据网格划分城市,并在网格中设置边缘节点。 作为基础计算节点,边缘节点可以快速响应城市中的请求并执行有效的部署。 底层是车辆所在的节点,是路网部署的实体。
图3 模拟器节点架构
图4 模拟器类图
模拟器希望以JavaFX来开发可视化界面,它比Java Swing和AWT更快,并且在Java的开发中将得到更多支持。模拟器的功能预期可分为以下五点:1)导入并显示城市地图; 2)建立三层节点; 3)设置节点之间的通信协议; 4)在路网中生成并部署请求; 5)展示车辆运动情况;6)统计运行效果(响应速度,丢包率等)
地图的显示是模拟器最直观的功能。 它可以根据不同的导入文件显示不同城市的道路网络,从而使模拟器能够适应多个城市的交通状况,具有通用性。
地图的导入分为三个步骤,1)导入DIMACS文件,2)调用循环清除功能,3)绘制地图。
道路网络由图形表示,因此导入的地图采用DIMACS格式。 p开头的字段是描述性语言,以n开头的字段是节点的信息,以e开头的字段是描述边的信息。
DIMACS是源自离散数学和理论计算机科学的首字母缩写。 DIMACS格式是一种图形数据格式,以纯文本或二进制形式存储,存储单个无向图,这是图形的常用交换格式。
道路网络地图包含大量节点和边线。 导出的DIMACS文件中有大量的回路和连接的子图,这使整个道路网络变得多余和混乱,因此删除了较小的连接子图和孤立的回路。 将整个道路网络连接起来,便于界面展示,也便于后期车辆轨迹的规划和操作。
特定的清除逻辑是遍历图中的每个顶点,将所有连接的顶点存储在数组中,然后将它们导出到新的数据文件中作为用于显示地图的数据。
通过GraphDrawer类对处理DIMACS文件后得到的graph进行绘制,并将结果展现在界面上。
模拟器中的基本单元称为节点。 它包含基本的通讯功能。 根据模拟器的三个级别将其分为三个不同的节点,即调度节点,边缘节点和车辆节点。 这三个节点在不同级别上不同。 角色也不同。
作为顶级节点,调度节点通常部署在云中以调度边缘节点。 调度节点的功能主要是管理边缘节点的分布和启用与否。 边缘节点的分布是由调度节点根据城市地图网格划分生成的。 该节点存储当时处于活动状态的边缘节点的图形。 同时,“调度节点”会根据路网的整体情况调整是否启用“边缘节点”。 当车辆和请求的数量较少时,可以适当减少边缘节点的数量,以节省计算资源。
作为基础计算节点,边缘节点部署在非常靠近车辆的道路一侧。 由于调度的车辆是整个城市的车辆,因此数量很大,直接计算顶部节点将导致压力过高而无法加载相应的计算量。 因此,请使用分层模型,添加一层计算层,部署Edge Node进行边缘计算,并减轻主服务器的压力。
边缘节点负责将每个请求分配给相应的车辆。 该请求由节点提供,根据该节点在请求范围内管理边缘节点。 边缘节点在所有受管理车辆中找到最接近请求且未执行请求的车辆节点,并使用Dijkstra算法来计划车辆的行驶轨迹。
车辆节点是道路网络中最小的单元,代表城市中的每辆车辆。每个车辆节点都归属于边缘节点管理,并且每个车辆节点都由ID标识。每个车辆节点仅接受一个请求。
由于每个边缘节点都具有ID和统一的辐射半径,因此将半径内的车辆节点作为车辆节点进行管理。如果边缘节点范围内的车辆已部署到管理范围之外的节点,则根据调度节点存储的边缘节点活动图,找到最近的边缘节点以确定该车辆是否在其管理范围内(如果有)在该范围内,车辆在该节点附近,如果不在该范围内,则找到与原始节点第二近的Edge节点以做出相同的判断,依此类推。如果所有周围的节点都无法管理车辆,则将管理车辆的边缘节点的ID设置为-1。 30秒后,在车辆附近找到离它最近的边缘节点,以确定它是否可以由该节点管理。如果在范围内,则将边缘节点ID设置为管理车辆的边缘节点的ID。否则,每30秒执行一次相同的操作,直到找到管理节点。
由于当前节点之间的通信只需要满足节点的打开和关闭以及请求的分配,该功能相对简单,因此当前采用的路由协议是直接传递。 采用节点之间的直接通信。 上级节点直接分配下级节点,并且这些节点也具有直接消息传输。 无需设置消息格式。
预期未来的模拟器能够为路由协议设置路由接口,这有助于扩展路由协议。 随着后来的模拟器功能逐渐复杂,可以通过实现接口来添加其他更复杂的协议,例如DTN路由协议和5G路由协议。
2.4 请求生成
模拟车辆的部署主要包括两个方面,一个是部署中所涉及的车辆的状况,另一个是请求的情况。
模拟器需要设置要部署的车辆数,即车辆节点数。 未分配请求时,车辆的初始分布静止。
车辆的初始位置被随机分配给一个随机数。 导入地图时,运动轨迹从初始位置开始沿连接顺序移动。
请求设置主要包括建立请求的数量,请求的时间,出发点和出发点。 以多线程方式,每2000毫秒生成一个新请求,并且最多同时并行生成10个请求。
2.5 分配任务
为了处理请求,模拟器以多态方式调用接口。 默认情况下,模拟器使用最近距离原理。 距离请求起点越近,就将请求分配给车辆,并将Dijkstra算法用于从起点到终点的路径规划。
车辆的运动是多线程的,可以同时操作多辆车辆,并且接口每1000毫秒刷新一次。
模拟器预期在在运行时将设置车辆数量,并按如下运行:1)车辆随机行驶。 2)从配置文件导入车辆行驶轨迹。 车辆经过的节点依次记录在配置文件中。
将在车辆移动时考虑诸如交通密度和车辆交互作用等因素,并且将为模拟器实现更复杂的移动模型。我们将为模拟器实现其他更复杂的协议,例如DTN路由协议,5G路由协议,并使模拟器适合更多场景。
更多
轨迹数据就是时空环境下,通过对一个或多个移动对象运动过程的采样所获得的数据信息,包括采样点位置、采样时间、速度等,这些采样点数据信息根据采样先后顺序构成了轨迹数据。例如具有定位功能的智能手机,轨迹数据反映了手机持有者某一时间段的行动状况,移动互联网络可以通过无线信号定位手机所在位置,进而采样记录,通过连接采样点形成手机持有者的运动轨迹数据;GPS定位终端,固定采样频率的记录终端所在位置的经纬度信息,通过无线网络将数据收集到服务器上;RFID标签技术,对物体进行标记,将物体的移动线路通过RFID识别器完成定位和位置数据记录,形成物体的移动轨迹。
作为数据挖掘的一个新兴分支,轨迹挖掘的研究热点集中在轨迹聚类、轨迹分类、离群点检测、兴趣区域、隐私保护、位置推荐等方面。我们的研究目标是:挖掘轨迹数据的模式,优化实际的交通和城市应用。具体的研究的内容包括以下几个方面:
以手机为代表的移动智能终端已经成为人们生活之中不可缺少的一部分。为了缓解“打车难”的问题,手机打车软件应运而生。项目结合手机打车软件和车载网络(VANET)的背景,基于厦门市真实地图数据和车租车轨迹数据,研究实时监控与历史信息预测并行的打车推荐算法,提高打车的效率和用户体验。
项目成员:吕铮(研一)
更多车载自组织网络(Vehicular Ad-hoc Network,VANET)又称“车载网络”或“车联网”,是利用先进的信息和网络技术,将车辆、行人、道路和路边设施等集成为一个有机的信息系统,以提供车辆安全、交通控制、综合信息和互联网接入等服务。VANET为人、车、路之间的相互作用关系提供了全新的呈现方式,为智能交通系统(Intelligent Transportation System,ITS)提供了更多丰富有效的应用。我们将研究
项目成员: 林志捷(研一) 周策
更多