自动创建上下文信息提供配置的系统的制作方法

xiaoxiao2020-7-22  12

专利名称:自动创建上下文信息提供配置的系统的制作方法
技术领域
本发明涉及上下文认识系统,具体地说,涉及采用具有不同可用性的传感器的上下文认识系统。
在此说明书中使用的“上下文”由Anind Dey在“理解与使用上下文”(Personal and Ubiquitous computing,“Situated Interaction andUbiquitous Computing”的特殊期刊2001年第5(1)卷第4-7页)中定义为可用于表征实体情况的任何信息。实体是被认为与用户和应用之间的交互相关的人、位置或对象,包括用户和应用本身。此外,为之收集上下文信息的实体也称为焦点实体。
通过自动结合这种上下文信息,有关上下文的知识可以多种方式用于使应用和装置更智能化。遗憾的是,上下文相当复杂,因而难以处理。复杂性是由可能从许多不同传感器得来的不同类型上下文的多样性而导致的。例如,在国外城市活动的旅游者由其上下文认识装置提供一张现行地图,并带有关于他或她当前看到的景物的信息。这种情况下,除其它信息外,上下文认识装置需要关于旅游者当前位置的信息。对于室外的旅游者,可利用全球定位系统(GPS)来获取这种信息,但在室内时,由于从建筑内不能接入GPS卫星,此方法不再适用。因此,要使用特殊的室内定位系统来检索室内位置信息。无论何时用户进入或离开建筑,他或她的上下文认识装置必须切换到另一位置确定系统。当前,处理这种从室外到室内、或从室内到室外位置定义系统的接替在应用端执行,在只有少量可能的可用信息源时,应用端工作得相当好。
一旦必须考虑大量不同的源,这种方法就变得不实际。例如,上述实例的旅游者可能不仅想知道其自身位置,而且想知道某些人是否进入或离开某个区域,例如他的小孩是否走得太远。为此,系统必须利用大量不同类型、室内和室外的位置传感器,而室内位置类型也可能随建筑物的不同而不同,并且因人而异。上下文认识装置必须处理这些问题,并且可能必须实现对不同类型的位置传感器的同时访问。如果不仅使用位置信息,而且使用象有关温度、气压之类的大量不同信息源来创建更复杂的上下文结构,则上下文认识装置的配置会变得更加复杂。
Anind Dey在其博士论文“为建筑物上下文认识应用提供体系结构支持”(“Providing Architectural Support for Building Context-AwareApplications”,College of Computing,Georgia Institute of Technology,2000年12月)中,公开了在乔治亚技术学院开发的上下文工具箱。该上下文工具箱的目的是隐藏收集上下文信息的进程,与X-window专用接口工具集向应用开发人员隐藏X-windows系统的复杂性的方式相同。专用接口工具集表示某一类信息,如基于传感器所提供的数据的位置或活动。X-window专用接口工具集将复杂的图形用户界面处理功能聚集成一个组件,并通过统一的接口访问,从而隐藏了基础传感器配置的详细信息。上下文聚集器将多个专用接口工具集汇总为更复杂的“元专用接口工具集”,提供到更复杂上下文信息的访问。解释器将如位置或活动等低层上下文信息转换成更抽象的较高层信息,例如从某人躺在床上且脉搏有规律地慢慢跳动的信息中,推断出该人正在睡觉。
上下文工具箱是当前最流行的上下文处理系统。它使用极为方便,并通过为经常使用的上下文类型提供专用接口工具集和解释器,简化了上下文认识应用的实现。上下文工具箱假定传感器配置是静态的,即应用开发人员在设计时确定要使用哪些专用接口工具集、解释器和聚集器。因为不支持系统重新配置,不灵活的结构引发了问题,即如果某个传感器出现故障,错误会向上传播到应用层。
欧洲资助的青年项目(Youngster project)(IST-2000-25034)开发技术以创建新的开放式活动移动多媒体环境,各种装置和网络可从任何位置访问该环境,且该环境支持上下文认识特征,包括位置认识。
在该项目中,评估了用于移动平台的上下文系统,原则上建议上下文客户机、即上下文认识装置的所有请求传递到本地上下文业务。通过提供到本地上下文源的捷径或再用到上下文服务器的现有连接,此业务尝试在本地解决该请求。如果无法在本地解决该请求,则请求会被传递到远程上下文服务器作进一步处理。上下文业务和上下文服务器可驻留在同一主机上。上下文源可直接访问传感器,并将传感器数据转换成上下文服务器可以理解的格式。上下文源也可以位于仅从远程访问传感器的服务器内。
术语上下文客户机指的是请求上下文信息的实体,而术语上下文服务器指的是提供上下文信息的实体。通过指定如位置之类的所需信息,上下文客户机从上下文服务器中请求上下文信息。所需信息类型到可用传感器的映射通过上下文服务器完成。
上下文服务器创建从请求的数据类型到可用传感器的路径。如果请求无法直接映射到各个传感器,则执行通过所谓的上下文解释器的数据转换。
在路径创建后,上下文信息从传感器产生,之后上下文源将其从专有格式转化成适当的上下文解释器所理解的Youngster内部格式。上下文解释器本身处理数据并且被组成链。在链的末端,原始请求格式的数据被存储在上下文属性中,而属性本身是聚集器这个更大数据结构的一部分。上下文属性指定格式和类型,并且通过父上下文聚集器,也指定存储数据的焦点实体。
在如Youngster项目建议的移动业务平台所用的上下文系统中,客户机不需要知道可用的传感器或如何使用它们,而可将此任务完全交给上下文系统。通过自动创建所谓的上下文路径,由服务器完成从请求的上下文信息的所需类型和格式到可用传感器的映射。路径可以线性路径的形式实现,或者通过利用基础和抽象传感器的传感器分层结构以更复杂结构的形式实现。抽象传感器从不同的基础传感器收集数据,并且在一定程度上转换数据。上下文路径的配置表示成带有根节点的树结构,根节点是可从上下文客户机访问的上下文属性。
从请求的数据类型到可用传感器的路径必须手动设置,这意味着例如对于上下文属性的所有所需类型和格式,必须手动创建和连接上下文解释器链和源。另一种可能性是使上下文客户机指定要使用的上下文解释器和上下文属性,以及如何根据客户机定义的规则连接它们。虽然上下文路径的自动和按需创建具有许多明显优点,比如保持上下文客户机的结构简单、在客户机和服务器端均提供灵活性以及维护简便,但是目前没有自动创建上下文路径的机制。
具体地说,上述目的通过如下系统来实现,该系统通过如下几部分来应请求提供上下文信息上下文属性,为表示对上下文信息请求的响应的数据记录指定类型、格式和焦点实体;至少一个上下文源,为上下文信息的请求提供相关的上下文数据;至少一个上下文解释器,用于建立上下文属性与上下文源之间的互连;以及配置装置,用于设置动态上下文图形配置,以便根据实际可用性和适用性组合上下文源和上下文解释器,从而提供数据记录。
此外,上述目的由软件产品实现,该产品在由数据处理设备的处理装置执行时,用于在该数据处理设备上实现本发明的应请求提供上下文信息的系统。
上述目的还通过一种方法实现,该方法通过如下步骤来应请求提供上下文信息为表示对上下文信息请求的响应的数据记录指定类型、格式和焦点实体;定位为上下文信息的请求提供相关的上下文数据的一个或多个上下文源;定位一个或多个上下文解释器,用于将提供的与焦点实体相关的上下文数据处理成为数据记录指定的类型和格式;以及设定动态上下文图形配置,以便根据上下文源和上下文解释器的实际可用性和适用性将其组合,从而提供数据记录。
用于应请求提供上下文信息的所建议系统允许按需创建上下文路径,以便分别为上下文客户机或上下文认识装置可靠地提供所请求的信息。本发明还允许使上下文认识装置或上下文客户机的结构保持很简单,特别是与其中客户机必须自己注意传感器配置的系统相比时。由于上下文路径的设置不需要预定义部分,所以在客户机和服务器端均实现高的灵活性。按照需要创建所需的功能性。通过使上下文路径动态地适应该路径中使用的要素的可用性和适用性的变化,显著减少了系统的维护工作。
有利的是,配置装置通过如下步骤生成上下文图形配置将具有与上下文属性的输入连接器相匹配的输出连接器的第一上下文解释器连接到上下文属性,或者将具有与上下文属性的输入连接器相匹配的输出连接器的上下文源连接到上下文属性;在使用第一上下文解释器时,将第一上下文解释器的每个输入连接器连接到与各个输入连接器相匹配的上下文解释器的输出,或者连接到具有与各个输入连接器相匹配的输出连接器的上下文源;以及把尚未连接到上下文源的输出连接器或上下文解释器的输出连接器的、上下文源的每个输入连接器连接到与各个输入连接器相匹配的上下文解释器的输出,或者连接到具有与各个输入连接器相匹配的输出连接器的上下文源。这意味着,上下文路径的构建是从上下文属性的输入连接器开始,通过上下文解释器到一个或多个上下文源,因而,设置在上下文属性与上下文源之间的每个上下文解释器将构成上下文信息的数据的至少一部分转换成离上下文属性最近的上下文解释器所理解的、并且最终上下文属性自身也理解的类型和格式。
在此要说明的是,如果上下文源的输出连接器与上下文属性的输入连接器匹配,则该上下文源可直接连接到该上下文属性。但是通常,需要许多接触源来提供请求的信息,使得从多个接触源提供的数据必须由多个上下文解释器来处理,以便转换成上下文属性所指定的相应类型和格式。
更有利的是,通过将上下文解释器的输入连接器连接到不同上下文解释器的输出连接器,而该输出连接器又已经连接到上下文图形配置中存在的另一上下文解释器的输入连接器或上下文属性的输入,建立反馈功能。对于采用不同处理阶段的中间结果的数据处理要求,反馈功能特别有用。
创建反馈功能的条件最好由为上下文解释器定义的约束指定,并且反馈功能的实现由为上下文解释器定义的相应的约束事件指定,从而使反馈功能在上下文图形配置中易于处理和实现。
包含多个可用上下文解释器和上下文源的储存库有利地向配置装置提供上下文解释器和上下文源,以便轻松获得与上下文图形创建一起使用的要素。
有利的是,上下文源访问提供物理数据和/或信息数据的传感器,并且更有利的是,上下文图形配置被有利地遵照预定义的优化规则建立。在本发明的优选实施例中,图形高速缓存提供预配置的上下文图形配置以供配置装置使用,因此可在短时间内建立上下文图形。
要在上下文图形创建中获得高度灵活性,则为提供的用于上下文图形内的上下文解释器或上下文源的输入连接器和/或输出连接器而定义的焦点身份最好以变量来实现,该变量在上下文图形初始化后被约束到一个实值。要在上下文图形适应其环境变化方面提供更大的灵活性,上下文解释器根据请求和/或接收的数据的可用性或特性的变化,有利地修改其输入连接器的类型和/或其输出连接器的类型。
在本发明的另一优选实施例中,配置装置包括上下文图形创建装置和/或更改管理装置,上下文图形创建装置自动为给定的上下文属性组合上下文图形,而更改管理装置随上下文图形内要素的可用性和/或适用性的变化而控制上下文图形的重新配置。
此外,配置装置有利地包括上下文图形优化装置,用于根据规则体系控制上下文图形的建立。这可以影响获得和处理用于所需信息的数据的方式。为确保创建的上下文图形的可操作性,配置装置可有利地包括上下文图形确认装置,用于验证上下文图形的一致性和上下文图形内所用组件的可用性。配置装置最好还包括上下文图形建立装置,用于例示上下文图形中的上下文解释器和上下文源,从而从上下文图形类中构建完全实用的上下文图形。
有利的是,配置装置包括预选择装置和/或传感器预选择装置,预选择装置用于选择适合为给定的上下文属性创建上下文图形的上下文源和上下文解释器,而传感器预选择装置用于选择与适合为给定上下文属性创建上下文图形的上下文源一起使用的传感器,从而进一步加快上下文图形的创建。
每个上下文源和/或每个上下文解释器的可用性和适用性有利地被不断监视。
此外,配置装置最好包括传感器管理装置,用以监控用于上下文图形的每个传感器的可用性状态,并将结果转发到更改管理装置,从而使上下文图形可在线适应改变的条件。
根据有利的进展,如果检测到某个上下文源和/或上下文解释器故障,不再可用和/或不适用于提供或处理上下文数据,则由出故障的上下文源或上下文解释器及连接到其输入连接器的上下文源和/或上下文解释器构成的上下文图形配置的部分会失效并被重建。
为避免信息数据的误用并加强数据的保密性,配置装置最好包括访问控制装置,用以加强在上下文图形中组件的使用上施加的访问限制。
为了计费,配置装置还可与核算装置一起实现,用于就上下文图形所用的传感器和要素的使用向焦点实体收费。根据有利的进展,至少一个预定义的上下文图形链接到正建立的上下文图形,从而允许更多的动态传感器配置。
例如,建议的系统和软件可以在上下文服务器中实现,以便为上下文信息请求创建灵活和动态的上下文图形。根据本发明,图形创建机制还可直接适用于业务聚集领域,将相对简单的原子业务组合成更复杂的聚集业务。
此外,网络监控利用有关网络的特殊上下文信息;因此,根据本发明的上下文信息提供系统也可用于进一步使该领域中收集信息和评估的过程自动化。例如,根据基本网络状态信息的多个给定的算子,可以得到更完整描述网络状态的复杂信息。另一个应用领域是格式自适应领域。已经有一些系统允许文档从一种格式即时变换到另一种格式。通常,动态创建的路径用于将源格式转变成所需的目标格式。通过实现转换步骤,其中同时创建并在以后合并多个文件,根据本发明的图形创建技术因而可用于进一步增强那些系统。这可以实现比现存那些机制功能更强大的格式转换机制。
因为根据本发明的上下文信息提供系统一般专长于信息处理,所以无论何时必须自动建立信息评估逻辑,就可容易地使用本发明。


图1示意地表示提供上下文信息的先有技术系统;图2a表示线性上下文路径的示例;图2b表示带有树形结构的上下文路径的示例;图2c表示带有根据本发明的上下文图形结构的上下文路径的示例;图2d表示通过反馈功能性增强的图2c的上下文图形结构;图3表示用于组合线性上下文路径的搜索树的创建;图4表示在创建根据本发明的上下文图形的不同阶段采用的不同步骤;图5是流程图,表示根据本发明的上下文图形的进程步骤;图6表示反馈功能的创建;图7表示上下文图形内的赋值;图8表示上下文图形创建系统的体系结构;图9表示上下文图形的聚集的示例;以及图10表示根据本发明的本地分支置换。
图2a和图2b中给出根据先有技术的上下文路径的示例。如图2a所示的线性上下文路径通过上下文解释器108的链,将上下文源109连接到上下文属性106,由此,每个上下文解释器108正好包括一个输入连接器和一个输出连接器,从而实现了上下文路径的线性配置。图2a的这种概念仅允许为上下文属性106使用一个上下文源109。
带有不止一个输入连接器的一个或多个上下文解释器108的使用使得可以编辑不止一个上下文源提供的上下文数据,从而创建上下文属性106指定的、表示对上下文客户机101的上下文信息请求的响应的数据记录。上下文解释器108由此通过如图2b所示的上下文路径的树结构中的不同处理阶段,转变来自不同上下文源109的上下文数据。
在允许不同的传感器或上下文源109分别与上下文解释器108同时向多个其它上下文解释器108提供数据时,结果组成的是如图2c所示的图形结构。下面,具有图形结构的上下文路径称为上下文图形。
在图2b所示的树形结构中,在树的不同分支中按层次结构排列了上下文路径的要素、即上下文源109和上下文解释器108,与该树形结构不同,上下文图形通过允许一个分支内的要素之间及不同分支的要素之间进行互连,打破了层次结构。图2d表示根据本发明的具有完整特征的上下文图形的示例,它包括反馈功能,比如由上下文解释器6与上下文解释器3之间的互连实现的反馈功能。反馈功能增加了复杂性。不过,一旦创建了上下文图形,它们就可以被容易地处理而无任何限制。
上下文图形创建基本上是从上下文属性开始的。上下文属性106指定所请求的上下文信息的类型、格式和焦点实体。每个上下文属性106具有接口,它通过该接口可以接收所定义的数据记录。此接口称为输入连接器。把数据提供到此输入连接器只能通过具有用于输送正好为数据记录指定的类型的数据的接口的上下文图形的另一要素。为接口指定的数据类型也指定接口本身的类型。通过将某种类型的一个要素的输入连接器连接到上下文图形中相同类型的不同要素的输出连接器,建立上下文图形的不同要素之间的连接。
图3说明根据本发明的作为上下文图形创建的自动建立的基础的基本方法和技术。为提供上下文图形创建进程的简明范例,在图3的示例中,仅使用只具有一个输入和一个输出连接器的上下文解释器。即使通过此示例仅可创建线性上下文路径,此处所描述的技术也与说明书后面所述的创建更复杂上下文图形的基本技术相同。
在图3a中,表示上下文属性106和可用于上下文图形创建的要素,更具体地说,是可用的上下文解释器108和上下文源109。上下文属性106具有类型x的输入连接器。三个不同的上下文源可用,每个具有一个不同类型的输出连接器。输入和输出连接器的类型由字母标识。在输入连接器与输出连接器为同一类型时,一个输入连接器仅与一个输出连接器相配;在图3a的示例中,这表示标识连接器类型的字母对于相应的输入和输出连接器是相同的。图3a的上下文解释器表示出输入和输出连接器的不同组合。
要创建上下文图形,首先要建立搜索树。上下文属性106形成搜索树310的根节点。图3a的列表300搜索具有与上下文属性的输入连接器相配的输出连接器的要素。这些要素用于搜索树310的第一层。在图3b的示例中,两个上下文解释器满足了具有x类型的输出连接器的条件,左侧的解释器具有y类型的输入连接器,右侧解释器具有w类型的输入连接器。接着,从列表300中取出具有y类型的输出连接器的要素,并在搜索树3 10的下一层中添加到具有y类型的输入连接器的上下文解释器以下的分支。具有w类型的输出连接器的要素添加到具有w类型的输入连接器的上下文解释器的分支。该进程会继续,直至上下文源可以添加到此搜索树。最后,通过沿搜索树310的连接的上下文解释器,创建从上下文属性106到上下文源109的路径,从而形成上下文图形。粗箭头表示图3b中创建的线性上下文路径。上下文路径用于依据由上下文源109提供的上下文数据,向上下文属性106提供具有指定类型、格式和焦点身份的数据记录,并且由一系列的上下文解释器108转变成上下文属性所理解的格式和类型。
应当指出,在搜索树与上下文图形之间有一个主要的区别。前者是用于为路径创建构筑搜索空间,而后者是用于描述上下文属性、上下文解释器、上下文源之间关系的结构,并且由上下文源及传感器调解。
图3c的流程图说明为如图3b所示线性上下文路径创建搜索树的处理步骤。在步骤S11中,上下文属性用作路径创建的起始点。此上下文属性在步骤S12中被插入当前节点阵列,并在步骤S13中被设为当前节点。接着,在步骤S14中,从当前节点列表中取出下一节点。在步骤S15中检查输入连接器是否与当前节点的输出连接器匹配,当前节点在搜索树创建的这个第一阶段是上下文属性。在后面阶段中,当前节点是前面已经添加到树形结构中的上下文解释器之一。如果下一节点的输出与当前节点的输入连接器不匹配,则搜索返回到步骤S14,从当前节点列表中获得另一随后的节点。如果当前节点与下一节点的连接器在步骤S15中匹配,则下一节点的副本会添加到树中,并且也会在S19添加到新节点列表中,由此由下一节点与步骤S17中的正确父节点和步骤S18中的正确子节点构成副本来定义关系。如果在步骤S20中发现新节点是上下文源,则树创建结束,并且在步骤S22中会组合路径。如果新节点不是上下文源,则检查是否已经达到最大搜索步骤,如果是,则会生成错误并在步骤S22结束树创建。只要在步骤S21中未达到定义搜索树的允许层数的最大搜索深度,就再次从步骤S14中的当前节点列表中取出下一节点,并且重复步骤S15到S21,直至在步骤S22可以成功地结束树创建,或因错误而结束树创建。
在图4a到图4d的图示中,表示了根据本发明的创建上下文图形的基本概念。为便于精确说明,如下所述的上下文图形创建方法使用仅带有一个输入连接器的上下文属性。但应当指出,根据本发明的图形创建并不限于仅带有一个输入连接器的上下文属性,而且本说明书中所述的方法也可应用到相应的上下文属性的第二或更多的输入连接器。
如图4a所示,通过尝试组合从上下文属性106到上下文源109的线性上下文路径,开始上下文图形创建。为此,把具有一个输入和一个输出连接器的上下文解释器108接到上下文属性。必要时,具有一个输入连接器和一个输出连接器的另一上下文解释器108可接到此上下文解释器108,依此类推,直至通过上下文解释器108链从上下文属性106到上下文源109的线性互连建立为止。
如果此线性路径创建失败,通常是由于没有适当的上下文解释器和/或上下文源可用,则将所述上下文解释器链中的第一个上下文解释器108替换为带有两个输入连接器的上下文解释器401。省略图4a的链中连接到第一上下文解释器108的输入连接器的其它上下文解释器108。
接着,对于上下文解释器401的每个输入连接器,尝试创建如图4b所示的到适当上下文源109的线性路径。同样,如图4c所示,如果对两个同属输入连接器之一,线性路径创建失败,则对于剩下的同属输入连接器,把连接到所述同属连接器的上下文解释器108替换为带有两个输入连接器的另一上下文解释器401。每次对于上下文解释器401的同属输出连接器,线性路径创建失败时,连接到相应同属输出连接器的第一上下文解释器108被替换为带有两个输入连接器的上下文解释器401,直至在路径线的末端连接到上下文源109。上下文解释器和/或上下文源可同时用于配置的不同分支,从而结构最终产生如图4d所示的图形。图5的流程图表示了根据图4d创建上下文图形的基本步骤。在步骤S51中调用图形创建。为避免无止境的上下文路径创建,设置了图形可以展开深度的最大值。在步骤S52中检查此值,如果达到最大深度,则在步骤S59停止图形创建,并给出错误消息。只要未超出最大深度,就在步骤S53中检查当前上下文源是否确实具有一个输入连接器。如果是,则在步骤S54尝试根据上述方法创建到上下文源的线性路径。在步骤S55,检查线性路径创建是否成功,如果成功,则结束图形创建。如果不成功,则在步骤S56中对上下文解释器和上下文源的每种可能组合的输入循环应用上述图形创建过程。在步骤S57中,检查对每个输入连接器,图形创建是否成功,并且对于肯定结果,在步骤S58中成功结束图形创建,或者对于否定结果,在步骤S59中结束图形创建,并给出错误消息。
大体上,对于上下文图形创建,先尝试组合线性路径,如果该尝试失败,才生成子树。这对目前添加到图形的所有节点(上下文解释器)会循环重复。由于复杂性会随要素数量和上下文图形最大深度的增加而增加,因此要限制搜索深度。
至此所述的图形创建中,无法处理反馈功能。为实现反馈功能,要对上下文图形中使用的每个要素定义约束和约束事件。仅在给定环境允许这样做时,才可以使用带有定义约束的上下文图形要素。只要可以履行约束,便可执行与相应的约束事件相关的功能。约束定义了上下文图形内上下文解释器或上下文源使用的一定条件。约束事件定义了在为约束定义的条件有效时要执行的一定操作。例如,约束可能如同“如果x类型的上下文解释器已用在上下文图形内,则仅使用此上下文解释器”,而相应的约束事件如同“把我连接到x”。
此机制的处理和执行可以集成到上述上下文图形创建中而无任何限制。约束还能以其它方式使用,如仅在有足够的计算能力或者在某些传感器可用时,才可以使用约束。应当指出,可以不仅为上下文解释器,而且为上下文源和传感器定义约束。
图6提供了如何由约束处理反馈功能的示例。必须采用y类型的上下文解释器,即带有连接到x类型上下文解释器601的约束的上下文解释器。在图6的示例中满足此约束,因此可以使用y类型的相应上下文解释器602。约束事件随后可用于真正实现反馈功能,即将y类型的上下文解释器602连接到x类型的上下文解释器601。
所述上下文图形创建机制可进一步优化以提高其性能。首先,上下文图形创建所用的要素可根据内部优化规则分类。例如,可把较少使用的要素移到可用要素列表300的结尾,或者把具有较少输入连接器的要素放到列表的开头。由于该机制只是从第一个要素到最后一个要素穿过列表,所以这增加了使用一个优选要素的可能性。或者,可把例如已使用的上下文解释器或上下文源移到列表300的开头,这样提供在用过的不同要素的数目上的更少冗余。
当进一步优化图形创建时,为给定的上下文属性106创建不仅仅一个上下文图形,而是多个不同的上下文图形。然后,根据比如最少叶数、最低存储器使用量之类的优化标准检查每个图形,表现出符合优化标准的最佳结果的图形则被用于给定的上下文属性。另外,优化标准可以在图形创建期间用于选择另外的上下文解释器或上下文源,而不是从列表300的开头到结尾搜索下面的上下文解释器或上下文源。经常使用的上下文图形还可以被保存在上下文图形高速缓存中以便查找,从而提高性能,特别是在经常采用相对较小数量的不同图形时。子图也可以存储在高速缓存中,这意味着不仅完整的图形、而且经常使用的图形部分都被高速缓存。为提高系统的整体性能,可以在系统低负荷时预计算图形。
为简化问题,至此仍未对上下文图形中使用的要素的类与实例进行区分。所述上下文图形创建只使用了一些要素的特征,并创建了表示它们之间关系的结构。不过,上下文图形还必须被例示,即必须创建要素类的实例并将其链接,从而构建完全实用的上下文图形。因此,上下文图形创建之后的另一步骤、上下文图形建立是必需的。在此步骤中,创建上下文图形的必需要素的实例。尽可能使用现存的且在运行的实例。最后,所有实例相互连接,从而建立完整的完全实用的上下文图形。
在选择上下文解释器和上下文源以形成上下文图形的要素时,必须检查要素的输入与输出值是否可以互相映射。只要未指定焦点实体,就未完全定义上下文图形的要素的输入和输出值。图7a表示的上下文解释器108通过将某人X的物理位置考虑在内而得出其房间号。只要未使用上下文解释器108,X的值就未指定且在图形初始化后必定被约束到适当值,从而定义上下文解释器之间的有效关系。例如,如果图7a中的上下文解释器108连到与焦点实体“John Doe”相关的上下文属性106,则此值必须被映射到变量“X”。这在图7b中表示。
使X的虚值约束到上下文图形内的实值是通过标准一致方案来完成的。在上述示例中,上下文解释器108可以子句的形式由输入和输出值描述{output_room(X)^input_location(X)}CI当上下文解释器108连到上下文属性时,上下文属性的子句必须与上下文解释器的子句一致,即必须为兼容性检查约束(以及可能的无约束值),并且在任何可能之处都约束变量。因此,通过在X的所有出现值中,使X约束到“John Doe”,{input_room(X)|X=“John Doe”}CI;{output_room(X)^input_room(X)}CI产生了{input_room(X)|X=“John Doe”}CI;{output_room(X)|X=“JohnDoe”^input_room(X)|X=“John Doe”}CI如果两个子句无法一致,则两个组件不兼容。此外,如果在上下文图形创建结束时留有任何无约束变量,则产生的上下文图形无效,且新的上下文图形创建必须初始化。要阐明的是,焦点实体只是要受约束的输入和输出连接器的可能值之一。在上下文图形创建期间,可能受约束的值可以是类型、格式或焦点实体,视上下文属性、上下文解释器和上下文源的特征而定。
图8表示根据本发明的上下文信息提供系统800。上下文图形802的动态建立由配置装置801完成,而该装置本身由若干组件构成。
配置装置801将表示对上下文属性所定义的上下文信息请求的响应的数据记录的规格作为创建上下文图形的基础。它返回连接到上下文属性的上下文图形,并且在连接到传感器的上下文源端提供必需的上下文数据。配置装置连接到上下文解释器和上下文源的储存库804,在本发明的具体实施例中,还连接到计费和核算装置805,并且在本发明的另一实施例中,还连接到传感器目录806。
配置装置801集成在上下文服务器103中,上下文服务器103向上下文客户机提供该客户机请求的上下文信息。上下文图形创建装置807将有关焦点实体的信息传递给CI/CS预选装置812和传感器预选装置813,其中检查使用约束以确定要使用的组件。然后上下文图形创建装置807尝试依据提供的上下文解释器、上下文源和传感器组合上下文图形。配置装置801在上下文客户机内负责即时建立动态上下文图形配置,该配置向上下文属性提供该上下文属性指定的、表示对上下文客户机请求的上下文信息的响应的数据记录。
因此,上下文图形创建从上下文客户机101的请求开始,请求被传递到上下文服务器103。请求使上下文服务器103检查是否有适当的上下文属性106可满足该上下文请求。如果没有适当的上下文属性106,则创建新的上下文属性,并将图形创建初始化。上下文图形创建由配置装置801的上下文图形创建装置807处理。它根据上述方法,自动组合上下文图形结构以馈送给定的上下文属性106。可以定义复杂的优化规则来优化上下文图形创建装置807进行的图形创建。此类优化规则可以是例如优选焦点实体拥有的传感器,或功耗小于其它传感器的传感器,或者成本标准,等等。上下文图形配置的进一步优化由配置装置801的上下文图形优化装置808执行。如果图形创建失败,则错误会传递到上下文服务器103,而该服务器随后再将错误传递到上下文客户机101。
CI/CS预选装置812检查可用于当前上下文属性106的上下文解释器108和上下文源109。这也包括对约束的第一次评估,从而确定无论如何是否可满足它们。如果例如约束指定要使用某些传感器,则会检查那些传感器的可用性,如果它们不可用,则相应的上下文解释器或上下文源被从为当前上下文图形提供的有效上下文解释器和上下文源的列表中删除。CI/CS预选装置812通过检查例如是否允许上下文属性的焦点实体使用某些上下文解释器和/或上下文源,进一步处理安全限制的确认。如果例如上下文属性引用某个用户的焦点实体,而由于未经许可,不允许该用户使用还包括一些大加密例程的上下文解释器,则它会在预选过程中被删除。
传感器预选装置813实现非常类似的功能性,验证只使用有效传感器。有效传感器是指上下文属性的焦点实体被允许访问的那些传感器。如果例如焦点实体是用户而所需信息是某种位置,则传感器预选装置813注意仅使用用户自身的位置传感器。传感器预选装置813还检查传感器所需的上下文解释器和上下文源是否是可用的。
把图形规格传到上下文图形优化装置808,其中尝试进一步优化由上下文图形创建装置807建立的上下文图形配置。上下文图形优化装置将更完善的优化规则应用到上下文图形配置,随后在上下文图形创建装置807中完成。根据应用的这些优化规则,上下文图形优化装置808可重新配置上下文图形,并调换上下文图形配置中使用的组件。为了进一步优化上下文图形配置,还使用了来自CI/CS预选装置812和传感器预选装置813的信息。
然后把优化的上下文图形配置交给上下文图形确认装置809,该装置验证其有效性。上下文图形确认装置809检查图形中使用的上下文图形配置的一致性以及所有传感器、上下文源和上下文解释器的可用性。然后把经过这样验证的上下文图形配置传递到上下文图形建立装置810,该装置最终例示图形,从而实现从传感器803到上下文属性106的上下文路径。通过适当地例示所有上下文解释器和上下文源,并建立它们之间的输入和输出关系,从而例示上下文图形配置。如果建立失败,则错误会传递到上下文图形创建装置807,从而开始新的上下文图形配置的创建。例示分两步实施。第一步是检查哪些实例已经在运行,可以采用哪些实例,并且随后例示未在运行的要素。在第二步中,将上下文图形要素、传感器803和上下文属性106连接到上下文图形结构,从而完成例示进程。大体上,如果其中一个装置实现的用于图形优化、确认或建立的任一进程失败,则相应的装置产生错误,该错误被回传到图形创建装置807,从而开始生成新的上下文图形配置。
上下文描述如上述定义的焦点实体的情况时,上下文信息的提供是动态而不是静态进程。由于上下文属性106必须提供有效数据记录,表示对上下文客户机101发出的上下文信息请求的响应,因此必须把形成上下文的情况中的修改考虑在内。从上下文自身的更改开始,要修改上下文图形以反映焦点实体的上下文中的变化。修改由配置装置801的更改管理装置811负责。更改管理装置811使用来自传感器管理815、传感器预选813、CI/CS管理814、CI/CS预选812以及上下文图形802自身的信息,用于检查图形是否仍有效。
因为上下文图形的确认是动态进程,所以它必须被再三重复。在几种情况下,图形必须重新配置。一种情况是出现上下文解释器和上下文源的可用性、尤其是传感器的可用性的变化。通过CI/CS管理装置814和传感器管理装置815检查,可以确定上下文图形的组件的可用性。如果上下文图形的使用组件之一不能再使用,则上下文解释器和上下文源的预选会再次启动以查找可能的替代者。
CI/CS管理装置814通过定期检查外部资源,并将新的可用上下文解释器类和上下文源类下载到储存库804,对储存库804中的上下文解释器和上下文源进行删除和添加处理。它还检查哪些上下文解释器和上下文源长期未被使用,并在存储空间不足时,将它们删除。
传感器管理装置815始终监视所有可用的传感器,并不断检查传感器的状态。此信息可被查询并用于上下文图形创建进程。如果某个传感器出现故障或者不再可访问,则相应的信息会传播到更改管理811,更改管理811则将尝试替换相应的传感器。传感器管理装置815还根据配置装置801的其它装置的请求,尝试查找新的传感器。它将请求传递到外部源、例如传感器目录806。
更改管理811还将上下文图形802中使用的如上下文解释器、上下文源或传感器这些要素替换为新要素,从而进一步优化上下文图形802,例如,使用不同的定位系统获得更精确的位置信息。优化标准可能很复杂,并可利用清算机构装置816提供的信息。
关于计费和核算问题,可以在配置装置801中实现清算机构装置816。清算机构允许对使用外部传感器和访问内部传感器计费。它也检查访问限制,并负责将这些限制反映在系统的其它部分。清算机构装置816提供的信息可用于就上下文图形创建装置807和/或上下文图形优化装置808内的使用成本对上下文图形配置进行优化。清算机构装置816还允许在不同设备之间交换传感器访问,从而允许上下文服务器之间更复杂的相关性。例如,进入购物中心的用户可以交换一些他的简档信息以获得对室内位置传感器系统的访问。
用于上下文图形802的传感器803可分布在不同的节点,并可从远程访问。大体上有两种类型的传感器,即物理传感器和逻辑传感器。物理传感器检测各种物理数据,而逻辑传感器收集如用户简档之类的信息。
本身可访问许多其它上下文属性106以获得传感器信息的传感器是用于更多动态传感器配置的一种资源。用于此目的的上下文属性可以根据传感器的客观目标需要来更改。这种外部上下文属性106的再用产生了上下文图形的聚集,图9示出其中一个例子。在适当的子上下文图形位于不同的上下文服务器上时,最好使用聚集的上下文图形。在子上下文图形全部位于单个上下文服务器上时,通过绕过上下文属性、从而直接将传感器连接到子图的第一层上下文解释器,可以将它们合并成单个图形。另外,对于传感器,上下文解释器也可以通过远程上下文服务器,访问外部上下文属性以检索可访问的信息。同样,在这种情况下,不同的独立上下文图形被聚集成超上下文图形结构,该结构类似于下面进一步描述的、通过动态传感器配置获得的结构。
对于特定情况,手动建立上下文图形配置将优于非自动建立。通过指定要使用的上下文解释器和上下文源或传感器,或者为配置装置801提供部分或完整的上下文图形以供使用,这便可以实现。
对于手动指定上下文解释器或上下文源及传感器,通过定义某些过滤规则,或者传递指定最好或明确要使用的上下文解释器、上下文源和/或上下文传感器的列表,从而影响用于传感器的预选装置814和/或用于上下文解释器和上下文源的预选装置812。手动干预可以延伸到不仅指定用于上下文图形创建的要素,而且还指定那些要素之间的互连,从而将完整的子上下文图形传递到配置装置801。因此,可以指定手动建立的上下文图形或上下文子图形是否是专用的或者仅最好用于某一上下文图形配置。当手动创建的完整上下文图形传递到配置装置801时,配置装置801仅要处理图形的确认和例示。然后,通过减少其错误控制功能性,并将可能的错误直接传递到上下文客户机101,而不尝试重新配置上下文图形以补偿错误,图形维护被禁用。
上下文图形对形成上下文信息的情况变化的动态自适应产生了对不同传感器、上下文源和上下文解释器的要求,这种动态自适应由更改管理装置811处理。更改管理装置811使用本地分支置换修改上下文图形,并使其适于新情况。假定上下文图形内的传感器或任一其它要素出现故障,则直至该故障位置的上下文图形会变得无效。由此产生的错误通过整个路径向上传播到上下文图形内的下一要素。在图10中,例如上下文源15出现故障。此错误传播到上下文解释器8,从该解释器处将新的子图创建初始化。如果此图形创建失败,则上下文解释器8也变为无效,且新子图创建会从上下文解释器第3号的位置开始。假定错误向上传播到上下文解释器1,则上下文解释器1下方的整个分支必须重建。因此,本地分支置换指的是仅仅重组受情况变化影响的那些部分。只要错误不会使整个上下文图形变为无效,则从上下文解释器第2号开始的分支将保持不变。本地分支置换尽可能使分支重建保持在本地。
迄今解释器只是被视为具有给定种类的输入和一个输出的静态组件。动态上下文解释器实现更增强的功能。它们能够根据外部和/或内部条件,更改其输入和/或输出连接器的类型。
例如,在发现GSM系统提供的信息不够精确时,动态上下文解释器会将其输入连接器类型从GSM更改为GPS位置信息类型。这种情况下,如图10所示,它会使上下文图形内其适当的子树无效,从而导致相应的分支重新配置。
在本发明的特定实施例中,上下文图形的更改管理的性能通过动态上下文解释器进一步提高。在给定的传感器出现故障或变得不可用时,动态上下文解释器将自己在更改管理装置811处登记为事件处理器。在用于描述某个用户的上下文的传感器要永久性更改时,如在用户四处移动时要检测用户周围的环境温度时,这就特别有利。当要调换传感器时,动态上下文解释器将创建带有现在无效分支的属性的伪上下文属性,并采用上述上下文图形创建机制为伪上下文属性的上下文图形创建初始化。在上下文图形例示时,此上下文图形联接在伪上下文属性上,从而连接到动态上下文解释器。这样,在用户四处移动或因为传感器只有小范围时,避免了大量的重新配置步骤。
或者,通过查询可用传感器并选择适当的传感器,动态上下文解释器可以自己选择新的传感器。在如上述监控用户环境温度的示例的简单情况中,这种替代方法更加有效,也节省资源。在上下文图形重新配置仅要使用某些传感器和/或上下文解释器和/或上下文源时,动态上下文解释器还可影响上下文解释器/上下文源预选与传感器预选。
要决定传感器是否适用于某个上下文图形,传感器管理装置815查询传感器目录储存库806中保存的传感器目录。传感器目录是提供对分层结构数据的访问的服务器。每个信息附带有属性。传感器目录的主要目的是提供传感器参考。传感器目录可以两种不同的方式组织,第一种方式是将多个传感器目录分组到传感器目录联邦(SDF)。每二种方式是将传感器目录构建为分层结构(SDH)。
SDF是多个独立的传感器目录,具有非复制、非冗余信息数据库。请求传递到SDF的某个成员时,请求也同时暗自发送到联邦的每个其它成员,从而形成了一种虚拟服务器。形成传感器共用池的建筑某层内的传感器目录是传感器目录联邦的示例。如果查询此层的一个传感器目录,则也会尝试使用其它传感器目录的信息。
传感器目录分层结构内的传感器目录也是非复制、非冗余的。与SDF不同,在请求发送到SDH内的某个传感器目录时,先尝试在本地解决请求。如果该传感器目录无法解决请求,则它将请求交给其父传感器目录。该目录随后尝试自己解决请求,或者将请求传递给另一子传感器目录或甚至传递给它自己的父传感器目录。为获得提高的性能,信息会高速缓存在分层结构中的不同层上。可以设置查询的寿命期,以免其向上进一步传播到分层结构的给定层。应当指出,SDH并非必须由单个传感器目录组成,而是也可以包含SDF。
如果传感器管理装置815检测到传感器本地不再可访问,但在传感器目录中仍可用,则它会将此传感器标记为暂时不可用,并在一段时间后将其彻底删除。如果传感器即不可访问,在传感器目录中也不再可用,则传感器管理装置815将立即将它从可用传感器列表中删除。
权利要求
1.应请求提供上下文信息的系统(800),它包括上下文属性(106),为表示对上下文信息请求的响应的数据记录指定类型、格式和焦点实体;至少一个上下文源(109),为所述上下文信息请求提供相关的上下文数据;至少一个上下文解释器(108、401、601、602),用于建立所述上下文属性与所述上下文源之间的互连;以及配置装置(801),用于建立动态上下文图形配置,以便根据上下文源和上下文解释器的实际可用性和适用性组合它们以提供所述数据记录。
2.如权利要求1所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)通过以下步骤生成所述上下文图形配置将第一上下文解释器(108、401、601、602)或者上下文源连接到上下文属性(106),所述第一上下文解释器具有与所述上下文属性的输入连接器相匹配的输出连接器,所述上下文源具有与所述上下文属性的输入连接器相匹配的输出连接器;在使用第一上下文解释器时,将所述第一上下文解释器(108、401、601、602)的每个输入连接器连接到与所述各个输入连接器相匹配的上下文解释器(108、401、601、602)的输出,或者连接到具有与所述各个输入连接器相匹配的输出连接器的上下文源(109);以及将尚未连接到上下文源(109)的输出连接器或上下文解释器(108、401、601、602)的输出连接器的、上下文解释器(108、401、601、602)的每个输入连接器连接到与所述各个输入连接器相匹配的上下文解释器(108、401、601、602)的输出,或者连接到具有与所述各个输入连接器相匹配的输出连接器的上下文源(109)。
3.如权利要求2所述的提供上下文信息的系统(800),其特征在于,通过将上下文解释器(108、401、601、602)的输入连接器连接到不同上下文解释器(108、401、601、602)的输出连接器,而输出连接器又已经连接到所述上下文图形配置中存在的另一上下文解释器(108、401、601、602)的输入连接器或上下文属性(106)的输入,从而建立反馈功能。
4.如权利要求3所述的提供上下文信息的系统(800),其特征在于,建立所述反馈功能的条件由为所述上下文解释器(601、602)定义的约束来指定,并且所述反馈功能的实现由为所述上下文解释器(601、602)定义的相应的约束事件来指定。
5.如权利要求1到4之一所述的提供上下文信息的系统(800),其特征在于,包含多个可用上下文解释器(108、401、601、602)和上下文源(109)的储存库(804)向所述配置装置提供上下文解释器(108、401、601、602)和上下文源。
6.如权利要求1到5之一所述的提供上下文信息的系统(800),其特征在于,所述上下文源(109)访问提供物理数据和/或信息数据的传感器(803)。
7.如权利要求1到6之一所述的提供上下文信息的系统(800),其特征在于,所述上下文图形配置是按照预定义的优化规则建立的。
8.如权利要求1到7之一所述的提供上下文信息的系统(800),其特征在于,图形高速缓存提供预配置的上下文图形配置以供所述配置装置(801)使用。
9.如权利要求1到8之一所述的提供上下文信息的系统(800),其特征在于,为所提供的用于上下文图形内的上下文解释器(108、401、601、602)或上下文源(109)的输入连接器和/或输出连接器定义的所述焦点实体是以变量来实现的,所述变量在所述上下文图形初始化后被约束到一个实值。
10.如权利要求1到9之一所述的提供上下文信息的系统(800),其特征在于,上下文解释器(108、401、601、602)根据请求和/或接收的数据的可用性或特性的变化,修改其输入连接器的类型和/或其输出连接器的类型。
11.如权利要求1到10之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括自动为给定的上下文属性(106)组合上下文图形(802)的上下文图形创建装置(807)。
12.如权利要求1到11之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括更改管理装置(811),用于根据所述上下文图形内的要素(108、109、401、601、602)的可用性和/或适用性的变化,控制上下文图形(802)的重新配置。
13.如权利要求1到12之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括上下文图形优化装置(808),用以根据规则体系控制上下文图形(802)的建立。
14.如权利要求1到13之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括上下文图形确认装置,用以验证上下文图形(802)的一致性和所述上下文图形内使用的所述要素(108、109、401、601、602)的可用性。
15.如权利要求1到14之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括上下文图形建立装置(810),用以在上下文图形(802)中例示所述上下文解释器(108、401、601、602)和上下文源(109)。
16.如权利要求1到15之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括预选装置,用于选择适用于为给定的上下文属性(106)创建上下文图形(802)的上下文源(109)和上下文解释器(108、401、601、602)。
17.如权利要求1到16之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括传感器预选装置(813),用于选择与适合于为给定的上下文属性(106)创建上下文图形(802)的上下文源(109)一起使用的传感器(803)。
18.如权利要求12到17之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括传感器管理装置(815),用以监控用于上下文图形(802)的每个传感器(803)的状态和可用性,并将结果转发到所述更改管理装置(811)。
19.如权利要求1到18之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括访问控制装置(816),用以加强在所述上下文图形中组件的使用上施加的访问限制。
20.如权利要求1到19之一所述的提供上下文信息的系统(800),其特征在于,所述配置装置(801)包括核算装置(816),用于就上下文图形(802)所用的传感器(803)和要素(108、109、401、601、602)的使用向焦点实体收费。
21.如权利要求1到20之一所述的提供上下文信息的系统(800),其特征在于,至少一个预定义的上下文图形被链接到正建立的上下文图形(802)。
22.软件产品,它在由数据处理设备的处理装置执行时,适合于在所述数据处理设备上实现如权利要求1到21之一所述的应请求提供上下文信息的系统(800)。
23.应请求提供上下文信息的方法,它具有以下步骤为表示对上下文信息请求的响应的数据记录指定类型、格式和焦点实体;定位为所述上下文信息请求提供相关上下文数据的一个或多个上下文源(109);定位一个或多个上下文解释器(108、401、601、602),用以将所述提供的与所述焦点实体相关的上下文数据处理成为所述数据记录指定的类型和格式;以及建立动态上下文图形配置,用以根据上下文源(109)和上下文解释器(108、401、601、602)的实际可用性和适用性将其组合,从而提供所述数据记录。
24.如权利要求23所述的方法,其特征在于,每个上下文源(109)和/或每个上下文解释器(108、401、601、602)的可用性和适用性不断地受到监视。
25.如权利要求24所述的方法,其特征在于,如果检测到上下文源(109)和/或上下文解释器(108、401、601、602)出现故障而不再可用和/或不适用于提供或处理上下文数据,则由所述故障上下文源(109)或上下文解释器(108、401、601、602)及连接至其输入连接器的上下文源(109)和/或上下文解释器(108、401、601、602)构成的上下文图形配置的部分会失效并被重建。
全文摘要
本发明提供一种应请求向上下文认识装置提供上下文信息的系统,它包括上下文属性(106),为表示对上下文信息请求的响应的数据记录指定类型、格式和焦点实体;至少一个上下文源(109),为上下文信息请求提供相关的上下文数据;至少一个上下文解释器(108、401、601、602),用于建立上下文属性(106)与上下文源(109)之间的互连;以及配置装置(801),用于建立动态上下文图形配置,以便根据上下文源和上下文解释器的实际可用性和适用性将其组合,从而提供数据记录。
文档编号G06F9/46GK1410914SQ0214425
公开日2003年4月16日 申请日期2002年9月28日 优先权日2001年9月28日
发明者A·哈姆丹 申请人:索尼国际(欧洲)股份有限公司

最新回复(0)