sistem Pakar Mendiagnosa Penyakit Ayam Berbasis web

(1)

Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

PUPUS MUSTIKA PURI

10106188

PROGRAM STUDI S1

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

2011


(2)

i

BERBASIS WEB oleh

Pupus Mustika Puri 10106188

Pertumbuhan dan perkembangan ayam mulai dari perawatan, pemeliharaan sampai produksi daging dan telur tidak luput dari berbagai gangguan penyakit. Hal ini, mengakibatkan kerugian bagi pemilik peternakan tersebut.

Proses pembangunan sistem pakar ini menggunakan metode akuisisi pengetahuan dengan teknik pengumpulan data yang digunakan yaitu wawancara, observasi dan induksi aturan. Sedangkan metode inferensi yang digunakan dalam pembangunan sistem pakar ini dengan metode forward chaining dan menggunakan metode pencarian best-first-search. Untuk metodologi pembangunan perangkat lunak yang digunakan menggunakan metode terstruktur yaitu Data Flow Diagram dan Entity Relationship Diagram. Tools pemrograman yang digunakan dalam pembangunan sistem pakar ini menggunakan Adobe Dreamweaver CS3 sedangkan basis datanya menggunakan MySQL.

Sistem pakar ini dibuat bertujuan untuk membantu pasien dalam mendiagnosa penyakit ayam secara dini. Dalam perancangan sistem pakar ini meminta suatu jawaban dari user terhadap gejala yang di derita, kemudian ouput

yang dihasilkan oleh komputer berupa kemungkinan penyakit yang dialami oleh

user serta solusi untuk mengobati penyakit pada ayam tersebut.


(3)

ii by

Pupus Mustika Puri 10106188

Growth and development of avian ranging from maintenance, maintenance to the production of meat and eggs do not escape from a variety of diseases. This, result in losses for the owners of these farms.

This expert system development process using the method of acquisition of knowledge with data collection techniques used were interviews, observation and induction rules. While the inference method used in the development of this expert system with forward chaining method and using the method of best-first search. For software development methodology used to use a structured method that is Data Flow Diagram and Entity Relationship Diagram. Programming tools used in this expert system development using Adobe Dreamweaver CS3 while using a MySQL database

Expert system was created aims to assist patients in diagnosing disease early chicken. In this expert system design of the user requesting a response to the symptoms in the suffering, then the output generated by the computer in the form of the possibility of disease experienced by users as well as solutions for treating the disease in chickens


(4)

iii

hadirat sang Maha Pintar Allah SWT, karena dengan izin-Nya dan setitik ilmu pengetahuan yang dipinjamkan kepada mahluk-Nya, penulis dapat menyelesaikan laporan tugas akhir ini.

Laporan tugas akhir dengan judul “SISTEM PAKAR UNTUK

MENDIAGNOSA PENYAKIT AYAM BERBASIS WEB” ini disusun

guna memenuhi salah satu tugas mata kuliah tugas akhir pada semester sembilan di jurusan Teknik Informatika Universitas Komputer Indonesia.

Penulis sangat menyadari kekurangan yang ada pada laporan ini. Kekurangan ini dikarenakan keterbatasan penulis dalam hal ilmu pengetahuan dan pemahaman penulisan laporan. Akan tetapi, penulis berusaha menyusun laporan ini sebaik yang penulis bisa dengan segenap kemampuan dan usaha yang penulis bisa.

Selama menulis laporan tugas akhir ini, penulis telah mendapatkan banyak sekali bimbingan dan bantuan dari berbagai pihak yang telah dengan segenap hati dan keikhlasan yang penuh membantu dan membimbing penulis dalam menyelesaikan laporan ini. Dengan kesadaran hati, penulis ucapkan terima kasih kepada:

1. Kedua orang tuaku yang senantiasa mendukungku dari kecil sampai saat ini”Thanks for being my parent, u ‘re best of the best in my life”.


(5)

2. Kakakku tercinta Puput Yuni S.“u’re bad sister(?) lol sometimes! xD but I love u the most, thanks for do everythings to me. I really proud got sist like you and sorry sometimes I always make u angry for many reason ”

3. Ibu Mira Kania Sabariah, S.T, M.T., selaku Ketua Jurusan Teknik Informatika Universitas Komputer Indonesia.

4. Bapak Galih Hermawan S.Kom. selaku dosen wali kami IF-5 angkatan 2006.

5. Bapak Andry Alamsyah, S.SI., M.SI. selaku dosen pembimbing laporan tugas akhir yang dengan segala kesabaran hatinya membimbing penulis dalam menulis laporan tugas akhir ini.

6. Bapak Iskandar Iqbal, S.T. sebagai reviewer dan dosen penguji 1 yang telah banyak memberikan saran, arahan dan bimbingan kepada penulis. 7. Bapak dan Ibu dosen serta seluruh staf pegawai jurusan Teknik

Informatika, UNIKOM Bandung yang telah banyak membantu penulis. 8. Drh. Titis Wahjudianto selaku pembimbing dalam pembuatan sistem pakar

dan mau meluangkan waktunya untuk penulis.

9. Teman-teman yang sedang tugas akhir Yudha, Wiwik, Ilmani, Dayu, Sophian, Desi, dan Fauzi, terima kasih atas supportnya.

10. Teman-teman kosn Ria, Karina dan Yanti terima kasih sudah susah-senang bareng “jangan bosen ya ngumpul dan ngobrol bareng lagi”

11. Fandy yang sudah membantu penulis dalam pembuatan program tugas akhir ini. Terimakasih atas bantuan dan infonya “gomawo~yo


(6)

Dan semua pihak yang tidak dapat penulis tuliskan namanya satu persatu yang telah memberikan dorongan semangatnya kepada penulis. Akhir kata, penulis berharap agar laporan ini dapat berguna bagi semua orang yang membutuhkan. Amien.

Bandung, Januari 2011


(7)

iv

ABSTRACT ...ii

KATA PENGANTAR ...iii

DAFTAR ISI ...v

DAFTAR GAMBAR ...xi

DAFTAR TABEL ...xv

DAFTAR SIMBOL...xx

DAFTAR LAMPIRAN...xvii

BAB I PENDAHULUAN ...1

1.l. Latar Belakang Masalah ...1

1.2. Identifikasi Masalah...2

1.3. Maksud dan Tujuan ...3

1.3.1. Maksud ...3

1.3.2. Tujuan ...3

1.4. Batasan Masalah ...3

1.5. Metodologi Penelitian ...4

1.5.1. Pengumpulan Data ...5

1.5.2. Pembangunan Perangkat Lunak ...6

1.6. Sistematika Penulisan ...8

BAB II TINJAUAN PUSTAKA ...10

2.1. Artificial Intelligence ...10


(8)

2.1.2. Pengertian Artificial Intelligence ...12

2.1.3. Tujuan Artificial Intelligence ...14

2.1.4. Lingkup Utama Artificial Intelligence ...15

2.2. Sistem Pakar ...16

2.2.1. Pengertian Sistem Pakar ...16

2.2.2. Tujuan Sistem Pakar ...18

2.2.3. Bentuk Sistem Pakar ...19

2.2.4. Manfaat dan Ketebatasan Sistem Pakar ...20

2.2.4.1. Manfaat Sistem Pakar ...20

2.2.4.2 Keterbatasan Sistem Pakar ...21

2.2.5. Komponen Sistem Pakar ...22

2.2.6. Arsitektur Sistem pakar ...24

2.2.7. Pemilihan Masalah ...26

2.2.8. Rekayasa pengetahuan ...28

2.2.9. Partisipasi dalam proses pembangunan ...29

2.2.10. Akuisi Pengetahuan ...30

2.2.11 Komponen-komponen Sistem Pakar ...31

2.2.12. Pohon Pelacakan ...33

2.2.13. Bidang-Bidang sistem Pakar ...37

2.3. Basis data ...39

2.4. Metode Analisis yang digunakan ...45

2.2.14.1. Flowchart ...47

2.2.14.2.Diagram Konteks ...48

2.2.14.3. DFD ...48


(9)

2.2.14.5. Kamus Data ...50

2.2.14.6. Perintah- Perintah MSQL ...51

2.2.14.7. PHP ...52

2.2.14.7. Website ...53

BAB III ANALISIS DAN PERANCANGAN SISTEM ...54

3.1. Analisis Sistem ...54

3.1.1. Analisis Masalah ...54

3.1.2. Identifikasi Masalah ...55

3.1.3. Analisis Data penyakit ...60

3.1.4. Pohon Pelacakan ...64

3.1.5 Kaidah Produksi………...………..66

3.1.6. Analisis Basis Data ...70

3.1.6.1. Entity Relationship Diagram ...70

3.1.7. Analisis Kebutuhan Fungsional ...71

3.1.7.1. Diagram Konteks ...71

3.1.7.2. DFD ...71

3.1.7.2.1. DFD level 1 ...72

3.1.7.2.2. DFD level 2 ...73

3.1.7.2.3. DFD level 3 (Pengolahan Gejala) ...74

3.1.7.2.4. DFD level 3 (Pengolahan Rule) ...74

3.1.7.2.5. DFD level 3 (Pengolahan Penyakit) ...75

3.1.7.2.6. DFD level 3 (Pengolahan Pakar) ...75

3.1.7.2.7. DFD level 3 (Pengolahan Forum) ...76


(10)

3.1.7.4. Kamus Data ...82

3.2 Perancangan Sistem ...83

3.2.1. Perancangan Data ...84

3.2.1.1. Skema Relasi ...84

3.2.1.2. Struktur Tabel...85

3.2.2. Perancangan struktur menu ...90

3.2.3. Perancangan Arsitektur...91

3.2.3.1. Perancangan Menu ...91

3.2.3.2. Perancangan Pesan ...101

3.2.3.3. Jaringan Semantik ...103

3.2.3.4. Jaringan Semantik ...104

BAB VI. IMPLEMENTASI DAN PENGUJIAN SISTEM ...107

4.1. Implementasi Sistem ...107

4.1.1. Kebutuhan Perangkat Keras ...107

4.1.2. Kebutuhan Perangkat Lunak ...108

4.1.3. Implementasi Basis Data ...108

4.1.4. Implementasi Antar Muka ...111

4.1.4.1. Implementasi Antamuka pakar ...111

4.1.4.2. Implementasi Antamuka User ...112

4.2. Pengujian Alpha...112

4.2.1. Rencana Pengujian Aplikasi ...113

4.2.2. Kasus dan Hasil Pengujian...114


(11)

4.2.2.2. Pengujian Pengolahan Data gejala ...115

4.2.2.3. Pengujian Pengolahan Data penyakit ...116

4.2.2.4. Pengujian Pengolahan Data Relasi...117

4.2.2.5. Pengujian Ubah Profil (Pakar) ...118

4.2.2.6. Pengujian Forum ...119

4.3. Pengujian Beta ...119

4.3.1. Kesimpulan Hasil Pengujian Beta Sistem Pakar ...119

4.3.2. Kesimpulan Hasil Pengujian Beta Sistem Pakar ...126

BAB V. KESIMPULAN DAN SARAN ...127

5.1. Kesimpulan ...127

5.2. Saran ...127


(12)

xi

Gambar 1.1. Skema Waterfall ... 6

Gambar 2.1. Proses Motor Inferensi ... 15

Gambar 2.2. Struktur sistem pakar ... 25

Gambar 2.3. Arsitektur sistem pakar ... 27

Gambar 2.4. Proses dalam rekayasa pengetahuan ... 30

Gambar 2.5. Metode akuisi pengetahuan ... 32

Gambar 2.6. Proses Forward chaining ... 36

Gambar 3.1. ERD sistem pakar diagnosa penyakit ayam ... 78

Gambar 3.2. Diagram konteks ... 79

Gambar 3.3. DFD level 1 Sistem Pakar Diagnosa Penyakit Ayam ... 80

Gambar 3.4. DFD level 2 pengolahan data ... 81

Gambar 3.5. DFD level 3 proses gejala ... 82

Gambar 3.6. DFD level 3 proses relasi ... 82

Gambar 3.7. DFD level 3 proses penyakit ... 83

Gambar 3.8.DFD level 3 pengelolaan pakar ... 83

Gambar 3.9. DFD level 3 pengelolaan forum ... 84

Gambar 3.10. Skema Relasi ... 99

Gambar 3.11. Struktur Menu Member ... 100


(13)

Gambar 3.13. Form Menu Utama ... 101

Gambar 3.14. Form Pendaftaran... 101

Gambar 3.15. Form Login Pakar ... 102

Gambar 3.16. Form Cetak diagnosa ... 102

Gambar 3.17. Form menu diagnosa ... 103

Gambar 3.18. Form menu hasil diagnosa... 104

Gambar 3.19. Form detail diagnosa dan cetak diagnosa... 104

Gambar 3.20. Form Menu Forum ... 105

Gambar 3.21. Form Jawab Forum ... 105

Gambar 3.22. Form Menu Utama Pakar ... 106

Gambar 3.23. Form Penyakit ... 106

Gambar 3.24. Form Tambah Penyakit ... 107

Gambar 3.25. Form Edit Penyakit ... 107

Gambar 3.26. Form Gejala ... 108

Gambar 3.27. Form Tambah gejala ... 108

Gambar 3.28. Form Edit gejala ... 108

Gambar 3.29. Form Relasi ... 109

Gambar 3.30. Form tambah relasi ... 109

Gambar 3.31. Form edit relasi ... 110

Gambar 3.32. Form Tambah pakar ... 110

Gambar 3.34. Form edit pakar ... 111

Gambar 3.35. Form laporan penyakit ... 112


(14)

Gambar 3.37. Form menu forum ... 113

Gambar 3.38. Form tambah forum ... 113

Gambar 3.39. Form edit forum ... 114

Gambar 3.40. Tampilan Pesan M01 ... 114

Gambar 3.41. Tampilan Pesan M02 ... 114

Gambar 3.42. Tampilan Pesan M03 ... 114

Gambar 3.43. Tampilan Pesan M04 ... 114

Gambar 3.44. Tampilan Pesan M05 ... 115

Gambar 3.45. Tampilan Pesan M06 ... 115

Gambar 3.46. Tampilan Pesan M07 ... 115

Gambar 3.47. Tampilan Pesan M08 ... 115

Gambar 3.48. Tampilan Pesan M09 ... 115

Gambar 3.49. Tampilan Pesan M10 ... 115

Gambar 3.50. Tampilan Pesan M11 ... 115

Gambar 3.51. Tampilan Pesan M12 ... 115

Gambar 3.52. Tampilan Pesan M13 ... 116

Gambar 3.53 .Tampilan Pesan M14 ... 116

Gambar 3.54. Tampilan Pesan M15 ... 116

Gambar 3.55. Tampilan Pesan M16 ... 115

Gambar 3.56. Tampilan Pesan M17 ... 115

Gambar 3.57. Tampilan Pesan M18 ... 116

Gambar 3.58 .Tampilan Pesan M19 ... 116


(15)

Gambar 3.60 Jaringan Semantik pengguna ... 117

Gambar 3.61 Jaringan Semantik pakar ... 118

Gambar 3.62 Flowchart Diagnosa ... 119

Gambar 3.63 Flowchart Login ... 119

Gambar 3.64 Flowchart Tambah ... 119


(16)

xv

Tabel 3.2. Spesifikasi proses ... 76

Tabel 3.3. Kamus Data ... 82

Tabel 3.4. Tabel Gejala ... 85

Tabel 3.5. Tabel Relasi ... 85

Tabel 3.6. Tabel Penyakit ... 85

Tabel 3.7. Tabel Hasil Diagnosa ... 86

Tabel 3.8. Tabel Pakar ... 86

Tabel 3.9. Tabel Temporary Penyakit... 86

Tabel 3.10. Tabel Temporary Gejala ... 87

Tabel 3.11. Tabel Temporary Analisa ... 87

Tabel 3.12. Tabel Jawaban ... 87

Tabel 3.13. Tabel Forum ... 88

Tabel 3.14. Tabel Topik ... 88

Tabel 3.15. Tabel Poling ... 88

Tabel 3.16. Tabel Member ... 89

Tabel 4.1. Perangkat Keras yang digunakan ... 108

Tabel 4.2. Perangkat Lunak yang digunakan ... 108

Tabel 4.3. Implementasi Database ... 108

Tabel 4.4. Antarmuka Pakar ... 111


(17)

Tabel 4.6. Rencana Pengujian Aplikasi Sistem Pakar Penyakit Ayam ... 113

Tabel 4.7. Pengujian Login ... 114

Tabel 4.8. Pengujian member ... 114

Tabel 4.10. Pengujian diagnosa ... 115

Tabel 4.11. Pengujian Tambah gejala ... 115

Tabel 4.12. Pengujian Ubah gejala ... 116

Tabel 4.13. Pengujian Tambah Penyakit... 116

Tabel 4.14. Pengujian ubah data penyakit ... 117

Tabel 4.15. Pengujian tambah data relasi... 117

Tabel 4.16. Pengujian ubah relasi ... 118

Tabel 4.17. Pengujian Tambah Pakar ... 118

Tabel 4.18. Pengujian Ubah Pakar ... 118

Tabel 4.19. Pengujian Forum Diskusi... 119

Tabel 4.20. Hasil Pengujian kuesioner 1 (Pakar) ... 120

Tabel 4.21. Hasil Pengujian kuesioner 2 ... 121

Tabel 4.22. Hasil Pengujian kuesioner 3 ... 121

Tabel 4.23. Hasil Pengujian kuesioner 4 ... 122

Tabel 4.24. Hasil Pengujian kuesioner 5 ... 122

Tabel 4.25. Hasil Pengujian kuesioner 1 (Member) ... 123

Tabel 4.26. Hasil Pengujian kuesioner 2 ... 123

Tabel 4.27. Hasil Pengujian kuesioner 3 ... 124

Tabel 4.28. Hasil Pengujian kuesioner 4 ... 125


(18)

xvii

Proses Merupakan proses komputer yang terjadi didalam aliran dokumen

Aliran Menunjukkan aliran data antar dokumen atau antar proses

Proses Manual Merupakan proses yang terjadi didalam

Flow Map

Seleksi Digunakan untuk pengecekan

Dokumen Menujukan dokumen sebagai masukan /keluaran baik secara manual atau melalui komputer

Multiple dokumen

Menunjukan banyak dokumen sebagai masukan/keluaran baik secara manual atau melalui komputer

Offline Storage

Menunjukkan tempat penyimpanan data berupa arsip


(19)

2. Simbol Entity Relationship Diagram (ERD)

SIMBOL NAMA KETERANGAN

Entity Menunjukkan himpunan entitas

Belah Ketupat Relationship

Menunjukkan himpunan relasi

Garis

Menunjukkan penghubung antara himpunan relasi dengan himpunan entitas dan himpunan entitas dengan atributnya

Atribut Ellips Menunjukkan atribut dari sebuah entitas

3. Simbol Data Flow Diagram (DFD)

SIMBOL NAMA KETERANGAN

Proses

Menunjukkan kegiatan / kerja yang dilakukan oleh orang, mesin atau komputer

Terminator Menunnjukkan bagian dari luar

Arus / Aliran data

Menunjukkan arus dari proses

Data store

Menunjukkan simpanan dari data yang dapat berupa suatu file / database di sistem komputer


(20)

xvii

Lampiran B Listing Program ... B-1 Lampiran C Hasil Kuesioner ... C-1


(21)

128 Graha Imu, Yogyakarta.

[3] Sari Iswanti, Sri Hartati. 2008. Sistem Pakar dan Pengembangannya. Graha Ilmu, Yogyakarta.

[4] http://id.wikipedia.org/wiki/MySQLdiakses 23 maret 2010 pukul 20:22 [5] http://en.wikipedia.org/wiki/WAMPdiakses 23 maret 2010 pukul 20:27


(22)

1 1.1 Latar Belakang Masalah

Kesehatan merupakan hal yang paling penting bagi makhluk hidup.

Tidak hanya manusia yang membutuhkan kesehatan tetapi hewan juga membutuhkannya. Dalam suatu peternakan ayam, dapat terjadi banyak sekali variasi penyakit yang sudah sangat dipahami atau familiar bagi peternak terutama peternak skala menengah dan besar. Berbicara keberhasilan mengenai peternakan (tanpa tergantung skala bisnisnya) oleh seorang peternak ditentukan dari pengetahuan dan pemahaman dengan pengenalan sumber hambatan dan ancaman dari penyakit yang mungkin dapat menjadikan ledakan penyakit menular dan berakibat sangat merugikan. Oleh sebab itu, pengamanan dan menjauhkan ternak ayam dari sumber wabah dan hambatan potensial tersebut menjadi prioritas dan perhatian khusus.

Pemilihan indukan yang unggul, pengelolaan yang baik, sanitasi, peningkatan daya tahan ayam dengan vaksinasi dan usaha menjauhkan ternak ayam dari sumber penyakit adalah kunci sukses dalam beternak ayam. Tetapi kurangnya informasi pengetahuan dan pemahaman dalam pengenalan suatu penyakit dapat mengakibatkan kesalahan diagnosis dan pengobatan suatu penyakit pada ayam.


(23)

Jenis penyakit ayam yang tidak diketahui sebagai virus alami atau parasit yang menyebabkan timbulnya penyakit. Infeksi yang terdapat pada ayam dapat menularkan ke ayam lainnya. Sulitnya peternak mendapatkan informasi tentang jenis-jenis penyakit pada ayam yang akan menghambat dan merupakan ancaman besar bagi para peternak.

Informasi yang menampilkan penyakit ayam dianggap sangat sedikit. Sulitnya pasien dalam mendiagnosa penyakit ayam secara dini, akan menyebabkan keterlambatan atas penangulangan penyakit dan kematian ayam. Hal ini, merugikan bagi peternak dengan berkurangnya populasi jumlah ternaknya. Begitu juga dengan ayam lainnya bisa tertular penyakit yang disebabkan oleh ayam yang sudah terinfeksi sebelumnya.

1.2Identifikasi Masalah

Dilihat dari fenomena-fenomena yang terjadi dalam pembuatan sistem pakar penyakit pada ayam, ditemukan berbagai masalah yaitu:

1. Kurangnya informasi pengetahuan dan pemahaman dalam pengenalan suatu penyakit dapat mengakibatkan kesalahan diagnosis dan pengobatan penyakit pada ayam.

2. Sulitnya peternak mendapatkan informasi tentang jenis-jenis penyakit pada ayam yang akan menghambat dan merupakan ancaman besar bagi para peternak.


(24)

3. Sulitnya pasien dalam mendiagnosa penyakit ayam secara dini, akan menyebabkan keterlambatan atas penangulangan penyakit dan kematian ayam.

1.3Maksud dan Tujuan

1.3.1 Maksud

Maksud dari skripsi ini adalah membangun Sistem Pakar untuk Mendiagnosa Gejala Penyakit pada Ayam Berbasis Web.

1.3.2 Tujuan

Tujuan dari skripsi ini:

1. Memberikan informasi pengetahuan dan pemahaman dalam pengenalan suatu penyakit dapat mengakibatkan kesalahan diagnosis dan pengobatan penyakit pada ayam.

2. Memudahkan peternak mendapatkan informasi tentang jenis-jenis penyakit pada ayam yang akan menghambat dan merupakan ancaman besar bagi para peternak.

3. Memudahkan pasien dalam mendiagnosa penyakit ayam secara dini, akan menyebabkan keterlambatan atas penangulangan penyakit dan kematian ayam.

1.4 Batasan Masalah

Melihat paparan di atas, maka batasan masalah dalam skripsi ini adalah sebagai berikut:


(25)

a. Data yang diolah yaitu data pakar, data gejala, data relasi, data laporan dan data penyakit

b. Proses yang terdapat dalam aplikasi ini adalah proses diagnosa, pengisian forum dan pembuatan hasil detail penyakit.

c. Keluaran pada sistem berupa informasi penyakit, gejala, laporan,forum diskusi dan informasi hasil detail penyakit.

d. Sistem dibangun dengan berbasis web.

e. Pembangunan sistem pakar menggunakan tree dengan metode inferensi

Forward chaining, menggunakan metode pencarian Best-First-Search dari data penunjang untuk diagnosis.

f. Pembangunan sistem menggunakan Macromedia Dreamweaver MX, menggunakan bahasa pemrograman PHP dan database yang digunakan adalah MySQL.

1.5 Metode Penelitian

Metodologi yang digunakan dalam penelitian ini adalah metode deskriptif, yaitu suatu metode yang menggambarkan fakta-fakta dan informasi dalam situasi atau kejadian secara sistematis, faktual dan akurat. Metode penelitian ini memiliki dua tahapan, yaitu tahap pengumpulan data dan tahap pengembangan perangkat lunak.


(26)

1.5.1 Tahap Pengumpulan Data

Teknik pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut:

1. Studi Pustaka

Studi ini dilakukan dengan mempelajari, meneliti dan menelaah berbagai literature-literatur di perpustakaan yang bersumber dari buku-buku, teks, jurnal ilmiah, situs-situs di internet dan bacaan-bacaan yang ada kaitannya dengan topik penelitian.

2. Studi Lapangan

Studi ini dilakukan dengan cara mengunjungi tempat yang akan diteliti dan pengumpulan data dilakukan secara langsung. Hal ini meliputi :

a. Wawancara

Wawancara adalah teknik pengumpulan data dengan cara mengadakan tanya jawab secara langsung dengan narasumber yang terkait dengan permasalahan yang diambil, yaitu Peternakan Rokim Farm milik Drh. Djodi Hario Seno di Cimuning, Bekasi-Jawa Barat.

b. Observasi

Observasi yaitu teknik pengumpulan data dengan cara melakukan pengamatan secara langsung terhadap objek permasalahan yang diambil, dalam hal ini adalah di Cimuning, Bekasi-Jawa Barat.


(27)

1.5.2 Tahap Pengembangan Perangkat Lunak

Teknik analisis data dalam pembuatan perangkat lunak menggunakan paradigma pembuatan perangkat lunak secara waterfall, yang meliputi beberapa proses seperti yang terlihat pada Gambar 1.1 :

Gambar 1. 1 Skema Waterfall

a. Rekayasa Sistem

Merupakan tahapan yang pertama kali yaitu merumuskan sistem yang akan kita bangun. Hal ini bertujuan agar pengembang benar-benar memahami sistem yang dibangun dan langkah-langkah serta kebijakan apa saja yang berkaitan dengan pengembangan sistem tersebut.


(28)

b. Analisis Sistem

Analisis sistem merupakan kegiatan mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh aplikasi yang akan dibangun. Tahap ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.

c. Perancangan Sistem

Perancangan sistem merupakan tahap perancangan antarmuka dari hasil analisis kebutuhan yang telah selesai dikumpulkan secara lengkap.

d. Pengkodean Sistem

Pengkodean sistem merupakan tahap penerjemahan data atau pemecahan masalah yang telah dirancang ke dalam bahasa pemrograman tertentu.

e. Pengujian Sistem

Perancangan lunak yang sudah dirancang direalisasikan sebagai serangkaian program atau unit program, dan pengujian unit melibatkan verifikasi bahwa setiap unit telah memenuhi spesifikasi.

Pemeliharaan Sistem

Tahap akhir sesudah perangkat lunak dibangun dengan melakukan pemeliharaan, seperti penyesuaian atau melakukan perubahan sesuai dengan kondisi yang akan datang yang mungkin perlu dilakukan.


(29)

Umpan balik : merupakan respon dari pengguna sistem yang bisa digunakan untuk mengetahui sejauh mana aplikasi yang dibangun diterima oleh penggunanya.

1.6 Sistematika Penulisan

Sistem penulisan dalam menyusun laporan penelitian ini, untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut:

BAB I PENDAHULUAN

Bab ini berisi tentang latar belakang masalah, identifikasi masalah, maksud dan tujuan, batasan masalah, metodologi penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini berisi tentang konsep dasar serta teori-teori yang berkaitan dengan topik penelitian dari sumber pustaka dan referensi yang menjadi landasan dasar dalam perancangan, analisis kebutuhan sampai implementasi dan pengujian sistem.


(30)

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi analisis kebutuhan dalam membangun aplikasi ini, analisis sistem yang sedang berjalan pada aplikasi ini sesuai dengan metode pembangunan perangkat lunak yang digunakan. Selain itu terdapat juga perancangan antarmuka untuk aplikasi yang akan dibangun sesuai dengan hasil analisis yang telah dibuat.

BAB IV IMPLEMENTASI DAN PENGUJIAN

Bab ini berisi tahapan implementasi dan pengujian yang merupakan tahap yang dilakukan dalam mengimplementasikan dari hasil penelitian, analisis dan perancangan yang telah diidentifikasikan untuk mengimplementasikan dan menguji aplikasi.

BAB IV KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan tentang keseluruhan dari pembangunan aplikasi ini dan saran tentang aplikasi ini untuk masa yang akan datang.


(31)

10

BAB II

TINJAUAN PUSTAKA

2.1 Artificial Intelligence

2.1.1 Sejarah Singkat

Kecerdasan Buatan (artificial intelligence) merupakan inovasi baru di bidang ilmu pengetahuan. Mulai ada sejak muncul komputer modern, yakni pada 1940 dan 1950. Kemampuan mesin elektronika baru menyimpan sejumlah besar info, memproses dengan kecepatan sangat tinggi menandingi kemampuan manusia. Ilmu pengetahuan komputer ini khusus ditujukan dalam perancangan otomatisasi tingkah laku cerdas dalam sistem kecerdasan komputer. Pada sistem ini memperlihatkan sifat-sifat khas yang dihubungkan dengan kecerdasan dalam kelakuan yang sepenuhnya dapat menirukan beberapa fungsi otak manusia, seperti pengertian bahasa, pengetahuan, pemikiran, pemecahan, dan masalah.

Pentingnya kecerdasan buatan menjadi nyata bagi negara-negara yang berperan sejak tahun 1970. Para pemimpin negara yang mengakui potensialnya kecerdasan buatan mengharap mendapat persetujuan jangka panjang untuk sumber-sumber yang memerlukan dana intensif. Jepang adalah yang pertama kali melakukan itu. Negara ini mengembangkan program yang sangat berambisi dalam penelitian kecerdasan buatan. Sebagai bidang ilmu pengetahuan komputer, kecerdasan buatan sebenarnya sudah mulai diselidiki pada 1930-an dan 1940-an. Pada saat itu, banyak cendekiawan mengembangkan ide-ide baru mengenai komputasi.


(32)

Logika matematika menjadi bidang aktif dari penyelidikan kecerdasan buatan, karena sistem logika deduktif telah berhasil diimplementasikan dalam program-program komputer. Seorang ahli matematika bernama Alan Turing, yang memiliki sumbangan besar dalam pengembangan teori kemampuan penghitungan (computability), mengusulkan tes untuk melihat bisa atau tidaknya mesin memberikan respon terhadap seangkaian pertanyaan (agar mesin dapat dikatakan cerdas). Uji yang dilakukan adalah dengan mengukur kinerja (performance) mesin cerdas. Uji Alan Turing menjadi dasar bagi banyak strategi yang digunakan dengan menilai program-program kecerdasan buatan.

Pada awalnya, kecerdasan buatan hanya ada di universitas-universitas dan laboratorium penelitian, serta hanya sedikit produk yang dihasilkan dan dikembangkan. Menjelang akhir 1970-an dan 1980-an, mulai dikembangkan secara penuh dan hasilnya berangsur-angsur dipublikasikan di khalayak umum. Permasalahan di dalam kecerdasan buatan akan selalu bertambah dan berkembang seiring dengan laju perkembangan zaman menuju arah globalisasi dalam setiap aspek kehidupan manusia, yang membawa persoalan-persoalan yang semakin beragam pula.

Program kecerdasan buatan lebih sederhana dalam pengoperasiannya, sehingga banyak membantu pemakai. Program konvensional dijalankan secara prosedural dan kaku, rangkaian tahap solusinya sudah didefinisikan secara tepat oleh pemrogramnya. Sebaliknya, pada program kecerdasan buatan untuk mendapatkan solusi yang memuaskan dilakukan pendekatan trial and error, mirip seperti apa yang dilakukan oleh manusia.


(33)

2.1.2 Pengertian Artificial Intelligence

Adapun beberapa definisi Artificial Intelligence adalah sebagai berikut : Definisi artificial intelligent menurut Jog [1] : ”Artificial Intelligence didefinisikan sebagai suatu mesin atau alat pintar (biasanya adalah komputer) yang dapat melakukan suatu tugas yang bilamana tugas tersebut dilakukan oleh manusia akan dibutuhkan suatu kepintaran untuk melakukannya”.

Definisi artificial intelligent menurut Kus [2] : “Kecerdasan buatan atau

artificial intelligence merupakan salah satu bagian ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia”.

Definisi artificial intelligent menurut Sar [3] : “Kecerdasan buatan(artificial intelligence adalah salah satu bidang ilmu komputer yang mendayagunakan komputer sehingga dapat berprilaku cerdas seperti manusia”.

Kecerdasan buatan dilihat dari berbagai sudut pandang adalah sebagai berikut :

1. Sudut pandang Kecerdasan (Intelligence)

Kecerdasan buatan adalah bagaimana membuat mesin yang “cerdas” dan dapat


(34)

2. Sudut pandang Penelitian

Studi bagaimana membuat agar komputer dapat melakukan sesuatu sebaik yang dilakukan oleh manusia.

Domain penelitian adalah sebagai berikut : a. Mundane task

i. Persepsi (vision and speech)

ii. Bahasa alami (understanding, generation and translation) iii. Pemikiran yang bersifat commonsense

iv. Robot control b. Format task

i. Permainan atau games

ii. Matematika (geometri, logika, kalkulus, integral, pembuktian) c. Expert task

i. Analisis financial ii. Analisis medical

iii. Analisis ilmu pengetahuan


(35)

3. Sudut pandang Bisnis

Kumpulan peralatan yang sangat powerful dan metodologis dalam menyelesaikan masalah-masalah bisnis.

4. Sudut pandang Pemrograman (Programming)

Kecerdasan buatan termasuk didalamnya adalah studi tentang pemrograman simbolik, pemecahan masalah, proses pencarian (search).

2.1.3 Tujuan Artificial Intelligance

Tujuan dari kecerdasan buatan menurut Winston dan Prendergast : 1. Membuat mesin menjadi lebih pintar (tujuan utama)

2. Memahami apa itu kecerdasan (tujuan ilmiah)

3. Membuat mesin lebih bermanfaat (tujuan entrepreneurial)

Dua bagian utama yang dibutuhkan untuk aplikasi kecerdasarn buatan (Gambar 2.1 Proses Motor Inferensi) adalah :

a. Basis Pengetahuan (Khowledge Base) berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan lainnya.

b. Motor Inferensi (Inference Engine) adalah kemampuan menarik kesimpulan berdasarkan pengalaman.


(36)

Input Masalah Pertanyaan

Basis Pengetahuan

Motor Inferensi

Output Jawaban Solusi

Gambar 2. 1 Proses Motor Inferensi

2.1.4 Lingkup Utama Artificial Intelligence

1. Sistem Pakar (Expert System)

Komputer sebagai sarana untuk menyimpan pengetahuan para pakar sehingga komputer memiliki keahlian menyelesaikan permasalahan dengan meniru keahlian yang dimiliki pakar.

2. Pengolahan bahasa alami (Natural Language Processing)

User dapat berkomunikasi dengan computer menggunakan bahasa sehari-hari, missal bahasa inggris, bahasa Indonesia atau pun bahasa daerah lainnya. 3. Pengenalan ucapan (Speech recognition)

Manusia dapat berkomunikasi dengan komputer menggunakan suara. 4. Robotika dan sistem sensor

Contohnya sistem sensor, seperti sistem vision, sistem tactile dan sistem pemrosesan sinyal jika dikombinasikan dengan Artificial Intelligence, dapat dikategorikan ke dalam suatu sistem yang luas yang disebut sistem robotika.


(37)

5. Computer Vision

Menginterpretasikan gambar atau objek tampak melalui komputer.

6. Intelligent Computer Aided Instruction

Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar.

7. Game Playing

Permainan dilakukan dengan menggunakan sekumpulan aturan, pencarian ruang, teknik untuk menentukan alternative dalam menyimak problema ruang merupakan sesuatu yang rumit, teknik tersebut disebut dengan Heuristic dan permainan merupakan bidang yang menarik dalam studi heuristic.

2.2Sistem Pakar

2.2.1 Pengertian Sistem Pakar

Ketika hendak membuat suatu keputusan yang komplek atau memecahkan masalah, seringkali kita meminta nasehat atau berkonsultasi dengan seorang pakar atau ahli. Seorang pakar adalah seseorang yang mempunyai pengetahuan dan pengalaman spesifik dalam suatu bidang; misalnya pakar komputer, pakar uji tak merusak, pakar politik dan lain-lain. Semakin tidak terstruktur situasinya, semakin mengkhusus (dan mahal) konsultasi yang dibutuhkan.

Sistem Pakar (Expert System) adalah usaha untuk menirukan seorang pakar. Biasanya Sistem Pakar berupa perangkat lunak pengambil keputusan yang


(38)

mampu mencapai tingkat performa yang sebanding seorang pakar dalam bidang problem yang khusus dan sempit. Ide dasarnya adalah: kepakaran ditransfer dari seorang pakar (atau sumber kepakaran yang lain) ke komputer, pengetahuan yang ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan, mendeduksi, dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke pengguna tersebut, bila perlu dengan alasan-alasannya. Sistem Pakar malahan terkadang lebih baik unjuk kerjanya daripada seorang pakar manusia!

Kepakaran (expertise) adalah pengetahuan yang ekstensif (meluas) dan spesifik yang diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman. Pengetahuan membuat pakar dapat mengambil keputusan secara lebih baik dan lebih cepat daripada non-pakar dalam memecahkan problem yang kompleks. Kepakaran mempunyai sifat berjenjang, pakar top memiliki pengetahuan lebih banyak daripada pakar yunior.

Tujuan Sistem Pakar adalah untuk mentransfer kepakaran dari seorang pakar ke komputer, kemudian ke orang lain (yang bukan pakar). Proses ini tercakup dalam rekayasa pengetahuan (knowledge engineering) yang akan dibahas kemudian.


(39)

MYCIN

Dibuat oleh Edward Shortlife of Standford University tahun 70-an. Sistem pakar medical yang bisa mendiagnosa penyakit infeksi dan merekomendasi pengobatan. MYCIN membantu dokter mengidentifikasi pasien yang menderita penyakit. Dokter duduk di depan komputer dan memasukkan data pasien: umur, riwayat kesehatan, hasil laboratorium dan informasi terkait lainnya. Dengan informasi ini ditambah pengetahuan yang sudah ada dalam komputer, MYCIN mendiagnosa selanjutnya merekomendasi obat dan dosis yang harus dimakan. MYCIN sebagai penasehat medis, tidak dimaksudkan untuk mengantikan kedudukan seorang dokter. Tetapi membantu dokter yang belum berpengalaman dalam penyakit tertentu. Juga untuk membantu dokter dalam mengkonfirmasi diagnosa dan terapi yang diberikan kepada pasien apakah sesuai dengan diagnosa dan terapi yang ada dalam basis pengetahuan yang sudah dimasukkan ke dalam MYCIN, karena MYCIN dirancang oleh dokter-dokter yang ahli di bidang penyakit tersebut. Kesimpulan : sistem pakar seperti MYCIN bisa digunakan sebagai bahan pembanding dalam pengambilan solusi dan pemecahan masalah. Keputusan terakhir atas pengobatan tersebut tetap menjadi tanggung jawab dokter.

2.2.2 Tujuan Sistem Pakar

Tujuan dari sistem pakar adalah untuk memindahkan kemampuan (transferring expertise) dari seorang ahli atau sumber keahlian yang lain ke dalam


(40)

komputer dan kemudian memindahkannya dari komputer kepada pemakai yang tidak ahli (bukan pakar). Proses ini meliputi empat aktivitas yaitu:

1. Akuisi pengetahuan (knowledge acquisition) yaitu kegiatan mencari dan mengumpulkan pengetahuan dari para ahli atau sumber keahlian yang lain. 2. Representasi pengetahuan (knowledge representation) adalah kegiatan

menyimpan dan mengatur penyimpanan pengetahuan yang diperoleh dalam komputer. Pengetahuan berupa fakta dan aturan disimpan dalam komputer sebagai sebuah komponen yang disebut basis pengetahuan.

3. Inferensi pengetahuan (knowledge inferencing) adalah kegiatan melakukan inferensi berdasarkan pengetahuan yang telah disimpan didalam komputer. 4. Pemindahan pengetahuan (knowledge transfer) adalah kegiatan pemindahan

pengetahuan dari komputer ke pemakai yang tidak ahli. 2.2.3 Bentuk Sistem Pakar

1. Mandiri merupakan sistem pakar yang murni berdiri sendiri, tidak digabung dengan perangkat lunak lain, bisa dijalankan pada komputer pribadi dan mainframe.

2. Terkait atau tergabung merupakan sistem pakar hanya bagian dari program yang lebih besar. Program tersebut biasanya menggunakan teknik algoritma konvensional tapi bisa mengakses sistem pakar yang ditempatkan sebagai subrutin, yang bisa dimanfaatkan setiap kali dibutuhkan.


(41)

3. Terhubung adalah sistem pakar yang berhubungan dengan software lain. Misalnya spreadsheet, DBMS, program grafik. Pada saat proses inferensi, sistem pakar bisa mengakses data dalam spreadsheet atau DBMS atau program grafik bisa dipanggil untuk menayangkan output visual.

4. Sistem Mengabdi Merupakan bagian dari komputer khusus yang diabdikan kepada fungsi tunggal. Sistem tersebut bisa membantu analisa data radar dalam pesawat tempur atau membuat keputusan intelejen tentang bagaimana memodifikasi pembangunan kimiawi.

2.2.4 Manfaat dan Keterbatasan Sistem Pakar 2.2.4.1Manfaat Sistem Pakar

1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli 2. Bisa melakukan proses secara berulang secara otomatis

3 Menyimpan pengetahuan dan keahlian para pakar

4 Mampu mengambil dan melestarikan keahlian para pakar (terutama yang termasuk keahlian langka)

5 Mampu beroperasi dalam lingkungan yang berbahaya

6 Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian. Pengguna bisa merespon dengan jawaban ‟tidak

tahu‟ atau ‟tidak yakin‟ pada satu atau lebih pertanyaan selama konsultasi dan

sistem pakar tetap akan memberikan jawaban.

7 Tidak memerlukan biaya saat tidak digunakan, sedangkan pada pakar manusia memerlukan biaya sehari-hari.


(42)

8 Dapat digandakan (diperbanyak) sesuai kebutuhan dengan waktu yang minimal dan sedikit biaya

9 Dapat memecahkan masalah lebih cepat daripada kemampuan manusia dengan catatan menggunakan data yang sama.

10 Menghemat waktu dalam pengambilan keputusan

11 Meningkatkan kualitas dan produktivitas karena dapat memberi nasehat yang konsisten dan mengurangi kesalahan

12 Meningkatkan kapabilitas sistem terkomputerisasi yang lain. Integrasi Sistem Pakar dengan sistem komputer lain membuat lebih efektif, dan bisa mencakup lebih banyak aplikasi .

13 Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan sistem pakar akan menjadi lebih berpengalaman. Fasilitas penjelas dapat berfungsi sebagai guru.

2.2.4.2 Keterbatasan Sistem Pakar

Metodologi Sistem Pakar yang ada tidak selalu mudah, sederhana dan efektif. Berikut adalah keterbatasan yang menghambat perkembangan Sistem Pakar:

a. Pengetahuan yang hendak diambil tidak selalu tersedia. b. Kepakaran sangat sulit diekstrak dari manusia.

c. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa berbeda-beda, meskipun sama-sama benar.


(43)

d. Adalah sangat sulit bagi seorang pakar untuk mengabstraksi atau menjelaskan langkah mereka dalam menangani masalah

e. Pengguna Sistem Pakar mempunyai batas kognitif alami, sehingga mungkin tidak bisa memanfaatkan sistem secara maksimal.

f. Sistem Pakar bekerja baik untuk suatu bidang yang sempit.

g. Banyak pakar yang tidak mempunyai jalan untuk mencek apakah kesimpulan mereka benar dan masuk akal.

h. Istilah dan jargon yang dipakai oleh pakar dalam mengekspresikan fakta seringkali terbatas dan tidak mudah dimengerti oleh orang lain.

i. Pengembangan Sistem Pakar seringkali membutuhkan perekayasa pengetahuan (knowledge engineer) yang langka dan mahal.

j. Kurangnya rasa percaya pengguna menghalangi pemakaian Sistem Pakar.

k. Transfer pengetahuan dapat bersifat subyektif dan bias. 2.2.5 Area Permasalahan Aplikasi Sistem Pakar

1. Interpretasi

Pengambilan keputusan dari hasil observasi, diantaranya pengawasan, pengenalan ucapan, analisis citra, interpretasi sinyal, dan beberapa analisis kecerdasan.


(44)

2. Prediksi

Memprediksi akibat-akibat yang dimungkinkan dari situasi-situasi tertentu, diantaranya peramalan, prediksi demografis, peralaman ekonomi, prediksi lalu lintas, estimasi hasil, militer, pemasaran, atau peramalan keuangan.

3. Diagnosis

Menentukan sebab malfungsi dalam situasi kompleks yang didasarkan pada gejala-gejala yang teramati, diantaranya medis, elektronis, mekanis, dan diagnosis perangkat lunak.

4. Desain

Menentukan konfigurasi komponen-komponen sistem yang cocok dengan tujuan-tujuan kinerja tertentu dan kendala-kendala tertentu, diantaranya layout sirkuit, perancangan bangunan.

5. Perencanaan

Merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan kondisi awal tertentu, diantaranya perencanaan keuangan, komunikasi, militer, pengembangan politik, routing dan manajemen proyek.

6. Monitoring

Membandingkan tingkah laku suatu sistem yang teramati dengan tingkah laku yang diharapkan darinya, diantaranya Computer Aided Monitoring System.


(45)

7. Debugging dan repair

Menentukan dan mengimplementasikan cara-cara untuk mengatasi malfungsi, diantaranya memberikan resep obat terhadap suatu kegagalan. 8. Instruksi

Melakukan instruksi untuk diagnosis, debugging dan perbaikan kinerja. 9. Kontrol

Mengatur tingkah laku suatu environment yang kompleks seperti kontrol terhadap interpretasi-interpretasi, prediksi, perbaikan, dan monitoring kelakuan sistem

10. Seleksi

Mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan. 11. Simulasi

Pemodelan interaksi antara komponen-komponen sistem. 2.2.6 Komponen Sistem Pakar

Sistem pakar terdiri dari dua bagian pokok, yaitu lingkungan pengembangan (development environment) dan lingkungan konsultasi (consultation environment).

Lingkungan pengembangan digunakan sebagai pembangun sistem pakar baik dari segi pembangun komponen maupun basis pengetahuan. Lingkungan konsultasi digunakan oleh seorang yang bukan ahli untuk berkonsultasi (Gambar 2.2 Struktur Sistem Pakar).


(46)

Gambar 2. 2 Struktur Sistem Pakar

Papan Tulis (Blackboard/Workplace), adalah memori/lokasi untuk bekerja dan menyimpan hasil sementara. Biasanya berupa sebuah basis data. Antarmuka Pemakai (User Interface). Sistem Pakar mengatur komunikasi antara pengguna dan komputer. Komunikasi ini paling baik berupa bahasa alami, biasanya disajikan dalam bentuk tanya-jawab dan kadang ditampilkan dalam bentuk gambar atau grafik. Antarmuka yang lebih canggih dilengkapi dengan percakapan (voice communication).

Subsistem Penjelasan (Explanation Facility). Kemampuan untuk menjejak (tracing) bagaimana suatu kesimpulan dapat diambil merupakan hal yang sangat penting untuk transfer pengetahuan dan pemecahan masalah.


(47)

Komponen subsistem penjelasan harus dapat menyediakannya yang secara interaktif menjawab pertanyaan pengguna, Misalnya:

1. “Mengapa pertanyaan tersebut anda tanyakan?” 2. “Seberapa yakin kesimpulan tersebut diambil?” 3. “Mengapa alternatif tersebut ditolak?”

4. “Apa yang akan dilakukan untuk mengambil suatu kesimpulan?” 5. “Fakta apalagi yang diperlukan untuk mengambil kesimpulan akhir?”

Sistem Penghalusan Pengetahuan (Knowledge Refining System). Seorang pakar mempunyai sistem penghalusan pengetahuan artinya, mereka bisa menganalisa sendiri performa mereka, belajar dari pengalaman, serta meningkatkan pengetahuannya untuk konsultasi berikutnya. Pada Sistem Pakar, swa-evaluasi ini penting sehingga dapat menganalisa alasan keberhasilan atau kegagalan pengambilan kesimpulan, serta memperbaiki basis pengetahuannya. 2.2.7 Arsitektur Sistem Pakar

Sistem pakar memiliki beberapa komponen utama, yaitu antarmuka pengguna (user interface), basis data sistem pakar (expert system database), fasilitas akuisisi pengetahuan (knowledge acquisition facility), dan mekanisme inferensi (inference mechanism). Selain itu ada satu komponen yang hanya ada pada beberapa sistem pakar, yaitu fasilitas penjelasan (explanation facility) (Martin dan Oxman,1988).


(48)

Ada 4 tipe penjelasan yang digunakan dalam sistem pakar (Gambar 2.3 Arsitektur Sistem Pakar), yaitu (Schnupp, 1989):

1. penjelasan mengenai jejak aturan yang menunjukkan status konsultasi. 2. Penjelasan mengenai bagaimana sebuah keputusan diperoleh.

3. Penjelasan mengapa sistem menanyakan suatu pertanyaan.

4. Penjelasan mengapa sistem tidak memberikan keputusan seperti yang dikehendaki pengguna.

Basis Pengetahuan

(Aturan)

Mesin Agenda

Memori kerja (Fakta)

Fasilitas Penjelasan

Fasilitas Aku isi Pengetahuan

Antar Muka Pengguna

Gambar 2. 3 Arsitektur Sistem Pakar

Memori kerja dalam arsitektur sistem pakar (Gambar 2.3) merupakan bagian dari sistem pakar yang berisi fakta-fakta masalah yang ditemukan dalam suatu sesi, berisi fakta-fakta tentang suatu masalah yang ditemukan dalam proses konsultasi.


(49)

2.2.8 Pemilihan Masalah

Pembuatan Sistem Pakar membutuhkan waktu dan biaya yang banyak. Untuk menghindari kegagalan yang memalukan dan kerugian yang besar, maka dibuat beberapa pedoman untuk menentukan apakah Sistem Pakar cocok untuk memecahkan suatu problem:

a. Biaya yang diperlukan untuk pembangunan Sistem Pakar ditentukan oleh kebutuhan untuk memperoleh solusi. Sehingga harus ada perhitungan yang realistis untuk cost and benefit.

b. Pakar manusia tidak mudah ditemui untuk semua situasi di mana dia dibutuhkan. Jika pakar pengetahuan tersebut terdapat di mana saja dan kapan saja, maka pembangunan Sistem Pakar menjadi kurang berharga.

c. Problem yang ada dapat diselesaikan dengan teknik penalaran simbolik, dan tidak membutuhkan kemampuan fisik.

d. Problem tersebut harus terstruktur dengan baik dan tidak membutuhkan terlalu banyak pengetahuan awam (common sense), yang terkenal sulit untuk diakuisisi dan dideskripsikan, dan lebih banyak berhubungan dengan bidang yang teknis.

e. Problem tersebut tidak mudah diselesaikan dengan metode komputasi yang lebih tradisionil. Jika ada penyelesaian algoritmis yang bagus untuk problem tersebut, maka kita tidak perlu memakai Sistem Pakar.


(50)

f. Ada pakar yang mampu memberikan penjelasan tentang kepakarannya serta mau bekerjasama. Adalah sangat penting bahwa pakar yang dihubungi benar-benar mempunyai kemauan kuat untuk ikut berpartisipasi serta tidak merasa pekerjaannya akan menjadi terancam.

g. Problem tersebut mempunyai sekup yang tepat. Biasanya merupakan problem yang membutuhkan kepakaran yang sangat khusus namun hanya membutuhkan seorang pakar untuk dapat menyelesaikannya dalam waktu yang relatif singkat (misalnya paling lama 1 jam).

2.2.9 Rekayasa Pengetahuan (Knowledge Engineering)

Proses dalam rekayasa pengetahuan meliputi (Gambar 2.4):

a. Akuisisi pengetahuan, yaitu bagaimana memperoleh pengetahuan dari pakar atau sumber lain (sumber terdokumentasi, buku, sensor, file komputer, dll.).

b. Validasi pengetahuan, untuk menjaga kualitasnya misalnya dengan uji kasus.

c. Representasi pengetahuan, yaitu bagaimana mengorganisasi pengetahuan yang diperoleh, mengkodekan dan menyimpannya dalam suatu basis pengetahuan.

d. Penyimpulan pengetahuan, menggunakan mesin inferensi yang mengakses basis pengetahuan dan kemudian melakukan penyimpulan.


(51)

e. Transfer pengetahuan (penjelasan). Hasil inferensi berupa nasehat, rekomendasi, atau jawaban, kemudian dijelaskan ke pengguna oleh subsistem penjelas.

Gambar 2. 4 Proses dalam Rekayasa Pengetahuan 2.2.10 Partisipan Dalam Proses Pengembangan

Pakar, yaitu seseorang yang mempunyai pengetahuan, pengalaman, dan metode khusus, serta mampu menerapkannya untuk memecahkan masalah atau memberi nasehat. Pakar menyediakan pengetahuan tentang bagaimana nantinya Sistem Pakar bekerja.

Perekayasa pengetahuan (knowledge engineer), yang membantu pakar untuk menyusun area permasalahan dengan menerjemahkan dan mengintegrasikan jawaban pakar terhadap pertanyaan-pertanyaan dari klien, menarik analogi, serta


(52)

memberikan contoh-contoh yang berlawanan, kemudian menyusun basis pengetahuan.

Pengguna, yang mungkin meliputi: seorang klien non-pakar yang sedang membutuhkan nasehat (Sistem Pakar sebagai konsultan atau advisor), seorang siswa yang sedang belajar (Sistem Pakar sebagai instruktur), seorang pembuat Sistem Pakar yang hendak meningkatkan basis pengetahuan (Sistem Pakar sebagai partner), seorang pakar (Sistem Pakar sebagai kolega atau asisten, yang dapat memberikan opini kedua).

Partisipan lain, dapat meliputi: pembangun sistem (system builder), tool builder, staf administrasi dan lain sebagainya.

2.2.11 Akuisi Pengetahuan

Dalam proses akuisisi pengetahuan, seorang perekayasa pengetahuan menjembatani antara pakar dengan basis pengetahuan. Perekayasa pengetahuan mendapatkan pengetahuan dari pakar, mengolahnya bersama pakar tersebut, dan menaruhnya dalam basis pengetahuan, dengan format tertentu. Pengambilan pengetahuan dari pakar dapat dilakukan secara (Gambar 2.5):

Manual, di mana perekayasa pengetahuan mendapatkan pengetahuan dari pakar (melalui wawancara) dan/atau sumber lain, kemudian mengkodekannya dalam basis pengetahuan. Proses ini biasanya berlangsung lambat, mahal, serta kadangkala tidak akurat.


(53)

Semi-otomatik, di mana terdapat peran komputer untuk: (1) mendukung pakar dengan mengijinkannya membangun basis pengetahuan tanpa (atau dengan sedikit) bantuan dari perekayasa pengetahuan, atau (2) membantu perekayasa pengetahuan sehingga kerjanya menjadi lebih efisien dan efektif.

Otomatik, di mana peran pakar, perekayasa pengetahuan, dan pembangun basis pengetahuan (system builder) digabung. Misalnya dapat dilakukan oleh seorang system analyst seperti pada metode induksi.

Gambar 2. 5 Metode Akuisisi Pengetahuan (a) Manual (b) Akuisisi Terkendali Pakar (c)Induksi


(54)

2.2.12 Komponen-komponen Sistem Pakar

1. Basis Pengetahuan (Knowledge Base)

Pengetahuan merupakan kemampuan untuk membentuk model mental yang menggambarkan obyek dengan tepat dan mempresentasikannya dalam aksi yang dilakukan terhadap suatu obyek (Martin dan Oxman, 1988).

Pengetahuan dapat diklasifikasikan menjadi tiga, yaitu pengetahuan prosedural (procedural knowledge), pengetahuan deklaratif (declaratif knowlwdge), dan pengetahuan tacit (tacit knowledge). Pengetahuan prosedural lebih menekankan pada bagaimana melakukan sesuatu, pengetahuan deklaratif menjawab pertanyaan apakah sesuatu bernilai salah atau benar, sedangkan pengetahuan tacit merupakan pengetahuan yang tidak dapat diungkapkan dengan bahasa. Basis Pengetahuan merupakan inti program Sistem Pakar dimana basis pengetahuan ini adalah representasi pengetahuan (Knowledge Representation) dari seorang pakar.

Pengetahuan dapat dipresentasikan dalam bentuk yang sederhana atau kompleks, tergantung dari masalahnya (Schnupp, 1989).

Ada beberapa model representasi yang penting yaitu : logika (logic), jaringan semantik (semantic nets), bingkai (frame), kaidah produksi (production rule).


(55)

a. Logika (logic)

Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran, sistem kaidah, dan prosedur yang membantu proses penalaran. Logika merupakan bentuk representasi pengetahuan yang paling tua, yang menjadi dasar dari teknik representasi high level.

b. Jaringan Sematik

Merupakan suatu gambaran dari pengetahuan yang memperlihatkan hubungan hirarki dari objek – objek. Objek dipresentasikan dalam bentuk node dan hubungan antara objek dinyatakan oleh garis penghubung beratribut.

c. Bingkai (Frame)

Yaitu blok – blok berisi pengetahuan mengenai objek tertentu, kejadian, lokasi, situasi dari elemen – elemen lain yang menggambarkan objek tersebut secara rinci, dimana rincian objek tersebut disimpan ke dalam sebuah slot yang menggambarkan berbagai atribut dan karakteristik dari objek.

d. Kaidah Produksi

Metode kaidah produksi biasanya dituliskan dalam bentuk jika maka (if-then). Kaidah ini dapat dikatakan sebagai hubungan implikasi dua bagian, yaitu: pertama jika (premise) dan yang kedua, yaitu muka


(56)

(konkulasi). Apabila bagian jika dipenuhi maka bagian muka akan bernilai benar.

2. Basis Data (Data Base)

Basis Data adalah bagian yang mengandung semua fakta-fakta, baik fakta awal pada saat sistem mulai beroperasi maupun fakta-fakta yang didapatkan pada saat pengambilan kesimpulan yang sedang dilaksanakan. Dalam praktiknya, Basis data berada di dalam memori komputer. Kebanyakan Sistem Pakar mengandung Basis Data untuk menyimpan data hasil observasi dan data lainnya yang

dibutuhkan selama pengolahan.

3. Mesin Inferensi (Inferensi Engine)

Mesin Inferensi adalah bagian yang mengandung mekanisme fungsi berpikir dan pola-pola penalaran sistem yang akan menganalisis suatu masalah tertentu dan selanjutnya akan mencari jawaban atau kesimpulan yang terbaik. Secara deduktif mesin inferensi memilih pengetahuan yang relevan dalam rangka mencapai kesimpulan. Dengan demikian sistem ini dapat menjawab pertanyaaan pemakai meskipun jawaban tersebut tidak tersimpan secara eksplisit di dalam basis pengetahuan. Mesin Inferensi memulai pelacakannya dengan mencocokan kaidah-kaidah dalam basis pengetahuan dengan fakta-fakta yang ada dalam basis data.


(57)

Dibawah ini ada 2 macam metode inference, yaitu :

a. Forward Chaining (Pelacakan ke Depan)

Pendekatan yang dimotori oleh data (data driven). Dalam pendekatan ini pelacakan dimulai dari informasi masukan dan selanjutnya mencoba

menggambarkan kesimpulan. Aturan dalam sistem merepresentasikan aksi-aksi yang harus diambil apabila terdapat suatu kondisi khusus pada item-item dalam memori kerja yang disebut himpunan aturan kondisi-aksi. Dalam metode ini, data digunakan untuk menentukan aturan mana yang akan dijalankan, kemudian aturan tersebut dijalankan. Mungkin proses menambahkan data ke memori kerja. Proses diulang sampai ditemukan suatu hasil. Aktivitas sistem dilakukan berdasarka siklus mengenal-beraksi (recognize-act).

Pelacakan ke depan mencari fakta yang sesuai dari bagian IF dari aturan IF-THEN (Gambar 2.6 menunjukkan proses forward chaining).

Observasi A

Observasi B Aturan R2 Aturan R1

Fakta D Fakta C

Fakta E

Aturan R4 Aturan R3

Kesimpulan 2 Kesimpulan 1

Gambar 2. 6 Proses Forward Chaining b. Backward Chaining

Merupakan penalaran dari node tujuan dan bergerak ke belakang menuju keadaan awal, dalam penalaran ke belakang prosesnya disebut terarah,


(58)

menggunakan pendekatan goal-driven, dimulai dari ekspektasi apa yang diinginkan terjadi (hipotesis), kemudian mengecek pada sebab-sebab yang mendukung (ataupun kontadiktif) dari ekspektasi tersebut.

Contoh :

R1 : IF suku bunga turun THEN harga obligasi naik R2 : IF suku bunga naik THEN harga obligasi turun

R3 : IF suku bunga tidak berubah THEN harga obligasi tidak berubah R4 : IF dolar naik THEN suku bunga turun

R5 : IF dolar turun THEN suku bunga naik R6 : IF harga obligasi turun THEN beli obligasi 2.2.13 Pohon Pelacakan

Hampir semua masalah Artificial Intellegence ditampilkan dalam bentuk grafik atau jaringan yang berbentuk node dan akar yang disebut pohon pelacakan. Untuk menghindari kemungkinan adanya proses pelacakan suatu node secara berulang, maka digunakan struktur pohon.

Pohon pencarian untuk graph keadaan dengan 6 level (Gambar 2.7 Struktur pohon).


(59)

Gambar 2.7 Struktur pohon

Pada Gambar 2.7 tersebut sudah tidak terlihat lagi adanya siklus, karena setiap node tidak diperbolehkan memiliki cabang kembali ke node dengan level yang lebih rendah.

Struktur pohon digunakan untuk menggambarkan keadaan secara hirarki yang terdiri dari beberapa node. Node yang terletak pada level-0 disebut dengan nama aka. Node akar menunjukkan keadaan awal yang biasanya merupakan topic atau objek. Node akar teletak pada level ke nol yang memiliki beberapa

percabangan yang terdiri atas beberapa node successor yang disebut dengan nama anak dan merupakan node-node perantara.

Node ini pada gilirannya mempunyai pengganti lagi sebagai anak, bergerak mundur melalui pohon, node ini disebut node pendahuluan, nenek moyang atau orang tua. Node yang tidak mempunyai anak atau tidak mempunyai pengganti disebut node pengganti. Akar yang disilang dan dihubungkan disebut batang.


(60)

2.2.13.1Metode Pencarian dan Pelacakan

A. Pencarian Melebar Pertama (Breadth-First Search)

Pada metode Breadth-First Search ini adalah semua node pada level n akan dikunjungi terlebih dahulu sebelum mengunjungi node-node pada level n+1. pencarian dimulai dari node akar terus ke level 1 dari kiri ke kanan, kemudian berpindah ke level berikutnya dari kiri ke kanan hingga solusi ditemukan (Gambar 2.8 Metode Breadth-First Search).

Gambar 2.8 Metode Breadth-First Search Algoritma :

1. Buat suatu variable Node_List dan tetapkan sebagai keadaan awal.

2. Kerjakan langkah-langkah berikut ini sampai tujuan tercapai atau Node_List

dalam keadaan kosong :

a) Hapus elemen pertama dari Node_List, sebut dengan nama E. Jika

Node_List kosong, keluar.


(61)

i. Aplikasikan aturan tersebut membentuk suatu keadaan baru.

ii. Jika keadaan awal adalah tujuan yang diharapkan, sukses dan keluar. iii. Jika tidak demikian, tambahkan keadaan awal yang baru tersebut pada

akhir Node_List. Keuntungan :

1. Tidak akan menemui jalan buntu

2. Jika ada 1 solusi, maka breadth – first search solusi akan menemukannya dan jika ada lebih dari satu solusi, maka solusi minimum akan ditemukan.

Kelemahan :

1. Membutuhkan memori yang cukup banyak

2. Membutuhkan waktu yang cukup lama, karena akan menguji n level untuk mendapatkan solusi pada level yang ke-(n+1).

B. Pencarian Mendalam Pertama (Depth First Search)

Pada metode Depth – First Search, Proses pencarian dilakukan pada semua anaknya sebelum dilakukan pencarian ke node-node yang selevel. Pencarian dimulai dari node akar ke level yang lebih tinggi. Proses diulangi terus hingga ditemukan solusi (Gambar 2.9 Metode Depth – First Search).


(62)

Gambar 2.9 Metode Depth First Search Algoritma :

1. Jika keadaan awal merupakan tujuan, keluar (sukses).

2. Jika tidak demikian, kerjakan langkah-langkah berikut ini sampai tercapai keadaan sukses atau gagal :

a) Bangkitkan successor E dari keadaan awal. Jika tidak ada successor, maka akan terjadi kegagalan.

b) Panggil Depth – First Search dengan E sebagai keadaan awal.

c) Jika sukses berikan tanda sukses. Namun jika tidak, ulangi langkah-2. Keuntungan :

1. Membutuhkan memori relatif kecil, karena hanya node-node pada lintasan yang aktif saja yang disimpan.

2. Secara kebetulan, metode Depth – First Search akan menemukan solusi tanpa harus menguji lebih banyak lagi dalam ruang keadaan.


(63)

Kelemahan :

1. Memungkinkan tidak ditemukannya tujuan yang diharapkan 2. Hanya mendapat satu solusi pada setiap pencarian

C. Pencarian Terbaik Pertama (Best First Search)

Metode Pencarian Terbaik Pertama (Best First Search) merupakan kombinasi dari metode depth first search dan metode breadth first search dengan mengambil kelebihan dari kedua metode tersebut. Pada setiap langkah proses pencarian terbaik pertama, kita memilih node-node dengan menerapkan fungsi heuristik yang memadai pada setiap node atau simpul yang kita pilih dengan menggunakan aturan-aturan tertentu untuk menghasilkan penggantinya. Pada best first search, pencarian diperbolehkan mengunjungi node di lebih rendah dan jika ternyata node dilevel lebih tinggi memiliki nilai heuristik lebih buruk.

Untuk mengimplementasikan metode ini, dibutuhkan dua antrian yang berisi node-node, yaitu :

1. OPEN yaitu berisi node-node yang sudah dibangkitkan, sudah memiliki fungsi heuristik namun belum diuji. Umumnya berupa antrian berprioritas yang berisi elemen-elemen dengan nilai heuristik tertinggi.

2. CLOSED yaitu berisi node-node yang sudah diuji Algoritma :


(64)

2. Kerjakan langkah-langkah berikut hingga tujuan ditemukan atau antrian OPEN sudah kosong :

a) Ambil node terbaik dari OPEN (Gambar 2.11 Antrian OPEN) b) Bangkitkan semua successornya

c) Untuk tiap-tiap successor kerjakan :

i. Jika node tersebut belum pernah dibangkitkan sebelumnya, evaluasi node tersebut dan masukkan ke OPEN.

ii. Jika node tersebut sudah pernah dibangkitkan sebelumnya, ubah parent jika lintasan baru lebih menjanjikan. Hapus node tersebut dari antrian OPEN.

Antrian OPEN

[ A ]

[ D C B ]

[ C F B E ] [ G F B E H ]


(65)

Diasumsikan node dengan nilai yang lebih besar memiliki nilai evaluasi yang lebih baik. Pada keadaan awal, antrian berisi A. Pengujian dilakukan di level pertama, node D memiliki nilai terbaik, sehingga menempati antrian pertama, disusul dengan C dan B. Node D memiliki cabang E dan F yang masing-masing bernilai 2 & 4. Dengan demikian C merupakan pilihan terbaik dengan menempati antrian pertama (Gambar 2.12 Metode Best First Search).

Fungsi Heuristik yang digunakan merupakan prakiraan (estimasi) cost dari

initial state ke goal state, yang dinyatakan dengan :

f‟ = g + h‟

dimana : f‟ = prakiraan cost dari initial ke goal

g = cost dari initial state ke current state

h‟ = prakiraan cost dari current state ke goal state


(1)

Pupus Mustika Puri

1

SISTEM PAKAR UNTUK MENDIAGNOSA PENYAKIT AYAM

BERBASIS WEB

Pupus Mustika Puri

Jurusan Teknik Informatika, Fakultas Teknik dan Ilmu Komputer,Universitas Komputer Indonesia Jln. Dipati Ukur No.112 Bandung 40132

pu_chan@yahoo.co.id

ABSTRAK

Pertumbuhan dan perkembangan ayam mulai dari perawatan, pemeliharaan sampai produksi daging dan telur tidak luput dari berbagai gangguan penyakit. Hal ini, mengakibatkan kerugian bagi pemilik peternakan tersebut.

Proses pembangunan sistem pakar ini menggunakan metode akuisisi pengetahuan dengan teknik pengumpulan data yang digunakan yaitu wawancara, observasi dan induksi aturan. Sedangkan metode inferensi yang digunakan dalam pembangunan sistem pakar ini dengan metode forward chaining dan menggunakan metode pencarian best-first-search. Untuk metodologi pembangunan perangkat lunak yang digunakan menggunakan metode terstruktur yaitu Data Flow Diagram dan Entity Relationship Diagram. Tools pemrograman yang digunakan dalam pembangunan sistem pakar ini menggunakan Adobe Dreamweaver CS3 sedangkan basis datanya menggunakan MySQL.

Sistem pakar ini dibuat bertujuan untuk membantu pasien dalam mendiagnosa penyakit ayam secara dini. Dalam perancangan sistem pakar ini meminta suatu jawaban dari user terhadap gejala yang di derita, kemudian ouput yang dihasilkan oleh komputer berupa kemungkinan penyakit yang dialami oleh user serta solusi untuk mengobati penyakit pada ayam tersebut.

Kata Kunci : Forward Chaining, PHP, MySQL, Sistem Pakar, Penyakit Ayam.

1.

PENDAHULUAN

1.1 Rumusan Masalah

Bagaimana membangun Sistem Pakar Untuk Mendiagnosa Penyakit Ayam Berbasis Web

1.2 Maksud dan Tujuan

Maksud dari pembangunan aplikasi ini adalah untuk mengaplikasikan sistem pakar dalam mengatasi penyakit ayam secara dini.

Adapun tujuan dari pembuatan aplikasi ini adalah:

1. Untuk memberikan informasi pengetahuan dan pemahaman dalam pengenalan suatu penyakit dapat mengakibatkan kesalahan diagnosis dan pengobatan penyakit pada ayam

.

2. Untuk Memudahkan peternak

mendapatkan informasi tentang jenis-jenis penyakit pada ayam yang akan menghambat dan merupakan ancaman besar bagi para peternak.

3. Untuk memudahkan pasien dalam mendiagnosa penyakit ayam secara dini, akan menyebabkan keterlambatan atas penangulangan penyakit dan kematian ayam.

2.

ANALISIS

MASALAH,

ANALISIS

METODE

DAN

IMPLEMENTASI

2.1 Analisis Masalah

1. Menentukan masalah yang akan dibangun untuk sebuah perangkat lunak sistem pakar. Sistem yang akan dibangun merupakan sebuah perangkat lunak sistem pakar untuk mendiagnosa penyakit ayam berbasis web.

2. Mengumpulkan data yang diperlukan untuk membangun sistem, yaitu berupa informasi tentang pengertian penyakit, gejala, jenis penyakit dan cara pengobatannya melalui studi literatur dan observasi yang digunakan sebagai

base knowledge.

3. Mempresentasikan pengetahuan ke dalam tabel gejala yang telah dianalisis,


(2)

Pupus Mustika Puri

2

aturan produksi serta pohon

pelacakan dan penelusuran gejala dan jenis penyakit.

4. Usulan sistem yang akan dibuat.

2.2

Analisis Metode

2.2.1

Sistem pakar

Ketika hendak membuat suatu keputusan yang komplek atau memecahkan masalah, seringkali kita meminta nasehat atau berkonsultasi dengan seorang pakar atau ahli. Seorang

pakar adalah seseorang yang

mempunyai pengetahuan dan pengalaman spesifik dalam suatu bidang; misalnya pakar komputer, pakar uji tak merusak, pakar politik dan lain-lain. Semakin tidak terstruktur situasinya, semakin mengkhusus (dan mahal) konsultasi yang dibutuhkan.

Sistem Pakar (Expert System) adalah

usaha untuk menirukan seorang pakar. Biasanya Sistem Pakar berupa perangkat lunak pengambil keputusan yang mampu mencapai tingkat performa yang sebanding seorang pakar dalam bidang problem yang khusus dan sempit. Ide dasarnya adalah: kepakaran ditransfer dari seorang pakar (atau sumber kepakaran yang lain) ke komputer, pengetahuan yang ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan, mendeduksi, dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke pengguna tersebut, bila perlu dengan alasan-alasannya. Sistem Pakar malahan terkadang lebih baik unjuk kerjanya daripada seorang pakar manusia!

Kepakaran (expertise) adalah

pengetahuan yang ekstensif (meluas) dan spesifik yang diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman. Pengetahuan membuat pakar dapat mengambil keputusan secara lebih baik dan lebih cepat daripada non-pakar dalam memecahkan problem yang kompleks. Kepakaran mempunyai sifat berjenjang, pakar top memiliki pengetahuan lebih banyak daripada pakar yunior.

Tujuan Sistem Pakar adalah untuk mentransfer kepakaran dari seorang pakar ke komputer, kemudian ke orang lain (yang bukan pakar). Proses ini tercakup dalam rekayasa pengetahuan (knowledge

engineering) yang akan dibahas kemudian.

2.2.1.1

Perancangan

Arsitektur

Sistem Pakar

Sistem pakar memiliki beberapa komponen utama, yaitu antarmuka pengguna (user

interface), basis data sistem pakar (expert

system database), fasilitas akuisisi

pengetahuan (knowledge acquisition facility), dan mekanisme inferensi (inference

mechanism). Selain itu ada satu komponen

yang hanya ada pada beberapa sistem pakar, yaitu fasilitas penjelasan (explanation facility) (Martin dan Oxman,1988).

Ada 4 tipe penjelasan yang digunakan dalam sistem pakar (Gambar 1 Arsitektur Sistem Pakar), yaitu (Schnupp, 1989):

1. penjelasan mengenai jejak aturan yang menunjukkan status konsultasi.

2. Penjelasan mengenai bagaimana sebuah keputusan diperoleh.

3. Penjelasan mengapa sistem menanyakan suatu pertanyaan.

4. Penjelasan mengapa sistem tidak memberikan keputusan seperti yang dikehendaki pengguna.

Basis Pengetahuan

(Aturan)

Mesin Agenda

Memori kerja (Fakta)

Fasilitas Penjelasan

Fasilitas Aku isi Pengetahuan

Antar Muka Pengguna

Gambar 1. Arsitektur Sistem Pakar

2.2.1.2 Forward Chaining

Pendekatan yang dimotori oleh data (data driven). Dalam pendekatan ini

pelacakan dimulai dari informasi masukan dan selanjutnya mencoba menggambarkan kesimpulan. Aturan dalam sistem


(3)

Pupus Mustika Puri

3

merepresentasikan aksi-aksi yang harus

diambil apabila terdapat suatu kondisi khusus pada item-item dalam memori kerja yang disebut himpunan aturan kondisi-aksi. Dalam metode ini, data digunakan untuk menentukan aturan mana yang akan dijalankan, kemudian aturan tersebut dijalankan. Mungkin proses menambahkan data ke memori kerja. Proses diulang sampai ditemukan suatu hasil. Aktivitas sistem dilakukan berdasarka siklus mengenal-beraksi (recognize-act).

Pelacakan ke depan mencari fakta yang sesuai dari bagian IF dari aturan IF-THEN (Gambar 1 menunjukkan proses forward chaining).

Observasi A

Observasi B Aturan R2 Aturan R1 Fakta D Fakta C Fakta E Aturan R4 Aturan R3 Kesimpulan 2 Kesimpulan 1

Gambar 2. Proses forward chaining

2.3 Analisis

A. Analisa Basis Data

Entity Relationship Diagram (ERD)

merupakan cara untuk

mengorganisasikan data, dimana diagram ini akan memperlihatkan hubungan entitas yang terdapat didalam sistem. ERD diusulkan untuk sistem yang akan dibangun dapat dilihat pada gambar 2 dibawah ini.

Member konsultasi

Memiliki penelusuran

Hasil_diagnosa penyakit relasi gejala email kd_penyakit kd_gejala kd_penyakit kd_gejala Id_detail kd_gejala kd_penyakit mengisi forum mempunyai topik mengisi pakar jawaban mempunyai email Kode_jenis_pertanyaan Id email Id Kode_jenis_pertanyaan username 1 N N N N N N N 1 N 1 1 1 1 1 Mengelola 1 Mengelola 1 1 Temp_analisa N N Temp_penyakit Temp_gejala kd_gejala kd_penyakit kd_gejala kd_penyakit noip noip noip mempunyai noip 1 N 1 1 N

Gambar 3 Entity Relationship Diagram (ERD)

B. Analisa Kebutuhan Fungsional

1.Diagram Konteks

User Penyakit AyamSistem Pakar Pakar

Info data hasil diagnosa Info penyakit Info komentar yang telah dilihat atau ditambah

Data diagnosa Data penyakit Data komentar yang akan dilihat atau ditambah

Info login Info gejala yang telah diubah, ditambah dan dihapus Info penyakit yang telah diubah, ditambah dan dihapus Info relasi yang telah diubah, ditambah dan dihapus Info pakar yang telah diubah, ditambah dan dihapus

Info laporan gejala Info laporan penyakit

Data login Data gejala yang akan diubah, ditambah dan dihapus Data penyakit yang akan diubah, ditambah dan dihapus

Data relasi yang akan diubah, ditambah dan dihapus Data pakar yang akan diubah, ditambah dan dihapus

Data laporan gejala Data laporan penyakit

Gambar 4 Diagram Konteks

2.DFD Level 1

1.0 Daftar Member 2.0 Lupa password 3.0 Login member Pakar Info passwrd yang diminta

Data login info pendaftaran berhasil,

Info pendaftaran gagal Data pendaftaran

Data pendaftaran Info pendaftaran berhasil,

Info pendaftaran gagal Data email In fo Pa ss w o rd ya n g d imin ta Pe nd a fta ra n be rh a sil Data email Data Login In fo lo gin in v alid In fo lo gin in v a lid 7.0 Forum Data topik yang dilihat,

Data komentar yang dilihat Info topik yang dilihat, Info komentar yang dilihat

Data forum Info forum Data jawaban Info jawaban Info jenis_pertanyaan Data jenis_pertanyaan forum jawaban topik pakar Data login Info login invalid

Data login Info Login invalid

5.0 Diagnosa 4.0 Pengolahan Data L o gin Be rh a sil Lo g in Be rh as il

Info jenis_pertanyaan yang telah dihapus, tambah, ubah Data gejala yang akan dihapus, ditampah,di ubah Data penyakit yang akan dihapus, ditampah,di ubah Data rule yang akan dihapus, ditampah,di ubah Data pakar yang akan dihapus, ditampah,di ubah Data jenis_pertanyaan yang akan dihapus,

ditampah,di ubah Info gejala yang telah dihapus, ditambah,di ubah Info penyakit yang telah dihapus, ditambah,di ubah Info rule yang telah dihapus, ditambah,di ubah Info pakar yang telah dihapus, tambah,ubah Info jenis_pertanyaan yang telah dihapus, tambah,

ubah

Data jenis_pertanyaan yang akan dihapus,tambah,ubah Info pakar yang telah dihapus,tambah,ubah Data pakar yang akan dihapus,ubah, tambah penyakit

relasi gejala detail_penyakit

Data gejala yg akan dihapus,tambah,ubah In fo g eja la y g a ka n d ih a pu s ,tamb ah ,u ba h In fo ru le y g a ka n d ih ap u s ,ta mb a h ,ub a h d a ta ru le yg ak a n d ih ap u s ,ta mb a h ,ub a h D a ta pe n ya k it y g a k an dih a pu s ,tamb a h ,ub a h In fo pe n ya kit yg a ka n d ih a p us ,tamb ah ,u b ah Info rule

Data hasil diagnosa Info hasil diagnosa

In fo d ia g n os a D a ta d ia g n os a In fo p e ny a kit Info gejala 6.0 Informasi penyakit Info penyakit Info informasi penyakit

Info gejala Data gejala

Gambar 5 DFD Level 1

3.Skema Relasi gejala kd_gejala* nm_gejala Email** relasi kd_gejala ** kd_penyakit ** penyakit kd_penyakit * nm_penyakit latin definisi pengobatan hasil_diagnosa id_diagnosa * kd_gejala ** kd_penyakit** noip member Email ** Password Nama jk alamat pekerjaan Telp Hp Code noip codeset forum Id * pertanyaan Email ** kode_jenis_pertanyaan** jawaban Id* sequence jawaban Email ** jenis_pertanyaan kode_jenis_pertanyaan * nama pakar username * password temp_gejala kd_gejala** noip temp_gejala kd_gejala** kd_penyakit** noip temp_gejala kd_penyakit** noip

Gambar 6. Skema Relasi

2.4

Desain

A. Desain Struktur Menu

Perancangan struktur menu berisikan menu dan submenu yang berfungsi untuk memudahkan user dalam menggunakan sistem. menu-menu tersebut dibagi berdasarkan hak akses masing-masing


(4)

Pupus Mustika Puri

4

user. Berikut ini gambaran mengenai

struktur menu Sistem Pakar untuk mendiagnosa penyakit ayam Berbasis Web.

1. Struktur Menu User

Home

Diagnosa Forum

Informasi Penyakit

Hasil Diagnosa

Login Pakar

Gambar 7. Perancangan Struktur Menu User

2. Struktur Menu Pakar

Home

Penyakit Gejala Relasi Lap. Gejala Lap.Penyakit Logout

Tambah

Edit

Hapus Tambah

Edit

Hapus

Pakar

forum

Tambah

Edit

Hapus Tambah

Edit

Hapus Tambah

Edit

Hapus

Gambar 8. Perancangan Struktur Menu Pakar

B. Desain Menu Utama

Berikut ini adalah gambar perancangan menu utama.

header Beranda Daftrar Login pakar

Login

Jajak Pendapat

Informasi Penyakit

Kalender Penjelasan

Login Email password

Penyakit yang bisa dianalisis :

Keterangan: 1,klik daftar maka muncul T02 2.klik login pakar akan muncul T03 3. klik Informasi penyakit maka akan muncul T04 4.isikan data login maka akan tampil T05

Keterangan : Nama form : T01 Ukuran layar: Default Font: Default

Warna :Black,Grey,White and Red T01

Gambar 9. Tampilan Perancangan Menu Utama

C. Desain Tampilan Konsultasi User

Berikut ini adalah gambar perancangan tampilan konsultasi user

header Beranda Login pakar

Login

Jajak Pendapat

Informasi Penyakit

Kalender Logout

Email Penyakit yang bisa

dianalisis :

Keterangan: T05 merupakan pendiagnodsaan penyakit berupa pertanyaan sampai medapatkan hasil maka akan muncul T06 1. klik forum maka akan tampil T08

Keterangan : Nama form : T05 Ukuran layar: Default Font: Default

Warna :Black,Grey,White and Red T05

Nama

Ya Tidak Diagnosa

JAWABLAH PERTANYAAN BERIKUT :

Apakah ayam anda mempunyai gejala______?

Forum

Gambar 10. Tampilan Perancangan Menu Konsultasi

User

D. Jaringan Semantik

Jaringan semantik merupakan alat efektif untuk mempresentasikan pemetaan data yang bertujuan untuk mencegah terjadinya duplikasi data. Jaringan Semantik User

T01

T02

T03

T05 T06 T07

T04 T08

T09

Klik daftar

Klik Login Pakar

Klik login Klik Informasi

penyakit Klik forum

Pilih topik

Hasil diagnosa M01

M20

M01

M19

Klik penyakit

Gambar 11. Jaringan Semantik User

1. Jaringan Semantik Pakar

T04 T01A

T02A

T03A

T04A

T05A T06A

T07A

T08A

T09A

T10A

T11A

T12A

T13A

T14A T15A

login

Klik Laporan penyakit Klik penyakit

Klik gejala

Klik relasi

Klik pakar Klik laporan gejala

Klik tambah

Klik edit

Klik tambah

Klik edit

Klik tambah

Klik edit

Klik tambah Klik edit M01

M04

M05

M10

M13

M11,M14

M12,M14 M09

M08 M07

M06 M03 M02

T16A Klik Forum

M18

T18A

T17A Klik Edit

Klik tambah

M17 M19


(5)

Pupus Mustika Puri

5

3. Implementasi Sistem

Tahap implementasi merupakan tahap mewujudkan hasil perancangan menjadi sebuah program aplikasi yang dapat dioperasikan demi mencapai hasil yang sesuai dengan hasil perancangan.

Setelah melakukan tahap perancangan sistem dan implementasi perangkat lunak, maka tindakan selanjutnya yang dilakukan adalah penerapan hasil perangkat lunak tersebut.

A. Implementasi Perangkat Keras

Perangkat keras yang digunakan dalam pembangunan sistem pakar untuk mendiagnosa penyakit ayam berbasis web memiliki spesifikasi sebagai berikut:

1. Notebook dengan processor intel

atom N280 kecepatan 1,67 GHz 2. Kapasitas Harddisk : 160 GB

3. Kapasitas RAM 1GB 4. Kapasitas RAM 1GB 5. Kapasitas VGA 256 MB

6. Keyboard dan Mouse

B. Implementasi Perangkat Lunak

Perangkat lunak yang digunakan dalam pembuatan sistem pakar untuk mendiagnosa penyakit ayam berbasis web memiliki spesifikasi sebagai berikut: 1. Sistem Operasi Microsoft Windows XP

Home Edition service pack 3.

2. Dalam perancangan database

menggunakan MySQL.

3. Bahasa pemrograman menggunakan PHP dengan tool editor Adobe Dreamweaver CS3.

C. Implementasi Antarmuka

Implementasi antarmuka

menggambarkan tampilan dari aplikasi yang dibangun yaitu implementasi antarmuka sistem pakar troubleshooting

kerusakan hardware komputer berbasis web. Berikut ini adalah implementasi antarmuka dari aplikasi yang dibangun dapat dilihat pada berikut ini :

Tabel 13. Implementasi Antarmuka pakar

Menu Deskripsi

Login Untuk menangani

proses login pakar. Menu Pakar Tampilan awal

antarmuka pakar masuk ke proses selanjutnya.

Pengolahan data Untuk mengolah data seperti tambah, edit, atau hapus data penyakit, data gejala, data relasi, data pakar, data laporan penyakit dan data laporan gejala Penyakit Untuk mengolah data

penyakit seperti tambah, edit atau hapus.

Gejala Untuk mengolah data

gejala seperti tambah, edit atau hapus.

Relasi Untuk mengolah data

relasi antara gejala dan penyakit seperti tambah, edit atau hapus.

Pakar Untuk mengolah data

pakar. Seperti mengubah sandi

(password).

Laporan Gejala Untuk mengolah laporan gejala seperti lihat histori gejala Laporan Penyakit Untuk mengolah

laporan penyakit seperti lihat histori penyakit

Forum Untuk mengolah data

forum berupa topik pertanyaan seperti tambah, edit atau hapus.


(6)

Pupus Mustika Puri

6

Tabel 14. Implementasi Antarmuka user

Menu Deskripsi

Home Tampilan awal antarmuka user

Diagnosa Untuk menentukan hasil diagnosa penyakit beserta nilai keyakinan dari penelusuran gejala yang diderita

Login Pakar

Untuk masuk ke dalam proses tampilan pakar.

Forum Untuk mengisi data diskusi antara user

4.

KESIMPULAN DAN SARAN

4.1.

Kesimpulan

Berdasarkan permasalahan yang dibangun pada sistem pakar untuk mendiagnosa jenis penyakit pada ayam berbasis web, maka dapat diambil beberapa kesimpulan adalah sebagai berikut :

1. Dengan adanya sistem pakar ini menambah informasi tentang pengetahuan dan pemahaman dalam pengenalan suatu penyakit.

2. Sistem pakar penyakit pada ayam ini memudahkan peternak mendapatkan informasi tentang jenis-jenis penyakit pada ayam yang akan menghambat dan merupakan ancaman besar peternak.

3. Sistem Pakar mampu memudahkan pasien dalam mendiagnosa penyakit ayam secara dini.

4.2.

Saran

Saran-saran yang penuli kemukakan diharapkan dapat meningkatkan hasil yang lebih memuaskan dan bermanfaat bagi masyarakat untuk mendeteksi jenis penyakit pada ayam sejak dini. Berikut saran yang dapat disampaikan :

1. Aplikasi Sistem pakar yang dibangun mengenai jenis penyakit pada ayam yang dapat dikembangkan lagi lebih lanjut 2. Untuk menjamin hasil diagnosa

yang benar diperlukan data yang sebenarnya dari pakar.

5. DAFTAR PUSTAKA

[1] Hartanto, Jogiyanto. 2002. Pengenalan

Komputer, Andi,Yogyakarta.

[2] Kusumadewi, Sri. 2003. Artificial

Intelligence (Teknik dan Aplikasinya), Graha

Imu, Yogyakarta.

[3] Sari Iswanti, Sri Hartati. 2008. Sistem

Pakar dan Pengembangannya. Graha Ilmu,

Yogyakarta. [4]

http://id.wikipedia.org/wiki/MySQLdiakses 23 maret 2010 pukul 20:22

[5]

http://en.wikipedia.org/wiki/WAMPdiakses 23 maret 2010 pukul 20:27