首页 理论教育情景感知系统在分布式数据库技术中的应用

情景感知系统在分布式数据库技术中的应用

【摘要】:情景感知系统的一般要求如下。情景感知系统是一个能主动监视其工作环境或场景,并按照该场景的变化调整其行为的系统。图20.7情景的感知、处理和使用图20.7中的元素说明如下。这三者有机构成了一个情境感知系统的三部曲。Baldauf等在其论文《A survey on context-aware systems》中说:情景感知系统能够让自己的操作适应当前的情景,无须用户显式干预,从而借助环境上下文信息提高可用性与有效性。而中国的北斗系统在某些方面已经超越GPS。

情景感知系统必须:收集环境或用户态势的信息;将这些信息翻译成适当格式;组合情景信息,生成更高级的情景,将其他情景信息归并后再导出情景信息;基于检索到的信息自动采取动作;使信息能让用户易于存取,无论是现在还是将来,只要用户需要,就能帮助用户更好地完成任务。

情景感知系统的一般要求如下。

●情景获取(context acquisition):获取情景信息。

●情景表示(context representation):组织与存储情景信息。

●情景使用(context use):以适当方式使用情景信息。

情景感知系统是一个能主动监视其工作环境或场景,并按照该场景的变化调整其行为的系统。

计算机系统如何感知情景、处理情景和使用情景,我们可以用图20.7来表示。

图20.7 情景的感知、处理和使用

图20.7中的元素说明如下。

●情景生成(generation):通过UI或传感器获取情景信息。

●情景处理(processing):将原始数据变换成有意义的信息。

●情景使用(usage):使用场景,做出可能的反应,成为输出。

这三者有机构成了一个情境感知系统的三部曲。

情景生成是指情景被感知,感知情景就是获取情景信息。这类信息可以分为原始情景信息和高级情景信息两类。

原始情景信息如地理位置信息、时间信息、光亮度信息和声音信息等。从目前的研究来看,主要聚焦在通过GPS/RFID获得地理位置信息,使用计算机内置时钟获取时间信息,如借助光敏二极管获得光亮度信息,通过话筒获得声音信息等。

高级情景信息如用户当前的活动信息、过去的使用习惯等,可以通过计算机的日志、用户日程和其他人工智能技术来获取。

情景处理是转换情景信息。

情景使用则是利用情景信息调整与规划系统操作,输出恰当的信息。

Baldauf等在其论文《A survey on context-aware systems》中说:情景感知系统能够让自己的操作适应当前的情景,无须用户显式干预,从而借助环境上下文信息提高可用性与有效性。

1.情景获取

获取情景,在许多面向物理情景的研究中,往往要先研究如何感知情景,主要包括以下几点。

1)位置感知

空间位置是一个重要的情景,其随着用户的移动而变化,对应用就能产生影响。位置感知也可分为室外位置感知和市内位置感知两类。

室外位置感知是指在室外的情况下,最常用的情景感知技术如使用全球定位系统(global positioning system,GPS)、中国的北斗系统、俄国的格洛纳斯系统和欧洲的伽利略系统等。美国政府目前将GPS民用的精度开放到10~20米的范围,对不少应用领域来说,这样的精度已能满足需求。通过算法的提升和补偿,可以将此精度进一步提升。而中国的北斗系统在某些方面已经超越GPS。此外,移动通信运营商的基站也常用来为移动通信设备定位,即Cell Id定位。

室内位置感知是指在室内由于GPS信号不覆盖或不能正常工作,所以不能靠GPS定位。很多科研项目研制自己的位置跟踪系统,如基于红外信号(IR)、基于RFID、基于WiFi、基于Bluetooth、基于室内GPS信号发生器,等等。

2)感知其他的初级情景

除了空间位置外,还有以下几种类别的初级情景。

●时间(time)。

●邻近对象(nearby objects):我们会关心最近的餐馆,最近的地铁站等。

●网络带宽(network bandwidth):视频类应用对网络带宽十分敏感,因此很多场合需要这类情景信息。

●方位(orientation):方位也很重要,我们会先了解哪个方向发出的声音,地震波来自哪个方位等。

3)感知高级情景

除了上述原始情景信息(raw contextual information)外,还有更高级的情景信息,如用户的“当前活动”。更大的挑战是感知社会情景,包括交通拥挤程度、周围人群的特征、所在地的人文习俗等。

4)感知情景变化

除了我们希望获取的情景快照外,情景从一种状态到另一种状态,即从一个快照到另一个快照之间的变化也是我们要关心的。

值得注意的是,健壮性和可靠性是情景获取的重要要求。

2.情景说明与表述

Dey在其博士论文中说:说明应需要哪些情景,这就是情景说明(context specification)。

从设计过程看,可以分为两步:说明应需要哪些情景?决定获取情景时需要采取什么措施?需要考虑的是,什么是说明机制和什么是说明语言?它们必须能说明:

●我们关注的是单个情景还是多个情景。例如,仅是用户的空间位置则是单个情景,用户空间位置、下次约会前的空闲时间是多个情景。

●若是多个情景,则要区分它们是关联的情景还是非关联的情景。关联情景指的是和某个实体关联的情景。例如用户的所在位置与空闲时间是关联情景;用户的位置与当前股市指的是非关联的情景。

●过滤过的情景还是未过滤过的情景。例如,未过滤的用户位置请求给出的是用户当前经纬度,而过滤后的则给出位置的变化,如果位置没变,则不必再告知。

●解释过的情景还是未解释过的情景,如直接拿用户的经纬度告知用户或将用户的所在街区告诉用户,分别属未解释过的情景和解释过的情景。

3.表示与转换

关于情景处理与识别首先要涉及情景表示和转换问题。根据采取模型的不同,情景的表示也各不相同。值得注意的是,为了表示情景,往往需要将情景数据进行恰当的转换,转换成模型相符的形态,如摄氏温度和华氏温度的转换,高级的如对同一场景实施不同视角的诠释。可以设计一些转换器来实现其功能。(www.chuimin.cn)

Sun和Sauvola在论文《Towards a Conceptual Model for Context-Aware Adaptive Services》中谈及使用一个四元组来描述和实体对应的数据对象(entity name、feature、value、time),每个实体用标识符唯一命名。从而使用特征、值、时间来表述情景。

一个特征可以取一类值,如标量、向量、符号、整数、实数、字符、串、结构或记录等。一个值可以是一个实体,如“小亮在家”描述的是一个用户情景,作为一个人,小亮是一个实体,特征是一个位置,位置值是小亮家。

4.过滤与筛选

按http://en.wikipedia.org/wiki/Context_filtering的定义,情景过滤(context filtering)是一种电子邮件反垃圾信息的方法。通过电子邮件发件人的IP地址,邮件地址是否在黑名单上等确定是否是垃圾信息。但这里讲的情景的过滤和筛选含义要深刻和宽泛得多。

我们可能会得到很多情景信息,但是有的是对目前应用有用的,有些是不起作用的,通过情景过滤和筛选可以把不影响目前应用的情景信息过滤掉,把会影响目前应用的情景信息筛选出来。例如,对位置信息来说,如果历史连续采样的位置数据是一样的,或者所起的变化不足以影响应用,则这类情景信息只要记录一个就可以了。

5.识别与应用

情景的意义识别表示获得的情景信息究竟是什么意思(即其语义是什么)?这就是情景识别问题。原因是我们获取的是情景数据,更重要的是,系统应当理解这些数据的含义是什么?例如,测量出来的温度是20℃,那么这个温度对应来说是高了或低了?还是恰当?通过识别可以获取情景数据的语义,确定这个温度是超过阈值、低于阈值或者在正常范围之内,从而指导系统做出相应反应。

谈到情景的应用,我们先讨论情景感知如何操作,如图20.8所示。

图20.8 情景感知操作

图20.8中的下边称为情景组织(context organization),上边称为情景应用(context utilization)。

情景组织关心的是如何得到全部的情景信息表示。相关的操作包括情景的收集、抽象、解释和存储/检索等。

情景收集的目的是获取原始数据,作为情景特征的值。有三种主要收集不同情景信息的方法。

●通过传感器获取环境情景与用户的物理信息。

●使用软件代理收集计算机的情景特征。

●使用用户概述信息获取其他相关个人信息。

情景抽象(context abstraction)的目的是获取关于外部交互特征的情景信息。可从两个方面来看情景抽象。

●清洗收集来的原始数据,或者实施计算,如采样、取均值、统计、校准等。

●不同情境特征的融合与聚合,以找到它们之间的关联。

情景解释(context interpretation)则对上面处理过的情景进行解释,以获取隐藏在相关情景特征后面的语义。这些情景包括用户计划和未来活动预测。其实,解释也是一种高级抽象,帮助理解活动或揭示目的。本质上,这需要将情景组织表示成知识。为了获取怎样的高级情景,可能需要训练和学习。

情景存储和检索(context storage and retrieval):原始情景数据以及抽象后的/解释过情景信息可以存放到同一个地方,以便以后检索用。可以用不同的结构来存放情景数据,如表、对象、树、图等。可以用集中式的方式,也可以用分布式的结构来存放情景。

情景使用关心的是如何获取相关的情景信息,用于情景感知应用。情景使用的操作包括情景获取、搜索、选择、协调和应用。

情景获取的目标是通过情景组织获取原始情景,有以下三种获取方法。

●显式查询,即在应用希望启动某些行为时请求情景。

●轮流检测,即周期性地获取情景和更新应用行为。

●事件驱动,即预约某些特殊情景时间,然后在发生时给出通知。

情景搜索(context search)的目的是搜索那些无法通过情景获取操作的相关情景信息。这是一个迭代过程:对于每一个实体,所有特征的索引是实体名或标识;实体特征的值可以作为索引,如果该值标识另一个实体。

例如,如果应用需要关于与自己在同一区域的朋友的信息,首先可以借助用户名获取该用户的位置和其朋友的清单。然后,使用特征“friend list”里的每一个值作为索引来实施情景搜索操作,以获取每个朋友的位置信息。

情景选择(context selection)的目的是只选与应用相关的情景信息。可以设置一个过滤器,用匹配条件来选择需要的情景、检测输入的情景。以上面找出离自己最近的朋友为例,可以用一个过滤条件“within a range of 100m”,情景选择就按此选出离自己最近的朋友。

情景协调的目的是情景应用协调所有的操作。情景应用就是应用情景,包括以下几个方面。

●主动情景感知,即应用改变行为自动适应发现的情景。

●被动情景感知,即应用向感兴趣的用户呈现新的或更新后的情景,或者保存这些情景以便让用户以后检索。

Anind K.Dey在其博士论文中将框架归纳如下。

●情景说明(context specification)。

●关切与情景处理分离(separation of concerns and context handling)。

●情景解释(context interpretation)。

●透明分布式通信(transparent distributed communications)。

●情景获取的持续可用性(constant availability of context acquisition)。

●情景存储(context storage)。

●资源发现(resource discovery)。

情景结构如图20.9所示。

图20.9 情景结构

这里,Widget是指小工具,用于如何使用和如何区分情景。它们从传感器获取情景,为需要情景的应用提供统一的接口