Artificial Intelligence and Robotics Research 人工智能与机器人研究, 2013, 2, 10-15 http://dx.doi.org/10.12677/airr.2013.21002 Published Online February 2013 (http://www.hanspub.org/journal/airr.html) Global User-Connected System Based on A-GPS* Xinquan Chen School of Computer Science & Engineering, Chongqing Three Gorges University, Chongqing Email: chenxqscut@126.com Received: Dec. 14th, 2012; revised: Dec. 30th, 2012; accepted: Jan. 6th, 2013 Abstract: This paper presents the design framework of a kind of global user-connected system based on an assisted global positioning system (A-GPS) after introduced its purpose and meanings. In this system, a Server/Client model is selected, which uses a three-leveled server subsystem based on Internet and many intelligent user terminals based on local network/wireless communication. In order to implement this system effectively, several key researching tech- niques is presented. To understand this system deeply, this system has been analyzed in function and structure. In the end, its main features can be discovered by a simple example. Keywords: Assisted Global Positioning System (A-GPS); Global User-Connected System; Associated Relationship; Group Community 基于 A-GPS 的全球用户连通系统* 陈新泉 重庆三峡学院计算机科学与工程学院,重庆 Email: chenxqscut@126.com 收稿日期:2012 年12 月14 日;修回日期:2012 年12 月30 日;录用日期:2013 年1月6日 摘 要:介绍了基于 A-GPS 的全球用户连通系统的用途及含义,描述了这种系统的基本设计框架及系统体系结 构。该系统采用基于互联网的三层服务器体系结构与基于有线/无线通信网络的智能用户终端相结合的 S/C 模式。 接着讨论了为有效实现这种系统而需进一步深入研究的若干关键技术。为更好地理解这个系统,对该系统做了 简单的功能和结构分析,并用一个简单例子来说明它的一些特点。 关键词:A-GPS;用户连通系统;关联关系;群社区 1. 引言 作为一个全球连通系统的用户,如果你选择了全 球连通服务业务,你就可以在地球上(无论是在地球表 面,还是在空中,甚至在地底下)呼叫你的朋友用户, 如果对方能接受你的信号,且同意与你建立连通关 系,你们就可以实现实时通信。如果对方正忙于某事, 或无法接通你的呼叫,你又极想了解对方身在何处 时,基于 A-GPS 的全球用户连通系统就有用武之地了。 如果你和你的爱车都是全球连通系统的用户,利 用物联网技术、GPS、A-GPS 技术[1,2]及用户连通技术 等,你可以随时随地获取你爱车的当前位置及其它信 息,这也可以说是另外一种形式的车辆防盗报警技 术。 如果你和你的智能之家都是全球连通系统的用 户,利用传感器及物联网技术[3]、A-GPS 技术及用户 连通技术等,你可以随时监测你家庭的变化情况并加 以合适的远程操控,这也可以说是另外一种形式的家 庭防盗报警技术及远程控制应用。 当然,A-GPS技术不能过度应用于连通用户中, 否则一些用户就没有多少隐私权可言了。 *资助信息:重庆三峡学院科学研究项目计划资助(NO:11ZZ-058)。 Copyright © 2013 Hanspub 10 基于 A-GPS 的全球用户连通系统 当前,A-GPS 技术不仅广泛应用于军事领域,在 政府有关部门、民用及娱乐行业也得到了广泛的应 用。由于应用领域的进一步拓展,为满足海量用户的 实时定位需求,提供高精度、高可靠性的服务是 A-GPS 技术获得进一步发展的源动力。 腾讯 QQ 作为一种网络交友工具,在中国具有广 大的民众用户。借鉴腾讯 QQ的易用性及远程智能监 控系统的实用性,我们可以建立一种基于 A-GPS 的全 球用户连通系统。在这个系统中,有人类用户,也有 物品用户。在人类用户与物品用户之间,一般是一种 归属的关联关系,这种关系可用来对人对其物品的观 测或监测需求进行建模。在人类用户中,好友关联关 系一般是分类别、分权限等级的。例如,普通好友是 一种必须在对方同意的情况下,可获取对方大致位置 信息的用户圈;亲人好友就是一种在对方同意的情况 下,能获取更为具体的位置信息及其它信息的用户 圈。如果你没有和对方建立一种关联关系,那么你就 无法获取对方的任何信息(除非收到总服务器、分区服 务器、或城市服务器的紧急救援通知)。我们认为这样 的设计,应该可以在信息获取与隐私权保护之间达成 一种平衡,从而更好地为更多的用户提供更加优质的 服务。 本文第二节描述了一种基于 A-GPS 的全球用户 连通系统的基本设计框架。第三节列出了为有效实现 这种系统而需深入研究的若干关键技术。第四节简单 介绍了用户连通系统的特点,并在第五节中用一个简 单例子来作具体的说明。第六节对本文作简要的总结 并指出进一步的发展及研究方向。 2. 基于 A-GPS 的全球用户连通系统设计 2.1. 问题描述 设在用户连通系统(有点类似于一种组合带 A- GPS 功能的QQ 软件与智能监控系统的系统)里已经 注册的,分布在三维球体(地球表面、地下、空中)里 的一个用户集 。其中,用户可以是 自然人、公司,还可以是物品,如汽车、飞机、智能 之家等。在本系统中,所有用户之间的关联关系形成 了一个图。一般情况下,这个图既有双向连接边,也 有单向连接边。所有人类用户之间的关联关系一般会 12 ,,, n SUU U 形成该图的一个具有双向连接边的子图,此时我们可 以将其简化为无向图。某个人用户及其注册物品用户 会形成一个以该人用户为中心的有向图,这是一种物 品与人的归属关系图。 例如,图 1就是一个具有 10 个用户的连通系统 例子的关联关系图,该例子在第五节有较为详细的解 释及说明。 2.2. 用户位置信息表示 2.1.1. 三维笛卡儿坐标表示形式 以地球中心为原点,赤道平面为 XOY 平面,0 经度方向为 X轴正向,地心到北极的方向为 Z轴正向, 这样就可以建立地球的一个三维笛卡儿坐标系。在这 个坐标系下,用户的位置信息可采用三维坐标形式表 示为: X YZ 。任意两个用户的距离相异性度量 ,dis 可采用常用的欧式距离公式。即: 12 2 12 22 , , ij ij ix jxiy jyizjz dis UU LUU uu uu uu 2 (1) 这里 ,, iixiyiz Uuuu和 ,, j jx jy jz Uuuu分别为第 i 个用户和第 j个用户的位置取值。易知, ,0,dis 。 2.1.2. 经度(Longitude)、纬度(Latitude)、高度(Height) 表示形式 在经纬高度坐标系下,用户的位置信息可表示 为: LOLA H 。任意两个用户的距离相异性度量 ,dis 可通过坐标系转换后再采用式(1)来计算或直 接采用经纬高度距离计算算法[4]。 UA UB UC U1 U5 U2 UD UE U3 U4 Figure 1. A global user-connected system with ten elements (Here ,, 1 UU 5 is the set of persons, and ,, AE UU is the set of cars) 图1. 具有 10 个元素(其中 ,, 1 UU 5 是人, ,, AE UU是车)的 全球用户连通系统 Copyright © 2013 Hanspub 11 基于 A-GPS 的全球用户连通系统 Copyright © 2013 Hanspub 12 2.3. 基于 A-GPS 的全球用户连通系统概述 式(3)中,GId 记录网格单元 g的标号;GPosition记录 网格单元g的中心位置,它是一个三维的向量,即 123 ,,pp pP;GRange 记录网格单元 g所包含的区 域范围,它是三维的有序局部区间,即: 2.3.1. 几个定义 定义 1(用户 ID 号的编码规则): 基于 A-GPS 的全球用户连通系统的用户ID号编 码遵循由大到小的注册地编号规则。即用户ID 号是 按照物件分类、地址分级的规则来编码的(这个系统的 用户不仅包括人类用户,还可以包含物品用户,即物 联网用户)。本系统目前暂采用 9个字节的编码公式 为: 11112 22 2 33 33 2,2 ,2,2 , 2,2 prprp rp r pr pr R (4) 式(4)中, 1, 2, 3 i ri为网格单元 g在第 i维上的区间 长度;PNumber 记录网格单元 g内的活动用户数目。 定义 3(三维网格单元编号上的全序关系): ID UserClassId,CountryId,CityId,UserId (2) 在经过三维网格划分后的网格单元集中,任意两 个不同的三维网格单元编号 和 之 间存在着一种全序关系: 123 ,,ii i12 3 ,,jjj 式(2)中,ClassId 记录用户注册时的类别号,采用1 个字节表示。在本系统中,人类用户与车辆用户、飞 机用户等需加以区别;CountryId 记录用户注册时的国 家或地区号,采用2个字节表示;CityId 记录用户注 册时的城市号,采用 2个字节表示;UserId 记录用户 注册时在注册城市所分配到的Id号,采用 4个字节表 示。 123123 ,,, ,iiij jj当且仅当 111 1,1 3 kk kk ijiji jk (5) 式(5)的一种更详细的表示方式为: 123123 ,,, ,iiij jj 当且仅当 在这个系统中,我们可以采用类似于[5]的网格单 元划分法来建立活动用户的空间索引结构。 11112 2 112 233 ijiji j iji jij (6) 定义 2(网格单元[5]): 某个有限有序空间在经过多维网格划分后得到 许多规则区域,我们将每个规则区域称为一个网格单 元。若某个网格单元所含的活动用户数目超过某个阈 值ε,就称为有效网格单元。设在三维有序属性上的 空间分割间隔向量为 ,则三维网格单元的 数据结构可定义为: 123 ,,rr rr 2.3.2. 系统体系结构 我们首先给出基于 A-GPS 的全球用户连通系统 的体系结构框图(如图 2所示)。 2.3.3. 系统架构图 基于 A-GPS 的全球用户连通系统的架构如图 3 示。 DS GId,GPosition,GRange,PNumberg (3) 所 Figure 2. Structure of global user-connected system based on A-GPS 图2. 基于 A-GPS 的全球用户连通系统结构 基于 A-GPS 的全球用户连通系统 Figure 3. Architecture of global user-connected system based on A-GPS 图3. 基于 A-GPS 的全球用户连通系统架构 2.3.4. 服务器端的功能模块设计 服务器端的主要作用是存储用户在不同时段的 位置信息、好友信息及群社区信息等,并能及时应答 活动用户的查询任务(好友位置查询、亲友位置查询、 δ近邻区活动用户查询等)。目前,服务器端设计为三 层体系结构,相关的应答业务一般根据分级原则来处 理。 总服务器的功能:负责完成分区服务器之间的协 作通信,负责全球级的信息传递业务,负责保证全球 连通级用户的信息一致性。另外,总服务器需记录跨 分区的活动用户移动信息,以支持相应的查询任务。 分区服务器(如中国区服务器)的功能:负责完成 其辖区内城市服务器之间的协作通信,负责其辖区内 城市服务器之间的信息传递业务,负责上报进入本分 区的异区活动用户活动情况。另外,分区服务器还需 记录本分区范围内跨城市活动用户的移动信息,以支 持相应的查询任务。 城市服务器(如广州服务器)的功能:从长远来看, 城市服务器需要采用一种既支持有线连接又支持无 线连接的符合物联网发展趋势的服务器。城市服务器 负责本城市覆盖区新用户的注册申请、老用户的退出 申请及信息变更申请等事项。另外,城市服务器还需 负责登记进入本辖区的异地(其他分区或其他城市)活 动用户,并检测其活动情况(如离开或关机等)并上报 分区服务器或总服务器。城市服务器需及时更新其用 户数据库的内容,以保证数据的正确性和一致性,并 及时将异市活动用户信息上报给分区服务器或总服 务器。 基于 A-GPS 的全球用户连通系统在服务器端的 功能模块结构如图 4所示。 2.3.5. 用户端的功能模块设计 用户端的功能设计:基于 A-GPS 连通系统的用户 端首先应该具有一个 A-GPS 功能模块,这个模块能接 受到几个 GPS卫星的信号,从而计算出用户的当前位 置。其次用户端应该是一种具有CPU 处理器和存储 器,从而能安装嵌入式操作系统的可移动智能终端, 这样就可以安装用户连通系统用户端软件。最后用户 端应该可以通过有线网络或无线网络连接到互联网 上,从而方便、快捷地从城市服务器、分区服务器、 或总服务器查询到相关的信息。依当前的技术发展水 平,带有A-GPS 功能的智能手机就可以实现用户端的 部分功能。 基于 A-GPS 的全球用户连通系统在(智能手机型) 用户端的一种功能模块结构如图5所示。 UserConnect 服务器端软件 面向对象的时空 DBMS 服务器端操作系统 高性能处理器集群磁盘存储阵列 有线、无线通信模块 Figure 4. Functional structure in sever end 图4. 服务器端功能模块结构 UserConnect 用户端软件GPS 定位计算软件 GPS 驱动软件 用户端操作系统 GPS 模块 CPU+存储器模块 有线/无线通信模块 输入/输出模块 Figure 5. Functional structure in user end 图5. (智能手机型)用户端功能模块结构图 Copyright © 2013 Hanspub 13 基于 A-GPS 的全球用户连通系统 3. 基于 A-GPS 的全球用户连通系统的 若干关键技术 3.1. 服务器端的数据库设计 总服务器的数据库设计:总服务器需要存储所有 用户的信息(时态位置信息及用户资料信息等),所以 需要采用一种支持快速索引操作的时空数据库管理 系统。 分区服务器的数据库设计:分区服务器需要存储 本分区用户的信息(时态位置信息及用户资料信息 等)。它一般采用一种支持快速索引操作的时空数据库 管理系统,以便能快速响应对分区范围内的δ近邻区 活动用户查询、重点用户活动路线查询等任务。 城市服务器的数据库设计:城市服务器需要存储 本城市注册用户的资料信息及在本城市范围内活动 的所有用户位置信息(含异市或异分区活动用户)。它 需要采用一种支持快速索引操作的空间数据库管理 系统,以便能快速响应城市范围内的δ近邻区活动用 户查询等任务。 3.2. 全体用户数据库的存储方式及索引结构 在总服务器里存储着全体用户的多种信息,因此 需要一种支持能存储海量时空信息的数据库管理系 统。其索引结构一般可采用平衡二叉树。 3.3. 活动用户数据库的存储方式及索引结构 活动用户数据库需采用一种支持快速空间查询 的数据库管理系统。其空间索引结构一般可采用 R- 树型结构或网格单元结构。 3.4. 关联用户集的存储方式及索引结构 在用户端储着该用户的注册信息及其关联用户 的ID 号及关联关系类别。在服务器中,也需要存储 着每个用户的关联用户的ID 号及关联关系类别。由 于每个用户的关联用户数目一般都比较小,所以采用 连接表结构是一种高效节省的方法。由于连接表较 小,所以一般可采用基于数组的下标定位索引方法。 3.5. 分布式时空数据库的设计方案及通信机制 如果以关联关系的密集度来作聚类分析的话,那 么由于全球用户大致会形成一个两层的关联关系聚 类簇。第一层是所有分区的用户子集组成全球用户 集,第二层是一个分区所含城市的用户子集组成该分 区的用户子集。一般情况下,城市与城市之间的关联 关系密集度要小于城市内部用户之间的关联关系密 集度,分区与分区之间的关联关系密集度要小于分区 内部各城市之间的关联关系密集度。由于云计算及云 存储技术的进一步发展,所以该系统采用一种分布式 协同服务器方案也许是一种较为高效的选择。在这个 方案中,每个城市设立一个服务器,一个分区的所有 城市组成一个分布式服务器系统,全球所有分区又组 成一个更高层的分布式服务器系统,从而形成一个二 层分布式服务器系统。 为减少通信带宽及时间延迟,我们采用一种下层 与直接上层通信的机制,尽量避免越层通信。 3.6. 基于 A-GPS 的群社区通信机制 在用户连通系统中,每个注册用户可加入到多个 群社区,每个星级注册用户可建立或加入到多个群社 区是一种非常有实用价值的方案。群社区的信息由群 主的注册城市服务器负责存储及管理,并负责协调群 成员之间的通信。本系统采用客户端–服务器结构这 种曾经比较流行的设计方案。 3.7. 基于 A-GPS 的全球用户连通系统的 原语设计 1) 基于 A-GPS的空间位置消息发送原语可设计 为: int SendPosition(SenderID, ReceiveID, Position, TimeStamp), 其中 SenderID是发送空间位置消息用户的 ID 号; ReceiveID 是接受空间位置消息用户的ID号,这种用 户一般是服务器;Position 是发送消息用户的当前空 间位置;TimeStamp 是发送消息时刻的时间标签。如 果发送成功,该原语返回非0;如果发送失败,则返 回0。 2) 活动关联用户查询原语可设计为: UserSet QueryOnlineRelatedUser(QueryerID, Posi- tion, Tim eS t amp), 其中 QueryerID 是询问用户的 ID 号;Position是询问 用户的当前空间位置;TimeStamp 是询问时刻的时间 标签。该原语的返回结果为一个用户子集 UserSet。 Copyright © 2013 Hanspub 14 基于 A-GPS 的全球用户连通系统 Copyright © 2013 Hanspub 15 5 3) δ近邻区活动用户查询原语可设计为: 这种根据数据量的大小差别、所检索数据的性质 不同而采用相应的索引结构,其最终目的是在检索效 率和存储空间利用率之间取得一种平衡。 UserSet QueryOnlineRelatedUserInDeltaRange(Qu- eryerID, DeltaRange, Position, TimeStamp), 其中 QueryerID 是询问用户的 ID 号;DeltaRange是一 个以询问用户为中心的空间范围参数;Position 是询 问用户的的当前空间位置;TimeStamp是询问时刻的 时间标签。该原语的返回结果为一个用户子集 UserSet。 5. 例子说明 在图 1所示的例子中,子集 是人类用 户,子集 1 ,,UU ,, A UUE 是车辆用户,在人类用户子集中, U1的好友集是 52 ,UU ,U2的好友集是 ,U5的 好友集是 1 U 1 U;U3的好友集是 ,U4的好友集是 4 U 3 U。物品集 ,, A 4. 基于 A-GPS 的全球用户连通系统的特点 4.1. 时空数据库技术的应用使得该系统具有 一定的应用前景 E UU 与人类用户集之间存在着 一种归属关系。例如,车辆UB属于人 U1单独所有, 车辆 UC属于人U5单独所有,车辆 UA属于人U1和 U5和共同所有;车辆UD属于人U4单独所有,车辆 UE属于人 U3单独所有。 利用 A-GPS 定位技术,采用时空数据库来存储用 户在不同时间段的位置信息,这样在特定情况下可跟 踪用户的活动轨迹,从而为一些特殊应用提供技术支 持,进而使得基于 A-GPS 的全球用户连通系统具有一 定的实用性。 在这个例子中,用户子集 和用户子集 125 ,,,,, ABC UUUU U U 34 ,,, D E UUU U之间不存在任何关联关 系,说明这个例子存在着 2个独立的关系圈。 虽然一些大的数据库厂商在原有的数据库管理 系统基础上添加了时间、空间管理及查询功能,但面 向海量数据的分布式时空数据库系统的研发,以及设 计出更为高效的时空数据索引结构和基于物联网的 协作通信技术仍是一个重要的研发课题。 6. 结束语 在未来的社会生活中,人与人之间、物与物之间、 人与物之间都可能会建立多种关联关系。为有效地描 述这种复杂的关联关系,本文概述了一个有实用价值 的基于 A-GPS 的全球用户连通系统,初步介绍了该系 统的基本设计方案及仍需继续研究的若干关键技术。 4.2. 多层分布式数据库管理系统使得该系统 在实时性和可行性上达成一种折衷 对本文所介绍的一些方案进行改进,对若干关键 技术进行更为深入的研究及实际系统的运营开发是 下一步的工作。 针对全球连通用户遍布全球的特性,如果局部范 围内的大量信息修改都需要实时访问全局服务器的 全局数据库,那么以当前的硬件水平很难满足数以亿 计的用户数目,所以我们设计一种多层分布式数据库 管理系统来存储所有用户的各种信息。 参考文献 (References) [1] GPS官方网网站[URL]. Introduction to GPS. http://gpshome.ssc.nasa.gov 4.3. 多种索引结构及索引技术的结合使得该 系统在高效性与复杂性上取得一种平衡 [2] 百度百科[URL]. http://baike.baidu.com/view/628443.htm [3] 孙凝晖, 徐志伟, 李国杰. 海计算: 物联网的新型计算模型 [J]. 中国计算机学会通讯, 2010, 6(7): 52-57. 城市服务器可采用网格单元索引结构来加快检 索其辖区内的活动用户的位置信息。城市服务器、分 区服务器、总服务器采用一种平衡二叉树(如红黑树) 或哈希表充当注册用户数据库系统的索引结构。 [4] Helmert Datum Shift Methods, 2013. http://www.bluemarblegeo.com/knowledgebase/geocalc/classdef/ datumshift/datumshifts/helmert_transformation.htm [5] X. Q. Chen. Clustering based on near neighbour point set, 2009. http://www.paper.edu.cn |