bab 2 tinjauan pustaka sistem pakar penyakit kucing

20
BAB II TINJAUAN PUSTAKA 2.1 Sistem Pendukung Keputusan 2.1.1 Struktur Sistem Pakar Sistem pakar disusun oleh dua bagian utama, yaitu lingkungan pengembangan (development environment) dan lingkungan konsultasi (consultation environment). Lingkungan pengembangan sistem pakar digunakan oleh pembangun sistem pakar (ES builder) untuk membangun komponen dan untuk memasukan pengetahuan pakar ke dalam lingkungan sistem pakar (basis pengetahuan). Sedangkan lingkungan konsultasi digunakan oleh pengguna yang bukan pakar (nonexpert) guna memperoleh pengetahuan dan saran setara pakar. Dibawah ini merupakan gambar dari struktur sistem pakar menurut Turban. 4

Upload: sukajamur

Post on 19-Jan-2016

77 views

Category:

Documents


1 download

DESCRIPTION

BAB II Tinjauan PustakaPengertian Sistem Pakar dan penyakit kucing dengan menggunakan metode Case Based Reasoning (CBR)

TRANSCRIPT

Page 1: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

BAB II

TINJAUAN PUSTAKA

2.1 Sistem Pendukung Keputusan

2.1.1 Struktur Sistem Pakar

Sistem pakar disusun oleh dua bagian utama, yaitu lingkungan pengembangan

(development environment) dan lingkungan konsultasi (consultation environment).

Lingkungan pengembangan sistem pakar digunakan oleh pembangun sistem pakar

(ES builder) untuk membangun komponen dan untuk memasukan pengetahuan pakar

ke dalam lingkungan sistem pakar (basis pengetahuan). Sedangkan lingkungan

konsultasi digunakan oleh pengguna yang bukan pakar (nonexpert) guna memperoleh

pengetahuan dan saran setara pakar.

Dibawah ini merupakan gambar dari struktur sistem pakar menurut Turban.

Gambar 2.1 Struktur Sistem Pakar

4

Page 2: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

5

Penjelasan :

1. Antar muka (user interface)

Merupakan interaksi antara pengguna dengan sistem pakar

2. Basis pengetahuan

Basis pengetahuan berisi pengetahuan-pengetahuan dalam penyelesaian masalah

dalam domain tertentu. Dua jenis basis pengetahuan adalah fakta (yaitu situasi

dan teori) dan rule (heuristics atau aturan-aturan)

3. Akuisisi pengetahuan (knowledge acquisition)

Pemindahan kemampuan menyelesaikan masalah dari sumber pengetahuan ke

basis pengetahuan

4. Mesin inferensi

Merupakan metodologi penalaran informasi dalam basis pengetahuan dan

workplace untuk membuat kesimpulan

5. Workplace

Merupakan tempat penyimpanan hasil-hasil antara dan kesimpulan yang dicapai

6. Fasilitas penjelasan

Komponen tambahan yang akan meningkatkan kemampuan sistem pakar

7. Perbaikan pengetahuan

Perubahan oleh pakar apabila terdapat kesalahan

2.2 Case Based Reasoning

Cased Based Reasoning adalah pendekatan untuk membangun sistem pakar

dengan mengakses solusi yang pernah ada (disebut kasus) agar dapat mengambil

kesimpulan dari masalah-masalah yang akan datang. Cased Based Reasoning

melibatkan pertimbangan tentang kasus dalam jumlah besar dan bagaimana solusi

sebelumnya dapat diadaptasikan dari permasalahan baru atau bagaimana solusi

sebelumnya dapat dihubungkan dengan kasus-kasus baru.

Page 3: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

6

2.2.1 Komponen Cased Based ReasoningKomponen penting yang terdapat dalam Cased Based Reasoning antara lain :

1. Basis Pengetahuan (Knowledge Base)

Basis Pengetahuan adalah kumpulan dari domain pengetahuan yang berisi

semua informasi tentang sesuatu objek yang berupa fakta (data) dan aturan

tersebut digunakan sebagai dasar untuk pengambilan keputusan. Basis

pengetahuan dapat berupa suatu aturan yang diperoleh dari pengamalan atau

dari seorang pakar pada bidang keahlian tertentu.

2. Basis data (data base)

Basis data adalah bagian yang mengandung semua fakta-fakta baik fakta

awal pada saat sistem mulai beroperasi namun fakta-fakta yang didapatkan

pada saat pengambilan kesimpulan sedang dilaksanakan. Dalam prakteknya,

basis data berada di dalam memori komputer. Kebanyakan aplikasi

mengandung basis data untuk menyimpan data hasil observasi dan data

lainnya yang dibutuhkan selama pengolahan.

3. Basis kasus (case base)

Basis kasus merupakan sebuah ruang penyimpanan yang digunakan untuk

menyimpan kasus-kasus yang telah ada sebelumnya, sebagai pertimbangan

untuk menyelesaikan kasus yang akan datang.

4. Antar muka pemakai (user interface)

Antar muka pemakai merupakan perangkat lunak yang menyediakan

sarana-sarana untuk pemakai agar dapat berkomunikasi dengan sistem. Antar

muka pemakai akan mengajukan pertanyaan dalam bentuk pilihan dan sistem

akan mengambil kesimpulan berdasarkan jawaban tersebut.

Page 4: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

7

5. Akuisisi pengetahuan (knowledge acquisition)

Beberapa teknik yang dilakukan dalam melaksanakan akuisisi

pengetahuan adalah :

Wawancara, yaitu knowledge engineer menjelaskan masalah dan konselor

(pakar) menjelaskan proses penyelesaian masalah.

Diskusi masalah, yaitu knowledge engineer menggali data, pengetahuan

dan prosedur yang dibutuhkan untuk menyelesaikan masalah dari

konselor.

Deskripsi masalah, yaitu konselor mendeskripsikan solusi pada setiap

kategori masalah dalam domain permasalahannya.

Analisa permasalahan, yaitu dengan memberikan beberapa persoalan pada

konselor untuk menyelesaikan rangkaian penalarannya.

2.2.2 Siklus Cased Based ReasoningSecara umum terdapat level pada siklus CBR yang dapat digambarkan sebagai

berikut:

1. Retrieve (memperoleh kembali) kasus-kasus yang paling mirip.

Dimulai dengan pendeskripsian satu atau sebagian masalah dan berakhir

apabila telah ditemukan kasus sebelumnya yang paling cocok. Sub task

mengacu pada identifier fitur, pencocokan awal, pencarian dan pemilihan.

2. Reuse ( menggunakan) informasi dan pengetahuan dari kasus tersebut untuk

memecahkan pemasukan.

Proses reuse dari solusi kasus di peroleh dalam konteks kasus baru di

fokuskan pada 2 aspek yaitu :

1. Perbedaan antara kasus yang sebelumnya dan yang sekarang.

2. Bagian apa dari kasus yang telah diperoleh yang dapat ditransfer menjadi

kasus baru.

Page 5: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

8

3. Revise (meninjau kembali atau memperbaiki ) usulan solusi

Fase ini terdiri dari 2 tugas yaitu :

1. Mengevalasi solusi kasus yang dihasilkan oleh proses reuse. Jika berhasil

maka dilanjutkan dengan proses retain

2. Jika tidak maka memperbaiki solusi kasus menggunakan domain spesifik

pengetahuan

4. Retain ( menyimpan) bagian-bagian dari pengalaman tersebut yang mungkin

berguna untuk memecahkan masalah di masa-masa yang akan datang.

Proses ini terdiri dari memilih informasi apa dari kasus yang akan disimpan.

Disimpan dalam bentuk apa, cara menyusun kasus agar mudah untuk

menentukan masalah yang mirip, dan bagaimanan mengintegrasikan kasus

baru pada struktur memori.

Gambar. 2.1 Siklus CBR

Pada saat terjadi permasalahan baru, pertama-tama sistem akan melakukan

proses Retrieve. Proses Retrieve akan melakukan dua langkah pemrosesan, yaitu

pengenalan masalah dan pencarian persamaan masalah pada database. Setelah proses

Page 6: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

9

Retrieve selesai dilakukan, selanjutnya sistem akan melakukan proses Reuse. Di

dalam proses Reuse, sistem akan menggunakan informasi permasalahan sebelumnya

yang memiliki kesamaan untuk menyelesaikan permasalahan yang baru. Pada proses

Reuse akan menyalin, menyeleksi, dan melengkapi informasi yang akan digunakan.

Selanjutnya pada proses Revise, informasi tersebut akan dikalkulasi, dievaluasi, dan

diperbaiki kembali untuk mengatasi kesalahan-kesalahan yang terjadi pada

permasalahan baru. Pada proses terakhir, sistem akan melakukan proses Retain.

Proses Retain akan mengindeks,mengintegrasi, dan mengekstrak solusi yang baru.

Selanjutnya, solusi baru itu akan disimpan ke dalam knowledge-base untuk

menyelesaikan permasalahan yang akan datang. Tentunya, permasalahan yang akan

diselesaikan adalah permasalahan yang memiliki kesamaan dengannya.

2.3 Penerapan Algoritma Nearest Neighbor Retrieval Pada Metode Case Based

Reasoning

Algoritma Nearest Neighbor Retrieval (k-nearest neighbor atau k-NN) adalah

sebuah algoritma untuk melakukan klasifikasi terhadap objek berdasarkan data

pembelajaran yang jaraknya paling dekat dengan objek tersebut. Kasus khusus di

mana klasifikasi diprediksikan berdasarkan data pembelajaran yang paling dekat

(dengan kata lain, k = 1) disebut algoritma nearest neighbor.

Algoritma nearest neighbor berdasarkan pada proses pembelajaran

menggunakan analogi / learning by analogi. Training sampelnya dideskripsikan

dalam bentuk atribut numerik n-dimensi. Tiap sampel mewakili titik pda ruang n-

dimensi. Dengan cara ini, semua training sampel disimpan pada pola ruang n-

dimensi. Ketika diberikan “unknown” sampel, k-nearest neighbor classifier mencari

pola ruang K training sampel yang paling dekat dengan “unknown” sampel tersebut.

K training sampel ini adalah k nearest neighbor dari unknown sampel. Unknown

sampel ditetapkan dengan class yang paling umum diantara k nearest neighborsnya.

Ketika k = 1, unknown sampel ditetapkan dengan class dari training sampel yang

paling dekat dengan pola ruangnya.

Page 7: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

10

Algoritma nearest neighbor retrieval menyimpan semua training sampel dan

tidak membangun classifier sampai sampel baru (unlabeled) perlu diklasifikasikan,

sehingga algoritma nearest neighbor retrieval sering disebut dengan instance-based

atau lazy learners.

Rumus untuk menghitung bobot kemiripan (similarity) dengan nearest

neighbor retrieval adalah:

Similarity (problem,case) = s1*w1+ s2*w2+ …… + sn*wn w1 + w2 + …… + wn

Keterangan:

S = similiarity (nilai kemiripan)

W = weight (nilai bobot yang diberikan)

2.4 Alat Perancangan Sistem

2.4.1 UML

Menurut Nugroho (2005), UML (Unified Modeling Language) adalah

bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma

berorientasi objek. Pemodelan (modeling) sesungguhnya digunakan untuk

penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa

sehingga lebih mudah dipelajari dan dipahami.

Menurut Nugroho (2009), “UML (Unified Modeling Language) adalah

Metodologi kolaborasi antara metoda-metoda Booch, OMT (Object Modeling

Technique), serta OOSE (object Oriented Software Enggineering) dan beberapa

metoda lainnya, merupakan metodologi yang paling sering digunakan saat ini

untuk analisa dan perancangan sistem dengan metodologi berorientasi objek

mengadaptasi maraknya penggunaan bahasa “pemrograman berorientasi objek”

(OOP)”.

Berdasarkan pendapat yang dikemukakan di atas dapat ditarik kesimpulan

bahwa “Unified Modelling Language (UML) adalah sebuah bahasa yang

berdasarkan grafik atau gambar untuk menvisualisasikan, menspesifikasikan,

Page 8: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

11

membangun dan pendokumentasian dari sebuah sistem pengembangan

perangkat lunak berbasis Objek (Object Oriented programming)”. Diagram

UML antara lain:

1. Use case diagram

Gambar 2.2 Simbol-Simbol Use Case Diagram

2. Activity Diagram

Gambar 2.3 Simbol-Simbol Activity Diagram

3. Sequence Diagram

Page 9: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

12

Gambar 2.4 Simbol-Simbol Sequence Diagram

2.4.2 Data Flow Diagram (DFD)

Pengertian Data Flow Diagram (DFD) menurut Hartono (2005) adalah

diagram yang menggunakan notasi symbol untuk menggambarkan arus data

system. DFD sering digunakan untuk menggambarkan suatu sistem yang telah

ada atau sistem yang baru yang akan dikembangkan secara logika dan

menjelaskan arus data dari mulai pemasukan sampai dengan keluaran data

tingkatan diagram arus data mulai dari diagram konteks yang menjelaskan

secara umum suatu sistem atau batasan sistem dari level 0 dikembangkan

menjadi level 1 sampai sistem tergambarkan secara terperinci.

Page 10: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

13

Tabel 2.1 Simbol – Simbol DFD

SimbolNama

SimbolKeterangan

External

Entity

Kesatuan lingkungan luar sistem yang

memberikan input atau output dari sistem

Arus DataArus data yang dapat berupa masukan

untuk system atau hasil dari proses sistem

Proses

Kegiatan yang dilakukan oleh orang,

mesin atau komputer dari hasil suatu

proses arus data yang akan keluar dari

proses

Data StoreMenunjukan media tempat penyimpanan

data

2.4.3 Flow Chart

Menurut Sutedjo (2002) flowchart merupakan metode untuk

menggambarkan tahap-tahap pemecahan masalah dengan merepresentasikan

symbol-simbol tertentu yang mudah dimengerti, mudah digunakan dan standar.

Tujuan utama penggunaan flowchart adalah untuk menggambarkan suatu tahap

penyelesaian masalah secara sederhana, terurai, rapi, dan jelas dengan

menggunakan symbol-simbol yang standar.

Page 11: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

14

Tabel 2.2 Simbol-Simbol Flow Chart

Gambar Simbol untuk Keterangan

Proses /

LangkahMenyatakan kegiatan yang akan ditampilkan dalam diagram alir.

Titik

Keputusan

Proses / Langkah dimana perlu adanya keputusan atau adanya

kondisi tertentu. Di titik ini selalu ada dua keluaran untuk

melanjutkan aliran kondisi yang berbeda.

Masukan /

Keluaran DataDigunakan untuk mewakili data masuk, atau data keluar.

Terminasi Menunjukkan awal atau akhir sebuah proses.

Garis alir Menunjukkan arah aliran proses atau algoritma.

Kontrol /

Inspeksi

Menunjukkan proses / langkah dimana ada inspeksi atau

pengontrolan.

2.5 Alat Pengembang Sistem

Page 12: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

15

2.5.1 HTML

Menurut Nugroho (2004) HTML adalah Hyper Text Markup Language

yang merupakan sebuah bahasa scripting berguna untuk menuliskan halaman

web. Pada web, HTML dijadikan sebagai Bahasa Script dasar yang berjalan

bersama berbagai bahasa scripting pemrograman lainnya. Semua tag-tag HTML

bersifat dinamis artinya kode HTML tidak dapat dijadikan sebagai file

executable program.

2.5.2 PHP

Menurut Swastika (2006) PHP merupakan bahasa berbentuk skrip yang

ditempatkan dalam server dan diproses di server. Hasilnya akan dikirim ke

client, tempat user menggunakan browser. PHP dikenal sebagai sebuah bahasa

scripting, yang menyatu dengan tag-tag HTML, dieksekusi di server, dan

digunakan untuk membuat halaman web yang dinamis.

2.6.3 Notepad++

Notepad++ adalah sebuah penyunting teks dan penyunting kode

sumber yang berjalan di sistem operasi Windows. Notepad ++ menggunakan

komponen Scintilla untuk dapat menampilkan dan menyintingkan tells dan

berkas kode sumber berbagai bahasa pemrograman, salah satunya PHP.

Notepad ++ ini juga mempunyai fitur yang sangat memudahkan kita

membedakan alur syntax yaitu fitur highlighting. Fitur ini akan menandai

sintaks dan variable yang digunakan dalam source code. Lainnya, tersedia fitur

tab yang dapat membantu anda mengelola beberapa kode dalam waktu

bersamaan.

2.6.4 MySQL

Page 13: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

16

MySQL merupakan salah satu software database (basis data) open

source yang dikembangkan sebuah komunitas bernama MySQL AB dengan

tujuan membantu user untuk menyimpan data dalam tabel-tabel. Tabel terdiri

atas field (kolom) yang mengelompokkan data-data berdasarkan kategori

tertentu, misalnya nama, alamat, nomor telepon, dan sebagainya. Bagian lain

dari tabel adalah record (baris) yang mencantumkan data sebenarnya. Terdapat

empat instruksi dasar yang digunakan dalam sql (structured query language),

yaitu :

a. select (menampilkan data)

b. insert (menginput atau menambah data)

c. update (mengubah data)

d. delete (menghapus data) dalam database.

2.6.5 XAMPP

XAMPP adalah aplikasi web server instan yang dibutuhkan untuk

membangun aplikasi berbasis web. Fungsi XAMPP adalah sebagai server yang

berdiri sendiri (localhost), yang terdiri atas program Apache, Http server,

MySQL, database, dan penterjemah bahasa yang ditulis dengan bahasa

pemrograman PHP dan Perl.

Nama XAMPP merupakan singkatan dari X (X=Cross Platform),

Apache, MySQL, Php, dan Perl. Program ini tersedia dalam lisensi GNU

(General Public License) dan gratis. Dengan menginstal XAMPP, kita tidak

perlu menginstal aplikasi server satu persatu, karena di dalam XAMPP sudah

terdapat :

a) Apache

b) MySQL

c) PHP

d) PHPMyAdmin

e) Perl

Page 14: BAB 2 Tinjauan Pustaka Sistem Pakar Penyakit Kucing

17

f) Filezilla FTP Server

g) Mercury Mail Transport System

2.6.6 Apache

Banyak pendapat yang mengemukakan pengertian dari Apache,

menurut pendapat Sukarno (2006) mengemukakan Apache merupakan web

server yang digunakan dalam pemrogramman web berbasis server.

Adapun pertimbangan memilih Apache adalah:

1. Apache termasuk dalam kategori free software

2. Instalasi Apache sangat mudah

3. Mampu beroperasi pda banyak platform

4. Apache mudah dalam penambahan peripheral lainnya ke dalam platform

web server