Tugas_besar_ai
Transcript of Tugas_besar_ai
TUGAS BESAR AI
IMPLEMENTASI PEMANFAATAN SISTEM PAKAR DALAM
IDENTIFIKASI AWAL PENYAKIT PADA SAPI
Disusun Oleh :
1. Putri Ida (0510963045)2. Khalim Mufid (0710962003)3. Akbar Widianto (0810962001)4. Fahmi Hamdani I A (0810962005)5. I Gede Adhi Surya (0810962007)6. Kristin Wahyuni (0810962009)7. Munawirul Jamal (0810962011)
PROGRAM STUDI ILMU KOMPUTERUNIVERSITAS BRAWIJAYA
MALANG2008
A. Latar Belakang
Beberapa penyakit pada sapi merupakan penyakit yang sangat menular. Angka kematian
yang diakibatkan serangan penyakit pada sapi sangat rendah, namun kerugian yang timbul akibat
serangan penyakit sangat besar karean terjadi penurunan berat badan, mudahnya stress pada sapi,
kematian pada sapid an bahkan dapat menular pada manusia hingga menyebabkan kematian pada
manusia.
Semakin pesatnya teknologi computer memungkinkan untuk menggantikan peran seorang
dokter hewan dalam mengidentifikasi penyakit pada sapi. Untuk identifikasi penyakit tersebut
dibutuhkan pengetahuan (knowledge) yang dirancang untuk aksi pemandu cerdas seorang ahli.
Pemandu cerdas dirancang dengan teknologi system pakar karena memberikan banyak keuntungan
bagi para pengembangnya.
Seiring dengan perkembangan Teknologi Informasi yang sangat dinamis. Dimana peminat
dan pengembang Teknologi Informasi semakin meningkat kebutuhan akan system komputasi
semakin dianggap perlu oleh masyarakat.
B. Identifikasi Permasalahan
Dari latar belakang di atas dapat diambil suatu rumusan masalah, yaitu bagaimana
mengimplementasikan sistem pakar guna mendiagnosa penyakit pada sapi sehingga dapat
diidentifikasi secara dini khususnya bagi peternak sapi perah?
C. Metode Penelitian
Metode Penelitian meliputi :
1. Penelitian Rekayasa
Penelitian rekayasa merupakan penelitian yang menerapkan ilmu pengetahuan menjadi suatu
rancangan, guna mendapatkan suatu kinerja sesuai dengan persyaratan yang ditentukan.
Penelitian diarahkan untuk membuktikan bahwa rancangan tersebut memenuhi spesifikasi
yang ditentukan. Penelitian berawal dari menentukan spesifikasi rancangan yang memenuhi
spesifikasi yang ditentukan, memilih alternatif yang terbaik, dan membuktikan bahwa
rancangan yang dipilih dapat memenuhi persyaratan yang ditentukan secara efisien, efektif
dan dengan biaya yang murah.
2. Metode pengumpulan data
Metode pengumpulan data yang dilakukan dalam penelitian ini yaitu mencakup pengumpulan
data mengenai jenis-jenis penyakit sapi, gejala penyakit sapi, penanganan, pencegahan dll,
pengumpulan data mengenai Sistem Pakar, dan Sistem Pakar diagnosis penyakit, dimana
pengumpulan datanya didapat dari berbagai literatur, dan media penunjang lainnya seperti
internet.
3. Metode Pengembangan
Dalam pengembangan suatu sistem diperlukan adanya suatu metode yang sesuai dengan
kebutuhannya, sehingga dengan mengikuti metode atau prosedur-prosedur yang diberikan,
maka diharapkan pengembangan system dapat berjalan dengan baik. Adapun dalam
melakukan pengembangannya, aplikasi Sistem Pakar ini mengacu kepada model proses
pengembangan Perangkat Lunak waterfall.
Gambar 1. Model Proses PL Waterfall
D. Sistem Pakar
Sistem Pakar merupakan salah satu bidang kecerdasan buatan (Artificial Intelligence),
definisi Sistem Pakar itu sendiri adalah sebuah program komputer yang dirancang untuk mengambil
keputusan seperti keputusan yang diambil oleh seorang pakar, dimana Sistem Pakar menggunakan
pengetahuan (knowledge), fakta, dan teknik berfikir dalam menyelesaikan masalah-masalah yang
biasanya hanya dapat diselesaikan oleh seorang pakar dari bidang yang bersangkutan. Dalam
pengembangan suatu Sistem Pakar, pengetahuan (knowledge) mungkin saja berasal dari seorang ahli,
atau merupakan pengetahuan dari media seperti majalah, buku, jurnal, dan sebagainya. Selain itu
pengetahuan yang dimiliki Sistem Pakar bersifat khusus untuk satu domain masalah saja. Semakin
banyak pengetahuan yang dimasukan kedalam Sistem Pakar, maka system tersebut akan semakin
baik dalam bertindak, sehingga hampir menyerupai pakar yang sebenarnya.
Gambar 2. Konsep Dasar Sistem PakarGambar 2. di atas merupakan gambaran konsep dasar Sistem Pakar, dimana pengguna (user)
menyampaikan fakta atau informasi kepada Sistem Pakar, kemudian fakta dan informasi tersebut
akan di simpan ke knowledge-base (basis pengetahuan), dan diolah dengan mekanisme inferensi,
sehingga sistem dapat memberikan respon kepada penggunanya berupa keahlian atau jawaban
berdasarkan pengetahuan yang dimilikinya.
E. Tujuan Sistem Pakar
Tujuan dari sebuah Sistem Pakar adalah mentransfer kepakaran yang dimiliki
seorang pakar kedalam komputer dan kemudian kepada orang lain (non expert).
Aktivitas pemindahan kepakaran adalah :
- Knowledge Acquisition (dari pakar atau sumber lain)
- Knowledge Representation (ke dalam komputer)
- Knowledge Inferencing
- Knowledge Transfering
F. Arsitektur Sistem Pakar
Sistem Pakar terdiri dari dua bagian pokok, yaitu development environment (lingkungan
pengembang) dan consultation environment (lingkungan konsultasi). Lingkungan pengembang
digunakan sebagai pembangun system pakar baik dari segi pembangun komponen maupun basis
pengetahuan, Sedangkan lingkungan konsultasi digunakan pengguna bukan pakar untuk memperoleh
pengetahuan pakar.
Gambar 3. Arsitektur Sistem Pakar (Sumber : Turban(1955))Komponen-komponen yang terdapat dalam Sistem Pakar tersebut terdiri dari antarmuka
pemakai, basis pengetahuan : fakta dan aturan, akuisisi pengetahuan, mekanisme inferensi,
workplace, fasilitas penjelasan, perbaikan pengetahuan.
1. Antarmuka Pemakai
Antarmuka pemakai memberikan fasilitas komunikasi antara pemakai dan system,
memberikan berbagai fasilitas informasi dan berbagai keterangan yang bertujuan untuk
membantu mengarahkan alur penelusuran masalah sampai ditemukan solusi.
2. Basis Pengetahuan (Knowladge Base)
Basis pengetahuan adalah fasilitas untuk menyimpan pengetahuan pakar. Berisi
pengetahuan-pengetahuan yang dibutuhkan untuk memahami, memformulasikan, dan
menyelesaikan masalah. Komponen ini disusun oleh dua elemen dasar yaitu fakta dan
aturan.
3. Akuisisi Pengetahuan (Knowledge acquisition subsystem)
Merupakan proses untuk mengumpulkan data pengetahuan terhadap suatu masalah
dari sumber pengetahuan (berasal dari pakar atau media seperti majalah, buku, literature, dll)
ke dalam computer. Sumber pengetahuan tersebut dijadikan dokumentasi untuk diolah,
dipelajari, dan diorganisasikan menjadi basis pengetahuan.
4. Mekanisme Inferensi
Komponen ini mengandung mekanisme pola pikir dan penalaran yang digunakan
oleh pakar dalam menyelesaikan suatu masalah. Mesin inferensi merupakan bagian dari
Sistem Pakar yang melakukan penalaran mengenai informasi yang ada dalam basis
pengetahuan dan dalam workplace, dan untuk menformulasikan kesimpulan.
Secara umum terdapat dua pendekatan yang digunakan dalam mekanisme inferensi
untuk pengujian aturan yaitu pelacakan kebelakang (backward chaining) dan pelacakan ke
depan (forward chaining).
Dalam pelacakan ke belakang adalah pendekatan yang dimotori tujuan (goaldriven),
pendekatan ini pelacakan dimulai dari tujuan (hipotesa) dan selanjutnya dicari aturan-aturan
yang memiliki tujuan tersebut dan dicari kesimpulannya (pembuktiannya).
Observasi A aturan R1 fakta C
Aturan R3
Observasi B aturan R2 fakta D Tujuan 1
Aturan R2
Sedangkan pelacakan ke depan merupakan pendekatan yang dimotori oleh data (data-
driven), pendekatan ini pelacakan dimulai dari informasi masukan, dan selanjutnya mencoba
menggambarkan kesimpulan.
Observasi A aturan R1 fakta C Kesimpulan 1
Aturan R3
Observasi B aturan R2 fakta D Kesimpulan 2
Aturan R2
Selain teknik penalaran tersebu
bentuk jaringan yang terdiri atas node-
data yang digunakan yaitu : depth-first s
fakta E
t, diperlukan juga teknik penelusuran data dalam
node berbentuk pohon. Ada tiga teknik penelusuran
earch, breadht-first search dan best first search.
a. Depth-first search
Merupakan teknik penelusuran data pada node-node secara vertical dan mendalam.
Gambar 4. Teknik Penelusuran Data Depth-first search
b. Breadth-first search
Merupakan teknik penelusuran data pada semua node dalam satu level atau satu
tingkatan sebelum level atau tingkatan berikutnya.
Gambar 5. Teknik Penelusuran Data Breadth-first search
c. Best-first search
Merupakan teknik penelusuran data yang menggunakan kombinasi kedua metode
sebelumnya.
5. Blackboard (workplace)
Merupakan tempat menyimpan sementara untuk memproses rencana (plan), agenda,
solusi, dan deskripsi masalah yang didapat dari knowledge base selama sesi konsultasi.
Workplace juga digunakan untuk merekam hasil-hasil antara dan kesimpulanyang dicapai.
6. Fasilitas Penjelas
Merupakan bagian dari Sistem Pakar yang memberikan penjelasan atas kesimpulan
yang dicapai tentang suatu masalah, serta memberikan rekomendasi kepada pemakai.
7. Perbaikan Pengetahuan
Kemampuan pakar dalam menganalisis dan meningkatkan kinerja pembelajaran
dapat diterapkan dalam program Sistem Pakar sehingga Sistem Pakar tersebut dapat
menganalisis penyebab dari kesuksesan dan kegagalab yang dialami.
G. Representasi Pengetahuan
Dalam Sistem Pakar, pengetahuan yang telah diuraikan, direpresentasikan kedalam
bentuk yang dapat diproses oleh komputer. Menurut Firebaugh(1989), terdapat empat teknik
untuk representasi pengetahuan yaitu Jaringan Semantik, frame, script dan aturan produksi atau
system produksi
1. Jaringan Semantik
Jaringan semantik merupakan jaringan data dan informasi, yang menunjukan hubungan
antar berbagai objek dimana informasi yang terhubung tersebut adalah informasi yang
proporsional (suatu pernyataan yang dapat bernilai benar atau salah). Dalam matematika, istilah
jaringan semantik merupakan suatu label atau graph berarah.
Struktur jaringan semantik terdiri dari node atau simpul dan busur atau arc yang
menghubungkannya. Simpul menyatakan objek sedangkan busur menyatakan links.Links dari
jaringan semantik digunakan untuk menunjukkan hubungan (relationship) antar simpul-simpul
tersebut. Contoh dari suatu salah satu jaringan semantik dalam identifikasi penyakit pada sapi
adalah sebagai berikut :
Gambar 6. Implementasi jaringan semantik untuk identifikasi penyakit pada sapi
2. Frame
Salah satu skema yang telah digunakan dalam banyak aplikasi AI adalah frame. Frame
dapat dipandang sebagai struktur data statik yang digunakan untuk merepresentasikan situasi-
situasi yang telah dipahami dan stereotype. Frame berupa kumpulan-kumpulan slot-slot yang
Demam
Tinggi
Bacillus antharacis
Penicilin dan
tetraksiklin
Gejal
a
Penyeb
ab
Solusi
Antraks
digunakan atau merupakan atribut untuk mendeskripsikan pengetahuan. Pengetahuan yang
termuat dalam slot dapat berupa kejadian, lokasi, situasi ataupun elemen-elemen lain. Frame
digunakan untuk representasi pengetahuan deklaratif.
Slot dalam frame mungkin berisi informasi sebagai berikut :
a. Informasi identifikasi frame
b.Hubungan frame dengan frame yang lain
c.Penggambaran persyaratan yang dibutuhkan frame
d.Informasi procedural untuk menggunakan struktur yang digambarkan
e. Informasi default frame
f. Informasi baru
Sedangkan, subslot terdiri dari beberapa bentuk antara lain
a.Value : nilai dari suatu atribut
b.Default : nilai yang digunakan jika slot kosong atau tidak dideskripsikan pada instansiasi
frame
c.Range : jenis informasi tindakan yang akan dikerjakan jika nilai slot diisi
d.If added : berisi informasi tindakan yang akan dikerjakan jika nilai slot diisi
e. If needed : Facet (subslot) ini digunakan pada kasus dimana tidak ada value pada slot
f. Other : slot dapat berisi frame, rule, jaringan semantic ataupun tipt lain dari informasi
3. Script
Script merupakan skema representasi pengetahuan yang sama dengan frame. Hanya saja
frame menggambarkan objek sedangkan script menggunakan serangkaian slot yang berisi
informasi objek dan tindakan-tindakan yang terjadi dalam suatu peristiwa.
Ada beberapa keistimewaan script yang perlu dicatat, yaitu :
a. Script menyediakan beberapa cara yang sangat alami untuk merepresentasikan “informasi
yang lazim” dengan masalah yang bersumber dari sistem AI dari permulaannya.
b. Script juga menyediakan struktur hirarki untuk merepresentasikan informasi melalui
inklusi subscript dengan script.
c. Struktur representasi pengetahuan lain seperti aturan kaidah dapat digunakan dalam cara
alami dengan script formal.
Keistimewaan tersebut memberikan script memiliki kemampuan sebagai berikut :
a. Script dapat memprediksi kejadian dan menjawab pertanyaan tentang informasi yang tak
terinci dalam baris cerita.
b. Script menyediakan suatu kerangka kerja untuk mengintegrasikan kumpulan observasi
kedalam interpretasi yang jelas.
c. Script menyediakan skema untuk kejadian yang tidak biasanya.
4. Sistem Produksi
Kaidah Sistem produksi menjadi acuan yang sangat sering digunakan oleh metode
inferensi sistem pakar dan dalam kasus penyelesaian masalah identifikasi awal penyakit pada sapi
atau dalam produksi sederhana
Terdapat tiga elemen utama dari semua sistem produksi, yaitu :
a. Database global
Merupakan struktur data utama dari sistem produksi.
b. Kaidah produksi
Kaidah produksi mempunyai bagian kondisi (IF) yang disebut bagian kanan dan aksi
(THEN) yang disebut bagian kiri.
c. Sistem control
Merupakan program penterjemah yang esensial untuk mengontrol urutan dimana kaidah-
kaidah produksi dipicu dan menyelesaikan konflik jika lebih dari satu kaidah yang
diaplikasikan.
Gambar 7. Gambar Komponen Sistem Produksi
Beberapa keuntungan yang dapat diperoleh dari sistem produksi yaitu :
a. Expressiveness dan intuitiveness
Karena berkaitan dengan pengalaman pekerjaan manusia dan diorganisasikan dalam
bentuk saran atau nasehat.
b. Sederhana
Sederhana karena menggunakan kaidah produksi berupa IF..THEN sehingga tepat
mengarah kepada pendokumentasian.
c. Kemampuam modularity dan kemampuan memodifikasi
Informasi dapat ditambahkan dan dihapus dari sistem secara esensial dan tidak
mengakibatkan efek samping serta dapat menunjukkan kenaikan produksi dengan
tidak mengalami pengurangan kinerja (Ciri modular).
d. Pengetahuan intensif
Pengetahuan intensif yang diberikan berupa pengetahuan murni karena setiap kaidah
produksi ekuivalen untuk suatu ringkasan dan kejelasan
H. Analisis Kebutuhan Sistem
1. Analisis Kebutuhan Pengguna
Berikut ini adalah daftar pengguna (user) yang terlibat pada Portal Informasi dan Sistem
Pakar untuk identifikasi penyakit pada sapi, dan adapun aktifitas dan hak akses masing-
masing pengguna tersebut dibedakan berdasarkan tingkatan (level) yang dimiliki :
a. Administrator (Level 1)
Administrator merupakan pengguna dengan akses penuh terhadap sistem,
berada pada level yang pertama, dan memegang peranan yang sangat penting pada
sistem, khususnya menyangkut sekuritas sistem. Berikut ini merupakan aktifitas dan
hak akses yang dimiliki pengguna Administrator : mengelola data pengguna (user)
berdasarkan level Administrator,dan mengelola aplikasi Sistem Pakar secara
keseluruhan.
b. Member (Level 2)
Member merupakan pengguna dengan akses terbatas terhadap sistem, berada
pada level yang kedua, dan tidak memiliki hak terhadap pengelolaan sistem. Berikut
ini merupakan aktifitas dan hak akses yang dimiliki pengguna Member:
menggunakan Sistem Pakar (Konsultasi dan Hasil Konsultasi).
2. Analisis Kebutuhan Sistem
Dalam mengembangkan suatu sistem, diperlukan adanya analisis dan pemodelan
terhadap kebutuhan-kebutuhan sistem tersebut, sehingga pada pelaksanaannya sistem tersebut
dapat menjalankan proses dengan baik sesuai dengan kebutuhannya. Oleh karenanya pada
penelitian ini dilakukan beberapa analisis dan pemodelan kebutuhan yang meliputi :
a. Kebutuhan Aplikasi
Kebutuhan ini meliputi bagaimana sistem dapat menunjang penggunanya dalam
mengakses sistem tersebut.
b. Kinerja Sistem Yang Diharapkan
Sebuah aplikasi harus dirancang agar dapat menjalankan fungsinya dengan baik,
sehingga dapat memberikan solusi atas permasalahan yang ada. Berikut ini merupakan
kinerja sistem yang diharapkan dari Implementasi Pemanfaatan Sistem Pakar dalam
identifikasi penyakit pada sapi :
1. Dukungan interface yang dapat memberikan kemudahan bagi pengguna aplikasi
dalam mengakses informasi.
2. Menyediakan berbagai media pendukung untuk membantu pengguna dalam
mendapatkan informasi dari sistem.
3. Model pengembangan program yang memungkinkan aplikasi dapat diakses lebih
cepat.
4. Sistem Pakar dapat memperbaiki pengetahuannya, yang meliputi insert, update, dan
delete data penyakit, data manifestasi, data aturan, data pertanyaan.
5. Sistem pakar dapat menghimpun data dalam jumlah yang sangat besar, dan bersifat
fleksibel terhadap perubahan.
6. Sistem Pakar dapat melakukan penelusuran secara cepat dan tepat, guna
menggambarkan kesimpulan.
7. Memberikan kemudahan untuk pengelola aplikasi (Admin) dalam mengelola Sistem
Pakar, dll.
I. Analisis Kebutuhan Sistem Pakar
1. Basis Pengetahuan
Dalam pemanfaatan sistem pakar pada identifikasi penyakit pada sapi menggunakan
Basis Aturan (Rule Based). Pengetahuan dalam system pakar direpresentasikan dalam
bentuk IF-THEN atau dalam bentuk Production Rules. Motor inferensi menentukan awal
(rule antecedents) yang sesuai. Sisi kiri harus cocok dengan fakta yang ada di memori kerja.
Aturan yang sesuai ditempatkan di agenda dan dapat diaktivasi.Aturan yang terdapat di
agenda dapat diaktivasi.
a. Aktivasi aturan akan membangkitkan fakta baru di sisi kanan
b. Aktivitas dari satu aturan adalah bagian dari aktivitas aturan yang lain.
Contoh : Rules : Demam Tinggi merupakan gejala dari penyakit Difteri Pedet
IF (Gejala= Demam Tinggi) AND (Penyakit = Difteri Pedet)
THEN stop
Rules : Demam Tinggi merupakan gejala dari penyakit antraks
IF (Gejala= Demam Tinggi) AND (Penyakit = Antraks)
THEN go
Basis pengetahuan pada Sistem Pakar untuk identifikasi penyakit pada sapi terdiri
dari dua macam sumber pengetahuan Fakta dan Aturan. Fakta pengetahuan yang disimpan
yaitu pengetahuan mengenai jenis penyakit pada sapi serta pengetahuan mengenai
manifestasi (gejala atau tanda yang muncul) yang menimbulkan penyakit pada tesebut.
Informasi beberapa pengetahuan untuk jenis penyakit pada sapi antara lain :Antraks,
Difteri pedet, Jembrana, Demam tiga hari, Diare ganas, Busuk kuku, Busung Ganas, dan
masih banyak lagi yang lain.Selain itu juga ditambahkan pula penyebab dari penyakit
tersebut.
Sedangkan informasi pengetahuan untuk manifestasi (gejala atau tanda yang muncul)
terdiri dari nama manifestasi itu sendiri yang berasal dari keluhan-keluhan yang diderita oleh
sapi, yang menunjukan adanya kemungkinan terjangkitnya penyakit pada sapi.
Adapun aturan yang disimpan merupakan pengetahuan yang didasarkan pada
keterkaitan antara penyakit yang muncul dengan manifestasi (gejala atau tanda) yang
menyebabkan penyakit tersebut muncul. Jadi basis aturan yang digunakan melibatkan
hubungan antara kategori penyakit pada sapi dengan manifestasi-manifestasi yang
menyebabkan penyakit tersebut.
2. Mekanisme Inferensi
Mekanisme inferensi mengandung suatu mekanisme pola pikir dan penalaran yang
digunakan dalam menyelesaikan suatu masalah, dalam hal ini bagaimana system dapat
mengambil suatu kesimpulan berdasarkan manifestasi yang dimasukkan oleh pengguna.
Pendekatan yang dipakai Sistem Pakar untuk identifikasi pada sapi menggunakan
pelacakan ke depan (forward chaining) dimana pelacakan tersebut dimotori oleh data
masukan keluhan – keluhan pada sapi dan selanjutkan mencoba menggambarkan
kesimpulannya dan penelusuran yang digunakan yaitu penelusuran depth-first search dimana
penelusuran dimulai dari node akar kemudian penelusuran dilakukan secara vertikal dan
mendalam.
Adapun pada penerapannya, pendekatan dari forward chaining dan metode depthfirst
search tersebut akan di implementasikan kedalam serangkaian query database yang
digunakan untuk melakukan penalaran, penelusuran, dan pencocokan data dari tabel-tabel
yang saling berhubungan pada Sistem Pakar tersebut.
Pada proses identifikasi, dalam keadaan tertentu mungkin saja satu manifestasi dapat
dimiliki lebih dari satu jenis penyakit sapi, maka solusi yang dapat dilakukan adalah
melakukan pengelompokan manifestasi berdasarkan jenis penyakitnya, sehingga pada proses
penelusurannya, sistem pakar tidak lagi dipusingkan dengan manifestasi yang sama antar
penyakit sapi yang satu dengan yang lainnya, dan Sistem Pakar akan menggunakan suatu
nilai temuan dari masing-masing manifestasi tersebut.
Selanjutnya Sistem Pakar melakukan penghitungan jumlah temuannya, sehingga
dengan jumlah nilai temuan tersebut, Sistem Pakar dapat menyimpulkan jenis penyakit pada
sapi yang paling dimungkinkan terjadi.
3. Identifikasi Aktor
Aktor merupakan sesuatu yang berkomunikasi dengan system dan merupakan sesuatu
yang eksternal dari system. Adapun actor pada system sakar identifikasi penyakit pada sapi
adalah sebagai berikut :
a. Knowledge Enginerr (Administrator)
Kegiatan yang dilakukan meliputi semua fitur pada aplikasi
b. Non Pakar (Member)
Kegiatan yang dilakukan hanya meliputi konsultasi dan menampilkan penjelasan dari
system.
J. Perancangan
1. Perancangan Basis Data
Dalam merancang sebuah basis data, diperlukan adanya pemodelan terhadap
kebutuhan dan aktifitas yang terjadi pada basis data tersebut. Sehingga pada pelaksanaannya
basis data tersebut dapat menjalankan proses dengan baik sesuai dengan kebutuhannya.
Adapun perancangan basis data pada aplikasi Sistem Pakar untuk identifikasi penyakit pada
sapi adalah sebagai berikut :
a. Entity Relationship Diagram
Entity Relationship Diagram adalah bentuk permodelan hubungan antar entitas beserta
keterkaitannya dengan table-tabel lain.
b. Struktur Tabel
Merupakan deskripsi lengkap dari table-tabel yang terlibat pada aplikasi Sistem Pakar
identifikasi penyakit pada sapi.
2. Perancangan Perangkat Lunak
Perancangan perangkat lunak aplikasi Sistem Pakar untuk identifikasi penyakit pada
sapi terdiri atas arsitektur perangkat lunak dan gambaran antarmuka pemakai. Dimana
arsitektur perangkat lunak digambarkan dengan structure chart, dan akan menjelaskan secara
terpisah proses-proses yang terjadi, beserta data-data yang terlibat didalamnya.
Sedangkan Antarmuka Pemakai merupakan bagian dari sistem yang digunakan
sebagai media perantara dalam penyampaian data dan informasi dari dan ke pengguna.
3. Perancangan Aturan Pada Basis Pengetahuan
Berdasarkan proses analis, maka perancangan aturan melibatkan keterkaitan atau
hubungan antara manifestasi dengan kategori penyakit pada sapi. Bentuk keterkaitan tersebut
dapat dilihat pada gambar di bawah ini :
Gambar 8. Perancangan Aturan
Berikut ini merupakan contoh implementasi aturan :
Kategori penyakit Antraks :
IF [demam tinggi AND kesulitan bernafas AND gemetar AND berjalan sempoyongan
THEN [Nilai temuan = 65].
Kategori penyakit Demam Tiga Hari :
IF [demam tinggi AND kesulitan bernafas AND gemetar AND berjalan sempoyongan
THEN [Nilai temuan = 30].
Mengingat Sistem Pakar menggunakan metode penghitungan dari nilai temuan, maka
berdasarkan penalaran aturan diatas, maka dapat disimpulkan penyakit antraks yang paling
dimungkinkan terjadi dengan 65 nilai temuan, dan adapun kemungkinan kedua adalah
demam tiga hari dengan 30 nilai temuan.
Basis Aturan
Manifestasi Penyakit sapi ke-1
Kategori Penyakit sapi
Manifestasi Penyakit sapi ke-n
Kategori Penyakit sapi
Manifestasi Penyakit sapi ke-1
Manifestasi Penyakit sapi ke-n
4. Perancangan Mekanisme Inferensi
Karena kategori penyakit pada sapi memiliki sejumlah manifestasi yang kadang sama
maka dalam hal ini setiap manifestasi dikelompokan berdasarkan jenis penyakitnya, dan
Sistem Pakar akan menggunakan suatu nilai temuan dari masing-masing manifestasi tersebut.
Selanjutnya Sistem Pakar melakukan penghitungan jumlah temuannya, sehingga dengan
jumlah nilai temuan tersebut, Sistem Pakar dapat menyimpulkan jenis penyakit pada sapi
yang paling dimungkinkan terjadi.
Berikut merupakan bentuk pohon penelusuran yang digunakan untuk mengidentifikasi
penyakit dan menghitung nilai temuan berdasarkan masukan manifestasi. Adapun
implementasi dari pohon penelusuran tersebut adalah melalui teknik query database.
Gambar 9. Bentuk Pohon Penelusuran Depth First SearchKeterangan :
a. Penelusuran pertama dilakukan dengan mengidentifikasi kategori penyakit ke-1.
b. Kemudian penelusuran dilanjutkan dengan mengidentifikasi setiap manifestasi dari
kategori penyakit tersebut. Adapun setiap terdapat kecocokan antara manifestasi yang
diuji di aturan, dengan manifestasi yang dimasukan oleh pengguna, maka akan
dihasilkan nilai temuan kecocokan.
c. Kemudian penelusuran dilanjutkan ke kategori penyakit yang lain, dengan
mengidentifikasi manifestasi dari jenis penyakit tersebut, sehingga dihasilkan nilai
temuan untuk jenis penyakit tersebut.
d. Terakhir nilai temuan dari masing-masing kategori penyakit akan dibandingkan,
sehingga dapat dihasilkan kesimpulan penyakit pada sapi yang paling dimungkinkan
terjadi.
5. Perancangan Penjelasan Sistem
Penjelasan sistem merupakan penjelasan kepada pengguna mengenai penyakit yang
teridentifikasi, penyebab dari penyakit tersebut, solusi yang ditawarkan dari penyakit
tersebut. Dan adapun pengetahuan yang disampaikan pada penjelasan sistem telah
terintegrasikan didalam basis pengetahuan Sistem Pakar.
K. Hasil Implementasi
Berikut ini merupakan implementasi antarmuka pemakai (interface) untuk aplikasi Sistem Pakar
Identifikasi Penyakit Pada Sapi
Pada form ini user dapat memasukkan basic penyakit kedalam sistem database yang telah disediakan,
adapun penulisan koding yang dilakukan dalam VB 6.0 adalah sebagai berikut :
Dim cn As ADODB.Connection, rs As ADODB.Recordset
If CmbJns.ListIndex > 0 Then
If dbOpen(cn, ConnStr, True) Then
cn.BeginTrans
Dim ada As Boolean
ada = isRecExists(cn, "select * from TPenyakit where ID_Penyakit
like '" & txtKd.Text & "'")
kemudian implementasi dari form tabel gejala yang berisi pengetahuan tentang gejala, kode yang
digunakan pada VB 6.0 adalah sebagai berikut :
Pada form ini user dapat memasukkan basic gejala kedalam sistem database yang telah
disediakan, adapun penulisan koding yang dilakukan dalam VB 6.0 adalah sebagai berikut :
Public Jns As String
Public KdPnykt As String
Dim is_Edit As Boolean
Dim cn As ADODB.Connection, rs As ADODB.Recordset
f dbOpen(cn, ConnStr, True) Then
cn.BeginTrans
Dim ada As Boolean
ada = isRecExists(cn, "select * from TGejala where ID_Gejala like '"
& txtKdGejala.Text & "'")
kemudian implementasi dari form tabel penyebab yang berisi pengetahuan tentang penyebab
penyakit, kode yang digunakan pada VB 6.0 adalah sebagai berikut :
Pada form ini user dapat memasukkan basic penyebab kedalam sistem database yang telah
disediakan, adapun penulisan koding yang dilakukan dalam VB 6.0 adalah sebagai berikut :
Public Jns As String
Public KdPnykt As String
Dim is_Edit As Boolean
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Dim cn1 As ADODB.Connection, rs1 As ADODB.Recordset
If dbOpen(cn1, ConnStr, True) Then
cn1.BeginTrans
Dim ada As Boolean
ada = isRecExists(cn1, "select * from TPenyebab where
ID_Penyebab like '" & txtKdGejala.Text & "'")
kemudian implementasi dari form tabel solusi yang berisi pengetahuan tentang penyebab
penyakit, kode yang digunakan pada VB 6.0 adalah sebagai berikut :
Pada form ini user dapat memasukkan basic penyebab kedalam sistem database yang telah
disediakan, adapun penulisan koding yang dilakukan dalam VB 6.0 adalah sebagai berikut :
Public Jns As String
Public KdPnykt As String
Dim is_Edit As Boolean
Dim cn As ADODB.Connection, rs As ADODB.Recordset
If dbOpen(cn, ConnStr, True) Then
cn.BeginTrans
Dim ada As Boolean
ada = isRecExists(cn, "select * from TSolusi where ID_Solusi like '"
& txtKdGejala.Text & "'")
kemudian implementasi dari form tabel aturan yang berisi pengetahuan tentang Knowledge Base
yang ada pada sistem, pada form ini menginformasikan aturan apa yang digunakan untuk pedoman dalam
menghasilkan keluaran pada hasil konsultasi, sehingga pada pengisian form aturan ini diperlukan
Knowledge Base tentang kesehatan tentang hewan sapi, kode yang digunakan pada VB 6.0 adalah sebagai
berikut :
Gambar Form Aturan
adapun cuplikan penulisan koding yang dilakukan dalam VB 6.0 sebagai berikut :
Option Explicit
Public Jns As String
Public KdPnykt As String
Dim is_Load As Boolean
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Sub LihatKondisi()
Refreshed
Dim I As Integer
Dim ada As Boolean
If dbOpen(cn, ConnStr, True) Then
If rsOpen(rs, "select * from TRule_Gejala_Penyakit where ID_Penyakit
like '" & CmbKdJns.List(CmbJns.ListIndex) & "'", cn, , , , True) Then
If Not rs.EOF And rs.RecordCount > 0 Then
Do While Not rs.EOF
I = 1
For I = 1 To LVDTG.ListItems.Count
' ada = False
If Trim(rs("ID_Gejala")) =
Trim(LVDTG.ListItems(I).ListSubItems("Kd_Gejala").Text) Then
LVDTG.ListItems(I).Checked = True
LVDTG.ListItems(I).ListSubItems("Bobot").Text =
IIf(IsNull(rs("bobot").Value), "0", rs("Bobot").Value)
ada = True
Exit For
End If
Next I
rs.MoveNext
Loop
End If
Else
MsgBox "Kesalahan pada Query", vbInformation, App.Title
End If
If rsOpen(rs, "select * from TRule_Penyebab_Penyakit where
ID_Penyakit like '" & CmbKdJns.List(CmbJns.ListIndex) & "'", cn, , , , True)
Then
If Not rs.EOF And rs.RecordCount > 0 Then
Do While Not rs.EOF
' Dim I As Integer
For I = 1 To LVDTP.ListItems.Count
ada = False
If Trim(rs("ID_Penyebab")) =
Trim(LVDTP.ListItems(I).ListSubItems("Kd_Penyebab").Text) Then
LVDTP.ListItems(I).Checked = True
ada = True
End If
If ada Then Exit For
Next I
rs.MoveNext
Loop
End If
Else
MsgBox "Kesalahan pada Query", vbInformation, App.Title
End If
If rsOpen(rs, "select * from TRule_Solusi_Penyakit where ID_Penyakit
like '" & CmbKdJns.List(CmbJns.ListIndex) & "'", cn, , , , True) Then
If Not rs.EOF And rs.RecordCount > 0 Then
Do While Not rs.EOF
' Dim I As Integer
For I = 1 To LVDTS.ListItems.Count
ada = False
If Trim(rs("ID_Solusi")) =
Trim(LVDTS.ListItems(I).ListSubItems("Kd_Solusi").Text) Then
LVDTS.ListItems(I).Checked = True
ada = True
End If
If ada Then Exit For
Next I
rs.MoveNext
Loop
End If
Else
MsgBox "Kesalahan pada Query", vbInformation, App.Title
End If
Else
MsgBox "Kesalahan pada koneksi database", vbInformation, App.Title
End If
End Sub
Private Sub CmdSave_Click()
If dbOpen(cn, ConnStr, True) Then
If MsgBox("Yakin Data Sudah Benar", vbQuestion + vbYesNo, App.Title)
= vbYes Then
cn.BeginTrans
If Not dbQuery(cn, "Insert into TGejala (ID_Gejala,Nama_Gejala)
values('" & txtKdGejala.Text & "', '" & txtGejala.Text & "');", True) Then
GoTo Roll_Back
If Not dbQuery(cn, "Insert into TRule_Gejala_Penyakit
(ID_Penyakit, ID_Gejala) values('" & txtKd.Text & "','" & txtKdGejala.Text &
"')", True) Then GoTo Roll_Back
cn.CommitTrans
BlankForm
LoadData
Pada tahap form konsultasi adalah tahapan pengetesan hasil dari sistem pakar dengan
menggunakan metode rule based system, pada form ini user mengidentisifikasikan gejala-gejala gangguan
kesehatan pada hewan sapi, dan sistem akan mengolahnya berdasarkan aturan-aturan yang telah dibuat
menjadi bentuk sebuah pengetahuan atau informasi.
Gambar form Konsultasi
Cuplikan kode VB 6.0 yang digunakan pada proses pengolahan informasi pada form ini adalah
sebagai berikut :
Option Explicit
Public Jns As String
Public KdPnykt As String
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Private Sub CmdProses_Click()
Dim I As Integer, J As Integer
Dim Gejala_Temp As String
Gejala_Temp = "": J = 0
For I = 1 To LVDT.ListItems.Count
If LVDT.ListItems(I).Checked Then
J = J + 1
Gejala_Temp = Gejala_Temp &
LVDT.ListItems(I).ListSubItems("Kd_Gejala").Text & ";"
End If
Next I
Pada keluaran hasil akhir yang berisi tentang informasi rujukan bagi user untuk mengetahui
diagnosa penyakit pada hewan sapi berupa form hasil konsultasi yang menampilkan daftar gejala yang
telah diinputkan pada sistem pada form konsultasi, dan pada form hasil konsultasi ditampilkan kembali
gejala yang telah dipilih, pada form ini juga menampilkan hasil dari evaluasi aturan yaitu berupa nama
penyakit, gejala dan solusi yang harus dilakukan untuk penanganan sebagai keluaran akhir dari sistem
ditunjukkan pada gambar berikut :
Gambar Form Hasil Konsultasi
Cuplikan kode VB 6.0 yang digunakan pada proses pengolahan informasi pada form ini adalah
sebagai berikut :
Option Explicit
Public Jns As String
Public KdPnykt As String
Public Gejala As String
Public Jml_Gejala As Integer
Dim Kondisi_Gejala As String
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Sub LoadData()
If dbOpen(cn, ConnStr, True) Then
Dim I As Integer, Gjl As String
LVDT.ListItems.Clear
Kondisi_Gejala = " "
For I = 1 To Jml_Gejala
Gjl = GetWord(Gejala, I, ";")
If rsOpen(rs, "select * from TGejala where ID_Gejala like '" &
Gjl & "'", cn, , , , True) Then
With LVDT.ListItems.Add(, , Str(I))
.ListSubItems.Add , "Nama_Gejala", rs("Nama_Gejala")
.ListSubItems.Add , "Kd_Gejala", rs("ID_Gejala")
Kondisi_Gejala = Kondisi_Gejala & IIf(I > 1, " OR", " ")
& " ID_Gejala like '" & rs("ID_Gejala") & "'"
End With
Else
MsgBox "Kesalahan pada Query", vbInformation, App.Title
Exit Sub
End If
Next I
Private Sub Form_Activate()
Dim SQLKu As String, no As Integer, KDPenyakit As String
BlankForm
LoadData
SQLKu = "SELECT Nama_Penyakit, Sum(Bobot) AS JmlBobot, ID_Penyakit From
QRPenyakit Where " & Kondisi_Gejala & " GROUP BY Nama_Penyakit, ID_Penyakit;"
If dbOpen(cn, ConnStr, True) Then
If rsOpen(rs, SQLKu, cn, , , , True) Then
no = 0
If rs.RecordCount > 0 Then
Do While Not rs.EOF
no = no + 1
With LVPnykt.ListItems.Add(, , Str(no))
.ListSubItems.Add , "Nama_Penyakit",
rs("Nama_Penyakit")
.ListSubItems.Add , "Bobot",
IIf(IsNull(rs("JmlBobot").Value), "0", rs("JmlBobot").Value)
.ListSubItems.Add , "Kd_Penyakit", rs("ID_Penyakit")
End With
L. KesimpulanDari Identifikasi masalah diatas, maka dapat diambil kesimpulan :1. Kebutuhan masyarakat khususnya peternak sapi akan sarana informasi kesehatan pada sapi,
khususnya mnyangkut penyakit-penyakit berbahaya pada sapi.2. Kebutuhan pemerintah atau instansi khususnya dinas peternakan lainnya terhadap sarana
sosialisasi dan penyuluhan kesehatan pada sapi3. Ketidakwaspadaan masyarakat khususnya peternak ayam terhadap penyakit-penyakit
berbahaya pada sapi dan dapat menyebabkan terlambatnya penanggulangan penyakittersebut.
4. Membantu dalam melakukan identifikasi penyakit pada sapi secara dini, melalui pengolahankomputer, sehingga penanganan lebih lanjut terhadap penyakit tersebut dapat dengan cepatdilakukan.
M. Daftar PustakaAdelman, S., and L.(1992).Evaluating Expert System.New York:John Wiley
Al-Zobaidie,A.,and J.B. Grimson.(1987).Development of Expert System and Building ExpertSystem Tools For Individual and Groups:How Can They Serve Each Other.
Muhamad Arhami.2005.Konsep Dasar Sistem Pakar.
Turban, Efram, Jay E.Aronson, and Ting Peng Liang.2005.Decision Support Systems andIntelligent Systems (Sistem Pendukung Keputusan dan Sistem Cerdas). Edisi 7 Jilid 1, Andi,Yogyakarta.
www.google.com