Program Delphi Milik Temanku

Modul untuk kegiatan labor :
Mata Kuliah : Intelijensi Buatan/AI
Materi/Pembahasan :
Fakta, Rule dan Query pada Prolog

Tujuan :
Melalui modul ini diharapkan peserta dapat memahami dan membuat pernyataan fakta, aturan/rule dan query/goal pada turbo Prolog

Gambaran umum :
Pemrograman AI merupakan kegiatan membuat program yang prinsip kerjanya dirancang untuk semirip mungkin dengan cara manusia berpikir (menggunakan intelijensi-nya) dalam memecahkan suatu masalah. Manusia dalam berpikir untuk memecahkan masalah akan menggunakan pengetahuan yang telah dimilikinya yang berkaitan dengan masalah yang akan dipecahkan. Semakin banyak dan lengkap pengetahuan tersebut maka semakin mendekati sempurna lah pemecahan/jawaban masalah tersebut.
Pemrograman prolog menirukan prinsip yang demikian. Maka pada pemrograman prolog ada fasilitas untuk memberikan pengetahuan ke komputer, dan ada cara-cara untuk menguji atau bertanya ke komputer berkaitan dengan pengetahuan yang telah disusupkan tersebut.
Pengetahuan pada prolog dituliskan dengan menyatakan fakta (facts) dan aturan (rules) yang disebut dengan : Clauses. Fakta pada prolog ada yang berupa fakta penjelasan sifat satu objek dan ada fakta yang menghubungkan (relasi) keterkaitan dua objek. Aturan/Rules pada prolog merupakan pernyataan sebab-akibat antara beberapa fakta. Selanjutnya untuk menguji pengetahuan tersebut prolog menyediakan fasilitas penulisan Goal. Goal pada prolog dapat dituliskan di dalam kode program langsung (internal) dan dapat juga dituliskan saat program dijalankan/run (external). Menuliskan Goal pada prolog disebut juga memberikan Query (pengajuan pertanyaan)
Langkah praktikum berikut akan membimbing anda untuk memahami tentang masalah penulisan : Fakta, aturan dan query pada prolog.
Langkah Praktikum :
1. Jika diketahui fakta-fakta berikut :
Windows termasuk Sistem operasi (Os),
Linux juga termasuk sistem operasi,
Novell juga termasuk sistem operasi,
Vb adalah tool bahasa pemrograman,
Delphi juga tool bahasa pemrograman,
Office adalah aplikasi,
Photoshop adalah aplikasi,
Flash adalah aplikasi,
JetAudio adalah aplikasi

Untuk menuliskan fakta-fakta di atas, maka ketikkan kode berikut pada prolog :

Jika program di atas langsung anda jalankan, maka prolog akan memberikan pesan kesalahan sebab predicate : Os, bahasa dan aplikasi belum dideklarasikan. Untuk itu sebelum bagian Clauses tambahkan kode deklarasi predicate berikut :

Setelah anda tambahkan kode di atas, jalankan kembali program anda. Jika pengetikan anda benar, maka prolog akan memberi anda kesempatan untuk mengajukan query melalui prompt Goal.
Ajukan pertanyaan berikut :
– Software apa sajakah yang termasuk Sistem Operasi ?
Goal : os(A)

– Software mana saja yang termasuk bahasa pemrograman ?
Goal : bahasa(A)

– Software mana saja yang termasuk aplikasi ?
Goal : …………………………………………(tentukan sendiri !)

Symbol A pada pernyataan di atas dapat anda ganti dengan yang lain dan boleh lebih dari 1 karakter asalkan karakter pertamanya huruf besar (ingat syarat memberi nama variabel ke prolog).
Catatan :
Penulisan fakta seperti di atas termasuk jenis penulisan fakta yang hanya menjelaskan sifat satu objek, sebab parameter predikatnya hanya satu.

2. Untuk mencobakan penulisan fakta yang merelasikan beberapa objek, tambahkan fakta-fakta di atas (yang huruf tebal) menjadi seperti berikut :
Windows termasuk Sistem operasi (Os),
Linux juga termasuk sistem operasi,
Novell juga termasuk sistem operasi,
Vb adalah tool bahasa pemrograman,
Delphi juga tool bahasa pemrograman,
Office adalah aplikasi,
Photoshop adalah aplikasi,
Flash adalah aplikasi,
JetAudio adalah aplikasi
Perusahaan Microsoft membuat windows,
Microsoft juga membuat VB,
Microsoft juga membuat Office,
Borland membuat Delphi,
Adobe membuat Photoshop
Cowon membuat JetAudio

Untuk itu kode prolog anda tambahkan menjadi berikut :

Jalankan/Run program dan ajukan kembali query seperti berikut :
– Apa saja software yang dibuat oleh perusahaan microsoft ?
Goal : perusahaan(microsoft,Software)

– Apakah Delphi dibuat oleh Microsoft ?
Goal : perusahaan(microsoft,delphi)

– Perusahaan apakah yang membuat Delphi ?
Goal : perusahaan(Perusahaan,delphi)

– Software apa yang dibuat perusahaan Adobe ?
Goal : ……………………………………………… (tentukan sendiri !)

– Siapakah yang membuat JetAudio ?
Goal : ……………………………………………… (tentukan sendiri !)

TUGAS
Tambahkan program prolog di atas untuk fakta-fakta berikut :
Linux dibuat oleh Perusahaan RedHat,
Linux juga dibuat oleh Mandrake,
Linux juga dibuat oleh Suse,
Novell dibuat oleh Netware
Dan Flash dibuat oleh macromedia

Setelah anda tambahkan tuliskan Goal untuk pertanyaan berikut :

– Perusahaan apa yang membuat Linux ?
– Apakah Flash dibuat oleh Microsoft ?
– Apa saja software yang dibuat oleh Netware ?

(dikumpulkan !)

3. Tentang pernyatan majemuk :
Misalkan dari program di atas diajukan pertanyaan : Microsoft membuat software sistem operasi apa ? Untuk menuliskan pernyataan di atas pada bagian Goal maka akan melibatkan predicate os() juga predicate perusahaan(). Pernyataan demikian disebut dengan pernyataan majemuk.
Jalankan kembali program prolog anda dan tuliskan Goal berikut :
Goal : Perusahaan(microsoft,Software),Os(Software)
Artinya : Microsoft membuat software sistem operasi apa ?
Tuliskan jawaban prolog !
………….

Latihan
Dengan cara yang sama tuliskanlah Goal untuk pertanyaan-pertanyaan berikut :
– Software Aplikasi apa yang dibuat oleh Microsoft ?

– Perusahaan apa saja yang membuat Bahasa Pemrograman ?

– Apakah Borland ada membuat Sistem Operasi ?

4. Tentang Rule/Aturan :
Aturan yaitu hubungan sebab-akibat (if-then) antara beberapa fakta. Aturan juga dapat digunakan untuk mendapatkan fakta baru dari beberapa fakta yang ada.
Contoh aturan :
“ Sebuah software disebut mahal jika dibuat oleh perusahaan Microsoft.”
Maka untuk menuliskan aturan tersebut pada prolog pernyataannya adalah :
Mahal(Software) :- perusahaan(microsoft,Software).
Tambahkan pernyataan di atas pada program anda ! Jangan lupa menambahkan deklarasi predicate mahal().

Kemudian jalankan dan berikan query berikut :
– Software apa saja yang termasuk mahal ?
Goal : mahal(Software)

– Apakah Delphi termasuk mahal ?
Goal : mahal(delphi)

Latihan :
Buatlah pernyataan prolog untuk aturan berikut :
“ Perusahaan software masa depan adalah perusahaan yang mengembangkan Linux.”

Berdasarkan aturan tersebut buat query yang menanyakan : Perusahaan apa saja yang termasuk perusahaan masa depan ?

5. Goal Internal
Goal internal yaitu Goal yang dituliskan di dalam kode program. Dengan adanya Goal Internal maka saat program dijalankan/run tidak ada lagi prompt Goal.

Tambahkan kode berikut pada program anda :
goal
Clearwindow,aplikasi(S),perusahaan(P,S),
write(“Yang membuat aplikasi “,S,” adalah perusahaan “,P).

Jalankan/run program dan catat hasilnya !
…………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………..
Tambahkan kode di bagian goal tersebut menjadi seperti berikut (huruf tebal) :
goal
Clearwindow,aplikasi(S),perusahaan(P,S),
write(“Yang membuat aplikasi “,S,” adalah perusahaan “, P),nl,fail.

Kembali catat hasilnya
…………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………..

Sebutkan fungsi penambahan perintah : nl dan fail tersebut !
…………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………..

Tugas : (Dikumpulkan)
Buatlah goal internal untuk menghasilkan output dengan pesan :
(kata-kata pesan silahkan dibuat sendiri)
1. Perusahaan-perusahaan yang membuat bahasa pemrograman
2. Perusahaan-perusahaan yang membuat sistem operasi
3. Yang termasuk Software mahal
4. Yang termasuk Software tidak mahal
5. ……………
6. ……………

Buatlah program prolog untuk fakta dan rule seperti ditentukan berikut :

Boeing adalah pembuat Boeing_747
Fokker adalah pembuat F28
IPTN adalah pembuat F250
Boeing_747 penumpangnya 500
F28 penumpangnya 600
N250 penumpangnya 50
Pesawat kecil adalah pesawat yang penumpangnya =300

pembuat(boeing,bOEING_747).
pembuat(fokker,f28).
pembuat(iptn,f250).
pesawat(bOEING_747,500).
pesawat(n250,50).
pesawatkecil(Jenis):-pesawat(Jenis,Jumlah),Jumlah<=50.

winter

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s