Sistem Pakar Diagnosa Penyakit Tanaman Padi
Transcript of Sistem Pakar Diagnosa Penyakit Tanaman Padi
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
1/48
LAPORAN PENELITIAN
PENGANTAR INTELEGENSI BUATAN
Sistem Pakar Diagnosa Penyakit Tanaman Padi
Disusun oleh :
Yayat Sutaryat (12.14.1.0132)
Vieka Devita(12.14.1.0127)
Susri Hartini (12.14.1.0118)
Tryo Mastryana (12.14.1.0125)
Robi Sukmana (12.14.1.0109)
TEKNIK INFORMATIKA III D
UNIVERSITAS MAJALENGKA
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
2/48
Laporan Sistem Pakar i
KATA PENGANTAR
Segala puji bagi Allah SWT yang telah memberikan nikmat serta hidayah-Nya
terutama nikmat kesempatan dan kesehatan sehingga penulis dapat menyelesaikan laporan
mata kuliah Pengantar Intelegensi Buatan. Kemudian shalawat beserta salam kita
sampaikan kepada Nabi besar kita Muhammad SAW yang telah memberikan pedoman hidup
yakni al-quran dan sunnah untuk keselamatan umat di dunia.
Laporan ini merupakan salah satu tugas mata kuliah Pengantar Intelegensi Buatan
diprogram Studi Teknik Informatika III D, Fakultas teknik di Universitas Majalengka.
Selanjutnya penulis mengucapkan terima kasih yang sebesar-besarnya kepada Bapak Tri
Verga selaku dosen pembimbing mata kuliah Pengantar Intelegensi Buatan dan kepada
segenap pihak yang telah memberikan bimbingan serta arahan selama penulisan laporan ini.
Akhirnya penulis menyadari bahwa terdapat banyak kekurangan - kekurangan dalam
penulisan laporan ini, maka dari itu penulis mengharapkan kritik dan saran yang konstruktif
dari para pembaca demi kesempurnaan laporan ini.
Majalengka, 19 Februari 2014
Penulis
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
3/48
Laporan Sistem Pakar ii
DAFTAR ISI
KATA PENGANTAR ....................................................................................................... i
DAFTAR ISI...................................................................................................................... ii
BAB I Pendahuluan
1.1. Latar Belakang ...................................................................................................... 1
1.2. Rumusan Masalah ................................................................................................. 1
1.3. Batasan Masalah ................................................................................................... 1
1.4. Tujuan Penelitian .................................................................................................. 2
BAB II Kajian Teori
2.1. Forward dan Backward Chaining ......................................................................... 32.2. Metode Penelitian ................................................................................................. 4
BAB III Hasil dan Pembahasan
3.1. Hasil Implementasi ............................................................................................... 6
BAB IV Program Pakar Tanaman Padi
4.1. Abstrak Pembuatan Program Pakar Tanaman Padi .............................................. 9
4.2. Perancangan .......................................................................................................... 9
4.2.1. Pembuatan Database ................................................................................... 9
4.2.2. Pembuatan Halaman Program Untuk Penelusuran ..................................... 12
4.2.3. Membuat Halaman Program Untuk pakar .................................................. 23
4.2.4. Pembuatan Login dan Menu Utama Untuk Pakar ...................................... 36
4.3. Tampilan/Desain yang Sudah dibuat .................................................................... 38
BAB V Penutup
Kesimpulan .................................................................................................................. 45
Saran ............................................................................................................................ 45
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
4/48
Laporan Pengantar Intelegensi Buatan 1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Pertanian mempunyai arti yang penting bagi kehidupan manusia, selama manusia
hidup, selama itu juga pertanian tetap akan ada. Hal itu disebabkan karena makanan
merupakan kebutuhan manusia paling pokok selain udara dan air. Makanan merupakan
hasil dari pertanian yang mana setiap tahun kebutuhan akan makanan semakin meningkat
karena populasi manusia terus bertambah. Secara khusus beras merupakan hasil dari
tanaman padi yang digunakan sebagai makanan pokok manusia.
Hal yang sering terjadi, banyak kerugian yang diakibatkan karena adanya penyakit
tanaman yang terlambat untuk didiagnosis dan sudah mencapai tahap yang parah dan
menyebabkan terjadinya gagal panen. Sebenarnya setiap penyakit tanaman tersebut
sebelum mencapai tahap yang lebih parah dan meluas umumnya menunjukkan gejala-
gejala penyakit yang diderita tetapi masih dalam tahap yang ringan dan masih sedikit.
Tetapi petani sering mengabaikan hal ini karena ketidaktahuannya dan menganggap
gejala tersebut sudah biasa terjadi pada masa tanam, sampai suatu saat timbul gejala yang
sangat parah dan meluas, sehingga sudah terlambat untuk dikendalikan. Ahli pertanian
dalam hal ini mempunyai kemampuan untuk menganalisa gejala-gejala penyakit tanaman
tersebut, tetapi untuk mengatasi semua persoalan yang dihadapi petani terkendala oleh
waktu dan banyaknya petani yang mempunyai masalah dengan tanamannya.
Oleh karena itu, pada penelitian ini akan dibuat suatu aplikasi sistem pakar yang
memberikan informasi mengenai hama penyakit tanaman dan dapat mendiagnosa gejala
gejala penyakit tanaman, khususnya tanaman padi, sekaligus memberikan solusi
penanggulangannya, yang nantinya dapat digunakan untuk mengurangi atau memperkecil
resiko kerusakan tanaman.
1.2.Rumusan Masalah
Mengidentifikasi penyakit tanaman padi.
Mengidentifikasi gejala-gejala penyakit tanaman padi.
1.3.Batasan Masalah
Menganalisis jenis penyakit tungro dan kerdil rumput.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
5/48
Laporan Pengantar Intelegensi Buatan 2
1.4. Tujuan Penelitian
Dapat mengetahui jenis penyakit tanaman padi.
Dapat mengidentifikasi gejala apa saja yang dapat menyebabkan penyakit
tanaman padi.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
6/48
Laporan Pengantar Intelegensi Buatan 3
BAB II
KAJIAN TEORI
2.1.Forward Dan Backward Chaining
Sistem pakar adalah sistem yang menggunakan pengetahuan manusia yang
terekam dalam komputer untuk memecahkan persoalan yang biasanya memerlukan
keahlian manusia. Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu
permasalahan tertentu dengan meniru kerja dari para ahli. Sistem pakar dapat ditampilkan
dalam dua lingkungan, yaitu: pengembangan dan konsultasi. Lingkungan pengembangan
digunakan oleh pembangun sistem pakar untuk membangun komponen dan memasukkan
pengetahuan ke dalam basis pengetahuan. Lingkungan konsultasi digunakan oleh orang
yang bukan ahli untuk memperoleh pengetahuan dan berkonsultasi.
Komponen-komponen yang ada pada sistem pakar dapat dilihat, yaitu :
1. Basis pengetahuan (Knowledge base). Berisi pengetahuan-pengetahuan yang
dibutuhkan untuk memahami, memformulasikan dan memecahkan persoalan.
2. Motor inferensi (inference engine). Ada 2 cara yang dapat dikerjakan dalam
melakukan inferensi, yaitu:
a)
Forward chaining merupakan grup dari multiple inferensi yang melakukan
pencarian dari suatu masalah kepada solusinya. Forward chaining adalah data-
driven karena inferensi dimulai dengan informasi yang tersedia dan baru konklusi
diperoleh.
b) Backward chaining menggunakan pendekatan goal-driven, dimulai dari
ekspektasi apa yang diinginkan terjadi (hipotesis), kemudian mencari bukti yang
mendukung (atau kontradiktif) dari ekspektasi tersebut.
3.
Blackboard. Merupakan area kerja memori yang disimpan sebagai database untuk
deskripsi persoalan terbaru yang ditetapkan oleh data input dan digunakan juga untuk
perekaman hipotesis dan keputusan sementara.
4. Subsistem akuisisi pengetahuan. Akuisisi pengetahuan adalah akumulasi, transfer dan
transformasi keahlian pemecahan masalah dari pakar atau sumber pengetahuan
terdokumentasi ke program komputer untuk membangun atau memperluas basis
pengetahuan.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
7/48
Laporan Pengantar Intelegensi Buatan 4
5. Antarmuka pengguna. Digunakan untuk media komunikasi antara user dan program.
6. Subsistem penjelasan. Digunakan untuk melacak respon dan memberikan penjelasan
tentang kelakuan sistem pakar secara interaktif melalui pertanyaan.
7. Sistem penyaring pengetahuan.
Gambar 1. Struktur sistem pakar
2.2.Metode Penelitian
Diagram Alir Data (DAD) merupakan suatu model logika data atau proses yang
dibuat untuk menggambarkan dari mana asal data, ke mana tujuan data yang keluar dari
sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut, interaksi antara
data yang tersimpan dan proses yang dikenakan pada data tersebut. Sehingga dengan DAD
ini bisa diketahui dimana data disimpan dan bagaimana transformasi datanya.
Metode penelusuran diperlukan untuk menarik simpulan dari data-data yang telah di
isikan oleh user. Metode yang digunakan adalah forward chaining dan backward chaining.
Metode forward chaining adalah metode dimana penelusuran di mulai dari mengambil fakta-
fakta terlebih dahulu baru kemudian digunakan untuk menarik simpulan.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
8/48
Laporan Pengantar Intelegensi Buatan 5
Sebaliknya metode backward chaining adalah metode yang dimulai dari suatu
simpulan untuk mencari fakta fakta pendukung. Dalam hal ini gejala digunakan sebagai
fakta, setelah semua data gejala terpenuhi dapat digunakan untuk menarik simpulan mengenai
suatu penyakit. Adapun basis pengetahuan yang digunakan adalah penalaran berbasis aturan
(Rule-Based Reasoning) sebagaimana ditujukkan pada tabel berikut :
No Aturan
1 IF Tanaman kerdil AND Anakan berkurang/sedikit AND Daun Menguning sampai
jingga dari pucuk sampai ke pangkal AND Daun muda terlihat seperti mottle AND
Daun tua seperti bintik-bintik coklat bekas ditusuk THEN Tungro.
2 IF Tanaman kerdil AND Bercak-bercak berwarna coklat AND Anakan bertambah
banyak AND Daun pendek dan sempit AND Daun berwarna hijau pucat/kekuning-
kuningan AND Bercak menyerang daun AND Anakan tumbuh tegak THEN Kerdil
rumput.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
9/48
Laporan Pengantar Intelegensi Buatan 6
BAB III
HASIL DAN PEMBAHASAN
3.1. Hasil Implementasi
Hasil implementasi sistem pakar diagnosa penyakit tanaman padi dengan metode
inferensi forward chaining dan backward chaining dapat mempermudah untuk diakses dan
digunakan oleh siapa saja (khususnya petani) dan dimana saja (asalkan tersedia jaringan
internet).
Sistem yang dibangun ini dianalisa agar penerapan teori ke dalam praktik program
dapat sejalan. Sehingga jika dicek baik secara manual dengan programnya menghasilkan
diagnosa dan penghitungan prosentase kemungkinan jenis penyakit yang tidak jauh beda.
Sistem pakar untuk mendiagnosa jenis penyakit pada tanaman padi ini memberikan solusi
berupa hasil diagnosa dan prosentase kemungkinan jenis penyakit dengan metode forward
chaining maupun info penyakit dengan metode backward chaining.
1. Analisa Hasil Konsultasi
Diambil contoh pada proses konsultasi, memilih gejala diantara gejala-gejala yang
ditampilkan sebagai input:
a) Gejala yang terpilih: anakan tumbuh tegak dan daun menguning sampai jingga dari
pucuk ke pangkal
b) Langkah diagnosa:
1) Mencari jenis penyakit yang memiliki gejala terpilih sesuai basis pengetahuan.
2)
Mencari jumlah gejala yang terpenuhi oleh gejala terpilih pada basis
pengetahuan.
3)
Mencari jumlah gejala yang harus terpenuhi pada basis pengetahuan.
4) Melakukan perhitungan prosen kemungkinan hasil diagnosa.
5)
Melakukan perhitungan prosentase kemungkinan hasil diagnosa terhadap
keseluruhan kemungkinan terdiagnosa.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
10/48
Laporan Pengantar Intelegensi Buatan 7
c) Penyelesaian:
1) Mencari jenis penyakit yang memiliki gejala terpilih pada basis pengetahuan,
sebagaimana ditunjukkan pada Tabel 1.
2) Diagnosa awal seperti ditunjukkan pada Tabel 2.
3) Hasil diagnosis seperti ditunjukkan pada Tabel 3.
Tabel 1. Aturan Konsultasi
Nama Penyakit Gejala
Tungro
Tanaman kerdil
Anakan berkurang/sedikit
Daun menguning sampai jingga dari pucuk ke pangkal
Daun muda terlihat seperti mottle
Daun tua seperti bintik-bintik coklat bekas ditusuk
Kerdil Rumput
Tanaman kerdil
Bercak-bercak berwarna coklat
Anakan bertambah banyak
Daun pendek dan sempit
Daun berwarna hijau pucat/kekuning-kuningan
Bercak menyerang daun
Anakan tumbuh tegak
Tabel 2. Tabel Hasil Diagnosa Awal
Nama Penyakit Jumlah gejala yangharus terpenuhi
Jumlah gejalaterpenuhi
Prosen (%)
Tungro 5 1 20
Kerdil Rumput 7 1 14,29
Jumlah prosentase 34,29
Keterangan:
Prosen = (Jumlah gejala terpenuhi / Jumlah gejala harus terpenuhi) x 100%
Prosen = Besarnya prosentase kemungkinan penyakit berdasarkan gejala yang terpenuhi
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
11/48
Laporan Pengantar Intelegensi Buatan 8
Tabel 3. Tabel Hasil Diagnosa
Kode Penyakit Prosentase kemungkinan dari keseluruhan (%)
Tungro (20/34,29)*100% = 58,33
Kerdil Rumput (14,29/34,29)*100% = 41,67
Keterangan:
Prosentase = (prosen / jumlah prosen) x 100%
Prosentase = Besarnya prosentase kemungkinan penyakit berdasarkan keseluruhan
kemungkinan penyakit.
2. Analisa Hasil Info Penyakit
Diambil contoh pada proses info penyakit, memilih jenis penyakit sebagai input:
a) Penyakit yang dipilih: Tungro
b) Langkah diagnosa:
1) Mencari gejala dari jenis penyakit terpilih dari aturan gejala yang ada.
2) Mencari keterangan detail tentang penyakit terpilih
c. Penyelesaian:
1) Mencari gejala dari jenis penyakit terpilih dari aturan gejala yang ada pada
Tabel 5.
Tabel 5. Aturan Info Penyakit
Nama Penyakit Gejala
Tungro
Tanaman kerdil
Anakan berkurang/sedikit
Daun menguning sampai jingga dari pucuk ke pangkal
Daun muda terlihat seperti mottle
Daun tua seperti bintik-bintik coklat bekas ditusuk
Pada penelitian ini menerapkan 2 metode inferensi forward chaining dan backward
chaining sehingga memudahkan proses diagnosa penyakit padi. Proses diagnosa dapat berupa
konsultasi yang dimulai dari menanyakan gejala-gejala pada tanaman padi, dan yang kedua
proses diagnosa dapat dengan memilih daftar penyakit sehingga akan memunculkan infomasi
tentang penyebab dan langkah-langkah penanganan penyakit tersebut.
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
12/48
Laporan Pengantar Intelegensi Buatan 9
BAB IV
PROGRAM PAKAR TANAMAN PADI
4.1. Abstrak Pembuatan Program Pakar Tanaman Padi
Tanaman padi dapat diserang berbagai macam penyakit, penyakit tersebut dapat
diketahui dari gejala-gejala yang ditimbulkannya, akan tetapi untuk mengetahui secara tepat
jenis penyakit yang menyerang padi tersebut, memerlukan seorang pakar/ahli pertanian.
Sedangkan jumlah pakar pertanian terbatas dan tidak dapat mengatasi permasalahan petani
dalam waktu yang bersamaan, sehingga diperlukan suatu sistem yang mempunyai
kemampuan seperti seorang pakar, yang mana didalam sistem ini berisi pengetahuan keahlianseorang pakar pertanian mengenai penyakit dan gejala tanaman padi.
Pada penelitian ini dirancang sistem pakar berbasis web menggunakan basis aturan
(rule based reasoning) dengan metode inferensi forward chaining dan backward chaining
yang dimaksudkan untuk membantu petani dalam mendiagnosa penyakit tanaman padi.
Sistem pakar diagnosa penyakit tanaman padi berbasis web yang telah dikembangkan
mempunyai keunggulan dalam kemudahan akses dan kemudahan pemakaian. Dengan fitur
yang berbasis web yang dimiliki, sistem pakar untuk diagnosa penyakit tanaman padi yang
telah dibangun dapat digunakan sebagai alat bantu untuk diagnosa penyakit tanaman padi dan
dapat diakses oleh petani dimanapun juga untuk mengatasi persoalan keterbatasan jumlah
pakar pertanian dalam membantu petani mendiagnosa penyakit tanaman padi.
4.2. Perancangan
4.2.1 Pembuatan Database
Nama Database : pakartanamanpadi;
Tabel 4.1 Penyakit
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
13/48
Laporan Pengantar Intelegensi Buatan 10
Tabel 4.2 Gejala
Tabel 4.3 Relasi
Tabel 4.4 Hasil Analisa
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
14/48
Laporan Pengantar Intelegensi Buatan 11
Tabel 4.5 Temp Penyakit
Tabel 4.6 Temp Gejala
Tabel 4.7 Temp Analisa
Tabel 4.8 Temp Pasien
Tabel 4.9 Hasil relasi tabel untuk sistem pakar
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
15/48
Laporan Pengantar Intelegensi Buatan 12
4.2.2 Pembuatan Halaman Program Untuk Penelusuran
Script untuk koneksi ke Database
Script Kode Auto Membuat Program Index
SISTEM PAKAR TANAMAN PADI < /title>
Selamat Datang !! Semoga Apa yang
Kami Buat Bisa Membantu Anda
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
16/48
Laporan Pengantar Intelegensi Buatan 13
MENU
+ Daftar Penyakit
+ Konsultasi
+ Pertolongan
+ Masuk Pakar
Membuat Header
Header
< img src="../image/header.gif">< /td>
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
17/48
Laporan Pengantar Intelegensi Buatan 14
Membuat Footer
footer
Copy Right @ Majalengka, Indonesia
Dikembangkan oleh Kelompok 5
Yayat S, Tryo M, Vieka D P, Susri H, Robi S.
< b> Teknik Informatika III DScript Untuk Membuka Program
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
18/48
Laporan Pengantar Intelegensi Buatan 15
else {
echo "FILE PROGRAM FORM KONSULTASI TIDAK ADA";
}
}
elseif ($page = = "konsulcek") {
if (file_exists ("konsultasiperiksa.php") ) {
include "konsultasiperiksa.php";
}else {
echo "FILE PROGRAM KONSULTASI PERIKSA TIDAK ADA";
}
}
// Saat penulurusan penyakit didapatkan
elseif ($page == "hasil") {
if (file_exists ("ana lisahasil.php") ) {
include "analisahasil.php";
}
else {
echo "FILE PROGRAM ANALISA HASIL TIDAK ADA";
}
}
// Saat kita mengklik menu pertolonganelseif ($page == "tolong") {
if (file_exists ("Penjelasan.php") ) {
include "Penjelasan.php";
}
else {
echo "FILE PROGRAM PERTOLONGAN TIDAK ADA";
}
}
?>
Membuat Program Pendaftaran
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
19/48
Laporan Pengantar Intelegensi Buatan 16
//SQL simpan data pasien
$sql = "insert into tmppasien (nama, sex, alamat, pekerjaan, noip, tanggal)
values ('$txtnama', '$rbsex', '$txtalamat', '$txtpekerjaan', '$NoIp', NOW() )";
mysql_query($sql, $koneksi)
or die ("SQL Error 2".mysql_error() );
//SQL hapus data tempora ri penyakit
$sqlhapus="DELETE F ROM tmppenyakit WHERE noip='$NoIp'";
mysql_query($sqlhapus, $koneksi)or die ("SQL Error 1".mysql_error() );
//SQL hapus data tempora ri ana lisa
$sqlhapus2="DELETE FROM tmpanalisa WHERE noip='$NoIp'";
mysql_query($sqlhapus2, $koneksi)
or die ("SQL Error 2".mysql_error() );
//SQL hapus data tempora ri gejala
$sqlhapus3="DELETE FROM tmpgejala WHERE noip='$NoIp'";
mysql_query($sqlhapus3, $koneksi)
or die ("SQL Error 3".mysql_error() );
//perintah untuk redireksi
echo "< meta http-equiv=' refresh' content='0; url=index.php?page=konsul'>";
}
?>
Script untuk menyimpan hasil pendaftaran
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
20/48
Laporan Pengantar Intelegensi Buatan 17
//SQL hapus data tempora ri ana lisa
$sqlhapus2="DELETE FROM tmpanalisa WHERE noip='$NoIp'";
mysql_query($sqlhapus2, $koneksi)
or die ("SQL Error 2".mysql_error() );
//SQL hapus data tempora ri gejala
$sqlhapus3="DELETE FROM tmpgejala WHERE noip='$NoIp'";
mysql_query($sqlhapus3, $koneksi)
or die ("SQL Error 3".mysql_error() );
//perintah untuk redireksi
echo "";
}
?>
Membuat Program Penelusuran
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
21/48
Laporan Pengantar Intelegensi Buatan 18
$qryg = mysql_query ($sqlg, $koneksi);
$datag = mysql_fetch_array ($qryg);
$KodeGejala = $datag['KodeGejala'];
$gejala = $datag['NamaGejala'];
}
else
{//seandainya tmp kosong
//ambil data gejala dari tabel gejala
$sqlg = "SELECT * FROM gejala ORDER BYKodeGejala LIMIT 1";
$qryg = mysql_query($sqlg, $koneksi);
$datag = mysql_fetch_array($qryg);
$KodeGejala = $datag['KodeGejala'];
$gejala = $datag['NamaGejala'];
}
?>
From Masukan data Pasien
JAWABLAH PERTANYAAN BERIKUT : < /b>
Apakah Padi Anda Mengalami ?
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
22/48
Laporan Pengantar Intelegensi Buatan 19
$qry_sakit = mysql_query($sql_sakit);
while ($data_sakit = mysql_fetch_array($qry_sakit))
{
//Data yang didapatkan dari query di atas
//Dimasukan ke dalam tmpanalisa
$sqltmp = "INSERT INTO tmpanalisa (NoIp, KodePenyakit, KodeGejala)
VALUES ('$Ip', '$data_sakit[KodePenyakit]', '$data_sakit[KodeGejala]')";
mysql_query($sqltmp);}
}
#Fungsi untuk menambah tmp gejala
function addtmpgejala($KodeGejala, $Ip)
{
$sql_gejala = "INSERT INTO tmpgejala (NoIp,KodeGejala) VALUES ('$Ip','$KodeGejala')";
mysql_query($sql_gejala);
}
#Fungsi untuk mengosongkan tabel tmp penyakit
function deltmpsakit($Ip)
{
$sql_del = "DELETE FROM tmppenyakit WHERE NoIp='$Ip'";
mysql_query($sql_del);
}#Fungsi untuk mengosongkan ta bel tmp analisa
function deltmpanalisa ($Ip)
{
$sql_del = "DELETE FROM tmpanalisa WHERE NoIp='$Ip'";
mysql_query($sql_del);
}
## pemeriksaan jawaban penelusuran 1
## Apabila pilih jawaban YA/Benar
if ($rbpilih = = "YA")
{
//Periksa Apakah data ada di tmp anal isa
$sql_analisa = "SELECT * FROM tmpanalisa";
$qry_analisa = mysql_query($sql_analisa , $koneksi);
$data_cek = mysql_num_rows($qry_analisa);if ($data_cek >= 1)
{
#perintah apabila tmp analisa tidak kosong
//kosongkan dulu daftar penyakit
deltmpsakit($NoIp);
//sql untuk mengambil data tmpanalisa
//yang kode gejalanya dipilih oleh pasien
$sql_tmp = "SELECT * FROM tmpanalisa WHERE KodeGejala='$txtKodeGejala'
AND NoIp='$NoIp'";
$qry_tmp = mysql_query($sql_tmp, $koneksi);
while ($data_tmp = mysql_fetch_array($qry_tmp))
{
//sql untuk ambil data r elasi yang//kode penyakit ada di dalam tbl tmpanalisa
$sql_rsakit = "SELECT * FROM relasi WHERE KodePenyakit='$data_tmp[KodePenyakit]'
GROUP BYKodePenyakit";
$qry_rsakit = mysql_query($sql_rsakit);
while ($data_rsakit = mysql_fetch_array($qry_rsakit))
{
//hasil query di atas dipindahkan ke
//tabel tmp penyakit
//jadi hanya penyakit yang mungkin
$sql_input = "INSERT INTO tmppenyakit (NoIp,KodePenyakit
VALUES ('$NoIp','$data_rsakit[KodePenyakit]')";
mysql_query($sql_input, $koneksi);
}
}
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
23/48
Laporan Pengantar Intelegensi Buatan 20
//memanggil fungsi
deltmpanalisa($NoIp);
//fungsi mengisi data tmp analisa
addtmpanalisa($txtKodeGejala, $NoIp);
addtmpgejala($txtKodeGejala, $NoIp);
}
else{
#perintah apabila tmpanalisa masih kosong
//sql untuk mengambil data relasi
//yang KodeGejalanya dipilih oleh pasien
$sql_rgejala = "SELECT * FROM relasi WHERE KodeGejala='txtKodeGejala'";
$qry_rgejala = mysql_query($sql_rgejala);
while ($data_rgejala = mysql_fetch_array($qry_rgejala))
{
//ambil data r elasi yang kode penyakit
//sesuai dengan query sebelumnya(relasi)
$sql_rsakit = "SELECT * FROM relasi WHERE
KodePenyakit='$data_rgejala[KodePenyakit]' GROUP BYKodePenyakit";
$qry_rsakit = mysql_query($sql_rsakit);
while ($data_rsakit = mysql_fetch_array($qry_rsakit)){
//hasil query di simpan dala m tabel
//tmp penyakit
$sql_input = "INSERT INTO tmppenyakit (NoIp,KodePenyakit) VALUES
('$NoIp','$data_rsakit[KodePenyakit]')";
mysql_query($sql_input, $koneksi);
}
}
//fungsi menambah data ke tmp analisa
addtmpanalisa($txtKodeGejala, $NoIp);
//fungsi menambah data ke tmp gejala
addtmpgejala($txtKodeGejala, $NoIp);
}//redireksi
echo "";
}
## Pemeriksaan jawaban penelusuran 2
## Apabila memilih tombol tidak
if ($rbpilih == "TIDAK")
{
//ambil semua data dar i tmp analisa
$sql_analisa = "SELECT * FROM tmpanalisa";
$qry_analisa = mysql_query($sql_analisa , $koneksi);
$data_cek = mysql_num_rows($qry_analisa);
if ($dat_cek >= 1)
{#apabila data tmp analisa tidak kosong
#hapus tmpanalisa yang tidak sesuai
//apabila data KodePenyakit yang dipilih
//dari tabel tmpanalisa, syarat yang gejalanya
//telah dipilih
$sql_relasi = "SELECT * FROM tmpanalisa WHERE KodeGejala= '$txtKodeGejala'";
$qry_relasi = mysql_query($sql_relasi, $koneksi);
while ($hsl_relasi = mysql_fetch_array($qry_relasi))
{
//perintah hapus tmp analisa dar i
//data kode penyakit yang didapat
$sql_deltmp = "DELETE FROM tmpanalisa WHERE
KodePenyakit='$hsl_relasi[KodePenyakit]' AND NoIp='$NoIp'";mysql_query($sql_deltmp, $koneksi);
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
24/48
Laporan Pengantar Intelegensi Buatan 21
//hapus juga daftar penyakit dari
//tabel tmppenyakit
//syarat ikuti sql di atas
$sql_deltmp2 = "DELETE FROM tmppenyakit WHERE
KodePenyakit='$hsl_relasi[KodePenyakit]' AND NoIp='$NoIp'";
mysql_query($sql_deltmp2, $koneksi);
}
}else
{
#apabila data tmp analisa kosong
#pindahkan data relasi ke tmpanalisa
//ambil daftar da ta dulu dar i relasi
$sql_relasi= "SELECT * FROM relasi ORDER BYKodePenyakit,KodeGejala";
$qry_relasi= mysql_query($sql_relasi, $koneksi);
while ($hsl_relasi=mysql_fetch_array($qry_relasi))
{
//perintah sql untuk memindah data ke
//tmpanalisa
$sql_intmp = "INSERT INTO tmpanalisa (NoIp,KodePenyakit,KodeGejala)
VALUES ('$NoIp','$hsl_relasi[KodePenyakit]','$hsl_relasi[KodeGejala]')";mysql_query ($sql_intmp, $koneksi);
//masukan juga info penyakit ke tabel tmp
$sql_intmp2 = "INSERT INTO tmppenyakit (NoIp,KodePenyakit) VALUES
('$NoIp','$hsl_relasi[KodePenyakit]')";
mysql_query ($sql_intmp2, $koneksi);
}
#Hapus tmpanalisa yang tidak sesuai
$sql_relasi2 = "SELECT * FROM relasi WHERE KodeGejala= '$txtKodeGejala'";
$qry_relasi2 = mysql_query($sql_relasi2);
while($hsl_relasi2=mysql_fetch_array($qry_relasi2))
{
//perintah hapus tmpanalisa
$sql_deltmp = "DELETE FROM tmpanalisa WHERE
KodePenyakit='$hsl_relasi2[KodePenyakit]' AND NoIp='$NoIp'";mysql_query($sql_deltmp, $koneksi);
//perintah ha pus data tmp penyakit
$sql_deltmp2 = "DELETE FROM tmppenyakit WHERE
KodePenyakit='$hsl_relasi2[KodePenyakit]' AND NoIp='$NoIp'";
mysql_query($sql_deltmp2, $koneksi);
}
}
//redireksi
echo "";
}
?>
Membuat Program Halaman Hasil
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
25/48
Laporan Pengantar Intelegensi Buatan 22
{
$sex = "PRIA";
}
else
{
$sex = "WANITA";
}
?>
Hasil Analisa Pasien
Hasil Analisa Penyakit Tanaman Padi< /b>< /td>
DATA PASIEN :< /b>< /td>
Nama
Sex
Alamat
Pekerjaan
< ?php echo $data['Pekerjaan']; ?>
Hasil Analisa Terakhir
Penyakit
Nama Ilmiah
Gejala
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
26/48
Laporan Pengantar Intelegensi Buatan 23
Keterangan
Solusi
4.2.3 Membuat Halaman Program Untuk Pakar
Membuat Program Tambah Gejala
Masukan Data Gejala
< table width="400" border="0" cellspacing="1" cellpadding="2" bgcolor="#22b5dd">
Masukan Gejala Penyakit
Kode
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
27/48
Laporan Pengantar Intelegensi Buatan 24
include "gejalaaddfm.php";
}
elseif (trim($txtgejala)=="")
{
echo "Gejala masih kosong, ulangi kembali";
include "gejalaaddfm.php";
}
else{
$sql = "INSERT INTO gejala (KodeGejala,NamaGejala)";
$sql.= "VALUES ('$txtkodeH','$txtgejala')" ;
mysql_query ($sql,$koneksi) or die ("SQL ERROR".mysql_error());
$pesan="Data Berhasil Disimpan";
header("location:gejalaaddfm.php?pesan=$pesan");
}
?>
Membuat Program Untuk Menampilkan Semua Gejala
Tampilan Data Gejala
< table width="450" border= "0" cellpadding="2" cellspacing="1" bgcolor= "#DBEAF5">
< b>DAFTAR SEMUA GEJALA< /td>
No
Nama Gejala
Pilihan
< ?php echo $no; ?>
< ?php echo $data['NamaGejala']; ?>
< a href="gejalaeditfm.php?kdubah = "
target="_self">Ubah
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
28/48
Laporan Pengantar Intelegensi Buatan 25
Program untuk menghapus gejala
Merubah Data Gejala
< table width="400" border= "0" cellspacing="4" cellpadding="0" cellspacing="1" bgcolor="#77B6D0">
Merubah Gejala Penyakit
Kode
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
29/48
Laporan Pengantar Intelegensi Buatan 26
Script untuk menyimpan hasil gejala yang sudah dirubah
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
30/48
Laporan Pengantar Intelegensi Buatan 27
Solusi
Script untuk menyimpan hasil penambahan Penyakit
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
31/48
Laporan Pengantar Intelegensi Buatan 28
Membuat Program Untuk Menampilkan Semua Penyakit
Tampilan Data Penyakit
< table width="500" border= "0" cellpadding="2" cellspacing="1" bgcolor= "#DBEAF5">
DAFTAR SEMUA PENYAKIT< /td>
No
Nama Penyakit
Nama Ilmiah
Pilihan
< ?php echo $no; ?>
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
32/48
Laporan Pengantar Intelegensi Buatan 29
echo "DATA PENYAKIT BELUM DIPILIH";
}
?>
Program untuk mengubah Penyakit
Merubah Data Penyakit
< table width="450" border= "0" cellpadding="2" cellspacing="1" bgcolor= "#77b6d0">
MERUBAH DATA PENYAKIT
Kode
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
33/48
Laporan Pengantar Intelegensi Buatan 30
Script untuk menyimpan hasil penyakit yang sudah dirubah
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
34/48
Laporan Pengantar Intelegensi Buatan 31
Halaman Buat Relasi Gejala Penyakit
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
35/48
Laporan Pengantar Intelegensi Buatan 32
}
else
{
$cek = "";
$bg = "#ffffff";
}
?>
Script untuk menyimpan penambahan relasi yang dipilih
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
36/48
Laporan Pengantar Intelegensi Buatan 33
mysql_query($sqldel);
}
}
}
#untuk data gejala tambahan
for ($i = 0; $i < $jum; + +$i)
{
//perintah untuk mendapat r elasi$sqlr = "SELECT * FROM relasi";
$sqlr .= "WHERE KodePenyakit='$txtkodeH'";
$sqlr .= "AND KodeGejala= '$cekgejala[$i]'";
$qryr = mysql_query($sqlr, $koneksi);
$cocok = mysql_num_rows($qryr);
//gejala yg baru akan disimpan
if (! $cocok==1)
{
$sql = "INSERT INTO rela si(KodePenyakit,KodeGejala)";
$sql .= "VALUES ('$txtkodeH','$cekgejala[ $i]')" ;
mysql_query ($sql, $koneksi) or die ("SQL INPUT RELASI GAGAL".mysql_error());
}
}
//pesan sebagai konfirmasi$pesan = "SUKSES DISIMPAN";
header("Location: relasiaddpilih.php?kdsakit=$txtkodeH&info=$pesan");
}
}
?>
Program laporan menampilkan semua penyakit
Tampilan Data Penyakit
< table width="817" border= "0" cellpadding="2" cellspacing="1" bgcolor= "#22B5DD">
DAFTAR SEMUA PENYAKIT
Kode
< ?php echo $data['KodePenyakit']; ?>< /td>
Nama Indonesia< /td>
Nama Ilmiah
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
37/48
Laporan Pengantar Intelegensi Buatan 34
Definisi
Solusi
Program laporan menampilkan gejala per penyakit
Langkah 1:
Halaman Buat Relasi Gejala Penyakit
< table width="400" border="0" cellpadding="2" cellspacing="1" bgcolor= "#99FFFF">
Tampilkan Gejala Per Penyakit
< b>Penyakit : < /b>
[ DAFTAR PENYAKIT ]< /option>
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
38/48
Laporan Pengantar Intelegensi Buatan 35
Langkah 2:
Tampilan Data Gejala< /title>
Nama Penyakit : < /b>
Daftar Gejala< /td>
No
Kode
< b>Nama Gejala< /b>< /td>
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
39/48
Laporan Pengantar Intelegensi Buatan 36
while ($datag = mysql_fetch_array($qryg))
{
$no++;
?>
4.2.4 Membuat Login Dan Menu Utama Pakar
Membuat Program Login
Form Login Pakar< /title>
LOGIN PAKAR
Username
:
Password
:
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
40/48
Laporan Pengantar Intelegensi Buatan 37
Script untuk memeriksa proses login
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
41/48
Laporan Pengantar Intelegensi Buatan 38
Membuat Menu
Menu
[ Input Penyakit/ Input Gejala
/ Input Relasi< /a> ]
[ Ubah Penyakit
/ Ubah Gejala< /a> ]
[ Lap Penyakit
/ Lap Gejala
/ Logout ]
Program Index
PAKAR TANAMAN PADI v 1.0< /title>
4.3. Tampilan/Design Yang Sudah Dibuat
Halaman Utama
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
42/48
Laporan Pengantar Intelegensi Buatan 39
Halaman Daftar Penyakit
Halaman Daftar Semua Gejala
Halaman Konsultasi
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
43/48
Laporan Pengantar Intelegensi Buatan 40
Halaman Konsultasi 2 (pertanyaan)
Saat klik menu Pertolongan
Saat klik Masuk Pakar
Halaman Login
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
44/48
Laporan Pengantar Intelegensi Buatan 41
Halaman Setelah berhasil login (Menu Utama untuk Pakar)
Halaman input penyakit
Halaman input gejala
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
45/48
Laporan Pengantar Intelegensi Buatan 42
Halaman input relasi
Halaman daftar semua gejala
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
46/48
Laporan Pengantar Intelegensi Buatan 43
Ubah gejala
Halaman Daftar semua penyakit
Ubah penyakit
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
47/48
Laporan Pengantar Intelegensi Buatan 44
Laporan gejala
Laporan penyakit
-
7/24/2019 Sistem Pakar Diagnosa Penyakit Tanaman Padi
48/48
BAB V
PENUTUP
Kesimpulan
Sistem pakar untuk mendiagnosa jenis penyakit pada tanaman padi dapat membantu
petani mendiagnosa jenis penyakit dan memberikan pengetahuan tentang jenis penyakit
tersebut. Sistem ini dibangun untuk menyimpan pengetahuan keahlian seorang pakar
pertanian khususnya tanaman padi, sehingga sistem dapat dijadikan asisten pandai di
bidangnya sebagai sumber pengetahuan oleh user. Pembangunan sistem dirancang
sedemikian rupa sehingga dapat mengadopsi perkembangan penyakit penalaran yangdigunakan berbasis aturan (Rule-Based Reasoning) dengan metode inferensi forward
chaining dan backward chaining. Implementasi sistem pakar dalam bentuk web sangat
membantu memberikan kemudahan bagi user dalam mengaksesnya.
Saran
Laporan ini masih jauh dari sempurna. Penulis harapkan kritikan dan sarannya agar
dalam pembuatan suatu laporan bisa lebih baik lagi.