Tugas_besar_ai

27
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 KOMPUTER UNIVERSITAS BRAWIJAYA MALANG 2008

Transcript of Tugas_besar_ai

Page 1: 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

Page 2: Tugas_besar_ai

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

Page 3: Tugas_besar_ai

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.

Page 4: Tugas_besar_ai

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.

Page 5: Tugas_besar_ai

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.

Page 6: Tugas_besar_ai

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.

Page 7: Tugas_besar_ai

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.

Page 8: Tugas_besar_ai

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

Page 9: Tugas_besar_ai

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.

Page 10: Tugas_besar_ai

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

Page 11: Tugas_besar_ai

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

Page 12: Tugas_besar_ai

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

Page 13: Tugas_besar_ai

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.

Page 14: Tugas_besar_ai

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

Page 15: Tugas_besar_ai

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

Page 16: Tugas_besar_ai

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.

Page 17: Tugas_besar_ai

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 & "'")

Page 18: Tugas_besar_ai

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 & "'")

Page 19: Tugas_besar_ai

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 & "'")

Page 20: Tugas_besar_ai

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 :

Page 21: Tugas_besar_ai

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

Page 22: Tugas_besar_ai

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

Page 23: Tugas_besar_ai

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 :

Page 24: Tugas_besar_ai

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

Page 25: Tugas_besar_ai

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

Page 26: Tugas_besar_ai

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.

Page 27: Tugas_besar_ai

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