laporan praktikum kecerdasan buatan

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

Upload: cleren-edward-l-noctis

Post on 30-Oct-2015

1.876 views

Category:

Documents


197 download

DESCRIPTION

Laporan praktikum lengkap (Visual Prolog)

TRANSCRIPT

Page 1: Laporan Praktikum Kecerdasan Buatan

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

Page 2: Laporan Praktikum Kecerdasan Buatan

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

Page 3: Laporan Praktikum Kecerdasan Buatan

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 :

Page 4: Laporan Praktikum Kecerdasan Buatan

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) .

Page 5: Laporan Praktikum Kecerdasan Buatan

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 

Page 6: Laporan Praktikum Kecerdasan Buatan

7/16/2019 Laporan Praktikum Kecerdasan Buatan

http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 6/28

PENYELESAIAN :

a.  Cucu

HASIL OUTPUT :

Page 7: Laporan Praktikum Kecerdasan Buatan

7/16/2019 Laporan Praktikum Kecerdasan Buatan

http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 7/28

b. Ibu

HASIL OUTPUT :

Page 8: Laporan Praktikum Kecerdasan Buatan

7/16/2019 Laporan Praktikum Kecerdasan Buatan

http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 8/28

c.  Adik 

HASIL OUTPUT : 

Page 9: Laporan Praktikum Kecerdasan Buatan

7/16/2019 Laporan Praktikum Kecerdasan Buatan

http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 9/28

d. Kakek 

HASIL OUTPUT :

Page 10: Laporan Praktikum Kecerdasan Buatan

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.

Page 11: Laporan Praktikum Kecerdasan 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.

Page 12: Laporan Praktikum Kecerdasan Buatan

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 :

Page 13: Laporan Praktikum Kecerdasan Buatan

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 :

Page 14: Laporan Praktikum Kecerdasan Buatan

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 :

Page 15: Laporan Praktikum Kecerdasan Buatan

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 :

Page 16: Laporan Praktikum Kecerdasan Buatan

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.

Page 17: Laporan Praktikum Kecerdasan Buatan

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.

Page 18: Laporan Praktikum Kecerdasan Buatan

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 :

Page 19: Laporan Praktikum Kecerdasan Buatan

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,_)).

Page 20: Laporan Praktikum Kecerdasan Buatan

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 :

Page 21: Laporan Praktikum Kecerdasan Buatan

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!

Page 22: Laporan Praktikum Kecerdasan Buatan

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

Page 23: Laporan Praktikum Kecerdasan Buatan

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.

Page 24: Laporan Praktikum Kecerdasan Buatan

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 :

Page 25: Laporan Praktikum Kecerdasan Buatan

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 : 

Page 26: Laporan Praktikum Kecerdasan Buatan

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 :

Page 27: Laporan Praktikum Kecerdasan Buatan

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

Page 28: Laporan Praktikum Kecerdasan Buatan

7/16/2019 Laporan Praktikum Kecerdasan Buatan

http://slidepdf.com/reader/full/laporan-praktikum-kecerdasan-buatan 28/28

HASIL OUTPUT :