![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image001.png)
KECERDASAN BUATAN
PERTEMUAN 1
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image003.jpg)
Disusun oleh :
Nur Muhammad AlUstadi
135410207
Teknik Informatika
Sekolah Tinggi Manajemen Informatika dan Komputer
AKAKOM
Yogyakarta
TA
2014
PERTEMUAN
KE 1
LINGKUNGAN VISUAL PROLOG
(VISUAL PROLOG ENVIRONMET, VPE)
1.
TUJUAN
Supaya
mahasiswa mengetahui cara memulai program VPE, serta dapat membuat program dari
jendela VPE dan dapat menjalankan serta menguji program yang telah dibuat dalam
jendela VPE.
2.
DASAR TEORI
ü Visual
Prolog Environment (VPE)
Didesain supaya seorang
programmer dapat dengan mudah, nyaman dan cepat dalam membangun, menguji dan
memodifikasi suatu aplikasi atau program yang ditulis dalam visual prolog.
ü Menjalankan
VPE
Program instalasi akan
membuat sebuah program group yang didalamnya tertdapat icon yang digunakan
untuk menjalankan VPE, yaitu dengan cara mengeklik icon tersebut.
ü Membuka
jendela editor
Untuk menciptakan jendela
editor yang baru, dapat menggunakan menu perintah file | new.
ü Menjalankan
dan menguji suatu program
Untuk mengecek bahwa sistem
diset dengan baik, praktikan dapat mencoba mengetikkan teks berikut pada
jendela editor.
3.
PEMBAHASAN
Dalam
pembahasan kali ini saya akan belajar membuat program dalam jendela visual
prolog. Dimana contoh programnya seperti dibawah ini.
PREDICATES
putra
(STRING, STRING)
saudara_perempuan
(STRING, STRING)
saudara_laki
(STRING, STRING)
menikah
(STRING, STRING)
ayah
(STRING ayah, STRING putra)
kakek
(STRING kakek, STRING cucu)
nondeterm
ipar_perempuan (STRING, STRING)
CLAUSES
putra
("Ikhsan", "Bentang").
saudara_perempuan
("Dini", "Dina").
saudara_laki
("Adi", "Lintang").
menikah
("Ikhsan", "Dini").
menikah
("Lintang", "Surga").
ayah
(A,B) :-putra (B,A).
kakek
(A,B) :-ayah (A,C), ayah (C,B).
ipar_perempuan
(A,B) :-menikah (A,C), saudara_perempuan (C,B).
ipar_perempuan
(A,B) :-saudara_laki (A,C), menikah (C,B).
GOAL
ipar_perempuan ("Ikhsan",X).
PREDICATES
diatas merupakan sebuah
bagian dari program yang berfungsi untuk mendeklarasikan
variabel-variabel yang ada. Sedangkan “nondeterm” disana merupakan pernyataan
yang menyatakan bahwa predikat tersebut mempunyai lebih dari satu kemungkinan
jawaban.
Putra, saudar_perempuan, Saudara_laki, menikah, ayah, kakek
merupakan variabel yang bertipe data STRING.
CLAUSES
diatas merupakan sebuah bagian dari klausa yaitu berupa
bagian fakta dimana fakta – fakta
tersebut memiliki relasi, dalam program ini yang bertindak sebagai relasi
yaitu: putra,saudara_perempuan, saudara_laki,dan menikah. Sedangkan kata
berikutnya yang berada dalam kurung dan ditandai dengan dua tanda petik itu
merupakan variabel-variabel yang bertipe string. Dengan ketentuan
variabel-variabel tersebut penulisanya harus dimulai dengan huruf capital dan
diakhiri dengan tanfda titik.
GOAL
merupakan sebuah
syarat agar suatu program dapat dieksekusi,
ipar_perempuan ("Ikhsan",X).
Membacanya
siapa ipar perempuan Ikhsan?
ipar_perempuan (A,B) :-menikah (A,C), saudara_perempuan
(C,B).
Dalam
program tersebut dapat dijelaskan dengan kita menjabarkan masing-masing
program. Kita awali terlebih dahulu dari ipar_perempuan(A,B):-menikah(A,C),saudara_perempuan(C,B).
yaitu dimana ipar_perempuan (A,B) disini objek A dapat kita deklarasikan sebagai ikhsan sedengkan symbol B
belom ada. Dimana menikah(A,C) yaitu A
(ikhsan) menikah dengan C dimana symbol C sebagai(dini),
saudara_perempuan(C,B) maksudnya saudara perempuan dari dini yaitu B. Dimana dari hasil penjelasan program
tersebut kita bisa mengetahui siapa ipar perempuan dari ikhsan yaitu dina karena
disini ikhsan menikah dengan dini, Jadi Outputnya Adalah Dina.
Output
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image004.png)
ipar_perempuan ("Adi",Y).
Siapa ipar
perempuan andi
ipar_perempuan
(A,B) :-saudara_laki (A,C), menikah (C,B).
Dalam
program tersebut dapat dijelaskan dengan kita menjabarkan masing-masing
program. Kita awali terlebih dahulu dari ipar_perempuan(A,B):-saudara_laki(A,C),menikah(C,B). yaitu dimana
ipar_perempuan (A,B) disini objek A
dapat kita deklarasikan sebagai Andi
sedengkan symbol B belom ada. Dimana
A memilik saudara_laki (A,C) yaitu C
(Lintang), menikah (C,B) maksudnya C
minikah Dengan B (Syurga). Jadi ipar
perempuan Andi Adalah Syurga. Outputnya Adalah Syurga.
4.
Tugas
PREDICATES
ibu(STRING,STRING)
nondeterm
anak(STRING,STRING)
saudara_perempuan(STRING,STRING)
saudara_laki(STRING,STRING)
menikah(STRING,STRING)
nondeterm ayah(STRING
ayah,STRING putra)
nondeterm kakek(STRING
kakek,STRING cucu)
tante(STRING,STRING)
nondeterm
cucu(STRING,STRING)
CLAUSES
anak("Andi","Asep").
anak("Lukman","Asep").
anak("Rudi","Andi").
anak("Heru","Rudi").
anak("Aris","Andi").
anak("Desi","Lukman").
anak("Sinta","Ratna").
anak("Ratna","Lukman").
saudara_perempuan("Desi","Ratna").
saudara_laki("Rudi","Aris").
menikah("Asep","Nina").
menikah("Andi","Rina").
menikah("Lukman","Siti").
menikah("Rudi","Nia").
menikah("Ratna","Galih").
ibu("Ratna","Sinta").
ayah(A,B):-anak(B,A).
kakek(A,B):-ayah(A,C),
ayah(C,B).
cucu(A,B):-anak(A,C),
anak(C,B).
tante(A,B):-saudara_perempuan(A,C),
ibu(C,B).
GOAL
tante(Tante_Sinta
,"Sinta").
Hasil :
1. Tante Sinta :
Goal
tante(Tante_Sinta ,"Sinta").
Output
:
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image005.png)
2. Siapa saja yang berstatus kakek?
Goal
Kakek(X,Y).
Output
:
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image006.png)
3. Siapa cucu Andi dan Rina?
Goal
cucu(X,"Andi").
Output
:
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image007.png)
4. Siapa anak Luman dan Siti?
Goal
anak(X,"Lukman").
Output
:
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image008.png)
5. Siapa cucu Asep dan Nina?
Goal
cucu(X,"Asep").
Output :
![](file:///C:\Users\tata\AppData\Local\Temp\msohtmlclip1\01\clip_image009.png)
5.
KESIMPULAN
Dengan kita belajar visual prolog kita diwajibkan untuk
bisa belajar logika pada suatu program. serta Jika melakukan pemanggilan klausa
atau matching, program ini melacaknya dari atas ke bawah. Jika prolog menemukan
bandingan atau klausa yang match, prolog mencatat tempat ditemukannya klausa
yang match. Bagian clauses merupakan inti program ini, dapat juga tanpa clauses
tetapi tentunya goal hanya terdiri dari predikat standar. Jika ada bagian
clauses harus ada bagian predicates atau sebaliknya. Urutan dalam prosedur
harus benar untuk menjaga prolog dapat mencari jawaban dengan benar dan juga
menentukan kecepatan eksekusi program.
LISTING
(terlampir)
à
Tidak ada komentar:
Posting Komentar