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.
翻译:在多智能体环境中表达攻防树,有助于研究安全场景的新维度,即智能体数量及其任务分配如何影响敌对联盟执行策略的性能(如攻击时间)。因此,智能体行为的优化调度(一个非平凡问题)至关重要。我们讨论了相关注意事项,并提出了一种综合此类分配的新算法,该算法以最小化攻击时间为目标,并在给定攻防树中使用最少数量的智能体。我们还针对同一问题探索了另一种基于重写逻辑的方法,从一个简单优雅的声明式模型入手,其正确性(在调度最优性方面)不言自明。随后,受专用算法设计的启发,我们对这一规范进行精炼,构建了一个高效系统,可作为研究攻防树各层面特性的实验平台。我们在不同基准测试上对这两种方法进行了比较。