We consider the problem of falsifying safety requirements of Cyber-Physical Systems expressed in signal temporal logic (STL). This problem can be turned into an optimization problem via STL robustness functions. In this paper, our focus is in falsifying systems with multiple requirements. We propose to solve such conjunctive requirements using online generative adversarial networks (GANs) as test generators. Our main contribution is an algorithm which falsifies a conjunctive requirement $\varphi_1 \land \cdots \land \varphi_n$ by using a GAN for each requirement $\varphi_i$ separately. Using ideas from multi-armed bandit algorithms, our algorithm only trains a single GAN at every step, which saves resources. Our experiments indicate that, in addition to saving resources, this multi-armed bandit algorithm can falsify requirements with fewer number of executions on the system under test when compared to (i) an algorithm training a single GAN for the complete conjunctive requirement and (ii) an algorithm always training $n$ GANs at each step.
翻译:我们考虑了以信号时间逻辑(STL) 表达的网络物理系统安全要求伪造问题。 这个问题可以通过STL 强力功能( STL) 变成优化问题。 在本文中, 我们的重点是用多种要求来伪造系统。 我们建议用在线对抗网络( GANs) 作为测试生成器来解决这种组合要求。 我们的主要贡献是一种算法,它通过对每项要求分别使用GAN $\varphi_ i 美元来伪造连接要求 $\ varphi_ land\ cdots\ land\ ddophi_ n$。 我们的算法只对每个步骤都进行单项GAN 培训, 节省资源。 我们的实验表明,除了节省资源外, 这种多条式的组合算法还可以在测试中的系统上以较少的处决次数来伪造要求( i) 算法培训单一的GAN, 并且(ii) 算法总是每一步培训$GANs。