PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Mendalami SWI Prolog Hand On Lab 2 Inteligensi Buatan 100 menit

dokumen-dokumen yang mirip
PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Pengantar Prolog Hand On Lab 1 Inteligensi Buatan 100 menit

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Basis Data Terapan 2

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 9

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Praktikum Bahasa Rakitan Hand On Lab 4

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 10

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 6

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Basis Data Terapan 2

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 10

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 5 Video Effects 150 menit/ 3 jam

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 15

BAB I PENDAHULUAN Pengantar Bahasa ISETL

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 8

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 4

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 5

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 2

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 6

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Basis Data Terapan 2

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 13

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 12

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 14

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Pengolahan Citra Digital

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Pengolahan Citra Digital

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 13

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Basis Data Terapan 2

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 11

Jl Srijaya Negara Bukit Besar Palembang 30139, Telpon :

Jl Srijaya Negara Bukit Besar Palembang 30139, Telpon :

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 1 Konsep Layer dan Tool Dasar

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Basis Data Terapan 2

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 1 (Multimedia) Hand On Lab 9

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Fuzzy Membership Pertemuan 14 Inteligensi Buatan 100 menit

ALGORITMA PEMROGRAMAN 1C PEMROGRAMAN LOGIK

4. Pembuatan File Batch

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 1

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Teori Dempster-Shafer Hand On Lab 3 Inteligensi Buatan 100 menit

PEMROGRAMAN TERSTRUKTUR MENGGUNAKAN MATLAB

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 7

MODUL 8 OPERATOR ARITMATIKA LANJUT. Nama : Yuandri Septiawan ( ) Kelas : 1 TK (Teknik Komputer)

OPERATOR DAN STATEMEN I/O

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Computer 1 (Computer Graphic)

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

MODUL III STRUCTURED QUERY ANGUAGE (SQL)

A. Putting a Program Together

A. Putting a Program Together

PENGENALAN VISUAL FOXPRO

Bab 2 Editor vi 9. BAB 2 EDITOR vi TUJUAN PRAKTIKUM

PANDUAN UJI KOMPETENSI

PENGENALAN ALAT HITUNG: KALKULATOR DAN FUNGSI KALKULATOR PADA PROGRAM R STATISTIKA

Kuliah III - Dasar Pemrograman

STRUKTUR DASAR PHP ASUMSI 02/10/2014

Pendahuluan. Praktikum Pengantar Pengolahan Citra Digital Departemen Ilmu Komputer Copyright 2008 All Rights Reserved

P - 7 Bab 5 : PHP : Hypertext Prepocessor

MODUL PRAKTIKUM PEMROGRAMAN PASCAL. Fight #1 PENGENALAN PASCAL, VARIABEL, TIPE DAN KONSTANTA.

Pengenalan Pascal/DevPascal

KETERAMPILAN KOMPUTER 2B** (IT :S1-SA) Pertemuan 7. Database Dbase IV AHMAD HIDAYAT

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

ilmu bahasa pemrograman ilmu c++ Copyright izie ilmu c++

BAB 1 PENGANTAR BAHASA PEMROGRAMAN FORTRAN

BAB I PENDAHULUAN 1 BAB I PENDAHULUAN

Program. Instruksi-instruksi yang diberikan kepada komputer agar dapat melaksanakan tugas-tugas tertentu

BAB III LOGIC PROGRAMMING

MODUL PRAKTIKUM ALGORITMA & BAHASA PEMROGRAMAN I (BASIC) Dosen Pengasuh : Suroto, S.Kom, M.Ak

PRAKTIKUM 1. Dasar-Dasar Matlab. (-), perkalian (*), pembagian (/) dan pangkat (^). Simbol ^ digunakan untuk

Perintah Dasar Shell. Praktikum 1 A. T U J U A N B. DASAR TEORI. command), ataupun perintah eksekusi suatu file progam (eksternal command),

Praktikum Dasar Pemrograman

Universitas Komputer Indonesia

SUMBER BELAJAR PENUNJANG PLPG

TEORI. Gbr. Shell berhubungan langsung dengan kernel sistem operasi

PRAKTIKUM ISYARAT DAN SISTEM TOPIK 0 TUTORIAL PENGENALAN MATLAB

@copyright by Emy PENGANTAR ALGORITMA & PROGRAM & PROGRAM PENGERTIAN ALGORITMA NOTASI UNTUK ALGORITMA

JavaScript (Dialog Box) Oleh : Devie Rosa Anamisa

PANDUAN UJI KOMPETENSI

IT132. Ramos Somya, S.Kom.

PENGENALAN MICROSOFT QUERY ANALYZER

PHP Basic. Pemrograman Web. Rajif Agung Yunmar, S.Kom

3. Struktur Perulangan dalam Bahasa C++

3. Struktur Perulangan dalam C++

PRAKTIKUM 1. Untuk membuat program, prosedur yang harus dilewati adalah: 1. Menentukan logika jalannya program, sering disebut algoritma.

Shell dan Pemrograman Shell

Algoritma & Pemrograman 1B BASIC

IDENTIFICATION DIVISION.

MODUL I PENGENALAN MATLAB

BAB I PENDAHULUAN. 1.1 Latar Belakang

AP2B Dini Triasanti STRUKTUR PEMROGRAMAN PYTHON

2.3 Algoritma Tidak Berhubungan dengan Bahasa Pemrograman Tertentu

Algoritma dan Struktur Data

Praktikum 3. Operasi Input Output

KATA PENGANTAR. Penulis. Raizal Dzil Wafa M.

Konsep. Bahasa Pemrograman. Evangs Mailoa. Pertemuan 7

INTELEGENSI BUATAN. Sistem Pakar. M. Miftakul Amin, M. Eng. website :

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

BAB VII KONVERSI BAHASA PEMROGRAMAN DAN DESAIN ANTARMUKA SISTEM PAKAR ANALISIS DAMPAK INDUSTRI SEMEN

PERTEMUAN KE <JUDUL PERTEMUAN PRAKTIKUM>

Pendahuluan. Komang Anom Budi Utama, Skom

BAB 1 KONSEP DASAR BAHASA C

Pemrograman Shell (2)

Transkripsi:

Jl Srijaya Negara Bukit Besar Palembang 30139, Telpon : +62711 353414 PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Mendalami SWI Prolog Hand On Lab 2 Inteligensi Buatan 100 menit Lecturer : M. Miftakul Amin, S. Kom., M. Eng. Website : http://mafisamin.blog.ugm.ac.id Tujuan : 1. Mahasiswa dapat menjelaskan konsep predikat dalam prolog. 2. Mahasiswa dapat menggunakan prolog untuk menyelesaikan masalah yang diberikan. Perlengkapan : Perangkat lunak SWI Prolog 1. Syntax SWI Prolog Sebagaimana bahasa pemrograman lain, SWI prolog memiliki beberapa aturan penulisan yang harus ditaati oleh programmer yang jika dilanggar akan berakibat terjadi error. Beberapa aturan penting yang perlu diperhatikan adalah: 1.1 Komentar Komentar merupakan notasi yang tidak akan dijalankan atau dieksekusi oleh interpreter prolog. Komentar yang digunakan adalah: /* untuk komentar yang terdiri dari beberapa baris */ % komentar juga dapat diawali dengan tanda persen jika hanya untuk satu baris 1.2 Fakta/fact Fakta merupakan apa yang diketahui, sebagai database. Dalam prolog relasi antara objek disebut dengan predicate. Setiap kalimat harus diakhiri dengan titik (.). Sebagai contoh : ahmad suka steak. dalam prolog menjadi suka(ahmad, steak). dina suka steak. dalam prolog menjadi suka(dina, steak). badar suka steak. dalam prolog menjadi suka(badar, steak). badar suka suci. dalam prolog menjadi suka(badar, suci). yuda suka kucing. dalam prolog menjadi suka(yuda, kucing). Yang perlu diperhatikan adalah predicate dan objek ditulis dalam huruf kecil. 1.3 Aturan/rule Aturan merupakan apa yang dapat disimpulkan dari fakta yang ada. Aturan dapat mengambil suatu fakta dari fakta yang lain. Sebagai contoh: Ahmad suka sesuatu jika dina juga menyukai sesuatu tersebut. Dalam prolog menjadi suka(ahmad, Sesuatu) :- suka(dina, Sesuatu). Atau dapat juga ditulis suka(ahmad, X) :- suka(dina, X). 1 H alaman

1.4 Query Query merupakan pertanyaan yang kita berikan ke sistem prolog yang jawabannya ada dalam fakta yang sudah diberikan. Sebagai contoh: Apa yang disukai oleh badar? dalam prolog menjadi suka(badar, X). 1.5 Variabel dan konstanta Variable merupakan tempat penyimpanan data yang isinya sewaktu-waktu dapat berubah, sedangkan konstanta merupakan nilai yang sifatnya tetap. Sebagai contoh : suka(badar, suci). dalam hal ini badar dan suci merupakan konstanta. Suka(X, steak). dalam hal ini X adalah variable dan steak adalah konstanta. Penulisan variable harus diawali dengan menggunakan huru besar seperti X,A,P,Q, Sesuatu, What, dll serta dapat diawali dengan tanda _ (garis bawah). 1.6 Menggunakan operator AND dan OR. Klausa konjungsi (AND) dinotasikan dengan tanda koma (,) sedangkan disjungsi (OR) dinotasikan dengan tanda titik koma (;). Sebagai contoh: Siapa yang suka steak dan suci? suka(x, steak), suka(x,suci). Siapa yang suka steak atau suci? suka(x, steak); suka(x,suci). 1.7 Menggunakan tanda semi colon (;) Tanda (;) dapat digunakan untuk menampilkan seluruh kemungkinan jawaban yang dihasilkan dari sebuah query. Sebagai contoh:?- suka(x,steak);suka(x,suci). X = ahmad ; X = dina ; X = badar ; X = ahmad ; X = badar ; Jika tidak ada tanda (;) pada saat menekan tombol Enter, maka hanya satu alternatif jawaban saja yang ditampilkan. 1.8 Menggunakan klausa write Klausa write digunakan untuk menuliskan output ke layar monitor. Sebagai contoh:?- write('halo'),nl,write('selamat Belajar SWI Prolog'). Halo Selamat Belajar SWI Prolog 2 H alaman

2. Objek Data dalam Prolog Beberapa objek data dalam prolog dikenal dengan istilah term. Berikut objek data yang ada dalam SWI Prolog: 2.1 Number Merupakan bilangan dari 0-9 baik yang memiliki tanda atau tidak, seperti 623, -47, +5. 2.2 Atoms Merupakan konstanta yang tidak memiliki nilai numerik untuk operasi aritmatika. Seperti john, Today is Tuesday. 2.3 Variabel Pemberian nama variable harus diawali huruf besar atau garis bawah. Sebagai contoh X, Author, _123A tetapi tidak boleh diawali dengan numeric. 2.4 Compound term Klausa yang terdiri dari predicate dan sekumpulan parameter. Contoh suka(badar, suci), read(x). 2.5 List Merupakan daftar yang berisi elemen. Sebagai contoh [dog, cat, y, z]. 3. Predicate member. SWI prolog memiliki sebuah predicate built-in dengan nama member, yang digunakan untuk mengetahui apakah sebuah nilai merupakan anggota dalam daftar nilai. Predicate member ini memiliki 2 buah argument, argument pertama adalah nilai yang akan dicari, sedangkan argument ke-2 adalah daftar nilai yang berisi alternatif kemungkinan nilai yang ada. 1?- member(1,[2,5,6,7,1]). 2?- member(8,[2,5,6,7,1]). 3?- member(x, [2,5,6,7,1]). X = 2 ; X = 5 ; X = 6 ; X = 7 ; X = 1 ; 4. Syntax Aturan/rules Aturan dalam menuliskan aturan/rules adalah sebagai berikut: head :- t1,t2,, tk. (k>=1) t1,t2,, tk merupakan badan dari klausa yang mengikuti head setelah tanda :- (yang berarti jika). Berikut beberapa contoh aturan : hewan_besar(x) :- hewan(x), besar(x). kakek(x,y) :- ayah(x,z), orangtua(z,y). go :- write( Selamat Datang ),nl. 3 H alaman

Tugas Praktikum : 1) Coba beberapa klausa berikut melalui prompt SWI Prolog. Berikan penjelasan dari hasil ujicoba tersebut yang dapat anda pahami.?- write(hello).?- write(hello).?- write('hello').?- write('hello!'),nl.?- 100=100.?- 100=1000/10.?- 100 is 1000/10.?- 1000 is 100*10.?- 2 is (5+7)/2. 2) Eksekusi beberapa klausa berikut melalui prompt SWI Prolog. Kemudian berikan penjelasan dari hasil yang diperoleh.?- read(x).?- put(97),nl.?- put(122),nl.?- put(64),nl.?- get0(n). 3) Tulis program berikut kemudian simpan dengan nama perulangan.pl. loop(0). loop(n) :- N>0, write('nilainya adalah :'),write(n),nl, M is N-1, loop(m). kemudian jalankan program tersebut dengan perintah berikut.?- ['C:/SWIProlog/perulangan.pl']. % C:/SWIProlog/perulangan.pl compiled 0.00 sec, 0 bytes?- loop(6). Nilainya adalah :6 Nilainya adalah :5 Nilainya adalah :4 Nilainya adalah :3 Nilainya adalah :2 Nilainya adalah :1 4) Coba tulis dan eksekusi program berikut untuk membuat sebuah menu utama, dan pahami bagaimana cara kerjanya. Simpan file dengan nama menu.pl dan untuk menjalankannya anda cukup mengetikkan?- go. go :- write('menguji Bagaimana Repeated Menu Bekerja'),menu. menu :- nl,write('menu'),nl, write('a. Menu 1'),nl, write('b. Menu 2'),nl, write('c. Menu 3'),nl, write('d. Exit'),nl, read(pilihan),nl,pilihan(pilihan). pilihan(a) :- write('menu 1 dipilih'),menu. pilihan(b) :- write('menu 2 dipilih'),menu. pilihan(c) :- write('menu 3 dipilih'),menu. pilihan(d) :- write('good By'),nl. pilihan(_) :- write('coba Kembali'),menu. 4 H alaman

?- ['C:/SWIProlog/menu.pl']. % C:/SWIProlog/menu.pl compiled 0.00 sec, 1,712 bytes?- go. Menguji Bagaimana Repeated Menu Bekerja Menu a. Menu 1 b. Menu 2 c. Menu 3 D. Exit a. Menu 1 dipilih Menu a. Menu 1 b. Menu 2 c. Menu 3 D. Exit Diperiksa tanggal : Dosen Pengampu: Nama Laboratorium : mor Komputer : (M. Miftakul Amin, S. Kom., M. Eng.) NIP. 197912172012121001 Sumber referensi: Suyoto. 2004. Intelegensi Buatan Teori dan Pemrograman. Yogyakarta: Penerbit Gava Media 5 H alaman