Graph transformation formalisms have proven to be suitable tools for the modelling of chemical reactions. They are well established in theoretical studies and increasingly also in practical applications in chemistry. The latter is made feasible via the development of programming frameworks which makes the formalisms executable. The application of such frameworks to large networks of chemical reactions, however, poses unique computational challenges. One such characteristic is the inherent combinatorial nature of the graphs involved. The graphs consist of many connected components, representing individual molecules. While the existing methods for implementing graph transformations can be applied to such graphs, the combinatorics of constructing graph matches quickly becomes a computational bottleneck as the size of the chemical reaction network grows. In this contribution, we develop a new method of enumerating graph transformation rule applications, designed to improve performance in these scenarios. The method is based on constructing graph matches component-wise, in an iterative fashion, allowing redundant applications to be detected early and pruned. We further extend the algorithm with an efficient heuristic, based on local symmetries of the graphs, which allow us to detect and discard isomorphic applications early. Finally, we conduct chemical network generation experiments on real-life as well as synthetic data and compare against state-of-the-art in the field.
翻译:图表形式化已证明是模拟化学反应的合适工具。它们已经在理论研究中得到了很好的确立,在化学的实际应用中也日益得到越来越多的实践应用。后者通过开发程序化框架而成为可行,使形式化可以执行。然而,将这种框架应用于大型化学反应网络带来了独特的计算挑战。这种特征之一是所涉图图的内在组合性质。图表由许多相互关联的组成部分组成,代表个别分子。虽然现有的图变方法可以适用于这些图表,但随着化学反应网络规模的扩大,构造图形匹配的组合法会很快成为计算性的瓶颈。在此贡献中,我们开发了一种新的图表变换规则应用的计算方法,目的是改进这些情景中的性能。这种方法的基础是以迭代方式构造图形相配,从而能够及早检测和调整冗余的应用程序。我们根据图表的本地配对法,进一步扩展了高效的图变异算法,从而使我们能够在化学反应网络的早期检测和丢弃物,并对照合成网络的生成数据进行早期实验。最后,我们从合成生命领域对数据进行实地和合成数据进行实地的对比。