Selasa, 01 November 2016

Expert System

A. Pendahuluan
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.
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.
B. Manfaat dan Keterbatasan Sistem Pakar
1. 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:
Diktat Mata Kuliah Kecerdasan Buatan Ir. Balza Achmad, M.Sc.E. 8
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.
2. 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.
C. Komponen Sistem Pakar
Secara umum, Sistem Pakar biasanya terdiri atas beberapa komponen yang masing-masing berhubungan seperti terlihat pada Gambar II-1.
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.
Gambar II-1. 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.
D. 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 (Gambar II-2):
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.
Gambar II-2. Proses dalam rekayasa pengetahuan
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 (Gambar II-3):
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.
Gambar II-3. Metode akuisisi pengetahuan (a) manual (b) akuisisi terkendali-pakar (c) induksi
E. Representasi Pengetahuan
Setelah pengetahuan berhasil diakuisisi, mereka harus diorganisasi dan diatur dalam suatu konfigurasi dengan suatu format/representasi tertentu. Metode representasi pengetahuan yang populer adalah aturan produk dan bingkai.
1. Aturan Produk (Production Rules)
Di sini pengetahuan disajikan dalam aturan-aturan yang berbentuk pasangan keadaan-aksi (condition-action): “JIKA keadaan terpenuhi atau terjadi MAKA suatu aksi akan terjadi”. Sistem Pakar yang basis pengetahuannya melulu disajikan dalam bentuk aturan produk disebut sistem berbasis-aturan (rule-based system). Kondisi dapat terdiri atas banyak bagian, demikian pula dengan aksi. Urutan keduanya juga dapat dipertukarkan letaknya. Contohnya:
a. JIKA suhu berada di bawah 20ºC MAKA udara terasa dingin.
b. Udara terasa dingin JIKA suhu berada di bawah 20ºC.
c. JIKA suhu berada di bawah 20ºC ATAU suhu berada di antara 20-25ºC DAN angin bertiup cukup kencang MAKA udara terasa dingin.
d. Contoh dari MYCIN, Sistem Pakar untuk mendiagnosis dan merekomendasikan perlakuan yang tepat untuk infeksi darah tertentu:
IF the infection is pimary-bacteremia
AND the site of the culture is one of the sterile sites
AND the suspected portal of entry is the gastrointestinal tract
THEN there is suggestive evidence (0.7) that infection is bacteroid.
2. Bingkai (frame)
Bingkai adalah struktur data yang mengandung semua informasi/pengetahuan yang relevan dari suatu obyek. Pengetahuan ini diorganisasi dalam struktur hirarkis khusus yang memungkinkan pemrosesan pengetahuan. Bingkai merupakan aplikasi dari pemrograman berorientasi obyek dalam AI dan Sistem Pakar. Pengetahuan dalam bingkai dibagi-bagi ke dalam slot atau atribut yang dapat mendeskripsikan pengetahuan secara deklaratif ataupun prosedural. Contoh frame untuk menggambarkan sebuah mobil diberikan dalam Gambar II-4 berikut ini.
Gambar II-4. Bingkai pengetahuan untuk sebuah mobil
F. Bagaimana Sistem Pakar Melakukan Inferensi?
1. Sistem Perantaian Maju (Forward Chaining Systems)
Pada sistem perantaian maju, fakta-fakta dalam dalam sistem disimpan dalam memori kerja dan secara kontinyu diperbarui. Aturan dalam sistem merepresentasikan aksi-aksi yang harus diambil apabila terdapat suatu kondisi khusus pada item-item dalam memori kerja, sering disebut aturan kondisi-aksi. Kondisi biasanya berupa pola yang cocok dengan item yang ada di dalam memori kerja, sementara aksi biasanya berupa penambahan atau penghapusan item dalam memori kerja.
Aktivitas sistem dilakukan berdasarkan siklus mengenal-beraksi (recognise-act). Mula-mula, sistem mencari semua aturan yang kondisinya terdapat di memori kerja, kemudian memilih salah satunya dan menjalankan aksi yang bersesuaian dengan aturan tersebut. Pemilihan aturan yang akan dijalankan (fire) berdasarkan strategi tetap yang disebut strategi penyelesain konflik. Aksi tersebut menghasilkan memori kerja baru, dan siklus diulangi lagi sampai tidak ada aturan yang dapat dipicu (fire), atau goal (tujuan) yang dikehendaki sudah terpenuhi.
Sebagai contoh, lihat pada sekumpulan aturan sederhana berikut (Di sini kita memakai kata yang diawali huruf kapital untuk menyatakan suatu variabel. Pada sistem lain, mungkin dipakai cara lain, misalnya menggunakan awalan ? atau ^):
1. JIKA (mengajar X) DAN (mengoreksi_tugas X) MAKA TAMBAH (terlalu_banyak_bekerja X)
2. JIKA (bulan maret) MAKA TAMBAH (mengajar balza)
3. JIKA (bulan maret) MAKA TAMBAH (mengoreksi_tugas balza)
4. JIKA (terlalu_banyak_bekerja X) ATAU (kurang_tidur X) MAKA TAMBAH (mood_kurang_baik X)
5. JIKA (mood_kurang_baik X) MAKA HAPUS (bahagia X)
6. JIKA (mengajar X) MAKA HAPUS (meneliti X)
Kita asumsikan, pada awalnya kita mempunyai memori kerja yang berisi fakta berikut:
(bulan maret)
(bahagia balza)
(meneliti balza)
Sistem Pakar mula-mula akan memeriksa semua aturan yang ada untuk mengenali aturan manakah yang dapat memicu aksi, dalam hal ini aturan 2 dan 3. Sistem kemudian memilih
salah satu di antara kedua aturan tersebut dengan strategi penyelesaian konflik. Katakanlah aturan 2 yang terpilih, maka fakta (mengajar balza) akan ditambahkan ke dalam memori kerja. Keadaan memori kerja sekarang menjadi:
(mengajar balza)
(bulan maret)
(bahagia balza)
(meneliti balza)
Sekarang siklus dimulai lagi, dan kali ini aturan 3 dan 6 yang kondisinya terpenuhi. Katakanlah aturan 3 yang terpilih dan terpicu, maka fakta (mengoreksi_tugas balza) akan ditambahkan ke dalam memori kerja. Lantas pada siklus ketiga, aturan 1 terpicu, sehingga variabel X akan berisi (bound to) balza, dan fakta (terlalu_banyak_bekerja balza) ditambahkan, sehingga isi memori kerja menjadi:
(terlalu_banyak_bekerja balza)
(mengoreksi_tugas balza)
(mengajar balza)
(bulan maret)
(bahagia balza)
(meneliti balza)
Kesimpulan
Exspert System atau sistem pakar merupakan sistem yang yang membantu untuk memecahkan masalah atau mengdiagnosa suatu masalah berdasarkan penilaian dari ahli yang dibuat menjadi sebuah aplikasi atau website, sehingga pengguna atau user bisa tau apa permasalahan yang dialami secara peraktis

Sumber
https://birtandp.wordpress.com/tag/apa-itu-expert-system/

Expert System

A. Pendahuluan
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.
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.
B. Manfaat dan Keterbatasan Sistem Pakar
1. 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:
Diktat Mata Kuliah Kecerdasan Buatan Ir. Balza Achmad, M.Sc.E. 8
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.
2. 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.
C. Komponen Sistem Pakar
Secara umum, Sistem Pakar biasanya terdiri atas beberapa komponen yang masing-masing berhubungan seperti terlihat pada Gambar II-1.
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.
Gambar II-1. 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.
D. 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 (Gambar II-2):
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.
Gambar II-2. Proses dalam rekayasa pengetahuan
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 (Gambar II-3):
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.
Gambar II-3. Metode akuisisi pengetahuan (a) manual (b) akuisisi terkendali-pakar (c) induksi
E. Representasi Pengetahuan
Setelah pengetahuan berhasil diakuisisi, mereka harus diorganisasi dan diatur dalam suatu konfigurasi dengan suatu format/representasi tertentu. Metode representasi pengetahuan yang populer adalah aturan produk dan bingkai.
1. Aturan Produk (Production Rules)
Di sini pengetahuan disajikan dalam aturan-aturan yang berbentuk pasangan keadaan-aksi (condition-action): “JIKA keadaan terpenuhi atau terjadi MAKA suatu aksi akan terjadi”. Sistem Pakar yang basis pengetahuannya melulu disajikan dalam bentuk aturan produk disebut sistem berbasis-aturan (rule-based system). Kondisi dapat terdiri atas banyak bagian, demikian pula dengan aksi. Urutan keduanya juga dapat dipertukarkan letaknya. Contohnya:
a. JIKA suhu berada di bawah 20ºC MAKA udara terasa dingin.
b. Udara terasa dingin JIKA suhu berada di bawah 20ºC.
c. JIKA suhu berada di bawah 20ºC ATAU suhu berada di antara 20-25ºC DAN angin bertiup cukup kencang MAKA udara terasa dingin.
d. Contoh dari MYCIN, Sistem Pakar untuk mendiagnosis dan merekomendasikan perlakuan yang tepat untuk infeksi darah tertentu:
IF the infection is pimary-bacteremia
AND the site of the culture is one of the sterile sites
AND the suspected portal of entry is the gastrointestinal tract
THEN there is suggestive evidence (0.7) that infection is bacteroid.
2. Bingkai (frame)
Bingkai adalah struktur data yang mengandung semua informasi/pengetahuan yang relevan dari suatu obyek. Pengetahuan ini diorganisasi dalam struktur hirarkis khusus yang memungkinkan pemrosesan pengetahuan. Bingkai merupakan aplikasi dari pemrograman berorientasi obyek dalam AI dan Sistem Pakar. Pengetahuan dalam bingkai dibagi-bagi ke dalam slot atau atribut yang dapat mendeskripsikan pengetahuan secara deklaratif ataupun prosedural. Contoh frame untuk menggambarkan sebuah mobil diberikan dalam Gambar II-4 berikut ini.
Gambar II-4. Bingkai pengetahuan untuk sebuah mobil
F. Bagaimana Sistem Pakar Melakukan Inferensi?
1. Sistem Perantaian Maju (Forward Chaining Systems)
Pada sistem perantaian maju, fakta-fakta dalam dalam sistem disimpan dalam memori kerja dan secara kontinyu diperbarui. Aturan dalam sistem merepresentasikan aksi-aksi yang harus diambil apabila terdapat suatu kondisi khusus pada item-item dalam memori kerja, sering disebut aturan kondisi-aksi. Kondisi biasanya berupa pola yang cocok dengan item yang ada di dalam memori kerja, sementara aksi biasanya berupa penambahan atau penghapusan item dalam memori kerja.
Aktivitas sistem dilakukan berdasarkan siklus mengenal-beraksi (recognise-act). Mula-mula, sistem mencari semua aturan yang kondisinya terdapat di memori kerja, kemudian memilih salah satunya dan menjalankan aksi yang bersesuaian dengan aturan tersebut. Pemilihan aturan yang akan dijalankan (fire) berdasarkan strategi tetap yang disebut strategi penyelesain konflik. Aksi tersebut menghasilkan memori kerja baru, dan siklus diulangi lagi sampai tidak ada aturan yang dapat dipicu (fire), atau goal (tujuan) yang dikehendaki sudah terpenuhi.
Sebagai contoh, lihat pada sekumpulan aturan sederhana berikut (Di sini kita memakai kata yang diawali huruf kapital untuk menyatakan suatu variabel. Pada sistem lain, mungkin dipakai cara lain, misalnya menggunakan awalan ? atau ^):
1. JIKA (mengajar X) DAN (mengoreksi_tugas X) MAKA TAMBAH (terlalu_banyak_bekerja X)
2. JIKA (bulan maret) MAKA TAMBAH (mengajar balza)
3. JIKA (bulan maret) MAKA TAMBAH (mengoreksi_tugas balza)
4. JIKA (terlalu_banyak_bekerja X) ATAU (kurang_tidur X) MAKA TAMBAH (mood_kurang_baik X)
5. JIKA (mood_kurang_baik X) MAKA HAPUS (bahagia X)
6. JIKA (mengajar X) MAKA HAPUS (meneliti X)
Kita asumsikan, pada awalnya kita mempunyai memori kerja yang berisi fakta berikut:
(bulan maret)
(bahagia balza)
(meneliti balza)
Sistem Pakar mula-mula akan memeriksa semua aturan yang ada untuk mengenali aturan manakah yang dapat memicu aksi, dalam hal ini aturan 2 dan 3. Sistem kemudian memilih
salah satu di antara kedua aturan tersebut dengan strategi penyelesaian konflik. Katakanlah aturan 2 yang terpilih, maka fakta (mengajar balza) akan ditambahkan ke dalam memori kerja. Keadaan memori kerja sekarang menjadi:
(mengajar balza)
(bulan maret)
(bahagia balza)
(meneliti balza)
Sekarang siklus dimulai lagi, dan kali ini aturan 3 dan 6 yang kondisinya terpenuhi. Katakanlah aturan 3 yang terpilih dan terpicu, maka fakta (mengoreksi_tugas balza) akan ditambahkan ke dalam memori kerja. Lantas pada siklus ketiga, aturan 1 terpicu, sehingga variabel X akan berisi (bound to) balza, dan fakta (terlalu_banyak_bekerja balza) ditambahkan, sehingga isi memori kerja menjadi:
(terlalu_banyak_bekerja balza)
(mengoreksi_tugas balza)
(mengajar balza)
(bulan maret)
(bahagia balza)
(meneliti balza)
Aturan 4 dan 6 dapat diterapkan. Misalkan aturan 4 yang terpicu, sehingga fakta (mood_kurang_baik balza) ditambahkan. Pada siklus berikutnya, aturan 5 terpilih dan dipicu, sehingga fakta (bahagia balza) dihapus dari memori kerja. Kemudian aturan 6 akan terpicu dan fakta (meneliti balza) dihapus pula dari memori kerja menjadi:
(mood_kurang_baik balza)
(terlalu_banyak_bekerja balza)
(mengoreksi_tugas balza)
(mengajar balza)
(bulan maret)
Urutan aturan yang dipicu bisa jadi sangat vital, terutama di mana aturan-aturan yang ada dapat mengakibatkan terhapusnya item dari memori kerja. Tinjau kasus berikut: andaikan terdapat tambahan aturan pada kumpulan aturan di atas, yaitu:
7. JIKA (bahagia X) MAKA TAMBAH (memberi_nilai_bagus X)
Jika aturan 7 ini terpicu sebelum (bahagia balza) dihapus dari memori, maka Sistem Pakar akan berkesimpulan bahwa saya akan memberi nilai bagus. Namun jika aturan 5 terpicu dahulu, maka aturan 7 tidak akan dijalankan (artinya saya tidak akan memberi nilai bagus).
2. Strategi penyelesaian konflik (conflict resolution strategy)
Strategi penyelesaian konflik dilakukan untuk memilih aturan yang akan diterapkan apabila terdapat lebih dari 1 aturan yang cocok dengan fakta yang terdapat dalam memori kerja. Di antaranya adalah:
a. No duplication. Jangan memicu sebuah aturan dua kali menggunakan fakta/data yang sama, agar tidak ada fakta yang ditambahkan ke memori kerja lebih dari sekali.
b. Recency. Pilih aturan yang menggunakan fakta yang paling baru dalam memori kerja. Hal ini akan membuat sistem dapat melakukan penalaran dengan mengikuti rantai tunggal ketimbang selalu menarik kesimpulan baru menggunakan fakta lama.
c. Specificity. Picu aturan dengan fakta prakondisi yang lebih spesifik (khusus) sebelum aturan yang mengunakan prakondisi lebih umum. Contohnya: jika kita mempunyai aturan “JIKA (burung X) MAKA TAMBAH (dapat_terbang X)” dan “JIKA (burung X) DAN (pinguin X) MAKA TAMBAH (dapat_berenang X)” serta fakta bahwa tweety adalah seekor pinguin, maka lebih baik memicu aturan kedua dan menarik kesimpulan bahwa tweety dapat berenang.
d. Operation priority. Pilih aturan dengan prioritas yang lebih tinggi. Misalnya ada fakta (bertemu kambing), (ternak kambing), (bertemu macan), dan (binatang_buas macan), serta dua aturan: “JIKA (bertemu X) DAN (ternak X) MAKA TAMBAH (memberi_makan X)” dan “JIKA (bertemu X) DAN (binatang_buas X) MAKA TAMBAH (melarikan_diri)”, maka kita akan memilih aturan kedua karena lebih tinggi prioritasnya.
3. Sistem Perantaian Balik (Backward Chaining Systems)
Sejauh ini kita telah melihat bagaimana sistem berbasis aturan dapat digunakan untuk menarik kesimpulan baru dari data yang ada, menambah kesimpulan ini ke dalam memori kerja. Pendekatan ini berguna ketika kita mengetahui semua fakta awalnya, namun tidak dapat menebak konklusi apa yang bisa diambil. Jika kita tahu kesimpulan apa yang seharusnya, atau mempunyai beberapa hipotesis yang spesifik, maka perantaian maju di atas menjadi tidak efisien. Sebagai contoh, jika kita ingin mengetahui apakah saya dalam keadaan mempunyai mood yang baik sekarang, kemungkinan kita akan berulangkali memicu aturan-aturan dan memperbarui memori kerja untuk mengambil kesimpulan apa yang terjadi pada bulan Maret, atau apa yang terjadi jika saya mengajar, yang sebenarnya perlu terlalu kita ambil pusing. Dalam hal ini yang diperlukan adalah bagaimana dapat menarik kesimpulan yang relevan dengan tujuan atau goal.
Hal ini dapat dikerjakan dengan perantaian balik dari pernyataan goal (atau hipotesis yang menarik bagi kita). Jika diberikan sebuah goal yang hendak dibuktikan, maka mula-mula sistem akan memeriksa apakah goal tersebut cocok dengan fakta-fakta awal yang dimiliki. Jika ya, maka goal terbukti atau terpenuhi. Jika tidak, maka sistem akan mencari aturan-aturan yang konklusinya (aksinya) cocok dengan goal. Salah satu aturan tersebut akan dipilih, dan sistem kemudian akan mencoba membuktikan fakta-fakta prakondisi aturan tersebut menggunakan prosedur yang sama, yaitu dengan menset prakondisi tersebut sebagai goal baru yang harus dibuktikan.
Perhatikan bahwa pada perantaian balik, sistem tidak perlu memperbarui memori kerja, namun perlu untuk mencatat goal-goal apa saja yang dibuktikan untuk membuktikan goal utama (hipotesis).
Secara prinsip, kita dapat menggunakan aturan-aturan yang sama untuk perantaian maju dan balik. Namun, dalam prakteknya, harus sedikit dimodifikasi. Pada perantaian balik, bagian MAKA dalam aturan biasanya tidak diekspresikan sebagai suatu aksi untuk dijalankan (misalnya TAMBAH atau HAPUS), tetapi suatu keadaan yang bernilai benar jika premisnya (bagian JIKA) bernilai benar. Jadi aturan-aturan di atas diubah menjadi:
1. JIKA (mengajar X) DAN (mengoreksi_tugas X) MAKA (terlalu_banyak_bekerja X)
2. JIKA (bulan maret) MAKA (mengajar balza)
3. JIKA (bulan maret) MAKA (mengoreksi_tugas balza)
4. JIKA (terlalu_banyak_bekerja X) ATAU (kurang_tidur X) MAKA (mood_kurang_baik X)
5. JIKA (mood_kurang_baik X) MAKA TIDAK BENAR (bahagia X)
dengan fakta awal:
(bulan maret)
(meneliti balza)
Misalkan kita hendak membuktikan apakah mood sedang kurang baik. Mula-mula kita periksa apakah goal cocok dengan fakta awal. Ternyata tidak ada fakta awal yang menyatakan demikian, sehingga langkah kedua yaitu mencari aturan mana yang mempunyai konklusi (mood_kurang_baik balza). Dalam hal ini aturan yang cocok adalah aturan 4 dengan variabel X diisi dengan (bound to) balza. Dengan demikian kita harus membuktikan bahwa prakondisi aturan ini, (terlalu_banyak_bekerja balza) atau (kurang_tidur balza), salah satunya adalah benar (karena memakai ATAU). Lalu diperiksa aturan mana yang dapat membuktikan bahwa adalah (terlalu_banyak_bekerja balza) benar, ternyata aturan 1, sehingga prakondisinya, (mengajar X) dan (mengoreksi_tugas X), dua-duanya adalah benar (karena memakai DAN). Ternyata menurut aturan 2 dan 3, keduanya bernilai bernilai benar jika (bulan maret) adalah benar. Karena ini sesuai dengan fakta awal, maka keduanya bernilai benar. Karena semua goal sudah terpenuhi maka goal utama (hipotesis) bahwa mood saya sedang kurang baik adalah benar (terpenuhi).
Untuk mencatat goal-goal yang harus dipenuhi/dibuktikan, dapat digunakan stack (tumpukan). Setiap kali ada aturan yang konklusinya cocok dengan goal yang sedang dibuktikan, maka fakta-fakta prakondisi dari aturan tersebut ditaruh (push) ke dalam stack sebagai goal baru. Dan setiap kali goal pada tumpukan teratas terpenuhi atau dapat dibuktikan, maka goal tersebut diambil (pop) dari tumpukan. Demikian seterusnya sampai tidak ada goal lagi di dalam stack, atau dengan kata lain goal utama (yang terdapat pada tumpukan terbawah) sudah terpenuhi.
4. Pemilihan Sistem Inferensi
Secara umum kita dapat memakai panduan berikut untuk menentukan apakah kita hendak memilih perantaian maju atau balik untuk Sistem Pakar yang kita bangun. Panduan tersebut tercantum dalam Tabel II-1 berikut ini.
Tabel II-1. Panduan untuk memilih sistem inferensi
5. Ketidakpastian dalam Aturan
Sejauh ini kita menggunakan nilai kebenaran tegas dalam fakta dan aturan yang dipakai, misalnya: jika terlalu banyak bekerja maka pasti mood kurang baik. Pada kenyataanya, seringkali kita tidak bisa membuat aturan yang absolut untuk mengambil kesimpulan secara pasti, misalnya: jika terlalu banyak bekerja maka kemungkinan besar mood kurang baik. Untuk itu, seringkali aturan yang dipakai memiliki nilai kepastian (certainty value). Contohnya: jika terlalu banyak bekerja maka pasti mood kurang baik (kepastian 0,75).
G. Contoh Aplikasi Sistem Pakar
1. Aplikasi Sederhana: Sistem Pakar Bengkel Mobil
Ini adalah contoh Sistem Pakar sederhana, yang bertujuan untuk mencari apa yang salah sehingga mesin mobil pelanggan yang tidak mau hidup, dengan memberikan gejala-gejala yang teramati. Anggap Sistem Pakar kita memiliki aturan-aturan berikut:
1. JIKA mesin_mendapatkan_bensin DAN starter_dapat_dihidupkan MAKA ada_masalah_dengan_pengapian
2. JIKA TIDAK BENAR starter_dapat_dihidupkan DAN TIDAK BENAR lampu_menyala MAKA ada_masalah_dengan_aki
3. JIKA TIDAK BENAR starter_dapat_dihidupkan DAN lampu_menyala MAKA ada_masalah_dengan_starter
4. JIKA ada_bensin_dalam_tangki_bahan_bakar MAKA mesin_mendapatkan_bensin
Terdapat 3 masalah yang mungkin, yaitu: ada_masalah_dengan_pengapian, ada_masalah_dengan_aki dan ada_masalah_dengan_starter. Dengan sistem terarah-tujuan (goal-driven), kita hendak membuktikan keberadaan setiap masalah tadi.
Pertama, Sistem Pakar berusaha untuk membuktikan kebenaran ada_masalah_dengan_pengapian. Di sini, aturan 1 dapat digunakan, sehingga Sistem Pakar akan menset goal baru untuk membuktikan apakah mesin_mendapatkan_bensin serta starter_dapat_dihidupkan. Untuk membuktikannya, aturan 4 dapat digunakan, dengan goal baru untuk membuktikan mesin_mendapatkan_bensin. Karena tidak ada aturan lain yang dapat digunakan menyimpulkannya, sedangkan sistem belum memperoleh solusinya, maka Sistem Pakar kemudian bertanya kepada pelanggan: “Apakah ada bensin dalam tangki bahan bakar?”. Sekarang, katakanlah jawaban klien adalah “Ya”, jawaban ini kemudian dicatat, sehingga klien tidak akan ditanyai lagi dengan pertanyaan yang sama.
Nah, karena sistem sekarang sudah dapat membuktikan bahwa mesin mendapatkan bensin, maka sistem sekarang berusaha mengetahui apakah starter_dapat_dihidupkan. Karena sistem belum tahu mengenai hal ini, sementara tidak ada aturan lagi yang dapat menyimpulkannya, maka Sistem Pakar bertanya lagi ke klien: “Apakah starter dapat dihidupkan?”. Misalkan jawabannya adalah “Tidak”, maka tidak ada lagi aturan yang dapat membuktikan ada_masalah_dengan_pengapian, sehingga Sistem Pakar berkesimpulan bahwa hal ini bukanlah solusi dari problem yang ada, dan kemudian melihat hipotesis berikutnya: ada_masalah_dengan_aki. Sudah diketahui (dibuktikan) bahwa mesin tidak dapat distarter, sehingga yang harus dibuktikan adalah bahwa lampu tidak menyala. Sistem Pakar kemudian bertanya: “Apakah lampu menyala?”. Misalkan jawabannya adalah “Tidak”, maka sudah terbukti bahwa ada masalah dengan aki.
Sistem ini mungkin berhenti sampai di sini, tetapi biasanya ada kemungkinan terdapat lebih dari satu solusi (misalnya terdapat lebih dari satu kerusakan), atau ada kemungkinan terdapat solusi lain yng lebih tepat, sehingga biasanya semua hipotesis diperiksa kebenarannya. Sistem Pakar ini kemudian mencoba membuktikan bahwa ada_masalah_dengan_starter, namun dari fakta yang sudah diperoleh, yaitu lampu tidak menyala, maka pembuktiannya menjadi gagal. Dengan demikian solusi yang diberikan oleh Sistem Pakar adalah ada masalah dengan aki.
Kesimpulan
Exspert System atau sistem pakar merupakan sistem yang yang membantu untuk memecahkan masalah atau mengdiagnosa suatu masalah berdasarkan penilaian dari ahli yang dibuat menjadi sebuah aplikasi atau website, sehingga pengguna atau user bisa tau apa permasalahan yang dialami secara peraktis

Sumber
https://birtandp.wordpress.com/tag/apa-itu-expert-system/

Sabtu, 23 April 2016

Tugas Layanan Sistem Informasi Manajemen

A. Apa itu service managemen

ITSM (Information Technology Service Management, Manajemen Layanan Teknologi Informasi) adalah suatu metode pengelolaan sistem teknologi informasi (TI) yang secara filosofis terpusat pada perspektif konsumen layanan TI terhadap bisnis perusahaan. ITSM merupakan kebalikan dari pendekatan manajemen TI dan interaksi bisnis yang terpusat pada teknologi. Istilah ITSM tidak berasal dari suatu organisasi, pengarang, atau pemasok tertentu dan awal penggunaan frasa inipun tidak jelas kapan dimulainya.

ITSM berfokus pada proses dan karenanya terkait dan memiliki minat yang sama dengan kerangka kerja dan metodologi gerakan perbaikan proses (seperti TQM, Six Sigma,Business Process Management, dan CMMI). Disiplin ini tidak memedulikan detail penggunaan produk suatu pemasok tertentu atau detail teknis suatu sistem yang dikelola, melainkan berfokus pada upaya penyediaan kerangka kerja untuk menstrukturkan aktivitas yang terkait dengan TI dan interaksi antara personel teknis TI dengan pengguna teknologi informasi.

ITSM umumnya menangani masalah operasional manajemen teknologi informasi (kadang disebut operations architecture, arsitektur operasi) dan bukan pada pengembangan teknologinya sendiri. Contohnya, proses pembuatan perangkat lunak komputer untuk dijual bukanlah fokus dari disiplin ini, melainkan sistem komputer yang digunakan oleh bagian pemasaran dan pengembangan bisnis di perusahaan perangkat lunak-lah yang merupakan fokus perhatiannya. Banyak pula perusahaan non-teknologi, seperti pada industri keuangan, ritel, dan pariwisata, yang memiliki sistem TI yang berperan penting, walaupun tidak terpapar langsung kepada konsumennya.

Sesuai dengan fungsi ini, ITSM sering dianggap sebagai analogi disiplin ERP pada TI, walaupun sejarahnya yang berakar pada operasi TI dapat membatasi penerapannya pada aktivitas utama TI lainnya seperti manajemen portfolio TI dan rekayasa perangkat lunak.

B. Service strategi

Service Strategy memberikan panduan kepada pengimplementasi ITSM pada bagaimana memandang konsep ITSM bukan hanya sebagai sebuah kemampuan organisasi (dalam memberikan, mengelola serta mengoperasikan layanan TI), tapi juga sebagai sebuah aset strategis perusahaan. Panduan ini disajikan dalam bentuk prinsip-prinsip dasar dari konsep ITSM, acuan-acuan serta proses-proses inti yang beroperasi di keseluruhan tahapan ITIL Service Lifecycle.

Topik-topik yang dibahas dalam tahapan lifecycle ini mencakup pembentukan pasar untuk menjual layanan, tipe-tipe dan karakteristik penyedia layanan internal maupun eksternal, aset-aset layanan, konsep portofolio layanan serta strategi implementasi keseluruhan ITIL Service Lifecycle. Proses-proses yang dicakup dalam Service Strategy, di samping topik-topik di atas adalah:
1. Service Portfolio Management
2. Financial Management
3. Demand Management

Bagi organisasi TI yang baru akan mengimplementasikan ITIL, Service Strategy digunakan sebagai panduan untuk menentukan tujuan/sasaran serta ekspektasi nilai kinerja dalam mengelola layanan TI serta untuk mengidentifikasi, memilih serta memprioritaskan berbagai rencana perbaikan operasional maupun organisasional di dalam organisasi TI.

Bagi organisasi TI yang saat ini telah mengimplementasikan ITIL, Service Strategy digunakan sebagai panduan untuk melakukan review strategis bagi semua proses dan perangkat (roles, responsibilities, teknologi pendukung, dll) ITSM di organisasinya, serta untuk meningkatkan kapabilitas dari semua proses serta perangkat ITSM tersebut.

C. Service Desain

Agar layanan TI dapat memberikan manfaat kepada pihak bisnis, layanan-layanan TI tersebut harus terlebih dahulu di desain dengan acuan tujuan bisnis dari pelanggan. Service Design memberikan panduan kepada organisasi TI untuk dapat secara sistematis dan best practice mendesain dan membangun layanan TI maupun implementasi ITSM itu sendiri. Service Design berisi prinsip-prinsip dan metode-metode desain untuk mengkonversi tujuan-tujuan strategis organisasi TI dan bisnis menjadi portofolio/koleksi layanan TI serta aset-aset layanan, seperti server, storage dan sebagainya.

Ruang lingkup Service Design tidak melulu hanya untuk mendesain layanan TI baru, namun juga proses-proses perubahan maupun peningkatan kualitas layanan, kontinyuitas layanan maupun kinerja dari layanan.
Proses-proses yang dicakup dalam Service Design yaitu:

1. Service Catalog Management
2. Service Level Management
3. Supplier Management
4. Capacity Management
5. Availability Management
6. IT Service Continuity Management
7. Information Security Management

D. Service Transition

Service Transition menyediakan panduan kepada organisasi TI untuk dapat mengembangkan serta kemampuan untuk mengubah hasil desain layanan TI baik yang baru maupun layanan TI yang diubah spesifikasinya ke dalam lingkungan operasional. Tahapan lifecycle ini memberikan gambaran bagaimana sebuah kebutuhan yang didefinisikan dalam Service Strategy kemudian dibentuk dalam Service Design untuk selanjutnya secara efektif direalisasikan dalam Service Operation.

Proses-proses yang dicakup dalam Service Transition yaitu:

1. Transition Planning and Support
2. Change Management
3. Service Asset & Configuration Management
4. Release & Deployment Management
5. Service Validation
6. Evaluation
7. Knowledge Management

REFERENSI :

Jumat, 08 April 2016

Analisa Jurnal ITSM

“ KERANGKA PEMILIHAN PERANGKAT LUNAK SERVICE DESK  SEBAGAI REKOMENDASI IMPLEMENTASI IT SERVICE MANAGEMENT (ITSM) & FRAMEWORK DAN IBM TERHADAP PERKEMBANGAN ITIL “



Analisa Jurnal

ABSTRAK
Perusahaan di masa kini telah mengalami kemajuan dengan penggunaan Informasi Teknologi (IT). Pengaplikasian IT telah membantu di berbagai sektor seperti finance, human resource, sales dan procurement. Hal ini tentu saja membuat usaha yang ada harus bersaing untuk memberikan nilai lebih dalam produk mereka. Pelanggan saat ini menjadi semakin jeli dengan adanya bantuan dari IT untuk memilih produk. Oleh sebab itu dibutuhkan metode baru yang dapat digunakan supaya pelanggan yang ada tetap atau bertambah loyal dengan perusahaan tersebut. Kualitas pelayanan menjadi bagian penting bagi sebuah perusahaan atau organisasi. Oleh karena itu ITSM (IT Service Management) yang mengacu pada implementasi dan manajemen layanan teknologi informasi yang berkualitas yang dilakukan oleh para penyedia IT melalui proses, sumber daya manusia, dan IT. ITSM erat kaitanya dengan ITIL ( IT Information Library) yaitu ITSM framework yang dikembangkan pemerintahan Inggris. Salah satu solusi yang efektif adalah dengan peningkatan kualitas dari pelayanan (service) kepada pelanggan mereka. Beberapa referensi menunjukkan bahwa implementasi Service desk merupakan awal yang baik bagi organisasi TI kecil yang ingin menerapkan ITSM.  Dan IBM sebagai salah satu perusahaan yang sudah mapan kini memfokuskan sumber dayanya pada bidang pelayanan guna mempertahankan pelanggan mereka. Dengan metode framework ITIL, IBM berhasil mengimplementasi dan meningkatkan kemampuan mereka dalam memberikan jasa terbaik kepada pelanggan.




Analisa Jurnal

          IT Service Management (ITSM) 
Alasan penerapan service management menurut ITIL adalah untuk mengarahkan  organisasi IT service provider, yaitu “untuk mencapai efisiensi dan efektivitas IT sembari meningkatkan kualitas service terhadap bisnis sesuai biaya yang disediakan”.  Rob Addy menekankan bahwa manajemen suatu service harus berfokus pada tiga pertanyaan yaitu, apa yang perlu kita lakukan sekarang, apa yang perlu kita lakukan bila terjadi  kesalahan, dan bagaimana agar segalanya dapat berjalan lancar untuk seterusnya. Pertanyaan tersebut memerlukan jawaban yang melibatkan manusia, proses, dan aset dalam lingkaran  siklus yang terus menerus dalam rangka menuju perbaikan ataupun penyesuaian terhadap  perubahan-perubahan.  

          IT Infrastructure Library (ITIL) 
ITIL dikembangkan oleh The Office of Government Commerce (OGC) suata badan dibawah  pemerintah Inggris, dengan bekerja sama dengan The  IT Service Management Forum (itSMF) dan British  Standard Institute (BSI). ITIL merupakan suatu  framework pengelolaan layanan TI (IT Service  Management – ITSM) yang sudah diadopsi sebagai  standar industri pengembangan industri perangkat  lunak di dunia.    
ITSM memfokuskan diri pada 3 (tiga) tujuan  utama, yaitu:
1.     Menyelaraskan layanan TI dengan kebutuhan  sekarang dan akan datang dari bisnis dan  pelanggannya.
2.     Memperbaiki kualitas layanan-layanan TI. 
3.     Mengurangi biaya jangka panjang dari penge- lolaan layanan-layanan tersebut.   
Standar ITIL berfokus kepada pelayanan customer, dan sama sekali tidak menyertakan proses  penyelarasan strategi perusahaan terhadap strategi TI yang dikembangkan.

          IT infrastructure Library (ITIL) merupakan dokumentasi best practice ITSM yang  komprehensif dan konsisten. ITIL merupakan kerangka kerja yang sangat luas yang  menggambarkan keseluruhan ITSM dalam beberapa modul. dibelakang pengembangan  ITIL adalah kesadaran bahwa organisasi pada umumnya, dan service provider pada khususnya,  sangat bergantung pada TI dalam memenuhi tujuan organisasi dan kebutuhan bisnis customer  mereka. Pertumbuhan ketergantungan ini menyebabkan peningkatan permintaan/ kebutuhan  akan service TI yang berkualitas tinggi.

Kelebihan & kelemahan ITIL atau ITSM lain :
          ITIL (Information Techonology Infrastructure Library) merupakan salah satu kerangka kerja atau framework dalam penerapan ITSM (Information Technology Service Management). ITIL memberikan layanan untuk mengelola layanan TI. Dalam pengimplementasian ITSM dalam perusahaan, ITIL memiliki beberapa keuntungan atau kelebihan, yaitu:
1.     Pelayanan ITIL yang sudah terbukti dan digunakan secara global
ITIL memberikan konsep umum dan istilah dalam serangkaian best practice terintegrasi yang berkembang untuk memenuhi kebutuhan pasar dalam siklusnya secara berkelanjutan. Organisasi di seluruh dunia telah menunjukkan bahwa mereka dapat beradptasi  dan menyesuaikan ITIL sesuai dengan kebutuhan bisnis mereka.
2.     Peningkatan kepuasan dan hubungan pelanggan dengan perusahaan
ITIL dirancang untuk membantu setiap orang untuk memusatkan perhatian mereka pada kebutuhan pelanggan dan pengalaman user daripada terlalu berfokus kepada masalah teknologi.
3.     Kualitas layanan yang lebih baik
Dengan mengadopsi konsep yang sudah terbukti, penyedia layanan dapat dengan mudah memberikan layanan secara konsesten denga tingkatan layanan yang sudah disepakati, efisien dan efektif. Tim support dapat memberikan layanan dengan cepat, mengurangi downtime dan gangguan.
4.     Optimalisasi penyediaan layanan di seluruh supply chain
ITIL menawarkan peluang yang signifikan untuk penyederhanaan dan stadarisasi di seluruh partner dagang. ITIL menyediakan proses dan model untuk membantu penyedia layanan untuk bekerja dengan bisnis mereka, pelanggan, user dan pemasok untuk membuat keputusan bisnis mengenai peluang investasi, optimalisasi baya, manajemen resiko, dan prioritas untuk perbaikan. Manfaat dari penerapan best practice dari ITIL adalah:
-         Berkurangnya biaya support sebesar 30%
-          Meningkatkan penanggulangan insiden dengan cepat sebesar 20%
-         Peningkatan nilai dari  portofolio layanan dengan pengurangan biaya dan resiko.
-         Keunggulan kompetitif melalui value creation dan agile change
5.     Dengan mengadopsi lifecycle layanan ITIL, organisasi atau perusahaan dapat berfokus pada pemberian nilai kepada pelanggan dengan cepat dapat menyesuaikan perubahan bisnis dan TI.
Manfaatnya meliputi:
-         Pengurangan cycle time untuk proyek dengan perubahan sebesar 30% menjadi 50%
-         Meningkatnya tingkat keberhasilan terhadap perubahan
-         Pengurangan resiko dari perubahan tidak terduga
6.     Produktifitas yang lebih baik bagi perusahaan
7.     Peningkatan quality control
8.     Pemanfaatan skill dan pengalaman dari karyawan dengan lebih maksimal
9.     Pemanfaatan standar industri untuk penyediaan layanan TI berkualitas tinggi sesuai dengan implentasi perusahaan berskala kecil maupun berskala besar

Terlepas dari keuntungan dari pengimplementasian ITSM dengan menggunakan konsep atau framework ITIL, ITIL memiliki beberapa kelemahan, yaitu:
1.     Konsep dari ITIL yang komprehensif dalam sifatnya dan penggunaan yang lus dapat menyebabkan biaya yang cukup besar.
2.     Versi 3 dari ITIL mencakup keseluruhan lifecycle sehingga tidak mudah dimengerti, dimana versi 2 dari ITIL hanya berfokus pada produksi dan support untuk proses sederhana sehingga lebih mudah untuk dimengerti.
3.     Buku-buku ITIL terlalu mahal sehingga tidak terjangkau bagi pengguna non-komersial.
4.      Implementasi dan credentialing dari ITIL membutuhkan pelatihan khusus
5.     ITIL mendapat kritikan dari beberapa profesional ICT mengenai sifatnya yang subjektif dan     emotional degradation yang berkaitan dengan perubahan work practice
6.     ITIL bersifat holistic yang mencakup semua kerangka kerja untuk tatakelola TI
7.     Biaya sertifikasi ITIL terlalu tinggi (Zahid, 2009)


ITSM mempengaruhi setiap bagian dari sebuah organisasi, dan diperlukan untuk mendukung tujuan bisnis, dan memiliki kesamaan dengan program-program ERP yang sudah sangat mendunia dimana keduanya membutuhkan integrasi serta konsistensi di dalam sebuah organisasi atau perusahaan.
Berikut adalah komponen yang dipengaruhi oleh ITSM.
1.     Proses, menerapkan kebijakan dengan mengintegrasikan informasi, teknologi dan SDM dengan proses yang terotomatisasi.
2.     Informasi, menjadi lebih standard, terdistribusi dan mudah di akses.
3.     Teknologi, untuk mengintegrasikan dan mengotomatisasikan tugas dan proses-proses yang ada.
4.     Sumber daya manusia (people), menentukan peran dan kewajiban dengan jelas untuk menghasilkan keputusan.

          IBM dan ITIL
IBM (International Business Machines Corporation) merupakan perusahaan multinasional berasal dari Amerika, yang bergerak di bidang teknologi dan konsultasi. Melihat perkembangan dan pentingnya pengelolaan layanan teknologi informasi, maka IBM meluncurkan berbagai solusi yang dapat membantu perusahaan dalam mengelola service management. IBM Global Service menerapkan sebuah kombinasi dari kemampuan, asset, dan metode untuk membantu memastikan kita secara sukses menggunakan kapabilitas dan menerapkan best practices ITIL pada service management program (IBM, 2004).
Menurut IBM global service ITSM mempengaruhi setiap bagian dari sebuah organisasi, dan diperlukan untuk mendukung tujuan bisnis, dan memiliki kesamaan dengan program-program ERP yang sudah sangat mendunia dimana keduanya membutuhkan integrasi serta konsistensi di dalam sebuah organisasi atau perusahaan. Berikut adalah komponen yang dipengaruhi oleh ITSM.

1.      Proses, menerapkan kebijakan dengan mengintegrasikan informasi, teknologi dan SDM dengan proses yang terotomatisasi.
2.      Informasi, menjadi lebih standard, terdistribusi dan mudah di akses.
3.      Teknologi, untuk mengintegrasikan dan mengotomatisasikan tugas dan proses-proses yang ada.
4.      Sumber daya manusia (people), menentukan peran dan kewajiban dengan jelas untuk menghasilkan keputusan.


          Service Desk Menurut ITIL 
Service Desk Merupakan sebuah fungsi organisasi TI, bisa berupa sebuah subdepartemen atau subbagian, yang menjadi tempat terjadinya kontak atau interaksi antara TI dengan user  dan customer (untuk selanjutnya disebut sebagai pihak bisnis). Tugas utama dari Service Desk pada tingkatan strategis organisasi adalah meningkatkan  kualitas layanan TI serta bertindak sebagai perwakilan atau juru bicara TI terhadap pihak  bisnis. Sedangkan pada tingkatan operasional, Service Desk bertugas sebagai Single Point of Contact untuk memberikan panduan, nasihat, serta pemulihan layanan, jika terjadi gangguan kepada bisnis









KESIMPULAN

   Berdasarkan pembahasan diatas, maka dapat disimpulkan beberapa hal yaitu :
-         ITSM dapat membantu dalam meningkatkan kualitas pelayanan di perusahaan dengan meningkatkan integrasi dengan IT
-         ITSM menjadi solusi bagi perusahaan yang telah dapat menyediakan produk yang baik namun ingin meningkatkan nilai jualnya kepada customer atau pelanggan.
-         ITSM memberikan kesempatan bagi perusahaan untuk dapat melakukan antisipasi  terhadap kebutuhan pelanggan dan menyajikan layanan yang terbaik bagi para pelanggan.



SUMBER :
ceur-ws/org/Vol-1023/paper8.pdf