title: Finding heuristic rules for solving the Boolean satisfiability problem using machine learning methods
metadata.name: dc.contributor.advisor
metadata.value: Сироткин Александр Владимирович
metadata.lang: ru_RU
metadata.name: dc.contributor.advisor
metadata.value: Sirotkin Aleksandr Vladimirovic
metadata.lang: en_GB
metadata.name: dc.contributor.author
metadata.value: Ангени Георгий Эдуардович
metadata.lang: ru_RU
metadata.name: dc.contributor.author
metadata.value: Angeni Georgij Eduardovic
metadata.lang: en_GB
metadata.name: dc.contributor.editor
metadata.value: Авдюшенко Александр Юрьевич
metadata.lang: ru_RU
metadata.name: dc.contributor.editor
metadata.value: Avdusenko Aleksandr Urevic
metadata.lang: en_GB
metadata.name: dc.date.accessioned
metadata.value: 2023-07-26T12:03:01Z
metadata.lang: -
metadata.name: dc.date.available
metadata.value: 2023-07-26T12:03:01Z
metadata.lang: -
metadata.name: dc.date.issued
metadata.value: 2023
metadata.name: dc.identifier.other
metadata.value: 076590
metadata.lang: en_GB
metadata.name: dc.identifier.uri
metadata.value: http://hdl.handle.net/11701/42140
metadata.lang: -
metadata.name: dc.description.abstract
metadata.value: Работа посвящена повышению производительности SAT-решателей, в частности, улучшению эвристики ветвления, с помощью методов машинного обучения. Современные SAT-решатели используют детерминированные и легко интерпретируемые эвристики, такие как VSIDS, тогда как одним из многообещающих подходов является использование глубокой нейронной сети для этой задачи. Целью этого исследования является изучение реализации популярного подхода к обучению с глубоким подкреплением, называемого Graph-Q-SAT, и улучшение его производительности путем внесения нескольких изменений в первоначальную реализацию. В частности, основная цель состоит в сокращении количества ветвлений и времени, необходимого для решения задачи SAT, что позволит более эффективно внедрять SAT-решатели в решении промышленных задач. Это достигается путем встраивания нейронной сети в код решателя MiniSat с использованием C++ PyTorch API, чего не было сделано в первоначальном исследовании. Показано, что наша реализация требует в среднем почти в 4 раза меньше времени для решения задач SAT из распределения Random-3-SAT и по скорости превосходит Kissat, который является более продвинутым SAT-решателем, чем MiniSat. Кроме того, проводятся дополнительные эксперименты, которые показывают, в какой степени наша модификация улучшает производительность SAT-решателя.
metadata.lang: ru_RU
metadata.name: dc.description.abstract
metadata.value: The 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.
metadata.lang: en_GB
metadata.name: dc.language.iso
metadata.value: ru
metadata.name: dc.subject
metadata.value: Булева выполнимость
metadata.lang: ru_RU
metadata.name: dc.subject
metadata.value: нейронные сети
metadata.lang: ru_RU
metadata.name: dc.subject
metadata.value: обучение с подкреплением
metadata.lang: ru_RU
metadata.name: dc.subject
metadata.value: вычислительное программное обеспечение
metadata.lang: ru_RU
metadata.name: dc.subject
metadata.value: Boolean satisfiability
metadata.lang: en_GB
metadata.name: dc.subject
metadata.value: neural networks
metadata.lang: en_GB
metadata.name: dc.subject
metadata.value: reinforcement learning
metadata.lang: en_GB
metadata.name: dc.subject
metadata.value: computational software
metadata.lang: en_GB
metadata.name: dc.title
metadata.value: Finding heuristic rules for solving the Boolean satisfiability problem using machine learning methods
metadata.lang: en_GB
metadata.name: dc.title.alternative
metadata.value: Поиск эвристических правил для решения задачи булевой выполнимости методами машинного обучения
metadata.lang: ru_RU
resources.filename: Angeni_Graduation_Project.pdf
resources.url: https://dspace.spbu.ru/bitstream/11701/42140/2/Angeni_Graduation_Project.pdf
resources.format: Adobe PDF
resources.description: Article
resources.size: 893,54 kB
resources.filename: reviewSV_Otzyvy_naucnogo_rukovoditela_Angeni_podpisannyj.pdf
resources.url: https://dspace.spbu.ru/bitstream/11701/42140/3/reviewSV_Otzyvy_naucnogo_rukovoditela_Angeni_podpisannyj.pdf
resources.format: Adobe PDF
resources.description: ReviewSV
resources.size: 125,45 kB
resources.filename: reviewSV_st076590_Angeni_Georgij_Eduardovic_(supervisor)(Ru).txt
resources.url: https://dspace.spbu.ru/bitstream/11701/42140/4/reviewSV_st076590_Angeni_Georgij_Eduardovic_%28supervisor%29%28Ru%29.txt
resources.format: Text
resources.description: ReviewSV
resources.size: 10,51 kB