In order to support a variety of missions and deal with different flight environments, drone control programs typically provide configurable control parameters. However, such a flexibility introduces vulnerabilities. One such vulnerability, referred to as range specification bugs, has been recently identified. The vulnerability originates from the fact that even though each individual parameter receives a value in the recommended value range, certain combinations of parameter values may affect the drone physical stability. In this paper we develop a novel learning-guided search system to find such combinations, that we refer to as incorrect configurations. Our system applies metaheuristic search algorithms mutating configurations to detect the configuration parameters that have values driving the drone to unstable physical states. To guide the mutations, our system leverages a machine learning predictor as the fitness evaluator. Finally, by utilizing multi-objective optimization, our system returns the feasible ranges based on the mutation search results. Because in our system the mutations are guided by a predictor, evaluating the parameter configurations does not require realistic/simulation executions. Therefore, our system supports a comprehensive and yet efficient detection of incorrect configurations. We have carried out an experimental evaluation of our system. The evaluation results show that the system successfully reports potentially incorrect configurations, of which over 85% lead to actual unstable physical states.
翻译:为了支持各种任务并处理不同的飞行环境,无人机控制程序通常提供可配置的控制参数。 但是,这种灵活性会带来脆弱性。 最近已经查明了这种脆弱性之一,即范围规格错误。 脆弱性源于如下事实:尽管每个参数在推荐值范围内得到一个价值,但某些参数组合可能会影响无人机的物理稳定性。 在本文件中,我们开发了一个创新的学习引导搜索系统,以找到这些组合,我们称之为不正确的配置。我们的系统应用计量经济学搜索算法突变配置,以检测将无人机驱动到不稳定物理状态的配置参数。为了指导突变,我们的系统利用机器学习预测器作为健身评价员。最后,通过多目标优化,我们的系统根据突变搜索结果返回可行的范围。因为在我们的系统中,突变由预测器指导,评估参数配置并不需要现实/模拟处决。因此,我们的系统支持全面和高效地检测不正确的配置。我们已经对系统进行了实验性评估,对系统进行了精确的系统进行了评估。