Invariants are a set of properties over program attributes that are expected to be true during the execution of a program. Since developing those invariants manually can be costly and challenging, there are a myriad of approaches that support automated mining of likely invariants from sources such as program traces. Existing approaches, however, are not equipped to capture the rich states that condition the behavior of autonomous mobile robots, or to manage the uncertainty associated with many variables in these systems. This means that valuable invariants that appear only under specific states remain uncovered. In this work we introduce an approach to infer conditional probabilistic invariants to assist in the characterization of the behavior of such rich stateful, stochastic systems. These probabilistic invariants can encode a family of conditional patterns, are generated using Bayesian inference to leverage observed trace data against priors gleaned from previous experience and expert knowledge, and are ranked based on their surprise value and information content. Our studies on two semi-autonomous mobile robotic systems show how the proposed approach is able to generate valuable and previously hidden stateful invariants.
翻译:由于手工开发这些变异物可能成本高且具有挑战性,因此有各种各样的方法支持从程序痕迹等来源自动开采可能的变异物。但是,现有的方法没有装备来捕捉那些以自主移动机器人的行为为条件的富裕国家,或无法控制与这些系统中许多变量相关的不确定性。这意味着仅在特定国家中出现的宝贵变异物仍然被发现。在这项工作中,我们引入了一种方法来推断有条件的变异物,以协助描述如此丰富的状态、随机系统的行为特征。这些变异物可以对有条件的模式进行编码,利用巴伊西亚的推断,利用先前从以往的经验和专家知识中收集出来的观察到的痕量数据,并根据其惊人的价值和信息内容进行排序。我们对两个半自主移动机器人系统的研究显示,拟议的方法如何能够产生宝贵的和先前隐藏的变异物。