Пожалуйста, используйте этот идентификатор, чтобы цитировать или ссылаться на этот ресурс: http://hdl.handle.net/11701/42140
Полная запись метаданных
Поле DCЗначениеЯзык
dc.contributor.advisorСироткин Александр Владимировичru_RU
dc.contributor.advisorSirotkin Aleksandr Vladimirovicen_GB
dc.contributor.authorАнгени Георгий Эдуардовичru_RU
dc.contributor.authorAngeni Georgij Eduardovicen_GB
dc.contributor.editorАвдюшенко Александр Юрьевичru_RU
dc.contributor.editorAvdusenko Aleksandr Urevicen_GB
dc.date.accessioned2023-07-26T12:03:01Z-
dc.date.available2023-07-26T12:03:01Z-
dc.date.issued2023
dc.identifier.other076590en_GB
dc.identifier.urihttp://hdl.handle.net/11701/42140-
dc.description.abstractРабота посвящена повышению производительности SAT-решателей, в частности, улучшению эвристики ветвления, с помощью методов машинного обучения. Современные SAT-решатели используют детерминированные и легко интерпретируемые эвристики, такие как VSIDS, тогда как одним из многообещающих подходов является использование глубокой нейронной сети для этой задачи. Целью этого исследования является изучение реализации популярного подхода к обучению с глубоким подкреплением, называемого Graph-Q-SAT, и улучшение его производительности путем внесения нескольких изменений в первоначальную реализацию. В частности, основная цель состоит в сокращении количества ветвлений и времени, необходимого для решения задачи SAT, что позволит более эффективно внедрять SAT-решатели в решении промышленных задач. Это достигается путем встраивания нейронной сети в код решателя MiniSat с использованием C++ PyTorch API, чего не было сделано в первоначальном исследовании. Показано, что наша реализация требует в среднем почти в 4 раза меньше времени для решения задач SAT из распределения Random-3-SAT и по скорости превосходит Kissat, который является более продвинутым SAT-решателем, чем MiniSat. Кроме того, проводятся дополнительные эксперименты, которые показывают, в какой степени наша модификация улучшает производительность SAT-решателя.ru_RU
dc.description.abstractThe present thesis is devoted to improving the performance of SAT solvers using machine learning methods, particularly, improving the branching heuristic. Current state-of-the-art SAT solvers use deterministic and easily interpretable heuristics, such as VSIDS, whereas one of the promising approaches is to use a deep neural network for this job. The aim of this research is to study the implementation of the popular deep reinforcement learning approach called Graph-Q-SAT and to improve its performance by making several changes to the original implementation. In particular, the main goal is to reduce the amount of branching decisions and the wall-clock time required to solve a SAT instance, which allows for more efficient implementation of SAT solvers in industrial-scale scenarios. It is achieved by embedding the neural network in the MiniSat solver code using the C++ PyTorch API, which was not done in the original research. It is shown that our implementation takes on average almost 4 times less to solve SAT instances from the Uniform Random-3-SAT distribution and outperforms Kissat, a solver more advanced than MiniSat. Furthermore, additional experiments are conducted which show the extent to which our modification improves the performance of the SAT solver.en_GB
dc.language.isoru
dc.subjectБулева выполнимостьru_RU
dc.subjectнейронные сетиru_RU
dc.subjectобучение с подкреплениемru_RU
dc.subjectвычислительное программное обеспечениеru_RU
dc.subjectBoolean satisfiabilityen_GB
dc.subjectneural networksen_GB
dc.subjectreinforcement learningen_GB
dc.subjectcomputational softwareen_GB
dc.titleFinding heuristic rules for solving the Boolean satisfiability problem using machine learning methodsen_GB
dc.title.alternativeПоиск эвристических правил для решения задачи булевой выполнимости методами машинного обученияru_RU
Располагается в коллекциях:BACHELOR STUDIES



Все ресурсы в архиве электронных ресурсов защищены авторским правом, все права сохранены.