Selasa, 24 April 2012

pengertian sistem pakar

1.   Sistem Pakar
a.      Definisi
Secara umum, sistem pakar (expert system) adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu permasalahan tertentu dengan meniru kerja dari para ahli. Dengan sistem pakar ini, orang awampun dapat menyelesaikan masalah yang cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para ahli, sistem pakar juga akan membantu aktivitasnya sebagai asisten yang sangat berpengalaman[12].
Adapun beberapa definisi tentang sistem pakar, antara lain :
1)  Menurut Durkin: Sistem pakar adalah suatu program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan oleh seorang pakar.
2)  Menurut Ignizio: sistem pakar adalah suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar.
1)      Menurut Giarratano dan Riley: sistem pakar adalah suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar.
Sistem pakar pertama kali dikembangkan oleh komunitas Artificial Intelligence pada pertengahan tahun 1960. Sistem pakar yang muncul pertama kali adalah General-purpose Problem Solver (GPS) yang dikembangkan oleh Newel dan Simon. GPS dan program-program serupa ini mengalami kegagalan dikarenakan cakupannya terlalu luas sehingga terkadang justru meninggalkan pengetahuan-pengetahuan penting yang seharusnya disediakan[13].
b.      Konsep Dasar Sistem Pakar
Menurut Efraim Turban, konsep dasar sistem pakar mengandung : keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan.
Keahlian adalah suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk keahlian adalah :
1)   Fakta-fakta pada lingkup permasalahan tertentu.
2)   Teori-teori pada lingkup permasalahan tertentu.
3) Prosedur-prosedur dan aturan-aturan berkenaan dengan lingkup    permasalahan tertentu.
4)   Strategi-strategi global untuk menyelesaikan masalah.
5)   Meta Knowledge (pengetahuan tentang pengetahuan).
Bentuk-bentuk ini memungkinkan para ahli untuk dapat mengambil keputusan lebih cepat dan lebih baik daripada seseorang yang bukan ahli.
Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan (domain), menyusun kembali pengetahuan jika dipandang perlu, memecah aturan-aturan jika dibutuhkan, dan menentukan relevan tidaknya keahlian mereka.
Pengalihan keahlian dari para ahli ke komputer untuk kemudian dialihkan lagi ke orang lain yang bukan ahli, merupakan tujuan utama dari sistem pakar. Proses ini membutuhkan 4 aktivitas yaitu: tambahan pengetahuan (dari para ahli atau sumber-sumber lainnya), representasi pengetahuan (ke komputer), inferensi pengetahuan, dan pengalihan pengetahuan ke user. Pengetahuan yang disimpan di komputer disebut dengan nama basis pengetahuan, yaitu : fakta dan prosedur (biasanya berupa aturan).
Salah satu fitur yang harus dimiliki oleh sistem pakar adalah kemampuan untuk menalar. Jika keahlian-keahlian sudah tersimpan sebagai basis pengetahuan dan sudah tersedia program yang mampu mengakses basisdata, maka komputer harus dapat diprogram untuk membuat inferensi. Proses inferensi ini dikemas dalam bentuk motor inferensi (inference engine).
Sebagian besar sistem pakar komersial dibuat dalam  bentuk rule-based systems, yang mana pengetahuan disimpan dalam bentuk aturan-aturan. aturan tersebut biasanya berbentuk IF-THEN [10].
c.       Ciri – ciri Sistem Pakar
Yang merupakan ciri sistem pakar adalah sebagai berikut[10] :
1)  Terbatas pada bidang yang spesifik
2)  Dapat memberikan penalaran untuk data-data yang tidak lengkap atau tidak pasti.
3) Dapat mengemukakan rangkaian alasan yang diberikannya dengan cara yang dapat dipahami.
4)  Berdasarkan pada rule atau kaidah tertentu.
5)  Dirancang untuk dapat dikembangkan secara bertahap.
6)  Outputnya bersifat nasihat atau anjuran.
7)  Outputnya tergantung dari dialog dengan user.
8)  Knowledge base dan Inference engine terpisah.
d.      Keuntungan Sistem Pakar
Kelebihan / keunggulan yang dapat diperoleh dengan mengembangkan sistem pakar  [10], antara lain :
1) Memungkinkan orang awam bisa mengerjakan pekerjaan ahli / pakar.
2)   Bisa melakukan proses secara berulang dan otomatis.
3)   Menyimpan pengetahuan dan keahlian pakar.
4)   Meningkatkan output dan produktivitas.
5)   Meningkatkan kualitas.
6)   Mampu mengambil dan melestarikan keahlian para pakar.
7)   Mampu beoperasi dalam lingkungan yang berbahaya.
8)   Memiliki kemampuan untuk mengakses pengetahuan.
9)   Memiliki reliabilitas.
10)  Meningkatkan kapabilitas sistem komputer.
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.
   e.   Kelemahan Sistem Pakar
1) Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal.
2) Sulit dikembangkan.
3) Sistem pakar tidak 100% bernilai benar.
f.  Struktur Bagan Sistem Pakar
              Komponen yang harus ada dalam sistem pakar adalah antarmuka (interface), motor inferensi (inference engine), basis pengetahuan (knowledge base), dan basis data (database). Komponen sistem pakar, sebagaimana ditunjukkan pada Gambar 1 di bawah ini : 
                               Gambar 1. Komponen sistem pakar [9]
Komponen – komponen yang ada pada sistem pakar adalah Gambar 1:
1)  Subsistem Penambahan Pengetahuan. Bagian ini digunakan untuk memasukkan pengetahuan, mengkonstruksi atau memperluas pengetahuan dalam basis pengetahuan dalam basis pengetahuan. Pengetahuan ini bisa berasal dari : ahli, buku, basisdata, penelitian, dan gambar.
2)    Basis pengetahuan. Berisi pengetahuan-pengetahuan dalam penyelesaian masalah, tentu saja di dalam domain tertentu. Ada 2 bentuk pendekataan basis pengetahuan yang sangat umum digunakan, yaitu :
a. Penalaran berbasis aturan (Rule-Based-Reasoning) Pengetahuan direpresentasikan dengan menggunakan aturan berbentuk IF – THEN. Bentuk ini digunakan apabila ada sejumlah pengetahuan pakar pada suatu permasalahan tertentu dan pakar dapat menyelesaikan masalah tersebut secara berurutan.
b.  Penalaran berbasis kasus (Case-Based-Reasoning)
Basis pengetahuan akan berisi solusi-solusi yang telah dicapai   sebelumnya, kemudian akan diturunkan suatu solusi untuk keadaan yang terjadi sekarang (fakta yang ada). Bentuk ini digunakan apabila user menginginkan untuk tahu lebih banyak lagi pada kasus-kasus yang hampir sama.
3) Motor Inferensi. Program yang berisi metodologi yang digunakan untuk melakukan penalaran terhadap informasi-informasi dalam basis pengetahuan dan blackboard, serta digunakan untuk memformulasikan konklusi. Ada 3 elemen utama dalam motor inferensi, yaitu :
a.  Interpreter, mengeksekusi item-item agenda yang terpilih dengan menggunakan aturan-aturan dalam basis pengetahuan yang sesuai.
b.    Sceduler, akan mengontrol agenda.
c. Consistency enforce, berusaha memelihara kekonsistensian dalam mempresentasikan solusi yang bersifat darurat.
d. Blackboard. Merupakan area dalam memori yang digunakan untuk merekam kejadian yang sedang berlangsung termasuk keputusan sementara. Ada 3 tipe keputusan yang dapat direkam, yaitu :
1.  Rencana : bagaimana menghadapi masalah.
2. Agenda : aksi-aksi yang potensial yang sedang menunggu untuk dieksekusi.
3. Solusi : calon aksi yang akan dibangkitkan.
e. Antarmuka Pemakai (User Interface). Digunakan untuk media komunikasi antara user dan program.
f. Subsistem Penjelasan. Digunakan untuk melacak respon dan memberikan penjelasan kelakuan tentang sistem pakar secara interaktif melalui pertanyaan.
g. Sistem Penyaring Pengetahuan. Sistem ini digunakan untuk mengevaluasi kinerja sistem pakar itu sendiri untuk melihat apakah pengetahuan-pengetahuan yang ada masih cocok untuk digunakan di masa mendatang.