Kemudian untuk menjawab pertanyaan a adalah sebagai berikut :
1.pada a ditanyakan semua mammal ,
ountuk mencari mammal bisa langsung menulis
animal(mammal,X,_,_). oSelalu akhiri dengan tanda titik (.) oKemudian enter , selanjutnya titik koma (;) sampai keluar perintah No .
oX = merupakan nama variable
Karena dalam soal terdapat 4 anggota dalam setiap animal maka jangan beri spasi atau membiarkannya kosong , yang keluar akan eror . jadi cukup berikan underscore _
2. pada b ditanyakan semua karnivora yang mamalia . o untuk mencari bisa langsung menulis animal(mammal,Y,carnivore,_). o Jangan lupa untuk mengurutkan data dalam setiap perintah .
o Selalu akhiri dengan tanda titik (.)o Kemudian enter , selanjutnya titik koma (;) sampai keluar perintah No.3. pada c ditanyakan semua mammal dengan stripes . ountuk mencarinya bisa langsung menulis
animal(mammal,Z,_,stripes). oJangan lupa untuk mengurutkan data dalam setiap perintah . oSelalu akhiri dengan sampai keluar perintah No.
4. Pada d ditanyakan dimana terdapat reptile disitu terdapat mane . Ini sebenarnya sudah pasti terjawab NO atau tidak ada . tapi mari kita coba . ountuk mencarinya bisa langsung menulis
animal(reptile,P,_,mane). oJangan lupa untuk mengurutkan data dalam setiap perintah . oSelalu akhiri dengan tanda titik (.) Kemudian enter , selanjutnya titik koma (;)
Soal Nomer 2 :
Disini ditanyakan pasangan dari dua pernyataan , yaitu antara pria dan wanita . Sekarang mari kita coba mengerjakannya .
Langkah-langkah untuk mengerjaknnya adalah :
1. Pertama kita tulis database dari dating agency pada notepad . kemudian beri peraturan tambahan. Yaitu untuk menjelaskan akan couple/pasangan jika variable L untuk male dan P untuk female . Seperti ini : Kemudian save dengan format .pl
2. Kemudian pada prolog consult data yang sudah kita save tersebut .
3. Kemudian tinggal menuliskan perintah : couple(L,P).
4. Tekan enter, dan untuk selanjutnya tekan titik koma (;) , Maka yang keluar akan seperti ini :
Demikian itulah langkah-langkah untuk menjawab exercise 2 pada buku logic programming with prolog . insyaallah jika teliti dan sesuai urutan maka tidak akan salah atau ERROR .
-Secara umum ES adalah system yang berusaha mengadopsi pengetahuan manusia ke computer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan para ahli.
-ES tidak untuk menggantikan kedudukan seorang pakar tetapi untuk memasyaratkan pengetahuan dan pengalaman pakar tersebut.
-ES dikembangkan pertama kali oleh komunitas AI tahun 1960an. ES yang pertama adalah General Purpose Problem Solver (GPS) yang dikembangkan oleh Newel Simon.
Beberapa ES yang terkenal :
Sistem Pakar
Kegunaan
MYCIN
Dirancang oleh Edward Feigenbaum (Universitas Stanford) th ’70 an
Diagnosa Penyakit
DENDRAL
Mengidentifikasi struktur mo-lecular campuran yang tidak dikenal
XCON & XSEL
Dikembangkan oleh Digital Equipment Corporation (DEC) dan Carnegie Mellon Universitas (CMU), akhir ’70 an
Membantu konfigurasi system computer besar
SOPHIE
Analisis sirkuit elektronik
PROSPECTOR
Didesign oleh Sheffield Research Institute, akhir ‘70an
Digunakan di dalam geologi untuk membantu mencari dan menemukan deposit
FOLIO
Membantu memberikan keputusan bagi seorang manajer dalam hal stok broker dan investasi
DELTA
Pemeliharaan lokomotif listrik diesel
Keuntungan ES :
1.Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli
2.bisa melakukan proses secara berulang secara otomatis
3.menyimpan pengetahuan dan keahlian para pakar
4.meningkatkan output dan produktivitas
5.meningkatkan kualitas
6.mampu mengambil dan melestarikankeahlian para pakar
7.mampu beroperasi dalam lingkungan berbahaya
8.memiliki kemampuan untuk mengakses pengetahuan
9.memiliki realibilitas
10.meningkatkan kapabilitas system computer
11.memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian
12.sebagai media pelengkap dalam pelatihan
13.meningkatkan kapabilitas dalam penyelesaian masalah
14.menghemat waktu dalam pengambilan keputusan
Kelemahan :
1.biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal
2.sulit dikembangkan. Hal ini erat kaitannya dengan ketersediaan pakar dalam bidangnya
3.system pakar tidak 100% bernilai benar
Konsep Dasar ES
·Menurut Efraim Turban, system pakar harus mengandung : keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan.
·Keahlian adalah suatu kelebihan penguasan pengetahuan di bidang tertentu yang diperoleh dari pelatihan,membaca atau pengalaman. Bentuk pengetahuan :
ofakta-fakta pada lingkup permasalahan tertentu
oteori-teori pada lingkup masalah tertentu
oprosedur-prosedur berkenaan dengan lingkup masalah tertentu
ostrategi-strategi global untuk menyelesaikan masalah
ometa-knowledge (pengetahuan tentang pengetahuan)
-Knowledge base (basis pengetahuan) berisi pengetahuan-pengetahuan dalam penyelesaian masalah.
oDomain pengetahuan seorang pakar pada dasarnya adalah spesifik terhadap domain masalah.
-Inference engine (motor inferensi) bertugas untuk menganalisis pengetahuan dan menarik kesimpulan berdasarkan knowledge base.
·Sistem Konvensional vs. Sistem Pakar (ES)
Sistem Konvensional
Sistem Pakar (ES)
Informasi dan pemrosesan biasanya jadi satu dengan program
Basis pengetahuan merupakan bagian terpisah dari mekanisme inferensi
Biasanya tidak bisa menjelaskan mengapa suatu input data itu dibutuhkan atau bagaimana output itu diperoleh
Penjelasan adalah bagian terpenting dari system pakar
Pengubahan program cukup sulit
Pengubahan aturan dapat dilakukan dengan mudah
Sistem hanya akan beroperasi jika system tersebut sudah lengkap
Sistem dapat beroperasi hanya dengan beberapa aturan
Eksekusi dilakukan langkah demi langkah
Eksekusi dilakukan pada keseluruhan basis pengetahuan
Menggunakan data
Menggunakan pengetahuan
Tujuan utamanya adalah efisiensi
Tujuan utamanya adalah efektivitas
·Ciri-ciri ES :
oMemiliki fasilitas informasi yang handal
oMudah dimodifikasi
oDapat digunakan dalam berbagai jenis komputer
oMemilki kemampuan untuk belajar beradaptasi.
·Permasalahan yang Disentuh oleh ES (Domain ES) :
-Interpretasi. Pengambilan keputusan dari hasil observasi, termasuk pengenalan ucapan, analisis citra, interpretasi sinyal, dll
-Debugging : memberikan resep obat terhadap kegagalan
-Instruksi : melakukan instruksi untuk diagnosis, debugging dan perbaikan kinerja
-Kontrol : melakukan kontrol terhadap interpreasi, prediksi, perbaikan dan monitoring kelakukan sistem.
·Bentuk ES :
1.Berdiri sendiri. Sistem jenis ini merupakan s/w yang berdiri sendir tidak tergabung dengan s/w lain.
2.Tergabung. Sisetm ini merupakan bagian program yang terkandung di dalam suatu algoritma (konvensional) .
3.Menghubungkan ke s/w lain. Bentuk ini biasanya merupakan ES yang menghubungkan ke suatu paket program tertentu, misalnya DBMS.
4.Sistem mengabdi. Sistem ini merupakan bagian dari computer khusus yang dihubungkan dengan suatu fungsi tertentu.
·Elemen ES
-User interface (antarmuka) : mekanisme komunikasi antara user dan ES
-Explanation facility (subsistem Penjelasan) : digunakan untuk melacak respon dan memberikan penjelasan tentang kelakuan sistem pakar secara interaktif
-Working memory : database global dari fakta yang digunakan dalam prosedur
-Agenda : daftar prioritas prosedur yang dibuat oleh motor inferensi dan direkam dalam working memory
-Inference engine (motor inferensi) : program yang berisi metodologi yang digunakan untuk melakukan penalaran terhadap informasi-informasi dalam basis pengetahuan untuk memformulasikan konklusi.
-Knowledge acquisiton facility : berisi pengetahuan-pengetahuan yang dibutuhkan untuk memahami, memformulasikan dan menyelesaikan masalah.
·Bahasa, Shell dan Tools ES
-Bahasa ES difokuskan pada fleksibilitas dan robust dalam merepresentasikan penetahuan
-Bahasa ES merupakan bahasa tingkat tinggi yang dirancang secara khusus untuk representasi pengetahuan dan alas an (reasoning).
-Contoh Bahasa ES : SAIL, KRL, KQML, DAML
-ES Shell : tools khusus yang dirancang untuk mendukung aplikasi ES, pada saat user memasukkan basis pengetahuan.
-Contoh ES Shell : EMYCIN (untuk MYCIN), CLIPS
Basis Aturan (Rule Based) ES
-Pengetahuan dalam ES direpresentasikan dalam bentuk IF-THEN atau dalam bentuk Production Rules.
-Motor inferensi menentukan aturan awal (rule antecedents) yang sesuai.
oSisi kiri harus cocok dengan fakta yang ada di memori kerja
-Aturan yang sesuai ditempatkan di agenda dan dapat diaktivasi
-Aturan yang terdapat di agenda dapat diaktivasi
oAktivasi aturan akan membangkitkan fakta baru di sisi kanan
oAktivasi dari satu aturan adalah bagian dari aktivasi aturan yang lain.
Siklus Motor Inferensi (Inference Engine Cycle )
·Menggambarkan eksekusi dari aturan pada motor inferensi :
-Conflict resolution : pemilihan aturan dengan prioritas tertinggi dari agenda
-Execution : aksi consequent dari aturan yang terpilih
-Match : pengkinian (update) agenda
·Siklus berakhir ketika tidak ada lagi aturan di agenda atau ketika ditemui perintah stop.
·Ada 2 cara yang dapat dilakukan dalam melakukan inferensi :
1.Forward Chaining. Pencocokkan fakta atau pernyataan dimulai dari bagian sebelah kiri (IF dulu). Dengan kata lain, penalaran dimulai dari fakta terlebih dahulu untuk menguji kebenaran hipotesis.
2.Backward Chaining. Pencocokkan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN dulu). Dengan kata lain, penalarana dimulai dari hipotesis terlebih dahulu, dan untuk menguji kebenaran hipotesis tersebut dicari fakta-fakta yang ada dalam basis pengetahuan.
Sistem Produksi
·Salah satu tipe ES yang terkenal adalah sistem yang berdasarkan pada aturan
·Alasannya :
omodular nature
omemiliki fasilitas penjelasan
okesamaan dalam pemrosesan cognitive
·Sistem Produksi Post
oaturan produksi yang digunakan oleh Emil L.Post (sekitar awal 1940an) dalam simbol logika
oTeori Post :
§Setiap sistem matematik atau logika dapat ditulis dalam bentuk sistem produksi
oPrinsip aturan produksi
§Suatu aturan yang mengatur konversi sebuah set string ke dalam set string yang lain.
§Manipulasi string dalam sintaks sederhana
§Contoh : BNF grammar pada bahasa pemrograman
·Algoritma Markov
oSekitar 1950an A.A.Markov memperkenalkan prioritas sebagaii strktur kendali pada sistem produksi.
oaturan dengan prioritas tertinggi dijalankan terlebih dahulu
oefisiensi eksekusi dalam sistem produksi
onamun… untuk set aturan yang besar, tidak efisien
·Algoritma Rete
oDibangun oleh Charles L.Forgy (1970an) untuk Official Production System CMU sebagai perbaikan Algoritma Markov
oAlgoritma yg mengetahui tentang seluruh aturan/baris sistem dan dapat menerapkan suatu baris tanpa harus mencoba setiap baris tanpa berangkai (mencari perubahan dalam gabungan setiap cycle)
oMerupakan gabungan pola yang sangat cepat, yang mendapatkan kecepatannya dengan menyimpan informasi tentang baris dalam jaringan
Klasifikasi Paradigma Pemrograman
1.Paradigma PROSEDURAL
ALGORITMA adalah metode untuk pemecahan masalah dalam sejumlah tahap/langkah tertentu.
üImplementasi algoritma dalam suatu program disebut program prosedural.
üPemrograman algoritma (prosedural) dan konvensional untuk program type non-AI.
üSinonim untuk pemrograman prosedural adalah prog. Sequential.
üPada pemrograman prosedural programmer harus menentukan sesungguhnya bagaimana pemecahan masalah harus di-code-kan.
üPembuat code adalah pemrograman non prosedural.
2.Paradigma NON PROSEDURAL
üPenekanan pemrograman Non prosedural adalah penentuan apa yg akan diselesaikan dan membiarkan system menentukan bagaimana menyusunnya.
ØPEMROGRAMAN DEKLARATIF
Memisahkan tujuan dari metode yg digunakan untuk mencapai tujuan.
ØPEMROGRAMAN OBJECT ORIENTED
Ide : membuat design program dg mempertimbangkan data yg digunakan dalam program sebagai objek dan mengimplemnetasikan operasi pada objek tersebut.
ØPEMROGRAMAN LOGIKA
Pembuktian teori logika dg Logic Theorirt Program (Newell & Simon) pada Darmouth Conference A.I (1956)
Rangkaian backward dapat digunakan untuk mengekspresikan pengetahuan dalam representasi deklaratif maupun kontrol proses pemberian alasan.
Keuntungannya : pembuatannya dapat diproses secara paralel yaitu jika ada beberapa processor dapat bekerja secara simultan
EXPERT SYSTEM
üDisebut pemrograman deklaratif krn programmer tdk menetukan bagaimana prog. hrs mendapatkan tujuannya pada level algoritma