Tuesday 30 April 2013

Program Silsilah Keluarga Menggunakan Prolog

Programming in Logic atau yang sering disingkat prolog merupakan bahasa pemrograman untuk komputasi simbolik, bukan numerik. Prolog cocok untuk mengatasi problem yang melibatkan objek dan hubungan antara objek-objek tersebut (Bratko, 1991). Bagi yang sudah atau sedang mengambil mata kuliah kecerdasan buatan (Artificial Intelegence) pasti tahu dengan bahasa yang satu ini.
Perbedaan operator logika dengan Prolog:
Operator Logika Prolog
^ ,
? ;
? :-
¬ not
Di sini saya menggunakan prolog interpreter, SWI prolog (free), untuk mendapatkannya dapat didownload di http://www.swi-prolog.org/
Contoh aplikasi prolog yang umum adalah pada kasus silsilah keluarga. Nah, misalnya sebuah keluarga memiliki silsilah sebagai berikut.


Pada bahasa prolog kita dapat menuliskan fakta sebagai berikut:
married(yuda,nina).
Artinya Yuda menikah dengan Nina.
child(rico,yuda).
Artinya Rico adalah anak dari Yuda.
male(yuda).
Artinya Yuda adalah laki-laki.
Demikian juga dengan aturan, kita bisa menuliskannya sebagai berikut:
parent(A,B,C) :-child(A,B),married(B,C).
artinya jika A adalah anak B dan B menikah dengan C maka orang tua dari A adalah B dan C.
download silsilah-keluarga-dalam-prolog.pdf
download kode prolog silsilah.txt
Copy silsilah.txt dalam notepad++ kemudian simpan dengan nama silsilah.pl lalu simpan dalam direktori prolog (biasanya di My Document\Prolog)
Semoga bermanfaat.

1 comment: