论文部分内容阅读
[摘要]移动POI(Point Of Interest,兴趣点)是一项由社区驱动基于位置的服务,这项服务包括一个服务器系统和一个客户端应用程序,客户端应用程序是针对手机平台开发的,该服务的主要特点是让用户之间能够分享地理位置的信息。因此,将阐述移动POI系统原型的整体设计和成果评估。
[关键词]
中图分类号:TN91文献标识码:A文章编号:1671-7597(2010)0110059-01
0 引言
目前市场上充斥着许多不同的定位服务,然而还没有任何一种真正得以普遍流行。本文所涉及的项目的目标是尝试创建一种全新的由社区驱动的定位服务,使得移动用户之间能够共享地理位置相关的信息。
移动POI系统由提供地图和用户位置信息的服务器以及客户端程序组成。服务器是基于Linux环境并且运行Erlang程序。客户端程序是针对手机平台的,运行在J2ME环境中。移动POI系统融合应用了多种定位技术,这些技术包括GPS,移动网络辅助定位以及用户手动定位。本文将阐述这个项目背后的思想,并对整个系统进行综合概述。
1 移动POI系统
1.1 POI的思想概念
移动POI系统项目的目标是创建一个平台,让用户们能够自由地分享彼此之间的地理位置以及相关信息。一个POI(Point of Interest,兴趣点)是指一个包含一些相关特定信息的地理位置。POI可以包含不同类型对象(例如餐馆,酒吧或公园)的信息,这些信息包括位置,文字描述,图片和用户们的评论。每一个POI都被分门别类,归属于某一社区和某一类别。社区是指一组用户,每个用户都能创建一个新的社区,并且可以选择并授权其他用户成为社区成员。每个社区都能拥有一些只有该社区成员才能查看的POI。类别是用来区分的不同的POI,例如餐厅,酒吧,商店等等。当用户在添加POI时,便可以选定它属于哪一类别。设置类别的目的是让用户能够更好地过滤掉不感兴趣的POI,而只查看关心的POI。移动POI系统有两个不同的用户界面,分别是手机和Web界面。基于社区的想法是希望让用户能够互相之间分享交流自己感兴趣的POI,而不是由一个集中的信息供应商来提供所有的POI信息。每个用户都能够创建新的社区或者加入现有的社区。用户只能查看自己所在社区中的POI或者公共的POI。
1.2 手机客户端
移动POI系统的客户端应用程序是专门为手机平台开发的。用户可以在当前地图上所显示的不同POIs之间来回切换(见图1),查看每个POI的相关信息。在地图中显示哪些POIs是由该用户所属的社区以及地图所显示的区域来决定。当POIs在地图中显示后,用户可以通过选择某一类别来对这些POIs进行过滤,只保留自己关心的POIs。通过点击地图中的某一POI,用户便跳转到该POI的信息显示页面中(见图3)。用户可以选择添加评论或者查看其他用户所写的对该POI的文字评论。在地图页面上,用户能够放大或者缩小地图,移动地图或者选择其他位置来显示不同地图。用户还可以添加属于他们自己的POI,让社区中的其他成员用户能够查看它。用户添加POI的步骤是,先用光标在地图上选定某一位置(见图2),然后是选择某一类别,接着为所选定的位置点输入一个名称和一段文字描述(见图4)。在某些型号的手机上,还有一个额外选项,那就是为POI添加用手机内置的相机所拍下的图片。
1.3 Web界面
移动POI系统拥有两个独立的Web界面,一个则面向终端用户,另一个面向系统管理员。终端用户Web界面向用户反馈手机客户端平台上的不同社区信息,以非常简洁的方式来查看和编辑所有信息。系统管理Web界面在终端用户Web界面的基本上,外加一些系统管理功能。
2 系统剖析
移动POI系统包括手机客户端和服务器端系统。服务器端系统由两个主要数据库,与手机客户端的通信接口以及外部地图服务器构成。服务器端和客户端之间使用自定义的通信协议建立连接。
移动POI系统的服务器端由数据库,Web服务器和POI应用服务器所组成。POI应用服务器负责处理从手机端发送的请求,它同时与远程地图服务器建立连接。
系统拥有两种不同的手机客户端:一种是带有GPS全球定位系统的手机,另一种则是不带有GPS的手机。自带GPS的手机能够向POI应用服务器提供非常准确的位置信息。另一类客户端手机不带有GPS设备,这类客户端就主要依靠POI应用服务器中的自我学习系统(self-learning system)来定位,或者由用户在地图上手动输入自己当前所在的位置。
自我学习系统(self-learning system)是基于Cell-ID来定位的。此定位的方法是,服务器能够将每个独立的Cell-ID映射到一个地理位置上,这种粗略定位使用的是一维定位算法。如果手机客户端既知道自己的确切位置,又知道Cell-ID,例如上面所提到的带有GPS的手机,便能通过同时发送位置和Cell-ID来帮助POI服务器中的自我学习系统程序更加完善,提高整体的定位精度。
客户端应用程序是专为手机平台开发的。客户端应用程序是用J2ME编写的。客户端与服务器之间通过GPRS连接,使用一种简单的自定义通信协议进行通信。
3 评估与测试
对移动POI系统的所有功能,已经进行了完整的测试和验证。该项目的初衷是使用Cell-ID定位技术,能够让系统随着时间的推移,自我学习系统的完善来得以提供精度不断提高的定位服务。但是,当前只有少数手机型号支持Cell-ID的提取。对Cell-ID的提取只在少数诺基亚型号的手机上成功过,因此,使用Cell-ID帮助定位的目标并没有最终完全实现。不过,位置计算与自我学习系统的算法依然能够很好的工作。
4 总结
本文概述了移动POI系统,提供一种新型的移动定位服务。最终完成的系统达到预期的要求。在项目开发过程中,遇到一些硬件相关的问题,比如手机上Cell-ID的提取。因此,项目的重心就从Cell-ID辅助定位,转移到社区服务的概念。如果该项目今后进行拓展开发并期望将其做成商业产品,社区服务将是一个非常重要的特点。而定位问题则是次要的,因为它完全可以通过移动网络运营商的辅助或使用GPS全球定位系统来达到目标。
[关键词]
中图分类号:TN91文献标识码:A文章编号:1671-7597(2010)0110059-01
0 引言
目前市场上充斥着许多不同的定位服务,然而还没有任何一种真正得以普遍流行。本文所涉及的项目的目标是尝试创建一种全新的由社区驱动的定位服务,使得移动用户之间能够共享地理位置相关的信息。
移动POI系统由提供地图和用户位置信息的服务器以及客户端程序组成。服务器是基于Linux环境并且运行Erlang程序。客户端程序是针对手机平台的,运行在J2ME环境中。移动POI系统融合应用了多种定位技术,这些技术包括GPS,移动网络辅助定位以及用户手动定位。本文将阐述这个项目背后的思想,并对整个系统进行综合概述。
1 移动POI系统
1.1 POI的思想概念
移动POI系统项目的目标是创建一个平台,让用户们能够自由地分享彼此之间的地理位置以及相关信息。一个POI(Point of Interest,兴趣点)是指一个包含一些相关特定信息的地理位置。POI可以包含不同类型对象(例如餐馆,酒吧或公园)的信息,这些信息包括位置,文字描述,图片和用户们的评论。每一个POI都被分门别类,归属于某一社区和某一类别。社区是指一组用户,每个用户都能创建一个新的社区,并且可以选择并授权其他用户成为社区成员。每个社区都能拥有一些只有该社区成员才能查看的POI。类别是用来区分的不同的POI,例如餐厅,酒吧,商店等等。当用户在添加POI时,便可以选定它属于哪一类别。设置类别的目的是让用户能够更好地过滤掉不感兴趣的POI,而只查看关心的POI。移动POI系统有两个不同的用户界面,分别是手机和Web界面。基于社区的想法是希望让用户能够互相之间分享交流自己感兴趣的POI,而不是由一个集中的信息供应商来提供所有的POI信息。每个用户都能够创建新的社区或者加入现有的社区。用户只能查看自己所在社区中的POI或者公共的POI。
1.2 手机客户端
移动POI系统的客户端应用程序是专门为手机平台开发的。用户可以在当前地图上所显示的不同POIs之间来回切换(见图1),查看每个POI的相关信息。在地图中显示哪些POIs是由该用户所属的社区以及地图所显示的区域来决定。当POIs在地图中显示后,用户可以通过选择某一类别来对这些POIs进行过滤,只保留自己关心的POIs。通过点击地图中的某一POI,用户便跳转到该POI的信息显示页面中(见图3)。用户可以选择添加评论或者查看其他用户所写的对该POI的文字评论。在地图页面上,用户能够放大或者缩小地图,移动地图或者选择其他位置来显示不同地图。用户还可以添加属于他们自己的POI,让社区中的其他成员用户能够查看它。用户添加POI的步骤是,先用光标在地图上选定某一位置(见图2),然后是选择某一类别,接着为所选定的位置点输入一个名称和一段文字描述(见图4)。在某些型号的手机上,还有一个额外选项,那就是为POI添加用手机内置的相机所拍下的图片。
1.3 Web界面
移动POI系统拥有两个独立的Web界面,一个则面向终端用户,另一个面向系统管理员。终端用户Web界面向用户反馈手机客户端平台上的不同社区信息,以非常简洁的方式来查看和编辑所有信息。系统管理Web界面在终端用户Web界面的基本上,外加一些系统管理功能。
2 系统剖析
移动POI系统包括手机客户端和服务器端系统。服务器端系统由两个主要数据库,与手机客户端的通信接口以及外部地图服务器构成。服务器端和客户端之间使用自定义的通信协议建立连接。
移动POI系统的服务器端由数据库,Web服务器和POI应用服务器所组成。POI应用服务器负责处理从手机端发送的请求,它同时与远程地图服务器建立连接。
系统拥有两种不同的手机客户端:一种是带有GPS全球定位系统的手机,另一种则是不带有GPS的手机。自带GPS的手机能够向POI应用服务器提供非常准确的位置信息。另一类客户端手机不带有GPS设备,这类客户端就主要依靠POI应用服务器中的自我学习系统(self-learning system)来定位,或者由用户在地图上手动输入自己当前所在的位置。
自我学习系统(self-learning system)是基于Cell-ID来定位的。此定位的方法是,服务器能够将每个独立的Cell-ID映射到一个地理位置上,这种粗略定位使用的是一维定位算法。如果手机客户端既知道自己的确切位置,又知道Cell-ID,例如上面所提到的带有GPS的手机,便能通过同时发送位置和Cell-ID来帮助POI服务器中的自我学习系统程序更加完善,提高整体的定位精度。
客户端应用程序是专为手机平台开发的。客户端应用程序是用J2ME编写的。客户端与服务器之间通过GPRS连接,使用一种简单的自定义通信协议进行通信。
3 评估与测试
对移动POI系统的所有功能,已经进行了完整的测试和验证。该项目的初衷是使用Cell-ID定位技术,能够让系统随着时间的推移,自我学习系统的完善来得以提供精度不断提高的定位服务。但是,当前只有少数手机型号支持Cell-ID的提取。对Cell-ID的提取只在少数诺基亚型号的手机上成功过,因此,使用Cell-ID帮助定位的目标并没有最终完全实现。不过,位置计算与自我学习系统的算法依然能够很好的工作。
4 总结
本文概述了移动POI系统,提供一种新型的移动定位服务。最终完成的系统达到预期的要求。在项目开发过程中,遇到一些硬件相关的问题,比如手机上Cell-ID的提取。因此,项目的重心就从Cell-ID辅助定位,转移到社区服务的概念。如果该项目今后进行拓展开发并期望将其做成商业产品,社区服务将是一个非常重要的特点。而定位问题则是次要的,因为它完全可以通过移动网络运营商的辅助或使用GPS全球定位系统来达到目标。