• Tidak ada hasil yang ditemukan

Identifikasi tumbuhan kacang-kacangan (Papilionaceae) menggunakan sistem pakar dengan pendekatan forward chaining

N/A
N/A
Protected

Academic year: 2017

Membagikan "Identifikasi tumbuhan kacang-kacangan (Papilionaceae) menggunakan sistem pakar dengan pendekatan forward chaining"

Copied!
111
0
0

Teks penuh

(1)

TAUFIQ 104091002887

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

(2)

viii

dari banyak pihak. Maka perkenankanlah penulis untuk mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Ibunda Siti Rahmah dan Ayahanda Masrikan, yang tidak pernah berhenti mendoakan, dan mendukung penulis dengan penuh kasih sayang. Terima kasih atas semua pengorbanan, usaha dan jerih payah Bunda dan Ayah untuk selalu membuat penulis merasa bahagia.

2. Kakakku, Nurul Huda Ahmad dan Adikku, Ani Musa Rofah, yang selalu penulis banggakan dan sayangi sepenuh hati

3. K.H. Ali Mustofa Ya’kub yang telah membimbing dan memberi pencerahan kepada penulis di semua bidang.

4. Intan Khairiyah, atas semua bentuk dukungan, motivasi dan kasih sayang yang selalu menemani hari-hari penulis.

5. Teman-teman TI C 2004 : Alvin, Wahyuni, Syukrina, Hani, Endah, Eni, Desi, Ziah, Sarah, Arie Sur, Rizal, Rahmat, Kautsarina, Budi, Asep, Malik, Sidiq, Fajar, Dwi, Rahmat Hidayat, Agil dan Egi. Terima kasih atas keceriaan, dukungan dan motivasi yang selalu kalian tunjukkan, terutama pada saat-saat sulit yang penulis alami, sehingga menumbuhkan semangat baru untuk penulis

(3)

ix

Jakarta, Nopember 2010

(4)

iv

BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.

Jakarta, Nopember 2010

Taufiq

(5)

v ABSTRAK

TAUFIQ. Identifikasi Tumbuhan Kacang-Kacangan (Papilionaceae) Menggunakan Sistem Pakar dengan Pendekatan Forward Chaining. Di bawah bimbing PRIYANTI dan VICTOR AMRIZAL.

Klasifikasi adalah kegiatan taksonomi yang mengelompokan makhluk hidup ke dalam sistem klasifikasi yang berlaku internasional. Pengklasifikasian perlu dilakukan karena keanekaragamannya makhluk hidup yang ada di bumi dengan tujuan agar mudah mengelompokan dan mengidentifikasinya berdasarkan persamaan ciri-ciri yang dimiliki.Indonesia adalah Negara yang kaya akan keaneragaman hayati terutama tumbuhan ( +28 ribu jenis). Papilionaceae merupakan tanaman penghasil komoditi yang berharga, bahan pangan dengan nilai gizi yang tinggi karena kandungannya akan protein, lemak, dan vitamin-vitamin dalam bijinya. Polong yang muda, demikian pula daun-daun muda jenis-jenis tertentu banyak yang dimakan sebagai sayuran. Namun masih sedikit sekali yang sudah tergali potensinya dan masih banyak penduduk yang belum mengetahui nama-nama tumbuhan tersebut. Padahal tanaman tersebut ditanam di pekarangan ataupun di ladang penduduk. Oleh karena itu, diperlukan aplikasi untuk pengidentifikasian tumbuhan untuk membantu orang dalam mengenali dan mempelajari tentang tumbuhan khususnya Papilionaceae. Identifikasi ini dapat dilakukan dengan optimal menggunakan sistem pakar dengan pendekatan forward chaining. Sistem pakar adalah bentuk sistem yang mengadopsi kemampuan manusia sehingga komputer mempunyai kemampuan layaknya seorang pakar. forward chaining adalah penalaran dari fakta menuju konklusi yang dihasilkan dari fakta. Pada tugas akhir ini akan dirancang sebuah aplikasi identifikasi tumbuhan kacang-kacangan (Papilionaceae) menggunakan sistem pakar dengan pendekatan forward chaining. Aplikasi ini dibuat dengan menggunakan bahasa pemograman MATLAB 2009 dan metode pengembangan sistemnya adalah RAD (Rapid Aplication Development) karena aplikasinya yang sederhana dan tidak memerlukan waktu yang lama dalam pengembangannya serta RAD akan bekerja dengan baik bila diterapkan pada aplikasi berskala kecil. Hasil yang diperoleh adalah dengan menggunakan metode forward chaining tumbuhan Paplilionaceae dapat diidentifikasi dengan baik.

(6)

vi

Syukur yang amat dalam penulis panjatkan kepada Allah SWT yang tiada hentinya memberikan nikmat kepada penulis khususnya keimanan, waktu dan kesehatan. Shalawat serta salam semoga senantiasa tercurah kepada Rasulullah SAW yang sangat menyayangi umatnya dan telah membawa kita kepada zaman yang terang benderang.

Skripsi yang berjudul IDENTIFIKASI TUMBUHAN KACANG-KACANGAN (PAPILIONACEAE) MENGGUNKAN SISTEM PAKAR DENGAN PENDEKATAN FORWARD CHAINING merupakan salah satu tugas wajib mahasiswa sebagai persyaratan untuk mengambil gelar S1 pada Program Studi Teknik Informatika Universitas Islam Negeri Syarif Hidayatullah Jakarta.

Penulis mendapat bimbingan dan bantuan dari berbagai pihak dalam penyusunan skripsi ini. Oleh karena itu, perkenankanlah pada kesempatan ini penulis mengucapkan terima kasih kepada :

1. Bapak DR. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas Sains dan Teknologi.

(7)

vii

banyak atas kesediaan Ibu dan Bapak yang telah meluangkan waktu, tenaga dan pikirannya untuk membimbing penulis dalam penyusunan skripsi ini. 4. Seluruh dosen yang telah membagikan ilmunya kepada penulis dengan sabar

dan ikhlas.

Pada kesempatan ini pula, penulis ingin memohon maaf yang sebesar-besarnya kepada semua pihak apabila sewaktu mengerjakan skripsi ini terdapat hal-hal yang kurang berkenan.

Penulis menyadari bahwa masih banyak kekurangan dari laporan skripsi ini, baik dari materi maupun teknik penyajiannya, mengingat minimnya pengetahuan dan pengalaman penulis. Semoga laporan skripsi ini dapat memenuhi syarat dan bermanfaat bagi siapa saja yang membacanya.

Wassalamualaikum wr.wb.

Jakarta, Nopember 2010

(8)

x

1.1 Latar Belakang... 1.2 Perumusan Masalah... 1.3 Pembatasan Masalah... 1.4 Tujuan Penelitian... 1.5 Manfaat Penelitian... 1.6 Metodologi Penelitian...

1.6.1 Metode Pengumpulan Data ………... 1.6.2 Metode Pengembangan Sistem ……….... 1.7 Sistematika Penulisan...

(9)

xi BAB II LANDASAN TEORI

2.1 Kecerdasan Buatan... 2.1.1 Definisi Kecerdasan Buatan... 2.1.2 Sejarah Kecerdasan Buatan... 2.4 Digital Image Processing... 2.4.1 Pengertian Citra... 2.4.2 Image Processing... 2.4.3 Pendeteksian Tepi (Edge Detectioan)... 2.5 Klasifikasi tumbuhan………... 2.6 MATLAB (Matrix Laboratory)... 2.6.1 Sekilas Tentang Matlab... 2.6.2 Cara Bekerja Dengan Matlab... 2.6.3 Perintah Kontrol………. 2.6.3.1 Struktur Kendali……….……..……

(10)

xii

2.6.3.2 Struktur Perulangan……….…… 2.6.4 Membentuk Fungsi…..……...………….….………...

2.6.5 GUIDE……….….………….

2.6.5.1 Memulai GUIDE………..….………... 2.6.5.2 Komponen GUIDE………...………..…. 2.7 RGB ………...…………. 2.8 JPEG ………... BAB III METODOLOGI PENELITIAN

3.1 Studi Pustaka... 3.2 Observasi Lapangan... 3.3 Model-Model Metode Pengembangan Sistem ... 3.4 Perbedaaan Metode Pengembangan Sistem...

3.5 Pemilihan Metode ………...

3.5.1 Teknik Pengumpulan Data... 3.5.2 Metode Pengembangan Sistem... 3.5.2.1 Fase Menentukan Syarat-Syarat... 3.5.2.2 Fase Perancangan... 3.5.2.3 Fase Konstruksi... 3.5.2.4 Fase Pelaksanaan ... BAB IV HASIL DAN PEMBAHASAN

(11)

xiii

(12)
(13)
(14)

xiv

Gambar 2.2 Proses Forward Chaining……….……….………….. Gambar 2.3 Proses Backward Chaining……….………. Gambar 24 Kernel Operator Prewitt………...

Gambar 2.5 Memulai GUIDE………..

Gambar 2.6 GUIDE Quick Start………..

Gambar 2.5 Menu Utama GUIDE………

Gambar 2.6 Komponen UIControl………..

Gambar 2.7 Color Values .….………..……… Gambar 3.1 Skema Pengembangan Sistem RAD……….………

Gambar 4.1 Citra Grayscale ………...

Gambar 4.2 Citra Black & White ………. Gambar 4.3 Citra Hasil Operator Sobel ………... Gambar 4.4 Alur Kerja Identifikasi Tumbuhan Papilionaceae ……….. Gambar 4.5 Perancangan Form Pembuka……… Gambar 4.6 Perancangan Form Utama………. Gambar 4.7 Menjalankan Software Matlab…..……… Gambar 4.8 Tampilan Awal Software Matlab………..

Gambar 4.9 Membuat GUI Baru………..

(15)

xv

Dirancang……… Gambar 4.13 Tampilan M-File dari Figure GUI……….…….… Gambar 4.14 Menyisipkan Kode Program pada Fungsi Callback…... Menjalankan Kode Program M-File yang Telah Ditulis…..………….……….. Gambar 4.16 Tampilan Menu Pembuka...……… ………...… Gambar 4.17 Tampilan Menu Utama……….………. Gambar 4.18 Tampilan Membuka Gambar…..……….….. Gambar 4.19 Tampilan Processing……….….

65 66 66

(16)

xvii

besar proses untuk persepsi visual Deteksi tepi (Edge

detection)

: Operasi yang dijalankan untuk mendeteksi garis tepi (edges) yang membatasi dua wilayah citra homogen yang memiliki tingkat kecerahan yang berbeda

Forward Chaining : Penalaran dari fakta menuju konklusi

Grayscale : Citra wajah abu-abu

Klasifikasi : Menyederhanakan obyek-obyek yang

beranekaragam tersebut dengan cara mencari persamaan-persamaan tertentu yang dimiliki oleh obyek-obyek tersebut

Matriks :

Array dua dimensi yang terdiri dari baris dan kolom

RAD : Singkatan dari Rapid Application Development, merupakan salah satu metode pengembangan sistem yang diperkenalkan James Martin pada tahun 1991

(17)

xviii

kolom

(18)

1 1.1 Latar Belakang

Biologi adalah suatu bidang yang mempelajari seluk beluk tentang kehidupan dan unsur-unsur yang menopang berlangsungnya kehidupan itu sendiri. Taksonomi adalah salah satu cabang ilmu Biologi yang mempelajari klasifikasi dan tata nama pada makhluk hidup (Campbell, 2000). Pengklasifikasian perlu dilakukan karena keanekaragamannya makhluk hidup yang ada di bumi beranekaragam sehingga perlu dikelompokan dan mengidentifikasinya berdasarkan persamaan ciri-ciri yang dimiliki (Pratiwi dkk, 2006)

Kegunaan adanya pengelompokan atau klasifikasi dari makhluk hidup ini berperan penting untuk mengetahui peranan dari masing-masing jenis. Sejak zaman Aristoteles hingga pertengahan abad ke-20, para pakar Biologi membagi makhluk hidup menjadi dua kingdom, yaitu Plantae (tumbuhan) dan Animalia (hewan) (Pratiwi dkk, 2006).

(19)

Indonesia adalah negara yang kaya akan keaneragaman hayati terutama tumbuhan (+28 ribu jenis). Papilionaceae merupakan tanaman penghasil komoditi yang berharga sebagai bahan pangan dengan nilai gizi yang tinggi karena kandungannya akan protein, lemak, dan vitamin-vitamin dalam bijinya. Polong yang muda, demikian pula daun-daun muda jenis-jenis tertentu banyak yang dimakan sebagai sayuran. Namun masih sedikit sekali yang sudah tergali potensinya dan masih banyak penduduk yang belum mengetahui nama-nama tumbuhan tersebut. Padahal tanaman dari suku Papilionaceae ini sering ditanam di pekarangan atau di ladang para penduduk. Oleh karena itu, diperlukan aplikasi untuk pengidentifikasian tumbuhan yang dapat membantu orang dalam mengenali dan mempelajari tentang tumbuhan khususnya Papilionaceae.

1.2 Perumusan Masalah

Dengan didasari oleh latar belakang tersebut, maka dibuat perumusan masalah sebagai berikut :

1. Bagaimana mendapatkan sebuah informasi pengklasifikasian tumbuhan Papilionanceae dengan menggunakan sistem pakar dengan metode forward chaining dan dibantu dengan software Matlab 2009.

2. Bagaimana image daun dapat dijadikan inputan dalam sistem pakar

1.3 Pembatasan Masalah

Pembatasan masalah pada penelitian ini sebagai berikut :

(20)

2) Input image daun hanya yang penulis temukan di lapangan.

3) Pengukuran daun hanya pada aspek rasio, form faktor, pucuk daun dan diagonal daun.

4) Daun yang digunakan adalah daun dewasa dan tidak boleh cacat 5) Pengamatan yang dilakukan dalam pengklasifikasian ini hanya terbatas

pada ciri fisik daun Papilionaceae. 6) Ukuran daun adalah 3cm x 3cm

7) Posisi pucuk daun berada di tengah atas dan pangkal daun berada di tengah bawah.

8) Outputnya adalah nama tumbuhan. 9) Update data dilakukan secara manual.

10)Aplikasi dibuat dengan menggunakan MATLAB 2009

11)Aplikasi yang dibuat hanya dapat dijalankan dengan komputer yang memiliki platform windows.

12)Tumbuhan yang disertakan dalam Aplikasi hanya contoh dari tumbuhan kacang-kacangan (Papilionaceae) dan tidak semua daftar tumbuhan kacang-kacangan (Papilionaceae) disertakan dalam aplikasi.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah untuk mengkasifikasikan tumbuhan Papilionaceae dengan daun sebagai objeknya dan komputer sebagai medianya.

1.5 Manfaat

(21)

1) Memahami pengklasifikasian tumbuhan Papilionaceae.

2) Memahami penerapan image processing pada pengklasifikasian tumbuhan Papilionaceae melalui daun sebagai objeknya.

3) Sebagai contoh dari aplikasi pengklasifikasian tumbuhan untuk dapat dilakukan pengembangan pada penelitian selanjutnya.

1.6 Metodologi Penelitian 1.6.1 Metode Pengumpulan Data

1. Metode studi pustaka merupakan pengumpulan data dan informasi dengan cara membaca buku-buku referensi, e-book dan website yang berhubungan dengan penelitian ini

2. Metode observasi digunakan penulis dengan mengambil daun Papilionaceae secara langsung, mengamati dan men-scannya

1.6.2 Metode Pengembangan Sistem

Metode pengembangan sistem yang penulis gunakan adalah metode RAD (Rapid Application Development) yang dikembangkan oleh James Martin. Menurut Kendall & Kendall (2002), tahap-tahap metode RAD meliputi :

1. Fase menentukan syarat-syarat, yaitu fase yang dilakukan untuk menentukan tujuan dan syarat-syarat informasi.

(22)

3. Fase Konstruksi, yaitu fase pengkodean terhadap rancangan-rancangan yang telah didefinisikan.

4. Fase Pelaksanaan, yaitu fase pengujian terhadap sistem.

1.7 Sistematika Penulisan

Sistematika penulisan terbagi dalam lima bab, yang secara singkat akan diuraikan sebagai berikut :

BAB I PENDAHULUAN

Dalam bab ini terdiri dari tujuh sub bab yaitu : Latar Belakang, Perumusan Masalah, Batasan Masalah, Tujuan, Manfaat, Metodologi Penelitian dan Sistematika Penulisan.

BAB II LANDASAN TEORI

Bab ini berisi teori-teori yang diperlukan untuk menunjang proses penulisan dalam pengenalan pengklasifikasian tumbuhan Papilionaceae dan sejumlah materi penunjang yang akan digunakan dalam proses pengenalan tumbuhan Papilionaceae.

BAB III METODOLOGI PENELITIAN

(23)

BAB IV PEMBAHASAN

Pada bab ini menjelaskan program dan implementasinya yang menggunakan beberapa tahap dari metode pengembangan sistem yang dipilih.

BAB V PENUTUP

Bab ini merupakan penutup yang berisi kesimpulan berkenaan dengan hasil pembahasan masalah yang diperoleh dari penyusunan tugas akhir ini serta beberapa saran untuk pengembangan lebih lanjut.

(24)

BAB II

LANDASAN TEORI

2.1 Kecerdasan Buatan

2.1.1 Definisi Kecerdasan Buatan

Kecerdasan buatan merupakan salah satu bagian ilmu komputer yang membuat agar komputer dapat melakukan pekerjaan seperti dan sebaik yang dilakukan manusia. Pada awal diciptakannya, komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan perkembangan zaman, peran komputer semakin mendominasi kehidupan manusia. Komputer tidak hanya digunakan sebagai alat hitung, lebih dari itu, komputer diharapkan untuk dapat diberdayakan untuk mengerjakan segala sesuatu yang bisa dikerjakan oleh manusia (Kusumadewi, 2003).

Komputer dapat bertindak seperti dan sebaik manusia, jika diberi bekal pengetahuan dan mempunyai kemampuan untuk menalar. Kecerdasan buatan (artificial intelligent) memberikan beberapa metode atau cara untuk membekali komputer dengan kedua komponen tersebut agar komputer dapat menjadi mesin yang pintar (Kusumadewi, 2003).

(25)

buatan sebagai suatu studi bagaimana membuat komputer mengerjakan sesuatu sedemikian rupa sehingga pada saat itu orang merasa mendapatkan hasil yang lebih baik (Pandjaitan, 2007).

Staugaard dan Marvin Minsky memberikan pernyataan bahwa kecerdasan buatan adalah suatu mekanisasi atau duplikasi proses berpikir manusia. Schidt (1987) mengatakan bahwa suatu program kecerdasan tiruan akan menunjukan perilaku program yang menyerupai perilaku manusia jika menghadapi persoalan yang sama. Charniak dan McDemott (1985) menambahkan bahwa proses pembelajaran pada program kecerdasan buatan menggunakan model komputasi(Pandjaitan, 2007).

2.1.2 Sejarah Kecerdasan Buatan

(26)

2.2 Sistem Pakar

Sistem pakar merupakan suatu bentuk sistem yang berusaha mengadopsi ilmu pengetahuan manusia dan diaplikasikan dalam komputer, sehingga komputer memiliki kemampuan dalam menyelesaikan masalah seperti yang dilakuakn oleh seorang ahli. Ada beberapa definisi tentang sistem pakar (Kusumadewi, 2003), antara lain:

• Menurut Durkin :

Sistem pakar adalah suatu program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan oleh seorang pakar.

• Menurut Ignizio :

Sistem pakar adalah suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibangdingkan dengan keahlian seorang pakar.

• Menurut Giarratano dan Rilly :

Sistem pakar adalah suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar

Knowledge dalam sistem pakar mungkin saja seorang ahli, atau knowlegde yang umumnya terdapat dalam buku, majalah dan orang yang mempunyai pengetahuan tentang suatu bidang (Arhami, 2005).

(27)

menyelesaikan masalah yang cukup rumit seperti halnya menyelesaikan masalah dengan bantuan para ahli. Sedangkan bagi para ahli, sistem pakar ini juga akan membantu aktivitasnya sebagai asisten yang sangat berpengalaman.

2.2.1. Keuntungan Sistem Pakar

Secara umum, beberapa manfaat yang dapat diambil dengan adanya sistem pakar (Kusumadewi, 2003), antara lain:

1. Memungkingkan orang awam bisa mengerjakan perkejaan para ahli. 2. Bisa melakukan proses secara berulang secara otomatis.

3. Menyimpan pengetahuan dan keahlian para pakar. 4. Meningkatkan out put dan produktivitas.

5. Meningkatkan kualitas.

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

7. Mampu beroperasi dalam lingkungan yang berbahaya. 8. Memiliki kemampuan untuk mengakses pengetahuan. 9. Memiliki reliabilitas.

10. Meningkatkan kapabilitas sistem komputer.

11.Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian.

12.Sebagai media pelengkap dalam penelitian. 2.2.2. Kelemahan Sistem Pakar

(28)

1. Masalah dalam mendapatkan pengetahuan dimana pengetahuan tidak selalu bisa didapat dengan mudah, karena kadangkala pakar dari masalah yang kita buat tidak ada dan kalaupun ada kadang pendekatan yang dimiliki oleh pakar berbeda-beda.

2. Untuk membuat sistem pakar yang benar-benar berkualitas tinggi sangatlah sulit dan memerlukan biaya yang sangat besar untuk pengembangan dan pemeliharaan.

3. Sistem pakar tidak 100% bernilai benar

4. Boleh jadi sistem pakar tidak dapat membuat keputusan 2.2.3. Konsep Dasar Sistem Pakar

Efraim Turban berpendapat, konsep dasar pakar mengandung keahlian, ahli, pengalihan, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman (Arhami, 2005). Kemampuan keahlian dari para ahli ke komputer untuk kemudian dialihkan lagi ke orang lain yang bukan ahli, merupakan tujuan dari sistem pakar. Proses ini membutuhkan 4 aktivitas yaitu: tambahan pengetahuan (dari para ahli atau sumber-sumber lainnya), repsentasi pengetahuan ke komputer, inferensi pengetahuan dan pengalihan pengetahuan ke pengguna (Arhami, 2005).

2.2.4. Bentuk Sistem Pakar

Ada 4 bentuk sistem pakar (Kusumadewi, 2003), yaitu:

(29)

2. Tergabung. Sistem pakar jenis ini merupakan bagian program yang terkandung di dalam suatu algoritma (konvensional), atau merupakan program dimana didalamnya memanggil algoritma subrutin lain (konvensional).

3. Menghubungkan ke software lain. Bentuk ini biasanya merupakan sistem pakar yang menghubungkan ke suatu paket program tertentu, misalnya dengan Data Base Management System (DBMS).

4. Sistem mengabdi. Sistem pakar merupakan bagian dari komputer khusus yang dihubungkan dengan suatu fungsi tertentu. Misalnya sistem pakar yang digunakan untuk membantu menganalisis data radar.

2.2.5. Struktur Sistem Pakar

(30)

Pengetahuan Ahli Rekayasa Pengetahuan

Gambar 2.1 Struktur Sistem Pakar

Komponen-komponen yang ada pada sistem pakar gamabar 2.1: 1. Subsistem penambahan pengetahuan

Bagian ini digunakan untuk memasukkan pengetahuan, mengkontruksi atau memperluas pengetahuan dalam basis pengetahuan. Pengetahuan itu bisa berasal dari : ahli, buku, basis data, penelitian dan gambar.

Pengguna

Mesin Inferensi interpreter (Penerjemah)

Aturan : Keterangan logik Fakta tentang

(31)

2. Basis pengetahuan

Berisi pengetahuan-pengetahuan yang dibutuhkan untuk memahami, memformulasikan dan menyelesaikan masalah.

3. Mekanisme inferensi

program yang berisi metodologi yang digunakan untuk melakukan penalaran terhadap informasi-informasi dalam basis pengetahuan dan blackboard, serta digunakan untuk memformalisasikan konlusi, ada 3 elemen utama mekanisme inferensi, yaitu:

Interpreter mengeksekusi item-item agenda yang terpilih dengan

menggunakan aturan-aturan dalam basis pengetahuan yang sesuai. • Scheduler akan mengontrol agenda.

Consistency enforcer akan berusah memelihara kekonsistenan dalam

merepresentasikan solusi yang bersifat darurat.

4. Blackboard

Merupakan area dalam memori yang digunakan untuk merekam kejadian yang sedang berlangsung termasuk keputusan sementara. Ada 3 tipe keputusan yang dapat direkam, yaitu:

• Rencana : bagaimana menghadapi masalah.

• Agenda aksi-aksi yang potensial yang sedang menunggu untuk dieksekusi. • Solusi : calon aksi yang akan dibangkitkan.

5. Antarmuka

(32)

Observasi A aturan R1 fakta C kesimpulan aturan R3

fakta D aturan R2

Observasi B kesimpulan

fakta E

aturan R2 6. Subsistem penjelas

Digunakan untuk memberikan penjelasan tentang kelakuan sistem pakar. 7. Sistem penyaring pengetahuan

Sistem ini digunakan untuk mengevaluasi kinerja sistem pakar itu sendiri untuk melihat apakah pengetahuan-pengetahuan yang ada masih cocok untuk digunakan dimasa mendatang (Kusumadewi, 2003).

2.2.6 Forward Chaining

Forward chaining disebut juga penalaran dari bawah ke atas karena penalaran dari evidence(fakta) pada level bawah menuju konklusi pada level atas didasarkan pada fakta. Forward chaining mencari fakta yang sesuai dengan bagian IF dari aturan IF-THEN. Gambar 2.2 menunjukan proses forward chaining (Arhami, 2005).

(33)

2.2.7 Backward Chaining

Backward chaining adalah pendekatan yang dimotori tujuan, dalam pendekatan ini pelacakan dimulai dari tujuan, selanjutnya dicari aturan yang memiliki tujuan tersebut untuk kesimpulannya. Gambar 2.3 menunjukan proses backward chaining (Arhami, 2005).

Gambar 2.3 Proses Backward Chaining

2.3 Computer Vision

Computer vision merupakan proses otomatis yang mengintegrasikan sejumlah besar proses untuk persepsi visual, seperti akuisisi citra, pegolahan citra, klasifikasi, pengenalan (recognation), dan membuat keputusan.

Computer vision terdiri dari teknik-teknik untuk mengestimasi ciri-ciri objek di dalam citra, pengukuran ciri yang berkaitan dengan geometri objek dan menginterpretasi informasi goemetri tersebut. Mungkin berguna untuk mengingat persamaan berikut :

Vision = Geometri + Measurement + Interpretation Observasi A aturan R1 fakta C

aturan R3

aturan R2

Observasi B aturan R2 fakta D Tujuan 1

(34)

Proses-proses di dalam Computer vision dapat dibagi menjadi tiga aktivitas (Munir, 2004) :

1. Memperoleh atau mengakuisisi citra digital.

2. Melakukan teknik komputasi untuk memproses atau memodifikasi data citra (operasi-operasi pengolahan citra).

3. Menganalisis dan menginterpretasi citra dan menggunakan hasil pemrosesan untuk tujuan tertentu, misalnya memandu robot, mengontrol peralatan, memantau proses manufaktur, dan lain-lain.

Dari penjelasan di atas, dapat dilihat bahwa pengolahan citra dan pengenalan pola merupakan bagian dari Computer vision. Pengolahan citra merupakan proses awal (preprocessing) pada Computer vision sedangkan pengolahan pola merupakan proses untuk menginterpretasi citra. Teknik-teknik di dalam pengenalan pola memainkan peranan penting dalam Computer vision untuk mengenal objek.

2.4 Digital Image Processing

2.4.1 Pengertian Citra

(35)

Citra (image) –istilah lain untuk gambar- sebagai salah satu komponen multimedia memegang peranan sangat penting sebagai bentuk informasi visual. Citra mempunyai karakteristik yang tidak dimiliki oleh teks, yaitu citra kaya dengan informasi (Munir, 2004).

Secara harfiah, citra (image) adalah gambar pada dwimatra (dua dimensi). Ditinjau dari pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, kemudian objek memantulkan kembali sebagian dari teks cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat optik misalnya mata pada manusia, kamera, scanner dan sebagainya, sehingga bayangan objek (citra) tersebut terekam (Munir, 2004).

Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat (Munir, 2004) :

1. Optik berupa foto

2. Analog berupa sinyal video seperti gambar pada monitor televisi

3. Digital yang dapat langsung disimpan pada suatu pita magnetik

(36)

tampak pada film layar lebar atau televisi pada hakikatnya terdiri atas ratusan sampai ribuat frame (Munir, 2004).

2.4.2 Image Processing

Operasi-operasi yang dilakukan di dalam pengolahan citra banyak ragamnya. Namun, secara umum, operasi pengolah cintra dapat diklasifikasikan dalam beberapa jenis sebagai berikut (Munir, 2004):

1. Perbaikan kualitas citra (image enhancement)

Jenis operasi ini merupakan proses penajaman fitur tertentu dari citra yang bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter citra dan memudahkan proses analisis citra selanjutnya. Dengan operasi ini, ciri-ciri khusus yang terdapat pada citra lebih ditonjolkan seperti perbaikan kontras gelap atau terang, perbaikan tepian objek (edge enhancement), penajaman (sharpening), pemberian warna semu (pseudocoloring) dan penapisan (noise filtering).

2. Pemugaran citra ( image restoration)

Operasi ini bertujuan menghilangkan/meminimumkan cacat pada citra. Tujuan pemugaran citra hampir sama dengan operasi perbaikan citra bedanya pada pemugaran citra penyebab degradasi gambar diketahui.

3. Pemampatan citra ( image compression)

(37)

yang harus diperhatikan dalam pemampatan adalah citra yang telah dimampatan harus tetap mempunyai kualitas gambar yang bagus.

4. Segmentasi citra (image segmentation)

Segmentasi citra ini mempunyai arti membagi citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu pixel dengan tingkat keabuan pixel-pixel tetangganya (Wijaya, 2009 : C-30). Jenis operasi ini bertujuan untuk memecahkan suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Jenis operasi ini berkaitan erat dengan pengenalan pola.

5. Pengorakan citra (image analysis)

Jenis operasi ini bertujuan menghitung besaran kuantitif dari citra untuk menghasilkan deskripsinya. Teknik pengorakan citra mengekstraksi ciri-ciri tertentu yang membantu dalam identifikasi objek. Proses segmentasi kadangkala diperlukan untuk melokalisasi objek yang diingikan dari sekelilingnya. Contoh-contoh operasi pengorakan citra :

a) Pendeteksian tepi objek (edge detection)

b) Ekstraksi batas (boundary)

c) Representasi daerah (region)

6. Rekonstruksi citra (image reconstruction)

(38)

medis. Misalnya, beberapa foto rontgen dengan sinar X digunakan untuk membentuk ulang gambar organ tubuh.

2.4.3 Pendeteksian Tepi (Edge Detectioan)

Tepi (edge) adalah perubahan nilai intensitas derajat keabuan yang mendadak (besar) dalam jarak yang singkat. Perbedaan intensitas inilah yang menampakan rincian pada gambar. Tepi biasanya terdapat pada batas antara dua buah daerah berbeda pada suatu citra (Munir, 2004).

Deteksi tepi (Edge detection) adalah operasi yang dijalankan untuk mendeteksi garis tepi (edges) yang membatasi dua wilayah citra homogen yang memiliki tingkat kecerahan yang berbeda (www.ilkom.fmipa.ipb.ac.id/yeni)

Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek di dalam citra. Tepi termasuk ke dalam komponen berfrekuensi tinggi. Maka pendeteksian tepi dapat dilakukan dengan panapis lolos-tinggi (Munir, 2004).

Pendekatan tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra.

Beberapa definisi dalam operator pelacakan tepi adalah (Ahmad, 2005) :

(39)

2. Sebuah potongan garis tepi berkorespondensi dengan koordinat x dan y dari sebuah tepi dengan arah sudut θ yang merupakan sudut gradien

3. Detektor tepi sebuah algoritma yang menghasilkan sebuah set dari tepi (titik tepi atau potongan garis tepi) dari sebuah obyek di dalam citra

4. Kontur adalah sebuah deret dari tepi atau kurva matematika yang merupakan model deret dari tepi

5. Penyambungan tepi adalah proses pembentukan deret yang beraturan dari deret yang tidak beraturan

6. Penelusuran tepi adalah proses pengolahan citra untuk menemukan kontur.

Terdapat beberapa teknik yang digunakan untuk mendeteksi tepi, antara lain (Munir, 2004) :

1. Operator gradien pertama (differential gradient)

Ada gradien pertama yang dapat digunakan untuk mendeteksi tepi di dalam citra (Munir, 2004) yaitu:

a) Operator gradien selisih terpusat (center-difference)

b) Operator Sobel

(40)

c) Operator prewitt

Pendeteksian tepi dengan operator Prewitt kernel konvolusi seperti gambar di bawah ini. Sama halnya dengan operator sobel, setiap titik citra dikonvolusikan dengan kedua kernel dan nilai maksimum merupakan output (Muhtadan, 2008). Kernel operator Prewitt ditunjukan pada gambar 2.2

-1 -1 -1 1 0 -1

0 0 0 1 0 -1

1 1 1 1 0 -1

Gambar 2.4 Kernel Operator Prewitt

d) Operator robert

Metode ini merupakan penjabaran dari teknik diferensial pada arah horizontal dan diferensial pada arah vertikal dengan menambahkan proses konversi biner dengan meratakan distribusi warna hitam dan warna putih (Sartika, 2008).

e) Operator Canny

Pada tahun 1986 John Canny (Canny, 1986) mengusulkan 3 kriteria yang menjadi basis pengembangan filter untuk mengoptimalkan pendetektian tepi pada citra bernoise. Ketiga kriteria tersebut adalah :

Good detection, kriteria ini bertujuan memaksimalkan nilai signal to

(41)

Good localisation, tepi yang terdeteksi berada pada posisi yang

sebenarnya atau dengan kata lain bahwa jarak antara posisi tepi yang terdeteksi oleh detektor dengan posisi tepi sebenarnya adalah seminimum mungkin (idealnya = 0)

Low multiplicity of the response atau "one response to singel edge"

detektor tidak memberikan tepi yang bukan tepi sesungguhnya.

2. Operator turunan kedua (laplacian)

Operator laplacian mendeteksi lokasi tepi lebih akurat khususnya pada tepi yang curam. Pada tepi yang curam, turunan keduanya mempunyai persilangan nol (zero-crossing), yaitu titik di mana terdapat pergantian tanda turunan kedua, sedangkan pada tepi yang landai tidak terdapat persilangan nol. Persilangan nol merupakan lokasi tepi yang akurat.

3. Operator kompas (compass operator)

Operator kompas (compass operator) digunakan untuk mendeteksi semua tepi dari berbagai arah di dalam citra. Operator kompas yang dipakai untuk pendeteksian tepi menampilkan 8 macam arah mata angin: Utara, Timur Laut, Timur, Tenggara, Selatan, Barat daya, Barat, dan Barat Laut. Pendeteksian tepi dilakukan dengan mengkonvolusikan citra dengan berbagai mask kompas, lalu dicari kekuatan tepi (magnitudo) yang terbesar dan arahnya (Munir, 2004).

(42)

2.5 Klasifikasi tumbuhan

Adanya keaneragaman hidup sebagai akibat dari adanya evolusi khususnya adaptasi terhadap fungsi dan lingkungan yang berbeda-beda yang menyebabkan timbulnya berbagai macam bentuk kehidupan di muka bumi ini. Hal ini mendasari pemikiran untuk membuat sebuah sistem pengelompokkan terhadap berbagai macam bentuk kehidupan dalam suatu kelompok-kelompok kecil dengan obyek keaneragaman bentuk kehidupan tersebut, yang lebih dikenal dengan sebutan sistem klasifikasi (Pratiwi dkk, 2006).

Klasifikasi sendiri memiliki tujuan untuk menyederhanakan obyek-obyek yang beranekaragam tersebut dengan cara mencari persamaan-persamaan tertentu yang dimiliki oleh obyek-obyek tersebut. Dari persamaan-persamaan itulah dapat dibentuk satuan-satuan (kelompok) yang ditata dengan urutan dan tingkat-tingkat tertentu. Dengan landasan dari persamaan-persamaan itu, Corolus Linnaeus (1707 – 1778) membagi makhluk hidup ke dalam dua kelompok besar, yaitu:

1) Plantae (dunia tumbuh-tumbuhan) 2) Animalia (dunia hewan)

Semakin majunya ilmu pengetahuan dan teknologi menyebabkan klasifikasi mekhluk hidup pun mengalami perubahan. Dahulu klasifikasi makhluk hidup hanya mencakup dua kingdom (kerajaan) maka sekarang klasifikasi makhluk hidup dibagi menjadi lima kingdom yaitu protista, monera, animalia, plantea dan fungi (Campbell, 2000).

(43)

beranggotakan pteridhopyta (paku-pakuan) dan spermatophyte (tumbuhan berbuga). Tumbuhan tidak berpembuluh adalah tumbuhan yang akar, batang dan daunnya tidak mempunyai pembuluh seperti : alga, jamur dan lumut.

Rosales salah satu bangsa yang beranggotakan Suku Crassulaceae, Suku Cephalotaceae, Suku Pittosporaceae, Suku Cunoniaceae, Suku Rosaceae, Suku Brunelliaceae, Suku Connaraceae, Suku Leguminosae, Suku Mimosaceae, Suku Papilionaceae dan Suku Caesalpiniaceae (Gembong tjitrosoepomo, 1988).

Suku Papilionaceaee (kacang-kacangan), yang mempunyai ciri-ciri semak, perdu, atau pohon kerapkali memanjat. Daun berseling atau tersebar, tunggal atau majemuk. Daun penumpu ada. Bunga berkelamin 2, dalam karangan yang berbeda-beda, kerapkali zygomorph menyolok, kelopak bersatu. Mahkota berbentuk kupu-kupu terdiri atas lima, lapas atau hampir lepas; 2 yang terbawah bersama-sama membentuk tunas, kerapkali berlekatan satu dengan yang lainnya, diapit antara 2 sayap di sebelahnya; daun mahkota teratas kebanyakan 10, kerapkali 9 bersatu dan 1 lepas (beberkas dua), jarang lebih dari satu lepas; ruang sari 2. Bakal buah menumpang, beruang 1. Polongan membuka atau tidak membuka atau patah dalam ruas. Biji 1 atau banyak (Steenis, 1992).

(44)

anggota suku ini dengan bakteri-bakteri penambat zat lemas dari udara. Banyak pula di antara warga suku ini yang ditanam untuk makanan ternak. Sebagai contoh adalah

• Soja max (kedelai), bijinya kaya protein dan lemak.

• Phaseolus radiatus: Ph. Radiatus dan Ph. Mungo (kacang hijau), Ph. Lunatus

(kara, krupuk, kratok), Ph. Vulgaris (buncis), sayuran. • Arachis hypogaea(kacang tanah)

• Pisum sativum(kacang kapri) • Canavalia ensiformis(kara pedang) • Mucuna pruriens(kara benguk) • Cajanus cajan(kacang hiris)

• Crotalaria juncea, Cr. usaramoensis, Cr. anagyroides

Indigofera sumatrana, I. Endecaohylla • Tephrosia : maxima

• Sesbania grandiflora (janti), S. Grandiflora (turi) • Centrosema pubescens

• Calopogonium muconoides

• Psophocarpus tetragonolobus (kacang kecipir) • Clitoria ternatea (kembang telang)

• Pterocarpus undica (angsana kembang) • Dalbergia latifolia (angsana keling)

(45)

• Vicia faba (kacang babi)

• Voandzeia subterranean (kacang bogor).

Suku ini mempunyai manfaat sebagai Bahan pangan dengan nilai gizi yang tinggi karena kandungannya akan protein,. Dalam hal ini penulis memilih suku paplilionaceae sebagai bahasan (Gembong tjitrosoepomo, 1988).

2.6 MATLAB (Matrix Laboratory) 2.6.1 Sekilas Tentang Matlab

Dari Sugiharto (2006), MATLAB adalah sebuah bahasa pemrograman dengan unjuk kerja tinggi untuk komputasi teknis, yang mengintegrasikan komputasi, visualisasi dan pemrograman di dalam linkungan yang mudah penggunaannya dalam memecahkan persoalan dengan solusinya yang dinyatakan dengan notasi matematik. Penggunaan MATLAB yaitu :

1. Matematika dan komputasi 2. Pengembangan algoritma

3. Pemodelan, simulasi dan pembuatan prototype 4. Analisis data, eksplorasi dan visualisasi

5. Grafik untuk sains dan teknik

6. Pengembangan aplikasi, termasuk pembuatan antarmuka grafis untuk pengguna

(46)

mempermudah dalam menyelesaikan masalah komputasi, terutama yang menyangkut matriks dan vektor.

Secara keseluruhan Matlab memiliki 6 buah jendela : a. Jendela perintah (command window)

Pada jendela perintah, semua perintah Matlab dituliskan dan dieksekusi. Kita dapat menuliskan perintah yang diperlukan seperti perhitungan biasa, memanggil fungsi, mencari informasi tentang sebuah fungsi (help), demo program, dan sebagainya. Setiap penulisan perintah di sini selalu diawali dengan prompt '>>'. b. Jendela daftar perintah (command history)

Jendela ini memuat daftar perintah yang pernah kita ketikkan dalam jendela perintah. Untuk mengeksekusi kembali perintah yang pernah dipakai, kita dapat men-drag perintah tersebut dari jendela daftar perintah ke jendela perintah, atau menekan tombol panah ke atas atau mengklik perintah pada jendela history, kemudian melakukan copy-paste ke jendela perintah.

c. Jendela launch pad

Jendela ini berisi fasilitas yang disediakan matlab untuk menjalankan paket perangkat lunak (toolbox) untuk menyelesaikan masalah tertentu. d. Jendela Help

Dipakai jika kita mengalami kesulitan sewaktu memilih perintah atau formatnya.

e. Jendela current directory

(47)

memastikan bahwa fungsi berada di dalam direktori aktif atau kita mengubah direktori aktifnya ke direktori tempat fungsi berada.

f. Jendela ruang kerja (workspace)

Jendela workspace merupakan sebuah jendela Matlab yang berisi informasi pemakaian variabel di dalam memori Matlab.

2.6.2 Cara Bekerja dengan Matlab

Dalam melakukan pekerjaan pemrograman menggunakan bahasa Matlab, terdapat dua cara, yaitu :

1) Secara langsung di Command window

Cara ini adalah yang paling sering dilakukan oleh pemula, namun akan sulit untuk mengevaluasi perintah secara keseluruhan karena biasanya perintah hanya dilakukan baris perbaris.

2) Menggunakan M-File

M-File merupakan sederetan perintah Matlab yang dituliskan secara berurutan sebagai sebuah file. Nama file yang digunakan berekstensi m yang menandakan bahwa file adalah file Matlab. Pemrograman dengan M-File memberikan kontrol lebih banyak dibandingkan dengan command line. Dengan M-File, kita bisa melakukan percabangan, perulangan, dan lain-lain.

2.6.3 Perintah Kontrol 2.6.3.1 Struktur Kendali

(48)

If merupakan statemen kontrol yang digunakan untuk mengevaluasi ekspresi logika dan mengeksekusi kelompok statemen yang didasarkan pada nilai ekspresi. Bentuk sederhana statemen if adalah :

if <ekspresi logika> statement-statement end

Jika ekspresi logika bernilai benar (1), maka Matlab akan mengeksekusi statemen antara if sampai end. Namun, jika ekspresi logikanya bernilai false, maka Matlab akan melewati semua statemen antara if dan end.

If dapat dipakai lebih dari satu (nested if). Untuk membuat if di dalam if, kita menggunakan sintaksis seperti berikut :

if <ekspresi-logika1>

statemen 1 dikerjakan jika ekspresi-logika 1 bernilai benar) elseif <ekspresi-logika2>

statemen 2 dikerjakan jika ekspresi-logika 2 bernilai benar) elseif …

… else

statemen n (dikerjakan jika semua ekspresi-logika sebelumnya bernilai salah) end

2) Switch

Switch mengeksekusi statemen berdasarkan nilai variabel satu ekspresi. Bentuk switch adalah :

(49)

case nilai n statemen n

2.6.3.2 Struktur Perulangan

1) While

Statemen while digunakan untuk melakukan proses perulangan. Banyaknya jumlah perulangan ditentukan oleh sebuah nilai ekspresi. Proses perulangan pada while akan terus dilakukan selama nilai ekspresinya benar (true). Namun, begitu dijumpai nilai ekspresi salah (false), maka proses perulangan akan langsung dihentikan. Bentuk umun statemen while :

while <ekspresi> statemen-statemen end;

2) For

Statemen for digunakan pula untuk melakukan proses perulangan. Perbedaannya dengan statemen while adalah pada for jumlah perulangan dapat diketahui (countable), sedangkan pada while tergantung nilai ekspresi.

Bentuk umum statemen for :

for indeks = nilai awal : selisih atau penambahan : nilai akhir statemen-statemen

end

2.6.4 Membentuk Fungsi

(50)

function hasil = luas ( p, 1 )

argumen input nama fungsi argument output kata kunci a) Nama Fungsi

Nama fungsi Matlab secara default sama dengan nama variabelnya. Nama fungsi harus diawali dengan huruf, selanjutnya boleh diikuti oleh kombinasi huruf, angka, atau garis bawah (underscore). Sebaiknya, semua karakter menggunakan huruf kecil. Walaupun nama fungsi dapat mempunyai panjang berbeda, Matlab hanya menggunakan N sebagai karakter pertama, dimana N adalah bilangan yang dihasilkan fungsi namelengthmax().

b) Argumen Fungsi

Jika sebuah fungsi Matlab mempunyai nilai output lebih dari satu, maka nilai dapat dituliskan dalam sebuah kurung siku. Argumen input, jika ada, dituliskan di dalam tanda kurung biasa. Untuk memisahkan antara argumen yang ada, baik input maupun output, maka digunakan tanda koma.

c) Mengetahui Jumlah Argumen Fungsi

(51)

2.6.5 GUIDE

GUIDE atau GUI builDEr merupakan sebuah graphical user interface (GUI) yang dibangun dengan objek grafis seperti tombol (button), kotak teks, slider, sumbu (axes), maupun menu. Tidak seperti bahasa pemrograman lainnya, GUIDE matlab memiliki banyak keunggulan tersendiri, antara lain :

a) GUIDE matlab banyak digunakan dan cocok untuk aplikasi-aplikasi berorientasi sains, sehingga banyak peneliti atau mahasiswa, menggunakan GUIDE Matlab untuk menyelesaikan riset atau tugas akhirnya.

b) Matlab memiliki banyak fungsi built in yang siap digunakan dan pemakai tidak perlu repot membuatnya sendiri.

c) Ukuran file, baik FIG-file maupun M-file, yang dihasilkan relatif lebih kecil. d) Kemampuan grafisnya cukup andal dan tidak kalah dibandingkan bahasa

pemrograman lainnya. 2.6.5.1 Memulai GUIDE

Untuk memulai pemrograman GUI Matlab, kita dapat melakukan dengan dua cara, yaitu :

a) Melalui command matlab ketikkan >>guide atau

(52)

Gambar 2.5 Memulai GUIDE

Selanjutnya, kita dibawa ke sebuah kotak dialog pilihan GUIDE Quick Start.

Gambar 2.6 GUIDE Quick Start

(53)

untuk memulai dengan sebuah GUI dengan figure kosong. Kita dapat mengatur sendiri komponen yang kita butuhkan sesuai dengan aplikasi yang dibuat.

Gambar 2.7 Menu Utama GUIDE

2.6.5.2 Komponen GUIDE

Untuk membuat sebuah user interface matlab dengan fasilitas GUIDE, kita harus memulai dengan membuat desain sebuah figure. Untuk membuat desain sebuah figure, kita dapat memanfaatkan uicontrol (kontrol user interface) yang telah tersedia pada editor figure.

Kita dapat meletakkan semua kontrol pada layout editor figure dan selanjutnya hanya tinggal mengaturnya dengan property inspector. Untuk melihat kontrol user interface, kita dapat membukanya dengan menggunakan blank GUI maupun yang lainnya. Gambar berikut memperlihatkan beberapa kontrol :

Menu Editor M-File Editor

(54)

Gambar 2.8 Komponen UIControl a. Pushbutton

Sebuah pushbutton merupakan jenis kontrol berupa tombol tekan yang akan menghasilkan sebuah tindakan jika diklik, misalnya tombol OK, CANCEL, dan lainnya.

b. Togglebutton

Togglebutton menghasilkan efek yang hampir sama dengan pushbutton, perbedaanya adalah saat pushbutton ditekan, maka tombol akan kembali pada posisi semula jika tombol mouse dilepas. Sebaliknya, pada togglebutton tombol tidak akan kembali ke posisi semula, kecuali kita menekannya kembali.

c. Radiobutton

Pada radiobutton, kita hanya dapat memilih atau menandai satu pilihan dari beberapa pilihan yang ada.

d. Checkbox

(55)

apakah sebuah checkbox telah ditandai atau tidak, kita dapat melihat pada value property, yaitu masing-masing bernilai 1 dan 0.

e. Edit Text

Kontrol edit text merupakan sebuah tempat yang memungkinkan kita memasukkan atau memodifikasi teks. String property berisi teks yang akan dimunculkan pada kotak edit text. Kemudian, edit text bermanfaat pula untuk menginputkan suatu data dari keyboard.

f. Static Text

Kontrol static text akan menghasilkan teks bersifat statis (tetap), sehingga pemakai tidak dapat melakukan perubahan padanya. Pada static text, kita dapat mengatur teks dengan beberapa fasilitas, antara lain jenis dan ukuran font, warna, justifikasi, dan lain-lain. Kita dapat memodifikasi semuanya melalui property inspector.

g. Slider

(56)

h. Listboxes

Kontrol listbox menampilkan semua daftar item yang terdapat pada String Property dan membuat kita dapat memilih satu atau lebih item yang ada. Value property berisi indeks yang dihubungkan dengan daftar item yang dapat dipilih. Jika kita memilih item lebih dari satu, maka nilai yang dikirimkan merupakan sebuah vektor. Indeks-indeks item sebuah listbox merupakan bilangan bulat, dimana item pertama diberi indeks 0, item kedua diberi indeks 1, dan seterusnya.

i. Popup Menu

Popup menu membuka tampilan daftar pilihan yang didefinisikan pada string property ketika kita mengklik tanda panah pada aplikasi. Ketika tidak dibuka, popup menu hanya akan menampilkan satu item yang menjadi pilihan saat ini, yang ditentukan oleh sebuah indeks berisi Value Property. Item pertama pada String property sebuah popup menu akan diberi nilai 1, item berikutnya diberi nilai 2, dan seterusnya. Popup menu sangat bermanfaat ketika kita ingin memberi pemakai sebuah pilihan atau alternatif tanpa jarak, tidak seperti radiobutton.

j. Axes

(57)

2.7 RGB

Suatu citra biasanya mengacu pada citra RGB. Sebenarnya bagaimana citra disimpan dan dimanipulasi dalam komputer diturunkan dari teknologi televisi, yang pertama kali mengaplikasikannya untuk tampilan grafis komputer. Jika dilihat dengan kaca pembesar, tampilan monitor komputer akan terdiri dari sejumlah triplet titik warna merah (RED), hijau (GREEN) dan biru (BLUE).

Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (Blue) dari suatu triplet. Setiap triplet akan merepresentasikan 1 pixel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B k nilai 180. Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format .bmp citra setiap pixel pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G dan 8 bit untuk B, dengan pengaturan (Al fatta, 2007 : D-1) seperti pada gambar 1.

Gambar 2.9 Color Values 2.8 JPEG

(58)
(59)

BAB III

METODOLOGI PENELITIAN

Pada penyusunan skripsi ini diperlukan data-data informasi sebagai bahan yang dapat mendukung kebenaran materi uraian pembahasan. Untuk menyelesaikan masalah yang ada dalam sebuah perancangan perangkat lunak ada beberapa tahap yang harus dilakukan.

Tahap ini dilakukan sebelum tahap pengembangan sistem yang meliputi studi pustaka dan observasi.

3.1 Studi Pustaka

Studi pustaka adalah teknik pengumpulan data dengan menghimpun dan menganalisis dokumen. Dokumen-dokumen yang termasuk didalamnya yaitu penelitian-penelitian terdahulu, buku, artikel dan jurnal yang berkaitan dengan objek penelitian. Secara rinci yang penulis lakukan pada studi dokumenter adalah :

a) Membaca dan mempelajari buku-buku atau dokumen-dokumen, penelitian-penelitian terdahulu, artikel dan jurnal yang berhubungan dengan Papilionaceae dan teknik atau cara pengklasifikasian tumbuhan dalam hal ini

Papilionaceae. Dokumen-dokumen tersebut bisa bersifat hardcopy ataupun

softcopy yang bersumber dari internet.

(60)

c) Dokumen-dokumen yang telah dipilih dan dihimpun kemudian dilakukan analisa untuk mendapatkan suatu pemahaman mengenai konsep perancangan aplikasi pengklasifikasian tumbuhan

3.2 Observasi Lapangan

Observasi merupakan pengamatan langsung dengan cara pengambilan data dengan menggunakan mata tanpa ada pertolongan alat standar lain untuk keperluan tersebut (Nazir, 1983). Penulis mengambil daun Papilionacea secara langsung dan mengamatinya dan men-scannya.

3.3 Model-Model Metode Pengembangan Sistem

Sebuah perancangan perangkat lunak memerlukan model-model proses atau paradigma rekayasa perangkat lunak berdasarkan sifat aplikasi dan proyeknya, metode dan alat bantu yang dipakai, dan kontrol serta penyampaian yang dibutuhkan. Ada beberapa model dari proses perangkat lunak, diantaranya: Model Sequensial Linear, Model Prototipe, Model RAD (Rapid Application Development), Model

Evolusioner, Model Formal dan lain-lain (Pressman, 2002). 3.4 Perbedaaan Metode Pengembangan Sistem

(61)

Tabel 3.1 Perbandingan Metode Pengembangan Sistem

Metode Kelebihan Kekurangan Pengunaan

secara umum

Waterfall bekerja dengan baik pada proyek skala kecil

Prototype Metode ini cukup efektif dengan mendapatkan

kebutuhan dan aturan yang jelas dan ingin working version selesai dengan cepat.

Prototyping dapat

cepat dari waterfall jika kebutuhan dan batasan proyek sudah diketahui dengan baik aplikasai yang tidak mempunyai resiko teknis yang tinggi. RAD cocok untuk proyek yang memiliki SDM yang baik

dan sudah

(62)

3.5 Pemilihan Metode

3.5.1 Teknik Pengumpulan Data

Setelah mengamati berbagai metode pengumpulan data di atas, maka penulis memutuskan untuk memakai metode studi pustaka dan metode observasi. Metode studi pustaka dilakukan penulis dengan melakukan pengumpulan data dan informasi

Incremental Fleksibel dan mudah untuk dikelola dan

Cocok untuk aplikasi yang kebutuhannya telah diidentifikasi dengan baik.

Iterative Fase desain, pengkodean, perkiraan resiko (risk assessment) yang cukup tinggi.

(63)

dengan cara membaca buku-buku referensi, e-book dan situs internet yang dapat dijadikan acuan pembahasan dalam masalah ini. Adapun buku-buku dan bahan referensi lainnya yang dipakai dalam skripsi ini dapat dilihat pada daftar pustaka. Sedangkanmetode observasi dengan cara mengambil dan mengamati langsung bahan penelitian dalam hal ini adalah daun Papilionaceae. Tanaman yang diamati sebanyak lima jenis, setiap jenis tanaman diamati lima daun

3.5.2 Metode Pengembangan Sistem

Proses pengembangan sistem diartikan sebagai sekumpulan aktivitas, metode, best practice, deliverable dan tools-tools otomatis yang digunakan stakeholder untuk

mengembangkan sistem informasi dan software secara kontinu, artinya pengembangan yang dilakukan secara bertahap dari hal-hal yang menjadi kendala sistem sampai hal-hal yang menjadi kebutuhan sistem (Whitten, 2004). Dari beberapa metode pengembangan sistem yang ada, maka penulis menggunakan metode pengembangan sistem RAD (Rapid Application Development). Penulis menggunakan model RAD karena melihat aplikasi yang dikembangkan adalah aplikasi yang sederhana dan tidak membutuhkan waktu yang lama. Metode RAD adalah metode yang diperuntukkan dalam jangka pendek sesuai dengan aplikasi yang dikembangkan. Model pengembangan RAD diperkenalkan oleh James Martin pada tahun 1991 (Pressman, 2002).

(64)

Gambar 3.1. Skema Pengembangan Sistem RAD

Model pengembangan RAD memiliki empat fase yaitu fase perencanaan syarat-syarat, fase perancangan, fase konstruksi, dan fase pelaksanaan (Kendall & Kendall, 2002). Berikut adalah penjelasan masing-masing fase dalam penelitian ini. 3.5.2.1 Fase Menentukan Syarat-Syarat

(65)

a. Mendefinisikan masalah b. Analisis kebutuhan masalah c. Tujuan informasi

d. Syarat-syarat

3.5.2.2 Fase Perancangan

Pada tahap ini dilakukan perancangan antar muka pemakai memberikan fasilitas komunikasi antar pemakai dan sistem, memberikan berbagai fasilitas informasi dan berbagai keterangan yang bertujuan untuk membantu mengarahkan alur penelusuran masalah sampai ditemukannya solusi. Antar muka dirancang sebagai gambaran pada saat pembuatan komponen-komponen GUI pada fase konstruksi.

3.5.2.3 Fase Konstruksi

Pada tahap ini dilakukan instalasi ,pengaturan tata letak komponen GUI dan pengkodean terhadap rancangan-rancangan yang telah didefinisikan. Penulis menggunakan software MATLAB sebagai pembuatan antar muka dan editor kode program.

3.5.2.4 Fase Pelaksanaan

(66)

dapat diketahui kesalahan-kesalahan apa yang terjadi, sehingga dapat diperbaiki dalam pengembangan selanjutnya.

(67)

BAB IV

HASIL DAN PEMBAHASAN

Sistem pakar pengklasifikasia tumbuhan menggunakan metode forward chaining dan menggunakan metode Rapid Aplication Development (RAD) sebagai

pengembangan aplikasi.

4.1. Fase Menentukan Tujuan dan Syarat-syarat

4.1.1. Mendefinisikan Masalah

Masalah yang ingin diselesaikan dengan sistem ini adalah bagaimana mengimplementasikan suatu metode dalam komputer dan tools apa yang mendukung implementasi tersebut. Implementasikan pengklasifikasian tumbuhan dengan menggunakan sistem pakar dengan metode forward chaining.

4.1.2. Analisa Kebutuhan Masalah

(68)

merupakan perangkat lunak yang cocok dipakai sebagai alat komputasi yang melibatkan penggunaan matriks dan vektor. Penulis menerapkan beberapa aturan untuk memaksimalkan pengklasifikasian tumbuhan Papilionaceae ini, yaitu sebagai berikut :

1. Objek daun yang ingin dikenali akan diproses dengan image processing terlebih dahulu dengan cara menjadikan gray scale, black & white dan pola tepi daun dibaca menggunakan operator sobel.

2. Nilai ukuran daun akan dijadikan sebagai pengenalan tumbuhan Papilionaceae.

Pemecahan masalah yang dilakukan dalam pengklasifikasian tumbuhan Papilionaceae sebagai berikut :

1. Metode forward chaining menyelesaikan identifikasi tumbuhan Papilionaceae dengan melakukan penalaran dari bawah ke atas, yaitu proses

penalaran dan pembacaan dimulai dari fakta-fakta ukuran daun baik itu aspek rasio, form faktor dan diagonal daun.

2. Pengolah citra yang penulis lakukan adalah menggunakan operator sobel untuk memudahkan pembacaan bentuk daun.

(69)

4.1.3. Tujuan Informasi

Tujuan penggunaan aplikasi pengklasifikasian tumbuhan Papilionaceae ini untuk mengimpelementasikan metode sistem pakar dengan metode forward chaining sehingga diharapkan dapat mengetahui pengklasifikasian tumbuhan dengan image sebagai interfacenya menggunakan komputer.

,

4.1.4. Syarat-syarat Informasi

Untuk mewujudkan tujuan tersebut maka dibutuhkan beberapa syarat dalam penerapan metode forward chaining sebagai solusi dalam penklasifikasian tumbuhan Papilionaceae, meliputi kelengkapan software dan hardware.

Kelengkapan software yang digunakan untuk pembuatan aplikasi simulasi ini adalah :

1. Matlab 2009, sebagai bahasa pemrograman yang digunakan dalam pembuatan aplikasi simulasi ini.

(70)

4.2. Fase Perancangan 4.2.1 Perancangan Proses

Sebelum proses indentifikasi tumbuhan Papilionaceae dibutuhkan citra daun Papilionaceae dengan format JPEG, untuk membedakan daun tumbuhan

Papilinaceae mengggunakan rumus :

1. Ukur aspek rasio daun dengan menggunakan rumus.

Aspek rasio daun = tinggi / lebar

2. Ukur form faktor daun dengan rumus.

Form factor=(4*3.14*luasdaun)/((kelilingdaun)^2)

3. Jumlahkan diagonal objek daun. Selanjutnya, user dapat langsung memasukan data berupa image daun Papilionaceae ke dalam aplikasi yang sudah terintegrasi dengan software Matlab 2009, kemudian image tersebut melewati beberapa tahapan dalam proses pengolahan citra.

Tahap selanjutnya, image ditampilkan dan dilakukan proses penyederhanaan warna (Grayscale) untuk memudahkan proses pengolahan citra, sehingga citra asli yang dimasukan berubah menjadi seperti berikut :

(71)

Selanjutnya, gambar akan dirubah ke dalam black & white, sehingga gambar tampak seperti di bawah ini :

Gambar 4.2 Citra Black & White

Tahap selanjutnya dilakukan pengolahan citra (edge detection) dengan menggunakan operator sobel supaya bentuk pinggir daun dapat terlihat dan dapat di analisa. Perubahan citra dengan menggunakan operator sobel sebagai berikut :

Gambar 4.3 Citra Hasil Operator Sobel

Hasil dari proses ini kemudian dijadikan fakta dalam proses penalaran forwar chaining sehingga didapat konklusi. Adapun fakta-fakta tersebut dapat dilihat dalam

tabel dibawah ini :

1. Aspek rasio

Tabel 4.1 Range Aspek Rasio Daun Kacang tanah 1.738 s/d 2.4378

Turi putih 2.8076 s/d 3.09

Kacang panjang 1.6 s/d 1.8605

Angsana 1.418 s/d 1.7318

(72)

2. Form faktor

Tabel 4.2 Range Form Faktor Daun Kacang tanah 0.83312 s/d 1.0539

Turi putih 0.70344 s/d 0.76195

Kacang panjang 0.7242 s/d 0.86914

Angsana 0.91601 s/d 1.1038

Dadap 0.73965 s/d 0.90469

3. Diagonal daun

Tabel 4.3 Range Diagonal Daun Kacang tanah 26 s/d 35

Turi putih 19 s/d 23

Kacang panjang 17 s/d 24

Angsana 29 s/d 40

Dadap 41.5 s/d 51

Struktur pohon dalam penyelesaian masalah pada identifikasi tumbuhan kacang-kacangan (Papilionaceae) adalah sebagai berikut :

a. Identifikasi kacang tanah, maka struktur pohonnya seperti di bawah ini :

KT Identifikasi Tumbuhan Kacang Tanah

AR Aspek Rasio

FF Form Faktor D Diagonal KT

FF D

(73)

b. Identifikasi turi putih, maka struktur pohonnya seperti di bawah ini : TP Identifikasi Tumbuhan Turi Putih

AR Aspek Rasio

FF Form Faktor

D Diagonal

c. Identifikasi kacang panjang, maka struktur pohonnya seperti di bawah ini :

KP Identifikasi Tumbuhan Kacang Panjang

AR Aspek Rasio

FF Form Faktor

D Diagonal

d. Identifikasi angsana, maka struktur pohonnya seperti di bawah ini : A Identifikasi Tumbuhan Angsana

AR Aspek Rasio

FF Form Faktor

D Diagonal

e. Identifikasi dadap, maka struktur pohonnya seperti di bawah ini : D Identifikasi Tumbuhan Dadap

(74)

Dari fakta-fakta di atas, maka identifikasi tumbuhan Papilionaceae dapat dilakukan. Adapun alur kerja proses identifikasi tumbuhan dapat dilihat pada gambar berikut :

Gambar 4.4 Alur Kerja Identifikasi Tumbuhan Papilionaceae Hitung aspek rasio, form faktor dan diagonal daun

Tampilkan nama tumbuhan

End

Ya

Tidak Start

Pilih gambar

Convert to grayscale

Operator sobel

Range aspek rasio, form

faktor dan diagonal daun Convert to black & white

(75)

Daun yang ingin diidentifikasi harus melewati beberapa proses terlebih dahulu, jika sesuai dengan ketentuan-kententuan yang diterapkan dalam program maka program dapat mengidentifikasi daun yang dimaksud.

4.2.2 Perancangan Antar Muka

Penelitian ini adalah sebuah simulasi dan bukan merupakan aplikasi siap pakai, maka antarmuka yang dibuat juga cukup sederhana, antara lain:

1. Form Pembuka.

2. Form Utama.

4.2.3 Form Pembuka

Form pembuka, berisi nama perangkat lunak, nama serta NIM mahasiswa

yang membuat perangkat lunak, nama jurusan dan tahun pembuatan tugas akhir, button tutup dan masuk aplikasi. Rancangan form pembuka dapat dilihat pada gambar

(76)

Keterangan:

1. Nama perangkat lunak.

2. Nama penyusun tugas akhir.

3. Nim penyusun tugas akhir.

4. Nama jurusan dan tahun pembuatan tugas akhir.

5. Button untuk menutup form pembuka.

6. Button untuk masuk form utama. 2

3

4 1

5

6

(77)

Proses

Aspek rasio Daun

Form Faktor

Buka

Tutup Pucuk daun

4.2.4 Form Utama

Form utama menampilkan judul aplikasi dan link untuk membuka form input

kunci, input pesan, form Teori dan form About. Rancangan form Utama dapat dilihat pada gambar 4.6 berikut:

Gambar 4.6 Perancangan Form Utama

Keterangan:

1. Nama perangkat lunak.

2. Kotak tampilan proses gray scale.

3. Button proses.

Jenis Daun

1

2

3

6

9

4

7

10 8

5

(78)

4. Kotak tampilan gambar sebelum diproses yang keluar setalah di click button buka.

5. Text box untuk menampilkan hasil perhitungan diagonal daun.

6. Button untuk memanggil gambar daun untuk diproses.

7. Kotak tampilan proses black white gambar.

8. Text box untuk menampilkan hasil perhitungan aspek rasio daun.

9. Kotak tampilan hasil proses edge detection (deteksi tepi) dengan operator sobel.

10. Text box untuk menampilkan hasil perhitungan form faktor daun.

11. Text box untuk menampilkan hasil kesimpulan proses.

12. Button untuk menutup form utama.

4.3 Fase Konstruksi

Transformasikan semua hasil rancangan, lalu diterapkan menjadi program aplikasi yang dapat dioperasikan. Dalam melakukan proses konstruksi penulis melalui langkah-langkah sebagai berikut :

4.3.1 Instalasi Program

(79)

4.3.2 Menjalankan Software Matlab

Setelah software terinstal dengan benar, maka selanjutnya adalah menjalankan Matlab, yaitu dengan cara Start All Programs MATLAB Matlab R14 seperti ditunjukkan oleh gambar berikut ini :

Gambar 4.7 Menjalankan Software Matlab

Kemudian akan terlihat tampilan sebagai berikut :

(80)

4.3.3 Mengatur Tata Letak Komponen GUI

Graphical User Interface (GUI) dalam aplikasinya dapat terdiri atas beberapa

komponen user interface yang saling berinteraksi, sehingga membentuk sebuah program aplikasi. Setelah membuka GUIDE Matlab, langkah selanjutnya adalah mendesain figure dengan menggunakan komponen palet seperti pushbutton, slider, static text, edit text, frame, radio button dan sebagainya. Untuk membuat GUI baru

klik File New GUI, sehingga muncul tampilan sebagai berikut :

Gambar 4.9 Membuat GUI Baru

(81)

Gambar 4.11 Contoh Pengaturan Tata Letak Komponen pada GUI Matlab

Gambar

Gambar 4.13     Tampilan M-File dari Figure GUI……………….…….…
Gambar 2.1 Struktur Sistem Pakar
Gambar 2.2 Proses Forward Chaining
Gambar 2.3 Proses Backward Chaining
+7

Referensi

Dokumen terkait

1) Penyusunan rencana program dan kerjasama penelitian dan pengembangan, serta peningkatan kemampuan institusi. 2) Melakukan pembinaan dalam penyusunan proposal dan

1) Merumuskan kebijakan akademik, kualitas dan pengembangan Sekolah Tinggi Ilmu Kehutanan (STIK) Pante Kulu secara keseluruhan. 2) Merumuskan kebijakan penilaian prestasi

H1 = Promosi penjualan yang t erdiri atas coupons, rebates, Price-off deals, Bonus packs, Free premium gi fts, Loyalty programs, dan Events secara simultan

Dari persamaan nilai sentimen dalam satu kalimat maka diperoleh persamaan 3 untuk menentukan orientasi sentimen dengan perbandingan jumlah nilai positif, negatif dan

Berdasarkan hasil penelitian dapat disimpulkan bahwa formula yang memiliki kestabilan optimum dan efektif dalam menghambat aktifitas bakteri Streptococcus mutans

6 Berkenaan dengan hal tersebut maka dapat peneliti jelaskan bahwa tagline iklan yang efektif mampu mempengaruhi afeksi dan kognisi serta perilaku konsumen, dengan

Pegawai Kantor Kecamatan Depok juga melayani masyarakat dengan baik dan adil tanpa memandang dari golongan mana masyarakat yang melakukan pelayanan.. Berbeda dari

Belajar tuntas ini merupakan model pembelajaran dengan menggunakan pendekatan kelompok, sehingga dalam pelaksanaannya peserta didik mempelajari materi yang sama