BAB 2 LANDASAN TEORI 2.1 Sistem Pakar Sistem pakar adalah

advertisement
6
BAB 2
LANDASAN TEORI
2.1 Sistem Pakar
Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta,
dan teknik penalaran dalam memecahkan masalah yang biasanya hanya dapat dipecahkan oleh
seorang pakar dalam bidang tersebut.
Sistem pakar dibuat pada wilayah pengetahuan tertentu untuk suatu kepakaran tertentu
yang mendekati kemampuan manusia di salah satu bidang. Sistem pakar mencoba mencari solusi
yang memuaskan sebagaimana yang dilakukan oleh seorang pakar. Selain itu sistem pakar juga
dapat memberikan penjelasan terhadap langkah yang diambil dan memberikan alasan atas saran
atau kesimpulan yang ditemukannya. Kemampuan penalaran dan penjelasan terhadap setiap
langkah dalam pengambilan keputusan menjadi kelebihan dari kecerdasan buatan (Turban, 1995)
2.2 Sejarah Sistem Pakar
Sistem pakar mulai dikembangkan oleh Artificial Intelligence Corporation. Penelitian ini
didominasi oleh suatu keyakinan bahwa nalar yang digabung dengan komputer canggih akan
menghasilkan prestasi pakar atau bahkan manusia super. Suatu usaha ke arah ini adalah General
Purpose Problem-Solver (GPS). GPS yang berupa sebuah prosedur yang dikembangkan oleh
Allen Newell, John Cliff Shaw, dan Herbert Alexander Simon dari Logic Theorist merupakan
sebuah percobaan untuk menciptakan mesin yang cerdas. GPS sendiri merupakan sebuah
predecessor menuju sistem pakar.
7
Pada pertengahan tahun 1960-an, terjadi pergantian dari program serba bisa (generalpurpose) ke program yang spesialis (special-purpose) dengan dikembangkannya DENDRAL
oleh E. Feigenbaum dari Universitas Stanford dan kemudian diikuti oleh MYCIN. Pada awal
1980-an, teknologi sistem pakar yang mula-mula dibatasi oleh suasana akademis mulai muncul
sebagai aplikasi komersil, khususnya XCON, XSEL (dikembangkan dari R-1 pada Digital
Equipment Corp.) dan CATS-1 (dikembangkan oleh General Electric). (Kusrini, 2006)
Sistem pakar untuk melakukan diagnosis kesehatan telah dikembangkan sejak
pertengahan tahun 1970. Sistem pakar untuk melakukan diagnosis pertama dibuat oleh Bruce
Buchanan dan Edward Shortliffe di Stanford University. Sistem ini diberi nama MYCIN.
(Heckerman, 1986)
2.3 Inferensi
Inferensi merupakan proses untuk menghasilkan informasi dari fakta yang diketahui atau
diasumsikan. Inferensi adalah konklusi logis (logical conclusion) atau implikasi berdasarkan
informasi yang tersedia dalam hal ini akan digunakan metode inferensi dalam pengambilan
kesimpulan. (Kusrini, 2008). Ada dua metode inferensi yang penting dalam sistem pakar untuk
menarik kesimpulan, yaitu :
2.3.1 Runut Maju (Forward Chaining)
Pelacakan ke depan adalah pendekatan yang dimotori data (data-driven). Dalam
pendekatan ini pelacakan dimulai dari informasi masukan dan selanjutnya mencoba
menggambarkan kesimpulan. Pelacakan ke depan mencari fakta yang sesuai dengan
bagian IF dari aturan IF-THEN.
8
Berikut ini contoh inferensi yang menggunakan runut maju :
JIKA penderita terkena penyakit epilepsi idiopatik
MAKA berikan obat carbamazepine.
2.3.2 Runut Balik (Backward Chaining)
Runut balik adalah pendekatan yang dimotori tujuan (goal-driven). Dalam
pendekatan ini pelacakan dimulai dari tujuan, selanjutnya dicari aturan yang memiliki
tujuan tersebut untuk kesimpulannya. Selanjutnya proses pelacakan menggunakan premis
untuk aturan tersebut sebagai tujuan baru dan mencari aturan lain dengan tujuan baru
sebagai kesimpulannya. Proses berlanjut sampai semua kemungkinan ditemukan. (Voni,
E.A. 2010).
Tujuan inferensi adalah mengambil pilihan terbaik dari banyak kemungkinan.
Metode inferensi runut balik ini cocok digunakan untuk memecahkan masalah diagnosis
(Schnupp, 1989).
Berikut ini contoh inferensi yang menggunakan runut balik :
Aturan 1 :
Mengalami epilepsi idiopatik lokal
JIKA tipe sawan parsial sederhana
DAN EEG menunjukkan adanya fokus
DAN penyebabnya tidak diketahui
Aturan 2 :
Mengalami tipe sawan parsial sederhana
JIKA mengalami motorik fokal yang menjalar atau tanpa menjalar
ATAU gerakan versif, dengan kepala dan leher menengok ke suatu sisi
ATAU gerakan sensorik fokal menjalar atau sensorik khusus berupa halusinasi
sederhana.
9
2.4 Faktor Kepastian (Certainty Factor)
2.4.1 Pengertian Certainty Factor (CF)
Faktor kepastian diperkenalkan oleh Shortliffe Buchanan dalam pembuatan
MYCIN. CF merupakan nilai parameter klinis yang diberikan MYCIN untuk
menunjukkan besarnya kepercayaan. CF didefinisikan sebagai berikut :
CF(H,E) = MB(H,E) – MD(H,E)
[1]
CF(H,E) : Certainty Factor dari hipotesis H yang dipengaruhi oleh gejala (evidence) E.
Besarnya CF berkisar antara -1 sampai dengan 1. Nilai -1 menunjukkan ketidakpercayaan
mutlak sedangkan nilai 1 menunjukkan ketidakpercayaan mutlak.
MB(H,E) : ukuran kenaikan kepercayaan (measure of increased belief) terhadap hipotesis
H yang dipengaruhi oleh gejala E.
MD(H,E) : ukuran kenaikan ketidakpercayaan (measure of increased disbelief) terhadap
hipotesis H yang dipengaruhi oleh gejala E. (Giarattano, J dan Riley, G 1994).
2.4.2 Kombinasi Aturan
Metode MYCIN untuk menggabungkan evidence pada antecedent sebuah aturan
ditunjukkan oleh tabel di bawah ini. (Giarattano, J dan Riley, G 1994)
Tabel 2.1 Tabel Metode MYCIN
10
Evidence, E
Antecedent Ketidakpastian
E1 DAN E2
min[CF(H,E1),CF(H,E2)]
E1 ATAU E2
max[CF(H,E1),CF(H,E2)]
TIDAK E
-CF(H,E)
Berikut ini adalah contoh ekspresi logika yang mengombinasikan evidence :
E = (E1 DAN E2 DAN E3) ATAU (BUKAN E4 DAN BUKAN -E5)
Gejala E akan dihitung sebagai :
E = max[min(E1, E2, E3), min(-E4, -E5)]
Untuk nilai
E1 = 0,9
E2 = 0,8
E4 = 0,5
E5 = 0,4
E3 = 0,3
Hasilnya adalah :
E = max[min(0,9, 0,8, 0,3), min(-0,5, -0,4)]
= max(0,3, -0,5)
= 0,3
Bentuk dasar rumus certainty factor sebuah aturan JIKA E MAKA H adalah sebagai
berikut :
CF(H,e) = CF(E,e) * CF(H,E)
[2]
Di mana
CF(E,e) : certainty factor evidence E yang dipengaruhi oleh evidence e
CF(H,E) : certainty factor hipotesis dengan asumsi evidence diketahui dengan pasti, yaitu
ketika CF(E,e) = 1
CF(H,e) : certainty factor hipotesis yang dipengaruhi oleh evidence e
Jika semua evidence pada antecedent diketahui dengan pasti maka rumusnya akan
menjadi :
CF(H,e) = CF(H,E)
Berikut ini adalah contoh kasus yang melibatkan kombinasi certainty factor :
JIKA batuk
[3]
11
DAN demam
DAN sakit kepala
DAN bersin-bersin
MAKA influenza, CF : 0,7
Dengan menganggap
E1 : ”batuk”
E2 : ”demam”
E3 : ”sakit kepala”
E4 : ”bersin-bersin”
H : influenza
Maka nilai certainty factor pada saat evidence pasti adalah :
CF(H,E) = CF(H, E1 ∩ E2 ∩ E3 ∩ E4)
= 0,7
Dalam kasus ini, kondisi pasien tidak dapat ditentukan dengan pasti. Certainty factor
evidence E yang dipengaruhi oleh partial evidence e ditunjukkan dengan nilai sebagai
berikut :
CF(E1,e) : 0,5 (pasien mengalami batuk 50%)
CF(E2,e) : 0,8 (pasien mengalami demam 80%)
CF(E3,e) : 0,3 (pasien mengalami sakit kepala 30%)
CF(E4,e) : 0,7 (pasien mengalami bersin-bersin 70%)
Sehingga
CF(E,e) = CF(H, E1 ∩ E2 ∩ E3 ∩ E4)
= min[CF(E1,e), CF(E2,e), CF(E3,e), CF(E4,e)]
= min[0,5, 0,8, 0,3, 0,7]
= 0,3
Maka nilai certainty factor hipotesis adalah :
CF(H,e) = CF(E,e) * CF(H,E)
= 0,3 * 0,7
= 0,21
12
2.5 Internet
Perkembangan Teknologi Informasi dan Komunikasi yang fenomenal dan menjadi awal
munculnya aplikasi web adalah Internet. Internet yang berawal dari riset untuk pertahanan dan
keamanan serta pendidikan berkembang menjadi perangkat pendukung bisnis yang sangat
berpengaruh.
Berawal pada tahun 1958, melalui Advanced Research Projects Agency (ARPA),
Amerika Serikat bertekad mengembangkan jaringan komunikasi terintegrasi yang saling
menghubungkan komunitas sains dan keperluan militer. Hal ini dilatarbelakangi oleh terjadinya
perang dingin antara Amerika Serikat dengan Uni Soviet (tahun 1957 Soviet meluncurkan
sputnik). (Kleinrock, 2010)
Perkembangan besar Internet pertama adalah penemuan terpenting ARPA yaitu packet
switching pada tahun 1961. Packet switching adalah pengiriman pesan yang dapat dipecah dalam
paket-paket kecil yang masing-masing paketnya dapat melalui berbagai alternatif jalur jika salah
satu jalur rusak untuk mencapai tujuan yang telah ditentukan. Packet switching juga
memungkinkan jaringan dapat digunakan secara bersamaan untuk melakukan banyak koneksi,
berbeda dengan jalur telepon yang memerlukan jalur khusus untuk melakukan koneksi. Maka
ketika ARPANET menjadi jaringan komputer nasional di Amerika Serikat pada 1969, packet
switching digunakan secara menyeluruh sebagai metode komunikasinya menggantikan circuit
switching yang digunakan pada sambungan telepon publik. (Kleinrock, 2010)
Perkembangan besar Internet kedua yang dicatat pada sejarah internet adalah
pengembangan lapisan protokol jaringan yang terkenal karena paling banyak digunakan sekarang
yaitu TCP (Transmission Control Protocol). Protokol adalah suatu kumpulan aturan untuk
berhubungan antar jaringan. Protokol ini dikembangkan oleh Robert Kahn dan Vinton Cerf pada
tahun 1974. Dengan protokol yang standar dan disepakati secara luas, maka jaringan lokal yang
tersebar di berbagai tempat dapat saling terhubung membentuk jaringan raksasa bahkan sekarang
ini menjangkau seluruh dunia. Jaringan dengan menggunakan protokol internet inilah yang sering
disebut sebagai jaringan internet. (Kleinrock, 2010)
Perkembangan besar Internet ketiga adalah ditemukannya World Wide Web pada tahun
1990 oleh Tim Berners-Lee. (Berners-Lee, 1999). World Wide Web (WWW) ini menjadi konten
13
yang dinanti semua pengguna internet. WWW membuat semua pengguna dapat saling berbagi
bermacam-macam aplikasi dan konten, serta saling mengaitkan materi-materi yang tersebar di
internet. Sejak saat itu pertumbuhan pengguna internet meroket.
2.6 PHP
PHP adalah sebuah bahasa pemrograman untuk HTML. PHP merupakan singkatan dari
PHP: Hypertext Preprocessor, di dalam singkatan PHP terdapat kata PHP lagi, ini merupakan
akronim rekursif. Kebanyakan dari sintaksnya diambil dari bahasa C, Java dan Perl dengan
beberapa fitur PHP yang unik di dalamnya. Tujuan dari bahasa ini adalah untuk memberikan
kemampuan pada para pengembang web untuk menulis halaman-halaman dinamik lebih cepat.
Secara garis besar bahasa pemrograman web terdiri atas dua macam. Yang pertama
disebut dengan Client Side atau script yang dijalankan di komputer client dan yang kedua
biasanya disebut dengan Server Side atau script yang dijalankan pada komputer server. Client
Side adalah script atau perintah yang ditujukan pada komputer untuk dijalankan pada komputer
milik orang yang mengakses web tersebut. Misalnya kita ingin mengakses halaman web
www.indrabt.com. Apabila di dalam halaman web ini memiliki script client side yang berguna
untuk menampilkan misalnya gambar logo milik web site ini maka yang menjalankan script
tersebut adalah komputer kita atau dengan kata lain browser kita. Apabila script yang berguna
untuk menampilkan gambar logo adalah bersifat server side maka pertama tama script tersebut
akan diproses di server tempat web site tersebut berada (biasanya disebut dengan hosting), setelah
diproses baru hasil pemrosesan tersebut akan dikirimkan pada client yang mengakses web site
tersebut. PHP merupakan bahasa programming Server Side.
14
2.7 DBMS MySQL
DBMS(Database Management System) MySQL adalah sebuah database open source
terpopuler yang dikembangkan dan didistribusikan oleh perusahaan Oracle.
Sebuah database adalah kumpulan dari data yang terstruktur. Data dapat merupakan sebuah
daftar belanjaan yang sedikit ataupun kumpulan informasi yang rumit di sebuah jaringan
perusahaan. Untuk menambah,mengakses dan memproses data yang tersimpan di sebuah
database komputer, diperlukan sebuah sistem manajemen database seperti server MySQL.
Karena komputer sangat bagus dalam menangani data yang besar jumlahnya, sistem manajemen
database memegang peranan yang sangat penting dalam komputer.
Sebuah
database
relasional
menyimpan
data
dalam
berbagai
tabel
daripada
menyimpannya dalam sebuah ruangan penyimpanan yang besar. Struktur database disusun
sedemikian rupa untuk mengoptimisasi kecepatan. Model logika, dengan objek seperti database,
tabel, baris dan kolom memberikan lingkungan programming yang fleksibel. Kita dapat
membuat peraturan-peraturan yang mengatur hubungan antara data-data yang ada, seperti satuke-satu, satu-ke-banyak, unik, dan lainnya. Database melakukan peraturan-peraturan ini,
sehingga dengan database yang didesain dengan baik, aplikasi kita tidak akan mengalami data
duplikat, hilang, inkonsisten, dan lainnya.
Kata SQL dari MySQL merupakan singkatan dari ”Structured Query Language”. SQL
merupakan bahasa standard yang paling dikenal untuk mengakses database. Tergantung pada
lingkungan programming, kita dapat mengakses SQL secara langsung(misalnya untuk membuat
laporan), memasukkan perintah SQL dalam kode bahasa pemrograman lain, dan lainnya.
SQL ditetapkan oleh ANSI/Standard ISO SQL. Standard SQL telah berkembang sejak
1986 dan memiliki banyak versi. MySQL merupakan sebuah software Open Source. Ini artinya
software ini boleh dipakai oleh semua orang dan boleh juga dirubah oleh semua orang. Software
ini boleh didownload dan dipakai secara gratis, software MySQL memakai GPL(GNU General
Public License).
Download