SAT SOLVER MENGGUNAKAN ALGORITMA DAVIS-PUTNAM-LOGEMANN-LOVELAND
Abstract
Pada dasarnya kecerdasan buatan dibuat untuk menyelesaikan suatu masalah, dan salah satu contoh penerapan dari kecerdasan buatan untuk menyelesaikan suatu masalah adalah satisfiability problem. Satisfiability problem atau disingkat SAT problem adalah untuk menyelesaikan dan mencari solusi dari suatu formula logika proposional dengan hasil akhir paling tidak satu kombinasi yang bernilai true. Jika ada satu kombinasi yang bernilai true, maka formula tersebut disebut satisfiable, jika tidak ada satupun kombinasi yang menghasilkan nilai true, maka formula itu bernilai unsatisfiable
Akan mudah bagi manusia jika menyelesaikan satisfiability problem dengan literal dari logika proposional hanya sedikit, tapi jika literalnya ada banyak, maka akan susah diselesaikan menggunakan akal manusia. Oleh karena itu, untuk menyelesaikan satisfiability problem dibuatlah aplikasi satisfiability solver. Satisfiability solver adalah solusi untuk menyelesaikan SAT problem dan memberikan solusi kombinasi literal agar formula logika proposional yang diberikan bernilai paling tidak satu yang bernilai akhir true. Salah satu algoritma untuk aplikasi satisfiability solver adalah menggunakan algoritma Davis Putnam Logemann Loveland, dimana algoritma tersebut menyelesaikan SAT Problem dengan formula conjunctive normal form. Prosedurnya adalah mengeliminasi literal atau klausa yang berada di formula CNF dengan aturan-aturan yang sudah ditetapkan. Jika tidak ada sisa literal atau klausa maka formula tersebut satisfiable, tapi jika ada yang tersisa walau hanya satu maka formula tersebut adalah unsatisfiable.
Berdasarkan hasil pengujian dari sistem Sat Solver menggunakan Algoritma Davis-Putnam-Logemann-Loveland, pengguna dapat mengetahui apakah formula yang diberikan pada sistem satisfiable atau unsatisfiable, dan juga dapat membantu pengguna untuk mencari solusi yang dapat digunakan pada formula tersebut. Kedepannya sistem ini diharapkan dikembangkan agar formula tidak hanya CNF tapi normal form yang lain seperti if-else yang disederhanakan menjadi CNF.
Collections
- Informatics Engineering [2148]