Expressing attack-defence trees in a multi-agent setting allows for studying a new aspect of security scenarios, namely how the number of agents and their task assignment impact the performance, e.g. attack time, of strategies executed by opposing coalitions. Optimal scheduling of agents' actions, a non-trivial problem, is thus vital. We discuss associated caveats and propose an algorithm that synthesises such an assignment, targeting minimal attack time and using the minimal number of agents for a given attack-defence tree. We also investigate an alternative approach for the same problem using Rewriting Logic, starting with a simple and elegant declarative model, whose correctness (in terms of schedule's optimality) is self-evident. We then refine this specification, inspired by the design of our specialised algorithm, to obtain an efficient system that can be used as a playground to explore various aspects of attack-defence trees. We compare the two approaches on different benchmarks.
翻译:在多智能体环境下对攻击-防御树进行表达,使我们能够研究安全场景的一个新维度,即智能体数量及其任务分配如何影响对抗联盟执行策略的效能(如攻击时间)。智能体动作的最优调度是一个非平凡问题,因此至关重要。本文讨论了相关注意事项,并提出了一种算法,该算法能够综合生成此类任务分配方案,在给定攻击-防御树中以最小攻击时间为目标并使用最少数量的智能体。我们还研究了使用重写逻辑解决同一问题的替代方法:首先构建一个简洁优雅的声明式模型,其正确性(就调度最优性而言)不言自明。随后受专用算法设计的启发,对该规范进行精化,从而获得一个可作为实验平台探索攻击-防御树多方面特性的高效系统。我们在不同基准测试上对这两种方法进行了比较。