论文部分内容阅读
在当今社会,一张简单的纸质地图已经完全不能满足人们的问路需求;而纷繁复杂的黄页,既不方便,又不全面,还不够更新。电子智能地图应运而生,将地理信息系统的数据以直观的表现形式呈现给用户,同时附加了本地搜索功能,从而将黄页和地图有机结合。该软件的诞生和发展,伴随着商业产值的爆炸式增长,目前已成为搜索引擎公司必争的市场细分。
本文论述的背景是摩托罗拉中国研究中心的一个创新项目——双平台智能地图(MIMS,Motorola Intelligent Map System)。该智能地图不仅拥有常见的WEB服务,而且利用最新的J2ME技术,在移动设备上实现了一个跨平台的客户端。经过细致的设计,该软件的实现既吸取了当今已经存在的各大智能地图软件的长处,又弥补了它们的一些缺陷。MIMS一共分为三个大的模块,分别为服务器端、移动客户端和PC客户端。分别采用Servlet,MIDlet,WEB页面内嵌的Applet来实现主要的功能。
MIMS最基本的一个功能是进行地图浏览,每个城市都被分为多个层次,每个层次表示了不同地图详细程度。在同一个层次中,地图又被划分为矩形区域,我们以区域为单位来管理地图和实体的信息。整个世界的实体分为流动性点实体,固定点实体,线实体和多边形实体,以抽象的数据结构描述地图,从而大大地提高了地图的传输效率,同时为了美观,我们为每个区域保留了可选的图片。
智能地图系统建立初期,需要海量收集数据,我们开放了流动性点实体的添加功能,并建立了一个待判决信息表,用以存储未被判定为准确的数据。同时系统引入了用户评论,作为评判数据准确性的一个重要标准。为解决实体信息数量和更新提供了一种解决方案。
MIMS系统实现了两种本地搜索,基于类型的本地搜索和基于关键词的本地搜索,分别为MIDlet和PC浏览器访问提供服务。移动客户端可以通过地图浏览进行区域选择,进而精确定位实体的类型,来取得搜索结果,这对小屏幕的移动设备来说是一种最佳实现。对于信息容量较大的PC浏览器,则利用关键词搜索以取得更多信息,我们分别实现了词库建模,索引器,中文分词器,辅助该搜索形式。
本文还针对移动设备的特性在移动客户端提出了几个特殊的设计实现。我们利用J2ME的记录管理系统和PDA Profile for J2ME类库建立本地数据库,对区域中的地图实体和本地搜索结果进行缓存。通过缓存,我们实现了以下功能:一,历史记录的快速回览,在缓存中进行本地搜索;二,菜单操作选项的动态变化,根据用户操作记录,将常用的选项优先显示。本文一共分为引言和正文五个章节。在引言中包含了项目背景,本地搜索的现状,以及MIMS相关介绍。第一章首先阐述了整个软件的架构和功能模块,接着设计了实现所基于的数据结构,在此基础上对三大模块进行了详细设计。第二章讲述了服务器端的实现,包括词库建模,索引器,中文分词器等为基于关键词的本地搜索服务的模块和其他为MIDlet,Applet提供的服务,该章中还讲述了地图信息的实现。第三章从面向对象的角度来阐述移动客户端的实现,对地图、缓存、网络、界面、交互等.Java包进行了详细的描述。第四章着重介绍了Applet相关的PC客户端的实现。文章最后对本文做了总结,提出了今后的发展方向。