1.
Pengertian
Sistem Pakar
Kecerdasan
Buatan (Artificial Intelegent) merupakan salah satu bagian dari ilmu komputer
yang membuat agar komputer dapat melakukan pekerjaan seperti yang dilakukan
manusia (Sri Kusumadewi, 2003).
Kecerdasan buatan memiliki banyak bidang terapan diantaranya Expert Sistem
(sistem pakar), Natural Language Processing (pemrosesan bahasa ilmiah),
Computer Visio (mengintrepetasi gambar melalui komputer), Intelligence Computer
Aided Instruction (tutor dalam melatih dan mengajar), Speech Recognition
(pengenalan ucapan), Robotics and Sensory Sistem (robotika dan sistem sensor).
Sistem
pakar adalah suatu sistem informasi yang berusaha mengadopsi pengetahuan dari
manusia ke komputer, agar komputer dapat menyelesaikan masalah layaknya seorang
pakar (Sri Kusumadewi, 2003).
Sedangkan pengertian sistem informasi adalah kumpulan elemen yang saling
berhubungan satu dengan yang lain untuk membentuk suatu kesatuan untuk
mengintegrasi data, memproses dan menyimpan serta mendistribusikan informasi
tersebut (Budi Sutejo, 2006).
Pada
dasarnya sistem pakar diterapkan untuk mendukung aktifitas
pemecahan masalah. Beberapa aktifitas pemecahan masalah yang dimaksud
seperti (Lestari, 2012):
a) Interpretasi
Membuat
kesimpulan atau deskripsi dari sekumpulan data mentah. Pengambilan keputusan
dari hasil observasi, termasuk pengenalan ucapan, analisis citra, interpretasi
sinyal, dll.
b) Prediksi
Memproyeksikan
akibat-akibat yang dimungkinkan dari situasi-situasi tertentu. Contoh: prediksi demografi, prediksi ekonomi, dll.
c) Diagnosis
Menentukan
sebab malfungsi dalam situasi kompleks yang didasarkan pada gejala-gejala yang
teramati diagnosis medis, elektronis, mekanis, dll.
d) Perancangan
(desain)
Menentukan
konfigurasi komponen-komponen sistem yang cocok dengan tujuan-tujuan kinerja
tertentu yang memenuhi kendala-kendala tertentu. Contoh: perancangan layout sirkuit, bangunan.
e) Perencanaan
Merencanakan
serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan kondisi
awal tertentu. Contoh: perencanaan keuangan, militer, dll.
f) Monitoring
Membandingkan
hasil pengamatan dengan kondisi yang diharapkan. Contoh : computer aided monitoring system.
g) Debugging
Menentukan
dan menginterpretasikan cara-cara untuk mengatasi malfungsi. Contoh: memberikan resep obat terhadap
kegagalan.
h) Instruksi
Mendeteksi
dan mengoreksi defisiensi dalam pemahaman domain subyek. Contoh: melakukan
instruksi untuk diagnosis dan debugging.
i) Kontrol
Mengatur
tingkah laku suatu environment yang kompleks. Contoh: melakukan kontrol terhadap interpretasi, prediksi, perbaikan
dan monitoring kelakukan sistem.
Dengan
sistem pakar, pemakai dapat memperoleh informasi yang berkualitas dengan mudah
seperti halnya memperoleh dari para ahli di bidangnya. Selain itu, sistem pakar
juga dapat membantu aktifitas para pakar sebagai asisten yang mempunyai
pengetahuan yang dibutuhkan.
2.
Kelebihan
dan Kekurangan Sistem Pakar
Sistem
pakar memiliki beberapa fitur yang merupakan kelebihannya (Rika Rosnelly, 2003), seperti:
a. Meningkatkan
ketersediaan (increased availability).
b. Mengurangi
biaya yang diperlukan untuk keahlian per satu orang pemakai.
c. Sistem
pakar menghasilkan solusi yang bersifat konsisten dibandingkan manusia yang
terkadang berubah-ubah karena kondisi fisiknya seperti saat kelelahan.
d. Sistem
pakar menjelaskan detail proses penalaran yang dilakukan sehingga mendapatkan
suatu kesimpulan.
e. Sistem
pakar relatif memberikan respon yang cepat dibandingkan seorang pakar.
f.
Sistem pakar dapat digunakan untuk
mengolah data basis pengetehuan secara baik.
g. Berperan
sebagai pembimbing yang pintar, sistem pakar memberikan kesempatan pada pemakai
untuk menjalankan contoh program dan menjelaskan proses penalaran yang benar.
Disamping
memiliki kelebihan, sistem pakar juga mempunyai kekurangan, Menurut M.Arhami (2005) kekurangan sistem pakar
adalah sebagai berikut:
a. Untuk
mendapatkan pengetahuan tidaklah selalu mudah, karena kadang kala pakar dari
masalah yang dibuat tidak ada, dan kalaupun ada, kadang- kadang pendekatan yang
dimilki oleh pakar tersebut berbeda-beda.
b. Untuk
membuat suatu sistem pakar yang benar-benar berkualitas, cukup sulit dan
membutuhkan biaya yang tidak sedikit untuk pengembangannya.
c. Kadang
kala sistem tidak menghasilkan sebuah
keputusan.
d. Sistem
pakar perlu diuji ulang secara teliti sebelum digunakan, sehingga dalam hal ini
faktor manusia tetaplah menjadi dominan.
3.
Elemen
Manusia Pada Sistem Pakar
Pengembangan
sistem pakar dari awal hingga menghasilkan solusi akhir melibatkan peran serta
4 kelompok (Rika Rosnelly, 2003) diantaranya:
a. Pakar
(expert )
Pakar
adalah individu yang memiliki pengetahuan khusus, pemahaman, pengalaman, dan metode-metode yang
digunakan untuk memecahkan persoalan dalam bidang tertentu. Selain itu seorang
pakar, juga memilki kemampuan untuk mengaplikasikan pengetahuannya dan
memberikan saran serta pemecahan masalah pada domain tertentu.
b. Pembangun pengetahuan (knowledge engineer)
Pembangun
pengetahuan adalah individu yang memiliki tugas menerjemahkan dan
mempresentasikan pengetahuan yang diperoleh dari pakar, baik berupa pengalaman
pakar dalam menyelesaikan masalah maupun sumber terdokumentasi lainnya ke dalam
bentuk yang diterima oleh sistem. Dalam hal ini, pembangun pengetahuan
mengintrepetasikan dan merepresentasikan pengetahuan dalam bentuk jawaban atas
pertanyaan – pertanyaan yang diajukan pada pakar atau pemahaman, penggambaran
analogis, sistemastis, konseptual yang diperoleh dari membaca beberapa dokumen
cetak seperti text book, jurnal, makalah, dan sebagainya.
c. Pembangun
Sistem (system engineer)
Pembangun
sistem adalah individu yang bertugas untuk merancang antar muka pemakai sistem pakar, merancang
pengetahuan yang sudah diterjemahkan oleh pembangun pengetahuan ke dalam bentuk
yang sesuai dan dapat diterima oleh sistem pakar dan mengimplementasikan ke
dalam mesin inferensi. Selain itu, pembangun sistem juga bertanggung jawab
apabila sistem pakar akan diintegrasikan
dengan sistem komputerisasi lain.
d. Pemakai
(user)
Banyak
sistem berbasis komputer mempunyai susunan pemakai tunggal. Hal ini berbeda dengan sistem pakar
yang memungkinkan mempunyai beberapa kelas pemakai. Tabel 2.0 berikut
menunjukkan beberapa contoh hubungan antara kelas pemakai, kepentingan pemakai
dan fungsi sistem pakar.
Tabel 2.0 Hubungan antar kelas
pemakai, kepentingan pemakai dan fungsi sistem pakar
Pemakai
|
Kepentingan
|
Fungsi
sistem pakar
|
Klien bukan pakar (masyarakat umum)
|
Mencari saran/nasehat, sarana
belajar
|
Konsultan atau penasehat
|
Pembangun sistem dan pengetahuan
|
Memperbaiki/menambah basis pengetahuan, merancang sistem
|
Partner
|
Pakar
|
Membantu analisis rutin atau proses
komputasi, mengklasifikasikan informasi, alat bantu diagnosa
|
Rekan kerja atau asisten
|
Sumber: Rika Rosnelly (2003)
4.
Struktur
Sistem Pakar
Menurut
Rika Rosnelly (2003), adapun struktur
sistem pakar dapat dilihat:
Gambar 2.1 : Struktur sistem pakar
Komponen
yang terdapat dalam struktur sistem pakar ini adalah sebagai berikut:
a. Basis Pengetahuan (Knowledge Base)
Basis
pengetahuan berisi pengetahuan untuk pemahaman, formulasi dan penyelesaian
masalah. Sistem pakar disusun atas dua elemen dasar yaitu fakta dan aturan.
Fakta merupakan informasi tentang objek dalam area permasalahan tertentu, sedangkan aturan merupakan
informasi cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui.
Pada struktur sistem pakar diatas, knowledge base berfungsi untuk menyimpan
pengetahuan dari pakar berupa rule / aturan (if <kondisi> then
<aksi> atau dapat juga disebut condition-action rules).
b. Mesin Inferensi (Inference Engine)
Mesin
Inferensi merupakan otak dari sebuah sistem pakar dan dikenal juga dengan
sebutan control structure atau rule interpreter (dalam sistem pakar berbasis
kaidah). Komponen ini berisi mekanisme pola pikir dan penalaran yang digunakan
oleh pakar dalam menyelesaikan suatu masalah. Mesin inferensi adalah processor
pada sistem pakar yang mencocokkan bagian kondisi dari rule yang tersimpan di
dalam knowledge base dengan fakta yang tersimpan di working memory. Ada beberapa teknik penalaran yang
dapat digunakan salah satunya adalah forward
chaining.
Foward
chaining merupakan pencocokan fakta atau pernyataan dimulai dari bagian kiri
(IF) atau dengan kata lain penalaran dimulai dari fakta terlebih dahulu untuk menguji kebenaran (Sri Kusumadewi, 2003). Metode ini sering disebut data-driven karena
mesin inferensi menggunakan informasi yang ditentukan oleh pemakai untuk
memindahkan ke seluruh jaringan dari logika „AND‟ dan „OR‟ sampai sebuah
terminal ditentukan sebagai objek. Bila mesin inferensi tidak dapat menentukan
objek maka akan meminta informasi lain. Aturan (Rule) dimana menentukan objek,
membentuk lintasan (path) yang mengarah ke objek. Oleh karena itu, hanya satu
cara untuk mencapai suatu objek adalah dengan memenuhi semua aturan.
Ada
dua pendapat mengenai pelaksanaan metode ini. Pertama dengan cara membawa
seluruh data yang didapat ke dalam sistem pakar. Kedua dengan membawa bagian
penting-penting saja dari data yang didapat ke dalam sistem pakar. Cara pertama
akan baik digunakan jika sistem pakar terhubung dengan proses otomatis dan
dapat menerima seluruh data dari basis data. Namun cara kedua lebih efisien
karena menghemat biaya dan waktu dengan mengambil data-data yang penting saja.
Contoh:
R1:
IF A and C, THEN E
R2:
IF D and C, THEN F
R3:
IF B and E, THEN F
R4:
IF B, THEN C
R5:
IF F, THEN G
Fakta
nya adalah: A benar dan B benar
Langkah
–langkahnya:
1) Dimulai dari
R1 Karena C dan E
tidak diketahui maka
tidak diambil kesimpulan.
Pencocokan lanjut di R2, ternyata di R2 juga tidak diambil kesimpulan. Lakukan hal sama pada R3,
kemudian pada R4 bernilai benar karena B
diketahui benar.
2) Selanjutnya
ke R5, namun tidak dapat diambil kesimpulan. Lalu kembali lagi ke atas, R1
bernilai benar karena A benar dan C benar maka F benar.
3) Lalu
ke R2, karena D belum diketahui kebenarannya makanya tidak dapat diambil
kesimpulan.
4) Lanjut
pada R3, karena B dan F benar maka E juga benar.
5) Selanjutnya
pada R5, karena F benar maka G benar. Sehingga dengan demikian G adalah
kesimpulannya.
Gambar 2.2 Diagram Pohon Foward Chaining
c. Memori Kerja (Working Memory)
Berguna
untuk menyimpan fakta yang dihasilkan oleh mesin inferensi dengan penambahan
parameter berupa derajat kepercayaan atau dapat juga dikatakan sebagai global
database dari fakta yang digunakan oleh aturan- aturan yang ada.
d. Fasilitas penjelasan (Explanation facility)
Menyediakan
kebenaran dari solusi yang dihasilkan kepada pemakai.
e. Akuisisi pengetahuan (Knowledge acquisition facility)
Meliputi
proses pengumpulan, pemindahan, dan perubahan dari kemampuan pemecahan masalah
seorang pakar atau sumber pengetahuan terdokumentasi ke program komputer yang
bertujuan untuk memperbaiki atau mengembangkan basis pengetahuan.
f. Tampilan pemakai (User Interface)
Mekanisme
untuk memberi kesempatan kepada pemakai dan sistem pakar untuk berkomunikasi
antar muka yaitu dengan menerima informasi dari pemakai dan mengubahnya ke
dalam bentuk yang dapat diterima oleh sistem. Selain itu antar muka menerima
informasi dari sistem dan menyajikannya ke dalam bentuk yang dapat dimengerti
oleh pemakai
5.
Jenis
– Jenis Metode Pengembangan Sistem
Dalam
membangun suatu sistem informasi diperlukan sebuah cara atau metode yang
dijadikan sebagai panduan untuk mendapatkan sistem yang diharapkan. Beberapa
metode pengembangan sistem adalah Prototype, Incremental, Code-and-fix, Star
Lifecycle, Spiral dan waterfall.
Metode
Waterfall atau dapat disebut sebagai model air terjun adalah satu metode dalam
pengembangan sistem yang mempunyai ciri khas pengerjaan setiap fase dalam
waterfall harus diselesaikan terlebih dahulu sebelum melanjutkan ke fase
selanjutnya.
Menurut
Kadir (2003), model waterfall
mempunyai langkah –langkah sebagai berikut:
Gambar 2.9 Model Waterfall
Berikut
adalah penjelasan dari tahap-tahap yang dilakukan di dalam model tersebut:
a. Analisa
Kebutuhan
Langkah
ini merupakan analisa terhadap kebutuhan sistem. Pengumpulan data dilakukan
melalui wawancara dan studi literatur. Sistem analis akan menggali informasi
sebanyak-banyaknya dari pemakai sehingga akan tercipta sebuah sistem komputer
yang melakukan tugas-tugas yang diinginkan oleh pemakai tersebut. Tahapan ini
akan menghasilkan dokumen pemakai recruitment atau dikatakan sebagai data yang
berhubungan dengan keinginan pemakai dalam pembuatan sistem. Dokumen ini lah
yang akan menjadi acuan sistem analis untuk menerjemahkan ke dalam bahasa
pemrograman
b. Desain
Sistem
Tahapan
dimana dilakukan penuangan pikiran dan perancangan sistem terhadap solusi dari
permasalahan yang ada dengan menggunakan perangkat pemodelan sistem seperti
diagram alir data (data flow diagram), serta use case diagram.
1) Data
Flow Diagram (DFD)
Data
Flow Diagram (DFD) adalah diagram yang menggunakan notasi simbol untuk
menggambarkan arus data sistem (Jogiyanto
Hartono, 2005).
DFD
merupakan gambaran sistem secara logika dari input sampai menghasilkan output
dan tidak terikat oleh perangkat keras, perangkat lunak, dan organisasi file.
DFD berfungsi memudahkan pemakai untuk memahami bagaimana proses kerja sistem
yang akan dibuat.
Tabel 2.4 Simbol – simbol DFD
Simbol
|
Nama
|
Keterangan
|
Entitas Eksternal
|
Entitas eksternal, dapat
berupa orang/unit terkait yang berinteraksi dengan sistem teteapi diluar sistem
|
|
Proses
|
Kegiatan dari hasil
suatu arus data yang masuk dalam proses dihasilkan arus data yang akan keluar
atau mengubah input menjadi output.
|
|
Aliran
data ( data flow)
|
Data mengalir melalui
sistem, dimulai dengan sebagian input dan diubah menjadi output.
|
|
Penyimpanan
data (data storage)
|
Data disimpan untuk
keperluan berikutnya
|
Adapun
tingkatan-tingkatan dari suatu DFD adalah sebagai berikut (Kendall, 2006) adalah
Diagram level 0, diagram level 1, diagram level n.
Gambar 2.10 Contoh DFD
2) Use
Case Diagram
Use
Case Diagram adalah model fungsional sebuah sistem yang menggunakan aktor dan
use case. Aktor berfungsi menjelaskan seseorang atau sesuatu yang berinteraksi
dengan sistem. Menurut Hendri et al (2008) use case adalah fasilitas atau
fungsi-fungsi yang disediakan untuk pemakainya.
Gambar 2.11 Contoh Use Case
c. Penulisan
Kode Program
Penulisan
kode program atau coding merupakan penerjemahan design dalam bahasa yang
dikenali oleh komputer. Dilakukan oleh programmer yang akan menerjemahkan
transaksi yang diminta oleh pemakai. Tahapan ini lah yang merupakan tahapan
secara nyata dalam mengerjakan suatu sistem. Dalam artian penggunaan komputer
akan dimaksimalkan dalam
tahapan ini. Setelah pengkodean
selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi.
Tujuan testing adalah menemukan kesalahan-kesalahan terhadap sistem tersebut
dan kemudian diperbaiki.
d. Pengujian
Program
Tahapan
akhir dimana sistem yang baru diuji kemampuan dan keefektifannya sehingga
didapatkan kekurangan dan kelemahan sistem yang kemudian dilakukan pengkajian
ulang dan perbaikan terhadap aplikasi menjadi lebih baik dan sempurna.
e. Penerapan
Program dan Pemeliharaan
Sistem
yang sudah disampaikan kepada pelanggan pasti akan mengalami perubahan.
Perubahan tersebut karena mengalami kesalahan karena sistem harus menyesuaikan
dengan lingkungan baru (periperal atau sistem operasi baru), atau karena
pelanggan membutuhkan perkembangan fungsional sehingga diperlukan pemeliharaan.
6.
Jaminan
Kualitas Sistem
Jaminan
kualitas sistem adalah aktifitas pelindung yang diaplikasikan pada seluruh
proses sistem. Tujuannya adalah untuk memberikan data yang diperlukan oleh
manajemen untuk menginformasikan masalah kualitas sistem, sehingga dapat
memberikan kepastian bahwa kualitas sistem dapat memenuhi sasaran.
Dalam
menentukan kualitas suatu sistem, dibutuhkan suatu aspek ukuran yang bisa menjadi acuan seberapa
puaskah pemakai terhadap penggunaan sistem yang dibuat. Komponen yang digunakan
untuk mengukur seberapa baik suatu sistem tersebut sehingga pemakai merasa puas
adalah sebagai berikut International
Standart Organization (ISO) 9241:11, 1998):
a) Kemudahan
(learnability) didefinisikan seberapa
cepat pemakai mahir dalam menggunakan sistem serta kemudahan dalam penggunaan
menjalankan suatu fungsi serta apa yang pemakai inginkan dapat mereka dapatkan.
b) Efisiensi
(efficiency) didefenisikan sebagai
sumber daya yang dikeluarkan guna mencapai ketepatan dan kelengkapan tujuan.
c) Mudah
diingat (memorability) didefinisikan
bagaimana kemampuan pemakai mempertahankan pengetahuannya setelah jangka
waktu tertentu, kemampuan mengingat didapatkan dari
peletakkan menu yang selalu tetap.
d) Kesalahan
dan keamanan (errors) didefinisikan
berapa banyak kesalahan- kesalahan apa saja yang dibuat pemakai, kesalahan yang
dibuat pemakai mencangkup ketidaksesuaian apa yang pemakai pikirkan dengan apa
yang sebenarnya disajikan oleh sistem.
e) Kepuasan
(satisfaction) didefinisikan
kebebasan dari ketidaknyamanan, dan sikap positif terhadap penggunaan produk
atau ukuran subjektif sebagaimana pemakai merasa tentang penggunaan sistem.
7.
Program Kecerdasan Tiruan
Aplikasi Sistem pakar dapat dibuat dengan menggunakan
suatu program paket, yaitu alat pengembangan sistem aplikasi pengetahuan (knowledge
system application development tool) diantaranya :
·
VP-Expert
·
PC PLUS
·
GURU
·
JESS(Java Expert
System Shell) Version 5.0
·
EXSYS
Aplikasi sistem pakar dengan menggunakan bahasa untuk
pemprograman kecerdasan tiruan diantaranya :
·
Prolog
·
Win-Prolog 4.040
·
LISP (Lisp
Processing)
·
CLIPS
Contoh Penerapan Aplikasi Sistem Pakar
- Sistem Pakar Dalam Bidang Kedokteran
Di
dunia kedokteran, sudah banyak bermunculan aplikasi sistem pakar. Sistem pakar
ini mampu mendiagnosis berbagai jenis penyakit pada manusia, baik penyakit
mata, THT (telinga, hidung, tenggorokan), mulut, organ dalam (jantung, hati,
ginjal), maupun AIDS. Dengan
adanya sistem pakar ini, orang awam mampu mendeteksi adanya penyakit pada
dirinya berdasarkan gejala-gejala yang dirasakan oleh orang tersebut dengan
menjawab pertanyaan pada aplikasi seperti halnya konsultasi ke dokter.
Aplikasi
sistem pakar dalam bidang kedokteran yang dibuat dengan proses penelusuran maju
(forward chaining) mampu mengenali jenis penyakit pada manusia, terutama jenis
penyakit mata. Aplikasi sistem pakar ini dapat menjadi sarana untuk menyimpan
pengetahuan tentang penyakit terutama yang berkenaan dengan jenis penyakit mata
dari para pakar atau ahlinya. Sistem pakar mampu membantu pasien maupun dokter
dalam menyediakan sistem pendukung keputusan dan saran dari pakar.
Pada
aplikasi sistem pakar umumnya user akan diminta untuk menjawab pertanyaan
sesuai dengan gejala yang dirasakan. Dalam aplikasi ini, user menjawab dengan
ya atau tidak. Setelah menjawab beberapa pertanyaan, maka aplikasi akan
menghasilkan kesimpulan mengenai jenis penyakit mata yang diderita user. Pada
aplikasi sistem pakar lainnya, tidak jarang juga sudah memberikan solusi atau
cara penanganan terhadap jenis penyakit yang diderita tersebut.
2. Implementasi
Sistem Pakar di Bidang Hankam
Bentuk
implementasi system pakar di bidang ini antara lain pada radar. Fungsi radar secara
umum ialah mendeteksi keberadaan benda di lingkungan dimana radar berada. Jarak
jangkauan radar bermacam-macam. Semakin berkembangnya teknologi kemampuan radar
semakin canggih. Radar saat ini dapat mendeteksi keberadaan awak yang tidak
dikenal, dan menampilkan informasi yang mendukung tentang benda yang ditangkap
pada radar.
- Membantu pertahanan sebuah instansi atau bahkan Negara.
- Membantu dalam sistem keamanan yang terbatas dapat dilakukan oleh manusia.
- Mengurangi penyalahgunaan alat yang penting.
References :
·
Sri Kusumadewi, (2003). Artificial Intelligence (Teknik
dan Aplikasinya), edisi pertama. Penerbit Graha Ilmu, Jakarta.
·
Buku Kecerdasan tiruan,
jilid 2 (Siswanto: 2010)
0 comment:
Post a Comment