laporan praktikum kecerdasan buatan
DESCRIPTION
Laporan praktikum lengkap (Visual Prolog)TRANSCRIPT
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 1/28
LAPORAN PRAKTIKUM
MATAKULIAH KECERDASAN BUATAN
DISUSUN
SEBAGAI SYARAT TELAH MENGIKUTI PRAKTIKUM
MATAKULIAH KECERDASAN BUATAN
Oleh :
NAMA : E D W A R D
NPM : 7 1 1 2 0 9 0 0 8 3
TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS ISLAM SUMATERA UTARA
2013
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 2/28
MODUL 1
LINGKUNGAN VISUAL PROLOG
(VISUAL PROLOG ENVIRONMENT, VPE )
PERNYATAAN TUGAS :
1. Sisipkan kode berikut dibawah kata Clauses :
Putra (" Bentang" , " Genta" ).
Berikan Goal sebagai berikut :
Kakek (“Genta”,Cucu).
BAHASA PROLOG
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 3/28
HASIL OUTPUT :
2. Apa tombol akselerator untuk perintah-perintah berikut : copy, cut, paste, redo, undo, new,
open, seve, exit dan test goal.
copy menggunakan kombinasi tombol ctrl + C
cut menggunakan kombinaasi tombol ctrl + X
paste menggunakan kombinasi ctrl + V
delete menggunakan tombol delete
save menggunakan tombol F2
new menggunakan tombol F7
open menggunakan tombol F8
test goal menggunakan kombinasi tombol ctrl + G
redo menggunakan kombinasi tombol alt + bksp
undo redo menggunakan kombinasi tombol alt + shift + bksp
3. Ganti goal tersebut dengan :
ipar_perempuan(" Adi" ,Y).
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 4/28
MODUL 2
DASAR – DASAR PROLOG
PERNYATAAN TUGAS :
1. Ubah bahasa prolog berikut menjadi bahasa natural :
a. Orang (dian) .
Dibaca menjadi : dian adalah orang.
b. Mobil (atoz) .
Dibaca menjadi : atoz adalah merek sebuah mobil.
c. Suka (dian, atoz) .
Dibaca menjadi : dian suka mobil atoz.
d. Dijual (atoz) .
Dibaca menjadi : dijual mobil merk atoz
e. Dapat_membeli (X,Y) :-
Dibaca menjadi : X dapat membeli Y
Orang (X),
Dibaca menjadi : X adalah orang.
Mobil (Y),
Dibaca menjadi : Y adalah mobil.
Suka(X,Y),Dibaca menjadi X suka Y
Dijual(Y).
Dibaca menjadi Y dijual.
f. Suka ( _ ,Apa).
Dibaca menjadi : Apa yang disukai.
2. Ubah bahasa natural berikut menjadi bahasa Prolog :
a. Ricky mempunyai hobi bermain catur.
Hobi (ricky, catur).
b. Embang orangnya pemalas.
Pemalas (embang) .
c. Yusida seorang vegetarian.
Vegetarian (yusida) .
d. Kusdiar pandai bermain gitar.
Pandai(kusdiar,gitar) .
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 5/28
e. Mobil yang berwarna merah itu milik sadek, bermerk BMW.
Mobil (sadek, merah) dan mobil(sadek, bmw) .
f. Awan seorang pemain piano, berasal dari pontianak bersuku jawa.
Pemain_piano(awan) dan pontianak(asal); jawa (suku) .
g. Seseorang dikatakan baik jika mempunyai sifat penyayang dan dermawan.
Baik (orang) :- sifat (penyayang,dermawan).
h. Seseorang dikatakan pintar jika salah satu dari Matematika atau Ipa atau IPS mendapat
nilai tinggi.
Pintar (orang) :- mendapat_nilai_tinggi (matematika);
Mendapat_nilai_tinggi (ipa);
Mendapat_nilai_tinggi (ips).
i. Setiap orang pasti mati.
Orang (setiap,mati) .
3. Diberikan fakta sebagai berikut :
anak (Jhon, James).
anak (James, Peter).
istri (Mary, Peter).
anak (Sue, Ann).
istri (Ann, James).
pria(Jhon).
pria (James).
pria (Peter).
wanita (Mary).
wanita(Sue).
wanita(Ann).
usia(Jhon, 10).
usia(Sue, 13).
Dari fakta di atas buatlah program dalam bahasa PROLOG dan Ujilah dengan rule-rule
sebagai berikut : a. cucu
b. ibu
c. adik
d. kakek
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 6/28
PENYELESAIAN :
a. Cucu
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 7/28
b. Ibu
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 8/28
c. Adik
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 9/28
d. Kakek
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 10/28
MODUL 3
PROGRAM VISUAL PROLOG
PERNYATAAN TUGAS :
Buatlah program Visual Prolog dari narasi berikut:
Pada Semester 6 di Teknik Informatika ada 5 mahasiswa yang mengambil mata
kuliah Kecerdasan Buatan (Irfan, Komeng, Dati, Fatima, dan Parmin); 5 mahasiswa
mengambil mata kuliah PBO (Ricky, Embang, Salmin, Vina, dan Sondang) dan 5 mahasiswa
lagi mengambil mata kuliah Sistem Operasi (Pamuji, Luki, Sadek, Yusida dan Eka). Setelah
ujian selesai masing-masing mendapat nilai (sesuai urutan nama dari pertama) : A, D, C, B,
C, E, A, D, B, C, D, E, B, A, dan A. Mahasiwa yang tidak lulus adalah mahasiswa yangnilainya di bawah C (D dan E tidak lulus). Kemudian buatlah goal untuk mencari :
a. Nama mahasiswa yang mengikut mata kuliah Intelejensi Buatan.
b. Nama mahasiwa yang tidak lulus.
c. Nama mahasiswa yang lulus.
d. Seluruh nama matakuliah yang diajarkan.
e. Seluruh nama mahasiswa yang ada.
PENYELESAIAN :
a. Nama mahasiswa yang mengikut mata kuliah Intelejensi Buatan.
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 11/28
HASIL OUTPUT :
b. Nama mahasiwa yang tidak lulus.
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 12/28
HASIL OUTPUT :
c. Nama mahasiswa yang lulus.
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 13/28
d. Seluruh nama matakuliah yang diajarkan.
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 14/28
e. Seluruh nama mahasiswa yang ada.
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 15/28
MODUL 4
UNIFIKASI DAN LACAKBALIK
(UNIFI CATION AND BACKTRACKING )
PERNYATAAN TUGAS :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 16/28
HASIL OUTPUT :
PENJELASAN PROGRAM :
Setelah program di jalankan, di awal program akan melakukan proses dari section
clauses, melacak data-data orang yang telah dideklarasikan pada section clauses, yang
dimana terdapat data yang terlibat dalam kasus pembunuhan tersebut.
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 17/28
Dari fakta yang ada, argument X merupakan argument Pembunuh. Dari argument
pembunuh terdapat beberapa pernyataan persyaratan dan program akan melakukan
unifikasi terhadap pernyataan tersebut.maka program akan mencari fakta orang yang
mengetahui pembunuh dalam kasus tersebut. Pernyataan pertama yang di dapat adalah
budi.
Selanjutnya program mencari pernyataan terbunuh, maka yang ditemukan faktanya
adalah siti. Dan kemudian program melakukan pencarian pada pernyataan dicurigai(X),
dari pernyataan tersebut dilakukan proses pencarian menggunakan unifikasi terhadap
pernyataan syarat-syarat tersebut. Kemudian program akan mencari senjata yang di pakai
untuk membunuh, dengan melakukan proses di variable terbunuh_dengan. Maka fakta
yang diperoleh ialah terbunuh_dengan(siti, pentungan).
Setelah itu program melakukan proses pencarian fakta benda yang cara kerjanya
seperti senjata, maka diperoleh cara_kerja_mirip(Benda, Senjata). Kemudian prolog
memanggil pernyataan tersebut untuk mengetahui benda yang cara kerjanya mirip
pentungan yang telah di eksekusi pada langkah sebelumnya. maka fakta yang didapat ialah
cara_kerja_mirip(kaki_palsu, pentungan). Dan setelah itu program akan melakukan prose
fakta dari variable kemungkinan_milik(X, Benda), milik (X, Benda). Dari pernyataan itu
maka program mencari fakta bahwa siapa pemilik kaki palsu, dan hasilnya milik(budi,
kaki_palsu). Jadi kaki_palsu itu miliknya Budi.
Kemudian program menjalankan proses pernyataan dari pembunuh karena masih
terdapat pernyataan yang belum dip roses, yaitu pada variable ternodai(Pembunuh, Zat).
Maka dijalankanlah proses ke dalam pernyataan tersebut, yang menyangkut nama/kata
budi, maka hasilnya didapat ternodai(budi, darah).
Selanjuntya program melakukan proses terakhir yaitu pada ternodai(Terbunuh, Zat).
Maka akan di dapat hasil ternodai(siti, darah). Dan kesimpulan dari pernyataan-pernyataandan fakta-fakta yang telah ada, maka siti memiliki noda sama persis dengan budi.
Berdasarkan kesamaan fakta-fakta tersebut, goal menampilkan bahwa budilah yang
membunuh siti.
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 18/28
MODUL 5
DATA OBJECT SEDERHANA DAN JAMAK
(SIMPLE DAN COMPOUND DATA OBJECT )
LIST PROGRAM :
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 19/28
JAWABAN PERTANYAAN :
1. Cari Mahasiswa yang mengikuti mata kuliah “Intelejensi Buatan” dan tampilkan dengan
menyertakan nama dosen, ruang kuliah, alamat asal mahasiswa.
GOAL
jenis_kuliah(kuliah("Intelejensi Buatan",Nama_dosen,Studi,Ruang)),
intelejensi_buatan(ai(Nama,Jenis_kelamin,No_Mhs,Asal)).
Setelah di uji goalnya:
Nama_dosen=Abdul Kadir, Studi=Manajemen Informatika,
Ruang=1, Nama=Sugeng Riyadi, Jenis_kelamin=pria,
No_Mhs=2002001, Asal=Jl. Sudriman No.2, Pontianak, kalimantan
Barat
Nama_dosen=Abdul Kadir, Studi=Manajemen Informatika,
Ruang=1, Nama=Yilia Sugondo, Jenis_kelamin=wanita,
No_Mhs=2002002, Asal=Jl. A. Yani No. 10, Klaten, Jawa Tengah
Nama_dosen=Abdul Kadir, Studi=Manajemen Informatika,
Ruang=1, Nama=Budiman Sejati, Jenis_kelamin=pria,
No_Mhs=2002003, Asal=Jl. Slamet Riyadi No. 45, Solo, Jawa
Tengah
3 Solutions
2. Cari mata kuliah apa saja yang diajarkan pada semester tersebut dan tampilkan dengan
menyertakan nama mahasiswa yang mengambil mata kuliah tersebut, ruang dan namadosen yang mengajar.
GOAL
jenis_kuliah(kuliah(Mata_kuliah,Nama_dosen,_,1)),
intelejensi_buatan(ai(Nama,_,No_Mhs,_));
jenis_kuliah(kuliah(Mata_kuliah,Nama_dosen,_,2)),
kuliah_pde(pde(Nama,_,No_Mhs,_));
jenis_kuliah(kuliah(Mata_kuliah,Nama_dosen,_,3)),
kuliah_tam(tam(Nama,_,No_Mhs,_)).
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 20/28
MODUL 6
PERULANGAN DAN REKURSI
(REPETI TION AND RECURSION )
LIST PROGRAM :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 21/28
JAWABAN PERTANYAAN :
1. Gambarkan struktur pohon yang terbuat dari serangkaian karakter dari
namamu!
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 22/28
2. Apa yang dimaksud dengan struktur data rekursif.
struktur data rekursif adalah prosedur yang di dalamnya ada pemanggilan terhadap
dirinya sendiri. Prosedur rekursi dapat merekam perkembangannya karena ia
melewatkan ( passing ) pencacah, total, dan hasil sementara sebagai argumen dari satu
iterasi ke iterasi berikutnya.
3. Mengapa rekursi ekor (tail recursion) lebih baik dari rekursi biasa?
rekursif ekor lebih baik daripada rekursif biasa karena dalam rekursif ekor Pemanggil
merupakan subgoal terakhir dari klausa tersebut dan tidak ada titik lacak balik
sebelumnya pada klausa. Sehingga misalnya kita selain memanggil prosedur C,
prosedur B memanggil dirinya sendiri pada langkah terakhir. Ketika prosedur B
memanggil B, stack frame dari pemanggilan B akan ditimpa nilainya oleh sebuah
stack frame dari pemanggil B, jadi tidak menambah stack frame baru. Hanya argumen
yang perlu di-update nilainya dan kemudian proses akan melompat ke awal prosedur.
Sedangkan pada rekursif biasa, ketika suatu prosedur memanggil dirinya, keadaan
pemanggil prosedur dari eksekusi harus disimpan sehingga prosedur pemanggil dapat
meresume keadaan tersebut setelah prosedur pemanggil selesai. Ini berarti jika ada
suatu prosedur memanggil dirinya 100 kali, maka ada 100 keadaan dari eksekusi yang
harus disimpan. Keadaan ( state) yang disimpan tersebut dikenal dengan nama stack
frame. Ukuran stack maksimum pada platform 16 bit, seperti IBM-PC dengan sistem
operasi DOS, adalah 64KByte yang bisa mengandung sekitar 3000 atau 4000 stack
frame. Pada paltform 32 bit, secara teoritis bisa sampai ukuran Giga Byte.
D R
D
3
5
E
A
1
2
W
4
6
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 23/28
MODUL 7
LIST
PERTANYAAN/TUGAS
Buat program dari narasi berikut dengan menggunakan list.
Pada suatu semester di STMIK MANTAP. Ada 3 mata kuliah yang diajarkan yaitu
“Intelejensi Buatan”, “PBO” dan “Sistem Operasi”. Yang mengikuti matakuliah “Intelejensi
Buatan” adalah Supardi, Suradi, Suyatmi, Suparni dan Sujiman. Yang mengikuti mata kuliah
“PBO” : Suharto, Sudirman, Supardi, Suyatmi, Sutini. Yang mengambil mata kuliah “Sistem
Operasi” : Suharto, Sutini, Supardi, Suparni, Suripah. Tidak ada mahasiswa yang mempunyai
nama yang sama. Jika ada nama yang sama mengikuti lebih dari 1 mata kuliah berarti
mahasiswa tersebut memang mengikuti lebih dari 1 mata kuliah. Adapun nilai akhir dari mata
kuliah tersebut (sesuai dengan urutan nama mahasiswa) adalah A, B, C, D, C, B, C, C, B, D,
B, A, A, B, dan C. Buat goal untuk menampilkan:
1. Nilai-nilai yang dimiliki oleh Supardi beserta mata kuliahnya.
2. Untuk mengecek apakah Suripah mengikuti perkuliahan pada semester tersebut.
3. Mahasiswa yang tidak lulus (nilai < C) pada semester tersebut beserta mata kuliahnya.
PENYELESAIAN :
1. Nilai-nilai yang dimiliki oleh Supardi beserta mata kuliahnya.
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 24/28
HASIL OUTPUT :
2. Untuk mengecek apakah Suripah mengikuti perkuliahan pada semester tersebut.
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 25/28
3. Mahasiswa yang tidak lulus (nilai < C) pada semester tersebut beserta mata kuliahnya.
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 26/28
MODUL 8
SELECTION FACTS
PERTANYAAN/TUGAS
Buat program seperti pada bagian pertanyaan/tugas pada modul VII, namun semua fakta
(yang ada pada section clauses) tidak berada pada badan program namun berada pada file
“mantap.txt”. Dan uji goal-goal seperti yang juga diperintahkan pada modul VII.
JAWABAN
LIST PROGRAM
HASIL OUTPUT :
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 27/28
HASIL CETAK DI NOTEPAD
INPUT DATA PADA NOTEPAD
LIST PROGRAM YANG DIJALANKAN
7/16/2019 Laporan Praktikum Kecerdasan Buatan
http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 28/28
HASIL OUTPUT :