Pengertian Sistem Pakar |
Sistem Pakar
Sistem Pakar – Ketika hendak membuat suatu keputusan yang komplek atau memecahkan masalah, seringkali kita meminta nasehat atau berkonsultasi dengan seorang pakar atau ahli. Seorang pakar adalah seseorang yang mempunyai pengetahuan dan pengalaman spesifik dalam suatu bidang; misalnya pakar komputer, pakar uji tak merusak, pakar politik dan lain-lain. Semakin tidak terstruktur situasinya, semakin mengkhusus (dan mahal) konsultasi yang dibutuhkan.
Pengertian Sistem Pakar
Sistem Pakar (Expert System) adalah usaha untuk menirukan seorang pakar. Biasanya Sistem Pakar berupa perangkat lunak pengambil keputusan yang mampu mencapai tingkat performa yang sebanding seorang pakar dalam bidang problem yang khusus dan sempit. Ide dasarnya adalah: kepakaran ditransfer dari seorang pakar (atau sumber kepakaran yang lain) ke komputer, pengetahuan yang ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan, mendeduksi, dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke pengguna tersebut, bila perlu dengan alasan-alasannya.
Sistem Pakar malahan terkadang lebih baik unjuk kerjanya daripada seorang pakar manusia! Kepakaran (expertise) adalah pengetahuan yang ekstensif (meluas) dan spesifik yang diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman. Pengetahuan membuat pakar dapat mengambil keputusan secara lebih baik dan lebih cepat daripada non-pakar dalam memecahkan problem yang kompleks.
Kepakaran mempunyai sifat berjenjang, pakar top memiliki pengetahuan lebih banyak daripada pakar yunior. Tujuan Sistem Pakar adalah untuk mentransfer kepakaran dari seorang pakar ke komputer, kemudian ke orang lain (yang bukan pakar). Proses ini tercakup dalam rekayasa pengetahuan (knowledge engineering) yang akan dibahas kemudian.
Manfaat Sistem Pakar
Mengapa Sistem Pakar menjadi sangat populer? Hal ini disebabkan oleh sangat banyaknya kemampuan dan manfaat yang diberikan oleh Sistem Pakar, di antaranya:
a. Meningkatkan output dan produktivitas, karena Sistem Pakar dapat bekerja lebih cepat dari manusia.
b. Meningkatkan kualitas, dengan memberi nasehat yang konsisten dan mengurangi kesalahan.
c. Mampu menangkap kepakaran yang sangat terbatas.
d. Dapat beroperasi di lingkungan yang berbahaya.
e. Memudahkan akses ke pengetahuan.
f. Handal. Sistem Pakar tidak pernah menjadi bosan dan kelelahan atau sakit. Sistem Pakar juga secara konsisten melihat semua detil dan tidak akan melewatkan informasi yang relevan dan solusi yang potensial.
g. Meningkatkan kapabilitas sistem terkomputerisasi yang lain. Integrasi Sistem Pakar dengan sistem komputer lain membuat lebih efektif, dan mencakup lebih banyak aplikasi.
h. Mampu bekerja dengan informasi yang tidak lengkap atau tidak pasti. Berbeda dengan sistem komputer konvensional, Sistem Pakar dapat bekerja dengan inofrmasi yang tidak lengkap. Pengguna dapat merespon dengan: “tidak tahu” atau “tidak yakin” pada satu atau lebih pertanyaan selama konsultasi, dan Sistem Pakar tetap akan memberikan jawabannya.
i. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan Sistem Pakar akan menjadi lebih berpengalaman. Fasilitas penjelas dapat berfungsi sebagai guru.
j. Meningkatkan kemampuan problem solving, karena mengambil sumber pengetahuan dari banyak pakar.
k. Meniadakan kebutuhan perangkat yang mahal.
l. Fleksibel.
Keterbatasan Sistem Pakar
Metodologi Sistem Pakar yang ada tidak selalu mudah, sederhana dan efektif. Berikut adalah keterbatasan yang menghambat perkembangan Sistem Pakar:
a. Pengetahuan yang hendak diambil tidak selalu tersedia.
b. Kepakaran sangat sulit diekstrak dari manusia.
c. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa berbeda-beda, meskipun sama-sama benar
d. Adalah sangat sulit bagi seorang pakar untuk mengabstraksi atau menjelaskan langkah mereka dalam menangani masalah
e. Pengguna Sistem Pakar mempunyai batas kognitif alami, sehingga mungkin tidak bisa memanfaatkan sistem secara maksimal.
f. Sistem Pakar bekerja baik untuk suatu bidang yang sempit.
g. Banyak pakar yang tidak mempunyai jalan untuk mencek apakah kesimpulan mereka benar dan masuk akal.
h. Istilah dan jargon yang dipakai oleh pakar dalam mengekspresikan fakta seringkali terbatas dan tidak mudah dimengerti oleh orang lain.
i. Pengembangan Sistem Pakar seringkali membutuhkan perekayasa pengetahuan (knowledge engineer) yang langka dan mahal.
j. Kurangnya rasa percaya pengguna menghalangi pemakaian Sistem Pakar. k. Transfer pengetahuan dapat bersifat subyektif dan bias.
Komponen Sistem Pakar
Secara umum, Sistem Pakar biasanya terdiri atas beberapa komponen yang masing-masing berhubungan seperti terlihat pada Gambar di bawah ini. Basis Pengetahuan, berisi pengetahuan yang dibutuhkan untuk memahami, memformulasi, dan memecahkan masalah. Basis pengetahuan tersusun atas 2 elemen dasar:
1. Fakta, misalnya: situasi, kondisi, dan kenyataan dari permasalahan yang ada, serta teori dalam bidang itu
2. Aturan, yang mengarahkan penggunaan pengetahuan untuk memecahkan masalah yang spesifik dalam bidang yang khusus Mesin Inferensi (Inference Engine), merupakan otak dari Sistem Pakar. Juga dikenal sebagai penerjemah aturan (rule interpreter). Komponen ini berupa program komputer yang menyediakan suatu metodologi untuk memikirkan (reasoning) dan memformulasi kesimpulan. Kerja mesin inferensi meliputi:
1. Menentukan aturan mana akan dipakai
2. Menyajikan pertanyaan kepada pemakai, ketika diperlukan.
3. Menambahkan jawaban ke dalam memori Sistem Pakar.
4. Menyimpulkan fakta baru dari sebuah aturan
5. Menambahkan fakta tadi ke dalam memori.
Struktur skematis sebuah Sistem Pakar |
Papan Tulis (Blackboard/Workplace), adalah memori/lokasi untuk bekerja dan menyimpan hasil sementara. Biasanya berupa sebuah basis data.
Antarmuka Pemakai (User Interface). Sistem Pakar mengatur komunikasi antara pengguna dan komputer. Komunikasi ini paling baik berupa bahasa alami, biasanya disajikan dalam bentuk tanya-jawab dan kadang ditampilkan dalam bentuk gambar/grafik. Antarmuka yang lebih canggih dilengkapi dengan percakapan (voice communication).
Subsistem Penjelasan (Explanation Facility). Kemampuan untuk menjejak (tracing) bagaimana suatu kesimpulan dapat diambil merupakan hal yang sangat penting untuk transfer pengetahuan dan pemecahan masalah. Komponen subsistem penjelasan harus dapat menyediakannya yang secara interaktif menjawab pertanyaan pengguna, misalnya:
1. “Mengapa pertanyaan tersebut anda tanyakan?”
2. “Seberapa yakin kesimpulan tersebut diambil?”
3. “Mengapa alternatif tersebut ditolak?”
4. “Apa yang akan dilakukan untuk mengambil suatu kesimpulan?”
5. “Fakta apalagi yang diperlukan untuk mengambil kesimpulan akhir?”
Sistem Penghalusan Pengetahuan (Knowledge Refining System). Seorang pakar mempunyai sistem penghalusan pengetahuan, artinya, mereka bisa menganalisa sendiri performa mereka, belajar dari pengalaman, serta meningkatkan pengetahuannya untuk konsultasi berikutnya. Pada Sistem Pakar, swa-evaluasi ini penting sehingga dapat menganalisa alasan keberhasilan atau kegagalan pengambilan kesimpulan, serta memperbaiki basis pengetahuannya.
Pembangunan Sebuah Sistem Pakar
Mengembangkan Sistem Pakar dapat dilakukan dengan 2 cara:
1. Membangun sendiri semua komponen di atas, atau
2. Memakai semua komponen yang sudah ada kecuali isi basis pengetahuan.
Yang kedua disebut sebagai membangun Sistem Pakar dengan shell, yakni semua komponen Sistem Pakar, kecuali basis pengetahuan, bersifat generik; sehingga dapat dipakai untuk bidang yang berlainan. Membangun Sistem Pakar dengan shell dapat dilakukan dengan lebih cepat dan lebih sedikit keterampilan memprogram, namun berkurang fleksibilitasnya karena harus mengikuti kemampuan dari shell tersebut. Salah satu shell Sistem Pakar yang populer dipakai adalah CLIPS (C Language Integrated Production System) yang dapat didownload dari internet.
1. Pemilihan Masalah Pembuatan
Sistem Pakar membutuhkan waktu dan biaya yang banyak. Untuk menghindari kegagalan yang memalukan dan kerugian yang besar, maka dibuat beberapa pedoman untuk menentukan apakah Sistem Pakar cocok untuk memecahkan suatu problem:
a. Biaya yang diperlukan untuk pembangunan Sistem Pakar ditentukan oleh kebutuhan untuk memperoleh solusi. Sehingga harus ada perhitungan yang realistis untuk cost and benefit.
b. Pakar manusia tidak mudah ditemui untuk semua situasi di mana dia dibutuhkan. Jika pakar pengetahuan tersebut terdapat di mana saja dan kapan saja, maka pembangunan Sistem Pakar menjadi kurang berharga.
c. Problem yang ada dapat diselesaikan dengan teknik penalaran simbolik, dan tidak membutuhkan kemampuan fisik.
d. Problem tersebut harus terstruktur dengan baik dan tidak membutuhkan terlalu banyak pengetahuan awam (common sense), yang terkenal sulit untuk diakuisisi dan dideskripsikan, dan lebih banyak berhubungan dengan bidang yang teknis.
e. Problem tersebut tidak mudah diselesaikan dengan metode komputasi yang lebih tradisionil. Jika ada penyelesaian algoritmis yang bagus untuk problem tersebut, maka kita tidak perlu memakai Sistem Pakar.
f. Ada pakar yang mampu memberikan penjelasan tentang kepakarannya serta mau bekerjasama. Adalah sangat penting bahwa pakar yang dihubungi benar-benar mempunyai kemauan kuat untuk ikut berpartisipasi serta tidak merasa pekerjaannya akan menjadi terancam.
g. Problem tersebut mempunyai sekup yang tepat. Biasanya merupakan problem yang membutuhkan kepakaran yang sangat khusus namun hanya membutuhkan seorang pakar untuk dapat menyelesaikannya dalam waktu yang relatif singkat (misalnya paling lama 1 jam).
2. Rekayasa Pengetahuan (Knowledge Engineering)
Proses dalam rekayasa pengetahuan meliputi:
a. Akuisisi pengetahuan, yaitu bagaimana memperoleh pengetahuan dari pakar atau sumber lain (sumber terdokumentasi, buku, sensor, file komputer, dll.).
b. Validasi pengetahuan, untuk menjaga kualitasnya misalnya dengan uji kasus.
c. Representasi pengetahuan, yaitu bagaimana mengorganisasi pengetahuan yang diperoleh, mengkodekan dan menyimpannya dalam suatu basis pengetahuan.
d. Penyimpulan pengetahuan, menggunakan mesin inferensi yang mengakses basis pengetahuan dan kemudian melakukan penyimpulan.
e. Transfer pengetahuan (penjelasan). Hasil inferensi berupa nasehat, rekomendasi, atau jawaban, kemudian dijelaskan ke pengguna oleh subsistem penjelas.
3. Partisipan Dalam Proses Pengembangan
Pakar, yaitu seseorang yang mempunyai pengetahuan, pengalaman, dan metode khusus, serta mampu menerapkannya untuk memecahkan masalah atau memberi nasehat. Pakar menyediakan pengetahuan tentang bagaimana nantinya Sistem Pakar bekerja.
Perekayasa pengetahuan (knowledge engineer), yang membantu pakar untuk menyusun area permasalahan dengan menerjemahkan dan mengintegrasikan jawaban pakar terhadap pertanyaan-pertanyaan dari klien, menarik analogi, serta memberikan contoh-contoh yang berlawanan, kemudian menyusun basis pengetahuan.
Pengguna, yang mungkin meliputi: seorang klien non-pakar yang sedang membutuhkan nasehat (Sistem Pakar sebagai konsultan atau advisor), seorang siswa yang sedang belajar (Sistem Pakar sebagai instruktur), seorang pembuat Sistem Pakar yang hendak meningkatkan basis pengetahuan (Sistem Pakar sebagai partner), seorang pakar (Sistem Pakar sebagai kolega atau asisten, yang dapat memberikan opini kedua). Partisipan lain, dapat meliputi: pembangun sistem (system builder), tool builder, staf administrasi dsb.
4. Akuisisi Pengetahuan
Dalam proses akuisisi pengetahuan, seorang perekayasa pengetahuan menjembatani antara pakar dengan basis pengetahuan. Perekayasa pengetahuan mendapatkan pengetahuan dari pakar, mengolahnya bersama pakar tersebut, dan menaruhnya dalam basis pengetahuan, dengan format tertentu. Pengambilan pengetahuan dari pakar dapat dilakukan secara:
Manual, di mana perekayasa pengetahuan mendapatkan pengetahuan dari pakar (melalui wawancara) dan/atau sumber lain, kemudian mengkodekannya dalam basis pengetahuan. Proses ini biasanya berlangsung lambat, mahal, serta kadangkala tidak akurat.
Semi-otomatik, di mana terdapat peran komputer untuk: (1) mendukung pakar dengan mengijinkannya membangun basis pengetahuan tanpa (atau dengan sedikit) bantuan dari perekayasa pengetahuan, atau (2) membantu perekayasa pengetahuan sehingga kerjanya menjadi lebih efisien dan efektif.
Otomatik, di mana peran pakar, perekayasa pengetahuan, dan pembangun basis pengetahuan (system builder) digabung. Misalnya dapat dilakukan oleh seorang system analyst seperti pada metode induksi.
Demikian pembahasan kita pada kesempatan kali ini mengenai sistem pakar. Mulai dari pengertian sistem pakar, manfaat sistem pakar, keterbatasan sistem pakar, komponen sistem pakar, dan pembangun sistem pakar. Semoga dengan pembahasan yang singkat ini kita dapat memahami esensi dari sistem pakar. Jangan lupa bagikan artikel kami ke teman atau sosial media kamu. Bisa jadi bukan cuma kamu yang butuh informasi ini.
Lainnya: Cara Hapus Akun Instagram
Daftar Pustaka:
Diktat Mata Kuliah Kecerdasan Buatan Jurusan Teknik Fisika Fakultas Teknik Universitas Gadjah Mada Yogyakarta © 2006 – By : Ir. Balza Achmad, M.Sc.E.