LAPORAN
PRAKTIKUM
KECERDASAN
BUATAN
MODUL 1
Oleh :
TRI WIJAYANTO
115410126 /
TI
LABORATORIUM TERPADU
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN
KOMPUTER AKAKOM YOGYAKARATA
2012
PEMBAHASAN
MODUL 1
PRAKTIK 1
PREDICATES à Mendeklarasikan aturan
Pada solution predicates terdapat 7 (Tujuh) Variabel
dan beberapa tipe data yaitu; putra dengan
tipe data (STRING, STRING),
saudara_perempuan dengan tipe data (STRING,STRING),
saudara_laki dengan tipe data (STRING,STRING),
menikah dengan tipe data (STRING,
STRING), , ayah l dengan tipe data (STRING ayah, STRING putra) dan kakek dengan tipe data (STRING kakek, STRING cucu). Sedangkan nondeterm
berfungsi untuk memberi tahu compiler bahwa predikat tersebut mempunyai lebih
dari satu kemungkinan jawaban (non-deterministik).
putra (STRING,
STRING) à variable putra
yang bertipe String
saudara_perempuan (STRING, STRING) à variable
Saudara_perempuan yang bertipe String
saudara_laki
(STRING, STRING) à variable
Saudara_laki yang bertipe String
menikah (STRING,
STRING) à variable menikah
bertipe string
ayah (STRING ayah, STRING putra) à variable ayah yang
bertipe string dan memiliki variable ganda/ turunan yaitu ayah dan putra
kakek (STRING kakek, STRING cucu) à variable kakek yang
bertipe string dan memiliki variable ganda/ turunan yaitu kakek dan cucu
nondeterm ipar_perempuan (STRING, STRING) à keyword nondeterm
berfungsi untuk memberitahukan ke compiler Visual prolog bahwa predikat
tersebut memiliki lebih dari satu kemungkinan jawaban.
CLAUSES à merupakan sebuah aturan yang berlaku di sebuah script program.
putra
("Ikhsan", "Bentang").
à Pendeklarasian
variabel ini bermakna bahwa ikhsan adalah putra dari bentang.
saudara_perempuan
("Dini", "Dina").
à Pendeklarasian
variabel ini bermakna bahwa Dini saudara perempuan Dina.
saudara_laki
("Adi", "Lintang").
à Pendeklarasian
variabel ini bermakna bahwa Adi saudara laki-laki Lintang
menikah
("Ikhsan", "Dini").
à Pendeklarasian
variabel ini bermakna bahwa ikhsan menikah dengan dini.
menikah
("Lintang", "Surga").
à Pendeklarasian
variabel ini bermakna bahwa lintang menikah dengan surga.
ayah
(A, B) :-putra (B,A). à Ini
merupakan data yang digunakan untuk mendeklarasikan atau memperumpakan
keterkaitan antara data (orang) yang satu dengan yang lainnya sehingga data
tersebut mengarahkan kita kepada rule yang sesuai dengan GOAL yang kita cari.
Dapat dibaca juga si A adalah ayah dari si B jika dan hanya jika si B adalah
putra dari si A.
kakek
(A, B) :-ayah (A,C), ayah (C,B). à Dapat dibaca si A adalah kakek dari
si B jika dan hanya jika si A adalah ayah dari si C dan jika dan hanya jika si
C adalah ayah dari si B.
ipar_perempuan (A,B) :-menikah (A,C), saudara_perempuan
(C,B). à Jika A
ipar_perempuan B maka A menikah dengan C
ipar_perempuan (A,B) :-saudara_laki (A,C), menikah (C,B). à Jika A
ipar_perempuan B maka A saudara_laki B
è
Script diatas merupakan script pernyataan dari variabel-variabel
yang ada, yaitu ; putra,
saudara_perempuan, saudara_laki,menikah, ayah , kakek dan ipar_perempuan. Dengan tipe data yang
telah ditentukan pada solution predicates.
GOAL
ipar_perempuan ("Ikhsan",X). à ipar perempuan dari Ikhsan yaitu Dina, karena Ikshan menikah dengan Dini, sedangkan Dini saudara
permpuan Dina.
variable x digunakan
untuk perumpaan variable yang dicari.
HASIL à <ctrl> G
è
Prolog
menjawab bahwa X = Dina. Dalam pendeklarasian clauses disebutkan bahwa Ikhsan
menikah dengan dini, sedang saudara perempuan dini adalah dina sehingga ipar
perempuan ikhsan adalah dina.
PRAKTIK 2
PREDICATES à Pada solution predicates
terdapat 7 (Tujuh) Variabel dan beberapa tipe data yaitu; putra dengan tipe data (STRING, STRING), saudara_perempuan dengan
tipe data (STRING,STRING), saudara_laki dengan
tipe data (STRING,STRING), menikah dengan
tipe data (STRING, STRING), , ayah l dengan
tipe data (STRING ayah, STRING
putra) dan kakek dengan tipe data (STRING kakek, STRING cucu). Sedangkan nondeterm
berfungsi untuk memberi tahu compiler bahwa predikat tersebut mempunyai lebih
dari satu kemungkinan jawaban (non-deterministik).
putra (STRING,
STRING)
à variable putra
yang bertipe String
saudara_perempuan (STRING, STRING) à variable
Saudara_perempuan yang bertipe String
saudara_laki
(STRING, STRING)
à variable
Saudara_laki yang bertipe String
menikah (STRING,
STRING)
à variable menikah
bertipe string
ayah (STRING ayah, STRING putra) à variable ayah
yang bertipe string dan memiliki variable ganda/ turunan yaitu ayah dan putra
kakek
(STRING kakek, STRING cucu) à variable kakek
yang bertipe string dan memiliki variable ganda/ turunan yaitu kakek dan cucu
nondeterm
ipar_perempuan (STRING, STRING)
à Nondeterm berfungsi untuk memberi tahu compiler bahwa predikat
tersebut mempunyai lebih dari satu kemungkinan jawaban (non-deterministik).
KETERANGAN : String merupakan
barisan karakter yang diimplementasikan sebagai suatu pointer ke byte 0 –
terakhir array.
CLAUSES à Merupakan sebuah aturan yang berlaku di sebuah script program. Dan merupakan tempat dimana semua data yang
berupa fakta yang ada kita deklarasikan.
putra
("Ikhsan", "Bentang"). à Pendeklarasian
variabel ini bermakna bahwa ikhsan adalah putra dari bentang.
saudara_perempuan
("Dini", "Dina"). à Pendeklarasian
variabel ini bermakna bahwa Dini saudara perempuan Dina.
saudara_laki
("Adi", "Lintang"). à Pendeklarasian
variabel ini bermakna bahwa Adi saudara laki-laki Lintang.
menikah
("Ikhsan", "Dini"). à Pendeklarasian
variabel ini bermakna bahwa ikhsan menikah dengan dini.
menikah
("Lintang", "Surga"). à Pendeklarasian
variabel ini bermakna bahwa lintang menikah dengan surga.
kakek
(A, B) :-ayah (A,C), ayah (C,B). à Jika A
kakek B maka A ayah C dan B ayah C
ipar_perempuan (A,B) :-menikah (A,C),
saudara_perempuan (C,B).
à Jika A ipar_perempuan B maka A menikah dengan C
ipar_perempuan
(A,B) :-saudara_laki (A,C), menikah (C,B). à Jika A
ipar_perempuan B maka A saudara_laki B
è
Script diatas merupakan script pernyataan dari variabel-variabel
yang ada, yaitu ; putra,
saudara_perempuan, saudara_laki,menikah, ayah , kakek dan ipar_perempuan. Dengan tipe data yang
telah ditentukan pada solution predicates.
GOAL à Pada goal, perintah write
berguna untuk menampilkan tulisan yang terdapat didalam kurung dan diantara (“
“).ipar_perempuan merupakan sebuah variabel yang dibuat pada solution
predicates, Adi dan (Y) merupakan
data yang kita masukkan didalam variabel ipar_perempuan.
ipar_perempuan ("Adi",
Y). à Solusi yang
dicari adalah ipar perempuan dari Adi, dengan variable pengganti X, maka
solusi X adalah surga.
HASIL à <ctrl> G
è Prolog
menjawab bahwa Y = Surga yang berarti bahwa ipar perempuan Adi adalah surga.
Hal itu karena dalam pendeklarasian clauses disebutkan bahwa Adi menikah dengan
Lintang, sedangkan Lintang adalahg saudara perempuan dari Surga sehingga Surga
adalah ipar perempuan dari Adi.
TUGAS MODUL 1
1. Sisipkan
kode berikut dibawah kata Clauses:
putra ("Bentang",
"Genta").
Berikan
Goal sebagai berikut :
Kakek (“Genta”,Cucu).
Hasil
2. Apa
tombol akselerator untuk perintah-perintah berikut : copy, cuy, paste, redo,
undo, new, open, seve, exit dan test goal.
v copy menggunakan kombinasi tombol ctrl + C
v
paste menggunakan kombinasi ctrl + V
v
delete
menggunakan tombol delete
v
save menggunakan tombol F2
v
new menggunakan tombol F7
v
open menggunakan tombol F8
3. Pada
section Predicates ubah kalimat :
Nondeterm ipar_perempuan (STRING,STRING)
Menjadi
ipar_perempuan (STRING,STRING)
Goal
ipar_perempuan(“Ikhsan”,X).
Hasil
LISTING
ü Terlampir
0 komentar:
Posting Komentar