Download 1 Sistem Pakar Representasi Pengetahuan Keragaman bentuk atau

Document related concepts
no text concepts found
Transcript
1
Sistem Pakar
Representasi Pengetahuan
Keragaman bentuk atau skema representasi pengetahuan telah dikembangkan tahun –
tahun sebelumnya. Ada dua karakteristik umum dari representasi pengetahuan (Turban,
2001), yaitu :
1. Representasi pengetahuan dapat diprogramkan dengan beragam bahasa komputer
yang ada dan dapat disimpan dalam memori.
2. Representasi pengetahuan dirancang sedemikian rupa sehingga fakta dan pengetahuan
lainnya dapat dimanfaatkan untuk penalaran.
Mylopoulus dan Levesque telah mengklasifikasikan susunan atau pola representasi
menjadi empat kategori yaitu :
1. Representasi logika, representasi ini menggunakan ekspresi – ekspresi logika formal
untuk
merepresentasikan
basis
pengetahuan.
PROLOG
merupakan
bahasa
pemrograman yang ideal dalam mengimplementasikan representasi logika.
2. Representasi Prosedural, representasi ini menggambarkan pengetahuan sebagai
sekumpulan instruksi untuk memcahkan suatu problema. Dalam sistem berbasis
kaidah, aturan IF – THEN dapat ditafsirkan sebagai sebuah prosedur untuk mencapai
tujuan pemecahan problema.
3. Representasi Network, representasi ini menangkap pengetahuan sebagai sebuah graf
di mana node – nodenya menggambarkan objek atau konsep dalam problema yang
dihadapi, sedangkan lengkungan – lengkungannya menggambarkan hubungan atau
asosiasi antara mereka. Contoh representasi network antara lain jaringan semantik dan
graf.
4. Representasi terstruktur, bahasa – bahasa representasi terstruktur memperluas
jaringan dengan membuat setiap nodenya menjadi sebuah struktur data komplek yang
berisi tempat – tempat bernama dengan nilai tertentu. Nilai – nilai ini dapat berupa
data numerik atau simbolik sederhana, pointer ke frame (bingkai) lain, atau bahkan
merupakan prosedur untuk mengerjakan tugas tertentu. Contoh dari representasi ini
adalah skrip (script), frame, dan objek (object).
2
Representasi Logika
Logika adalah bentuk representasi pengetahuan yang paling tua. Proses logika adalah
proses membentuk kesimpulan atau menarik suatu inferensi berdasarkan fakta yang telah
ada. Input dari proses logika adalah berupa premis atau fakta – fakta yang diakui
kebenarannya sehingga dengan melakukan penalaran pada proses logika dapat dibentuk
suatu inferensi atau kesimpulan yang benar juga. Diagram proses repesentasi logika dapat
dilihat pada gambar di bawah ini.
Input
Premis
Atau
Fakta
Proses Logika
Output
Inferensi atau
Konklusi
Ada 2 penalaran yang dapat dilakukan untuk mendapatkan konklusi yaitu :
1. Penalaran deduktif : dimulai dari prinsip umum untuk mendapatkan konklusi yang
lebih khusus.
Contoh :
Premis Mayor : Jika hujan turun saya tidak akan berangkat kuliah
Premis Minor : Hari ini hujan turun
Konklusi : Hari ini saya tidak akan berangkat kuliah
2. Penalaran induktif : Dimulai dari fakta – fakta khusus untuk mendapatkan kesimpulan
Contoh :
Premis 1 : Aljabar adalah pelajaran yang sulit
Premis 2 : Geometri adalah pelajaran yang sulit
Premis 3 : Kalkulus adalah pelajaran yang sulit
Konklusi : Matematika adalah pelajaran yang sulit
Munculnya premis baru bisa mengakibatkan gugurnya konklusi yang sudah
diperoleh, misal :
Premis 4 : Kinematika adalah pelajaran yang sulit
3
Premis tersebut menyebabkan konklusi : “Matematika adalah pelajaran yang sulit”
menjadi salah, karena kinematika buka merupakan bagian dari matematika. Adalah
sulit bila menggunakan penalaran induktif karena sangat dimungkinkan adanya
ketidakpastian.
Logika Preposisi
Preposisi adalah suatu pernyataan yang dapat bernilai benar atau salah. Dua atau lebih
preposisi dapat digabungkan dengan menggunakan operator logika :
a. Konjungsi : ^ (And)
b. Disjungsi : V (Or)
c. Negasi : ~
d. Implikasi : → (If – Then / Jika Maka)
e. Ekuivalensi : ↔ (If and Only If / Jika dan Hanya Jika)
Contoh :
Diketahui preposisi – preposisi berikut.
P : Hari ini Hujan
Q : Murid – murid diliburkan dari sekolah
Maka
P ^ Q : hari ini hujan dan murid – murid diliburkan dari sekolah
P V Q : Hari ini hujan atau murid – murid diliburkan dari sekolah
~P : Tidak benar hari ini hujan
(atau dalam kalimat lain yang lebih lazim. Hari ini tidak hujan)
Contoh lain :
P = Hujan turun sekarang
Q = Saya tidak akan ke pasar
Maka
P → Q : Jika Hujan turun maka saya tidak akan ke pasar
Logika Predikat
4
Logika predikat adalah logika yang digunakan untuk merepresentasikan masalah yang
tidak dapat dilakukan atau direpresentasikan dengan menggunakan logika preposisi.
Misal, diketahui fakta – fakta sebagai berikut.
Andi adalah seorang laki – laki : A
Ali adalah seorang laki – laki : B
Amir adalah seorang laki – laki : C
Anto adalah seorang laki – laki : D
Agus adalah seorang laki – laki : E
Jika kelima fakta tersebut dinyatakan dengan menggunakan preposisi, maka akan terjadi
pemborosan. Di mana beberapa pernyataan dengan predikat yang sama akan dibuat
dalam preposisi yang berbeda.
Pada logika predikat, kita dapat merepresentasikan fakta – fakta sebagai suatu pernyataan
yang disebut dengan WFF (Well Formed Formula).
Pernyataan di atas sebelumnya dapat dibuat menjadi :
seorang(x(Andi, Ali, Amir, Anto, Agus), laki – laki).
Contoh lain :
Diana adalah nenek dari Ibu Amir
Nenek (Diana, Ibu (Amir))
Mahasiswa berada di dalam kelas
Di dalam (Mahasiswa, Kelas)
Dari contoh di atas dapat dijabarkan sebagai berikut.
Di dalam = predikat (keterangan)
Mahasiswa = argumen (objek)
Kelas = argumen (objek)
Jaringan Semantik
5
Jaringan semantik merupakan gambaran pengetahuan grafik yang menunjukkan
hubungan antar berbagai objek. Jaringan semantik terdiri dari lingkaran – lingkaran yang
menunjukkan objek dan informasi tentang objek – objek tersebut. Objek di sini bisa
berupa benda atau peristiwa. Antara 2 objek dihubungkan oleh arc (panah) yang
menunjukkan hubungan antar objek. Gambar berikut menunjukkan representasi
pengetahuan menggunakan jaringan semantik.
Pagi
Masuk
Roda
Punya
Sekolah
Jumlahnya
Sepeda
Pergi
Buku
Baca
Naik
Berjudul
Si Kancil
Berwarna
adalah
Saudara
adalah
Binatang
Contoh soal :
Merah
Laki2
Ani
adalah
adalah
M. Hidup
Dua
Budi
Punya
adalah
adalah
Berwarna
Wanita
Baju
6
1. Buatlah jaringan semantik untuk cerita berikut ini : Mini adalah sejenis murai, dia
hidup di sarang, yang berada di atas pohon di halaman belakang Tuan Abraham.
Murai adalah sejenis burung, mereka dapat terbang dan mempunyai sayap. Mereka
adalah spesies yang berbahaya, dan dilindungi oleh peraturan pemerintah.
2. Gambarkan representasi jaringan semantik untuk informasi objek – objek berikut ini :
Ann is the wife of Bill, Ann is the mother of Susan, Ann is the Sister of Carol, Bill is
the father of Susan, Tom is the Husband of Susan, Susan is the mother of John, Tom
is the father of John, David is the husband of Carol, Carol is the mother of Tom,
David is the father of Tom. Dari jaringan semantik yang Anda hasilkan, tuliskan
representasi tersebut ke dalam bentuk cerita.
Frame
Frame adalah kumpulan pengetahuan tentang suatu objek tertentu, peristiwa, lokasi,
situasi, dan lain – lain. Frame biasanya digunakan untuk merepresentasikan pengetahuan
yang didasarkan pada karakteristik yang sudah dikenal, yang merupakan pengalaman –
pengalaman. Dengan menggunakan frame, sangat mudah untuk membuat inferensi
tentang objek, peristiwa, atau situasi baru, karena frame menyediakan basis pengetahuan
yang ditarik dari pengalaman.
Berikut ini adalah Frame untuk deskripsi sebuah kamar hotel.
Kamar Hotel
Kursi Hotel
Spesialisasi dari : kamar
Spesialisasi dari : kursi
Tempat : Hotel
Tinggi : 20 – 40 cm
Isi : Kursi hotel, telepon hotel,
ranjang hotel
Jumlah kaki : 4
Kegunaan : tempat duduk
Telepon Hotel
Spesialisasi dari : telepon
Kegunaan : Memanggil
Pelayan Kamar
Pembayaran : Melalui Kamar
7
Script
Script merupakan representasi pengetahuan yang menggambarkan urutan kejadian. Script
merepresentasikan situasi, pengetahuan, dan pengalaman. Penggambaran urutan peristiwa
pada script menggunakan serangkaian slot yang berisi informasi tentang orang, objek,
dan tindakan – tindakan yang terjadi dalam suatu peristiwa.
Script mempunyai beberapa elemen yang tipikal, yaitu (Suparman : 1991) :
1. Kondisi masukan menggambarkan situasi yang harus dipenuhi sebelum terjadi atau
berlaku suatu peristiwa yang ada dalam script.
2. Prop mengacu kepada objek yang digunakan dalam urutan peristiwa yang terjadi
3. Role mengacu kepada orang - orang yang terlibat dalam script. Hasilnya adalah
kondisi yang ada sesudah peristiwa dalam script berlangsung.
4. Track mengacu kepada variasi yang mungkin terjadi dalam script tertentu.
5. Scene menggambarkan urutan peristiwa aktual yang terjadi.
8
6. Hasil merupakan kondisi setelah urutan peristiwa dalam script terjadi.
Contoh sederhananya dapat dilihat pada script berangkat ke restoran seperti berikut ini.
SCRIPT RESTORAN
Jalur (Track)
: Restoran Swalayan (Fast Food)
Peran (Roles)
: Tamu Pelayan
Pendukung (Prop)
: Counter, baki, makanan, uang, serbet, garam, merica, kecap,
sedotan, dan lain – lain
Kondisi masukan
: Tamu Lapar – Tamu punya uang
Adegan (Scene) 1 : Masuk
•
Tamu parkir mobil
•
Tamu masuk restoran
•
Tamu antri
•
Tamu baca menu di daftar menu dan mengambil putusan tentang apa yang akan
dipesan
Adegan 2 : Pesanan
•
Tamu memberikan pesanan kepada pelayan
•
Pelayan mengambil pesanan dan meletakkan makanan di atas baki.
•
Tamu membayar
Adegan 3 : Makan
•
Tamu mengambil serbet, sedotan, garam, dan lain – lain
•
Tamu membawa baki makanan ke meja kosong.
•
Tamu makan dengan cepat
Adegan 4 : Pulang
•
Tamu membersihkan meja
•
Tamu membuang sampah
9
•
Tamu meninggalkan restoran
•
Tamu naik mobil dan pulang
Hasil
•
Tamu merasa kenyang
•
Uang tamu jadi habis
•
Tamu senang
•
Tamu kecewa
•
Tamu sakit perut
Contoh soal :
1. Buatlah representasi pengetahuan menggunakan script untuk :
a. Pergi menonton di bioskop
b. Membuat program penjumlahan dua bilangan
c. Berbelanja di supermarket
d. Pendaftaran ulang untuk semester depan
e. Berobat ke dokter gigi
f. Wawancara untuk melamar pekerjaan
g. Memilih komputer
2. Buatlah representasi pengetahuan menggunakan frame untuk menggambarkan :
a. Rumah Anda sendiri
b. Automobile
c. Personal Computer (PC)
d. Hardware
e. Dapur
f. Perahu Layar
g. Kursi
10
Sistem Pakar (Expert System)
Penjelasan mengenai Sistem Pakar apabila ditinjau dari beberapa aspek, antara
lain :
•
Implementasi kecerdasan sang pakar berbasis kode program komputer (code base
skill implemetation), menggunakan teknik-teknik tertentu dengan bantuan database
ataupun tidak.
•
Suatu bidang dari ilmu kecerdasan buatan dalam kaitannya dengan sistem pendukung
keputusan yang dirancang dengan memasukkan unsur-unsur keahlian dari satu atau
beberapa orang pakar kedalam suatu konsep terprogram (code base concept) dalam
rangka pengambilan keputusan.
•
Menurut Marimin (1992), sistem pakar adalah sistem perangkat lunak komputer yang
menggunakan ilmu, fakta, dan teknik berpikir dalam pengambilan keputusan untuk
menyelesaikan masalah-masalah yang biasanya hanya dapat diselesaikan oleh tenaga
ahli dalam bidang yang bersangkutan.
Adapun ciri – ciri sistem pakar diantaranya adalah :
o
Bekerja secara sistematis berdasarkan pengetahuan dan mekanisme tertentu.
o
Pengambilan keputusan berdasarkan kaidah-kaidah tertentu dan dapat merespons
masukkan user (melalui kotak dialog).
o
Dapat menalar data-data yang tidak pasti dan memberikan beberapa alasan pemilihan.
o
Dikembangkan secara bertahap dan terbatas pada bidang keahlian tertentu saja.
o
Outputnya berupa saran atau anjuran.
Beberapa kelebihan dari sistem pakar antara lain :
1. Efisiensi waktu, namun sistem atau orang biasa/awam yang terlibat di dalamnya
bekerja layaknya sang pakar.
2. Penyimpanan data-data pengetahun ke dalam database dengan lengkap dan terpercaya
menyebabkan informasi yang dibutuhkan bisa diakses dalam jangka waktu yang
cukup lama. Sehingga seseorang yang berkonsultasi dengan sistem tersebut seolaholah berkonsultasi dengan pakar aslinya.
11
3. Dimungkinkan terjadinya penyatuan kemampuan sistem pakar yang satu dengan yang
lainnya, sehingga membuat kualitas hasil lebih meningkat sehingga seolah-olah
seorang user berkonsultasi dengan banyak pakar.
4. Efisiensi kerja, karena sistem biaya yang dikeluarkan untuk perancangan, implementasi
dan perawatan(maintenance) sistem pakar relatif lebih murah dan tidak mengenal
sifat lelah/lupa dll. Hal ini berimbas pada meningkatnya produktivitas dan kinerja
perusahaan.
5. Suatu aplikasi sistem pakar dapat diperbanyak dan disebarluaskan dengan mudah dan
cepat. Hal ini berarti telah memperbanyak jumlah pakar dan memperluas jangkauan
aksesnya.
Kerugian Expert System :
1 Sistem pakar hanya dapat menangani pengetahuan yang konsisten. Sistem pakar
dirancang dengan aturan-aturan yang hasilnya sudah pasti dan konsisten sesuai
dengan alur di diagram pohonnya. Untuk pengetahuan yang cepat berubah-rubah dari
waktu ke waktu, maka knowledge base di sistem pakar harus selalu diubah (perbarui),
yang tentu cukup merepotkan.
2
Sistem pakar tidak dapat menangani hal yang bersifat judgement. Sistem pakar
memberikan hasil yang pasti, sehingga keputusan akhir pengambilan keputusan jika
melibatkan kebijaksaaan dan institusi masih tetap di tangan manajemen.
3 Format knowledge base sistem pakar terbatas. Knowledge base pada sistem pakar
berisi aturan-aturan (rules) yang ditulis dalam bentuk statemen if-then.
Expert System terdiri dari 4 bagian yang harus dimilikinya yaitu :
1. Knowledge Base
Sebuah database yang menyimpan informasi pengetahuan tertentu dan aturan – aturan
tentang subjek tertentu.
Representasi pengetahuan dengan sistem produksi berupa aplikasi aturan (Rule) yang
berupa :
12
1. Antecedent, yaitu bagian yang mengekspresikan situasi atau premis (pernyataan
berawalan IF)
2. Konsekuen, yaitu bagian yang menyatakan suatu tindakan tertentu atau konklusi yang
diterapkan jika suatu situasi atau premis bernilai benar (pernyataan berawalan Then)
Contoh : If The Traffic Light is Green then The Action is go
Representasi pengetahuan dengan sistem produksi ini secara umum terdiri dari beberapa
jenis yaitu sebagai berikut.
1. Relasi
Contoh :
If The fuel tank is empty
Then the car is dead
2. Recommendation
Contoh :
If The Season is Autumn
And The Sky is cloudy
And the forecast is drizzle
Then the advice is take an umbrella
3. Directive
Contoh :
If the car is dead
And the fuel tank is empty
Then the action is refuel the car
4. Strategy
Contoh :
IF the car is dead
THEN the action is ‘check the fuel tank’;
step1 is complete
IF
step1 is complete
AND the ‘fuel tank’ is full
13
THEN the action is ‘check the battery’;
step2 is complete
2. Inference Engine
Dasar untuk membentuk inference engine
a. Forward Chaining (penalaran maju)
Pelacakan dimulai dari keadaan awal (informasi atau fakta yang ada) dan
kemudian dicoba untuk mencocokkan dengan tujuan yang diharapkan. Sering
juga disebut sebagai data driven reasoning
b. Backward Chaining (penalaran mundur)
Penalaran dimulai dari tujuan atau hipotesa, baru dicocokkan dengan keadaan
awal atau fakta – fakta yang ada. Sering juga disebut sebagai goal driven
reasoning.
Cara kerja inference Engine adalah sebagai berikut.
1. Inference Engine akan melakukan pencocokan antara fakta yang berupa If part yang
diinputkan oleh user dengan knowledge di dalam database
2. Jika If dari knowledge base = fact dalam database maka rule tersebut akan dieksekusi
3. Dihasilkan suatu pengetahuan berdasarkan rule yang dieksekusi.
1) Forward Chaining
Bentuk Bulat
Berbiji Tunggal
Kulitnya Berambut
Tumbuhan Daerah Panas
Pohon Rambutan
2) Backward Chaining
14
Start Goal :
Pohon Rambutan
Tumbuhan Daerah Panas
Kulitnya berambut
Berbiji Tunggal
Bentuknya bulat
Kulitnya halus
Berbiji Banyak
Bentuknya panjang
3. Antar Muka Pemakai (User Interface)
-
Bagian penghubung antara sistem pakar dengan pemakai
-
Akan terjadi dialog antara program dan pemakai
-
Program akan mengajukan pertanyaan – pertanyaan dan jawaban berbentuk “ya” /
“tidak”, berbentuk panduan menu (menu driven), pernyataan – pernyataan bahasa
alami (natural language), dan graphics interface style. Program sistem pakar akan
mengambil kesimpulan berdasarkan jawaban – jawaban dari pemakai tadi.
4. Development Engine
Bagian dari sistem pakar sebagai fasilitas untuk mengembangkan mesin inferensi dan
penambahan basis pengetahuan yang akan dilakukan oleh knowledge engineer (harus
punya keahlian dalam mengerti bagaimana pakar menerapkan pengetahuan mereka
dalam memecahkan masalah, mampu mengekstraksi penjelasan (knowledge
acquisition) mengenai pengetahuan dari pakar), bila si pakar menemukan
pengetahuan dan aturan yang baru dari pengalaman ia bekerja.
Studi Kasus :
15
Rancanglah sistem pakar untuk mendeteksi suatu penyakit jeruk. Di mana rule yang ada
adalah sebagai berikut.
TabelPenyakit
Akar
Baik
Batang
Baik
Baik
Baik
Baik
Baik
Baik
Baik
Daun
Cabang
Menebal, Menggulung,
Baik
Gugur
Bercak-bercak putih, tak Baik
segar, gugur
Baik
Baik
Tunas
Bunga
Tidak berkembang Gugur
Baik
Baik
Baik
Baik
Baik
Baik
Baik
Baik
Baik
Baik
Bergulung
Baik
Gugur
Baik
Tidak segar, berbekas
paru-paru
Baik
Berbekas paru-paru
Gundul
Gugur, bercak-bercak
coklat
Bercak basah Tidak Segar
Baik
Baik
Baik
Baik
Jorok
Baik
Baik
Baik
Baik
Baik
Mati
Tidak segar
Gugur
Baik
Terdapat
sarang labalaba
Baik
Baik
Tidak segar
Baik
Baik
Baik
Bersisik
Terdapat lapisan warna Baik
putih, mengeriting, bentuk
daun menyimpang
Gugur
Terdapat
bintik-bintik
spora
Jorok, bercak hitam, tidak Baik
segar
Baik
Baik
Berkerut
Kerdil
Terdapat spora Baik
cendawan
putih
Baik
Baik
Baik
Jorok
Tidak segar
Kerdil
Kerdil
Baik
Terdapat
bercak hitam
Terdapat
bercak
berlendir
Tak segar
Seperti Stress
Tidak segar
Rapuh
Kerdil
Ada bekas gigitan
Baik
Baik
Gugur
Tidak segar
Kerdil
Kerdil
Kerdil
Rontok
Terdapat larv
putih
Bergulung
Tidak muncu
Tidak berkembang Tak
berkembang
Tidak berkembang Tak
berkembang
Tidak segar
Tak
berkembang
Terputus, tidak
Baik
memunculkan
bunga
Tidak segar
Berlebihan
Tidak muncul
Gugur
Ada bekas gigitan
Tidak segar
Baik
Baik
Baik
Baik
Tidak muncul
Baik
Baik
Baik
Baik
Baik
Baik
Ranting
Baik
Baik
Baik
BercakMati
bercak coklat
Baik
Jaringan kulit
berubah
Terdapat lapisan hitam
Baik
Gugur, menguning, tulang Baik
daun pucat
Kulit kehitam- Warna kekuninganBaik
hitaman
kuningan
Berlendir
Tak
berkembang
Baik
Baik
Baik
Terdapat
bercak seperti
Mata ikan
Baik
Kerdil
Tidak berkembang Tidak
berkembang
Baik
Baik
Baik
Berlebihan
Baik
Jarang
Baik
16
TabelPenyakit
Baik
Akar
Batang
Jorok
Daun
Tidak berkembang
Baik
Baik
Baik
Baik
Tidak segar
Baik
Cabang
Ranting
Terdapat
Kerdil
bintik merah
Baik
Baik
Baik
Baik
Tunas
Tidak muncul
Baik
Baik
Bunga
Tak
berkembang
Baik
Baik
Sedangkan Isi Tabel Penanggulangannya adalah sebagai berikut.
TblPenanggulangan
Jenis Penyakit
Trips
Tungau
Lalat Buah
Ulat Penggerek
Paru Buah
Antroknosa
Busuk Pangkal
Batang
Embun Jelaga
Trestesa
Diplodia
Embun Tepung
Jamur Upas
Kutu Babi
Kutu Buah
Kutu Sisik
Lada-lada
Kopsit
Keong
Busuk Akar
Kangker
Tua-tua
Mata Ikan
Jamur Merah
Kudis
Buah Busuk
Penanggulangan
Potong Cabang yang terserang, hindari Mulsa, gunakan Insektisida
Atur tajuk, jauhkan mulsa jerami, gunakan Akrisida
Musnahkan buah yang terserang, gunakan tanaman perangkap, lakukan pengasapan, gunakan
pestisida.
Musnahkan bagian yang terserang, petik bunga/buah yang terserang, gunakan Ablysilan citri, gu
Potong bagian yang terserang, gunakan tanaman alami, gunakan insektisida yang terdaftar
Jaga kesuburan tanah, Lakukan sanitasi, potong cabang yang rimbun, funsida Mankozeb
Hindari pengairan, hindari luka pada batang dan akar, potong bagian yang terserang, pemupuka
Potong cabang yang tidak produktif, gunakan fungsida, gunakan insektida.
Lakukan Eradikasi, Tanaman Inang, gunakan Insektisida
Potong bagian yang terserang, bersihkan Gulma, kurangi Kelembaban, Penjarangan buah, bers
California
Lakukan Sanitasi Tunas, Semprot serbuk Belerang, gunakan fungsida
Lakukan sanitasi kebun, potong bagian yang terserang, hindari kelembaban, oleskan fungsida
Lakukan pemangkasan, bersihkan gulma, gunakan pestisida
Hindari pemadatan cabang,Semprotkan serbuk belerang, semprotkan pembersih, gunakan Meth
Lakukan pemengkasan, hindari kelembaban, gunakan pestisida Tiamutaksan
Lakukan pembersihan, gunakan pembersih, gunakan pestisida Tramutaksan
Gunakan Tramuksan, Asejab
Taburkan Limbah kulit Padi disekitar batang, bersihkan gulma, lakukan penyemprotan dengan a
Bersihkan gulma, Hindari kelembaban, potong akar yang busuk, lakukan pemupukan seimbang.
Lakukan Penggemburan disekitar batang, pemberian Tanah gemuk, Pupuk nitrogen, bongkar
Hindari kepadatan ranting, semprotkan serbuk belerang, gunakan pestisida Metomil
Hindari kepadatan cabang, gunakan pestisida Difakonozol, Hexakomozol
Lakukan pembersihan batang, semprotkan pembersih, gunakan petisita Samite
Jaga tingkat kelebaban, usahakan tajuk kena sinar matahari, gunakan pestida yang terdaftar.
Lakukan pemangkasan, gunakan pestisida Benlox, Mankazeb
17
Cara Kerja Sistem Pakar
Adapun cara kerja dari sistem pakar untuk mendeteksi penyakit jeruk ini adalah sebagai
berikut.
1. User diminta untuk menginputkan data akar, batang, daun, cabang, ranting, tunas,
bunga, dan buah.
2. Berdasarkan data – data yang sudah diinputkan oleh user maka sistem pakar
kemudian akan mencari jenis penyakit apa yang menyerang tanaman.
3. Berdasarkan jenis penyakit yang sudah teridentifikasi ini kemudian sistem pakar akan
memberikan solusi penanggulangannya.
Adapun bentuk tampilan form untuk pengisian data akar, batang, daun, cabang, ranting,
tunas, bunga, dan buah adalah sebagai berikut.
Combo1
Combo2
Combo3
Combo4
Combo5
Combo6
Combo7
Combo8
Text1
18
NB :
Isi Combo Box akar, batang, daun, cabang, ranting, tunas, bunga, dan buah adalah
diperoleh dari tabel Penyakit. Sebagai contoh kondisi akar yang berasal dari tabel
penyakit adalah baik, berlendir, dan tak berkembang. Maka combo box akar isinya
adalah baik, berlendir, dan tak berkembang.
Adapun bentuk tampilan form penanggulangan adalah sebagai berikut.
Combo1
Text1
Adapun kode programnya adalah sebagai berikut.
Kode Program untuk Modul
Option Explicit
Public KonekDb As New ADODB.Connection
Public Rs_jeruk As ADODB.Recordset
Public Rs_penyakit As ADODB.Recordset
Public Rs_jeruk1 As ADODB.Recordset
Public Rs_penyakit1 As ADODB.Recordset
19
Public StrKonekDb As String
Public strSQL, SQL, sqldasal As String
Public Sub BukaDatabase()
Set KonekDb = New ADODB.Connection
StrKonekDb = "Provider=Microsoft.Jet.OLEDB.4.0;Persist " _
& "Security Info=False;Data Source=" _
& App.Path + "\jeruk.mdb"
On Error Resume Next
If KonekDb.State = adStateOpen Then
KonekDb.Close
Set KonekDb = New ADODB.Connection
KonekDb.Open StrKonekDb
Else
KonekDb.Open StrKonekDb
End If
'Periksa KonekDb
If Err.Number <> 0 Then
MsgBox "GAGAL KONEKSI DATABASE, SILAHKAN PERBAIKI DATA SETTING
ANDA", vbOKOnly, "Kesalahan"
End
Else
'MsgBox "KonekDb Sukses..!!!", vbInformation, "Pesan"
End If
SQL = ""
SQL = "SELECT *" _
& " FROM TabelPenyakit "
Set Rs_jeruk = New ADODB.Recordset
Rs_jeruk.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
SQL = ""
SQL = "SELECT *" _
20
& " FROM TabelPenyakit "
Set Rs_penyakit = New ADODB.Recordset
Rs_penyakit.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
SQL = ""
SQL = "SELECT *" _
& " FROM TblPenanggulangan "
Set Rs_jeruk1 = New ADODB.Recordset
Rs_jeruk1.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
SQL = ""
SQL = "SELECT *" _
& " FROM TblPenanggulangan "
Set Rs_penyakit1 = New ADODB.Recordset
Rs_penyakit1.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
End Sub
Kode Program untuk Form Gejala
Dim a(100) As String
Dim b(100) As String
Dim c(100) As String
Dim d(100) As String
Dim e(100) As String
Dim f(100) As String
Dim g(100) As String
Dim h(100) As String
Dim a1(100) As String
Dim b1(100) As String
Dim c1(100) As String
Dim d1(100) As String
Dim e1(100) As String
Dim f1(100) As String
Dim g1(100) As String
Dim h1(1100) As String
Private Sub Command1_Click()
21
Set Rs_penyakit = New ADODB.Recordset
SQL = "SELECT *FROM tabelpenyakit where akar ='" & Combo1.Text &
"' and batang='" & Combo2.Text & "' and daun='" & Combo3.Text & "' and
cabang='" & Combo4.Text & "' and ranting='" & Combo5.Text & "' and
tunas='" & Combo6.Text & "' and bunga='" & Combo7.Text & "' and buah='"
& Combo8.Text & "'"
Rs_penyakit.Open
SQL,
KonekDb,
adOpenKeyset,
adCmdText
If Rs_penyakit.BOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Else
Rs_penyakit.MoveFirst
Do While Not Rs_penyakit.EOF
On Error Resume Next
Text1.Text = Rs_penyakit!penyakit
Rs_penyakit.MoveNext
Loop
End If
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
Call BukaDatabase
With Rs_jeruk
.MoveFirst
Do While Not .EOF
'MsgBox tampung
a(jum) = !akar
b(jum) = !batang
c(jum) = !daun
d(jum) = !cabang
e(jum) = !ranting
f(jum) = !tunas
adLockReadOnly,
22
g(jum) = !bunga
h(jum) = !buah
jum = jum + 1
.MoveNext
Loop
End With
For i = 0 To jum - 1
For j = 0 To angka
If a(i) <> a1(j) Then
If j = angka Then
a1(angka) = a(i)
Combo1.AddItem a1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If b(i) <> b1(j) Then
If j = angka Then
b1(angka) = b(i)
Combo2.AddItem b1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
23
For j = 0 To angka
If c(i) <> c1(j) Then
If j = angka Then
c1(angka) = c(i)
Combo3.AddItem c1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If d(i) <> d1(j) Then
If j = angka Then
d1(angka) = d(i)
Combo4.AddItem d1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If e(i) <> e1(j) Then
If j = angka Then
e1(angka) = e(i)
Combo5.AddItem e1(angka)
angka = angka + 1
End If
Else
j = angka
End If
24
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If f(i) <> f1(j) Then
If j = angka Then
f1(angka) = f(i)
Combo6.AddItem f1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If g(i) <> g1(j) Then
If j = angka Then
g1(angka) = g(i)
Combo7.AddItem g1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If h(i) <> h1(j) Then
If j = angka Then
25
h1(angka) = h(i)
Combo8.AddItem h1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
End Sub
Kode Program untuk Form Penanggulangan
Dim a(100) As String
Private Sub Command1_Click()
Set Rs_penyakit1 = New ADODB.Recordset
SQL = "SELECT *FROM tblPenanggulangan where [jenis penyakit] ='"
& Combo1.Text & "'"
Rs_penyakit1.Open
SQL,
KonekDb,
adOpenKeyset,
adCmdText
If Rs_penyakit1.BOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Else
Rs_penyakit1.MoveFirst
Do While Not Rs_penyakit1.EOF
On Error Resume Next
Text1.Text = Rs_penyakit1!penanggulangan
Rs_penyakit1.MoveNext
Loop
End If
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
adLockReadOnly,
26
Private Sub Form_Load()
Call BukaDatabase
With Rs_jeruk1
.MoveFirst
Do While Not .EOF
'MsgBox tampung
a(jum) = ![jenis penyakit]
jum = jum + 1
.MoveNext
Loop
End With
For i = 0 To jum - 1
Combo1.AddItem a(i)
Next i
End Sub
Tugas
Buatlah Sistem Pakar untuk Mendeteksi Kerusakan Komputer.
Struktur Database nya sebagai berikut.
Tabel Gejala
Gejala
KodeGejala
Nama Gejala
G0001
Komputer Memiliki Tampilan Video
G0002
Komputer Tidak Memiliki Tampilan Video
G0003
Kipas Pencatu Daya Berputar
G0004
Kipas Pencatu Daya Tidak Berputar
G0005
Ada Komponen yang Meleleh atau terbakar
G0006
Tidak Ada komponen yang meleleh atau terbakar
G0007
Komputer berbunyi Beep saat dinyalakan
G0008
Komputer tidak berbunyi Beep saat dinyalakan
G0009
Komputer Mengeluarkan Bunyi Beep satu kali
G0010
Komputer Mengeluarkan Bunyi Beep berkali - kali
G0011
Komputer memiliki ROM BIOS AMI
G0012
Komputer Tidak memiliki ROM BIOS AMI
G0013
Kualitas video tidak memadai
G0014
Kualitas video memadai
G0015
Komputer menampilkan adanya pesan kesalahan
27
Gejala
KodeGejala
Nama Gejala
G0016
Komputer tidak menampilkan adanya pesan kesalahan
G0017
Komputer dapat di boot
G0018
Komputer tidak dapat di boot
G0019
Komputer memiliki hard disk
G0020
Komputer tidak memiliki hard disk
G0021
Komputer memiliki floppy disk
G0022
Komputer dapat diboot dan ada tampilan video
G0023
Peripheral lain bekerja
G0024
Peripheral lain tidak bekerja
G0025
Papan ketik bekerja
G0026
Papan ketik tidak bekerja
G0027
Peripheral tersebut mempunyai antar muka khusus
G0028
Peripheral tersebut tidak mempunyai antar muka khusus
G0029
Peripheral jenisnya serial
G0030
Peripheral tersebut mouse
G0031
Komputer bisa diboot normal tetapi kadang - kadang macet
G0032
Komputer bisa diboot normal tetapi kadang - kadang mereset sendiri
G0033
Komputer bisa diboot tidak mereset sendiri
G0034
Hasil pemeriksaan chip memori tidak ditemukan memori yang buruk
G0035
Komputer Bekerja setelah anda mengganti pencatu daya
G0036
Komputer tidak bekerja walaupun anda telah mengganti pencatu daya
G0037
Komputer bekerja setelah anda mengganti motherboard yang baik kerjanya
G0038
ada chip RAM yang gagal tes
G0039
Tidak ada chip RAM yang gagal tes
G0040
Komputer bekerja normal setelah memasang UPS
G0041
Komputer tetap tidak bekerja walaupun Anda memasang UPS
Tabel Solusi
Solusi
KodeSolusi Gej1 Gej2 Gej3 Gej4 Gej5 Gej6
NamaSolusi
S0001
G0001 G0013 Konsultasikan dengan memanggil basis
pengetahuan mengenai video
S0002
G0001 G0014 G0015 Periksa sesuai dengan pesan
kesalahan dan lakukan perbaikan
sesuai dengan pesan kesalahan
S0003
G0001 G0014 G0016 G0017 Undefined / Tidak ada kerusakan awal
S0004
G0001 G0014 G0016 G0018 G0020 G0021 Konsultasikan dengan memanggil basis
pengetahuan mengenai floppy drive
S0005
G0001 G0014 G0016 G0018 G0019 Konsultasikan dengan memanggil basis
pengetahuan mengenai hard disk
S0006
G0002 G0004 G0006 Konsultasikan dengan memanggil basis
pengetahuan mengenai tidak
beroperasinya kipas pendingin
S0007
G0002 G0004 G0005 Konsultasikan dengan memanggil basis
pengetahuan perbaikan komponen
terbakar
28
Solusi
KodeSolusi Gej1 Gej2 Gej3 Gej4 Gej5 Gej6
NamaSolusi
S0008
G0002 G0003 G0008 Konsultasikan dengan memanggil basis
pengetahuan mengenai memori
S0009
G0002 G0003 G0007 G0009 G0011 Konsultasikan dengan memanggil basis
pengetahuan mengenai video
S0010
G0002 G0003 G0007 G0010 Periksa sesuai dengan kode kesalahan
beep
S0011
G0002 G0003 G0007 G0012 Periksa sesuai dengan kode kesalahan
S0012
G0022 G0023 G0025 Masalah IWF (Intermitten Weird Failure)
S0013
G0022 G0023 G0026 Konsultasikan dengan memanggil basis
pengetahuan mengenai papan ketik
S0014
G0022 G0024 G0027 Periksa buku petunjuk, kemungkinan
ada konflik address atau konflik interrupt
S0015
G0022 G0024 G0028 G0030 Konsultasikan dengan memanggil basis
pengetahuan mengenai mouse
S0016
G0032 G0038 Memori Anda rusak, gantilah memori
tersebut
S0017
G0031 G0036 G0039 G0040 Gunakan UPS
S0018
G0031 G0036 G0039 Ganti Pencatu daya
S0019
G0031 G0036 Perangkat lunak tidak lengkap atau
BIOS yang kadaluarsa atau
menggunakan perangkat lunak bajakan
S0020
G0033 G0037 Bawa ke pusat reparasi
S0021
G0032 G0036 Perangkat lunak tidak lengkap atau
BIOS yang kadaluarsa atau
menggunakan perangkat lunak bajakan
S0022
G0032 G0036 G0040 Pakailah UPS
S0023
G0032 G0036 G0037 G0041 Ganti Motherboard
Data Mining
Data Mining (DM) adalah salah satu bidang yang berkembang pesat karena besarnya
kebutuhan akan nilai tambah dari database sekala besar yang semakin banyak
terakumulasi sejalan dengan pertumbuhan teknologi informasi. Definisi umum dari DM
itu sendiri adalah serangkaian proses untuk menggali nilai tambah berupa pengetahuan
yang selama ini tidak diketahui secara manual dari suatu kumpulan data.
29
Data Mining merupakan salah satu cabang ilmu komputer yang relatif baru. Sampai saat
ini orang masih memperdebatkan untuk menempatkan data mining di bidang ilmu mana,
karena data mining menyangkut database, artificial intelligence (kecerdasan buatan),
statistik, dan sebagainya.
Ada pihak yang berpendapat bahwa data mining tidak lebih dari analisa statistik yang
berjalan di atas database. Namun, pihak lain berpendapat bahwa database berperan
penting di data mining karena data mining mengakses data yang ukurannya besar (bisa
sampai terabyte).
Illustrasi Data Mining :
1. Bayangkan berapa transaksi yang dimasukkan oleh Hypermarket semacam Carrefour
atau transaksi kartu kredit dari sebuah bank dalam seharinya dan bayangkan betapa
besarnya ukuran data mereka jika nanti telah berjalan beberapa tahun.
Pertanyaannya adalah, apakah data tersebut akan dibiarkan menggunung, tidak
berguna lalu dibuang, ataukah kita dapat menambangnya untuk mencari emas, berlian
yaitu informasi yang berguna untuk organisasi kita. Misalnya dari data penjualan dari
Hypermarket Carrefour kita bisa mengetahui jika untuk meningkatkan penjualan
produk A maka kita harus meletakkan produk A berdekatan dengan produk apa.
2. Jika Anda mempunyai kartu kredit, sudah pasti Anda bakal sering menerima surat
berisi brosur penawaran barang atau jasa. Jika bank pemberi kartu kredit mempunyai
1.000.000 nasabah, dan mengirimkan sebuah (hanya satu) penawaran dengan biaya
pengiriman sebesar Rp. 1.000 per buah maka biaya yang dihabiskan adalah Rp. 1
Milyar.
Jika bank tersebut mengirimkan penawaran sekali sebulan berarti 12 x dalam setahun,
maka anggaran yang dikeluarkan per tahunnya adalah Rp. 12 Milyar.
Dari dana Rp. 12 Milyar yang dikeluarkan, berapa persenkah konsumen yang benar –
benar membeli? Mungkin hanya 10% nya. Secara harfiah, berarti 90% dana tersebut
terbuang sia – sia.
Persoalan di atas merupakan salah satu persoalan yang dapat diatasi oleh Data Mining
dari sekian banyak potensi permasalahan yang ada.
30
Data Mining dapat menambang data transaksi belanja kartu kredit untuk melihat
manakah pembeli – pembeli yang memang potensial untuk membeli produk tertentu.
Mungkin tidak sampai pada presisi 10%, tetapi bayangkan jika kita dapat menyaring
20%, tentunya 80% dana dapat digunakan untuk hal lain.
Data Mining sering dikenal dengan nama Knowledge Discovery in Database (KDD).
Namun, sebenarnya Data Mining merupakan salah satu langkah di dalam KDD.
1. Data Selection
2. Data Cleaning
3. Data Transformation
4. Data Mining
5. Evaluation
6. Representation of Knowledge
Teori Rough Set dan Data Mining
Teori Rough Set adalah sebuah teknik matematika yang dikembangkan oleh Pawlack
pada Tahun 1980. Teknik ini merupakan teknik yang efisien untuk KDD proses dan Data
Mining.
Secara umum, teori Rough Set telah digunakan dalam banyak aplikasi seperti Medicine,
Pharmacology, Business, Banking, Engineering Design, Image Processing, dan Decision
Analysis.
Atribut di dalam Rough Set ada 2 yaitu :
1. Atribut kondisi (Conditional Attribute)
2. Atribut keputusan (Decision Attribute)
Rough set menawarkan dua bentuk representasi data yaitu Information System (IS) dan
Decision System (DS).
31
Definisi Information System : Sebuah Information System (IS) adalah pasangan IS =
{U,A}, di mana U = {e1, e2, e3, …, em} dan A = {a1, a2, …, an} yang merupakan
sekumpulan example dan atribut kondisi secara berurutan.
Definisi di atas memperlihatkan bahwa sebuah Information System terdiri dari
sekumpulan example, seperti {e1, e2, …, em} dan atribut kondisi, seperti {a1, a2, …,
an}. Sebuah Information System yang sederhana dapat dilihat pada tabel di bawah ini.
Object
Tabel Information System
Example
Studies
Education
….
Works
E1
Poor
SMU
….
Poor
E2
Poor
SMU
….
Good
E3
Moderate
SMU
….
Poor
E4
Moderate
Diploma
….
Poor
E5
Poor
SMU
….
Poor
E6
Poor
SMU
….
Poor
E7
Moderate
Diploma
….
Poor
E8
Good
MSc
….
Good
E9
Good
MSc
….
Good
E10
Good
MSc
….
Good
….
….
….
….
….
E99
Poor
SMU
….
Good
E100
Moderate
Diploma
….
Poor
Tabel di atas memperlihatkan sebuah Information System yang sederhana. Dalam
Information System, tiap – tiap baris merepresentasikan objek sedangkan Column
merepresentasikan attribute. Di mana terdiri dari m objek, seperti E1, E2, E3, ... , Em, dan
n attribute seperti Studies, Education, ...., Works.
32
Dalam banyak aplikasi, sebuah outcome dari pengklasifikasian diketahui yang
direpresentasikan dengan sebuah Decision Attribute,C = {C1, C2, ... , Cp). Maka
Information System (IS) menjadi IS = (U, {A,C}). Decision Systems (DS) yang
sederhana dapat diperlihatkan pada tabel di bawah ini.
Decision Attribute
Example
Studies
Education
....
Works
Income
E1
Poor
SMU
....
Poor
None
E2
Poor
SMU
....
Good
Low
E3
Moderate
SMU
....
Poor
Low
E4
Moderate
Diploma
....
Poor
Low
E5
Poor
SMU
....
Poor
None
E6
Poor
SMU
....
Poor
None
E7
Moderate
Diploma
....
Poor
Low
E8
Good
MSc
....
Good
Medium
E9
Good
MSc
....
Good
Medium
E10
Good
MSc
....
Good
High
....
....
....
....
....
....
E99
Poor
SMU
....
Good
Low
E100
Moderate
Diploma
....
Poor
Low
Tabel di atas memperlihatkan sebuah Decision System yang sederhana. Terdiri dari m
objek, seperti E1, E2, ..., Em, dan n attribute, seperti Studies, Education, ..., Works dan
Income (D). Dalam tabel ini, n-1 attribute: Studies, Education, ..., Works adalah attribute
kondisi, sedangkan Income adalah Decision Attribute.
33
Kemudian setelah itu akan dibentuk Equivalence Class. Di mana Equivalence class adlah
mengelompokkan objek – objek yang sama untuk attribute A ε (U, A). Diberikan
Decision Systems pada tabel sebelumnya sehingga kita dapat memperoleh Equivalence
Class (EC1 – EC5) seperti digambarkan pada tabel berikut.
Class
Studies
Education
Works
Income
Num_Obj
EC1
Poor
SMU
Poor
None
50
EC2
Poor
SMU
Good
Low
5
EC3
Moderate
SMU
Poor
Low
30
EC4
Moderate
Diploma
Poor
Low
10
EC5,1
Good
MSc
Good
Medium
4
EC5,2
Good
MSC
Good
High
1
Class EC5 adalah sebuah indeterminacy yang memberikan 2 (dua) keputusan yang
berbeda. Situasi ini dapat ditangani dengan teknik data cleaning. Kolom yang paling
kanan mengindikasikan jumlah objek data yang ada adalah Decision System untuk class
yang sama.
Setelah dibentuk Equivalence Class maka langkah selanjutnya adalah membentuk
Discernibility Matrix. Definisi Discernibility Matrix : Diberikan sebuah IS A = (U,A) and
B ⊆ A, Discernibility matrix dari A adalah MB, di mana tiap – tiap entry MB (I,j) terdiri
dari sekumpulan attribute yang berbeda antara objek Xi dan Xj. Tabel berikut
memperlihatkan Discernibility Matrix dari tabel sebelumnya.
EC1
EC2
EC3
EC4
EC5
EC1
x
C
A
Ab
Abc
EC2
C
X
Ac
Abc
Ab
34
EC3
A
Ac
X
B
Abc
EC4
Ab
Abc
B
x
Abc
EC5
Abc
Ab
Abc
Abc
x
Adapun Discernibilty Matrix Modulo D : Diberikan sebuah DS A = (U, A{d}) dan subset
dari attribute B ⊆ A, Discernibility matrix modulo D dari A, MBd, didefinisikan seperti
berikut dimana MB(I,j) adalah sekumpulan attribute yang berbeda antara objek Xi dan Xj
dan juga berbeda attribute keputusan.
Adapun Discernibility Matrix Modulo D dapat dilihat pada tabel berikut.
EC1
EC2
EC3
EC4
EC5
EC1
X
C
A
Ab
Abc
EC2
C
X
X
x
Ab
EC3
A
X
X
X
Abc
EC4
Ab
X
X
X
Abc
EC5
Abc
Ab
Abc
Abc
X
Kemudian setelah itu akan dihasilkan Reduct, di mana reduct adalah penyeleksian attribut
minimal (interesting attribute) dari sekumpulan attribut kondisi dengan menggunakan
prime
implicant
fungsi
boolean.
Kumpulan
dari
semua
Prime
Implicant
mendeterminasikan sets of reduct. Discernibility matrix modulo D pada tabel sebelumnya
dapat ditulis sebagai formula CNF seperti diperlihatkan pada tabel di bawah ini.
Class
CNF of Boolean Function
Prime Implicant
Reducts
E1
c ^ a ^ (avb) ^ (avbvc)
a^c
{a,c}
E2
c ^ (avb)
c(avb)
{a,c},{b,c}
E3
a^(avbvc)
A
{a}
E4
(avb)^(avbvc)
Avb
{a},{b}
E5
(avbvc)^(avb)
(avb)
{a},{b}
35
Setelah dihasilkan reduct, maka langkah selanjutnya adalah menghasilkan rule yang ada
berdasarkan reduct tersebut.
Knowledge yang dihasilkan :
Reduct = (a, c) (Studies, Works)
-
If studies = poor and works = poor then income = none
-
If studies = poor and works = good then income = low
-
If studies = moderate and works = poor then income = low
-
If studies = good and works = good then income = medium or income = high
Reduct = (b,c) (Education, Works)
-
If education = SMU and works = poor then income = none or income = low
-
If education = SMU and works = good then income = low
-
If education = diploma and works = poor then income = low
-
If education = MSc and works = good then income = medium or income = high
Reduct = (a) (Studies)
-
If studies = poor then income = none or income = low
-
If studies = moderate then income = low
Reduct = (b) (education)
-
If education = SMU then income = none or income = low
-
If education = Diploma then income = low
-
If education = MSc then income = Medium or income = High
Salah satu aplikasi yang mengimplementasikan pemakaian algoritma Rough Set ini
adalah Rosetta.
Adapun cara penggunaannya adalah sebagai berikut.
1. Ketikkan data yang ada pada lembar kerja Microsoft Excel. Misalkan data yang
diketikkan adalah sebagai berikut.
Example
Studies
Education
....
Works
Income
E1
Poor
SMU
....
Poor
None
36
E2
Poor
SMU
....
Good
Low
E3
Moderate
SMU
....
Poor
Low
E4
Moderate
Diploma
....
Poor
Low
E5
Poor
SMU
....
Poor
None
E6
Poor
SMU
....
Poor
None
E7
Moderate
Diploma
....
Poor
Low
E8
Good
MSc
....
Good
Medium
E9
Good
MSc
....
Good
Medium
E10
Good
MSc
....
Good
High
....
....
....
....
....
....
E99
Poor
SMU
....
Good
Low
E100
Moderate
Diploma
....
Poor
Low
37
2. Kemudian setelah itu jalankan progra aplikasi Rosetta. Maka akan dijumpai tampilan
berikut.
38
3. Setelah itu klik menu File – New
4. Maka akan dijumpai tampilan berikut.
5. Selanjutnya klik kanan pada bagian Structures, lalu pilih ODBC. Maka akan muncul
tampilan berikut.
39
6. Selanjutnya pilih Open Database. Makan akan dijumpai tampilan berikut.
7. Pilih Tab Machine Data Source.
8. Pilih Excel Files. Setelah itu OK
9. Selanjutnya pilih lokasi penyimpanan file Excel dan pilih file excel yang ingin
digunakan sebagai data. Setelah itu klik OK.
10. Maka akan muncul tampilan berikut.
40
11. Berikan tanda check list pada semua pilihan atribut yang ada. Setelah itu klik tombol
OK. Maka Anda akan menjumpai hasil sebagai berikut.
12. Tampak pada gambar di atas bahwa telah muncul Book1 yang merupakan nama file
excel di mana kita mengetikkan data yang sebelumnya.
41
13. Setelah itu klik kanan pada Book1 dan pilih Reduce – Dynamic Reduct (RSES), maka
akan dijumpai tampilan berikut.
14. Setelah itu OK, maka akan dijumpati tampilan berikut.
15. Klik kanan pada bagian No name lalu pilih Generating Rules. Maka akan diperoleh
hasil berikut.
42
16. Double Klick No name yang berwarna kuning, maka akan diperoleh hasil berikut.
Tugas :
Carilah aplikasi lain yang cara kerjanya menggunakan algoritma Rough Set.
43
Studi Kasus : Penerapan Algoritma Rough Set untuk Sistem Penilaian dan Analisis
Kinerja Dosen
Dalam rangka menilai dan menganalisis kinerja dosen didasarkan pada sejumlah
komponen penilaian seperti :
1. Proses belajar mengajar (Maks. 50%)
2. Bimbingan dan konsultasi (Maks. 20%)
3. Penelitian dan pengabdian pada masyarakat (Maks. 20%)
4. Tugas lain di luar tugas utama (Maks. 10%)
Komponen Proses Belajar Mengajar
Kriteria Yang Dinilai
Bobot
a. Memenuhi jumlah tatap muka sesuai dengan yang 10%
dijadwalkan, termasuk hadir dan selesai tepat waktu
b. Membuat Soal Ujian, Jawaban dan mengkoreksi tepat 10%
waktu
c. Mengawas ujian seusai dengan penjadwalan dan tugas 5%
utama
d. Menguji magang kerja dan skripsi sesuai dengan 5%
penjadwalan
e. Hasil feed back / penilaian dari mahasiswa tentang proses 20%
belajar mengajar
Komponen Bimbingan dan Konsultasi
Kriteria Yang Dinilai
Bobot
a.
Memberikan bimbingan magang kerja / KP dan Skripsi
10%
b.
Menjadi penasehat akademik (dosen wali)
10%
44
Komponen Penelitian dan Pengabdian pada Masyarakat
Kriteria Yang Dinilai
a.
Bobot
Membuat karya ilmiah : penelitian, makalah, buku, 10%
diktat, artikel di jurnal / majalah / koran, dsb
b.
Melakukan pengabdian masyarakat : bakti sosial, 10%
memberikan penyuluhan / pelatihan, termasuk membina
mahasiswa
Komponen Tugas Lain di Luar Tugas Utama
Kriteria Yang Dinilai
Bobot
a.
Bertugas sebagai panitia
5%
b.
Menghadiri kegiatan yang diselenggarakan perguruan 10%
tinggi : seminar, pelatihan, simposium, rapat kerja,
upacara, dsb
Adapun Total hasil penilaian kemudian dijadikan dalam bentuk kategori dengan
ketentuan :
<50 dikatakan Kurang = 1
51 ≤ X ≤ 70 dikategorikan Cukup = 2
71 ≤ X ≤ 80 dikategorikan Baik = 3
81 ≤ X ≤ 100 dikategorikan Sangat Baik = 4
Adapun data nama dosen dan nilai untuk masing – masing komponen penilaian adalah
seperti yang terlihat pada decision system berikut..
45
NIDN
Nama Dosen
Nilai
Nilai
Nilai
Nilai
Jumlah Keputusan
PBM
BK
PPM
TL
Nilai
0004076207
Dr. Edy Hermansyah, PhD
45
15
16
10
86
Sangat Baik
0003125905
Drs. Indra Sakti L, MPd
39
10
15
8
75
Baik
0210067002
Yulia Darmi, M.Kom
38
9
10
7
67
Cukup
0524117601
Andang Sunarto, M.Kom
40
15
15
10
78
Sangat baik
0020027105
Anizar Indriani, M.T.
40
10
15
7
72
Baik
0206077901
Herlina L.S, S.Kom
38
20
5
10
70
Baik
0213047501
Dini Selviana, S.Kom
35
15
5
10
65
Cukup
0206107901
Munazip Alperi, M.Si
42
8
20
5
70
Baik
0210128102
Ahmad Syakirman, S.Pd
43
7
10
10
72
Baik
0215127703
M. Jhon, M.Kom
35
12
15
10
75
Baik
46
Untuk atribut A dikelompokkan menjadi 4 kelompok, yaitu :
0 ≤ X ≤ 35 = 1
36 ≤ X ≤ 40 = 2
41 ≤ X ≤ 45 = 3
46 ≤ X ≤ 50 = 4
Untuk atribut B dikelompokkan menjadi 4 kelompok, yaitu :
0≤X≤8=1
9 ≤ X ≤ 12 = 2
13 ≤ X ≤ 16 = 3
17 ≤ X ≤ 20 = 4
Untuk atribut C dikelompokkan menjadi 4 kelompok, yaitu :
0≤X≤5=1
6 ≤ X ≤ 10 = 2
11 ≤ X ≤ 15 = 3
16 ≤ X ≤ 20 = 4
Untuk atribut D dikelompokkan menjadi 4 kelompok, yaitu :
0≤X≤2=1
3≤X≤5=2
6≤X≤8=3
9 ≤ X ≤ 10 = 4
Maka Decision System yang ada dapat dibuat Sebagai berikut.
47
NIDN
Nama Dosen
Nilai
Nilai
Nilai
Nilai
Jumlah Keputusan
PBM
BK
PPM
TL
Nilai
0004076207
Dr. Edy Hermansyah, PhD
3
3
4
4
4
4
0003125905
Drs. Indra Sakti L, MPd
2
2
3
3
3
3
0210067002
Yulia Darmi, M.Kom
2
2
2
3
2
2
0524117601
Andang Sunarto, M.Kom
2
3
3
4
4
4
0020027105
Anizar Indriani, M.T.
2
2
3
3
3
3
0206077901
Herlina L.S, S.Kom
2
4
1
4
3
3
0213047501
Dini Selviana, S.Kom
2
3
1
4
2
2
0206107901
Munazip Alperi, M.Si
3
1
4
2
3
3
0210128102
Ahmad Syakirman, S.Pd
3
1
2
4
3
3
0215127703
M. Jhon, M.Kom
1
2
3
4
3
3
48
Bila dibuat dalam bentuk equivalence class akan menjadi :
A
B
C
D
K
EC1
3
3
4
4
4
EC2
2
2
3
3
3
EC3
2
2
2
3
2
EC4
2
3
3
4
4
EC5
2
4
1
4
3
EC6
2
3
1
4
2
EC7
3
1
4
2
3
EC8
3
1
2
4
3
EC9
1
2
3
4
3
Selanjutnya akan dibuat Discernibility Matriz Modulo D
EC1
EC2
EC3
EC4
EC5
EC6
EC7
EC8
EC9
EC1
X
ABCD ABCD
X
ABC
AC
BD
BC
ABC
EC2
ABCD X
C
BD
X
BCD
X
X
X
EC3
ABCD C
X
BCD
BCD
X
ABCD
ABD
ACD
EC4
X
BD
BCD
X
BC
C
ABCD
ABC
ABC
EC5
ABC
X
BCD
BC
X
B
X
X
X
EC6
AC
BCD
X
C
B
X
ABCD
ABC
ABC
EC7
BD
X
ABCD
ABCD X
ABCD X
X
X
EC8
BC
X
ABD
ABC
X
ABC
X
X
X
EC9
ABC
X
ACD
ABC
X
ABC
X
X
X
49
Class
CNF of Boolean Function
EC1
(A+B+C+D)
*
(A+B+C+D)
Prime Implicant
* AB + BC + CD
(A+B+C) * (A+C) * (B+D) * (B+C) *
(A+B+C)
EC2
(A+B+C+D) * C * (B+D) * (B+C+D)
C * (B+D) = CB
+ CD
EC3
(A+B+C+D) * C * (B+C+D) * BC + CD + AC
(B+C+D) * (A+B+C+D) * (A+B+D)
* (A+C+D)
EC4
(B+D) * (B+C+D) * (B+C) * C * BC + CD
(A+B+C+D) * (A+B+C) * (A+B+C)
EC5
(A+B+C) * (B+C+D) * (B+C) * B
B
EC6
(A+C) * (B+C+D) * C * B * BC
(A+B+C+D) * (A+B+C) * (A+B+C)
EC7
(B+D) * (A+B+C+D) * (A+B+C+D) B + D
* (A+B+C+D)
EC8
(B+C) * (A+B+D) * (A+B+C) * B + CD + ACD
(A+B+C)
EC9
(A+B+C) * (A+C+D) * (A+B+C) * A+ C + BD
(A+B+C)
Reducts
50
Sistem Pakar
Sistem pakar adalah program komputer yang didesain untuk meniru kemampuan
memecahkan masalah dari seorang pakar.
Menurut Martin dan Osman (1988), Sistem Pakar adalah sistem berbasis komputer yang
menggunakan pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah,
yang biasanya hanya dapat diselesaikan oleh seorang pakar dalam bidang tertentu.
Pengetahuan sendiri dapat didefinisikan sebagai kemampuan untuk memahami dan
mempelajari sesuatu (ability to understand and learn things).
Pakar adalah orang yang memiliki kemampuan atau mengerti dalam menghadapi suatu
masalah. Lewat pengalaman, seorang pakar mengembangkan kemampuan yang
membuatnya dapat memecahkan permasalahan dengan hasil yang baik dan efisien.
Untuk merancang sistem pakar, kita dapat menggunakan beberapa teknik AI, seperti :
1. Fuzzy Logic
2. Neural Network
3. Genetic Algorithm
4. Rule Base Expert System
5. Dan beberapa teknik lain seperti Rough Set, Apriori, dll
Untuk membangun sistem papar maka komponen – komponen yang harus dimiliki adalah
sebagai berikut.
51
Basis Pengetahuan
Ket (Kaidah)
Memori Kerja
(Fakta)
Mesin Inferensi
Fasilitas
Penjelasan
Fasilitas Akuisisi
Pengetahuan
Antar Muka
Pengguna
Keterangan :
1. Antar Muka Pengguna (User Interface)
User interface merupakan mekanisme yang digunakan oleh pengguna dan sistem
pakar untuk berkomunikasi, informasi yang diterima dari pemakai diubah ke dalam
bentuk yang dapat diterima oleh sistem dan menghasilkan pengetahuan yang
dimengerti oleh pemakai.
2. Basis Pengetahuan
Basis Pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan
penyelesaian masalah, komponen ini disusun atas elemen dasar, yaitu fakta.
3.
Mesin Inferensi
Mesin Inferensi adalah bagian yang mengandung mekanisme fungsi berfikir dan polapola penalaran sistem yang digunakan oleh seorang pakar. Mekanisme ini akan
menganalisa suatu masalah tertentu dan selanjutnya akan mencari jawaban atau
kesimpulan yang terbaik. Mesin Inferensi disebut juga otak dari sistem pakar.
4. Memori Kerja
Merupakan bagian dari sistem pakar yang menyimpan fakta – fakta yang diperoleh
saat dilakukan proses konsultasi. Fakta – fakta inilah yang nantinya akan diolah oleh
mesin inferensi berdasarkan pengetahuan yang disimpan dalam basis pengetahuan
untuk menentukan suatu keputusan pemecahan masalah.
52
5. Fasilitas Penjelasan
Karena pemakai kadangkala bukanlah ahli dalam bidang tertentu, maka dibuatlah
fasilitas penjelasan. Fasilitas penjelasan ini penting untuk memberikan gambaran
mengenai bagaimana jalannya penalaran sehingga dihasilkan suatu keputusan.
6. Fasilitas Akuisisi Pengetahuan
Fasilitas akuisisi pengetahuan ini penting agar pengetahuan yang ada dapat
ditambahkan kapan saja ketika pengetahuan baru diperoleh atau saat pengetahuan
yang sudah ada tidak berlaku lagi.
Rule Base Expert System
Salah satu cara merepresentasikan pengetahuan yang kita kenal adalah dengan
menggunakan kaidah. Kaidah yang kita kenal terdiri dari bagian if (Antecedent /
conclution) dan bagian then (Consequent / action).
If dan then part sendiri mempunyai 2 bagian yaitu Object dan value di mana antara object
dan value bisa dihubungkan oleh operator (is, are, is not, are not) atau mathematical
operator (>, >=, <, <=, =, ≠)
Contoh :
1. If the traffic light is green then the action is go
2. If the traffic light is red then the action is stop
Object :
-
Traffic light
-
Action
Value :
-
Green
-
Red
-
Go
-
Stop
53
Sebuah kaidah juga dapat memiliki multiple antecedent yang dihubungan oleh Keyword
And (Conjunction) dan Or (Disjunction) atau kombinasi dari keduanya.
Contoh :
1. If the season is autumn and the sky is cloudy then take an umbrella
2. If the car is dead and the fuel tanks is empty then refuel the car
Terdapat beberapa tipe kaidah berdasarkan jenisnya :
1. Relation
Contoh :
IF
the ‘fuel tank’ is empty
THEN
the car is dead
2. Recommendation
Contoh :
IF
the season is autumn
AND the sky is cloudy
AND the forecast is drizzle
THEN the advice is ‘take an umbrella’
3. Strategi
Contoh :
IF
the car is dead
THEN
the action is ‘check the fuel tank’;
step1 is complete
IF
step1 is complete
AND
the ‘fuel tank’ is full
THEN
the action is ‘check the battery’;
step2 is complete
4. Directive
Contoh :
IF
the car is dead
54
AND the ‘fuel tank’ is empty
THEN the action is ‘refuel the car’
Inference Engine yang digunakan dapat menggunakan metode : Forward Chaining
(Runur Maju) dan Backward Chaining (Runut Mundur).
Adapun cara kerja inference engine adalah sebagai berikut.
1. Inference Engine akan melakukan pencocokan antara If Part dari fakta dengan fact
dalam knowledge base
2. Jika If dari fakta = fact dalam knowledge base maka rule tersebut akan di fire.
Dalam melakukan kegiatannya, inference engine dapat menggunakan beberapa
pendekatan seperti yang tersaji di bawah ini :
1. Runut Maju (Forward Chaining)
2. Runut Mundur (Backward Chaining)
Runut Maju (Forward Chaining)
Forward Chaining merupakan proses perunutan yang dimulai dengan menampilkan
kumpulan data atau fakta yang meyakinkan menuju konklusi akhir. Forward Chaining
sering juga disebyt dengan pencarian yang dimotori oleh data (data driven search). Jadi
dimulai dari premis – premis atau informasi masukan (if) dahulu kemudian menuju
konklusi atau derived information (then) atau dapat dimodelkan sebagai berikut :
If (Informasi Masukan)
Then (Konklusi)
Informasi masukan dapat berupa data, bukti, temuan, atau pengamatan. Sedangkan
konklusi dapat berupa tujuan, hipotesa, penjelasan, atau diagnosis.
55
Contoh :
If Lampu1 dinyalakan
And lampu1 tidak menyala
And lampu1 dihubungkan dengan sekring
And sekring masih bagus
Then Lampu1 rusak
Secara sederhana runut maju dapat diterangkan sebagai berikut, untuk kaidah di atas, agar
sistem pakar mencapai konklusi, maka harus disuplai terlebih dahulu dengan fakta berupa
lampu 1 tidak menyala, lampu1 sudah dihubungkan dengan sekring, dan sekring dalam
kondisi bagus; kemudian baru sistem bisa mengeluarkan konklusi bahwa lampu1 rusak.
Runut Mundur (Backward Chaining)
Backward Chaining merupakan proses perunutan yang arahnya kebalikan dari runut
maju. Proses penalaran backward chaining dimulai dengan tujuan / goal kemudian
merunut balik ke jalur yang akan mengarahkan ke goal tersebut, mencari bukti – bukti
bahwa bagian kondisi terpenuhi. Jadi secara umum runut balik itu diaplikasikan ketika
tujuan atau hipotesis yang dipilih itu sebagai titik awal penyelesaian masalah. Disebut
juga goal driven search. Runut balik dimodelkan sebagai berikut.
Tujuan,
If (Kondisi)
Contoh sebelumnya bila dinyatakan dengan backward chaining sebagai berikut.
Lampu1 rusak,
If Lampu1 dinyalakan
And lampu1 tidak menyala
And lampu1 dihubungkan dengan sekring
And sekring masih bagus
56
Certainty Factor
Suatu kejadian di dunia nyata ini tidak selalu dapat dipastikan 100% bernilai benar atau
salah. Banyak sekali kejadian yang mengandung ketidakpastian, dalam bahasa sehari –
hari hal ini sering diungkapkan dengan istilah ”barangkali”, ”kemungkinan besar”,
”mungkin”, dan masih banyak istilah lain untuk mengungkapkan ketidakpastian. (Sri
Hartati:101).
Faktor kepastian (certainty factor) diperkenalkan oleh Shortliffe Buchanan dalam
pembuatan MYCIN (Wesley, 1984). Certainty factor (CF) merupakan nilai parameter
klinis yang diberikan MYCIN untuk menunjukkan besarnya kepercayaan.
Sampai saat ini ada dua model yang sering digunakan untuk menghitung tingkat
keyakinan (CF) dari sebuah rule adalah sebagai berikut:
a. Menggunakan metode ‘Net Belief’ yang diusulkan oleh E. H. Shortliffe dan B. G.
Buchanan [1, 2], yaitu:
CF(Rule) = MB(H, E) – MD(H, E) ............................................... (1)
1
MB(H|E)= max[P(H|E) , P(H)] - P(H)
1 - P(H)
if P(H) = 1
1
MD(H|E)= min[P(H|E), P(H)] - P(H)
- P(H)
if P(H) = 0
otherwise
otherwise
...............(2)
................(3)
dimana:
MB (H,E) = Ukuran kepercayaan (Measure of Increased Belief) terhadap
hipotesis H yang dipengaruhi oleh Evidence E
MD (H,E) = ukuran ketidakpercayaan (Measure of Increased Disbelief) terhadap
hipotesis H yang dipenaruhi oleh Evidence E
P(H)
= probabilitas kebenaran hipotesa H
P(H|E)
= probabilitas bahwa H benar karena fakta E
P(H) dan P(H|E) merepresentasikan keyakinan dan ketidak yakinan pakar.
57
Untuk menghitung nilai P(H|E) nantinya kita akan menggunakan Probabilitas
Bayesian
b. Dengan menggali dari hasil wawancara dengan pakar [1]. Nilai CF(Rule) didapat dari
interpretasi ‘term’ dari pakar menjadi nilai CF tertentu (lihat tabel 1).
Kombinasi Aturan
Di dalam MYCIN terdapat aturan untuk menggabungkan evidence anteseden yang
terdapat dalam sebuah kaidah. Hal ini dapat dilihat pada tabel di bawah ini.
Evidence E
Nilai Ketidakpastian
E1 and E2
Min [CF(H,E1), CF(H,E2)]
E1 or E2
Max [CF(H,E1),CF(H,E2)]
Not E`
-CF(H,E)
Solat :
Berikut ini akan diberikan contoh untuk mengkombinasikan Suatu Rule :
E = (E1 and E2 and E3) or (E4 and Not E5)
Dengan nilai CF masing – masing adalah :
E1 = 0.9, E2 = 0.8, E3 = 0.3, E4 = -0.5, E5 = -0.4
58
Maka besarnya nilai kepastian untuk gejala E adalah
CF (E) = Max [Min(E1, E2, E3), Min (E4, E5 ) ]
= Max [min(0.9, 0.8, 0.3), min (-0.5, 0.4)]
= Max [0.3, -0.5)
= 0.3
Solat :
Jika diketahui kombinasi evidence :
E = (E1 or E2 or E3) and (E4 or E5)
Dengan nilai CF masing – masing adalah :
E1 = 0.9, E2 = 0.8, E3 = 0.3, E4 = -0.5, E5 = -0.4
Maka tentukanlah besar cF gejala E !
Bentuk Dasar rumus Certainty Factor sebuah aturan dalam bentuk If E Then H
Bentuk dasar rumus certainty factor sebuah aturan dalam bentuk if E then H adalah
sebagai berikut (Giarattano dan Riley, 2005) :
Cf (H, e) = CF (E, e) * CF (H, E)
Di mana :
CF (E, e) adalah certainty factor evidence E yang dipengaruhi oleh evidence e
CF (H, E) adalah certainty factor hipotesis H dengan asumsi evidence diketahui dengan
pasti ketika CF (E, e) = 1
Cf (H, e) adalah certainty factor hipotesa yang dipengaruhi oleh evidence e
Contoh penerapan certainty factor dalam If E then H adalah sebagai berikut.
If sesak napas and bronkhi krepitasi and demam and sesak napas berat then menderita
pneumonia, dengan CF = 0.87
Dengan memberikan notasi :
E1 : Sesak napas
E2 : bronkhi krepitasi
E3 : demam
59
E4 : sesak napas berat
H : menderita pneumonia
Nilai certainty factor hipotesa pada saat evidence pasti adalah :
CF (H,e) = CF (H, E1 and E2 and E3 and E4) = 0.87
Adapun besarnya nilai CF untuk gejala E adalah sebagai berikut.
E1 = 0.8, E2 = 0.5, E3 = 0.75, E4 = 0.4
CF (E, e) = min [E1, E2, E3, E4]
= Min[0.8, 0.5, 0.75, 0.4]
= 0.4
Dan nilai CF (H, e) = CF (E,e) * CF (H,E)
= 0.4 * 0.87
= 0.348
= 0.35 (Mungkin)
Solat :
Terdapat kaidah berikut :
IF (E1 or E2) and (E3 or E4) then H dengan CF = 0.73
Dengan CF untuk gejala E masing – masing adalah :
E1 = 0.57 E3 = 0.73
E2 = 0.68 E4 = 0.49
Maka tentukanlah besarnya CF (H, e) !
Kaidah dalam sebuah sistem pakar untuk hipotesa yang sama biasanya dapat terdiri dari
lebih dari sebuah kaidah dan terdiri dari beberapa premis yang dihubungkan dengan And
atau Or.
60
Formula CF untuk beberapa kaidah yang mengarah pada hipotesa yang sama dapat
dituliskan sebagai berikut.
Contoh :
R1 : If a and b then H ; CF = 0.6
R2 : If c or d then H ; CF = 0.7
Diketahui nilai :
CF (a) = 1.0 CF (c) = 0.6
CF (b) = 0.8 CF (d) = 0.9
Tentukanlah nilai CF Hipotesa H !
Jawab :
CF (R1) : min [CF(a), CF(b)] * CF (H)
= min [1.0, 0.8] * 0.6
= 0.8 * 0.6
= 0.48
CF (R2) : max [CF(c), CF(d)] * CF (H)
= max [0.6, 0.9] * 0.7
= 0.9 * 0.7
= 0.63
CF (H) = CF (R1) + CF (R2) [1- CF (R1)]
= 0.48 + 0.63 [1 - 0.48]
= 0.48 + 0.63* 0.52 = 0.48 + 0.3276 = 0.8076
61
Solat :
R1 : If a and b then H ; CF = 0.8
R2 : If c or d then H ; CF = 0.6
R3 : If (e and f) or (g and h) then H; CF = 0.75
Diketahui nilai :
CF (a) = 1.0 CF (c) = 0.6
CF(e) = 0.65 CF(g) = 0.8
CF (b) = 0.8 CF (d) = 0.9 CF(f) = 0.7
CF(h) = 0.8
Tentukanlah nilai CF Hipotesa H !
Teore Probabilitas Bayesian
Probabilitas Bayesian adalah salah satu cara untuk mengatasi ketidakpastian dengan
menggunakan formula Bayes yang dinyatakan sebagai berikut (Giarratano dan Riley.
2005) :
P(H | E) =
P(E | H )P(H )
P(E )
Di mana :
P(H | E) : Probabilitas Hipotesa H jika terdapat evidence E
P(E | H) : Probabilitas munculnya evidence E jika diketahui Hipotesa H
P(H) : Probabilitas Hipotesa H tanpa memandang evidence apapun
P(E) : Probabilitas evidence E
Solat :
Berdasarkan data yang dimiliki oleh suatu perguruan tinggi dari hasil test Penerimaan
Mahasiswa Baru (PMB) diketahui bahwa besarnya kemunkinan mahasiswa yang memilih
jurusan TI dengan nilai test logika baik adalah 0.75. Besarnya nilai probabilitas calon
mahasiswa memilih jurusan teknik informatika adalah 0.4. Nilai probabilitas test Logika
– Matematika baik tanpa memperhitungkan jurusan yang dipilih adalah 0.6. Carilah nilai
probabilitas calon mahasiswa nyang memiliki nilai test Logika – Matematika baik akan
memilih jurusan Teknik Informatika !
Diketahui :
62
H = Memilih Jurusan TI
E = Nilai test Logika
Jawab :
P (E | H) = P(Nilai Test Logika – Matematika Baik | Memilih Jurusan TI) = 0.75
P (E) = P(Nilai Test – logika matematika baik) = 0.60
P (H) = P(Memilih jurusan TI) = 0.40
Dicari :
P(H|E) = P(Memilih jurusan TI | Nilai Test Logika – Matematika baik) = ?
P(H|E) =
=
P(E | H )P(H )
P(E )
0 . 75 * 0 . 40
= 0.50
0 . 60
Menghitung Nilai Certainty Factor dengan Metode Net Belief
Terdapat kaidah sebagai berikut.
If kulit berminyak then Phimosis
If kulit mengelupas then phimosis
If iritasi bagian bawah kulit then phimosis
Terdapat data sebagai berikut :
Dari data 10.000 penyakit A :
200 adalah penyakit Phimosis
Gejala kulit berminyak berjumlah 80 orang
Gejala kulit mengelupas berjumlah 100 orang
Gejala iritasi bagian bawah kulit berjumlah 20 orang.
Penyakit Phimosis dan juga terdapat gejala kulit berminyak berjumlah 32 orang atau 16%
dari total Phimosis
Penyakit phimosis dan juga terdapat gejala kulit mengelupas berjumlah 25% dari total
phimosis
63
Penyakit phimosis dan juga terdapat gejala iritasi bagian bawah kulit berjumlah 1% dari
total phimosis
Misal :
H = Phimosis
E1 = Kulit berminyak
E2 = Kulit mengelupas
E3 = Iritasi bagian bawah kulit
Jawab :
P(E1)= P(Kulit Berminyak)= 80 / 10000 = 0.008
P(E2)= P(Kulit Mengelupas) = 100 / 10000 = 0.01
P(E3)= P(Iritasi bagian bawah kulit)= 20 / 10000 = 0.002
P(H)= P(Phimosis) = 200 / 10000 = 0.02
P (E1|H) = P(Kulit Berminyak|Phimosis) = 0.16
P (E2|H) = P (Kulit Mengelupas | Phimosis) = 0.25
P (E3|H) = P (Iritasi Bagian Bawah Kulit | Phimosis) = 0.01
P(H|E1) =
=
0 . 16 * 0 . 02
= 0.4
0 . 008
P(H|E2) =
=
P(E 2 | H )P(H )
P ( E 2)
0 . 25 * 0 . 02
= 0.5
0 . 01
P(H|E3) =
=
P ( E1 | H ) P ( H )
P ( E 1)
P(E 3 | H )P (H )
P ( E 3)
0 . 01 * 0 . 02
= 0.1
0 . 002
MB (H|E1) =
max[ P ( H | E 1), P ( H )] − P ( H )
1 − P(H )
64
=
max[ 0 . 4 , 0 . 02 ] − 0 . 02
1 − 0 . 02
=
0 . 4 − 0 . 02
0 . 38
=
= 0.39
0 . 98
0 . 98
MD (H|E1) =
min[ P ( H | E 1 ), P ( H )] − P ( H )
− P(H )
=
max[ 0 . 4 , 0 . 02 ] − 0 . 02
− 0 . 02
=
0 . 02 − 0 . 02
0
=
=0
− 0 . 02
− 0 . 02
CF1 = MB (H,E1) – MD (H, E1) = 0.39 – 0 = 0.39
MB (H|E2) =
max[ P ( H | E 2 ), P ( H )] − P ( H )
1 − P(H )
=
max[ 0 . 5 , 0 . 02 ] − 0 . 02
1 − 0 . 02
=
0 . 5 − 0 . 02
0 . 48
=
= 0.49
0 . 98
0 . 98
MD (H|E1) =
min[ P ( H | E 2 ), P ( H )] − P ( H )
− P(H )
=
max[ 0 . 5 , 0 . 02 ] − 0 . 02
− 0 . 02
=
0 . 02 − 0 . 02
0
=
=0
− 0 . 02
− 0 . 02
CF2 = MB (H,E2) – MD (H, E2) = 0.49 – 0 = 0.49
MB (H|E3) =
=
max[ P ( H | E 3 ), P ( H )] − P ( H )
1 − P(H )
max[ 0 . 1, 0 . 02 ] − 0 . 02
1 − 0 . 02
65
=
0 . 1 − 0 . 02
0 . 08
=
= 0.0816
0 . 98
0 . 98
MD (H|E3) =
min[ P ( H | E 3 ), P ( H )] − P ( H )
− P(H )
=
max[ 0 . 5 , 0 . 02 ] − 0 . 02
− 0 . 02
=
0 . 02 − 0 . 02
0
=
=0
− 0 . 02
− 0 . 02
CF3 = MB (H,E3) – MD (H, E3) = 0.0816 – 0 = 0.0816
CFKombinasi1(CF1,CF2) = CF1 + CF2(1-CF1)
= 0.39 + 0.49 * 0.61
= 0.69
CFKombinasi2(CFKombinasi1, CF3) = CFKombinasi1+CF3(1-CFKombinasi1)
= 0.69+0.0816(1-0.69)
= 0.69+0.0816(0.31)
= 0.69 + 0.025
= 0.715
Dengan demikian bahwa ketika sistem menyimpulkan bahwa bahwa penyakit yang
diderita pasien adalah Phimosis maka tingkat kepastiannya adalah sebesar : 0.715
Jika aturan tersebut dirangkai menjadi :
If kulit berminyak or kulit mengelupas or iritasi bagian bawah kulit then
Phimosis, maka tentukanlah berapa nilai keyakinannya !
Jawab :
66
Misal E1 = Kulit Berminyak = 0.39
Misal E2 = Kulit mengelupas = 0.49
Misal E3 = Iritasi bagian bawah kulit = 0.0816
Misal H = Phimosis = 0.715
Jawab :
CF (R) = max [E1, E2, E3] * CF(H)
= 0.49 * 0.715
= 0.35035
Solat :
Berdasarkan soal di atas jika misalnya :
Jika CF = 0 – 0.1 maka diberi obat A
Jika CF = >0.1 – 0.3 maka diberi obat B
Jika CF = >0.3 maka diberi obat C
Tentukanlah obat yang harus diberikan untuk gejala berikut.
a. Kulit berminyak
b. Kulit mengelupas dan juga terdapat iritasi bagian bawah kulit
Perhatikan permasalahan berikut.
beberapa kaidah dalam knowledge base dituliskan sebagai berikut:
Kaidah 2 Menderita Penyakit “GONORE”
dengan CF = 0.94
JIKA mengalami gejala/pernah CAIRAN BERCAMPUR NANAH pada lubang testis.
DAN mengalami gejala/pernah SAKIT SAAT KENCING pada bagian saluran
DAN mengalami gejala/pernah PANAS SAAT KENCING pada semua ba
DAN mengalami gejala/pernah GATAL SAAT KENCING pada ujung testis.
67
DAN mengalami gejala/pernah BERHUBUNGAN SEKS DENGAN WTS beberapa hari
yang lalu
Kaidah 3 Menderita Penyakit “UNS” dengan CF =
0.91
JIKA mengalami gejala/pernah GATAL SAAT KENCING pada ujung testis
DAN mengalami gejala/pernah BERCAK KUNING PADA CELANA saat bangun tidur
pagi
DAN mengalami gejala/pernah BERHUBUNGAN SEKS DENGAN WTS beberapa hari
yang lalu
DAN mengalami gejala/pernah PANAS SAAT KENCING pada semua bagian
DAN mengalami gejala/pernah SERING KENCING lebih dari dua puluh kali sehari
Kaidah terapi penyakit kelamin pria:
Kaidah 23 Gunakan obat “TETRAKSILIN”
JIKA mengalami penyakit “GONORE” dengan CF
0.01 s.d 0.40
Kaidah 24 Gunakan obat “SPIRAMYSIN”
JIKA mengalami penyakit “GONORE” dengan CF
0.31 s.d 0.60
Kaidah 25 Gunakan obat “AMPISILIN”
JIKA mengalami penyakit “GONORE” dengan CF
0.51 s.d 1.0
Kaidah 26 Gunakan obat “TETRAKSILIN HCL HCL”
JIKA mengalami penyakit “UNS” dengan CF 0.01
s.d 0.40
Kaidah 27 Gunakan obat “SULFA TRIMETROPRIM”
68
Jika Misalkan user mengisikan gejala yang dialaminya adalah:
Hasil konsultasi diperoleh data dari penderita
sebagai berikut:
Cairan bercampur nanah
Sakit saat kencing
Panas saat kencing
Gatal saat kencing pada ujung testis
Berhubungan seks dengan wts beberapa hari yang lalu
Bercak kuning pada celana saat bangun tidur pagi
Sering kencing lebih dari 20 kali sehari
Asumsikan nilai CF untuk gejala di atas adalah sebagai berikut. (Dalam kenyataannya
nilai CF gejala harus dihitung untuk masing – masing penyakit)
Cairan bercampur nanah 0.1
Sakit saat kencing 0.4
Panas saat kencing 0.5
Gatal saat kencing pada ujung testis 0.5
Berhubungan seks dengan wts beberapa hari yang lalu 0.2
Bercak kuning pada celana saat bangun tidur pagi 0.2
Sering kencing lebih dari 20 kali sehari 0.4.
Tentukanlah obat yang harus diberikan !
69
Teknik Data Mining dengan Algoritma Apriori
Menurut Jurnal ”Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam
Satu Transaksi” (Kusrini, 2007), Algoritma apriori termasuk jenis aturan assosiasi pada
data mining. Selain apriori yang termasuk pada golongan ini adalah metode Generalized
Rule Induction dan Algoritma Hash Based. Aturan yang menyatakan asosiasi antara
beberapa atribut sering disebut sebagai affinity analysis atau market basket analysis.
Dengan penerapan algoritma apriori pada penelitian ini diharapkan akan ditemukan pola
berupa produk yang sering dibeli bersamaan. Pola ini dapat digunakan untuk
menempatkan produk yang sering dibeli bersamaan ke dalam sebuah area yang saling
berdekatan, merancang tampilan produk di katalog, merancang kupon diskon (untuk
diberikan kepada pelanggan yang membeli produk tertentu), merancang penjualan paket,
dan lain – lain.
Sementara itu penemuan pola merupakan keluaran lain dari data mining. Misalkan sebuah
perusahaan yang akan meningkatkan faslitas kartu kredit dari pelanggan, maka perusahaan akan
mencari pola dari pelanggan-pelanggan yang ada untuk mengetaui pelanggan yang potensial dan
pelanggan yang tidak potensial. Data mining bukanlah suatu bidang yang sama sekali baru. Salah
satu kesulitan untuk mendefinisikan data mining adalah kenyataan bahwa data mining mewarisi
banyak aspek dan teknik dari bidang-bidang ilmu yang sudah mapan terlebih dulu. Gambar 2.2 di
bawah ini menunjukkan bahwa data mining memiliki akar yang panjang dari bidang ilmu seperti
kecerdasan buatan (artificial intelligent), machine learning, statistik, database dan juga
information retrieval.
70
Pencarian
Informasi
Pembelajaran
Neural network, pohon
keputusan, fuzzy
Pembelajaran
Neural network, pohon
keputusan, fuzzy
Artificial
Intelligent
Data Mining
Statistik
Dasar
( Seleksi, presentasi hasil)
Data yang besar
(normalisasi data,
transformasi, OLAP)
Database
Gambar 2.2 Bidang Ilmu Data Mining
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Association Rule
Analisis asosiasi atau association rule mining adalah teknik data mining untuk
menemukan aturan assosiatif antara suatu kombinasi item. Contoh dari aturan assosiatif
dari analisa pembelian di suatu pasar swalayan adalah dapat diketahuinya berapa besar
kemungkinan seorang pelanggan membeli roti bersamaan dengan susu. Dengan
pengetahuan tersebut pemilik pasar swalayan dapat mengatur penempatan barangnya atau
merancang kampanye pemasaran dengan memakai kupon diskon untuk kombinasi barang
tertentu.
71
Karena analisis asosiasi menjadi terkenal karena aplikasinya untuk menganalisa isi
keranjang belanja di pasar swalayan, analisis asosiasi juga sering disebut dengan istilah
market basket analysis.
Analisis asosiasi dikenal juga sebagai salah satu teknik data mining yang menjadi
dasar dari berbagai teknik data mining lainnya. Khususnya salah satu tahap dari analisis
asosiasi yang disebut analisis pola frequensi tinggi (frequent pattern mining) menarik
perhatian banyak peneliti untuk menghasilkan algoritma yang efisien.
Penting tidaknya suatu aturan assosiatif dapat diketahui dengan dua parameter,
support (nilai penunjang) yaitu persentase kombinasi item tersebut dalam database dan
confidence (nilai kepastian) yaitu kuatnya hubungan antar item dalam aturan assosiatif.
Aturan assosiatif biasanya dinyatakan dalam bentuk :
{roti, mentega} → {susu} (support = 40%, confidence = 50%)
Yang artinya : "50% dari transaksi di database yang memuat item roti dan mentega
juga memuat item susu. Sedangkan 40% dari seluruh transaksi yang ada di database
memuat ketiga item itu." Dapat juga diartikan : "Seorang konsumen yang membeli roti
dan mentega punya kemungkinan 50% untuk juga membeli susu. Aturan ini cukup
signifikan karena mewakili 40% dari catatan transaksi selama ini."
Analisis asosiasi didefinisikan suatu proses untuk menemukan semua aturan
assosiatif yang memenuhi syarat minimum untuk support (minimum support) dan syarat
minimum untuk confidence (minimum confidence).
Metodologi dasar analisis asosiasi terbagi menjadi dua tahap :
A.
Analisa pola frekuensi tinggi
72
Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari nilai
support dalam database. Nilai support sebuah item diperoleh dengan rumus 1 berikut:
Support (A) =
Jumlah Transaksi Mengandung A
Total Transaksi
………………..[rumus 1]
sedangkan nilai support dari 2 item diperoleh dari rumus 2 berikut :
Jumlah Transaksi Mengandung A dan B
Support (A, B) = P ( A ∩ B) =
Total Transaksi
…[rumus 2]
Sebagai contoh, ada database dari transaksi belanja pasar swalayan seperti
ditunjukkan dalam tabel 2.1 berikut :
Tabel 2.1 Transaksi
Transaction
Item Purchased
1
Broccoli, Green Peppers, Corn
2
Asparagus, Squash, Corn
3
Corn, Tomatoes, Beans, Squash
4
Green Peppers, Corn, Tomatoes, Beans
5
Beans, Asparagus, Broccoli
6
Squash, Asparagus, Beans, Tomatoes
7
Tomatoes, Corn
8
Broccoli, Tomatoes, Green Peppers
9
Squash, Asparagus, Beans
10
Beans, Corn
11
Green Peppers, Broccoli, Beans, Squash
12
Asparagus, Beans, Squash
13
Squash, Corn, Asparagus, Beans
14
Corn, Geen Peppers, Tomatoes, Beans, Broccoli
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
73
Data tersebut di atas dalam database transaksional biasa direpresentasikan dalam
bentuk seperti tampak pada tabel 2.2 berikut:
Tabel 2.2 Representasi Data Transaksi dalam Database Transaksional
Transaction ID
Items
1
Broccoli
1
Green Peppers
1
Corn
2
Asparagus
2
Squash
2
Corn
3
Corn
3
Tomatoes
:
.
:
.
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Dan bila kita bentuk dalam bentuk tabular, data transaksi akan tampak seperti pada
tabel 2.3 berikut:
74
Tabel 2.3 Format Tabular Data Transaksi
Transaction
Asparagus
Beans
Broccoli
Corn
Green Peppers
Squash
Tomatoes
1
0
0
1
1
1
0
0
2
1
0
0
1
0
1
0
3
0
1
0
1
0
1
1
4
0
1
0
1
1
0
1
5
1
1
1
0
0
0
0
6
1
1
0
0
0
1
1
7
0
0
0
1
0
0
1
8
0
0
1
0
1
0
1
9
1
10
0
11
0
12
1
13
1
14
0
1
1
1
1
1
1
0
0
1
0
0
1
0
1
0
0
1
1
0
0
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
1
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Misalkan D adalah himpunan transaksi yang direperesentasikan dalam tabel 1,
dimana masing-masing transaksi T dalam D merepresentasikan himpunan item yang
berada dalam I. Misalkan kita memiliki himpunan items A (misal Beans dan squash) dan
himpunan item lain B (misal asparagus). Kemudian aturan asosiasi akan berbentuk.
Jika A, maka B ( A → B )
Dimana antecedent A dan consequent B merupakan subset dari I, dan A dan B
merupakan mutually exclusive. Definisi ini tidak berlaku untuk aturan trivial seperti :
75
Jika Beans dan Squash maka Beans
Seorang analis mungkin hanya akan mengambil aturan yang memiliki support
dan/atau confidence yang tinggi. Aturan yang kuat adalah aturan – aturan yang melebihi
kriteria support dan/atau confidence minimum.
Misalnya seorang analist menginginkan aturan yang memiliki support lebih dari 20
% dan confidence lebih dari 35 %. Sebuah itemset adalah himpunan item-item yang ada
dalam I, dan kitemset adalah itemset yang berisi k item. Misalnya {squash, beans) adalah
sebuah 2-itemset dan {broccoli, green peppers, corn) merupakan 3-itemset. Frequent
Itemset menunjukkan itemset yang memiliki frekuensi kemunculan lebih dari nilai
minimum yang telah ditentukan (ф). Misalkan ф = 4, maka semua itemset yang frekuensi
kemunculannya lebih dari 4 kali disebut frequent. Himpunan dari frequent k-itemset
dilambangkan dengan Fk [3].
Tabel 2.4 berikut ini menujukkan calon 2-itemset dari data transaksi pada tabel 2.1.
76
Tabel 2.4 Calon 2-Itemset
Combination
Count
Combination
Count
Asparagus, Beans
5
Broccoli, Corn
2
Asparagus, Broccoli
1
Broccoli, Green Peppers
4
Asparagus, Corn
2
Broccoli, Squash
1
Asparagus, Green Peppers
0
Broccoli, Tomatoes
2
Asparagus, Squash
5
Corn, Green Peppers
3
Asparagus, Tomatoes
1
Corn, Squash
3
Beans, Broccoli
3
Corn, Tomatoes
4
Beans, Corn
5
Green Peppers, Squash
1
Beans, Green Peppers
3
Green Peppers, Tomatoes
3
Beans, Squash
6
Squash, Tomatoes
2
Beans, Tomatoes
4
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk Mengelompokkan
Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Dari data tersebut diatas, jika ditetapkan nilai ф = 4 maka
F2 = { {asparagus, beans}, {asparagus, squash}, {beans,corn}, {beans, squash}, {beans,
tomatoes}, {broccoli, green peppers}, {corn,tomatoes} }
Kombinasi dari itemset dalam F2 dapat kita gabungkan menjadi calon 3- itemset.
Itemset-itemset dari F2 yang dapat digabungkan adalah itemset – itemset yang memiliki
kesamaan dalam k-1 item pertama . Calon 3-itemset yang dapat dibentuk dari F2 seperti
tampak pada tabel 2.5 berikut:
77
Tabel 2.5 Calon 3 – Itemset
Combination
Count
Asparagus, Beans, Squash
4
Beans, Corn, Squash
2
Beans, Corn, Tomatoes
3
Beans, Squash, Tomatoes
2
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Dengan demikian F3 = {{asparagus, beans, squash}}, karena hanya kombinasi
inilah yang memiliki frekeunsi kemunculan >= ф.
B.
Pembentukan aturan assosiatif
Setelah semua pola frekuensi tinggi ditemukan, barulah dicari aturan assosiatif yang
memenuhi syarat minimum untuk confidence dengan menghitung confidence aturan
assosiatif A → B. Nilai confidence dari aturan A → B diperoleh dari rumus 3 berikut:
Confidence = P (A | B) =
Jumlah Transaksi Mengandung A dan B
...[rumus 3]
Jumlah Transaksi Mengandung A
Dari F3 yang telah ditemukan, dapat dilihat besarnya nilai support dan confidence dari
calon aturan asosiasi seperti tampak pada tabel 2.6 berikut:
78
Tabel 2.6 Calon Aturan Asosiasi dari F3
If Antecedent, then Consequent
Support
Confidence
If buy asparagus and beans, then buy squash
4 / 14 = 28.6%
4 / 5 = 80%
If buy asparagus and squash, then buy beans
4 / 14 = 28.6%
4 / 5 = 80%
If buy beans and squash, then buy asparagus
4 / 14 = 28.6%
4 / 6 = 66.7%
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Misalkan ditetapkan nilai confidence minimal adalah 80% maka aturan yang bisa
terbentuk adalah aturan dengan 2 antecedent berikut:
If buy asparagus and beans, then buy squash
If buy asparagus and squash, then buy beans
Sementara itu calon aturan asosiasi dari F2 bisa dilihat pada tabel 2.7 berikut:
Tabel 2.7 Calon Aturan Asosiasi dari F2
If Antecedent, then Consequent
Support
Confidence
If buy asparagus, then buy beans
5 / 14 = 35.7%
5 / 6 = 83.3%
If buy beans, then buy asparagus
5 / 14 = 35.7%
5 / 10 = 50%
If buy asparagus, then buy squash
5 / 14 = 35.7%
5 / 6 = 83.3%
If buy squash, then buy asparagus
5 / 14 = 35.7%
5 / 7 = 71.4%
If buy beans, then buy corn
5 / 14 = 35.7%
5 / 10 = 50%
If buy corn, then buy beans
5 / 14 = 35.7%
5 / 8 = 62.5%
If buy beans, then buy squash
6 / 14 = 42.9%
6 / 10 = 60%
If buy squash, then buy beans
6 / 14 = 42.9%
6 / 7 = 85.7%
If buy beans, then buy tomatoes
4 / 14 = 28.6%
4 / 10 = 40%
If buy tomatoes, then buy beans
4 / 14 = 28.6%
4 / 6 = 66.7%
If buy broccoli, then buy green peppers
4 / 14 = 28.6%
4 / 5 = 80%
If buy green peppers, then buy broccoli
4 / 14 = 28.6%
4 / 5 = 80%
If buy corn, then buy tomatoes
4 / 14 = 28.6%
4 / 8 = 50%
If buy tomatoes, then buy corn
4 / 14 = 28.6%
4 / 6 = 66.7%
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
79
dan aturan asosiasi final terurut berdasarkan Support x Confidence terbesar dapat
dilihat pada table 2.8 berikut:
Tabel 2.8 Aturan Asosiasi Final
If Antecedent, then Consequent
Support
Confidence
Support x
Confidence
If buy squash, then buy beans
6 / 14 = 42/9%
6 / 7 = 85.7%
0.3677
If buy asparagus, then buy beans
5 / 14 = 35.7%
5 / 6 = 83.3%
0.2974
If buy asparagus, then buy squash
5 / 14 = 35.7%
5 / 6 = 83.3%
0.2974
If buy broccoli, then buy green peppers
4 / 14 = 28.6%
4 / 5 = 80%
0.2288
If buy green peppers, then buy broccoli
4 / 14 = 28.6%
4 / 5 = 80%
0.2288
If buy asparagus and beans, then buy
squash
If buy asparagus and squash, then buy
beans
4 / 14 = 28.6%
4 / 5 = 80%
0.2288
4 / 14 = 28.6%
4 / 5 = 80%
0.2288
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk Mengelompokkan
Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Algoritma Nearest Neighbor
Adalah pendekatan untuk mencari suatu keputusan atas suatu data baru dengan melihat
kedekatan data baru dengan data lama, yaitu berdasarkan pada pencocokan bobot dari
sejumlah atribut yang ada. Data dengan kedekatan terbesarlah yang akan dijadikan
keputusan. Nilai kedekatan adalah berkisar antara 0 dan 1.
Langkah – langkah di dalam algoritma Nearest Neighbor adalah sebagai berikut.
1.
Tentukanlah bobot untuk tiap atribut.
2.
Tentukanlah kedekatan untuk masing – masing atribut.
80
Misalkan terdapat tabel kasus.
No
Jenis Kelamin
Pendidikan
Agama
Bermasalah
1
L
S1
Islam
Ya
2
P
SMA
Kristen
Tidak
3
L
SMA
Islam
Tidak
Definisi bobot atribut.
Atribut
Bobot
Jenis Kelamin
0.5
Pendidikan
1
Agama
0.75
Kedekatan nilai atribut Jenis Kelamin
Nilai 1
Nilai 2
Kedekatan
L
L
1
P
P
1
L
P
0.5
P
L
0.5
Kedekatan nilai atribut pendidikan
Nilai 1
Nilai 2
Kedekatan
S1
S1
1
SMA
SMA
1
S1
SMA
0.4
SMA
S1
0.4
81
Kedekatan nilai atribut agama
Nilai 1
Nilai 2
Kedekatan
Islam
Islam
1
Kristen
Kristen
1
Islam
Kristen
0.75
Kristen
Islam
0.75
Misalkan terdapat data baru sebagai berikut.
Jenis Kelamin : L, Pendidikan : SMA, dan Agama : Kristen
Menghitung kedekatan dengan kasus No. 1
A : Kedekatan