多粒度时空对象行为特征的描述方法研究
2018-10-16曹一冰华一新郭邵萌
曹一冰,华一新,郭邵萌
(1. 信息工程大学 地理空间信息学院,河南 郑州 450001;2. 黄河水文水资源科学研究院,河南 郑州 450004)
0 引 言
传统地理信息系统经过50多年的发展,已经建立起了成熟的基础理论、行业标准和应用平台,无论是在数据源的支持种类、数据的管理能力、信息的分析和计算能力、结果的可视化表达方式、系统的应用模式、人机的交互方式等方面都取得了长足的发展[1]。广泛应用于资源与环境监测、灾害评估与应急响应、城市规划与建设管理、医疗卫生与军事行动等领域,揭示了各种事物与现象的空间分布特征和动态变化规律,为人们更好地解决以空间位置为特征的应用问题提供了技术支撑[2]。随着大数据、云计算、物联网等新兴IT技术的出现和蓬勃发展,传统地理信息系统的发展面临着新的机遇和挑战,各大地理信息系统平台厂商通过对服务端平台产品的重构和扩展,已经能够支持大数据、云计算和物联网,如ESRI对ArcGIS for Server产品进行重构,在10.5版本中推出了新一代ArcGIS服务端产品ArcGIS Enterprise,提供对矢量、表格、栅格和影像的大数据分析能力以及实时大数据的接入、存储、可视化和分析能力[3],但是这种扩展方式并没有从根本上改变GIS以地图为模板的间接建模方式,难以对现实世界中的实体对象进行全方位的描述,特别是不能满足描述现实世界动态变化和多能自主的要求,不能描述时空实体的自主认知和行为特征。
在这样的背景下,文献[2]提出了全空间信息系统的概念,提出了构建无所不在的空间信息系统世界的构想和泛在空间的概念。文献[4]进一步明确了全空间信息系统的基本概念和基本特征,提出了多粒度时空对象的基本概念,明确了采用多粒度时空对象构建全空间信息系统的研究思路及其关键问题。文献[1]分析了传统GIS空间数据模型的不足,提出了多粒度时空对象数据模型的概念和描述框架,明确了多粒度时空对象数据模型的建模思路。通过对现有文献的分析可知,多粒度时空对象数据模型具有多粒度、多类型、多形态、多参照系、多元关联、多维动态、多能自主7个特点,需要从时空参照、空间位置、空间形态、组成结构、关联关系、认知特征、行为特征和属性特征8个方面对其进行描述[1],其中行为特征作为描述框架的一个重要方面,将其抽象并进行描述能够更好地体现时空实体的多维动态和多能自主特点,可以将传统GIS中静态的、孤立的、被动的对象转变为动态的、联动的、自主的多粒度时空对象,进而实现一个“活”的全空间信息系统。
传统GIS的研究基本不涉及行为特征,而是采用一组与数据一起存储于地理数据库中的规则来表达地理要素的动态方面,规则的增、删、改并不会影响原始数据的完整性,全空间信息系统中则直接采用对象化的方式组织空间和非空间数据,能够对对象进行全方位的描述,行为特征作为描述对象的一个方面,能够更加灵活地实现在信息空间中构建一个动态的现实世界的目的。
本文面向全空间信息系统,基于多粒度时空对象,对行为特征的基础理论和描述方法展开探索性研究,主要包括:多粒度时空对象行为的基本概念、行为的触发方式、行为的分类方式、行为的描述框架、行为能力的描述方法、环境影响因素的描述方法、行为触发条件的描述方法、行为作用对象的描述方法、行为计算模型的描述方法等,以期对后续行为特征的研究提供基础理论指导。
1 多粒度时空对象行为特征概述
多粒度时空对象的行为特征是描述全空间信息系统中不同对象之间联动与响应、接受与传播的重要方面,是体现时空对象相互作用、动态变化、多能自主的核心。通过对行为的基本概念及特点、触发方式、分类方式和描述框架的全方位阐述,可以为行为的形式化描述奠定理论基础。
1.1 多粒度时空对象行为的基本概念
多粒度时空对象的行为是指实体对象具有的引起自身或其他外部对象(包括外部环境)状态变迁的能力,也是实体对象随着时间推移,在内在规律和外部干扰下的表现(动作)。内在规律指的是实体对象在全空间场景中所遵循的规则,如自身的物理特性等,外部干扰指的是各种外部干扰因素,包括外部环境的自然规律(重力、风力、温度、物体间的相互作用力等)和其他时空对象的刺激[5]。
从多粒度时空对象行为的定义可以看出,行为包含两个方面的内容:从行为的产生机理角度来看,行为是对象具有的某种能力,包含在具体的时空对象中,能够对自身或者其他时空对象施加影响动作,影响自身的过程体现为响应,影响其他时空对象或环境的过程体现为控制;从行为的外在表现角度来看,行为是实体对象执行的某种动作,是行为触发的结果,是对象能力的外化。与传统实体对象的行为相比,多粒度时空对象的行为具有以下特点:
1)多粒度特性。多粒度体现时空对象的组成与分解,当认知和表达对象的角度发生变化时,对象就在多个粒度之间无缝切换,对象的各个方面都可能会发生变化[6]。行为特征作为多粒度时空对象8个描述方面之一并不随着对象粒度的变化而发生变化,但是具有行为特征的主体对象会发生变化,如战斗机随着场景的不同可能会有集群、图标、模型等多个粒度,当粒度切换时战斗机始终持有打击行为,但是打击行为的主体对象分别为集群、图标(单个战斗机对象)、模型(子对象炸弹)。此外,对象的行为不仅可以通过其父对象继承而来,还可以通过组合子对象进而获取子对象的行为,具体行为的实施和效果由子对象来决定,如皮卡具有运动行为没有打击行为,但是将皮卡和机枪组合后,皮卡就获得了打击行为,其打击效果实际上是由挂载的机枪来决定。
2)动态变化特性。行为会随着时空对象所处的时间和空间环境的变化而变化。随时间变化方面,行为在对象的全生命周期中是动态变化的,这种变化不仅体现在一种行为的强弱变化,还体现在不同行为的获取和消亡,如战斗机在有弹载的情况下具有打击行为,当无弹载时就失去了打击行为,同时战斗机挂载不同的炸弹其打击行为的强弱也是不同的;随空间环境变化方面,行为随着对象所处空间位置和环境因素的不同而发生变化,如汽车的运动行为会随着道路路面状况的不同而变化(公路、山路、草地等),同时还受风力等环境因素的影响。
3)方向传导特性。对象的行为并不是孤立的,而是存在相互影响,有时还会产生连锁反应,也就是说行为具有传导特性,行为的传导具有方向性,可以依据对象之间的关联关系采用单向或定向的方式传导,如雷达探测到目标后向导弹阵地发送消息的信息传输行为,可能会引发导弹的发射、飞行和打击行为,也可以采用广播的方式传导;如导弹的打击行为,会按照一定的计算模型传递给其打击范围内的所有对象,对象根据毁伤效果和自身的抗打击能力决定是否触发其状态变化行为(位置和形态的变化等)。
4)多能自主特性。多能体现在多粒度时空对象在其生命周期中可以具有多种类别的行为,如获取信息、处理信息、传递信息、调整状态、实施动作等行为,自主体现在多粒度时空对象具有自我控制和自主决策能力,会根据外界的刺激和所处的环境决定执行的动作。
在全空间信息系统中并不是所有的对象都具有行为特征,有些对象虽然其状态也随着时间的推移发生变化,但是这些变化完全是被动的,这类对象主要是现实世界中没有生命和智能的实体,如机场、地形、阵地、建筑物、物资、给养等,他们是交互的接收者,不能通过行为主动地去影响和改变自身或其他对象的状态和行为。本文的研究对象主要针对全空间场景中具有行为特征的实体对象,这类实体对象具有时间、空间、属性、形态、关系等多元特征,并且是可以感知、表达和量化的。
1.2 多粒度时空对象行为的触发方式
行为的触发方式是指引起多粒度时空对象行为执行的方式,根据行为执行方式的不同可以将行为的触发方式分为:时间触发、规则触发、事件/消息触发和状态触发,如图1所示。
图1 行为的触发方式Fig.1 Trigger mode of behaviors
时间触发方式:场景运行到一定的时间节点,时空对象自动触发相关的行为或者时空对象根据固定的时间间隔触发某个行为,如定时炸弹的爆炸,雷达按固定频率发射电磁波等行为的触发。
规则触发方式:时空对象需要满足若干条件时才能触发相关的行为,如电子眼判定闯红灯,摄像头需要拍到车轮越过停车线、经过路口、通过路口三张照片才能认定车辆闯红灯,并触发信息传输行为,修改数据库中的信息,缺一张照片都不能认定闯红灯。
事件/消息触发方式:又可细分为事件触发和消息触发。事件触发是由用户通过外接设备触发,全空间信息系统能够感受到用户触发的事件,并将事件转换为特定的消息发送到系统的消息队列中,然后根据消息触发对象的行为;消息触发是直接根据消息队列中的消息触发对象的行为,消息的来源有3种(全空间信息系统产生、事件转换产生、其他消息产生)。从本质上讲这两种方式类似,都具有源对象和目标对象,比较常见,大部分行为的触发方式都属于这一类。
状态触发方式:时空对象在自身状态发生变化时触发相关的行为,如水由固态变为液态时引起的运动行为。
1.3 多粒度时空对象行为的分类
行为分类是对多粒度时空对象的行为特征进行形式化描述的基础,决定着行为能力参数、环境影响因素、行为触发条件的内容和取值。考虑到时空对象的行为类型多样,特征复杂,以及考察视角的不同,为了尽量涵盖时空对象的所有行为[7],本文从行为的产生结果出发,对多粒度时空对象的行为进行分类,可以将行为划分为:信息传输行为和状态变化行为两大类,每一大类又包含若干小类,如图2所示。
图2 基于结果的行为分类Fig.2 Behavior classif i cation based on behavior results
信息传输行为:这类行为不引起时空对象各方面状态的变化,可分为信息发送行为和信息接收行为。信息发送行为是时空对象根据内部机制、外部环境或者其他对象的触发产生的对外发送特定格式信息的行为,信息的发送方式包括广播、单向、定向等,如雷达发射电磁波、传感器告警通知、长机和僚机的协同等行为;信息接收行为是时空对象根据内部机制具有的接收和解析特定格式信息的行为,这类行为主要用来感知外界的变化,根据认知的结果决定对象的动作。如雷达接收物体反射的电磁波、陆海空协同作战等行为。
状态变化行为:对象行为触发后引起自身或者其他时空对象空间位置、空间姿态、空间形态、关联关系、组成结构、属性特征中的一个或多个状态发生变化的行为,又可分为位姿变化行为、形态变化行为、关系变化行为、组成分解行为、属性变化行为和复合变化行为。位姿变化行为是对象行为触发后引起自身或者其他时空对象空间位置或者空间姿态(俯仰角、偏航角、滚转角)发生变化的行为,如汽车行驶、飞机转弯飞行等行为;形态变化行为是对象行为触发后引起自身或者其他时空对象形态发生变化的行为,如对象碰撞、道路扩建、动植物的生长等行为;关系变化行为是对象行为触发后引起两个或多个对象之间的关联关系发生变化的行为,如飞机随着飞行位置的不同切换地面管制单位保持通话、对象消亡引起的指挥关系变化等行为;组成分解行为是对象行为触发后引起自身或者其他时空对象组成结构发生变化的行为,如航天器的解体、星箭分离等行为;属性变化行为是对象行为触发后引起自身或者其他时空对象属性特征发生变化的行为,如传感器采集信息的更新等行为;复合变化行为是行为触发后引起自身或者其他时空对象的多个特性同时发生变化的行为,如炸弹的爆炸会同时引起其他对象的位置、姿态、形态、关系和属性中的某几个方面发生变化。
1.4 多粒度时空对象行为特征的描述框架
由于多粒度时空对象的行为具有动态变化、方向传导和多能自主特性,考虑到行为的触发方式和分类方式,需要从以下6个方面对行为特征进行全方位的描述,如图3所示。
图3 多粒度时空对象行为特征的描述框架Fig.3 Description frame of behavior characteristics of spatial-temporal objects of multi-granularity
行为类型主要描述行为的类别,行为类别的不同会影响行为特征其他5个方面的内容;行为能力主要描述行为的各种能力以及能力的取值和范围;环境影响因素主要描述环境因素对行为能力的影响效能;行为触发条件主要描述引起行为动作执行的条件,包括触发方式和触发参数;行为作用对象主要描述行为触发后影响的全空间运行系统中的对象集合;行为计算模型是对象行为动作执行的决策模块,决定着行为产生的结果。其中行为能力、环境影响因素和行为触发条件的描述体现了行为的动态变化特性,行为作用对象的描述体现了行为的方向传导特性,行为计算模型的描述体现了行为的多能自主特性。
2 多粒度时空对象行为特征的形式化描述
多粒度时空对象行为特征的形式化描述即行为建模,是探索一种能够尽可能贴近真实时空实体行为特征的表达模型,使构造时空对象的人能够按照这种模型方便地构造一个数字世界中行为上真实的时空对象[8]。行为建模的主要目标是对全空间中时空实体的行为进行准确建模,使得能在计算机上对其进行再现和驱动[9]。
行为在时空对象的全生命周期中是动态变化的,这种变化不仅体现在一种行为的强弱变化,还体现在不同行为的获取和消亡。行为的强弱主要通过行为能力参数和环境影响因素来决定,行为在多粒度时空对象数据模型中以集合的形式进行表达,在对象的全生命周期中随着对象行为的变化,集合会同步地增加、删除和更新元素。每一类行为都是由行为类型BehaviorType、行为名称BehaviorName、行为能力参数Parameters、环境影响因素Conditions、行为触发条件Triggers、行为作用对象Receptors、行为计算模型Models组成、多粒度时空对象行为特征的总体形式化描述实例为:
Behaviors=[{BehaviorType,BehaviorName,[P arameters],[Conditions],Triggers,[Receptors],[Models]}, {BehaviorType,BehaviorName,[Parameters],[Conditions],Triggers,[Receptors],[Models]},…]
从实例中可以看出行为类型、行为能力、环境影响因素、行为触发条件、行为作用对象、行为计算模型是描述多粒度时空对象行为特征的重要方面,不同描述方面的关系如图4所示。
图4 描述行为不同特征方面间的关系Fig.4 Relationship of diあerent describing aspects of behavior characteristics
从图中可以看出,多粒度时空对象的每种行为都由用户交互部分和自主计算部分组成,用户交互部分包括:行为类型、行为能力、环境影响因素、行为触发条件和行为作用对象,主要通过UI界面完成各种参数的交互输入,自主计算部分根据用户交互部分的输入参数,在对应行为计算模型的支持下完成行为的执行,进而驱动全空间信息系统中对象之间的相互作用。行为类型的描述比较简单,已包含在行为特征的总体形式化描述中,下面分别对行为特征的其他5个方面进行描述。
2.1 行为能力的描述方法
行为能力主要描述行为的各种能力范围,可以包含多个行为能力描述参数Parameter,每个Parameter中包含参数的名称、参数的类型、参数值的长度、参数的默认值、参数的阈值等信息,行为能力的形式化描述实例为:
Parameters=[{Name, ValueType, ValueLength,Value, MaxValue, MinValue},{Name, ValueType,ValueLength, Value, MaxValue, MinValue}, …]
行为能力与行为的类型紧密相关,不同行为的行为能力参数在数量和内容上都不相同,行为能力的描述方法中应提供各种能力的默认值,但在行为触发时应根据实际不同的参数值计算行为的结果。如飞机的飞行行为,其行为能力参数主要有飞行的高度、飞行的速度、续航能力等,假设某型飞机的默认飞行高度是8 000 m,默认飞行速度是1000 km/h,默认续航能力是8h,则其描述如下:
Parameters=[{Height, int, 4, 8000, 12000, 7000},
{Speed, double, 8, 1000, 1200, 400},
{Endurance, double, 8, 8, 20, 2}]
2.2 环境影响因素的描述方法
环境影响因素主要描述环境因素对行为能力的影响效能,Conditions是行为的环境影响因素集合,表示行为随周围环境的动态变化特性,可以包含多个环境影响因子Condition,每个Condition中包含环境影响因子的名称、环境影响因子的类别、环境影响因子的值、影响的行为能力的名称等,环境影响因素的形式化描述实例为:
Conditions=[{FactorName, FactorType,FactorValue, TargetPara},{FactorName, FactorType,FactorValue, TargetPara}, …]
其中,环境影响因子主要包括风力、温度、地形、地势、路面类型、天气、水流速度等,由全空间运行系统提供,环境影响因子的类别包括正影响和负影响,是指影响因子对行为能力的增强或削弱,影响的行为能力的名称是指该类型的影响因子可能会影响的行为能力中的哪一个或多个参数。同时全空间信息系统应当提供环境效能字典,根据每一个环境影响因子的取值查询其影响效能的值,影响效能的取值范围为[-1 +1],环境影响效能最终叠加到行为能力中。如对于飞机的飞行行为,其环境影响因素的描述如下:
Conditions=[{Wind, Positive, 5, Speed},{Temperature, Negative , -20, Endurance }]
假设根据环境效能字典查到环境影响因子Wind在5级风的条件下影响效能为0.2,环境影响因子Temperature在-20°的条件下影响效能为0.1,则最终动态计算的飞机飞行行为的行为能力描述为:
Parameters=[{Height, int, 4, 8000, 12000, 7000},
{Speed, double, 8, 1200, 1200, 400},
{Endurance, double, 8, 7.2, 20, 2}]
2.3 行为触发条件的描述方法
行为触发条件主要描述引起行为动作执行的条件,Triggers包括触发方式和触发参数等,触发方式主要包括时间触发、规则触发、事件/消息触发和状态触发,触发参数与触发方式和具体的行为类别紧密相关,如对于按照时间触发的飞机飞行行为,其触发参数为某时间参照下的时间点,同时还应包括飞机飞行的目的地位置。行为触发条件的形式化描述实例为:
Triggers={TriggerType, [TriggerParameter]}
2.4 行为作用对象的描述方法
行为的作用对象是指行为触发后会影响的全空间运行系统中的对象集合,为了便于描述可以将其分为三类:对象自身、行为能力范围内的所有对象、对象交互列表。一般情况下系统会根据行为的类别自动确定行为的作用对象,这种情况一般适用于对象自身和行为能力范围内的所有对象,如对于飞机的飞行行为,行为作用的对象为飞机自身,对于雷达的电磁波发送行为,行为作用的对象是场景中的所有对象,对于炸弹的爆炸行为,行为作用的对象是炸弹爆炸范围内的所有对象等,但是对于像飞机通信这样一些行为类型,需要事先建立飞机之间的通联关系,或者在行为作用对象的描述中动态增加对象交互列表,以驱动行为的执行,这类行为作用对象的形式化描述实例为:
Receptors=[Obj1, Obj2, …, Objn]
苏南自创区横跨苏南五市,涵盖10家国家高新区,是我国首个以城市群为基本单元的自主创新示范区,苏南自创区建设以来形成了上下联动、统筹集成的推进模式,初步构建了产业特色化发展的体系,但是在实际的发展过程中还存在区域协同创新机制有待进一步完善,产业同质化竞争现象比较明显的问题,高新区在创业资源集聚、创新人才引进、科技金融体系建设、高成长性企业培育等方面仍显不足。
2.5 行为计算模型的描述方法
行为计算模型是对象行为动态执行的决策模块,决定着行为产生的结果,是整个全空间场景中对象之间相互作用和行为传导的核心,行为计算模型面向专业领域,与行为的类型紧密相关,一般需要面向不同的行为类型开发相应的行为计算模型。通过对行为类型、行为能力、环境影响因素、行为触发条件、行为作用对象的描述,为行为计算模型提供了基本的输入参数,这部分内容一般可通过用户UI交互输入,行为计算模型不与用户产生交互,主要根据不可描述性的规则和算法自主计算,产生对全空间场景中其他对象的影响,不仅可以作用于对象自身,还可以施加给外部对象或环境。
行为计算模型可以根据需要从模型库中进行选取,模型库支持用户的自定义扩展,对于复杂的行为其执行可能会需要多个计算模型的协同[10-11],各模型之间可以通过图形建模的方式指定输入输出以及模型的执行顺序,行为计算模型的形式化描述实例为:
Models=[Model1, Model2, …, Model3]
2.6 行为的形式化描述示例
为了数据交换的方便,可以考虑采用可扩展标记语言XML对多粒度时空对象的行为特征进行形式化描述,将数据的内容与显示处理分开,提高数据转换和利用的效率[12]。下面以飞机的飞行行为为例,从飞行行为的类型、飞行行为的能力、飞行行为的环境影响因素、飞行行为的触发条件、飞行行为的作用对象、飞行行为的计算模型6个方面对飞机的飞行行为进行形式化描述,示例如下:
3 结束语
本文从多粒度时空对象行为的基本概念、触发方式、分类方式、描述框架等方面对多粒度时空对象的行为特征进行了阐述,有助于进一步认识和理解行为在多粒度时空对象数据模型中的地位和作用;给出了多粒度时空对象行为的总体形式化描述方法,分别从行为能力、环境影响因素、行为触发条件、行为作用对象和行为计算模型5个方面对对象的行为特征进行详细描述并分析了行为特征不同描述方面的关系,可以为全空间场景中多粒度时空对象的行为建模提供基本思路。
本文以全空间信息系统为研究背景,对多粒度时空对象行为特征的基础理论和描述方法进行了探索性研究,要进行具体的行为建模和行为实现还需要进一步深化理论和实践方面的研究,包括行为的存储与管理、行为的结构化描述与表达、行为的动态添加与删除、行为的驱动与传导、行为的可视化显示与交互等。