BAB II
LANDASAN TEORI
2.1 KECERDASAN BUATAN
Salah satu cabang ilmu komputer yang dapat membantu manusia adalah kecerdasan buatan atau artificial intelligence. Kecerdasan buatan adalah cabang ilmu komputer yang bertujuan untuk membuat sebuah komputer dapat berpikir dan bernalar seperti
manusia. Tujuan praktis dari kecerdasan buatan ini adalah membuat komputer semakin berguna bagi manusia. Kecerdasan buatan dapat membantu manusia dalam membuat keputusan, mencari informasi secara lebih akurat, atau membuat komputer lebih mudah digunakan dengan tampilan yang menggunakan bahasa naturalsehingga mudah dipahami. Salah satu bagian dari sistem kecerdasan buatan adalah sistem pakar dimana sistem pakar adalah bagian dari ilmu Kecerdasan buatan yang secara spesifik berusaha mengadopsi kepakaran seseorang di bidang tertentu ke dalam suatu sistem atau program komputer [8].
2.2 SISTEM PAKAR
Secara umum, sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer yang dirancang untuk memodelkan kemampuan menyelesaikan masalah seperti layaknya seorang pakar. Dengan sistem pakar ini, orang awam pun dapat menyelesaikan masalahnya atau hanya sekedar mencari suatu informasi
tertentu. Kombinasi dari kedua hal tersebut disimpan dalam komputer, yang selanjutnya digunakan dalam proses pengambilan keputusan untuk penyelesaian masalah tertentu [6].
2.2.1 Sejarah Sistem Pakar
Sistem pakar mulai dikembangkan pada pertengahan tahun 1960-an oleh Artificial Intelligence Corporation. Periode penelitian kecerdasan buatan ini didominasi oleh suatu keyakinan bahwa nalar yang digabung dengan komputer canggih akan menghasilkan presatasi pakar atau bahkan manusia super. Suatu usaha ke arah ini
adalah General Purpose Problem Solver (GPS) yang dikembangkan oleh Allen Newell, John Cliff Shaw, dan Herbert Alexander Simon. GPS merupakan sebuah percobaan untuk menciptakan mesin yang cerdas.
Pada pertengahan tahun 1960-an, terjadi pergantian program serba bisa ke program dengan kegunaan khusus/spesialis dengan dikembangkannya DENDRAL oleh E. Feigenbaum dari Universitas Stanford. Pembuatan DENDRAL mengarah pada kesimpulan berikut: pemecahan masalah manusia adalah baik jika hanya beroperasi dalam domain yang sangat sempit. Sistem pakar harus di-update secara berkala untuk informasi baru, update semacam ini dapat efisien apabila menggunakan representasi pengetahuan berbasisrule.
Problem yang kompleks membutuhkan pengetahuan yang banyak sekali tentang area problem. Pada pertengahan 1970-an, beberapa sistem pakar mulai muncul. Sebuah pengetahuan kunci yang dipelajari saat itu adalah kekuatan dari sebuah sistem pakar berasal dari pengetahuan spesifik yang dimilikinya, bukan dari
MYCIN merupakan program interaktif yang melakukan diagnosis penyakit meningitis dan infeksi bacremia serta memberikan rekomendasi terapi antimikrobia. MYCIN mampu memberikan penjelasan atas penalarannya secara detail. Dalam uji coba, program ini mampu menunjukkan kemampuan seperti seorang spesialis. Meskipun MYCIN tidak pernah digunakan secara rutin oleh dokter, MYCIN merupakan referensi yang bagus dalam penelitian kecerdasan buatan yang lain [4].
2.2.2 Ciri-ciri Sistem Pakar
Sistem pakar yang baik harus memenuhi ciri-ciri sebagai berikut:
1. Mudah dimodifikasi, yaitu dengan menambah atau menghapus suatu pengetahuan dari basis pengetahuannya.
2. Memiliki kemampuan untuk belajar beradaptasi. 3. Terbatas pada bidang spesifik.
4. Output tergantung dialog antara pengguna (User) 5. Knowledge basedan inferensi terpisah [2]
6. Memiliki fasilitas informasi yang handal.
7. Dapat digunakan dalam berbagai jenis komputer [3].
2.2.3 Keuntungan Sistem Pakar
Secara garis besar, banyak manfaat yang dapat diambil dengan adanya sistem pakar, antara lain [5]:
1. Memungkinkan orang awam untuk dapat melakukan pekerjaan pakar. 2. Meningkatkan produktifitas kerja dengan jalan meningkatkan efisien.
3. Menghemat waktu dalam menyelesaikan masalh pekerjaan.
4. Dapat melakukan proses rumit berulang-ulang secara otomatis yang bagi kebanyakn orang mungkin membosankan.
2.2.4 Kelemahan Sistem Pakar
Disamping memiliki beberapa keuntungan, sistem pakar juga memiliki beberapa kelemahan, antara lain [5]:
1. Masalah dalam mendapatkan pengetahuan diaman pengetahuan tidak selalu didapatkan dengan mudah, karena kadang kala perkara dari masalah yang kita buat tidak ada, dan kalau pun ada kadang-kadang pendekatan yang dimiliki
oleh pakar berbeda-beda.
2. Untuk membuat sistem pakar yang benar-benar berkualitas tinggi sangatlah sulit dan memerlukan biaya yang sangat besar untuk pengembangan dan pemeliharannya.
3. Boleh jadi sistem tidak dapat membuat keputusan.
4. Sistem pakar tidaklah 100% menguntungkan, walaupun seseorang tetap tidak sempurna atau tidak selalu benar. Oleh karena itu perlu di uji ulang secara teliti sebelum digunakan.
2.2.5 Konsep Dasar Sistem Pakar
konsep dasar sistem pakar mengandung : keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk keahlian adalah [3]:
1. Fakta-fakta pada lingkup permasalahan tertentu. 2. Teori-teori pada lingkup permasalahan tertentu.
3. Prosedur-prosedur dan aturan-aturan berkenaan dengan lingkup permasalahan tertentu.
4. Strategi-strategi global untuk menyelesaikan masalah.
2.2.6 Arsitektur Sistem Pakar
Arsitektur sistem pakar dapat dilihat pada gambar 1 di bawah ini dimana sebuah sistem pakar terdiri dari tiga modul utama, yaitu: knowledge base, working memory dan inference engine yang merupakan bagian utama dari sebuah sistem pakar. Sedangkan bagian-bagian selain ketiga komponen utama itu adalah : user interface, developer interface,explanation facility, danexternal programs.
User Knowledge Enginner
Gambar 2.1 Arsitektur Sistem Pakar
Keterangan :
1. Knowledge base adalah representasi pengetahuan dari seorang atau beberapa pakar yang diperlukan untuk memahami, memformulasikan dan memecahkan masalah. Dalam hal ini digunakan untuk memecahkan masalah-masalah yang terjadi pada komputer. Knowledge baseini terdiri dari dua elemen dasar, yaitu
fakta danrules.
2. Inference engine merupakan otak dari sistem pakar yang mengandung mekanisme fungsi berpikir dan pola-pola penalaran sistem yang digunakan oleh seorang pakar. Mekanisme ini yang menganalisis suatu masalah tertentu
dan kemudian mencari solusi atau kesimpulan yang terbaik.
4. User/developer interface. Semua software pengembangan sistem pakar memberikan interface yang berbeda bagi user dan developer. User akan berhadapan dengan tampilan yang sederhana dan mudah sedangkandeveloper akan berhadapan dengan editor dan source code waktu mengembangkan program
5. Explanation facility memberikan penjelasan saat mana user mengetahui apakah alasan yang diberikan sebuah solusi.
6. External programs. Berbagai program seperti database, spreadsheets, algorithms,dan lainnya yang berfungsi untuk mendukung sistem [8].
2.2.7 Representasi Pengetahuan
Representasi pengetahuan merupakan metode yang digunakan untuk mengkodekan pengetahuan dalam sebuah sistem pakar yang berbasis pengetahuan. Pengetahuan yang diperoleh dari pakar atau dari sekumpulan data harus direpresentasikan dalam format yang dapat dipahami oleh manusia dan dapat diekskusi pada komputer. Beberapa model representasi pengetahuan yang penting, yaitu logika (logic), jaringan semantik (semantic nets), bingkai (frame), dan kaidah produksi (production rule)[1].
2.2.7.1 Model Representasi Pengetahuan
Setelah pengetahuan berhasil diakuisisi, pengetahuan harus diorganisasi dan diatur dalam suatu konfigurasi dengan suatu format/ representasi tertentu. Metode representasi pengetahuan yang penting adalah [5]:
1. Logika (logic)
2. Jaringan Semantik (semantic nets)
Salah satu skema representasi pengetahuan tertua dan termudah adalah jaringan
semantik. Representasi jaringan semantik merupakan penggambaran grafis dari
pengetahuan yang memperlihatkan hubungan hirarki dari obyek-obyek.
Komponen dasar untuk merepresentasikan pengetahuan dalam bentuk jaringan
semantik adalah simpul (node) dan penghubung (link)..
3. Object Atributte Value (OAV)
Objek dapat berupa fisik atau konsep. Atribut adalah karakteristik atau sifat dari
objek tersebut.Value(nilai) adalah besaran/nilai/takaran spesifik dari atribut pada
situasi tertentu, dapat berupa numerik, string, atau boolean. Sebuah objek dapat
memiliki beberapa atribut dan disebut OAVMulti-attribute.
4. Bingkai (frame)
Bingkai berupa ruang-ruang (slots) yang berisi atribut untuk mendeskripsikan
pengetahuan. Pengetahuan yang termuat dalam slot dapat berupa kejadian, lokasi,
situasi, ataupun elemen-elemen lainnya. Bingkai digunakan untuk
merepresentasikan pengetahuan deklaratif.
5. Kaidah Produksi (production rule).
Kaidah menyediakan cara formal untuk merepresentasikan rekomendasi, arahan, atau strategi
2.2.7.2 Kaidah Produksi
telah tereduksi akan membentuk satuset rulefinal. Struktur dan penulisanruleadalah sebagai berikut:
1. RULE: label: Tabel yang berisi nama rule tersebut. 2. IF: sebagai penanda awal kondisi.
3. THEN: sebagai penanda awal kesimpulan pada sebuahrule.
4. ELSE: sebagai penanda awal alternatif kesimpulan pada sebuah rule, bersifat
opsional, jadi boleh tidak ada.
Operator yang dapat digunakan padaIF-THEN ruleadalah:
a. AND: semua kondisi yang dihubungkan oleh operator ini harus bernilai benar, agar kondisi keseluruhan rule tersebut bernilai benar. Bila ada satu kondisi yang bernilai salah, keseluruhanruletersebut bernilai salah.
b. OR : Bila semua kondisi yang dihubungkan oleh operator ini bernilai salah, maka kondisi keseluruhan rule tersebut bernilai salah, bila ada salah satu kondisi atau lebih yang bernilai benar, keseluruhan rule tersebut bernilai benar [9].
2.2.8 Strategi Pencarian Pada Mesin Inferensi
Ada dua strategi pencarian dasar yang bisa digunakan oleh mesin inferensi dalam mencari kesimpulan untuk mendapatkan solusi bagi permasalahan yang dihadapi sistem pakar, yaitu runut maju (forward chaining) dan runut balik (backward chaining). Berikut ini penjelasan mengenai kedua strategi pencarian tersebut :
1. Runut Maju (forward Chaining)
Runut maju merupakan strategi pencarian yang memulai proses pencarian dari sekumpulan data atau fakta, dari data-data tersebut dicari suatu kesimpulan yang menjadi solusi dari permasalahan yang dihadapi. Mesin inferensi mencari
data-data tersebut, kemudian dari kaidah-kaidah tersebut diperoleh suatu kesimpulan. Runut maju memulai proses pencarian dengan data sehingga strategi ini disebut jugadata-driven.
2. Runut Balik (Backward Chaining)
Runut balik merupakan strategi pencarian yang arahnya kebalikan dari runut maju. Proses pencarian dimulai dari tujuan, yaitu kesimpulan yang menjadi
solusi permasalahan yang dihadapi. Mesin inferensi mencari kaidah-kaidah dalam basis pengetahuan yang kesimpulannya merupakan solusi yang ingin dicapai, kemudian dari kaidah-kaidah yang diperoleh, masing-masing kesimpulan dirunut balik jalur yang mengarah ke kesimpulan tersebut. Jika