Mengenai Saya

Foto saya
Denpasar, BALI, Indonesia

Minggu, 06 Juni 2010

Pakar dan Sistem Pakar


Pakar
Seorang pakar adalah individu yang memiliki pemahaman lebih (ahli) dalam sebuah permasalahan. Sebagai contoh, yaitu : dokter, penasehat keuangan, pakar mekanik, dsb. Kriteria Seorang Pakar :
  1. Dapat mengenali (recognizing) dan merumuskan masalah
  2. Menyelesaikan masalah dengan cepat dan tepat
  3. Menjelaskan solusi 
  4. Mampu belajar dari pengalaman
  5. Merestrukturisasi pengetahuan
  6. Menentukan relevansi/ hubungan
  7. Memahami batas kemampuan

Sistem Pakar
Sistem pakar adalah sebuah sistem pembuat keputusan berbasis komputer interaktif, menggunakan fakta (factual) dan heuristic (heuristic) untuk memecahkan berbagai permasalahan, berdasarkan pengetahuan seorang pakar [9]. Fakta (Factual Knowledge) adalah ilmu pengetahuan yang tersebar luas, berasal dari textbook atau jurnal-jurnal, yang lazimnya disepakati dalam ruang lingkup khusus (bidang ilmu pengetahuan yang bersangkutan). Heuristik (Heuristic Knowledge) adalah ilmu pengetahuan yang memiliki tingkat ketelitian rendah, mengandalkan kepada pengalaman, intuisi, dan bersifat praduga pelaksanaannya .
Karakteristik Sistem Pakar
Sistem pakar memiliki beberapa karakteristik atau ciri khusus yang umumnya tidak ditemukan pada aplikasi program konvensional , yaitu :
  1. Sistem pakar mensimulasikan proses berpikir manusia terhadap suatu bidang permasalahan, lebih daripada hanya bersimulasi dengan bidang permasalahannya saja.
  2. Sistem pakar melakukan proses pemikiran (reasoning) melalui representasi pengetahuan dari seorang pakar dalam rangka melakukan penghitungan secara numerik atau pencarian data.
  3. Sistem pakar tidak selalu menawarkan sebuah solusi, tapi dapat juga berupa lebih dari satu solusi, rekomendasi (seperti apa yang seorang konsultan lakukan) atau mungkin juga tidak ada jawaban sama sekali. Hal ini disebabkan adanya faktor heuristic (keputusan kira-kira, data yang tidak pasti) dalam proses penalarannya.
  4. Pengembangan awal sistem pakar dilakukan oleh pakar (expert) dan perekayasa pengetahuan (knowledge engineer). Karakter ini tidak ditemukan pada program konvensional, dimana cukup dengan seorang programmer saja dalam membuat program dan pengambilan keputusannya.
  5. Sistem pakar memiliki fasilitas penjelasan (explanation facility) yang dengannya dapat menjelaskan alasan terciptanya sebuah keputusan/ solusi.
Alasan Dibutuhkannya Sistem Pakar
Kebutuhan akan sistem pakar dirasakan semakin tinggi disebabkan adanya keterbatasan-keterbatasan pada proses pembuatan keputusan yang biasa dilakukan oleh manusia. Berikut ini beberapa alasan dibutuhkannya sistem pakar dilihat dari adanya keterbatasan pada manusia/ pakar :
  • Umumnya, keahlian manusia itu jarang/ langka

  • Adanya faktor kelelahan yang bisa kapan saja mendera manusia, disebabkan oleh beban kerja

  • Adanya faktor alpa (lupa) pada faktor-faktor penting dari masalah yang ada

  • Ketidakkonsistenan manusia dalam membuat keputusan antara hari ini dengan hari lainnya

  • Keterbatasan memori bekerja yang dimiliki oleh manusia

  • Manusia dapat berbohong, bersembunyi, atau bahkan meninggal


  • Struktur Sistem Pakar

    Secara umum, sistem pakar memiliki struktur seperti di bawah ini :
    Gambar 1. Struktur Sistem Pakar


    Basis Pengetahuan (Knowledge Base)

    Basis pengetahuan (Knowledge Base) adalah inti dari struktur sistem pakar, dibentuk oleh perekayasa pengetahuan (knowledge engineer) yang bertugas menterjemahkan pengetahuan seorang pakar ke dalam aturan dan strategi. Basis pengetahuan tersusun atas pengetahuan-pengetahuan yang bersifat nyata (explicit), seperti : teori, buku, jurnal, artikel, dan juga pengetahuan yang bersifat heuristic seperti halnya pengalaman pakar dalam menangani ‘pasien’ nya, atau berdasarkan intuisinya. Dalam implementasinya, basis pengetahuan dapat dibentuk (representated) dengan beberapa model, diantaranya yaitu :
    1. Jaringan Semantik
    2. Frame
    3. Aturan Produksi
    4. Logika Predikat
    5. Hybrids

    Mesin Kesimpulan (Inference Engine)

    Mesin kesimpulan atau Inference Engine, dapat diistilahkan sebagai ‘otak’ (mind) dari sistem pakar, berfungsi sebagai penyedia metodologi cara berpikir sistem yaitu tentang bagaimana mendapatkan informasi yang terkandung dalam sebuah basis pengetahuan serta memformulasikan kesimpulan yang didapatnya. Cara umum yang digunakan mesin kesimpulan dalam mendapatkan kesimpulan ialah dengan melakukan proses penalaran, pencocokan antara fakta dengan aturan yang tersedia dalam basis pengetahuan. Beberapa model yang umum digunakan dalam proses inferensi ini diantaranya ialah forward chaining dan backward chaining. Inferensi dengan forward chaining dimulai dari data/ fakta, berlanjut pada pencapaian aturan guna mendapatkan kesimpulan yang sesuai. Sementara backward chaining memulainya dari kesimpulan (goal), yang selanjutnya melakukan penelusuran terhadap aturan yang tersedia secara mundur guna mencari data/ fakta yang sesuai.


    Memori Bekerja (Working Memory)

    Yang dimaksud dengan working memory disini ialah tempat penyimpanan informasi yang digunakan oleh sistem dalam memutuskan aturan-aturan mana yang dapat dicapai. Isi dari working memory ketika sistem mulai dijalankan biasanya akan berisi data masukan (contoh : respon dari user berkenaan dengan pemasukan data gejala penyakit pasien).
    Juga, working memory dapat juga digunakan untuk menyimpan kesimpulan sementara dan informasi-informasi lainnya yang disimpulkan oleh sistem dari data-data yang tersedia, guna mendukung tercapainya kesimpulan secara utuh.


    Siklus Pengembangan Sistem Pakar

    Dalam pengembangan sebuah sistem pakar, maka dikenal pula sebuah siklus yang bernama Expert Sistem Development Life Cycle (ESDLC) [15]. Adapun tahapan-tahapan yang ada dalam ESDLC dapat digambarkan dalam skema berikut :
    Gambar 2. Skema ESDLC


    Adapun penjelasan tentang skema tersebut adalah sebagai berikut :
    1. Identifikasi & Analisa Masalah
    2. Identifikasi masalah berhubungan dengan pengenalan situasi/ lingkungan penyebab timbulnya masalah. Sementara analisa masalah meliputi evaluasi karakteristik dari masalah yang ada, serta penjelasan dari proses input dan output-nya.
    3. Akuisisi & Representasi Pengetahuan
    4. Akuisisi masalah merupakan proses dimana perekayasa pengetahuan (knowledge engineer) memperoleh dan mengkodekan pengetahuan berdasarkan apa yang pakar biasa lakukan. Sementara representasi pengetahuan merupakan tahap pengolahan pengetahuan yang berasal dari proses akuisisi, ke dalam bentuk yang mudah diakses oleh sistem pakar yaitu dalam mencari solusi.
    5. Pembangunan Prototipe
    6. Prototipe yang dimaksud di sini adalah sebuah bentukan hasil dari proses sebelumnya di atas (identifikasi & analisa masalah, akuisisi & representasi pengetahuan) yang akan digunakan dalam proses penilaian pelanggan dan pengembang.
    7. Verifikasi, Validasi, dan Testing
    8. Pada proses ini pengetahuan yang sudah direpresentasikan dan dibuat prototype-nya pada proses sebelumnya kemudian dikonfirmasikan kembali kepada pakar untuk dilakukan verifikasi, validasi, dan testing, untuk mengetahui apakah pengetahuan tersebut sudah benar atau belum. Apabila pengetahuan tersebut belum sesuai, maka perlu dilakukan penyempurnaan atau kembali ke proses sebelumnya dan kemudian diverifikasi dan divalidasi ulang sehingga didapatkan pengetahuan yang sesuai.
    9. Implementasi dan Integrasi
    10. Merupakan tahap pembangunan aplikasi. Dari pengetahuan yang sudah terverifikasi dan valid tersebut, kemudian diintegrasikan ke dalam aplikasi sistem pakar secara utuh.
    11. Maintenance
    12. Merupakan proses yang dilakukan setelah sistem pakar terbangun, yaitu membuat mekanisme pengoperasian serta pemeliharaannya. Keluaran dari proses maintenance ini dapat menjadi acuan bagi proses perluasan/ pengembangan aplikasi sistem pakar ke depannya.

    Metode Forward Chaining

    Metode Forward Chaining merupakan salah satu metode selain Backward Chaining yang digunakan dalam aturan inferensi Artificial Intelligence. Metode ini melakukan pemrosesan berawal dari sekumpulan data untuk kemudian dilakukan inferensi sesuai dengan aturan yang diterapkan hingga diketemukan kesimpulan yang optimal. Mesin inferensi akan terus melakukan looping pada prosesnya untuk mencapai hasil keputusan yang sesuai. Metode yang diterapkan pada forward chaining ini berkebalikan dengan metode backward chaining. Kelebihan metode forward chaining ini adalah data baru dapat dimasukkan ke dalam tabel database inferensi dan kemungkinan untuk melakukan perubahan inference rules. Contoh : Studi kasus mencari kesimpulan warna dari jaket Levis. Basis aturan (rule base) terdiri dari 4 aturan if-then :
    1. If X terbuat dari bahan kulit - Then X adalah jaket Levis
    2. If X terbuat dari bahan parasit - Then X adalah jaket sport
    3. If X adalah jaket Levis - Then X berwarna hitam
    4. If X adalah jaket sport - Then X berwarna putih
    Pada contoh studi kasus di atas, ”If X terbuat dari bahan kulit” direpresentasikan sebagai anteseden (antecedent), sedangkan “Then X adalah jaket kulit” direpresentasikan sebagai konsekuen (consequent). Sehingga dari aturan tersebut diatas, didapatkan bahwa warna jaket Levis adalah hitam.

    Tidak ada komentar: