论文部分内容阅读
近年来,随着智能设备的普及,上下文感知程序的应用也变得越来越广泛。这些程序能够根据设备中各种传感器采集到的上下文信息,获知当前环境的状态,进而给用户提供对应的个性化服务。比如“嘀嘀打车”能够根据用户的位置提供精准的打车服务。然而,由于环境噪声的影响,程序得到的上下文往往存在一致性错误。这会影响程序的正常运行,进而给用户带来不必要的麻烦。因此,及时检测并处理上下文一致性错误是很有必要的。目前,在上下文一致性错误检测方面,相关的研究已经卓有成效,无论是效果还是效率方面,都有了不错的表现。而在一致性错误处理方面,现有的工作还不能很好地解决问题。这是因为造成一致性错误的原因复杂、多样,和场景相关性也很大,要想设计一个通用的方法来解决这个问题有很大的难度。同时,本文通过研究发现,这些传统的一致性错误处理方法大都存在约束间干扰(针对一条约束的处理操作导致另外一条约束被违反)和副作用(处理操作本身对程序的正常运行造成影响)两个方面的不足。本文针对传统方法的不足,提出了一种基于搜索的上下文一致性错误处理方法。我们的方法在确保能有效处理上下文一致性错误的情况下,同时考虑了处理操作本身在约束间干扰和副作用两个方面的影响。为了达到这样的目标,我们设计了基于遗传算法的优化方法,能够在较短的时间内,有效地搜索可行的处理方案组成的解空间。同时,我们通过有效复用旧的检测结果和避免在一次搜索过程中对同一方案进行重复计算两种方法提升了计算效率。本文还进行了较为全面的实验评估。本文分别在模拟场景和真实场景中,将新方法和传统方法进行了效率和效果上的比较。经实验评估,本文提出的新一方法能够在有效处理上下文一致性错误的同时,显著降低处理操作本身在约束间干扰和副作用方面的影响,较好地解决了传统方法的不足。此外,本文进行了一些应用扩展方面的支持和演示系统的实现。首先,本文实现了一个上下文管理模块,方便了开发者来检测和处理上下文一致性错误。其次,本文实现了一个演示系统,能够在不同场景下,实时比较新方法和传统方法在效率和效果的表现。同时,这个演示系统可以支持多种平台(如PC和Android设备)。