首页 / 专利库 / 心理学与精神病学 / 感知 / 一种上下文感知计算中的冲突消解方法

一种上下文感知计算中的冲突消解方法

阅读:690发布:2021-06-12

专利汇可以提供一种上下文感知计算中的冲突消解方法专利检索,专利查询,专利分析的服务。并且一种上下文 感知 计算中的冲突消解方法,该方法计算每个策略的选择中心,并计算发生冲突的每个策略在当前上下文环境下的偏移度。通过比较策略之间的偏移度值选择执行策略,从而解决冲突的问题。为了避免上下文环境在小范围内频繁变化造成策略抖动的问题, 算法 还引入持久系数对偏移度计算进行了修正。,下面是一种上下文感知计算中的冲突消解方法专利的具体信息内容。

1、一种上下文感知计算中的冲突消解方法,其特征在于:
1)针对每一种选择策略,计算其策略选择中心;
2)获取当前上下文数值;
3)如果上下文数值为数值型,则转步骤4),否则转步骤5);
4)计算当前上下文数值与每个策略的差值,命名为偏移度值,转步骤6);
5)根据Pos函数及Count函数,计算偏移度数值,转步骤6);
6)记录两个策略的偏移度数值,作为下一次计算持久系数的依据;
7)根据上次记录的偏移度数值,计算此次持久系数 persistence=persistence+(pastOffset2-pastOffset1)/pastOffset1
其中persistence为持久系数数值,pastOffset1和pastOffset2为上一次 记录的偏移度数值;
8)根据持久系数计算新的偏移度数值;
9)根据新得到的两个策略所对应的偏移度数值选择执行策略;
10)执行选定的策略。
2、根据权利要求1所述的上下文感知计算中的冲突消解方法,其特征在 于:所说的数值型偏移度值的计算步骤如下:
偏移度函数:offset,P*E->R+
偏移度为当前环境值对于策略中所有环境声明条目的偏移度的加权和, 其中,Pi∈P,e0∈E,Pi包含m个声明条目,记为entry(i),1<=i<=m,offset(i) 表示每一个环境声明条目的偏移度
offset _ i = | evaluate ( e 0 , entry . name ) - ( entry _ i . max + entry _ i . min ) 2 | | entry _ i . max - entry _ i . min | - - - ( 1 )
offset P i = Σ i = 1 m offset _ i × W _ i - - - ( 2 )
在上述公式中 ( entry _ i . max + entry _ i . min ) 2 用于计算环境条目的选择中心, 分母计算条目的选择范围,将每一个偏移度值按照其条目的比重进行加权即 可得到该策略的偏移度值;
若当前环境值在两个策略中都处于其条目的选择中心,故偏离度为0, 因此在(1)式中引入常数C,修正offset(i)的计算公式得到
offset _ i = | evaluate ( e 0 , entry . name ) - ( entry _ i . max + entry _ i . min ) 2 | + C | entry _ i . max - entry _ i . min | C > 0 - - - ( 1 * )
C是一个大于0的常数,通常取值为1。
3、根据权利要求1所述的上下文感知计算中的冲突消解方法,其特征在 于:所说的枚举类型的偏移度值的计算方法为:首先需要在定义策略时,指 定策略中枚举类型的条目的可能值列表,随后通过将枚举值映射到其位置的 函数,将所有对枚举值得计算转化为对其在列表中所处位置的计算,得出其 偏移度值,其具体步骤为:
定义如下两个函数
Pos函数:R*Entry->N,给出一个值在一个条目的可能值列表中的位置;
Count函数:Entry->N,给出策略中一个条目所包含的限定值个数;
offset _ i = | pos ( evaluate ( entry . name ) ) - max ( pos ( entry . value ( k ) ) ) + min ( pos ( entry . value ( k ) ) ) 2 | + C count ( entry ) - - - ( 2 )
1<=k<=m。
4、根据权利要求1所述的上下文感知计算中的冲突消解方法,其特征在 于:所说的持久系数是一个介于0和1之间的实数,随着互相冲突的若干策 略的偏移度值变化而变化,并将影响加入偏移度计算结果中,以下是持久系 数以及调整偏移度值的计算公式:
  offset1=offset(value,policy1);//此次计算的策略1的偏移度
  offset2=offset(value,policy2);//此次计算的策略2的偏移度
  persistence=persistence+(pastOffset2-pastOffset1)/
  pastOffset1;
  //上一次计算的策略1和策略2的偏移度,并据此计算持久系数
  if(persistence<0)persistence=0;//持久系数始终大于等于0
  //将持久系数影响添加在偏移度值上
  //并记录此次偏移度值
  if(pastOffset1     pastOffset1=offset1;
     pastOffset2=offset2;
     offset1=offset1*(1-persistence);
  else
     pastOffset1=offset1;
     pastOffset2=offset2;
     offset2=offset2*(1-persistence)。

说明书全文

技术领域

发明涉及一种上下文感知计算的方法,具体涉及一种一种上下文感知 计算中的冲突消解方法。

背景技术

包括掌上电脑、移动电话、PDA等移动设备已经越来越多地进入人们的 生活。为了向用户提供更高的服务质量,适应这些移动设备的应用应该是上 下文感知的,它能够在不受用户干预的情况下根据用户的上下文信息调整应 用的操作。这需要应用定时的获取、更新上下文信息,根据这些信息决定应 用的执行策略。研究人员通过多种途径解决这一问题,提出了一系列的解决 方法,包括Want等人的Active Badge Location System,context toolkit 以及gaia等。
在这些开发面向上下文应用的方法中,一个重要的思路是将不同环境下 不同的执行代码分离到多个程序片断中,在程序运行时根据当前执行环境动 态选择需要的代码片断。这种方法可以有效地增加应用开发的灵活性,达到 适应环境变化的目的。包括Cop,Olympas在内的很多编程模型给出了将不同 环境下的代码分离在多个片断的方法,但是仍有一个问题需要解决,那就是 在定义不同环境下的执行代码时,需要对环境加以界定(例如,指定温度的 范围或者用户所处的位置范围等等)。由于定义不同环境的出发点不同,很有 可能出现冲突的情况(CRISMA),一旦冲突产生,则系统无法按照用户需求选 择正确的执行代码完成操作。因此,发生冲突时的选择算法成为一个必须解 决的问题。

发明内容

本发明的目的在于克服上述现有技术的缺点,提供了一种结合环境因素 优先级别,计算当前上下文环境对每种判别条件偏移度,并根据偏移度大小 选择相应的执行策略的上下文感知计算中的冲突消解方法。
为达到上述目的,本发明采用的技术方案是:
1)针对每一种选择策略,计算其策略选择中心;
2)获取当前上下文数值;
3)如果上下文数值为数值型,则转步骤4),否则转步骤5);
4)计算当前上下文数值与每个策略的差值,命名为偏移度值,转步骤6);
5)根据Pos函数及Count函数,计算偏移度数值,转步骤6);
6)记录两个策略的偏移度数值,作为下一次计算持久系数的依据;
7)根据上次记录的偏移度数值,计算此次持久系数
persistence=persistence+(pastOffset2-pastOffset1)/pastOffset1
其中persistence为持久系数数值,pastOffset1和pastOffset2为上一次 记录的偏移度数值;
8)根据持久系数计算新的偏移度数值;
9)根据新得到的两个策略所对应的偏移度数值选择执行策略;
10)执行选定的策略。
本发明的数值型偏移度值的计算步骤如下:
偏移度函数:offset,P*E->R+
偏移度为当前环境值对于策略中所有环境声明条目的偏移度的加权和, 其中,Pi∈P,e0∈E,Pi包含m个声明条目,记为entry(i),1<=i<=m,offset(i) 表示每一个环境声明条目的偏移度
offset _ i = | evaluate ( e 0 , entry . name ) - ( entry _ i . max + entry _ i . min ) 2 | | entry _ i . max - entry _ i . min | - - - ( 1 )
offsetP i = Σ i = 1 m offset _ i × W _ i - - - ( 2 )
在上述公式中 ( entry _ i . max + entry _ i . min ) 2 用于计算环境条目的选择中心, 分母计算条目的选择范围,将每一个偏移度值按照其条目的比重进行加权即 可得到该策略的偏移度值;
若当前环境值在两个策略中都处于其条目的选择中心,故偏离度为0, 因此在(1)式中引入常数C,修正offset(i)的计算公式得到
offset _ i = | evaluate ( e 0 , entry . name ) - ( entry _ i . max + entry _ i . min ) 2 | + C | entry _ i . max - entry _ i . min | C > 0 - - - ( 1 * )
C是一个大于0的常数,通常取值为1。
枚举类型的偏移度值的计算方法为:首先需要在定义策略时,指定策略 中枚举类型的条目的可能值列表,随后通过将枚举值映射到其位置的函数, 将所有对枚举值得计算转化为对其在列表中所处位置的计算,得出其偏移度 值,其具体步骤为;
定义如下两个函数
Pos函数:R*Entry->N,给出一个值在一个条目的可能值列表中的位置;
Count函数:Entry->N,给出策略中一个条目所包含的限定值个数;
offset _ i = | pos ( evaluate ( entry . name ) ) - max ( pos ( entry . value ( k ) ) ) + min ( pos ( entry . value ( k ) ) ) 2 | + C count ( entry ) - - - ( 2 )
1<=k<=m。
本发明的持久系数是一个介于0和1之间的实数,随着互相冲突的若干 策略的偏移度值变化而变化,并将影响加入偏移度计算结果中,以下是持久 系数的计算以及对偏移度影响的计算公式:
offset1=offset(value,policy1);//此次计算的策略1的偏移度
offset2=offset(value,policy2);//此次计算的策略2的偏移度
persistence=persistence+(pastOffset2-pastOffset1)/
pastOffset1;
//上一次计算的策略1和策略2的偏移度,并据此计算持久系数
if(persistence<0)persistence=0;//持久系数始终大于等于0
//将持久系数影响添加在偏移度上
//并记录此次偏移度值
if(pastOffset1  pastOffset1=offset1;
  pastOffset2=offset2;
  offset1=offset1*(1-persistence);
else
  pastOffset1=offset1;
  pastOffset2=offset2;
  offset2=offset2*(1-persistence)。
本发明通过计算策略偏移度解决冲突。该方法结合环境因素优先级别, 计算当前上下文环境对每种判别条件偏移度,并根据偏移度大小选择相应的 执行策略。在此基础上,考虑环境因素连续变化因素,引入持久系数,防止 环境在小范围内频繁变化造成策略选择抖动的问题。

具体实施方式

在上下文感知计算中,应用需要根据不同的上下文环境选择不同的执行 策略。这些策略可能会出现冲突,大多数解决方法采用优先级策略。
本发明提出偏移度算法对冲突进行消解,计算每个策略的选择中心,当 冲突发生时,计算每个冲突的策略的选择中心与当前上下文环境的偏移度, 并选择偏移度最低的策略作为执行策略。为了避免环境在小范围内抖动的现 象,算法引入了持久系数,使上一次选中的执行策略在本次计算中具有一定 优势,从而减少抖动的现象。
具体过程如下:
为了更准确的对本发明进行描述,首先对冲突问题进行定义及形式化描 述。
定义1:符号。在系统中所有能够获取到的环境信息称为系统环境信息。 所有环境信息的名称的集合成为EName,所有可能环境值的集合为E,每一种 环境信息的值的集合为V;当前环境下的环境值计为e0(e0∈E)。服务的集合称 为S。所有服务的配置的集合称为C。服务S的所有策略的结合成为P(S), 在不产生歧义的情况下简记为P。
定义2:服务。服务是在上下文感知系统中,根据用户的上下文环境动 态调整自身行为,为用户提供信息的功能实体。服务包含服务代码及其配置 文件,配置文件是一组策略的集合,每个策略对应一个环境声明以及一个执 行标识。环境声明用于指定该策略能够生效的上下文环境,执行标识指导服 务针对这一上下文环境调整其服务方式,执行标识根据实现方式的不同可能 代表一个方法名称、一个参数值或者一个属性值等等。
Service::=serviceImplement configuration
Configuration::=policySet
policySet::=policy policySet|policy
policy::=context identity
定义3:环境声明。策略中的环境声明用于界定这个策略能够生效的上 下文环境。每个环境声明包含一组声明条目,每个条目用于限定一种环境信 息,例如,“温度在10至20摄氏度之间”是对温度这一环境信息限定条目的 文字描述。环境声明条目中值的类型可以是枚举类型或者布尔值,也可以通 过指定一个范围来定义,可能的例子包括location=high,power=true, temperature>10等。每个环境声明条目需要指定其在整个策略中的权重,同 时需要给出值的边界(对于枚举或布尔类型的值,需要给出所有可能值的列 表)。
Context::=contextEntrySet
contextEntrySet::=contextEntry contextEntrySet|contextEntry
contextEntry::=name operator value type weight bound
type::=Boolean|enumerate|number
bound::=min max if type=number
valueList if type=enumberate or boolean
定义4:评估函数evaluate:EName*E->V。得到某个指定名称的上下文 信息值。
在环境声明条目cEntry中的operator与value共同组成了对环境信息 的界定条件。cEntry.operator(cEntry.value,evaluate(e0,cEntry.name) =true意味着该条目满足当前上下文环境。
定义5:适应性函数:fit:P*E->Boolean
Fit(p,e)=fit(entry(1),e)& fit(entry(2),e)&..& fit(entry(n),e)
Fit(entry(k),e)=fit(entry(k),evaluate(e,entry(k).name))
fit(entry(k),v)=entry.operator(entry(k).value,v)
定义6:适应策略集合:adaptSet:C*E->2P
adaptSet(c,e)=adaptSet(p1,e)∪adaptSet(pset/p1,e)
adaptSet(p,e)=if fit(p,e)then{p}else空集
定义7:冲突。如果||adaptSet(C,e0)||=0说明配置中没有满足当前环 境的策略,=1说明只有一个满足当前环境。>1说明有两个以上的策略满足 当前环境,我们称这种情况为冲突。此时系统需要使用冲突解决方法来选择 执行策略。
1)上下文冲突的偏移度算法
偏移度函数:offset。P*E->R+
偏移度为当前环境值对于策略中所有环境声明条目的偏移度的加权和, 偏移度越高表明当前环境对于策略中定义的环境需求偏差越大。
其中,Pi∈P,e0∈E,Pi包含m个声明条目,记为entry(i),1<=i<=m。 offset(i)表示每一个环境声明条目的偏移度
offset _ i = | evaluate ( e 0 , entry . name ) - ( entry _ i . max + entry _ i . min ) 2 | | entry _ i . max - entry _ i . min | - - - ( 1 )
offsetP i = Σ i = 1 m offset _ i × W _ i - - - ( 2 )
在上述公式中 ( entry _ i . max + entry _ i . min ) 2 用于计算环境条目的选择中心, 分母计算条目的选择范围。将每一个偏移度值按照其条目的比重进行加权即 可得到该策略的偏移度值。
当前环境值在两个策略中都处于其条目的选择中心,故偏离度为0。因 此在(1)式中引入常数C,修正offset(i)的计算公式得到
offset _ i = | evaluate ( e 0 , entry . name ) - ( entry _ i . max + entry _ i . min ) 2 | + C | entry _ i . max - entry _ i . min | C > 0 - - - ( 1 * )
C是一个大于0的常数,通常取值为1。
对于枚举类型的上下文数值,给出在这种情况下的偏移度计算办法。首 先需要在定义策略时,指定策略中枚举类型的条目的可能值列表。随后通过 将枚举值映射到其位置的函数,将所有对枚举值得计算转化为对其在列表中 所处位置的计算,得出其偏移度。
定义如下两个函数
Pos函数:R*Entry->N。给出一个值在一个条目的可能值列表中的位置
Count函数:Entry->N。给出策略中一个条目所包含的限定值个数。
offset _ i = | pos ( evaluate ( entry . name ) ) - max ( pos ( entry . value ( k ) ) ) + min ( pos ( entry . value ( k ) ) ) 2 | + C count ( entry ) - - - ( 2 )
1<=k<=m
2)防止冲突选择策略抖动
在使用偏移度算法时,在某些情况下,随着上下文环境的变化,策略会 发生频繁抖动的现象。究其原因,当在某一环境下发生冲突时,当前环境同 时满足两个策略的环境限定(P1,P2属于adaptSet(C,E))。如果某个环境 因素在一个小范围波动,会导致计算偏移度时,两个策略的偏移度值频繁上 下交错,从而策略选择结果不断变化,产生策略抖动现象,这有可能会降低 用户的满意度,因此需要对算法加以调整。
在计算偏移度时,算法引入持久系数这一变量。持久系数的作用是,在计 算偏移度时,降低上一次选中的策略的偏移度值,使其更有可能被再次选中, 从而较少抖动发生的几率。
持久系数是一个介于0和1之间的实数,随着互相冲突的若干策略的偏移 度值变化而变化,并将影响加入偏移度计算结果中。以下算法对持久系数的 计算以及对偏移度影响的计算公式的简要描述。
offset1=offset(value,policy1);//此次计算的策略1的偏移度
offset2=offset(value,policy2);//此次计算的策略2的偏移度
persistence=persistence+(pastOffset2-pastOffset1)/
pastOffset1;
//上一次计算的策略1和策略2的偏移度,并据此计算持久系数
if(persistence<0)persistence=0;//持久系数始终大于等于0
//将持久系数影响添加在偏移度上
//并记录此次偏移度值
if(pastOffset1  pastOffset1=offset1;
  pastOffset2=offset2;
  offset1=offset1*(1-persistence);
else
  pastOffset1=offset1;
  pastOffset2=offset2;
  offset2=offset2*(1-persistence);
持久系数体现了上一次计算的偏移度的差别程度,并且具有累积效应。持 久系数能够有效地平衡环境的小范围频繁变化对策略选择造成的影响。后一 次环境变化的幅度如果小于前一次变化幅度,持久系数可以消除这种变化带 来的策略切换,但如果第二次环境变化幅度过大或者环境持续向一个方向变 化,那么持久系数会将这种变化传递给偏移度,进而进行策略的切换。
算法的详细步骤如下:
1)针对每一种选择策略,计算其策略选择中心;
2)获取当前上下文数值;
3)如果上下文数值为数值型,则转步骤4),否则转步骤5);
4)计算当前上下文数值与每个策略的差值,命名为偏移度值,转步骤6);
5)根据Pos函数及Count函数,计算偏移度数值,转步骤6);
6)记录两个策略的偏移度数值,作为下一次计算持久系数的依据;
7)根据上次记录的偏移度数值,计算此次持久系数
persistence=persistence+(pastOffset2-pastOffset1)/pastOffset1
其中persistence为持久系数数值,pastOffset1和pastOffset2为上一次 记录的偏移度数值;
8)根据持久系数计算新的偏移度数值;
9)根据新得到的两个策略所对应的偏移度数值选择执行策略;
10)执行选定的策略。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈