APP下载

历史事件时空过程描述及其可视化研究

2014-06-07王占刚庄大方

计算机工程 2014年11期
关键词:树结构数据模型时态

王占刚,庄大方,王 勇

(中国科学院地理科学与资源研究所资源环境数据中心,北京100101)

历史事件时空过程描述及其可视化研究

王占刚,庄大方,王 勇

(中国科学院地理科学与资源研究所资源环境数据中心,北京100101)

结合基于事件的时空数据模型和面向对象的思想,提出一种面向历史事件的时空数据模型。分析基于事件、变化与状态之间的关系,描述和再现重大历史事件中的时空信息及时空变化。给出一种结合事件链表与子事件树的历史事件时态树结构,有效地将时间、事件及相关时空对象组织起来,动态追溯、反演和检索历史事件的发展过程与状态。利用事件时态树结构实现历史事件时空过程可视化,并以Adobe Flex为工具开发实现了历史事件时空过程可视化算法,取得良好效果。

历史事件;时空数据模型;事件;状态;时空过程;可视化

1 概述

历史事件内容纷繁复杂,如何以事件为线索,有效组织并展示历史信息是一个难题。基于事件的时空模型主要针对事件或单体变化,能够描述时空变化过程,并对触发这种变化的原因和结果进行表达与分析[1]。基于事件的时空模型显式存储了与时间相关的变化,该模型能较好地反映空间对象状态变化的因果关系,而且支持时间与空间方面的快速检索与高效存储[2]。文献[3]基于事件语义的描述,用事件的<对象,时间,空间,事件,属性>五元组来构建时空数据模型。将基于事件语义的时空模型应用于地籍管理信息系统中,记录宗地变更过程。文献[4]从时空语义表达的要求出发,通过分析事件、过程、状态三者间相互关系,提出基于事件-过程-状态的时空数据模型。该模型能反映时空对象的演变过程以及这个过程中产生的各种因果关系。传统基于事件的模型中每个事件用来描述上次事件之后的特征变化和分布,数据结构简单,缺少对事件之间拓扑关系的描述,时空分析能力较弱;且这些模型多是以土地利用变化、地籍管理等为主[5],还未见针对历史上各类事件、对象的时空数据模型研究。

在可视化领域,以时间和空间为主导的时空数据可视化问题已成为一个研究热点[6-8]。时空数据可视化是将空间、时间与属性等要素结合,在可视化的基础上表达时空变化与发展过程,直观反映时空对象在不同时间的各个状态与动态演化,时空数据可视化的核心就是时空过程的可视化。时间与空间数据结合可以动态反映变化的实体与现象,能够描述时空对象的产生、发展、演化与消亡的全过程[9]。时空可视化类型包括静态可视化和动态可视化。静态可视化通常采用二维图形图像法、三维图形图像法,动态可视化通常采用动画、虚拟现实、时空数据库的动态可视化等方法。时空数据可视化可用于对时空对象发展变化的展示、分析、预测及推演[10]。由于增加时间维之后信息量急剧增加,现有技术难以处理与管理,并且缺乏有效描述模型,时空数据可视化尤其是时空过程可视化方面的研究尚有待深入[11-13]。

本文在对历史事件中时空特征及对象进行分析的基础上,结合基于事件的时空数据模型和面向对象的思想,提出以历史事件为核心的时空数据模型,该模型以变化-状态为主线,可以完整描述复杂历史事件中的时空信息及时空变化,并能记录不同事件之间的关联关系。本文基于历史事件时态树结构,辅助利用符号、图形序列、高亮、聚焦、动画、叠加图等方式对历史事件进行时空过程可视化。最终开发实现了相应的历史事件时空过程可视化算法。

2 历史事件脚本时空特征

对于历史事件时空模型及可视化而言,历史事件脚本需要明确地指出事件发生的时空对象、时间、位置、范围、发展及演化过程。其中时空对象具有空间特征、时态特征和属性特征,它不仅描述了对象的瞬间空间状态和属性,而且能够表现对象的时空变化。历史事件中的时空对象可以是人、物、群体、地点或区域,根据其表达需求可以定义为点、弧、面等空间类型。事件发生时间可以是时刻或时段。事件中的空间范围可以是某个地点、县或时,也可以是某州、郡或统治区域。随着时间的推移,历史事件的时空对象不断发生变化,即可能发生位移、形变(合并、分裂、区域变化)、属性变化(归属变化)及其组合,这种时空变化可以是军队行进、人口迁移、疆域拓展、城市变迁等。

历史事件时空可视化中的一个重要步骤就是对事件脚本进行时空化处理,即基于语义提取事件过程中的对象、位置,以及发生的时间、范围、变化与过程。如表1所示,以“李自成进北京-攻破潼关”中一个片段为例,展示历史事件脚本中蕴藏的时空特征。表中描述的事件脚本为“1643年10月,李自成攻破潼关,杀死督师孙传庭,占领陕西全省”,共包含5个时空变化过程。其中“李自成由襄阳行进至潼关”中,时空对象为李自成(及其大顺军),发生时段为1643年10月期间,李自成(及其大顺军)发生对象位移变化,由襄阳移动至潼关。在此变化中,李自成可以抽象成点,其变化空间范围为线。潼关被攻破之后,归属由明朝改为李自成属地,发生属性变化;孙传庭被杀死,发生属性变化;陕西全省被占领,归属由明朝改为李自成属地,发生属性变化;李自成属地边界产生变化,发生对象形变。

表1 历史事件脚本时空特征

3 面向历史事件的时空数据模型

结合基于事件的时空数据模型[4,14-15]和面向对象的思想[16],提出面向历史事件的时空数据模型(HistoricalEventsOriented Spatio-temporalData Model,HEOSDM),该模型基于事件、变化与状态,利用该模型能够描述和再现重大历史事件中的时空信息及时空变化。模型主要定义如下:

时空数据模型:

HEOSDM=<Obj,Time,Event,State,Change>其中,Obj表示时空对象;Time表示时间;Event表示事件;State表示状态;Change表示变化。

时空对象:

其中,OID表示Obj(i)的序列号;F表示时空对象的空间特征,包含位置、形态;A表示时空对象的属性特征。

事件:

其中,EID表示Event(i)的序列号,其依据发生先后排列;SubEvent是子事件的集合;T表示事件发生的时刻或时段、时间类型;A表示事件属性信息,包含时间发生原因、情况等。

子事件:

其中,M表示子事件发生的若干对象集合;W表示子事件中对象的行为或客观发生的情况,在本文中定义为变化;P表示子事件的发生位置;T表示子事件的发生时间,可以是时刻或时段;Lf表示子事件间的关联结点,包括父结点和兄弟结点;LA表示子事件的属性。

变化:

其中,CID表示Change(i)的序列号;Obj是事件的对象集合;SubEvent表示子事件对象;Si表示时空对象的初始状态;Si+1是发生事件Event后的更新状态。

状态:

其中,SID表示State(i)的序列号,其依据发生先后排列;Obj是状态的对象集合;T表示该状态所处的时刻或时段;F表示时空对象的空间特征,包含位置、形态;A表示时空对象的属性特征。

如图1所示,该模型以历史事件为核心,以变化-状态为主线。模型将历史事件中的主要对象抽象成类,包含事件、变化、状态3种主体类,以及时空对象、对象快照和时间等辅助类。事件类由时空对象、事件属性和时间聚合而成;状态由对象快照和时间聚合而成;变化类由事件、时空对象和时间聚合而成。时空对象是模型中的主要对象,具有空间特征和属性特征。时空对象通常由点、弧、面和体构成,它们共同继承自矢量基类。

时刻和时段继承自时间基类,时刻、时段和属性特征聚合成时间类。属性基类派生出对象属性、时间属性和事件属性。模型中包含矢量、时间和属性3种基类,主要包含了一些具有公共特征的对象特征和操作方法。事件、变化、状态共同构成了历史事件模型。

图1 面向历史事件的时空数据模型

以“李自成进北京-攻破潼关”子事件为例,子事件由时空对象、变化、时间等构成。时空对象涉及“李自成、孙传庭、潼关、陕西、李自成属地”,每个时空对象对应一个或几个时空变化。其中,“李自成”对应发生“由襄阳移动至潼关”的位移变化,变化由时空对象、子事件、状态构成。状态由对象快照和时间组合而成,在“由襄阳移动至潼关”的位移变化中,“李自成”的状态由“位于襄阳”改为“位于潼关”。可以看出,面向历史事件的时空数据模型既包含时空对象、属性及时态信息,又保留了事件中的时态拓扑信息,为历史事件展示、时空回溯奠定基础。

4 历史事件时空过程可视化

4.1 历史事件时态树

为实现时空数据的可视化与分析,满足时空查询检索的需求,需要在时间与空间的基础上提出有效的时空索引[17-18]。本文面向历史事件中的时空对象及其变化特征,提出一种结合事件链表与子事件树的历史事件时态树结构。该结构采用双数据结构,有效地将时间、事件及相关时空对象组织起来,可以动态追溯、反演和检索历史事件的发展过程与状态。该方法符合时空数据的表达和人类认知的逻辑思维,为进行历史事件时空过程可视化奠定了基础。

文献[19]用树结构有效地组织与管理事件,通过树结构及事件之间相互关联来实现地理要素的时空回溯。文献[20]建立了包含时间特征的时空对象模型和反映时空变化的时态树结构,作为时空对象动态可视化的时态版本数据源。文献[21]通过分析事件驱动的特征对象数据存储与管理机制,提出了一种基于特征和事件双效机制的时空数据快速索引机制。本文已有研究基础上,提出基于事件时态树结构对历史事件进行时空回溯。

如图2所示,事件时态树是具有时空特征的索引,是一种包含事件主链表与子事件树相结合的双数据结构。顶层事件组成了历史事件的主体线索,如事件_1、事件_2、事件_3和事件_4之间采用双向链表进行组织,而每个事件及其子事件构成了树形结构。子事件是事件的具体细节,以事件_1为例,其包含子事件_1_1、子事件_1_2和子事件_1_3 3个兄弟子结点,并且3个子事件之间两两存在因果关系。在事件_2中,子事件_2_2和子事件_2_3属于并列关系,其与子事件_2_1是因果关系。在事件_3中,子事件_3_2和子事件_3_3不存在因果关系。事件中详细记录各子事件发生时间,其发生时间可以是时刻或时段,即t'≥t。在时间轴上各个事件及子事件可以是顺序发生,也可以是同时发生或重叠发生,各事件及子事件均以发生时间为序进行排列。

图2 事件时态树结构

4.2 基于事件时态树的历史事件时空过程可视化算法

4.2.1 算法总体思路

本文提出基于事件时态树结构对历史事件进行时空过程可视化。事件时态树是在树结构基础上增加了对时态的描述与处理,比较适合用于复杂的时空数据动态可视化。在构建事件和子事件模型基础上,依据各个子事件的时间与时态拓扑关系,依次加载并可视化相应时空对象及其发生的变化。

在子事件可视化的过程中,采用特定符号标识历史事件中的各种元素。通过集成历史事件中涉及的各种多媒体数据,达到图文声情并茂的效果,将视频、文字、音频、图片、动画等依据时间和位置等信息集成到地图中显示播放,实现历史事件的综合显示。综合显示主要包括显示控制、叠加显示、融合显示等。其中显示控制采用时间驱动方式,即各个元素的显示依据其自身时间对象进行控制;叠加显示依据对象类型与特征进行叠加;融合显示是对特定类型数据进行融合。

4.2.2 可视化算法

基于事件时态树的历史事件时空过程可视化算法如图3所示。

图3 历史事件时空过程可视化算法

事件时态树的历史事件时空过程如下:

(1)首先构建事件与子事件,结合事件时态结构,建立事件模型;

(2)然后加载事件,并加载事件包含的所有子事件;

(3)根据各子事件发生时间进行时态排序;

(4)启动计时器,根据顺序与时间启动各个子事件,并加载相应时空对象、变化与状态对象;

(5)对子事件进行可视化,调用相应时空对象符号、动画,根据位置及属性进行可视化渲染;

(6)完成所有子事件后检索是否仍有其他事件未加载,如仍有事件,则返回步骤(2)继续执行,否则执行步骤(7);

(7)事件可视化完成;

(8)结束。

4.3 历史事件可视化结果与分析

本文通过对历史事件脚本的时空特征分析,在构建事件、子事件模型及其拓扑结构基础上,提出了基于事件时态树的历史事件时空过程可视化方法。通过 ArcGIS Server10.0提供地理数据服务,以Adobe Flex 4.6为前台开发工具开发实现了相应的历史事件时空过程可视化算法。实验笔记本的CPU为i3-350 2.26 GB,内存4 GB。

如图4所示,以“明末清初-李自成进北京”的历史事件为例,将历史事件中涉及的对象、地理位置、进程及内容随着时间的发展变化,以符号、图形图像、文字、动画的形式表现出来,直观清晰的展示事件发生过程,以及事件在时空上的移动变化。其中图4(a)描述的子事件为“李自成攻破潼关,杀死督师孙传庭,占领陕西全省”;图4(b)是整个历史事件的概要图。

图4 历史事件时空过程可视化效果

以图4(a)为例,历史事件可视化描述了李自成由襄阳附近行军至潼关,并发生激战,最终占领潼关。可视化过程综合运用多线程、动画、标签等技术将历史事件中涉及的对象、地理位置、进程及内容随着时间的发展变化,以符号、图形、图像、文字的形式动态表现出来,直观清晰的展示事件发生过程,以及事件在时空上的移动变化。

图5描述了1643年5月至10月李自成进攻潼关过程中的变化与状态。其中图5(a)描述了“李自成进攻潼关”历史事件中的变化,在此变化中由李自成代表的军队由襄阳向潼关进攻;图5(b)表达了李自成攻破潼关后的状态。

图5 历史事件变化与状态效果图

通过历史事件时空过程可视化实验及结果,得到以下结论:

(1)通过图4的结果可以看出,利用本文提出的事件模型和基于事件时态树的时空过程可视化方法,赋予历史事件时间与空间信息,通过符号、标签、文本、图像等多种手段,生动形象地描绘中国古代历史事件的时空发展过程,初步实现在地图上讲故事的目的。

(2)在历史事件可视化过程中,需辅助高亮、聚焦、动画等手段,吸引用户的注意焦点。例如图4(a)中通过火焰动画作为动态符号标识发生战争,可以有效获取用户的视觉焦点,使用户随着事件的发展而不断转移兴趣点。

(3)历史事件中的变化可以通过时空对象的移动、形变、合并、拆分等过程来动态描述,状态是变化的结果。例如图5(a)中,李自成符号通过动画由襄阳向潼关移动,表达变化的过程,通过闪烁达到聚焦效果,有效获取用户视觉焦点,使用户随事件的发展而不断转移兴趣点。

(4)在表达历史事件时,由于事件内容复杂,基本的符号、文本、标签等方式已不能满足可视化表达需求,需要引入视频、三维模型等新的可视化媒介,利用集成和融合方式进行整合。

5 结束语

本文结合基于事件的时空数据模型和面向对象的思想,提出面向历史事件的时空数据模型,该模型基于事件、变化与状态,能够描述和再现重大历史事件中的时空信息及时空变化。文中给出一种结合事件链表与子事件树的历史事件时态树结构。该结构采用双数据结构,有效地将时间、事件及相关时空对象组织起来,可以动态追溯、反演和检索历史事件的发展过程与状态。最终利用事件时态树结构实现了历史事件时空过程可视化算法。下一步工作将在本文研究成果的基础上,结合视频、三维模型等数据,进行多源数据集成可视化方法的研究与探讨。

[1] 陈新保,朱建军.时空数据模型的相关概念及分类[J].海洋测绘,2009,29(5):74-76,81.

[2] Peuquet D J,Duan N.An Event-based Spatio-temporal Data Model for TZM Poral Analysis of Geographical Data[J].International Journal of Geographical Information System,1995,9(1):7-24.

[3] 徐志红,申屠海港,边馥苓.基于事件语义的地籍管理信息系统时空建模[J].地理与地理信息科学,2004, 20(4):6-10.

[4] 邹文娟,李景文,王 芳.一种基于事件-过程-状态的时空数据模型应用研究[J].城市勘测,2012,(3): 20-23.

[5] 李阳东,刘妙龙,童小华.时空数据模型的研究与进展[J].计算机应用研究,2008,25(5):1281-1284.

[6] Natalia A,Gennady A,Peter G.Exploratory Spatiotemporal Visualization:An Analytical Review[J].Journal ofVisualLanguages&Computing,2003, 14(6):503-541.

[7] 李 响,王丽娜,杨 佳.动态地理现象可视化方法研究[J].测绘通报,2012,(S1):680-684.

[8] 艾 波,唐新明,艾廷华,等.利用透明度进行时空信息可视化[J].武汉大学学报:信息科学版,2012, 37(2):229-232,259.

[9] 欧阳斯达.时空数据的三维动态可视化技术研究[D].北京:中国测绘科学研究院,2011.

[10] 王 欢,魏海平.时空数据可视化浅述[C]//第4届海峡两岸GIS发展研讨会暨中国GIS协会第十届年会论文集.昆明:[出版者不详],2006.

[11] 陈宏敏,战守义,高 宇,等.航天测控中时空数据的可视化技术研究[J].系统仿真学报,2009,21(18): 5775-5778.

[12] Kim S S,Lee S H,Kim K H,et al.A Unified Visualization Framework for Spatial and Temporal Analysis in 4D GIS[C]//Proceedings of IEEE International Geoscience and Remote Sensing Symposium.Toulouse,France:IEEE Press, 3715-3717.

[13] Kapler T,William W.GeoTime Information Visualization[J].Information Visualization,2005,4(2):136-146.

[14] 郑扣根,余青怡,潘云鹤.基于事件对象的时空数据模型的扩展与实现[J].计算机工程与应用,2001, 47(3):45-47,61.

[15] 张 运,冯学智,佘江峰.基于事件-状态的地理时空数据模型研究[J].测绘与空间地理信息,2009,32(6): 5-8.

[16] 林广发,冯学智,王 雷,等.以事件为核心的面向对象时空数据模型[J].测绘学报,2002,31(1):71-76.

[17] 张 林,汤大权,张 翀.时空索引的演变与发展[J].计算机科学,2010,37(4):15-20,26.

[18] Mokbel M F,Ghanem T M,Aref W G.Spatio-temporal Access Methods[J].IEEE Data Engineering Bulletin, 2003,26(2):40-49.

[19] 闻 雅.基于事件树的地理要素时空回溯方法研究[D].南京:南京师范大学,2008.

[20] 汪汇兵,唐新明,史绍雨,等.一种基于时态树结构的时空数据的动态可视化方法[J].测绘科学,2009, 34(1):110-112.

[21] 滕龙妹,刘仁义,刘 南.基于双效机制的时空数据模型研究[J].遥感学报,2005,34(6):634-639.

编辑 索书志

Research on Spatio-temporal Processes Description of Historical Events and Its Visualization

WANG Zhangang,ZHUANG Dafang,WANG Yong
(Resources and Environment Data Center,Institute of Geographic Sciences and Natural Resources Research, Chinese Academy of Sciences,Beijing 100101,China)

A variety of visual elements are used to comprehensively express historical events,which can demonstrate vividly historical pictures.This paper proposes a Historical Events Oriented Spatio-temporal Data Model(HEOSDM) through combing event-based spatio-temporal data model and object-oriented idea.Considering the event,change and status,this model can describe and reproduce spatio-temporal information and changes in the major historical events.and a temporal tree data structure of historical events combining event list and sub-event tree is proposed.This structure adopts dual data structures which effectively organize spatio-temporal objects and related events so as to dynamically backtrack, reproduce and search the development process and status of historical events.A temporal tree data structure of events is used to realize spatio-temporal processes visualization of historical events.Adobe Flex is selected to develop and realize the corresponding algorithm and it achieves good effects.

historical event;spatio-temporal data model;event;status;spatio-temporal process;visualization

1000-3428(2014)11-0050-06

A

TP391

10.3969/j.issn.1000-3428.2014.11.010

中国科学院重点部署基金资助项目(KZZD-EW-08)。

王占刚(1977-),男,博士后,主研方向:时空数据模型,三维模拟与可视化;庄大方,研究员、博士;王 勇,助理研究员、博士。

2013-10-22

2014-01-10E-mail:wangzg@lreis.ac.cn

中文引用格式:王占刚,庄大方,王 勇.历史事件时空过程描述及其可视化研究[J].计算机工程,2014,40(11):50-55.

英文引用格式:Wang Zhangang,Zhuang Dafang,Wang Yong.Research on Spatio-temporal Processes Description of Historical Events and Its Visualization[J].Computer Engineering,2014,40(11):50-55.

猜你喜欢

树结构数据模型时态
超高清的完成时态即将到来 探讨8K超高清系统构建难点
过去完成时态的判定依据
面板数据模型截面相关检验方法综述
加热炉炉内跟踪数据模型优化
四维余代数的分类
基于μσ-DWC特征和树结构M-SVM的多维时间序列分类
采用动态树结构实现网络课程内容的动态更新
现在进行时
面向集成管理的出版原图数据模型
一种顾及级联时空变化描述的土地利用变更数据模型