{"title":"解决图-子图同构问题的递归-并行算法","authors":"V. V. Vasilchikov","doi":"10.3103/S0146411623070155","DOIUrl":null,"url":null,"abstract":"<p>The paper proposes a parallel algorithm for solving the graph-subgraph isomorphism problem and makes an experimental study of its efficiency. The problem is one of the most well-known NP-complete problems. Its solution may be required when solving many practical problems associated with the study of complex structures. We solve the problem in a formulation that requires finding all the existing isomorphic substitutions or proving their absence. Due to the complexity of the problem, it is natural to want to speed up its solution by parallelizing the algorithm. We use the RPM_ParLib library, developed by the author, as the main tool to program the algorithm. This library allows us to develop effective applications for parallel computing on a local network under the control of the runtime environment .NET Framework. Due to this library, the applications have the ability to generate parallel branches of computation directly during program execution and dynamically redistribute work between computing modules. Any language with support of the .NET Framework can be used as a programming language in conjunction with this library. For the numerical experiment, an open database from the Internet was used, which was specially developed to study algorithms for searching for isomorphic substitutions. The author has also developed a special application in C# for generating additional sets of initial data with the specified characteristics. The aim of the experiment is to study the speedup achieved due to the recursively parallel organization of computations. This paper provides a detailed description of the proposed algorithm and the results obtained during the experiment.</p>","PeriodicalId":46238,"journal":{"name":"AUTOMATIC CONTROL AND COMPUTER SCIENCES","volume":"57 7","pages":"672 - 682"},"PeriodicalIF":0.6000,"publicationDate":"2024-02-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Recursive-Parallel Algorithm for Solving the Graph-Subgraph Isomorphism Problem\",\"authors\":\"V. V. Vasilchikov\",\"doi\":\"10.3103/S0146411623070155\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>The paper proposes a parallel algorithm for solving the graph-subgraph isomorphism problem and makes an experimental study of its efficiency. The problem is one of the most well-known NP-complete problems. Its solution may be required when solving many practical problems associated with the study of complex structures. We solve the problem in a formulation that requires finding all the existing isomorphic substitutions or proving their absence. Due to the complexity of the problem, it is natural to want to speed up its solution by parallelizing the algorithm. We use the RPM_ParLib library, developed by the author, as the main tool to program the algorithm. This library allows us to develop effective applications for parallel computing on a local network under the control of the runtime environment .NET Framework. Due to this library, the applications have the ability to generate parallel branches of computation directly during program execution and dynamically redistribute work between computing modules. Any language with support of the .NET Framework can be used as a programming language in conjunction with this library. For the numerical experiment, an open database from the Internet was used, which was specially developed to study algorithms for searching for isomorphic substitutions. The author has also developed a special application in C# for generating additional sets of initial data with the specified characteristics. The aim of the experiment is to study the speedup achieved due to the recursively parallel organization of computations. This paper provides a detailed description of the proposed algorithm and the results obtained during the experiment.</p>\",\"PeriodicalId\":46238,\"journal\":{\"name\":\"AUTOMATIC CONTROL AND COMPUTER SCIENCES\",\"volume\":\"57 7\",\"pages\":\"672 - 682\"},\"PeriodicalIF\":0.6000,\"publicationDate\":\"2024-02-27\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"AUTOMATIC CONTROL AND COMPUTER SCIENCES\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://link.springer.com/article/10.3103/S0146411623070155\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q4\",\"JCRName\":\"AUTOMATION & CONTROL SYSTEMS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"AUTOMATIC CONTROL AND COMPUTER SCIENCES","FirstCategoryId":"1085","ListUrlMain":"https://link.springer.com/article/10.3103/S0146411623070155","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"AUTOMATION & CONTROL SYSTEMS","Score":null,"Total":0}
Recursive-Parallel Algorithm for Solving the Graph-Subgraph Isomorphism Problem
The paper proposes a parallel algorithm for solving the graph-subgraph isomorphism problem and makes an experimental study of its efficiency. The problem is one of the most well-known NP-complete problems. Its solution may be required when solving many practical problems associated with the study of complex structures. We solve the problem in a formulation that requires finding all the existing isomorphic substitutions or proving their absence. Due to the complexity of the problem, it is natural to want to speed up its solution by parallelizing the algorithm. We use the RPM_ParLib library, developed by the author, as the main tool to program the algorithm. This library allows us to develop effective applications for parallel computing on a local network under the control of the runtime environment .NET Framework. Due to this library, the applications have the ability to generate parallel branches of computation directly during program execution and dynamically redistribute work between computing modules. Any language with support of the .NET Framework can be used as a programming language in conjunction with this library. For the numerical experiment, an open database from the Internet was used, which was specially developed to study algorithms for searching for isomorphic substitutions. The author has also developed a special application in C# for generating additional sets of initial data with the specified characteristics. The aim of the experiment is to study the speedup achieved due to the recursively parallel organization of computations. This paper provides a detailed description of the proposed algorithm and the results obtained during the experiment.
期刊介绍:
Automatic Control and Computer Sciences is a peer reviewed journal that publishes articles on• Control systems, cyber-physical system, real-time systems, robotics, smart sensors, embedded intelligence • Network information technologies, information security, statistical methods of data processing, distributed artificial intelligence, complex systems modeling, knowledge representation, processing and management • Signal and image processing, machine learning, machine perception, computer vision