Laporan TA Yoga Adiyasa

140
TUGAS AKHIR SISTEM PENDUKUNG KEPUTUSAN ESTIMASI JUMLAH PRODUKSI GULA DENGAN LOGIKA FUZZY (STUDI KASUS DI PT. MADU BARU YOGYAKARTA) Untuk memenuhi sebagai prasyarat Mencapai derajat S1 Disusun oleh : Yoga Adiyasa 04030033 JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI ADISUTJIPTO YOGYAKARTA 2008

description

TUGAS AKHIRSISTEM PENDUKUNG KEPUTUSAN ESTIMASI JUMLAH PRODUKSI GULA DENGAN LOGIKA FUZZY (STUDI KASUS DI PT. MADU BARU YOGYAKARTA)Untuk memenuhi sebagai prasyarat Mencapai derajat S1Disusun oleh : Yoga Adiyasa 04030033JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI ADISUTJIPTO YOGYAKARTA 2008LEMBAR PENGESAHANSISTEM PENDUKUNG KEPUTUSAN ESTIMASI JUMLAH PRODUKSI GULA DENGAN LOGIKA FUZZY (STUDI KASUS DI PT. MADU BARU YOGYAKARTA)Yang dipersiapkan dan disusun olehYoga Adiyasa 04030

Transcript of Laporan TA Yoga Adiyasa

Page 1: Laporan TA Yoga Adiyasa

TUGAS AKHIR

SISTEM PENDUKUNG KEPUTUSAN

ESTIMASI JUMLAH PRODUKSI GULA DENGAN LOGIKA FUZZY

(STUDI KASUS DI PT. MADU BARU YOGYAKARTA)

Untuk memenuhi sebagai prasyarat

Mencapai derajat S1

Disusun oleh :

Yoga Adiyasa

04030033

JURUSAN TEKNIK INFORMATIKA

SEKOLAH TINGGI TEKNOLOGI ADISUTJIPTO

YOGYAKARTA

2008

Page 2: Laporan TA Yoga Adiyasa

LEMBAR PENGESAHAN

SISTEM PENDUKUNG KEPUTUSAN

ESTIMASI JUMLAH PRODUKSI GULA DENGAN LOGIKA FUZZY

(STUDI KASUS DI PT. MADU BARU YOGYAKARTA)

Yang dipersiapkan dan disusun oleh

Yoga Adiyasa

04030033

Tugas Akhir ini telah dipertahankan dan diujikan di depan Tim Penguji

pada tanggal 20 Agustus 2008 dan telah lulus memenuhi syarat

Susunan Tim Penguji

Ketua Penguji : Yuliani Indrianingsih, S.T., M.Kom. ( )

Penguji I : Drs. Agus Basukesti, M.T. ( )

Penguji II : Nurochman, S.Kom., M.Kom. ( )

Penguji III : Anton Setiawan H., S.Kom, M.T. ( )

Mengetahui,

Ketua Sekolah Tinggi Teknologi

Adisutjipto Yogyakarta

Ir. Suyitmadi, M.T.

Ketua Jurusan

Teknik Informatika

Nurochman, S.Kom., M.Kom.

Page 3: Laporan TA Yoga Adiyasa

SURAT PERNYATAAN

Yang bertanda tangan di bawah ini:

Nama : Yoga Adiyasa

NIM : 04030033

Judul Tugas Akhir : Sistem Pendukung Keputusan Estimasi Jumlah Produksi

Gula dengan Logika Fuzzy

( Studi Kasus di PT. Madu Baru Yogyakarta )

Menyatakan bahwa tugas akhir yang saya buat benar-benar karya orisinil

(bukan plagiat). Jika dikemudian hari terdapat permasalahan mengenai orisinilitas,

saya bersedia menjalani ketentuan yang berlaku.

Yogyakarta, Agustus 2008

Yang menyatakan,

Yoga Adiyasa

04030033

Page 4: Laporan TA Yoga Adiyasa

iv

HALAMAN MOTTO

Just Do It…

Do The Best Think The Worst…

Lakukan segala sesuatu dengan niat dan ikhlas...

Page 5: Laporan TA Yoga Adiyasa

v

HALAMAN PERSEMBAHAN

Tugas Akhir ini dengan bangga Aku persembahkan untuk…..

Allah SWT atas berkah dan rahmat-Nya, yang memberikan nafas

kekuatan kehidupan kepada Aku.

Bapak dan Mamaku tercinta yang senantiasa memberikan semangat,

do’a, dan petuah untuk maju menjalani kehidupan.

Adik-adikku tercinta Atma dan Putri yang selalu mendukung langkah

Mas, jangan nakal...belajar dan terus belajar...!

Simbah, Pak/Bu Dhe, Pak/Bu Lek, Sepupu, Ponakan....Great!

Pak Adi (Pertamina), Pak Yusuf, Bu Enti, Bu Cicih, Bu Titin, Pak

Sartono (Telkom), Mas Agus, Pak Hero, Pak Anton, Bu Yuli (STTA),

Bu Kusrini (AMIKOM). Terima kasih atas bimbingan dan

motivasinya...untuk menjadi survive!

Dosen-dosen dan para staf STTA terimakasih banyak…

Anak-anak Informatika angkatan 2004 makasih yah…kalian adalah

nyawa bagi setiap perjalananku…untuk setiap kebersamaan dan

kehangatan…

Seluruh mahasiswa dan Kampus STTAku tercinta…makasih sudah

membuatku menjadi seseorang yang berjiwa besar.

Rekan-rekan organisasi STTA, terima kasih telah merubah paradigma

berpikirku selama di perkuliahan.

Sang Pelangiku yang hanya ada di kala hujan, Makasih telah pernah

singgah di hatiku.....

Dian Sang Motivator baruku, Moga menjadi guru yang berguna bagi

bangsa Indonesia...SALUT!

Page 6: Laporan TA Yoga Adiyasa

vi

Rekanku Joy (Thanks4 pijitan and traktirannya...dapet salam dari

pajangan komputer!), Dewi (pilih mana ?), Eko (Thanks Laptopnya),

Fariz (tegaskan langkah), Tina vs Tini why (yang Semangat), Fitria

(Belajar teruz), Danu (Jangan tidur teruz), Putra (Dah ngrasain kan?),

Kriting (salam buat ibumu), Ucix (semangat), Willy (KP-nya

dikelarin), Peri (Sang Jawara satu koma), Mb. Pur (Enjoy aj), Asih

(Ndang Maju), Jery (salam buat Tom), Alex (The bottom), Syara

(Kapan yang ke-2 ?), Agung (Sing Sregeb), Damas (Maju trz), Kasri

(Thx tebengannya), Prames (Belajar rajin mb.), Skd Gaul2, Pika

(mantapkan hati), Gun2 (4 All :Makasih atas

kebersamaannya...Semangat, sukses, dan Kerja Keras), Mas Endro,

Donny, Piniel (Tim PKM 2008 ku...GREAT!!!), Roy WNG vs Jito

(Makasih untuk temen jaga warnet ’n Bakso Gratisnya....Met berjuang

untuk kalian...Sukses!), Tri ’n Dirgant (Siap Pak Letnan!), Anang ’n

Udin (Kompak!), Zozo (Thanks untuk PHP-nya) , Ms. Yanto vs Ms.

Inyong (Met berkelana), Nur, Yho, Lisa ”Lampir”, Havidz, Beta, Ratna,

Ipul, Ima, Dora, Iti, Sukma (Met berjuang), Babe ’n Hariz (Thanks buat

nongkrongnya), Ms. Jati, Mb. Reny, Mb. Rini ”Warnet”, Mb. Cahya

(Thanks), Irfan UTY dan Ari UII (Thanks atas sharingnya).

Topix, Rendy, Ayu, Dika Thanks atas kebersamaannya magang di

Telkom...Gila abiz!!!

X.IPA3 SMANSA SOLO (The Great Friends), Jaga kekeluargaan kita…

>> I MISS ‘N LOVE YOU ALL… 4EVER<<

Page 7: Laporan TA Yoga Adiyasa

vii

KATA PENGANTAR

Alhamdulillahirabbil’alamin, puji syukur Penulis panjatkan atas kehadirat

Allah SWT, yang telah memberikan rahmat dan hidayah-Nya sehingga Penulis

dapat menyelesaikan Laporan Tugas Akhir dengan judul :

SISTEM PENDUKUNG KEPUTUSAN ESTIMASI JUMLAH PRODUKSI

GULA DENGAN LOGIKA FUZZY

( STUDI KASUS PT. MADU BARU YOGYAKARTA )

Laporan Tugas Akhir ini sebagai prasyarat untuk meraih gelar sarjana

Strata 1 jurusan Teknik Informatika Sekolah Tinggi Teknologi Adisutjipto

Yogyakarta. Judul yang diangkat merupakan alternatif pendukung keputusan

dalam mengestimasi target jumlah produksi gula per tahun di PT. Madu Baru

Yogyakarta yang dihitung dengan teknik Logika Fuzzy dengan Metode Inferensi

Tsukamoto.

Penulis menyadari bahwa tanpa bantuan dari berbagai pihak, Penulis tidak

mungkin menyelesaikan Laporan Tugas Akhir ini. Oleh karena itu, pada

kesempatan ini Penulis menghaturkan terima kasih kepada yang terhormat :

1. Bapak Ir. Suyitmadi, M.T. Selaku Ketua Sekolah Tinggi Teknologi

Adisutjipto Yogyakarta.

2. Bapak Nurochman, S.Kom, M.Kom. Selaku Ketua Jurusan Teknik

Informatika.

3. Bapak Anton Setiawan H., S.Kom., M.T. Selaku Dosen Pembimbing I.

4. Ibu Yuliani Indrianingsih, S.T., M.Kom. Selaku Dosen Pembimbing II.

5. Bapak Widiyanto, SE. Selaku Pembimbing di PT. Madubaru Yogyakarta.

6. Bapak/ Ibu dosen dan para staf Sekolah Tinggi Teknologi Adisutjipto

Yogyakarta.

7. Kedua Orang tua dan adik-adikku yang tak henti-hentinya mendukung

baik do’a maupun semangat untuk menyelesaikan Laporan Tugas Akhir

ini.

8. Rekan-rekan semua angkatan Teknik Informatika khususnya angkatan

2004, terima kasih atas do’a dan kebersamaannya.

Page 8: Laporan TA Yoga Adiyasa

viii

9. Pak Adi (Pertamina), Pak Yusuf, Bu Enti, Bu Cicih, Bu Titin, Pak Sartono

(Telkom), Mas Agus, Pak Hero (STTA), Bu Kusrini (AMIKOM). Terima

kasih atas arahannya.

10. Semua rekan yang tidak bisa disebutkan satu persatu, yang telah

membantu merealisasikan Laporan Tugas Akhir ini. I Love U Guys....!

Semoga Allah SWT memberikan limpahan taufiq dan hidayah-Nya kepada

mereka semua yang telah membantu menyusun Laporan Tugas Akhir ini. Amin.

Penulis menyadari bahwa dalam penyusunan Laporan Tugas Akhir ini masih

banyak kekurangan baik dalam bentuk maupun isi karena keterbatasan

kemampuan Penulis. Oleh karena itu, Penulis mengharapkan kritik dan saran yang

membangun agar Penulis dapat menjadikannya yang lebih baik lagi di kemudian

hari.

Semoga Laporan Tugas Akhir ini bermanfaat bagi segenap elemen

khususnya bagi pengembangan pendidikan di Indonesia dalam menyikapi

perkembangan teknologi informasi. Semoga Allah SWT senantiasa memberikan

berkah dan rahmat-Nya. Amin.

Yogyakarta, Agustus 2008

Yoga Adiyasa

Page 9: Laporan TA Yoga Adiyasa

ix

DAFTAR ISI

HALAMAN JUDUL ..................................................................................... i

LEMBAR PENGESAHAN .......................................................................... ii

SURAT PERNYATAAN .............................................................................. iii

HALAMAN MOTTO ................................................................................... iv

HALAMAN PERSEMBAHAN ................................................................... v

KATA PENGANTAR................................................................................... vii

DAFTAR ISI.................................................................................................. ix

DAFTAR GAMBAR..................................................................................... xii

DAFTAR TABEL ......................................................................................... xv

INTISARI ...................................................................................................... xvi

ABSTRACT .................................................................................................... xvii

BAB I PENDAHULUAN.............................................................................. 1

1.1 Latar Belakang Masalah ............................................................................ 1

1.2 Rumusan Masalah ..................................................................................... 2

1.3 Batasan Masalah........................................................................................ 3

1.4 Tujuan Penelitian ...................................................................................... 3

1.5 Manfaat Penelitian .................................................................................... 3

1.6 Metode Penelitian...................................................................................... 4

BAB II LANDASAN TEORI ....................................................................... 5

2.1 Definisi Sistem .......................................................................................... 5

2.2 Konsep Sistem Pendukung Keputusan ..................................................... 5

2.2.1 Definisi Sistem Pendukung Keputusan ............................................ 5

2.2.2 Karakteristik dan Kapabilitas Sistem Pendukung Keputusan.......... 7

2.2.3 Komponen Sistem Pendukung Keputusan ....................................... 8

2.3 Logika Fuzzy ............................................................................................. 10

2.3.1 Himpunan Fuzzy .............................................................................. 11

2.3.2 Fungsi Keanggotaan......................................................................... 13

2.3.3 Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy .................. 17

Page 10: Laporan TA Yoga Adiyasa

x

2.3.4 Penalaran Monoton .......................................................................... 18

2.3.5 Fungsi Implikasi ............................................................................... 19

2.3.6 Sistem Inferensi Fuzzy ..................................................................... 19

2.4 Konsep Dasar Basis Data .......................................................................... 21

2.4.1 Normalisasi ...................................................................................... 22

2.4.2 Diagram Alir Data............................................................................ 23

2.4.3 Diagram Alir (FlowChart Sistem) ................................................... 24

2.5 Borland Delphi 7.0 .................................................................................... 25

2.5.1 Pengenalan Delphi 7.0 ..................................................................... 25

2.6 MySQL ...................................................................................................... 25

2.7 MyDAC..................................................................................................... 26

2.8 Gambaran Umum Perusahaan................................................................... 26

2.8.1 Sejarah Perusahaan........................................................................... 26

2.8.2 Visi, Misi, dan Budaya Perusahaan.................................................. 27

BAB III PERANCANGAN SISTEM .......................................................... 29

3.1 Spesifikasi Hardware dan Software .......................................................... 29

3.1.1 Spesifikasi Hardware....................................................................... 29

3.1.2 Spesifikasi Software ......................................................................... 29

3.2 Data-Data Pengamatan .............................................................................. 30

3.3 Metodologi Perancangan Sistem Fuzzy .................................................... 31

3.4 Perancangan Aplikasi ................................................................................ 43

3.4.1 Diagram Alir Data............................................................................ 43

3.4.1.1 Diagram Konteks ................................................................ 43

3.4.1.2 DAD Level 0 ....................................................................... 44

3.4.1.3 DAD Level 1 ....................................................................... 45

3.4.2 FlowChart Sistem ............................................................................ 46

3.4.3 Kamus Data ...................................................................................... 47

3.5 Perancangan Program ............................................................................... 48

3.5.1 Perancangan Tampilan Awal ......................................................... 48

3.5.2 Perancangan Tampilan Utama ....................................................... 48

Page 11: Laporan TA Yoga Adiyasa

xi

3.5.3 Perancangan Input Domain Batas Himpunan Fuzzy ...................... 49

3.5.4 Perancangan Input Batas Luas Lahan ............................................ 50

3.5.5 Perancangan Input Batas Jumlah Tebu .......................................... 51

3.5.6 Perancangan Input Batas Rendemen.............................................. 52

3.5.7 Perancangan Input Batas Biaya Produksi ...................................... 53

3.5.8 Perancangan Input Batas Jumlah Produksi .................................... 54

3.5.9 Perancangan Proses Sistem Pendukung Keputusan (SPK)............ 56

3.5.10 Perancangan Output Data Variabel Fuzzy ...................................... 57

3.5.11 Perancangan Output Data Anggaran Produksi............................... 57

3.5.12 Perancangan Cetak Anggaran Produksi per tahun ......................... 58

3.5.13 Perancangan Detail SPK ................................................................ 59

BAB IV IMPLEMENTASI DAN ANALISIS SISTEM............................. 60

4.1 Implementasi Sistem ................................................................................. 60

4.1.1 Implementasi Sistem Awal .............................................................. 61

4.1.2 Implementasi Menu Utama .............................................................. 61

4.1.3 Implementasi Input........................................................................... 62

4.1.4 Implementasi Proses ........................................................................ 67

4.1.5 Implementasi Output ....................................................................... 75

4.1.6 Implementasi Menu Bantuan ........................................................... 78

4.1.7 Implementasi Menu Tentang ........................................................... 79

4.1.8 Implementasi Peringatan .................................................................. 79

4.2 Analisa Sistem........................................................................................... 80

4.2.1 Analisa Hasil .................................................................................... 81

BAB V PENUTUP......................................................................................... 95

5.1 Kesimpulan ............................................................................................... 95

5.2 Saran.......................................................................................................... 96

DAFTAR PUSTAKA

LAMPIRAN I

LAMPIRAN 2

Page 12: Laporan TA Yoga Adiyasa

xii

DAFTAR GAMBAR

2.1 Arsitektur DSS ........................................................................................ 10

2.2 Himpunan Fuzzy pada variabel temperatur............................................. 12

2.3 Representasi Linear Naik ........................................................................ 14

2.4 Representasi Linear Turun ...................................................................... 14

2.5 Kurva Segitiga......................................................................................... 15

2.6 Kurva Trapesium..................................................................................... 15

2.7 Kurva Bentuk Bahu................................................................................. 16

2.8 Kurva-S: PERTUMBUHAN................................................................... 16

2.9 Kurva-S : PENYUSUTAN ..................................................................... 17

2.10 Kurva Bentuk Lonceng ........................................................................... 17

2.11 Metode Inferensi Tsukamoto .................................................................. 20

2.12 Proses dalam FIS..................................................................................... 21

3.1 Luas Lahan .............................................................................................. 32

3.2 Jumlah Tebu ............................................................................................ 33

3.3 Rendemen................................................................................................ 34

3.4 Biaya Produksi ........................................................................................ 35

3.5 Jumlah Produksi ...................................................................................... 36

3.6 Diagram Konteks .................................................................................... 43

3.7 DAD Level 0 ........................................................................................... 44

3.8 DAD Level 1 ........................................................................................... 45

3.9 FlowChart Sistem ................................................................................... 46

3.10 Perancangan Tampilan Awal .................................................................. 48

3.11 Perancangan Tampilan Utama ................................................................ 49

3.12 Perancangan Input Domain Batas Himpunan Fuzzy ............................... 50

3.13 Perancangan Input Batas Luas Lahan ..................................................... 51

3.14 Perancangan Input Batas Jumlah Tebu ................................................... 52

3.15 Perancangan Input Batas Rendemen....................................................... 53

3.16 Perancangan Input Batas Biaya Produksi ............................................... 54

3.17 Perancangan Input Batas Jumlah Produksi ............................................. 55

Page 13: Laporan TA Yoga Adiyasa

xiii

3.18 Perancangan Proses SPK......................................................................... 56

3.19 Perancangan Output Data Variabel Fuzzy ............................................... 57

3.20 Perancangan Output Data Anggaran Produksi ........................................ 58

3.21 Perancangan Cetak Anggaran Produksi per Tahun................................. 58

3.22 Perancangan Detail SPK ......................................................................... 59

4.1 Splash Screen .......................................................................................... 61

4.2 Menu Utama............................................................................................ 62

4.3 Menu Domain Batas................................................................................ 62

4.4 Input Batas Luas Lahan........................................................................... 64

4.5 Input Batas Jumlah Tebu......................................................................... 65

4.6 Input Batas Rendemen ............................................................................ 65

4.7 Input Batas Biaya Produksi ..................................................................... 66

4.8 Input Batas Jumlah Produksi................................................................... 67

4.9 Proses SPK .............................................................................................. 68

4.10 Unit Fuzzifikasi ....................................................................................... 68

4.11 Fungsi Fuzzifikasi Bahu Kiri................................................................... 69

4.12 Fungsi Fuzzifikasi Segitiga ..................................................................... 69

4.13 Fungsi Fuzzifikasi Bahu Kanan............................................................... 70

4.14 Fungsi Find_Min..................................................................................... 71

4.15 Unit DeFuzzifikasi ................................................................................... 71

4.16 Fungsi DeFuzzifikasi Bahu Kiri .............................................................. 72

4.17 Fungsi DeFuzzifikasi Segitiga................................................................. 72

4.18 Fungsi DeFuzzifikasi Bahu Kanan .......................................................... 72

4.19 Implementasi Fungsi Implikasi Min dan DeFuzzifikasi ......................... 73

4.20 Prosedur Rata-Rata Terbobot .................................................................. 74

4.21 Proses Edit Anggaran Produksi............................................................... 75

4.22 Data Variabel Fuzzy ................................................................................ 76

4.23 Anggaran Produksi .................................................................................. 76

4.24 Print Preview Anggaran Produksi .......................................................... 77

4.25 Detail SPK............................................................................................... 78

4.26 Menu Bantuan ......................................................................................... 78

Page 14: Laporan TA Yoga Adiyasa

xiv

4.27 Menu Tentang ......................................................................................... 79

4.28 Peringatan Data Harus Diisi Semuanya .................................................. 79

4.29 Peringatan Data Tidak Sesuai Aturan ..................................................... 80

4.30 Peringatan Nilai Kurang dari Batas Minimum ....................................... 80

Page 15: Laporan TA Yoga Adiyasa

xv

DAFTAR TABEL

2.1 Simbol-Simbol Diagram Alir Data ......................................................... 23

2.2 Simbol-Simbol Diagram Alir.................................................................. 24

3.1 Data Pengamatan..................................................................................... 30

3.2 Kamus Data Batas ................................................................................... 47

3.3 Kamus Data Anggaran ............................................................................ 47

4.1 Data Perbandingan .................................................................................. 94

Page 16: Laporan TA Yoga Adiyasa

xvi

Intisari

Sistem Pendukung Keputusan atau SPK merupakan suatu sistem yangmembantu manajer dalam menyelesaikan permasalahan yang semiterstruktur. Banyak teknik yang dipakai untuk membuat SPK, salah satunyadengan Logika Fuzzy. Logika Fuzzy merupakan salah satu teknik penyelesaianmasalah yang berbasiskan perasaan. Dimana derajat keanggotaan yangbiasanya direpresentasikan dengan nilai 0 dan 1, dengan Logika Fuzzy iniderajat keanggotaannya dapat direpresentasikan dengan nilai antara 0 dan 1sehingga dapat lebih seimbang. PT. Madu Baru Yogyakarta merupakansebuah perusahaan yang bergerak di bidang industri yang salah satu usahanyaadalah memproduksi gula pasir. Sebelum melakukan produksi, terlebihdahulu harus menentukan jumlah gula yang harus diproduksi per tahunnya.Sehingga harus memperhitungkan faktor-faktor yang berpengaruh. Faktor-faktor tersebut antara lain luas lahan, jumlah tebu, rendemen, serta biayaproduksi. Biasanya PT. Madu Baru sebelum melakukan produksimengadakan rapat intern terlebih dahulu. Maka dari itu, untuk lebihmembantu dalam membuat keputusan jumlah produksi gula tersebut perludibuat SPK. SPK tersebut akan menggunakan teknik logika fuzzy MetodeInferensi Tsukamoto yang menerapkan rata-rata terbobot untuk menghitungjumlah produksi gula sebagai hasil akhirnya. Diharapkan SPK ini dapatdijadikan alternatif dalam mengestimasi jumlah produksi gula di PT. MaduBaru Yogyakarta nantinya.

Kata Kunci : SPK, Logika Fuzzy, Metode Inferensi Tsukamoto

Page 17: Laporan TA Yoga Adiyasa

xvii

Abstract

Decision Support System or DSS is a system that help a manager in finishingthe semi structure problem. A lot of technique are proved to make the DSS, one of themis used the Fuzzy Logic. Fuzzy Logic is one of technique for solving problem which hasbases the feeling, where membership degree which is usually assessed with the value 0and 1 can be assessed with the value between 0 and 1. This is more proportional. PT.Madu Baru Yogyakarta is a company that active in industry which one of its effort isproduce the sand sugar. Before doing production, It has to determine the sugar amountwhich must be produced in its year. So, have to pay attention the factors having aneffect on. The factors for example wide of farm, sum up the sugar cane, sugar rate, andalso production cost. PT. Madu Baru have an intern meeting to make decision aboutproduction. Hence from that, to assist in make decision the amount produce of sugar iscreated a DSS. The DSS will use the technique of fuzzy logic that is TsukamotoInference Method that applying weight average to count the sugar production as finalreport. Expected this DSS can be alternative in estimating amount of sugar productionin PT. Madu Baru Yogyakarta later.

Keywords : DSS, Fuzzy Logic, Tsukamoto Inference Method

Page 18: Laporan TA Yoga Adiyasa

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Sistem pendukung keputusan (SPK) atau dikenal dengan Decission

Support System (DSS) merupakan suatu sistem untuk mendukung para pengambil

keputusan manajerial dalam situasi keputusan semiterstruktur. Sistem ini

dimaksudkan untuk menjadi alat bantu bagi para pengambil keputusan untuk

memperluas kapabilitas mereka, namun tidak untuk menggantikan penilaian

mereka. DSS ditujukan untuk keputusan-keputusan yang sama sekali tidak dapat

didukung oleh algoritma. DSS menggunakan CBIS yang fleksibel, interaktif, dan

dapat diadaptasi untuk dikembangkan guna mendukung solusi untuk masalah

manajemen spesifik. DSS menggunakan data, memberikan antarmuka pengguna

yang mudah dan dapat menggabungkan pemikiran pengambil keputusan.

Sehingga dengan DSS ini diharapkan para manajer ataupun para pengambil

keputusan dapat diringankan bebannya dalam suatu masalah tertentu.

Penentuan jumlah produksi dalam perusahaan merupakan suatu hal yang

harus diperhatikan sebelum memulai sebuah proses produksi. Perlu

dipertimbangkan berbagai faktor untuk menentukan jumlah produksi barang,

untuk menghindari risiko perusahaan. Oleh karena itu, diperlukan suatu

pertimbangkan matang dalam mengelola produksi barang. Pertimbangan itu antara

lain jumlah permintaan, biaya produksi, jumlah karyawan, efisiensi mesin,

persediaan yang ada, jumlah bahan baku dan lain sebagainya. Sehingga,

diperlukan suatu DSS untuk membantu para manajer dalam menentukan jumlah

produksi tersebut.

Logika fuzzy merupakan suatu metode yang berbasiskan perasaan yang

mampu memberikan solusi lebih seimbang. Logika ini merupakan suatu cara yang

tepat untuk memetakan suatu ruang input ke dalam suatu ruang output, sifatnya

yang fleksibel sehingga dapat membangun dan mengaplikasikan pengalaman-

Page 19: Laporan TA Yoga Adiyasa

2

pengalaman para pengambil keputusan secara langsung tanpa harus melalui proses

pelatihan. Logika Fuzzy diperkenalkan oleh Prof. Lotfi Zadeh pada tahun 1965,

yang merupakan metode yang mempunyai kemampuan untuk memproses variabel

yang bersifat kabur atau yang tidak dapat dideskripsikan secara eksak/pasti seperti

misalnya tinggi, lambat, bising, dan sebagainya. Dalam logika fuzzy variabel yang

bersifat kabur tersebut direpresentasikan sebagai sebuah himpunan yang anggota-

anggotanya adalah suatu nilai crisp dan derajat keanggotaan di dalam himpunan

tersebut. Himpunan tersebut memiliki derajat keanggotaan antara 0 sampai 1,

sehingga lebih seimbang dalam mengambil suatu keputusan.

PT. Madu Baru Yogyakarta merupakan suatu perusahaan yang bergerak di

bidang industri yaitu salah satunya memproduksi gula pasir. Banyak sekali faktor

yang harus dipertimbangkan dalam menentukan berapa jumlah produksi yang

harus dihasilkan pertahunnya yang akan dijadikan target dalam memulai sebuah

usaha. Untuk itu, dalam menentukan target jumlah produksi pertahun dibutuhkan

sebuah DSS untuk mengelola dan memanajemen segala sumber daya yang ada

sehingga suatu produksi dapat berjalan dengan efektif dan efisien. Dalam

pembuatan DSS ini akan dilakukan dengan menerapkan logika fuzzy dalam

mengelola faktor-faktor yang menentukan jumlah produksi tersebut. Faktor-faktor

tersebut akan dijadikan suatu masukan kemudian diproses dengan logika fuzzy

sehingga diperoleh suatu keluaran yaitu jumlah produksi gula per tahunnya.

Diharapkan dengan metode ini keputusan yang dihasilkan akan lebih bermanfaat

bagi perusahaan.

1.2 Rumusan Masalah

Adapun rumusan masalah yang diambil dari latar belakang masalah

tersebut adalah :

1. Dibutuhkannya suatu sistem yang mendukung pengambilan keputusan

manajerial dalam mengestimasi jumlah produksi gula per tahun.

2. Dibutuhkannya suatu teknik perhitungan dalam sistem pendukung

keputusan tersebut.

Page 20: Laporan TA Yoga Adiyasa

3

3. Perlu dipertimbangkan faktor-faktor apa saja yang harus diperhatikan

dalam menentukan jumlah produksi gula per tahun.

4. Diperlukan suatu metode untuk memetakan faktor-faktor penentu produksi

gula agar menghasilkan keluaran yang mendukung.

1.3 Batasan Masalah

Dibuat suatu sistem pendukung keputusan untuk menentukan target atau

mengestimasi jumlah produksi gula per tahun dengan teknik logika fuzzy yang

lebih memperhatikan faktor-faktor dalam menentukan keputusan jumlah produksi

tersebut. Selain itu, faktor-faktor tersebut dinilai dengan sistem penilaian yang

lebih seimbang. Adapun faktor-faktor yang digunakan sebagai indikasi antara lain

luas lahan, jumlah tebu, rendemen atau kadar gula dalam tebu, dan biaya

produksi. Faktor-faktor tersebut akan dijadikan sebagai masukkan yang akan

diproses menggunakan metode inferensi fuzzy yaitu dengan metode Tsukamoto

yang akan menghasilkan keluaran berupa jumlah produksi gula per tahunnya.

1.4 Tujuan Penelitian

Menganalisa serta membuat suatu rancang bangun aplikasi berbasis

komputer untuk mengestimasi jumlah produksi gula per tahun dengan salah satu

teknik kecerdasan buatan yaitu menggunakan teknik Logika Fuzzy Metode

Inferensi Tsukamoto.

1.5 Manfaat Penelitian

Adapun manfaat dalam pembuatan aplikasi ini adalah :

1. Mempermudah bagian produksi serta akuntansi dan keuangan dalam

menentukan target jumlah produksi gula per tahunnya berdasarkan faktor-

faktor apa saja yang mendukung produksi tersebut.

2. Keputusan yang dihasilkan oleh aplikasi tersebut dapat dijadikan masukan

bagi manajer umum dalam menentukan target jumlah produksi gula pada

saat itu.

Page 21: Laporan TA Yoga Adiyasa

4

1.6 Metode Penelitian

Adapun metode-metode yang digunakan dalam penelitian ini adalah :

1. Metode Wawancara

Suatu metode yang dilakukan dengan melakukan wawancara atau tanya

jawab dengan bagian produksi serta akuntansi dan keuangan. Dengan

wawancara tersebut akan didapat suatu gambaran jelas mengenai

penentuan jumlah produksi gula karena dilakukan dengan pihak terkait

secara langsung.

2. Metode Observasi

Suatu metode dengan melakukan pengamatan tentang cara kerja sistem

yang sudah ada dalam menentukan jumlah produksi. Pengamatan ini

meliputi penganalisaan data-data di perusahaan terkait, pengamatan

mengenai cara menentukan jumlah produksi gula, serta cara kerja sistem

yang menerapkan logika fuzzy dalam membantu mendukung keputusan.

3. Studi Kepustakaan

Suatu metode yang dilakukan dengan membaca referensi, buku, artikel

maupun tulisan yang menunjang dalam pembuatan sistem ini, sehingga

didapatkan suatu analisa yang baik untuk menghasilkan suatu solusi.

Pustaka-pustaka tersebut akan membantu dalam menganalisa serta

mandapatkan logika yang berkaitan dengan teori mengenai produksi, teori

tentang logika fuzzy, dan realisasi program aplikasi.

Page 22: Laporan TA Yoga Adiyasa

5

BAB II

LANDASAN TEORI

2.1 Definisi Sistem

Sistem merupakan kumpulan elemen yang saling berkaitan yang bertanggung

jawab memproses masukan (input) sehingga menghasilkan keluaran (output).

2.2 Konsep Sistem Pendukung Keputusan

2.2.1 Definisi Sistem Pendukung Keputusan

Sistem Pendukung Keputusan atau SPK atau dalam bahasa inggrisnya dikenal

dengan DSS atau Decission Support System merupakan sistem informasi interaktif

yang menyediakan informasi, pemodelan, dan pemanipulasian data. Sistem ini

digunakan untuk membantu pengambil keputusan dalam situasi semiterstruktur dan

situasi yang tidak terstruktur, dimana tak seorang pun tahu secara pasti bagaimana

keputusan seharusnya dibuat (Alter, 2002).

Little (1970) mendefinisikan DSS sebagai “sekumpulan prosedur berbasis

model untuk data pemrosesan dan penilaian guna membantu para manajer mengambil

keputusan.” Dia menyatakan bahwa untuk sukses, sistem tersebut haruslah sederhana,

cepat, mudah dikontrol, adaptif, lengkap dengan isu-isu penting, dan mudah

berkomunikasi.

Moore dan Chang (1980) berpendapat bahwa konsep struktur, seperti yang

banyak disinggung pada definisi awal DSS (bahwa DSS dapat menangani situasi

semiterstruktur dan tidak terstruktur), secara umum tidaklah penting; sebuah masalah

dapat dijelaskan sebagai masalah terstruktur dan tidak terstruktur hanya dengan

memperhatikan si pengambil keputusan atau suatu situasi spesifik (yakni keputusan

terstruktur adalah terstruktur karena kita memilih untuk memperlakukannya dengan

cara seperti itu). Jadi, Moore dan Chang mendefinisikan DSS sebagai sistem yang

dapat diperluas untuk mempu mendukung analisa data ad hoc dan pemodelan

Page 23: Laporan TA Yoga Adiyasa

6

keputusan, berorientasi terhadap perencanaan masa depan, dan digunakan pada

interval yang tidak regular dan tak terencana.

Keen (1980) menerapkan istilah DSS “untuk situasi dimana sistem ‘final’

dapat dikembangkan hanya melalui suatu proses pembelajaran dan evolusi yang

adaptif.” Jadi, Keen mendefinisikan DSS sebagai suatu produk dari proses

pengembangan dimana pengguna DSS, pembangun DSS, dan DSS itu sendiri mampu

mempengaruhi satu dengan yang lainnya, dan menghasilkan evolusi sistem dan pola-

pola penggunaan.

Sehingga, DSS dapat didefinisikan sebagai sebuah sistem untuk mendukung

para pengambil keputusan manajerial dalam situasi keputusan semiterstruktur. DSS

dimaksudkan untuk menjadi alat bantu bagi para pengambil keputusan untuk

memperluas kapabilitas mereka, namun bukan untuk menggantikan penilaian mereka.

DSS ditujukan untuk keputusan-keputusan yang memerlukan penilaian atau pada

keputusan-keputusan yang sama sekali tidak dapat didukung oleh algoritma.

DSS biasanya dibangun mendukung solusi atas suatu masalah atau untuk

mengevaluasi suatu peluang. DSS yang seperti itu disebut aplikasi DSS, aplikasi DSS

digunakan dalam pengambilan keputusan. Aplikasi DSS menggunakan CBIS

(Computer Based Information System) yang fleksibel, interaktif, dan dapat diadaptasi,

yang dikembangkan untuk mendukung solusi atas masalah manajemen spesifik yang

tidak terstruktur. Aplikasi DSS menggunakan data, memberikan antarmuka pengguna

yang mudah, dan dapat menggabungkan pemikiran pengambilan keputusan.

DSS lebih ditujukan untuk mendukung manajemen dalam melakukan pekerjaan

yang bersifat analitis dalam situasi yang kurang terstruktur dan dengan criteria yang

kurang jelas. DSS tidak dimaksudkan untuk mengotomatisasikan pengambilan

keputusan, tetapi memberikan perangkat interaktif yang memungkinkan pengambil

keputusan untuk melakukan berbagai analisis menggunakan model-model yang

tersedia.

Page 24: Laporan TA Yoga Adiyasa

7

2.2.2 Karakteristik dan Kapabilitas Sistem Pendukung Keputusan

1. Dukungan untuk pengambil keputusan, terutama pada situasi semiterstruktur

dan tak terstruktur, dengan menyertakan penilaian manusia dan informasi

terkomputerisasi. Masalah-masalah tersebut tidak dapat dipecahkan oleh

sistem komputer lain atau oleh metode atau alat kuantitatif standar.

2. Dukungan untuk semua level manajerial, dari eksekutif puncak sampai

manajer lini.

3. Dukungan untuk individu dan kelompok. Masalah yang kurang terstruktur

sering memerlukan keterlibatan individu dari departemen dan tingkat

organisasional yang berbeda atau bahkan dari organisasi lain.

4. Dukungan untuk keputusan independen atau/ atau sekuensial. Keputusan bisa

dibuat satu kali, beberapa kali, atau berulang (dalam interval yang sama).

5. Dukungan di semua fase proses pengambilan keputusan : intelegensi, desain,

pilihan, dan implementasi.

6. Dukungan di berbagai proses dan gaya pengambilan keputusan.

7. Adaptivitas sepanjang waktu. Pengambil keputusan seharusnya reaktif, bisa

menghadapi perubahan kondisi secara cepat, dan mengadaptasi DSS untuk

memenuhi perubahan tersebut. DSS bersifat fleksibel, oleh karena itu

pengguna bisa menambahkan, menghapus, menggabungkan, mengubah, atau

menyusun kembali elemen-elemen dasar. DSS juga fleksibel dalam hal bisa

dimodifikasi untuk memecahkan masalah lain yang sejenis.

8. Pengguna merasa seperti di rumah. Ramah-pengguna, kapabilitas grafis yang

sangat kuat, dan antarmuka manusia-mesin yang interaktif dengan satu bahasa

alami bisa sangat meningkatkan efektivitas DSS.

9. Peningkatan efektivitas pengambilan keputusan (akurasi, timelines, kualitas)

ketimbang pada efisiensinya (biaya pengambilan keputusan). Ketika DSS

disebarkan, pengambilan keputusan sering membutuhkan waktu lebih lama,

tetapi hasilnya lebih baik.

Page 25: Laporan TA Yoga Adiyasa

8

10. Kontrol penuh oleh pengambil keputusan terhadap semua langkah proses

pengambilan keputusan dalam memecahkan suatu masalah. DSS secara

khusus menekankan untuk mendukung keputusan, bukannya menggantikan.

11. Pengguna akhir bisa mengembangkan dan memodifikasi sendiri sistem

sederhana. Sistem yang lebih besar bisa dibangun dengan bantuan ahli sistem

informasi. Perangkat lunak OLAP dalam kaitannya dengan data warehouse

memperbolehkan pengguna untuk membangun DSS yang cukup besar.

12. Biasanya, model-model digunakan untuk menganalisis situasi pengambilan

keputusan. Kapabilitas pemodelan memungkinkan eksperimen dengan

berbagai strategi yang berbeda di bawah konfigurasi yang berbeda.

13. Akses disediakan untuk berbagai sumber data, format, dan tipe, mulai dari

sistem informasi geografis (GIS) sampai sistem berorientasi-objek.

14. Dapat digunakan sebagai alat standalone oleh seorang pengambil keputusan

pada satu lokasi atau didistribusikan di suatu organisasi secara keseluruhan

dan di beberapa organisasi sepanjang rantai persediaan. Dapat diintegrasikan

dengan DSS lain dan atau aplikasi lain, serta bisa didistribusikan secara

internal dan eksternal menggunakan networking dan teknologi Web.

Karakteristik dan kapabilitas dari DSS tersebut memungkinkan para pengambil

keputusan untuk membuat keputusan yang lebih baik dan lebih konsisten dalam satu

cara yang dibatasi oleh waktu.

2.2.3 Komponen Sistem Pendukung Keputusan

Aplikasi sistem pendukung keputusan bisa terdiri dari beberapa subsistem,

yaitu :

1. Subsistem manajemen data

Subsistem manajemen data memasukkan satu database yang berisi data yang

relevan untuk situasi dan dikelola oleh perangkat lunak yang disebut sistem

manajemen database (DBMS/ Database Management System). Subsistem

manajemen data bisa diinterkoneksikan dengan data warehouse perusahaan,

Page 26: Laporan TA Yoga Adiyasa

9

suatu repository untuk data perusahaan yang relevan dengan pengambilan

keputusan.

2. Subsistem manajemen model

Merupakan paket perangkat lunak yang memasukkan model keuangan,

statistic, ilmu manajemen, atau model kuantitatif lain yang memberikan

kapabilitas analitik dan manajemen perangkat lunak yang tepat. Bahasa-

bahasa pemodelan untuk membangun model kustom yang dimasukkan.

Perangkat lunak itu sering disebut sistem manajemen basis model (MBMS).

Komponen tersebut bisa dikoneksikan menuju penyimpanan korporat atau

eksternal yang ada pada model.

3. Subsistem antarmuka pengguna

Pengguna berkomunikasi dengan dan memerintahkan sistem pendukung

keputusan melalui subsistem tersebut. Pengguna adalah bagian yang

dipertimbangkan dari sistem. Para peneliti menegaskan bahwa beberapa

kontribusi unik dari sistem pendukung keputusan berasal dari interaksi yang

intensif anatara komputer dan pembuat keputusan.

4. Subsistem manajemen berbasis pengetahuan

Subsistem tersebut mendukung semua subsistem lain atau bertindak langsung

sebagai suatu komponen independen dan bersifat opsional. Selain

memberikan intelegensi untuk memperbesar pengetahuan si pengambil

keputusan, subsistem tersebut bisa diinterkoneksikan dengan repository

pengetahuan perusahaan (bagian dari sistem manajemen pengetahuan), yang

kadang-kadang disebut basis pengetahuan organisasional.

Berdasarkan definisi, sistem pendukung keputusan harus mencakup tiga komponen

utama dari DBMS, MBMS, dan antarmuka pengguna. Subsistem manajemen berbasis

pengetahuan adalah opsional, tetapi bisa memberikan banyak manfaat karena

memberikan intelegensi bagi ketiga komponen tersebut. Seperti pada semua sistem

informasi manajemen, pengguna bisa dianggap sebagai komponen sistem pendukung

keputusan. Komponen-komponen tersebut membentuk sistem aplikasi pendukung

Page 27: Laporan TA Yoga Adiyasa

10

keputusan yang bisa dikoneksikan ke intranet perusahaan, ekstranet, atau Internet.

Umumnya komponen berkomunikasi via teknologi Internet. Browser Web umumnya

memberikan antarmuka pengguna. Arsitektur sistem pendukung keputusan dan

komponen yang ditunjukkan pada gambar 2.1 memberikan pemahaman mendasar

mengenai struktur umum suatu sistem pendukung keputusan atau DSS.

Gambar 2.1 Arsitektur DSS

Sumber : Buku Decision Support Systems and Intelligent Systems oleh Turban

2.3 Logika Fuzzy

Logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input

ke dalam suatu ruang output. Logika fuzzy dikatakan sebagai logika baru yang lama,

sebab ilmu tentang logika fuzzy modern dan metodis baru ditemukan beberapa tahun

lalu padahal sebenarnya konsep tentang logika fuzzy itu sendiri sudah ada pada diri

Sistem lainnyayang berbasis

komputer

Internet,Intraner,ekstranet

Subsistem berbasispengetahuan

Antarmukapengguna

ManajemenData

Manajemenmodel

Manajer(pengguna)

Modeleksternal

Basis pengetahuanorganisasional

Data : eksternaldan internal

Page 28: Laporan TA Yoga Adiyasa

11

kita sejak lama. Logika ini berbasiskan perasaan manusia. Ada beberapa alasan

mengapa orang menggunakan logika fuzzy antara lain :

1. Konsep logika fuzzy mudah dimengerti. Konsep matematis yang

mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti.

2. Logika fuzzy sangat fleksibel.

3. Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat.

4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinier yang sangat

kompleks.

5. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara

konvensional.

6. Logika fuzzy didasarkan pada bahasa alami.

2.3.1 Himpunan Fuzzy

Pada himpunan tegas (crisp), nilai keanggotaan suatu item x dalam suatu

himpunan A, yang sering ditulis dengan µA[x], memiliki 2 kemungkinan, yaitu :

1. Satu (1), yang berarti bahwa suatu item menjadi anggota dalam suatu

himpunan, atau

2. Nol (0), yang berarti bahwa suatu item tidak menjadi anggota dalam suatu

himpunan.

Terkadang kemiripan antara keanggotaan fuzzy dengan probabilitas menimbulkan

kerancuan. Keduanya memiliki nilai pada interval [0,1], namun interpretasi nilainya

sangat berbeda antara kedua kasus tersebut. Keanggotaan fuzzy memberikan suatu

ukuran terhadap pendapat atau keputusan, sedangkan probabilitas mengindikasikan

proporsi terhadap keseringan suatu hasil bernilai benar dalam jangka waktu yang

panjang. Misalnya, jika nilai keanggotaan suatu himpunan fuzzy MUDA adalah 0,9;

maka tidak perlu dipermasalahkan berapa seringnya nilai itu diulang secara individual

untuk mengharapkan suatu hasil yang hamper pasti muda. Di lain pihak, nilai

probabilitas 0,9 muda berarti 10% dari himpunan tersebut diharapkan tidak muda.

Himpunan fuzzy memiliki 2 atribut, yaitu :

Page 29: Laporan TA Yoga Adiyasa

12

µ[x]

DINGIN SEJUK NORMAL HANGAT PANAS

15 20 25 30 35 40

1

0

a. Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau

kondisi tertentu dengan menggunakan bahasa alamim, seperti : MUDA,

PAROBAYA, TUA.

b. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu

variabel seperti : 40, 25, 50, dsb.

Ada beberapa hal yang perlu diketahui dalam memahami suatu sistem fuzzy, yaitu :

a. Variabel fuzzy

Variabel fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem

fuzzy. Contoh : umur, temperatur, permintaan, dsb.

b. Himpunan fuzzy

Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau

keadaan tertentu dalam suatu variabel fuzzy.

Contoh :

1. Variabel umur, terbagi menjadi 3 himpunan fuzzy, yaitu : MUDA,

PAROBAYA, TUA.

2. Variabel temperatur, terbagi menjadi 5 himpunan fuzzy, yaitu : DINGIN,

SEJUK, NORMAL, HANGAT, dan PANAS.

c. Semesta Pembicaraan

Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan umtuk

dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan

Gambar 2.2 Himpunan Fuzzy pada variabel temperatur

Page 30: Laporan TA Yoga Adiyasa

13

himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari

kiri ke kanan. Nilai semesta pembicaraan dapat berupa bilangan positif

maupun negative. Adakalanya nilai semesta pembicaraan ini tidak dibatasi

batas atasnya.

Contoh :

1. Semesta pembicaraan untuk variabel umur : [0 +∞]

2. Semesta pembicaraan untuk variabel temperatur : [0 40]

d. Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang diijinkan dalam

semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy.

Seperti halnya semesta pembicaraan, domain merupakan himpunan bilangan

real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan.

Nilai domain dapat berupa bilangan positif maupun negative.

Contoh domain himpunan fuzzy :

1. MUDA = [0 45]

2. PAROBAYA = [35 55]

3. TUA = [45 +∞]

2.3.2 Fungsi Keanggotaan

Fungsi Keanggotaan (membership function) adalah suatu kurva yang

menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya (sering

juga disebut dengan derajat keanggotaan) yang memiliki interval antara 0 sampai 1.

Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah

dengan melalui pendekatan fungsi. Ada beberapa fungsi yang bisa digunakan :

a. Representasi Linier

Pada representasi linier, pemetaan input ke derajat keanggotaannya digambarkan

sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik

untuk mendekati suatu konsep yang kurang jelas. Ada 2 keadaan himpunan fuzzy

linier. Pertama, garis lurus naik dari domain yang memiliki derajat keanggotaan

Page 31: Laporan TA Yoga Adiyasa

14

1

0a b

a bdomain

1

0

µ[x]

µ[x]

domain

terkecil [0] di sisi kiri ke arah kanan menuju nilai domain yang memiliki derajat

keanggotaan yang lebih tinggi.

Kedua, kebalikan dari yang pertama. Garis lurus dimulai dari nilai domain dengan

derajat keanggotaan tertinggi di sisi kiri kemudian menurun ke kanan ke nilai domain

yang derajat keanggotaannya lebih rendah.

b. Representasi Kurva Segitiga

Kurva segitiga pada dasarnya gabungan antara 2 garis (linear) seperti terlihat pada

gambar berikut :

Gambar 2.3 Representasi Linear Naik

Gambar 2.4 Representasi Linear Turun

Page 32: Laporan TA Yoga Adiyasa

15

1

0

µ[x]

a b c

1

µ[x]

0a b c d

c. Representasi Kurva Trapesium

Kurva trapezium pada dasarnya seperti bentuk segitiga, hanya saja ada beberapa

titik yang memiliki keanggotaan 1.

d. Representasi Kurva Bentuk Bahu

Kurva yang bentuknya seperti bahu di sisi paling kanan dan paling kirinya.

Himpunan fuzzy ‘bahu’, bukan segitiga, digunakan untuk mengakhiri variabel suatu

daerah fuzzy.

Gambar 2.5 Kurva Segitiga

Gambar 2.6 Kurva Trapesium

Page 33: Laporan TA Yoga Adiyasa

16

1

µ[x]

0

Bahu Kiri Bahu Kanan

a b c d e f

1

0

µ[x]

ba

e. Representasi Kurva-S

Kurva PERTUMBUHAN dan PENYUSUTAN merupakan kurva S atau sigmoid

yang berhubungan dengan kenaikan dan penurunan permukaan secara tak linear.

Kurva-S untuk PERTUMBUHAN akan bergerak dari sisi paling kiri (nilai

keanggotaan=0) ke sisi paling kanan (nilai keanggotaan=1). Fungsi keanggotaanya

akan tertumpu pada 50% nilai keanggotaanya yang sering disebut dengan titik

infleksi.

Kurva-S PENYUSUTAN akan bergerak dari sisi paling kanan (nilai keanggotaan=1)

ke sisi paling kiri (nilai keanggotaan=0).

Gambar 2.7 Kurva Bentuk Bahu

Gambar 2.8 Kurva-S : PERTUMBUHAN

Page 34: Laporan TA Yoga Adiyasa

17

1

µ[x]

0a b

cb0a

µ[x]

1

f. Representasi Kurva Bentuk Lonceng (Bell Curve)

Kurva bentuk lonceng ini terbabi atas 3 kelas yaitu : himpunan fuzzy PI, BETA,

dan Gauss. Perbedaanya terletak pada gradiennya.

2.3.3 Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy

Ada 3 operator dasar yang diciptakan oleh Zadeh, yaitu :

1. Operator AND

Operator ini berhubungan dengan operasi interseksi pada himpunan. α-predikat

sebagai hasil operasi dengan operator AND diperoleh dengan mengambil nilai

keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan.

µA∩B = min( µA[x],µB[y] )

Gambar 2.9 Kurva-S : PENYUSUTAN

Gambar 2.10 Kurva-Bentuk Lonceng

Page 35: Laporan TA Yoga Adiyasa

18

2. Operator OR

Operator ini berhubungan dengan operator union pada himpunan. α-predikat

sebagai hasil operasi dengan operator OR diperoleh dengan mengambil nilai

keanggotaan terbesar antar elemen pada himpunan-himpunan yang bersangkutan.

µAUB = min( µA[x],µB[y] )

3. Operator NOT

Operator ini berhubungan dengan operasi komplemen pada himpunan. α-predikat

sebagai hasil operasi dengan operator NOT diperoleh dengan mengurangkan nilai

keanggotaan elemen pada himpunan yang bersangkutan dari 1.

µA’ = 1- µA[x]

2.3.4 Penalaran Monoton

Metode ini digunakan sebagai dasar untuk teknik implikasi fuzzy. Jika 2 daerah fuzzy

direalisasikan dengan implikasi sederhana sebagai berikut :

IF x is A THEN y is B

Memiliki transfer fungsi :

Y = f ((x, A), B)

Maka sistem fuzzy dapat berjalan tanpa harus melalui komposisi dan dekomposisi

fuzzy. Nilai output dapat di estimasi secara langsung dari nilai keanggotaan yang

berhubungan dengan antesedennya.

2.3.5 Fungsi Implikasi

Tiap-tiap aturan (proposisi) pada basis pengetahuan fuzzy akan berhubungan

dengan suatu relasi fuzzy. Bentuk umum dari aturan yang digunakan dalam fungsi

implikasi adalah :

Page 36: Laporan TA Yoga Adiyasa

19

IF x is A THEN y is B

Dengan x dan y adalah skalar, dan A dan B adalah himpunan fuzzy. Proposisi yang

mengikuti IF disebut sebagai anteseden, sedangkan proposisi yang mengikuti THEN

disebut sebagai konsekuen. Proposisi ini dapat diperluas dengan menggunakan

operator fuzzy, seperti :

IF (x1 is A1)٠(x2 is A2) ٠(x3 is A3)٠……. ٠(xn is An) THEN y is B

Dengan ٠adalah operator (misal : OR atau AND).

Secara umum ada 2 implikasi yang dapat digunakan, yaitu :

a. Min (minimum)

Fungsi ini akan memotong output himpunan fuzzy.

b. Dot (product)

Fungsi ini akan memotong output himpunan fuzzy.

2.3.6 Sistem Inferensi Fuzzy

Sistem Inferensi Fuzzy (Fuzzy Inference System/FIS) disebut juga fuzzy

inference engine adalah sistem yang dapat melakukan penalaran dengan prinsip

serupa seperti manusia melakukan penalaran dengan nalurinya.

Terdapat beberapa jenis FIS yang dikenal antara lain :

1. Metode Tsukamoto

Pada metode ini setiap konsekuen pada aturan yang berbentuk IF THEN harus

direpresentasikan dengan suatu himpunan fuzzy dengan fungsi keanggotaan yang

monoton (Gambar 2.11). Sebagai hasilnya output hasil inferensi dari tiap-tiap aturan

diberikan secara tegas (crisp) berdasarkan α-predikat (fire strength). Hasil akhirnya

Page 37: Laporan TA Yoga Adiyasa

20

diperoleh dengan menggunakan rata-rata terbobot (weight average). (Jang, dkk., 1997)

(Kusumadewi, 2003).

Berikut merupakan gambar inferensi dengan Tsukamoto, dimana dalam

penentuan akhirnya menggunakan rata-rata terbobot (weight average) :

Gambar 2.11 Metode Inferensi Tsukamoto.

(Sumber : Artificial Intelegent, Sri Kusumadewi)

2. Metode Mamdani

Metode ini sering juga dikenal dengan metode Max-Min. metode ini

diperkenalkan oleh Ebrahim Mamdani pada tahun 1975. Untuk mendapatkan output

diperlukan 4 tahapan, yaitu :

a. Pembentukan himpunan fuzzy

b. Aplikasi fungsi implikasi (aturan)

c. Komposisi aturan

d. Penegasan (defuzzy)

Page 38: Laporan TA Yoga Adiyasa

21

3. Metode Sugeno

Penalaran dengan metode Sugeno hampir sama dengan metode Mamdani,

hanya saja output (konsekuen) sistem tidak berupa himpunan fuzzy, melainkan berupa

konstanta atau persamaan linear. Metode ini diperkenalkan oleh Takagi-Sugeno Kang

pada tahun 1985.

Proses dalam FIS ditunjukan pada Gambar 2.2 Input yang diberikan kepada

FIS adalah berupa bilangan tertentu dan output yang dihasilkan juga harus berupa

bilangan tertentu. Kaidah-kaidah/ aturan-aturan dalam bahasa linguistik dapat

digunakan sebagai input yang bersifat teliti harus dikonversikan terlebih dahulu, lalu

melakukan penalaran berdasarkan kaidah-kaidah dan mengkonversi hasil penalaran

tersebut menjadi output yang bersifat teliti.

Gambar 2.12 Proses dalam FIS

2.4 Konsep Dasar Basis Data

Sistem basis data adalah suatu sistem yang mempunyai fungsi untuk

mengorganisir data dan menyediakan informasi pada saat diperlukan. Date

mendefinisikan sistem basis data pada dasarnya adalah sistem terkomputerisasi yang

tujuan utamanya memelihara informasi dan membuat informasi tersebut tersedia saat

Page 39: Laporan TA Yoga Adiyasa

22

dibutuhkan. Dengan kata lain, basis data merupakan gudang atau tempat penyimpanan

dari berkas file yang terkomputerisasi.

Di antara basis data secara fisik dan pemakai terdapat suatu lapisan yang

disebut Database Manager (DB Manager), atau lebih sering disebut dengan Database

Management Sistem (DBMS). Semua permintaan pemakai untuk mengakses database

ditangani oleh DBMS ini.

Secara umum bahasa pembentukan basis data terbagi dalam dua komponen, yaitu:

1. Data Definition Language (DDL).

DDL adalah bahasa yang digunakan untuk mendefinisikan skema ke DBMS.

Skema adalah deskripsi lengkap tentang medan, rekaman, dan hubungan data pada

basis data. Bahasa tersebut mendukung pembuatan tabel baru, pembuatan indeks, dan

perubahan tabel.

2. Data Manipulation Language (DML).

DML adalah perintah-perintah yang digunakan untuk memanipulasi dan

mengambil data pada suatu basis data. Manipulasi data misalnya:

1. Penyisipan atau penambahan data baru ke suatu basis data.

2. Penghapusan data dui suatu basis data.

3. Perubahan data di suatu basis data

DML merupakan bahasa yang berfungsi memudahkan pemakai untuk mengakses data.

2.4.1 Normalisasi

Normalisasi adalah suatu proses untuk mengubah suatu relasi yang memiliki

masalah tertentu ke dalam dua buah relasi atau lebih yang tidak memiliki masalah

tersebut (Abdul Kadir, 1999). Normalisasi memberikan panduan yang sangat

membantu bagi pengembang untuk mencegah penciptaan struktur tabel yang kurang

fleksibel atau mengurangi ketidakefisienan. Setelah dilakukan normalisasi kemudian

menspesifikasi dengan bentuk kamus data.

Page 40: Laporan TA Yoga Adiyasa

23

2.4.2 Diagram Alir Data (DAD)

Diagram Alir Data (DAD) merupakan alat yang biasa dipakai untuk

mendokumentasikan proses dalam sistem, cara menggunakan informasi yang tersimpan

dan memindahkan informasi antar fungsi di dalam sistem (Abdul Kadir, 1999). DAD

dapat digunakan untuk menggambarkan arus data di dalam sistem dengan terstruktur

dan jelas. Diagram Konteks adalah DAD yang memperlihatkan sistem sebagai sebuah

proses (Abdul Kadir, 1999). Tujuannya adalah memberikan pandangan umum sistem.

Diagram konteks memperlihatkan sebuah proses berinteraksi dengan lingkungannya.

Ada pihak luar atau lingkungan yang memberi masukan dan pihak yang menerima

keluaran sistem. Dalam hal pihak luar dapat berupa sistem lain, suatu perangkat keras,

orang, atau organisasi.

Tabel 2.1 Simbol-Simbol Diagram Alir Data

Simbol Arti

Terminator

Proses Data

Aliran Data

Penyimpanan Data

P Primitive (Proses yang tidak dapat dipecah lagi)

Sumber : Buku Analisis dan Desain Sistem Informasi: Pendekatan Terstruktur Teori

dan Praktek Aplikasi Bisnis oleh Jogiyanto HM.

Page 41: Laporan TA Yoga Adiyasa

24

2.4.3 Diagram Alir ( FlowChart Sistem)

Diagram alir adalah diagram yang menjelaskan urutan kerja dari program yaitu

proses pembacaan data, pemrosesan data, pengambilalihan keputusan terhadap data dan

penyajian hasil pemrosesan data. Diagram alir digunakan untuk mempermudah

pemahaman akan algoritma dari sebuah program dan untuk proses dokumentasi.

Diagram alir akan memberikan gambaran yang jelas akan logika dari program yang

akan dibuat.

Tabel 2.2 Simbol-Simbol Diagram Alir

Simbol Arti

Keputusan

Awal dan Akhir Program

Penghubung satu halaman

Penghubung berbeda halaman

Masukan dan Keluaran

Arah Aliran

Proses

Sumber : Buku Analisis dan Desain Sistem Informasi: Pendekatan Terstruktur Teori

dan Praktek Aplikasi Bisnis oleh Jogiyanto HM.

Page 42: Laporan TA Yoga Adiyasa

25

2.5 Borland Delphi 7.0

2.5.1 Pengenalan Delphi 7.0

Delphi merupakan sebuah piranti pengembangan aplikasi berbasis Windows

yang dikeluarkan oleh Borland Internasional. Delphi adalah kompiler / penterjemah

bahasa Delphi (awalnya dari Pascal) yang merupakan bahasa tingkat tinggi sekelas

dengan Basic dan C. Bahasa Pemrograman di Delphi disebut bahasa prosedural

artinya bahasa/sintaknya mengikuti urutan tertentu/prosedur. Ada jenis pemrograman

non-prosedural seperti pemrograman untuk kecerdasan buatan seperti bahasa Prolog.

Delphi termasuk Keluarga Visual sekelas Visual Basic, Visual C, artinya perintah-

perintah untuk membuat objek dapat dilakukan secara visual. Pemrogram tinggal

memilih objek apa yang ingin dimasukkan ke dalam Form/Window, lalu tingkah laku

objek tersebut saat menerima event/aksi tinggal dibuat programnya. Delphi

merupakan bahasa berorentasi objek, artinya nama objek, properti dan

method/procedure dikemas menjadi satu kemasan (encapsulate). Perangkat lunak ini

sangat terkenal di lingkungan pengembang aplikasi karena mudah untuk dipelajari

dan dapat digunakan untuk menangani beberapa hal, dari aplikasi matematika,

permainan (games), hingga database. Pada penanganan database, Delphi

menyediakan fasilitas yang memungkinkan pemrogram dapat berinteraksi dengan

database seperti dBase, Paradox, Oracle, MySQL, dan Access.

2.6 MySQL

MySQL adalah sebuah server basis data SQL multiuser dan multi-threaded.

Multiuser artinya database ini tidak hanya digunakan oleh sepihak orang akan tetapi

merupakan database yang dapat digunakan oleh banyak orang. Multi-threaded artinya

MySQL mampu menerima query yang bertumpuk dalam satu permintaan. MySQL

merupakan sebuah database server yang free, artinya kita bebas menggunakan

database ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayar

lisensinya.

Page 43: Laporan TA Yoga Adiyasa

26

2.7 MyDAC

DAC untuk MySQL atau MyDAC merupakan salah satu produk Direct Access

Components (DAC) dari perusahaan perangkat lunak micro OLAP. MyDAC adalah

kumpulan beberapa komponen data akses yang dapat digunakan oleh pengembang

aplikasi database dengan Delphi dan C++ Builder yang ingin menggunakan MySQL

sebagai server databasenya.

2.8 Gambaran Umum Perusahaan

2.8.1 Sejarah Perusahaan

PT. Madu Baru yang berlokasi di daerah Kabupaten Bantul Propinsi Daerah

Istimewa Yogyakarta mempunyai usaha pokok Pabrik Gula dan Pabrik

Alkohol/Spiritus Madukismo dengan potensi dan peluang pengembangan usaha yang

potensial masih memiliki kesempatan tumbuh dan berkembang menjadi suatu

perusahaan Agro Industri yang berbasis tebu dan dikelola secara professional dan

inovatif menghadapi persaingan bebas di era globalisasi dengan petani sebagai mitra

sejati. Pabrik Gula dan Pabrik Alkohol/Spiritus Madukismo merupakan satu-satunya

pabrik gula dan pabrik alkohol/spiritus di Propinsi Daerah Istimewa Yogyakarta yang

mengemban tugas untuk mensukseskan program pengadaan pangan Nasional,

khususnya gula pasir. Sebagai perusahaan padat karya banyak menampung tenaga

kerja dari Propinsi Daerah Istimewa Yogyakarta. Dibangun pada tahun 1955 atas

prakarsa dari Sri Sultan Hamengku Buwono IX dan diresmikan pada tanggal 29 Mei

1958 oleh Presiden RI pertama Ir. Soekarno. Mulai produksi untuk Pabrik Gula pada

tahun 1958 dan Pabrik Spiritus pada tahun 1959.

Lokasi berada di atas lokasi Bangunan Pabrik Gula Padokan (satu di antara

dari 17 Pabrik Gula di Daerah Istimewa Yogyakarta yang dibangun Pemerintah

Belanda, tetapi dibumihanguskan pada masa Pemerintah Jepang), yang terletak di

Desa Padokan, Kelurahan Tirtonirmolo, Kecamatan Kasihan, Kabupaten Bantul,

Propinsi Daerah Istimewa Yogyakarta. Kontraktor utama adalah Machine Fabriek

Page 44: Laporan TA Yoga Adiyasa

27

Sangerhausen, Jerman Timur. Status perusahaan adalah Perseroan Terbatas (PT) yang

berdiri pada tanggal 14 Juni 1955 dan diberi nama “ Pabrik-Pabrik Gula Madu Baru

PT “ (P2G. Madu Baru PT) yang memiliki dua Pabrik antara lain Pabrik Gula (PG)

Madukismo dan Pabrik Alkohol/Spiritus (PS) Madukismo. Kepemilikan saham pada

awal berdiri adalah 75% milik Sri Sultan Hamengku Buwono IX dan 25% milik

pemerintah RI (Departemen Pertanian RI). Saat ini telah dirubah menjadi 65% milik

Sri Sultan Hamengku Buwono X dan 35% milik pemerintah yang dikuasakan kepada

PT. Rajawali Nusantara Indonesia yang merupakan sebuah BUMN.

Kronologi status perusahaan dan perubahan manajemennya adalah sebagai

berikut :

a. Tahun 1955-1962 : Perusahaan Swasta (PT)

b. Tahun 1962-1966 : Bergabung dengan Perusahaan Negara di bawah BPU-

PPN (Badan Pimpinan Umum-Perusahaan Negara), karena adanya policy

Pemerintah RI yang mengambil alih semua perusahaan di Indonesia.

c. Tahun 1966 : BPU-PPN bubar. PG-PG di Indonesia boleh memili : tetap

sebagai Perusahaan Negara atau keluar menjadi Perusahaan Swasta (PT). PT.

Madu Baru memilih menjadi Perusahaan Swasta.

d. Tahun 1966-1984 : PT. Madu Baru kembali menjadi Perusahaan Swasta

dengan susunan Direksi yang dipimpin Sri Sultan Hamengku Buwono IX

sebagai presiden direktur. Tanggal 4 Maret 1984-24 Februari 2004 diadakan

kontrak manajemen dengan PT. Rajawali Nusantara Indonesia (RNI) yaitu

salah satu BUMN milik Departemen Keuangan RI. Tanggal 24 Februari 2004

sampai sekarang PT. Madu Baru menjadi perusahaan mandiri yang dikelola

secara profesional dan independent.

2.8.2 Visi, Misi, dan Budaya Perusahaan

Visi PT. Madu Baru adalah :

“ PT. Madu Baru menjadi perusahaan Agro Industri yang unggul di Indonesia dengan

petani sebagai mitra sejati “.

Page 45: Laporan TA Yoga Adiyasa

28

Misi PT. Madu Baru adalah :

1. Menghasilkan gula dan ethanol yang berkualitas untuk memenuhi permintaan

masyarakat dan industri di Indonesia.

2. Menghasilkan produk dengan memanfaatkan teknologi maju yang ramah

lingkungan, dikelola secara professional dan inovatif, memberikan pelayanan

yang prima kepada pelanggan serta mengutamakan kemitraan dengan petani.

3. Mengembangkan produk/bisnis baru yang mendukung bisnis inti.

4. Menempatkan karyawan dan stake holder lainnya sebagai bagian terpenting

dalam proses penciptaan keunggulan perusahaan dan pencapaian share holder

values.

Budaya Perusahaan PT. Madu Baru adalah :

a. Taqwa terhadap Tuhan Yang Maha Esa

b. Jujur dan Adil

c. Rendah Hati

d. Terbuka

e. Saling Menghormati

f. Profesionalisme

g. Kreatif

h. Inovatif

i. Teamwork

j. Peduli Lingkungan

Page 46: Laporan TA Yoga Adiyasa

29

BAB III

PERANCANGAN SISTEM

3.1 Spesifikasi Hardware dan Software

3.1.1 Spesifikasi Hardware

Hardware atau perangkat keras merupakan semua peralatan fisik komputer.

Sistem perangkat keras ini terdiri dari unit input, proses, dan output. Beberapa

kebutuhan perangkat keras yang digunakan dalam pembuatan sistem ini adalah :

1. Processor Intel Celleron D 2.13 GHz

2. Motherboard Biostar P4TGV

3. RAM 256 MB

4. Harddisk 40 GB

5. CD ROM dan DVD RW

6. Keyboard, Mouse, monitor standar

Untuk spesifikasi hardware minimum dalam pengaplikasian sistem ini

membutuhkan beberapa spesifikasi antara lain :

1. Intel Pentium 166 MHz or higher (P2 400 MHz recommended)

2. RAM 256 Mb

3. Harddisk 2 GB

4. CD-ROM drive

5. VGA or higher resolution monitor

6. Motherboard, Keyboard, Mouse, Monitor standar

3.1.2 Spesifikasi Software

Dalam pembuatan web generator ini spesifikasi software atau perangkat lunak

yang digunakan adalah :

1. Sistem Operasi

Sistem operasi yang digunakan adalah Windows XP SP 2

2. Bahasa Pemrograman Borland Delphi 7.0

Page 47: Laporan TA Yoga Adiyasa

30

3. Database

Database yang digunakan adalah MySQL Database 5.0.24a

4. MySQL Control Center 0.9.2, MySQL DAC 224

3.2 Data-Data Pengamatan

Data-data yang Penulis dapatkan dalam pembuatan Sistem Pendukung

Keputusan Estimasi Jumlah Produksi Gula dengan Logika Fuzzy ini didapat melalui

pengumpulan data di PT. Madu Baru Yogyakarta, data-data tersebut terdiri dari data

tentang Luas Lahan yang digunakan untuk menanam tebu, Jumlah Tebu yang

digiling, jumlah Rendemennya, Biaya Produksi, dan Jumlah Produksi tebu yang

dikumpulkan berdasarkan hasil per tahun antara tahun 2000 sampai target tahun

2008. Adapun data-data tersebut antara lain :

Tabel 3.1 Data Pengamatan

No. TahunLuas Lahan

(Ha)

Jumlah Tebu

Digiling

(Ku)

Rendemen

(%)

Biaya Produksi

(Ribuan Rp.)

Jumlah

Produksi (Ku)

1 2000 5.100 3.602.784 6,47 22.156.533 233.185

2 2001 4.313 3.163.667 6,10 28.084.436 197.736

3 2002 4.870 3.657.298 6,55 27.842.372 240.222

4 2003 4.800 3.686.441 6,70 29.979.282 239.504

5 2004 4.295 3.585.520 6,61 29.920.225 264.210

6 2005 5.472 4.684.056 6,50 38.493.759 237.353

7 2006 5.268 4.756.231 6,72 42.327.923 320.727

8 2007 5.250 5.341.260 6,87 42.023.769 368.210

9 2008 5.535 5.640.000 7,18 57.924.549 406.169

Sumber : Data diolah dari berbagai laporan evaluasi atas kinerja keuangan PT. Madu

Baru untuk tahun 2000-2008

Page 48: Laporan TA Yoga Adiyasa

31

3.3 Metodologi Perancangan Sistem Fuzzy.

Dalam merancang sistem pendukung keputusan Estimasi jumlah produksi

gula ini dilakukan dengan Metode Tsukamoto. Adapun beberapa tahapan

perancangan sistem Fuzzy tersebut sebagai berikut :

1. Mendefinisikan model masukan dan keluaran sistem

2. Dekomposisi variabel model menjadi himpunan fuzzy

3. Pembuatan Aturan Fuzzy

4. Proses Logika Fuzzy :

a. Fuzzifikasi

b. Aplikasi Fungsi Implikasi

c. Defuzzifikasi

Penjelasan ke empat tahapan tersebut sebagai berikut :

1. Mendefinisikan Model Masukan dan Keluaran Sistem

Langkah pertama dalam merancang sistem ini adalah dengan mendefinisikan

terlebih dahulu masukan dan keluaran bagi SPK Estimasi Jumlah Produksi Gula.

Masukan dari pengguna untuk simulasi SPK ini terdiri dari luas lahan yang

digunakan untuk menanam tebu berapa Ha, jumlah tebu yang digiling berapa kuintal

(Ku), jumlah rendemennya berapa persen (%), dan biaya produksinya berapa rupiah

(Rp.). Sedangkan keluaran sistem berupa jumlah produksi gula dalam satuan kuintal

(Ku). Dimana masukan dan keluaran tersebut ditetapkan per tahun sebagai anggaran

pada saat awal musim giling.

2. Dekomposisi Variabel Model menjadi Himpunan Fuzzy

Dalam sistem inferensi fuzzy dikenal istilah variabel linguistik, yaitu variabel-

variabel yang dinyatakan dengan bilangan fuzzy, dimana bilangan fuzzy

merepresentasikan konsep fuzzy seperti kecil, sedang, besar (George J.Klir & Bo

Yuan, 1995). Begitu pula dengan sistem inferensi fuzzy yang digunakan untuk

menentukan jumlah produksi gula ini juga menggunakan variabel-variabel linguistik.

Page 49: Laporan TA Yoga Adiyasa

32

SEMPIT SEDANG LUAS1

04295 4500 5500 6000

µ[X]

Luas Lahan (Ha)4080

Dari variabel-variabel masukan dibentuk himpunan-himpunan fuzzy antara

lain :

1. Luas Lahan; terdiri atas 3 himpunan fuzzy, yaitu : SEMPIT, SEDANG dan LUAS

(Gambar 3.1 Luas Lahan)

Gambar 3.1 Luas Lahan

Fungsi Keanggotaan :

µlahan SEMPIT

µlahan SEDANG

µlahan LUAS

5000

1

(5000-x) / (5000-4295) ,

0

4080≤x ≤4295

4295 < x < 5000

x ≥5000

0

(x-4500) / (5000-4500) ,

(5500-x) / (5500-5000) ,

x ≤4500 dan x ≥5500

4500 < x < 5000

5000 < x < 5500

0

(x-5000) / (6000-5000) ,

1

x ≤5000

5000 < x < 6000

x ≥6000

1 x = 5000

Page 50: Laporan TA Yoga Adiyasa

33

SEDIKIT SEDANG BANYAK1

0

3164 4353 4811 6000

µ[X]

Jumlah Tebu(Ribuan Ku)

3000

2. Jumlah Tebu; terdiri atas 3 himpunan fuzzy, yaitu : SEDIKIT, SEDANG dan

BANYAK (Gambar 3.2 Jumlah Tebu)

Gambar 3.2 Jumlah Tebu

Fungsi Keanggotaan :

µjTebu SEDIKIT

µjTebu SEDANG

µjTebu BANYAK

4582

1

(4582-x) / (4582-3164) ,

0

3000 ≤x ≤3164

3164 < x < 4582

x ≥4582

0

(x-4353) / (4582-4353) ,

(4811-x) / (4811-4582) ,

x ≤4353 dan x ≥4811

4353 < x < 4582

4582 < x < 4811

0

(x-4582) / (6000-4582) ,

1

x ≤4582

4582 < x < 6000

x ≥6000

1 x = 4582

Page 51: Laporan TA Yoga Adiyasa

34

RENDAH SEDANG TINGGI1

06.10 6.11 6.75 8

µ[X]

Rendemen (%)5

3. Rendemen; terdiri atas 3 himpunan fuzzy, yaitu : RENDAH, SEDANG dan

TINGGI (Gambar 3.3 Rendemen)

Gambar 3.3 Rendemen

Fungsi Keanggotaan :

µrendemen RENDAH

µrendemen SEDANG

µrendemen TINGGI

6.432

1

6.432-x) / (6.432-6.10) ,

0

5 ≤x ≤6.10

6.10 < x < 6.432

x ≥6.432

0

(x-6.11) / (6.432-6.11) ,

(6.75-x) / (6.75-6.432,

x ≤6.11 dan x ≥6.75

6.11 < x < 6.432

6.432< x < 6.75

0

(x-6.432) / (8-6.432) ,

1

x ≤6.432

6,432 ≤x ≤8

x ≥8

1 x = 6.432

Page 52: Laporan TA Yoga Adiyasa

35

RENDAH NORMAL TINGGI1

027000 39045 43155 65000

µ[X]

Biaya Produksi(Jutaan Rp.)

22000

4. Biaya Produksi; terdiri atas 3 himpunan fuzzy, yaitu : RENDAH, NORMAL dan

TINGGI (Gambar 3.4 Biaya Produksi)

Gambar 3.4 Biaya Produksi

Fungsi Keanggotaan :

µBiayaProd RENDAH

µBiayaProd NORMAL

µBiayaProd TINGGI

41100

1

(41100-x) / (41100-27000) ,

0

22000 ≤x ≤27000

27000 < x < 41100

x ≥41100

0

(x-39045) / (41100-39045) ,

(43155-x) / (43155-41100) ,

x ≤39045 dan x ≥43155

39045 < x < 41100

41100< x < 43155

0

(x-41100) / (65000-41100) ,

1

x ≤41100

41100 < x < 65000

x ≥65000

1 x = 41100

Page 53: Laporan TA Yoga Adiyasa

36

RENDAH NORMAL TINGGI1

0197736 321925 355811 480000

µ[X]

Jumlah Produksi (Ku)

Untuk keluarannya, dibentuk himpunan fuzzy yaitu :

1. Jumlah Produksi; terdiri atas 3 himpunan fuzzy, yaitu : RENDAH, NORMAL dan

TINGGI (Gambar 3.5 Jumlah Produksi)

Gambar 3.5 Jumlah Produksi

Fungsi Keanggotaan :

µjProd RENDAH

µjProd NORMAL

µjProd TINGGI

338868

1

(338868-x) / (338868-197736) ,

0

x ≤197736

197736< x < 338868

x ≥338868

0

(x-321925) / (338868-321925) ,

(355811-x) / (355811-338868) ,

x ≤321925 dan x ≥355811

321925 < x < 338868

338868 < x < 355811

0

(x-338868) / (480000-338868) ,

1

x ≤338868

338868 < x < 480000

x ≥480000

1 x = 338868

Page 54: Laporan TA Yoga Adiyasa

37

Setelah variabel tersebut ditentukan himpunan fuzzy-nya kemudian

menentukan domain batas dari masing-masing himpunan fuzzy tersebut. Domain

batas ditentukan berdasarkan data-data yang telah ada. Data-data tersebut dianalisa

sehingga dihasilkan nilai batas dari setiap himpunan fuzzy pada setiap variabel

tersebut. Adapun Estimasi domain batas tersebut dari user, tetapi untuk nilai batas di

atas sudah dilakukan analisa penelitian oleh peneliti. Adapun Estimasi domain batas

tersebut yaitu dengan menentukan Batas Min, Batas Bawah, Rata-rata, dan Batas

Atas. Batas Min merupakan batas yang menjadi patokan peng-input-an nilai pada

waktu proses dijalankan. Batas Bawah merupakan batas paling kecil dari data-data

yang ada, Rata-rata merupakan nilai rata-rata data, dan Batas Atas merupakan batas

yang memiliki nilai paling besar. Dari batas-batas tersebut maka tiap-tiap himpunan

memiliki nilai, misal pada Luas Lahan memiliki himpunan fuzzy bernama sempit,

sedang, dan luas.

1. Sempit, yang direpresentasikan dengan kurva bentuk bahu meliputi :

a. Nilai Bawah a = Batas Min.

b. Nilai Bawah b = Batas Bawah.

c. Nilai Bawah c = Rata-rata.

2. Sedang, yang direpresentasikan dengan kurva segitiga meliputi :

a. Nilai Tengah a = 0.05 * Rata-rata.

b. Nilai Tengah b = Rata-rata.

c. Nilai Tengah c = 0.05 * Rata-rata.

3. Luas, yang direpresentasikan dengan kurva bentuk bahu meliputi :

a. Nilai Atas a = Rata-rata.

b. Nilai Atas b = Batas Atas.

Adapun Estimasi Nilai Tengah a dan Nilai Tengah c pada himpunan fuzzy

sedang ditentukan sendiri faktor pengalinya. Untuk sistem ini digunakan faktor

pengali sebesar 0.05 atau 5% agar mempunyai jangkauan yang tidak begitu terlalu

besar.

Page 55: Laporan TA Yoga Adiyasa

38

Estimasi nilai batas untuk himpunan fuzzy pada tiap-tiap variabel fuzzy

tersebut sama akan tetapi pada variabel Jumlah Produksi Batas Min tidak diterapkan

karena merupakan output dari sistem. Sebenarnya Batas Min tersebut dapat

diterapkan tetapi pada sistem ini tidak diterapkan Batas Min untuk output-nya, karena

nilai akan dihasilkan sama dengan Batas Bawah pada Jumlah Produksinya.

3. Pembuatan Aturan Fuzzy.

Dari ke empat masukan dan sebuah keluaran yang telah didefinisikan di atas,

dengan melakukan analisa data terhadap batas tiap-tiap himpunan fuzzy pada tiap-

tiap variabelnya maka dibentuk 19 aturan fuzzy yang akan dipakai dalam sistem

Estimasi jumlah produksi gula ini, yaitu :

a. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen tinggi AND

Biaya Produksi Tinggi THEN Jumlah Produksi tinggi

b. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen tinggi AND

Biaya Produksi normal THEN Jumlah Produksi tinggi

c. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen sedang AND

Biaya Produksi tinggi THEN Jumlah Produksi tinggi

d. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen sedang AND

Biaya Produksi tinggi THEN Jumlah Produksi tinggi

e. IF Luas Lahan sedang AND Jumlah Tebu sedang AND Rendemen sedang

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

f. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen sedang AND

Biaya Produksi normal THEN Jumlah Produksi tinggi

g. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen tinggi AND

Biaya Produksi normal THEN Jumlah Produksi tinggi

h. IF Luas Lahan sedang AND Jumlah Tebu banyak AND Rendemen sedang

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

i. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen tinggi AND

Biaya Produksi tinggi THEN Jumlah Produksi tinggi

Page 56: Laporan TA Yoga Adiyasa

39

j. IF Luas Lahan sedang AND Jumlah Tebu banyak AND Rendemen tinggi

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

k. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen sedang AND

Biaya Produksi normal THEN Jumlah Produksi normal

l. IF Luas Lahan sedang AND Jumlah Tebu sedang AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi normal

m. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen rendah

AND Biaya Produksi rendah THEN Jumlah Produksi rendah

n. IF Luas Lahan sedang AND Jumlah Tebu sedikit AND Rendemen rendah

AND Biaya Produksi normal THEN Jumlah Produksi rendah

o. IF Luas Lahan sedang AND Jumlah Tebu sedikit AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi rendah

p. IF Luas Lahan sedang AND Jumlah Tebu sedikit AND Rendemen tinggi

AND Biaya Produksi normal THEN Jumlah Produksi rendah

q. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen rendah

AND Biaya Produksi normal THEN Jumlah Produksi rendah

r. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi rendah

s. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen tinggi

AND Biaya Produksi normal THEN Jumlah Produksi rendah

4. Proses Logika Fuzzy

a. Fuzzifikasi

Merupakan proses untuk mendapatkan derajat keanggotaan dari sebuah nilai

numerik masukan (crisp).

Misalnya : suatu variabel mempunyai nilai X1 maka nilai X1 tersebut dicari derajat

keanggotaannya (µ[X1]). Di dalam mencari derajat keanggotaannya tersebut X1 harus

diketahui dahulu letaknya berada dimana. Misal diambil salah satu variabel yaitu

Page 57: Laporan TA Yoga Adiyasa

40

Luas Lahan, apakah X1 tersebut berada di himpunan sempit, sedang atau luas. X1

dapat menempati di dua tempat himpunan misalnya sedang dan luas atau bahkan satu

himpunan saja.

Fungsi Keanggotaan Bawah :

µBAWAH[X1]

Keterangan :

a = Batas Bawah a/ Batas MIN

b = Batas Bawah b

c = Batas Bawah c

Berikut implementasi X1 tersebut di dalam Fuzzifikasi untuk himpunan sempit :

µlahan SEMPIT

Diambil suatu nilai untuk X1 = 4300 Ha. Dimana nilai 4300 hanya memenuhi untuk

himpunan sempit.

µlahan SEMPIT[4300] = (5000-4300) / (5000-4295)

= 700 / 705

= 0.9929

Didapat derajat keanggotaan senilai 0.9929 yang selanjutnya derajat keanggotaan

tersebut diimplementasikan ke dalam aturan fuzzy.

1

(5000-x) / (5000-4295) ,

0

4080≤x ≤5000

4295 < x < 5000

x ≥5000

1

(c-x1) / (c-b) ,

0

a ≤x ≤b

b < x < c

x ≥c

Page 58: Laporan TA Yoga Adiyasa

41

b. Aplikasi Fungsi Implikasi

Dimana penggunaan Fungsi MIN sebagai Metode Implikasinya dalam

menentukan α-predikat minimum dari tiap-tiap aturan yang ditetapkan, maksudnya

dari beberapa pernyataan IF tersebut diambil α-predikat atau nilai derajat

keanggotaan terkecil.

Misal : Diambil contoh untuk aturan pertama dengan nilai derajat keanggotaan

sembarang.

IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen tinggi AND

Biaya Produksi Tinggi THEN Jumlah Produksi tinggi

α-predikat1 :

= µLahanLUAS µTebuBANYAKµRendTINGGI µBiayaTINGGI

= MIN ( µLahanLUAS[5535], µTebuBANYAK[5640], µRendTINGGI[7.18],

µBiayaTINGGI[58000] )

= MIN (0.535; 0.746; 0.477; 0.707)

= 0.477

Keterangan :

α-predikat1 = derajat keanggotaan terkecil/ minimum

c. Defuzzifikasi

Dalam perancangan sistem Estimasi jumlah produksi gula dengan logika fuzzy

ini, digunakan Metode Inferensi Tsukamoto. Pada metode ini setiap konsekuen pada

aturan yang berbentuk IF-THEN harus direpresentasikan dengan suatu himpunan

fuzzy dengan fungsi keanggotaan yang monoton dalam arti Estimasi nilai Zn tersebut

dari hasil implikasi tiap-tiap aturan masing-masing. Mula-mula Defuzzifikasi ini

dilakukan pada tiap-tiap aturan, setelah semua aturan terpenuhi serta didapat nilai Zn

dari tiap-tiap aturannya kemudian mulai melakukan Estimasi hasil akhir. Berikut

gambaran melakukan Defuzzifikasi untuk tiap-tiap aturan yang diambil dari aturan

pertama :

Page 59: Laporan TA Yoga Adiyasa

42

α1z1 + α2z2 +….. + αnzn

α1 + α2+….. +αn

Di dalam aturan pertama didapat sebuah pernyataan THEN yaitu Jumlah Produksi

bertambah. Sehingga didapat sebuah rumusan Defuzzifikasi aturan pertama sebagai

berikut :

Z1= α-predikat1 *(b-a)+a

Keterangan :

Z1 = Nilai Defuzzifikasi (jumlah produksi aturan 1)

α-predikat1 = Derajat Keanggotaan 1

a = Batas Atas a

b = Batas Atas b

Defuzzifikasi itu sendiri merupakan suatu proses untuk merubah hasil

penalaran yang berupa derajat keanggotaan keluaran (α-predikat) menjadi variabel

numerik kembali (crisp). Sistem akhir Estimasi jumlah produksi gula ini

menggunakan rata-rata terbobot (weight average) sebagai metode Defuzzifikasi untuk

mendapatkan hasil akhir jumlah produksi gula. Adapun rumus rata-rata terbobot

tersebut adalah sebagai berikut :

Z =

Keterangan :

Z = Jumlah Produksi Gula

αn = Derajat Keanggotaan dari Aturan ke- n

zn = Jumlah Produksi dari Aturan ke- n

Page 60: Laporan TA Yoga Adiyasa

43

Data BatasHimp. Fuzzy daninput nilai variabelFuzzy

Data Batas Himp. FuzzyData keputusan jumlahproduksi

3.4 Perancangan Aplikasi

3.4.1 Diagram Alir Data

Diagram Alir Data yang disingkat DAD atau DFD (Data Flow Diagram)

merupakan suatu model logika data atau proses yang dibuat untuk menggambarkan

dari mana asal data dan ke mana tujuan data yang keluar dari sistem, dimana data

disimpan, proses apa yang menghasilkan data tersebut dan 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.

3.4.1.1 Diagram Konteks

Gambar 3.6 Diagram Konteks

User

0SPK Estimasi

JumlahProduksi Gula

DatabaseMadubaru

Page 61: Laporan TA Yoga Adiyasa

44

D1 batas

D2 anggaran

Updatebatas himp.Fuzzy

Input nilai variabelFuzzy ( luas lahan, jum.tebu, rendemen, biayaprod.)

Proses jumlahproduksi gula

Output jumlahproduksi gula

Lihat data batas,dan anggaranproduksi

3.4.1.3 DAD Level 0

Gambar 3.7 Diagram Alir Data (DAD) Level 0

User

1P

Update BatasHimpunan

Fuzzy

2P

Input nilaivariabel fuzzy

3

JumlahProduksi Gula

4P

Lihat Datayang ada pada

SPK

Page 62: Laporan TA Yoga Adiyasa

45

D2 anggaran

Print hasilkeputusan

ProsesSimpankeputusan

3.4.1.4 DAD Level 1

3

Gambar 3.8 Diagram Alir Data (DAD) Level 1

User

3.1P

SimpanKeputusan

DSS

3.2P

PrintKeputusan

DSS

Page 63: Laporan TA Yoga Adiyasa

46

3.4.2 FlowChart Sistem

Suatu permasalahan dapat diselesaikan dengan flowchart, karena flowchart

merupakan bagan alir dari proses penyelesaian masalah yang disusun secara

sistematis.

Gambar 3.9 FlowChart SPK Jumlah Produksi Gula dengan Logika Fuzzy

Mulai

Masukan dari user,Luas lahanJumlah tebuRendemenBiaya produksi

Defuzzifikasi

Jumlah produksigula

Selesai

Fuzzifikasi Implikasi

Page 64: Laporan TA Yoga Adiyasa

47

3.4.3 Kamus Data

Semua jenis data yang terlibat dalam proses akan didefinisikan dan

dikumpulkan dalam suatu kamus data. Adapun dalam pembuatan aplikasi ini

digunakan dua buah tabel yaitu tabel batas dan tabel anggaran. Berikut representasi

kamus data batas pada Tabel 3.2 dan kamus data anggaran pada Tabel 3.3 :

Tabel 3.2 Kamus Data Batas

FILE BATAS.DBF

Nama Field Tipe Lebar Artiid Varchar 30 Nomor Batasvariabel Varchar 30 Nama Variabelhimpunan Varchar 30 Nama Himpunansatuan Varchar 30 Satuan VariabelA Varchar 30 Domain BatasB Varchar 30 Domain BatasC Varchar 30 Domain Batas

Tabel 3.3 Kamus Data Anggaran

FILE ANGGARAN.DBF

Nama Field Tipe Lebar Arti

tahun Varchar 5 Tahunluas_lahan Float Luas Lahan (Ha)jum_tebu Float Jumlah Tebu (x1000 Ku)rendemen Float Rendemen (%)biaya_prod Float Biaya Produksi (Jutaan Rp.)jum_prod Float Jumlah Produksi (Ku)

Page 65: Laporan TA Yoga Adiyasa

48

3.5 Perancangan Program

3.5.1 Perancangan Tampilan Awal

Tampilan awal berisi judul program yang mengghunakan metode splash

screen untuk menunggu agar program masuk ke tampilan awal program. Gambar

3.10 adalah rancangan tampilan awal.

Gambar 3.10 Rancangan Tampilan Awal

3.5.2 Perancangan Tampilan Utama

Tampilan Utama merupakan menu pull down yang terdiri dari File, Bantuan

dan Tentang Program. Menu File terdiri dari Input untuk membuka mengisi domain b

atas himpunan fuzzy pada masing-masing variabel fuzzy, SPK untuk melakukan

proses Estimasi jumlah produksi gula dengan melakukan input nilai terhadap tiap-tiap

variable fuzzy, dan Lihat untuk melihat data anggaran produksi tiap-tiap tahunnya.

Menu Bantuan berisi bantuan untuk aplikasi program. Menu Tentang berisi identitas

pembuat program, serta Keluar untuk mengakhiri aplikasi program. Selain itu di

tampilan utama ini menyajikan empat buah toolbar yang terdiri dari Domain Batas,

SPK, Anggaran Produksi, dan Keluar. Keempat toolbar mempunyai fungsi sama

dengan yang berada di pull down, tetapi ini berfungsi untuk lebih memudahkan lagi

user dalam mengaplikasikan program tersebut. Gambar 3.11 adalah rancangan

tampilan utama SPK Estimasi jumlah produksi gula dengan logika fuzzy.

Judul Program

Page 66: Laporan TA Yoga Adiyasa

49

Gambar 3.11 Rancangan Tampilan Utama

3.5.3 Perancangan Input Domain Batas Himpunan Fuzzy

Tampilan Input domain batas himpunan fuzzy ini berisi enam buah button

yang terdiri dari button Luas Lahan untuk memasuki form pengisian domain batas

terhadap himpunan Luas Lahan, button Jumlah Tebu untuk memasuki form

pengisian domain batas terhadap himpunan Jumlah Tebu, button Rendemen untuk

memasuki form pengisian domain batas terhadap himpunan Rendemen, button Biaya

Produksi untuk memasuki form pengisian domain batas terhadap himpunan Biaya

Produksi, button Jumlah Produksi untuk memasuki form pengisian domain batas

terhadap himpunan Jumlah Produksi, dan button Keluar untuk keluar dari form input

Domain Batas Himpunan Fuzzy. Gambar 3.12 adalah rancangan tampilan untuk

input domain batas himpunan fuzzy.

File Bantuan Tentang Keluar

DomainBatas

SPK AnggaranProduksi

Keluar

Input Domain Batas

SPKLihat Data Anggaran

Gambar Perusahaan Tanggal

Jam

Page 67: Laporan TA Yoga Adiyasa

50

Gambar 3.12 Rancangan Input Domain Batas Himpunan Fuzzy

3.5.4 Perancangan Input Batas Luas Lahan

Tampilan Input Batas Luas Lahan ini menggunakan lima buah Group Box.

Group Box yang terdiri dari tiga buah Label dan tiga buah Edit yang terdiri dari

Bawah, Rata-rata, dan Atas. Bawah merupakan masukan untuk batas paling bawah

untuk Luas Lahan, Rata-rata merupakan rata-rata Luas Lahannya, dan Atas

merupakan batas maksimal Luas Lahan tersebut. Kemudian Group Box yang bawah

terdiri dari tiga buah Group Box yaitu Group Box Sempit, Sedang, dan Luas yang

mana setiap Group Box tersebut memiliki Label untuk menampilkan nilai setelah

melalui proses inputan Batas Bawah, Rata-rata, dan Batas Atasnya yang berada di

Group Box atasnya. Selain Group Box, Label, dan Edit digunakan Bitbutton yang

terdiri dari Proses, Simpan, Edit, Batal dan Keluar. Bitbutton Proses untuk

memproses input pada Group Box atas yang terdiri dari Batas Bawah, Rata-rata, dan

Atas yang hasilnya akan ditampilkan di Group Box bawahnya yang terdiri dari Group

Box Sempit, Sedang, dan Luas. Simpan untuk menyimpan hasil batas Luas Lahan

setelah diproses, Edit untuk meng-edit batas tersebut, Batal untuk membatalkan

proses dan Keluar untuk keluar dari form Input Batas Luas Lahan. Gambar 3.13

adalah Rancangan Input Batas Luas Lahan.

Luas Lahan

Jumlah Tebu

Rendemen

Biaya Produksi

JumlahProduksi

Keluar

Page 68: Laporan TA Yoga Adiyasa

51

Gambar 3.13 Rancangan Input Batas Luas Lahan

3.5.5 Perancangan Input Batas Jumlah Tebu

Tampilan Input Batas Jumlah Tebu ini menggunakan lima buah Group Box.

Group Box yang terdiri dari tiga buah Label dan tiga buah Edit yang terdiri dari

Bawah, Rata-rata, dan Atas. Bawah merupakan masukan untuk batas paling bawah

untuk Jumlah Tebu, Rata-rata merupakan rata-rata Jumlah Tebunya, dan Atas

merupakan batas maksimal Jumlah Tebu tersebut. Kemudian Group Box yang bawah

terdiri dari tiga buah Group Box yaitu Group Box Sedikit, Sedang, dan Banyak yang

mana setiap Group Box tersebut memiliki Label untuk menampilkan nilai setelah

melalui proses inputan Batas Bawah, Rata-rata, dan Batas Atasnya yang berada di

Group Box atasnya. Selain Group Box, Label, dan Edit digunakan Bitbutton yang

terdiri dari Proses, Simpan, Edit, Batal dan Keluar. Bitbutton Proses untuk

memproses input pada Group Box atas yang terdiri dari Batas Bawah, Rata-rata, dan

Atas yang hasilnya akan ditampilkan di Group Box bawahnya yang terdiri dari Group

Box Sedikit, Sedang, dan Banyak. Simpan untuk menyimpan hasil batas Jumlah Tebu

Edit Simpan Keluar

Proses

Luas Lahan

Bawah Atas

Rata-rata

Luas Lahan

Sempit Sedang Luas

Bawah a

Bawah b

Tengah a

Tengah b

Tengah c

Atas a

Atas b

Batal

Page 69: Laporan TA Yoga Adiyasa

52

setelah diproses, Edit untuk meng-edit batas tersebut, Batal untuk membatalkan

proses dan Keluar untuk keluar dari form Input Batas Jumlah Tebu. Gambar 3.14

adalah Rancangan Input Batas Jumlah Tebu.

Gambar 3.14 Rancangan Input Batas Jumlah Tebu

3.5.6 Perancangan Input Batas Rendemen

Tampilan Input Batas Rendemen ini menggunakan lima buah Group Box.

Group Box terdiri dari tiga buah Label dan tiga buah Edit yang terdiri dari Bawah,

Rata-rata, dan Atas. Bawah merupakan masukan untuk batas paling bawah untuk

Rendemen, Rata-rata merupakan rata-rata Rendemennya, dan Atas merupakan batas

maksimal Rendemen tersebut. Kemudian Group Box yang bawah terdiri dari tiga

buah Group Box yaitu Group Box Rendah, Sedang, dan Tinggi yang mana setiap

Group Box tersebut memiliki Label untuk menampilkan nilai setelah melalui proses

inputan Batas Bawah, Rata-rata, dan Batas Atasnya yang berada di Group Box

atasnya. Selain Group Box, Label, dan Edit digunakan Bitbutton yang terdiri dari

Edit Simpan Keluar

Proses

Jumlah Tebu

Bawah Atas

Rata-rata

Jumlah Tebu

Sedikit Sedang Banyaks

Bawah a

Bawah b

Tengah a

Tengah b

Tengah c

Atas a

Atas b

Batal

Page 70: Laporan TA Yoga Adiyasa

53

Proses, Simpan, Edit, Batal dan Keluar. Bitbutton Proses untuk memproses input

pada Group Box atas yang terdiri dari Batas Bawah, Rata-rata, dan Atas yang

hasilnya akan ditampilkan di Group Box bawahnya yang terdiri dari Group Box

Rendah, Sedang, dan Tinggi. Simpan untuk menyimpan hasil batas Rendemen setelah

diproses, Edit untuk meng-edit batas tersebut, Batal untuk membatalkan proses dan

Keluar untuk keluar dari form Input Batas Rendemen. Gambar 3.15 adalah

Rancangan Input Batas Rendemen.

Gambar 3.15 Rancangan Input Batas Rendemen

3.5.7 Perancangan Input Batas Biaya Produksi

Tampilan Input Batas Biaya Produksi ini menggunakan lima buah Group Box.

Group Box terdiri dari tiga buah Label dan tiga buah Edit yang terdiri dari Bawah,

Rata-rata, dan Atas. Bawah merupakan masukan untuk batas paling bawah untuk

Biaya Produksi, Rata-rata merupakan rata-rata Biaya Produksinya, dan Atas

merupakan batas maksimal Biaya Produksi tersebut. Kemudian Group Box yang

bawah terdiri dari tiga buah Group Box yaitu Group Box Rendah, Normal, dan Tinggi

Edit Simpan Keluar

Proses

Rendemen

Bawah Atas

Rata-rata

Rendemen

Rendah Sedang Tinggi

Bawah a

Bawah b

Tengah a

Tengah b

Tengah c

Atas a

Atas b

Batal

Page 71: Laporan TA Yoga Adiyasa

54

yang mana setiap Group Box tersebut memiliki Label untuk menampilkan nilai

setelah melalui proses input-an Batas Bawah, Rata-rata, dan Batas Atasnya yang

berada di Group Box atasnya. Selain Group Box, Label, dan Edit digunakan Bitbutton

yang terdiri dari Proses, Simpan, Edit, Batal dan Keluar. Bitbutton Proses untuk

memproses input pada Group Box atas yang terdiri dari Batas Bawah, Rata-rata, dan

Atas yang hasilnya akan ditampilkan di Group Box bawahnya yang terdiri dari Group

Box Rendah, Normal, dan Tinggi. Simpan untuk menyimpan hasil batas Biaya

Produksi setelah diproses, Edit untuk meng-edit batas tersebut, Batal untuk

menmpatalkan proses dan Keluar untuk keluar dari form Input Batas Biaya Produksi.

Gambar 3.16 adalah Rancangan Input Batas Biaya Produksi.

Gambar 3.16 Rancangan Input Batas Biaya Produksi

3.5.8 Perancangan Input Batas Jumlah Produksi

Tampilan Input Batas Jumlah Produksi ini menggunakan lima buah Group

Box. Group Box terdiri dari tiga buah Label dan tiga buah Edit yang terdiri dari

Edit Simpan Keluar

Proses

Biaya Prod.

Bawah Atas

Rata-rata

Biaya Prod.

Rendah Normal Tinggi

Bawah a

Bawah b

Tengah a

Tengah b

Tengah c

Atas a

Atas b

Batal

Page 72: Laporan TA Yoga Adiyasa

55

Bawah, Rata-rata, dan Atas. Bawah merupakan masukan untuk batas paling bawah

untuk Jumlah Produksi, Rata-rata merupakan rata-rata Jumlah Produksinya, dan Atas

merupakan batas maksimal Jumlah Produksi tersebut. Kemudian Group Box yang

bawah terdiri dari tiga buah Group Box yaitu Group Box Berkurang, Normal, dan

Bertambah yang mana setiap Group Box tersebut memiliki Label untuk menampilkan

nilai setelah melalui proses input-an Batas Bawah, Rata-rata, dan Batas Atasnya yang

berada di Group Box atasnya. Selain Group Box, Label, dan Edit digunakan Bitbutton

yang terdiri dari Proses, Simpan, Edit, Batal dan Keluar. Bitbutton Proses untuk

memproses input pada Group Box atas yang terdiri dari Batas Bawah, Rata-rata, dan

Atas yang hasilnya akan ditampilkan di Group Box bawahnya yang terdiri dari Group

Box Rendah, Normal, dan Tinggi. Simpan untuk menyimpan hasil batas Jumlah

Produksi setelah diproses, Edit untuk meng-edit batas tersebut, Batal untuk

membatalkan proses dan Keluar untuk keluar dari form Input Batas Jumlah Produksi.

Gambar 3.17 adalah Rancangan Input Batas Jumlah Produksi.

Gambar 3.17 Rancangan Input Batas Jumlah Produksi

Edit Simpan Keluar

Proses

Jumlah Prod.

Bawah Atas

Rata-rata

Jumlah Prod.

Rendah Normal Tinggi

Bawah a

Bawah b

Tengah a

Tengah b

Tengah c

Atas a

Atas b

Batal

Page 73: Laporan TA Yoga Adiyasa

56

3.5.9 Perancangan Proses Sistem Pendukung Keputusan (SPK)

Tampilan Proses Sistem Pendukung Keputusan (SPK) ini menggunakan

empat buah Group Box yang masing-masingnya terdiri dari Edit dan button Data.

Edit untuk memasukkan nilai variabel fuzzy yang diinginkan dan button Data untuk

melihat data-data mengenai variabel fuzzy serta beberapa info dalam memutuskan

sebelum meng-input-kan nilai variabel fuzzy tersebut. Selain itu terdapat Label tahun

untuk menampilkan tahun sekarang, Speed Button Proses SPK Fuzzy untuk

memproses input-an dari empat buah variabel agar menghasilkan sutau nilai variabel

yaitu jumlah produksi gula yang disarankan, BitButton Simpan untuk menyimpan

data-data SPK, Hapus untuk menghapus masukan data pada tiap-tiap edit dalam

variabel tersebut, cetak untuk mencetak data anggaran produksi pada waktu itu,

Detail untuk melihat detail proses SPK dan Keluar untuk mengakhiri form SPK ini.

Hasil proses akan ditampilkan pada bagian bawah yang menggunakan Label. Gambar

3.18 adalah rancangan proses SPK.

Gambar 3.18 Rancangan Proses SPK

Luas Lahan

Data

Jumlah Tebu

Data

Rendemen

Data

Biaya Prod.

Data

Tahun

Proses SPKFuzzy

Hapus

Keluar

Simpan

Cetak

Jumlah Produksi Gula yang disarankan menurut Logika Fuzzy :

Detail

Page 74: Laporan TA Yoga Adiyasa

57

3.5.10 Perancangan Output Data Variabel Fuzzy

Tampilan untuk Output Data Variabel Fuzzy ini terdiri dari data-data yang

ditampilkan dalam DBGrid yang diambil dari tabel anggaran dalam database

program. Data-data tersebut merupakan data anggaran dari tiap-tiap variabel fuzzy

yang terdiri dari Luas Lahan, Jumlah Tebu, Rendemen, dan Biaya Produksi. Selain

data-data akan disajikan info agar user lebih teliti lagi dalam memasukkan nilai

variabel tersebut. Gambar 3.19 Rancangan Output Data Variabel Fuzzy

Gambar 3.19 Rancangan Output Data Variabel Fuzzy

3.5.11 Perancangan Output Data Anggaran Produksi

Tampilan Output Data Anggaran Produksi merupakan tampilan DBGrid untuk

menyajikan data-data dari tabel Anggaran secara keseluruhan di setiap tahunnya.

Data-data tersebut tersimpan dalam sebuah database dengan nama Madubaru.

Terdapat juga BitButton Keluar untuk mengakhiri form Anggaran Produksi ini.

Gambar 3.20 Rancangan Output Data Anggaran Produksi.

Data Variabel Fuzzy

Tahun Variabel Fuzzy

INFO

Page 75: Laporan TA Yoga Adiyasa

58

Gambar 3.20 Rancangan Output Data Anggaran Produksi

3.5.12 Perancangan Cetak Anggaran Produksi per Tahun

Tampilan Cetak Anggaran Produksi per Tahun menampilkan data-data

anggaran produksi per tahunnya. Data-data tersebut kemudian dicetak dan menjadi

hard copy sebuah data yang siap diarsipkan. Gambar 3.21 Rancangan Cetak

Anggaran Produksi per Tahun.

Gambar 3.21 Rancangan Cetak Anggaran Produksi per Tahun

Tahun Lahan Tebu Rendemen Biaya Jum. Prod.

Anggaran Produksi Gula per Tahun

Tahun Lahan Tebu Rendemen Biaya Jum. Prod.

Anggaran Produksi GulaPT. Madu Baru Yogyakarta

Keluar

LogoPerusahaan

Page 76: Laporan TA Yoga Adiyasa

59

3.5.13 Perancangan Detail SPK

Tampilan Detail SPK menampilkan data rumusan proses SPK Estimasi

Jumlah Produksi tersebut. Data-data tersebut merupakan representasi dari Proses SPK

dengan Logika Fuzzy tersebut. Gambar 3.22 Rancangan Detail SPK.

Gambar 3.22 Rancangan Detail SPK

Nilai Inputan

Fuzzifikasi

Fungsi Implikasi

Defuzzifikasi

Page 77: Laporan TA Yoga Adiyasa

60

BAB IV

IMPLEMENTASI DAN ANALISA SISTEM

4.1 Implementasi Sistem

Tahap implementasi sistem merupakan tahap pendiskripsian suatu sistem

aplikasi agar sistem aplikasi tersebut siap untuk dioperasikan. Tahap ini dilakukan

setelah tahap analisis data, tahap perancangan basis data dan tahap perancangan

aliran data dan menu sistem selesai. Tahap implementasi tersebut akan membahas

mengenai desain input data, desain proses data, desain output sistem serta analisis

hasil yang berupa pengujian sistem tersebut secara manualnya. Berdasarkan

tahapan implementasi tersebut diketahui apakah sistem yang dibuat benar-benar

mencapai tujuan yang diinginkan. Sebelum sistem ini diimplementasikan maka

sistem harus bebas dari kesalahan. Kesalahan yang mungkin terjadi antara lain

kesalahan dalam penulisan bahasa pemrograman, kesalahan logika baik program

maupun pengolahan data, maupun kesalahan pada waktu melakukan proses.

Berdasarkan analisis dari desain sistem yang telah dilakukan, maka telah

diimplementasikan sebuah sistem pendukung keputusan Estimasi jumlah produksi

gula dengan logika fuzzy. Dalam penyusunan sistem ini digunakan bahasa

pemrograman Delphi 7.0 dan database MySQL yang merupakan pasangan bahasa

pemrograman dan basis data yang digunakan untuk merancang suatu aplikasi .

Sistem ini dilengkapi dengan tombol-tombol perintah peng-input-an data sehingga

dapat membantu user dalam mengoperasikan sistem dan akan didapatkan hasil

output berupa jumlah produksi gula tiap tahunnya, selain itu tombol-tombol

tersebut akan membantu sistem dalam melakukan tugasnya dengan mudah dan

cepat.

Page 78: Laporan TA Yoga Adiyasa

61

4.1.1 Implementasi Sistem Awal

Implementasi sistem awal ini dengan menampilkan tampilan splash screen

di dalam sistem.

Gambar 4.1 Splash Screen

4.1.2 Implementasi Menu Utama

Menu Utama merupakan tampilan sesudah proses splash screen

dieksekusi. Menu Utama ini merupakan tampilan yang menyajikan tombol-

tombol perintah sehingga user akan dipermudahkan dalam menggunakan sistem

ini. Menu Utama ini terdiri dari Menu File, Menu Bantuan, Menu Tentang, dan

Keluar. Menu File ini terdiri dari tiga bagian yaitu input data domain batas, proses

SPK, dan melihat Anggaran Produksi. Untuk lebih memudahkan lagi isi di dalam

Menu File tersebut ditampilkan dengan tombol toolbar. Jika tombol domain batas

diklik maka akan menampilkan Form Domain Batas dimana di dalamnya juga

terdiri dari tombol variabel fuzzy untuk masuk ke sebuah form batas variabel

untuk melakukan pengisian nilai batas terhadap variabel yang bersangkutan.

Tampilan form Menu Utama seperti pada gambar 4.2 berikut :

Page 79: Laporan TA Yoga Adiyasa

62

Gambar 4.2 Menu Utama

4.1.3 Implementasi Input

Untuk menuju ke proses penginputan data dari tiap-tiap variabel maka

user akan dihadapkan pada sebuah tampilan yang terdiri dari button variabel yang

jika diklik maka user akan langsung menuju form pengisian nilai batas variabel

tertentu tersebut. Tampilan form Menu Domain Batas seperti pada gambar 4.3

berikut :

Gambar 4.3 Menu Domain Batas

Page 80: Laporan TA Yoga Adiyasa

63

Pada form ini user dapat mengisikan nilai batas tiap-tiap variabel, yang

terdiri dari Batas MIN yang merupakan Batas Minimum yang digunakan sebagai

patokan paling kecil pada saat memasukkan nilai saat mengaplikasikan SPK yang

digunakan sebagai persyaratan agar nilai yang dimasukkan benar-benar sesuai

dengan yang diinginkan, Bawah yang merupakan Batas Bawah dari variabel yang

nilainya di atas Batas MIN yang biasanya merupakan nilai terkecil dari data, Rata-

rata merupakan Batas Tengah atau rata-rata dari data untuk variabel, dan Atas

yang merupakan Batas Maksimum variabel tersebut yang dijadikan syarat target

ke depannya. Nilai tersebut akan menentukan nilai keluaran SPK nantinya.

Setelah ke empat nilai tersebut dimasukkan lewat komponen edit maka user

diharuskan menjalankan komponen Proses agar nilai tersebut diproses untuk

ditempatkan pada tiap-tiap himpunan fuzzy yang telah di-set keterangannya. Awal

mulanya untuk batas masing-masing himpunan ini mempunyai nilai default yang

nilainya ditentukan berdasarkan analisa terhadap data yang ada. Nilai ini langsung

dimasukkan lewat database dengan nama tabelnya adalah ”batas”. Untuk validasi

tombol jika form Batas tiap-tiap variabel ini di-show-kan adalah dengan

menampilkan nilai himpunan yang berkaitan dengan nama variabel yang diambil

dari tabel ”batas”. Selain itu, kondisi untuk button Edit, Batal dan Keluar adalah

Enabled=TRUE sedangkan button lainnya dalam keadaan Disabled atau

Enabled=FALSE. Jika dilakukan pengeditan terhadap nilai himpunan maka button

Edit akan bernilai FALSE dan button Proses akan bernilai TRUE. Jika button

Proses tersebut dijalankan maka button Simpan akan bernilai TRUE selanjutnya

jika Simpan dijalankan maka Simpan tersebut akan menjadi FALSE dan button

Edit akan bernilai TRUE lagi, demikian seterusnya. Untuk button Batal untuk

membatalkan pengeditan jika button Edit sudah dijalankan, button Keluar untuk

keluar dari form Input Batas variabel tersebut. Berikut merupakan representasi

dari button-button dari form Domain Batas jika di-klik :

1. Input Batas Luas Lahan

Batas Luas Lahan merupakan suatu batasan terhadap berapa hektar (Ha)

Luas Lahan yang akan dikelola ke depannya. Luas Lahan ini merupakan salah

Page 81: Laporan TA Yoga Adiyasa

64

satu faktor yang menjadi area bagi tumbuhnya atau dihasilkannya bahan baku

yang berupa tebu. Sehingga diperlukan suatu keputusan dalam menentukan Luas

Lahan sebelum diambil target untuk faktor-faktor yang lainnya. Tampilan form

Input Batas Luas Lahan seperti pada gambar 4.4 berikut :

Gambar 4.4 Input Batas Luas Lahan

2. Input Batas Jumlah Tebu

Batas Jumlah Tebu merupakan suatu batasan terhadap berapa Kuintal (Ku)

Tebu yang akan digiling. Tebu tersebut merupakan bahan baku dalam

menhasilkan gula sehingga diperlukan target yang matang agar jumlah produksi

gula tersebut dapat memenuhi permintaan dan sebanding dengan Luas Lahannya.

Tampilan form Input Batas Batas Jumlah Tebu seperti pada gambar 4.5 berikut :

Page 82: Laporan TA Yoga Adiyasa

65

Gambar 4.5 Input Batas Jumlah Tebu

3. Input Batas Rendemen

Batas Rendemen merupakan suatu batasan terhadap berapa persen (%)

rendemen atau kadar gula yang dibutuhkan untuk menghasilkan produksi yang

berkualitas dan menguntungkan. Rendemen ini juga merupakan faktor penentu

jumlah produksi gula tersebut, rendemen ini dapat menaksir seberapa Kuintal gula

akan diproduksi. Tampilan form Input Batas Rendemen seperti pada gambar 4.6

berikut :

Gambar 4.6 Input Batas Rendemen

Page 83: Laporan TA Yoga Adiyasa

66

4. Input Batas Biaya Produksi

Batas Biaya Produksi ini merupakan batasan terhadap berapa Rupiah biaya

yang dibutuhkan untuk berproduksi. Biaya produksi ini meliputi kalkulasi

terhadap semua biaya yang dikeluarkan. Tampilan form Input Batas Biaya

Produksi seperti pada gambar 4.7 berikut :

Gambar 4.7 Input Batas Biaya Produksi

4. Input Batas Jumlah Produksi

Batas Jumlah Produksi ini merupakan batasan terhadap berapa Kuintal

(Ku) gula yang akan diproduksi. Jumlah ini merupakan keluaran dari SPK ini. Di

dalam menentukan batas tersebut untuk Batas Jumlah Produksi gula ini tidak

merepresentasikan Batas MIN, karena variabel ini termasuk output dari SPK.

Tampilan form Input Batas Jumlah Produksi seperti pada gambar 4.8 berikut :

Page 84: Laporan TA Yoga Adiyasa

67

Gambar 4.8 Input Batas Jumlah Produksi

4.1.4 Implementasi Proses

Proses merupakan segala sesuatu yang menangani suatu masukan untuk

ditangani atau dirubah dengan suatu perumusan atau metode tertentu sehingga

menghasilkan suatu nilai keluaran yang dapat dijadikan sebagai informasi untuk

melakukan suatu keputusan.

1. Proses SPK

Form Proses ini menampilkan proses Sistem Pendukung Keputusan

Estimasi Jumlah Produksi Gula dengan Logika Fuzzy. Dimana user harus mengisi

terlebih dahulu input variabel yang dijadikan masukan SPK ini. Variabel tersebut

adalah variabel Luas Lahan, Jumlah Tebu, Rendemen, dan Biaya Produksi. Jika

tidak diisi semua atau salah beberapa maka akan muncul warning (Gambar 4.28),

jika di dalam meng-input-kannya tidak sesuai aturan pemberian nilai maka akan

muncul warning juga (Gambar 4.29) dan apabila inputnya kurang dari batas

minimum maka akan muncul warning (Gambar 4.30). Output dari SPK ini berupa

Jumlah Produksi Gula yang disarankan yang ditampilkan dalam format label.

Adapun tombol perintah yang dipakai ada tombol Simpan untuk menyimpan hasil

proses setelah masukan nilai variabel, Proses SPK Fuzzy untuk memproses

masukan nilai variabel tersebut untuk ditampilkan output-nya, Hapus untuk

Page 85: Laporan TA Yoga Adiyasa

68

menghapus inputan data variabel, Cetak untuk mencetak anggaran produksi tiap-

tiap tahunnya, Detail untuk melihat detail rumus proses SPK dan Keluar untuk

mengakhiri SPK tersebut. Tampilan form Proses SPK seperti pada gambar 4.9

berikut :

Gambar 4.9 Proses SPK

Listing Program untuk Fuzzifikasi

Pembentukan unit Fuzzifikasi untuk menyimpan fungsi-fungsi yang digunakan

untuk proses Fuzzifikasi. Gambar 4.10 berikut merupakan bagian awal dari unit

Fuzzifikasi :

Gambar 4.10 Unit Fuzzifikasi

unit UFuzzifikasi;

interface

function bahu_kiri(x,a,b:real):real;

function segitiga (x,a,b,c : real):real;

function bahu_kanan (x,a,b:real):real;

implementation

Page 86: Laporan TA Yoga Adiyasa

69

Selanjutnya di dalam unit tersebut terdapat tiga buah fungsi untuk Fuzzifikasi,

yaitu :

1. Fungsi Fuzzifikasi Bahu Kiri, yang merupakan representasi dari Fuzzifikasi

Batas Bawah. Gambar 4.11 berikut merupakan Fungsi Fuzzifikasi Bahu Kiri :

Gambar 4.11 Fungsi Fuzzifikasi Bahu Kiri

2. Fungsi Fuzzifikasi Segitiga, yang merupakan representasi dari Fuzzifikasi Batas

Tengah. Gambar 4.12 berikut merupakan Fungsi Fuzzifikasi Segitiga :

Gambar 4.12 Fungsi Fuzzifikasi Segitiga

function bahu_kiri(x,a,b:real):real;

begin

if(x<=a) then

bahu_kiri:=1

else if (x>a) and (x<b) then

bahu_kiri:= (b-x)/(b-a)

else

bahu_kiri:=0;

end;

function segitiga (x,a,b,c : real):real;

begin

if (x<=a) or (x>=c) then

segitiga:=0

else if (x>a) and (x<b) then

segitiga:=(x-a)/(b-a)

else if x=b then

segitiga:=1

else

segitiga:=(c-x)/(c-b); end;

Page 87: Laporan TA Yoga Adiyasa

70

3. Fungsi Fuzzifikasi Bahu Kanan, yang merupakan representasi dari Fuzzifikasi

Batas Atas. Gambar 4.13 berikut merupakan Fungsi Fuzzifikasi Bahu Kanan :

Gambar 4.13 Fungsi Fuzzifikasi Bahu Kanan

Listing Program Fungsi Implikasi :

Di dalam fungsi implikasi proses SPK ini digunakan implikasi Min,

dimana dicari derajat keanggotaan terkecil pada masing-masing aturannya.

Adapun cara untuk mengambil nilai derajat keanggotaan terkecil dari suatu aturan

dengan mengimplementasikan Fungsi Find_Min. Gambar 4.14 berikut merupakan

Fungsi Find_Min :

function bahu_kanan (x,a,b:real):real;

begin

if(x<=a) then

bahu_kanan:=0

else if (x>a) and (x<b) then

bahu_kanan:=(x-a)/(b-a)

else

bahu_kanan:=1;

end;

end.

Page 88: Laporan TA Yoga Adiyasa

71

Gambar 4.14 Fungsi Find_Min

Listing Program Defuzzifikasi :

Pembentukan unit Defuzzifikasi untuk menyimpan fungsi-fungsi yang digunakan

untuk proses Defuzzifikasi. Gambar 4.15 berikut merupakan bagian awal dari unit

Defuzzifikasi:

Gambar 4.15 Unit Defuzzifikasi

unit UDefuzzifikasi

interface

function defz_bahu_kiri(a,b,c:real):real;

function defz_segitiga(a,b,c:real):real;

function defz_bahu_kanan(a,b,c:real):real;

implementation

function TFrmSPK.Find_Min(a,b,c,d:real):real;

var x:real;

begin

x := a;

if x > b then

x := b;

if x > c then

x := c;

if x > d then

x := d;

//menyimpan nilai

Find_Min:= x;

end;

Page 89: Laporan TA Yoga Adiyasa

72

Selanjutnya di dalam unit tersebut terdapat tiga buah fungsi untuk Defuzzifikasi,

yaitu :

1. Fungsi Defuzzifikasi Bahu Kiri, yang merupakan representasi Defuzzifikasi

untuk Batas Bawah. Gambar 4.16 berikut merupakan Fungsi Defuzzifikasi Bahu

Kiri :

Gambar 4.16 Fungsi Defuzzifikasi Bahu Kiri

2. Fungsi Defuzzifikasi Segitiga, yang merupakan representasi Defuzzifikasi untuk

Batas Tengah. Gambar 4.17 berikut merupakan Fungsi Defuzzifikasi Segitiga :

Gambar 4.17 Fungsi Defuzzifikasi Segitiga

3. Fungsi Defuzzifikasi Bahu Kanan, yang merupakan representasi Defuzzifikasi

untuk Batas Atas. Gambar 4.18 berikut merupakan Fungsi Defuzzifikasi Bahu

Kanan :

Gambar 4.18 Fungsi Defuzzifikasi Bahu Kanan

function defz_bahu_kiri(a,b,c:real):real;

begin

defz_bahu_kiri:= b-(c*(b-a));

end;

function defz_segitiga(a,b,c:real):real;

begin

defz_segitiga:= b-c*(b-a);

end;

function defz_bahu_kanan(a,b,c:real):real;

begin

defz_bahu_kanan:= c*(b-a)+a;

end;

end.

Page 90: Laporan TA Yoga Adiyasa

73

Listing Program Implementasi Fungsi Implikasi dan Fungsi Defuzzifikasi :

Berikut merupakan contoh implementasi Fungsi Implikasi Min dan Fungsi

Defuzzifikasi di dalam Proses SPK Fuzzy. Gambar 4.19 merupakan Implementasi

Fungsi Implikasi Min dan Defuzzifikasi dari aturan pertama :

Gambar 4.19 Implementasi Fungsi Implikasi Min dan Defuzzifikasi

Listing Program Rata-rata Terbobot :

Rata-rata Terbobot atau Weight Average ini merupakan langkah terakhir

dalam Defuzzifikasi dimana dengan menerapkan prosedur ini akan didapat

keluaran yaitu jumlah produksi yang disarankan. Gambar 4.20 merupakan

Prosedur Rata-Rata Terbobot :

(* 1. IF luas lahan luas AND jumlah tebu banyak AND rendemen tinggi

AND Biaya Produksi Tinggi

THEN Jumlah Produksi bertambah *)

//Implikasi Min

output_rule[1]:=Find_Min(u_x1_bahu_kanan, u_x2_bahu_kanan, u_x3_bahu_kanan,u_x4_bahu_kanan);

//Defuzzifikasi masing-masing Aturan

u_output[1]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,

output_rule[1]); //Defuzzifikasi

Page 91: Laporan TA Yoga Adiyasa

74

Gambar 4.20 Prosedur Rata-Rata Terbobot

2. Proses Edit Anggaran Produksi

Proses Edit Anggaran Produksi ini untuk mengganti nilai variabel pada

Tabel Anggaran. Tampilan form Proses Anggaran Produksi seperti pada gambar

4.21 berikut :

procedure TfrmSPK.compute_output ();

var i: integer;

z,temp1,temp2 : real;

begin

for i:=1 to 19 do

begin

temp1 := temp1 + output_rule[i] * u_output[i];

temp2 := temp2 + output_rule[i];

end;

if (temp1=0) OR (temp2=0) then

begin

MessageDlg('Tidak sesuai aturan', mtWarning, [mbOk], 0);

end

else

z:=temp1/temp2;

//menampilkan jumlah produksi

lblProd.Caption:= FloatToStr(RoundTo(z,-3));

frmDetail.jumlah.Caption:=lblProd.Caption;

end;

Page 92: Laporan TA Yoga Adiyasa

75

Gambar 4.21 Proses Edit Anggaran Produksi

4.1.5 Implementasi Output

Output merupakan hasil keluaran dari sistem yang digunakan sebagai

bahan informasi maupun referensi untuk menentukan suatu keputusan atau jalan

yang akan ditempuh selanjutnya.

1. Data Variabel Fuzzy

Data variabel Fuzzy ini merupakan informasi terhadap user sebelum dia

melakukan suatu masukan ke SPK. Informasi tersebut berupa data-data variabel

yang berada dalam anggaran produksi yang telah dikelompokkan berdasarkan

variabelnya. Data-data tersebut merupakan kumpulan data dari anggaran produksi

tahun-tahun sebelumnya. Untuk data yang ditampilkan di sistem ini data dari

tahun 2000 sampai tahun 2008. Tampilan form Data Variabel Fuzzy seperti pada

gambar 4.22 berikut :

Page 93: Laporan TA Yoga Adiyasa

76

Gambar 4.22 Data Variabel Fuzzy

2. Data Anggaran Produksi

Data hasil proses akan disimpan di dalam suatu tabel yang bernama tabel

anggaran. Form ini merupakan penampil dari data-data pada Tabel Anggaran

tersebut. Tampilan form Anggaran Produksi seperti pada gambar 4.23 berikut :

Gambar 4.23 Anggaran Produksi

Page 94: Laporan TA Yoga Adiyasa

77

3. Print Preview Anggaran Produksi

Ini merupakan tampilan print preview dari data anggaran produksi yang

berada pada Tabel Anggaran. Data Anggaran Produksi tersebut siap dicetak untuk

dijadikan laporan dalam bentuk Hard Copy. Tampilan Print Preview Anggaran

Produksi seperti pada gambar 4.24 berikut :

Gambar 4.24 Print Preview Anggaran Produksi

4. Detail SPK

Detail SPK ini merupakan informasi mengenai cara tertulis dari proses

SPK Estimasi Jumlah Produksi Gula dengan Logika Fuzzy tersebut. Dengan detail

ini diharapkan user dapat mengetahui tata cara Estimasi dengan metode fuzzy

secara garis besarnya yang mana proses ini sebenarnya terdapat di dalam source

code programnya. Tampilan Detail SPK seperti pada gambar 4.25 berikut :

Page 95: Laporan TA Yoga Adiyasa

78

Gambar 4.25 Detail SPK

4.1.6 Implementasi Menu Bantuan

Menu Bantuan merupakan suatu menu untuk membantu user dalam

mengaplikasikan program SPK ini. Bantuan ini menyajikan teori program dan

interface program SPK tersebut. Tampilan form Bantuan seperti pada gambar 4.26

berikut :

Gambar 4.26 Menu Bantuan

Page 96: Laporan TA Yoga Adiyasa

79

4.1.7 Implementasi Menu Tentang

Menu Tentang berisi identitas pembuat program. Menu ini akan muncul

jika menu tentang dijalankan kemudian akan berakhir jika tanda silang di pojok

kiri atas diklik. Tampilan form Tentang seperti pada gambar 4.27 berikut :

Gambar 4.27 Menu Tentang

4.1.8 Implementasi Peringatan

Peringatan/ warning ini akan muncul jika nilai data variabel yang diisi

pada saat melakukan SPK masih ada yang kosong atau belum diisi tapi sudah

diklik tombol Proses-nya. Tampilan peringatan tersebut seperti pada gambar 4.28

berikut :

Gambar 4.28 Peringatan Data Harus Diisi Semuanya

Page 97: Laporan TA Yoga Adiyasa

80

Peringatan ini akan muncul apabila data yang diisikan tidak sesuai aturan

dalam pengisian data. Aturan tersebut merupakan bagian dari pengolahan data

dengan Logika Fuzzy tersebut, tujuannya agar data yang diisikan benar-benar

sesuai kenyataan tidak berat sebelah, karena mengingat Logika Fuzzy tersebut

merupakan teknik pengambilan Keputusan dengan menyeimbangkan variabel-

variabelnya agar diperoleh keputusan selayaknya. Tampilan peringatan tersebut

seperti pada gambar 4.29 berikut :

Gambar 4.29 Peringatan Data Tidak Sesuai Aturan

Peringatan ini akan muncul jika masukan terhadap nilai variabel tersebut

kurang dari Batas Minimum nilai yang telah ditetapkan. Sehingga, user

diharapkan untuk mengulangi atau merubah nilai variabel yang dimasukkannya.

Tampilan peringatan tersebut seperti pada gambar 4.30 berikut :

Gambar 4.30 Peringatan Nilai Kurang dari Batas Minimum

Peringatan ini akan muncul pada saat penyimpanan data (Gambar 4.31)

dan peringatan pada Gambar 4.32 akan muncul pada saat penghapusan data.

4.2 Analisa Sistem

Sistem yang dibangun ini dianalisa agar penerapan teori ke dalam praktik

program dapat sejalan. Sehingga jika dicek baik secara manual dengan

Page 98: Laporan TA Yoga Adiyasa

81

penghitungan programnya menghasilkan nilai yang tidak jauh beda. SPK Estimasi

Jumlah Produksi Gula dengan Logika Fuzzy ini memberikan solusi baru mengenai

cara mendapatkan jumlah produksi gula tersebut yaitu dengan teknik pengambilan

keputusan dengan Logika Fuzzy.

4.2.1 Analisa Hasil

Hasil sistem yang didapatkan harus diuji nilainya dengan melakukan

pengujian sistem secara manual sehingga dengan perbandingan ini akan

didapatkan hasil sistem yang benar-benar diakui karena sesuai dengan hitungan

manualnya.

Diambil contoh suatu nilai dari tiap-tiap variabel yang akan dijadikan

masukan ke dalam SPK ini :

1. Luas Lahan : 5535 Ha

2. Jumlah Tebu : 5.640.000 Kuintal

3. Rendemen : 7.18 %

4. Biaya Produksi : Rp. 58.000.000.000,-

Ditetapkan suatu perjanjian ( NB. Untuk memudahkan perhitungan ) :

Untuk Jumlah Tebu : 5.640 x 1000 Ku

Untuk Biaya Produksi : Rp. 58.000,- x Rp.1.000.000,-

Tahapan Perhitungan :

1. Nilai masukan dan keluaran sistem

2. Fuzzifikasi

3. Aplikasi fungsi implikasi

4. Defuzzifikasi

Rincian :

1. Mendefinisikan model masukan dan keluaran sistem.

Page 99: Laporan TA Yoga Adiyasa

82

Masukan terdiri dari 4 Variabel Fuzzy, yaitu :

a. Luas Lahan : 5535 Ha

b. Jumlah Tebu : 5640 (x1000 Ku)

c. Rendemen : 7.18 %

d. Biaya Produksi : 58000 (x Rp. 1000000)

Keluaran terdiri dari 1 Variabel Fuzzy, yaitu : Jumlah Produksi.

2. Fuzzifikasi.

Estimasi dengan melihat grafik fungsi keanggotaan.

a. Luas Lahan :

1. Sempit = 0

2. Sedang = 0

3. Luas =

=

=

b. Jumlah Tebu :

1. Sedikit = 0

2. Sedang = 0

3. Banyak =

=

=

c. Rendemen :

(5535-5000) / (6000-5000)

535 / 1000

0.535

(5640-4582) / (6000-4582)

1058 / 1418

0.746

Page 100: Laporan TA Yoga Adiyasa

83

1. Rendah = 0

2. Sedang = 0

3. Tinggi =

=

=

d. Biaya Produksi :

1. Rendah = 0

2. Normal = 0

3. Tinggi =

=

=

3. Aplikasi Fungsi Implikasi Min dan Defuzzifikasi tiap-tiap aturan

1. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen tinggi

AND Biaya Produksi Tinggi THEN Jumlah Produksi tinggi

α-predikat1 :

= µLahanLUAS µTebuBANYAK µRendTINGGI µBiayaTINGGI

= MIN ( µLahanLUAS[5535], µTebuBANYAK[5640], µRendTINGGI[7.18],

µBiayaTINGGI[58000] )

= MIN (0.535; 0.746; 0.4770408; 0.707)

= 0.4770408

Lihat himpunan Jumlah Produksi TINGGI : (Defuzzifikasi Aturan)

Z1= 0.4770408*(480000-338868)+338868

(7.18-6.432) / (8-6.432)

0.748/ 1.568

0.4770408

(58000-41100) / (65000-41100)

16900 / 23900

0.707

Page 101: Laporan TA Yoga Adiyasa

84

= 0.4770408*141132 + 338868

= 67325.722+ 338868

= 406193.72

2. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen tinggi

AND Biaya Produksi normal THEN Jumlah Produksi tinggi

α-predikat2 :

= µLahanLUAS µTebuBANYAK µRendTINGGI µBiayaNORMAL

= MIN ( µLahanLUAS[5535], µTebuBANYAK[5640], µRendTINGGI[7.18],

µBiayaNORMAL[58000] )

= MIN (0.535; 0.746; 0.477; 0)

= 0

Lihat himpunan Jumlah Produksi TINGGI :

Z2 = 0*(480000-338868)+338868

= 338868

3. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen sedang

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

α-predikat3 :

= µLahanLUAS µTebuBANYAK µRendSEDANG µBiayaTINGGI

= MIN ( µLahanLUAS[5535], µTebuBANYAK[5640], µRendSEDANG[7.18],

µBiayaTINGGI[58000] )

= MIN (0.535; 0.746; 0; 0.707)

= 0

Page 102: Laporan TA Yoga Adiyasa

85

Lihat himpunan Jumlah Produksi TINGGI :

Z3 = 0*(480000-338868)+338868

= 338868

4. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen sedang

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

α-predikat4 :

= µLahanLUAS µTebuSEDANG µRendSEDANG µBiayaTINGGI

= MIN ( µLahanLUAS[5535], µTebuSEDANG[5640], µRendSEDANG[7.18],

µBiayaTINGGI[58000] )

= MIN (0.535; 0; 0; 0.707)

= 0

Lihat himpunan Jumlah Produksi TINGGI :

Z4 = 0*(480000-338868)+338868

= 338868

5. IF Luas Lahan sedang AND Jumlah Tebu sedang AND Rendemen sedang

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

α-predikat5 :

= µLahanSEDANG µTebuSEDANG µRendSEDANG µBiayaTINGGI

=MIN (µLahanSEDANG[5535], µTebuSEDANG[5640], µRendSEDANG[7.18],

µBiayaTINGGI[58000] )

= MIN (0; 0; 0; 0.707)

= 0

Page 103: Laporan TA Yoga Adiyasa

86

Lihat himpunan Jumlah Produksi TINGGI :

Z5 = 0*(480000-338868)+338868

= 338868

6. IF Luas Lahan luas AND Jumlah Tebu banyak AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi tinggi

α-predikat6 :

= µLahanLUAS µTebuBANYAK µRendSEDANG µBiayaNORMAL

= MIN ( µLahanLUAS[5535], µTebuBANYAK[5640], µRendSEDANG[7.18],

µBiayaNORMAL[58000] )

= MIN (0.535; 0.746; 0;0)

= 0

Lihat himpunan Jumlah Produksi TINGGI :

Z6 = 0*(480000-338868)+338868

= 338868

7. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen tinggi

AND Biaya Produksi normal THEN Jumlah Produksi tinggi

α-predikat7 :

= µLahanLUAS µTebuSEDANGµRendTINGGI µBiayaNORMAL

= MIN ( µLahanLUAS[5535], µTebuSEDANG [5640], µRendTINGGI [7.18],

µBiayaNORMAL [58000] )

= MIN (0.535; 0; 0.477; 0)

= 0

Page 104: Laporan TA Yoga Adiyasa

87

Lihat himpunan Jumlah Produksi TINGGI :

Z7 = 0*(480000-338868)+338868

= 338868

8. IF Luas Lahan sedang AND Jumlah Tebu banyak AND Rendemen sedang

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

α-predikat8 :

= µLahanSEDANG µTebuBANYAK µRendSEDANG µBiayaTINGGI

= MIN ( µLahanSEDANG[5535], µTebuBANYAK [5640], µRendSEDANG

[7.18], µBiayaTINGGI [58000] )

= MIN (0; 0.746; 0; 0.707)

= 0

Lihat himpunan Jumlah Produksi TINGGI :

Z8 = 0*(480000-338868)+338868

= 338868

9. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen tinggi

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

α-predikat9 :

= µLahanLUAS µTebuSEDANG µRendTINGGI µBiayaTINGGI

= MIN ( µLahanLUAS[5535], µTebuSEDANG [5640], µRendTINGGI [7.18],

µBiayaTINGGI [58000] )

= MIN (0.535; 0; 0.477; 0.707)

= 0

Page 105: Laporan TA Yoga Adiyasa

88

Lihat himpunan Jumlah Produksi TINGGI :

Z9 = 0*(480000-338868)+338868

= 338868

10. IF Luas Lahan sedang AND Jumlah Tebu banyak AND Rendemen tinggi

AND Biaya Produksi tinggi THEN Jumlah Produksi tinggi

α-predikat10 :

= µLahanSEDANG µTebuBANYAK µRendTINGGI µBiayaTINGGI

= MIN ( µLahanSEDANG[5535], µTebuBANYAK [5640], µRendTINGGI

[7.18], µBiayaTINGGI [58000] )

= MIN (0; 0.746; 0.477; 0.707)

= 0

Lihat himpunan Jumlah Produksi TINGGI :

Z10 = 0*(480000-338868)+338868

= 338868

11. IF Luas Lahan luas AND Jumlah Tebu sedang AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi normal

α-predikat11 :

= µLahanLUAS µTebuSEDANGµRendSEDANG µBiayaNORMAL

= MIN ( µLahanLUAS[5535], µTebuSEDANG [5640], µRendSEDANG [7.18],

µBiayaNORMAL [58000] )

= MIN (0.535; 0; 0; 0)

= 0

Page 106: Laporan TA Yoga Adiyasa

89

Lihat himpunan Jumlah Produksi NORMAL :

Z11 = 362868-0*(362868-338868)

= 362868

12. IF Luas Lahan sedang AND Jumlah Tebu sedang AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi normal

α-predikat12 :

= µLahanSEDANG µTebuSEDANG µRendSEDANG µBiayaNORMAL

= MIN ( µLahanSEDANG[5535], µTebuSEDANG [5640], µRendSEDANG

[7.18], µBiayaNORMAL [58000] )

= MIN (0; 0; 0; 0)

= 0

Lihat himpunan Jumlah Produksi NORMAL :

Z12 = 362868-0*(362868-338868)

= 362868

13. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen rendah

AND Biaya Produksi rendah THEN Jumlah Produksi rendah

α-predikat13 :

= µLahanSEMPIT µTebuSEDIKIT µRendRENDAH µBiayaRENDAH

= MIN ( µLahanSEMPIT[5535], µTebuSEDIKIT [5640], µRendRENDAH

[7.18], µBiayaRENDAH [58000] )

= MIN (0; 0; 0; 0)

= 0

Page 107: Laporan TA Yoga Adiyasa

90

Lihat himpunan Jumlah Produksi RENDAH :

Z13 = 338868-0*(338868-197736)

= 338868

14. IF Luas Lahan sedang AND Jumlah Tebu sedikit AND Rendemen rendah

AND Biaya Produksi normal THEN Jumlah Produksi rendah

α-predikat14 :

= µLahanSEDANG µTebuSEDIKIT µRendRENDAH µBiayaNORMAL

= MIN ( µLahanSEDANG[5535], µTebuSEDIKIT [5640], µRendRENDAH

[7.18], µBiayaNORMAL [58000] )

= MIN (0; 0; 0; 0)

= 0

Lihat himpunan Jumlah Produksi RENDAH :

Z14 = 338868-0*(338868-197736)

= 3338868

15. IF Luas Lahan sedang AND Jumlah Tebu sedikit AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi rendah

α-predikat15 :

= µLahanSEDANGµTebuSEDIKIT µRendSEDANGµBiayaNORMAL

= MIN ( µLahanSEDANG[5535], µTebuSEDIKIT [5640], µRendSEDANG

[7.18], µBiayaNORMAL[58000] )

= MIN (0; 0; 0; 0)

= 0

Page 108: Laporan TA Yoga Adiyasa

91

Lihat himpunan Jumlah Produksi RENDAH :

Z15 = 338868-0*(338868-197736)

= 338868

16. IF Luas Lahan sedang AND Jumlah Tebu sedikit AND Rendemen tinggi

AND Biaya Produksi normal THEN Jumlah Produksi rendah

α-predikat16 :

= µLahanSEDANG µTebuSEDIKIT µRendTINGGIµBiayaNORMAL

= MIN ( µLahanSEDANG[5535], µTebuSEDIKIT [5640], µRendTINGGI

[7.18], µBiayaNORMAL [58000] )

= MIN (0; 0; 0.477; 0)

= 0

Lihat himpunan Jumlah Produksi RENDAH :

Z16 = 338868-0*(338868-197736)

= 3338868

17. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen rendah

AND Biaya Produksi normal THEN Jumlah Produksi rendah

α-predikat17 :

= µLahanSEMPIT µTebuSEDIKIT µRendRENDAHµBiayaNORMAL

= MIN ( µLahanSEMPIT[5535], µTebuSEDIKIT [5640], µRendRENDAH

[7.18], µBiayaNORMAL [58000] )

= MIN (0; 0; 0; 0)

= 0

Page 109: Laporan TA Yoga Adiyasa

92

Lihat himpunan Jumlah Produksi RENDAH :

Z17 = 338868-0*(338868-197736)

= 338868

18. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen sedang

AND Biaya Produksi normal THEN Jumlah Produksi rendah

α-predikat18 :

= µLahanSEMPIT µTebuSEDIKIT µRendSEDANG µBiayaNORMAL

= MIN ( µLahanSEMPIT[5535], µTebuSEDIKIT [5640], µRendSEDANG[7.18],

µBiayaNORMAL [58000] )

= MIN (0; 0; 0; 0)

= 0

Lihat himpunan Jumlah Produksi RENDAH :

Z18 = 338868-0*(338868-197736)

= 338868

19. IF Luas Lahan sempit AND Jumlah Tebu sedikit AND Rendemen tinggi

AND Biaya Produksi normal THEN Jumlah Produksi rendah

α-predikat19 :

= µLahanSEMPIT µTebuSEDIKIT µRendTINGGIµBiayaNORMAL

= MIN ( µLahanSEMPIT[5535], µTebuSEDIKIT [5640], µRendTINGGI [7.18],

µBiayaNORMAL [58000] )

= MIN (0; 0; 0.477; 0)

= 0

Page 110: Laporan TA Yoga Adiyasa

93

Lihat himpunan Jumlah Produksi RENDAH :

Z19 = 338868-0*(338868-197736)

= 338868

4. Defuzzifikasi Akhir.

Untuk Defuzzifikasi tiap-tiap aturan sudah dikerjakan setelah menerapkan

fungsi implikasi Min tiap-tiap aturannya. Selanjutnya akan ditentukan

Defuzzifikasi akhir untuk mendapatkan jumlah produksi gula yaitu dengan

menggunakan Rata-rata terbobot (Weight Average).

Z =

Z = 406193.724

Jadi, jumlah gula yang harus diproduksi perusahaan adalah 406.193,724 Kuintal.

Dengan inputan nilai variabel yang sama kemudian diaplikasikan melalui

program SPK ini, ternyata menghasilkan nilai yang tidak jauh beda. Maka dari itu,

SPK Estimasi Jumlah Produksi Gula dengan Logika Fuzzy ini sudah sesuai

dengan perhitungannya dan dapat diterapkan untuk mendukung keputusan dalam

menentukan target produksi gula setiap tahunnya. SPK ini bertujuan untuk

memberikan alternatif cara bagi manajer dalam menentukan target produksi gula

per tahun.

Selain itu, sistem SPK Estimasi Jumlah Produksi Gula dengan Logika

Fuzzy tersebut dibandingkan dengan data-data anggaran produksi yang diperoleh

dari PT. Madu Baru Yogyakarta pada tahun 2000-2008. Tabel 4.1 berikut ini

menjelaskan hasil dari sistem jika dibandingkan dengan data-data pengamatan

produksi pada tahun 2000-2008 :

(0.4770408*406193.72) + 0

0.4770408 + 0

Page 111: Laporan TA Yoga Adiyasa

94

Tabel 4.1 Data Perbandingan

No. Tahun

Luas

Lahan

(Ha)

Jumlah

Tebu

Digiling

(Ku)

Rende

men

(%)

Biaya

Produksi

(Ribuan Rp.)

Jumlah

Produksi

(Ku)Hasil Jumlah Produksi

dalam SPK

1 2000 5.100 3.602.784 6,47 22.156.533 233.185 Tidak Sesuai Aturan

2 2001 4.313 3.163.667 6,10 28.084.436 197.736 208.586,148

3 2002 4.870 3.657.298 6,55 27.842.372 240.222 Tidak Sesuai Aturan

4 2003 4.800 3.686.441 6,70 29.979.282 239.504 Tidak Sesuai Aturan

5 2004 4.295 3.585.520 6,61 29.920.225 264.210 Tidak Sesuai Aturan

6 2005 5.472 4.684.056 6,50 38.493.759 237.353 Tidak Sesuai Aturan

7 2006 5.268 4.756.231 6,72 42.327.923 320.727 355.544,477

8 2007 5.250 5.341.260 6,87 42.023.769 368.210 370.156,239

9 2008 5.535 5.640.000 7,18 57.924.549 406.169 406.193,724

Di dalam data perbandingan antara sistem dengan data sebenarnya yang

ada di lapangan menunjukkan nilai yang tidak begitu jauh beda yaitu pada tahun

2001, 2006, 2007, dan 2008. Untuk tahun 2000, 2002, 2003, 2004, dan 2005 nilai

yang didapat tidak sesuai aturan karena hasil α-predikat tiap-tiap aturan tersebut

mempunyai nilai 0. Sehingga tidak mempunyai hasil keluaran atau tidak sesuai

aturan. Setelah dianalisa rupanya pada biaya produksi harus memenuhi nilai

normal karena nilai normal akan cenderung memenuhi aturan, nilai pada biaya

produksi untuk kelima tahun yang tidak sesuai aturan tersebut mempunyai nilai

biaya produksi yang rendah sehingga harus dipertimbangkan. Maka dari itu, perlu

dianalisa ulang masukan untuk tiap-tiap faktornya.

Page 112: Laporan TA Yoga Adiyasa

95

BAB V

PENUTUP

5.1 Kesimpulan

1. Sistem Pendukung Keputusan Estimasi Jumlah Produksi Gula merupakan

solusi bagi para pengambil keputusan manajerial dalam menentukan target

produksi gula per tahunnya.

2. SPK Estimasi Jumlah Produksi Gula tersebut diproses dengan Logika

Fuzzy yang merupakan teknik berbasiskan perasaan yang menghasilkan

keputusan yang lebih seimbang karena merepresentasikan himpunan

dengan derajat keanggotaan antara interval 0 sampai 1.

3. Logika Fuzzy memetakan suatu ruang input ke dalam ruang output dimana

yang menjadi input-nya adalah faktor-faktor yang mempengaruhi jumlah

produksi gula yang meliputi Luas Lahan, Jumlah Tebu, Rendemen, dan

Biaya Produksi kemudian yang dijadikan output-nya adalah Jumlah

Produksi Gula per tahunnya.

4. Perancangan SPK digunakan Metode Inferensi Tsukamoto dimana

penggunaan metode Min sebagai fungsi implikasinya, kemudian output

hasil implikasi dari tiap-tiap aturan tersebut diberikan secara tegas (crisp)

berdasarkan derajat keanggotaan terkecilnya yang dikenal dengan

Defuzzifikasi tiap-tiap aturan, selanjutnya penentuan hasil akhir dengan

menerapkan rata-rata terbobot untuk mendapatkan jumlah produksi gula.

5. SPK Estimasi jumlah produksi gula telah diuji secara manual dan

menghasilkan nilai yang sama dengan sistem. Untuk kesesuaian dengan

data pengamatan, tahun 2001, 2006, 2007, dan 2008 telah memenuhi

sistem dengan hasil yang tidak jauh beda. Akan tetapi, pada tahun 2000,

2002, 2003, 2004, dan 2005 nilai data tidak sesuai aturan sistem.

Page 113: Laporan TA Yoga Adiyasa

96

5.2 Saran

Sistem ini dapat dikembangkan lagi dengan metode-metode inferensi

lainnya misalnya Metode Max-Min dan Metode Sugeno. Selain itu metode-

metode inferensi ini dapat digunakan untuk memecahkan permasalahan lain selain

estimasi jumlah produksi gula.

Page 114: Laporan TA Yoga Adiyasa

DAFTAR PUSTAKA

_____ , Buku Pedoman Agrowisata PT. Madu Baru, Yogyakarta : PT. Madu Baru

_____ , 2003, Seri Panduan Pemrograman : Pemrograman Borland Delphi 7, DivisiPenelitian dan Pengembangan MADCOMS, Yogyakarta : C.V. Andi Offset

Hermawanto D., 2008, Tutorial Pemrograman Fuzzy Logic,http://ilmukomputer.com/2008/02/19/tutorial-pemrograman-fuzzy-logic

Jogiyanto HM., 2005, Analisis dan Desain Sistem Informasi: Pendekatan Teori danPraktek Aplikasi Bisnis, Yogyakarta : CV. Andi Offset

Husni, 2004, Membuat Aplikasi Database Client-Server dengan Delphi dan MySQL,Yogyakarta : Graha Ilmu

Husni, 2004, Pemrograman Database dengan Delphi, Yogyakarta : Graha Ilmu

Kristanto A., 2004, Rekayasa Perangkat Lunak (Konsep Dasar), Yogyakarta :Penerbit Gava Media

Kadir A., 1999, Konsep dan Tuntunan Praktis Basis Data, Yogyakarta : CV. AndiOffset

Kadir A., 2002, Penuntun Praktis Belajar SQL, Yogyakarta : CV. Andi Offset

Kusrini, 2007, Konsep dan Aplikasi Sistem Pendukung Keputusan, Yogyakarta : CV.Andi Offset

Kusumadewi S., 2002, Analisis dan Desain Sistem Fuzzy Menggunakan Tool BoxMatlab, Yogyakarta: Graha Ilmu

Kusumadewi S., 2003, Artificial Intelligence (Teknik dan Aplikasinya),Yogyakarta:Graha Ilmu

Kusumadewi S. dan Purnomo H., 2004, Aplikasi Logika Fuzzy untuk PendukungKeputusan, Yogyakarta: Graha Ilmu

Kusumadewi S., 2008, Penentuan Tingkat Risiko Penyakit Menggunakan TsukamotoFuzzy Inference System, Jurnal Seminar Nasional II : The Application ofTechnology Toward A Better Life, http://cicie.files.wordpress.com/2008/06

Page 115: Laporan TA Yoga Adiyasa

Martina I., 2004, 36 Jam Belajar Komputer : Pemrograman Visual Borland Delphi 7,Yogyakarta : Elex Media Komputindo

Sasongko P.S., 2007, Sistem Inferensi Fuzzy,http://logikafuzzy.blogspot.com/2007/12/sistem-inferensi-fuzzy.html

Turban E., Aronson J.E., dkk, 2003, Decision Support Systems and IntelligentSystems (Sistem Pendukung Keputusan dan Sistem Cerdas), Yogyakarta: CV.Andi Offset

Page 116: Laporan TA Yoga Adiyasa

LAMPIRAN1

Page 117: Laporan TA Yoga Adiyasa

DAFTAR KONSULTASI

TUGAS AKHIR

TEKNIK INFORMATIKA

SEKOLAH TINGGI TEKNOLOGI ADISUTJIPTO

Nama Mahasiswa : Yoga Adiyasa

NIM : 04030033

Judul : Sistem Pendukung Keputusan Penentuan JumlahProduksi Gula dengan Logika Fuzzy (Studi Kasus di PT.Madu Baru Yogyakarta)

Dosen Pembimbing I : Anton Setiawan H., S.Kom, M.T.

No. Tanggal/ Bulan Keterangan Tanda Tangan

1.

2.

3.

4.

5.

6.

7.

8.

Page 118: Laporan TA Yoga Adiyasa
Page 119: Laporan TA Yoga Adiyasa

LAMPIRAN 2

Page 120: Laporan TA Yoga Adiyasa

Instalasi Program

Berikut langkah-langkah yang harus dilakukan untuk menjalankan aplikasi SPK

Estimasi Jumlah Produksi Gula dengan Logika Fuzzy.

1. Install MySQL database

2. Copy folder database >> madubaru dan paste di folder C:\\mysql >> data

3. Install SPK Fuzzy versi 1.0 dengan menjalankan setup.exe

NB. Semua software aplikasi berada di dalam CD Program Laporan.

Page 121: Laporan TA Yoga Adiyasa

1

Listing Program

unit UUtama;

interface

usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, ImgList, ComCtrls, ToolWin, ExtCtrls, Menus, jpeg, StdCtrls,XPMan;

typeTfrmUtama = class(TForm)MainMenu1: TMainMenu;File1: TMenuItem;Input1: TMenuItem;SPK1: TMenuItem;Lihat1: TMenuItem;DomainBatas1: TMenuItem;Bantuan1: TMenuItem;TentangProgram1: TMenuItem;Keluar1: TMenuItem;Panel1: TPanel;ToolBar1: TToolBar;ToolBtnBatas: TToolButton;ToolBtnSPK: TToolButton;ToolBtnAng: TToolButton;ImageListToolBar: TImageList;ToolBtnKeluar: TToolButton;DataAnggaran1: TMenuItem;Image1: TImage;Label1: TLabel;Timer1: TTimer;Label2: TLabel;XPManifest1: TXPManifest;procedure ToolBtnKeluarClick(Sender: TObject);procedure TentangProgram1Click(Sender: TObject);procedure Bantuan1Click(Sender: TObject);procedure Keluar1Click(Sender: TObject);procedure ToolBtnBatasClick(Sender: TObject);procedure ToolBtnSPKClick(Sender: TObject);procedure ToolBtnAngClick(Sender: TObject);procedure DomainBatas1Click(Sender: TObject);procedure SPK1Click(Sender: TObject);procedure DataAnggaran1Click(Sender: TObject);procedure Timer1Timer(Sender: TObject);

Page 122: Laporan TA Yoga Adiyasa

2

procedure FormShow(Sender: TObject);

private{ Private declarations }

public{ Public declarations }

end;

varfrmUtama: TfrmUtama;

implementationuses UAbout, UHelp, UBatas, UAnggaran, USPK;

{$R *.dfm}

procedure TfrmUtama.ToolBtnKeluarClick(Sender: TObject);beginApplication.Terminate;

end;

procedure TfrmUtama.TentangProgram1Click(Sender: TObject);beginfrmAbout.ShowModal;

end;

procedure TfrmUtama.Bantuan1Click(Sender: TObject);beginApplication.HelpContext(100);

end;

procedure TfrmUtama.Keluar1Click(Sender: TObject);beginApplication.Terminate;

end;

procedure TfrmUtama.ToolBtnBatasClick(Sender: TObject);beginfrmBatas.ShowModal;

end;

procedure TfrmUtama.ToolBtnSPKClick(Sender: TObject);beginfrmSPK.ShowModal;

end;

Page 123: Laporan TA Yoga Adiyasa

3

procedure TfrmUtama.ToolBtnAngClick(Sender: TObject);beginfrmAnggaran.ShowModal;

end;

procedure TfrmUtama.DomainBatas1Click(Sender: TObject);beginfrmBatas.ShowModal;

end;

procedure TfrmUtama.SPK1Click(Sender: TObject);beginfrmSPK.ShowModal;

end;

procedure TfrmUtama.DataAnggaran1Click(Sender: TObject);beginfrmAnggaran.ShowModal;

end;

procedure TfrmUtama.Timer1Timer(Sender: TObject);beginlabel1.Caption := DateToStr(Now);label2.Caption := TimeToStr(Now);

end;

procedure TfrmUtama.FormShow(Sender: TObject);beginAnimateWindow(Self.Handle,999,AW_HOR_POSITIVE or AW_ACTIVATE);

end;

end.

Page 124: Laporan TA Yoga Adiyasa

4

unit USPK;

interface

usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, Buttons, StdCtrls, ExtCtrls,Math;

typeTfrmSPK = class(TForm)GroupBox1: TGroupBox;GroupBox2: TGroupBox;GroupBox3: TGroupBox;GroupBox4: TGroupBox;SpdBtnSPK: TSpeedButton;edt_x1: TEdit;BbDataLahan: TBitBtn;edt_x2: TEdit;edt_x3: TEdit;edt_x4: TEdit;BbDataRend: TBitBtn;BbDataBiaya: TBitBtn;Label1: TLabel;lblTahun: TLabel;BbDataTebu: TBitBtn;BbPrint: TBitBtn;BbSimpan: TBitBtn;BbClear: TBitBtn;BbClose: TBitBtn;Bevel1: TBevel;Bevel2: TBevel;Bevel3: TBevel;StaticText1: TStaticText;lblProd: TLabel;Label3: TLabel;Bevel4: TBevel;Bevel5: TBevel;Bevel6: TBevel;Bevel7: TBevel;BBDetail: TBitBtn;lblMinLahan: TLabel;lblMaxLahan: TLabel;Label5: TLabel;Label2: TLabel;Label4: TLabel;Label6: TLabel;

Page 125: Laporan TA Yoga Adiyasa

5

lblMinTebu: TLabel;Label8: TLabel;lblMaxTebu: TLabel;Label10: TLabel;Label11: TLabel;lblMinRend: TLabel;Label13: TLabel;lblMaxRend: TLabel;Label15: TLabel;Label16: TLabel;lblMinBiaya: TLabel;Label18: TLabel;lblMaxBiaya: TLabel;Label20: TLabel;procedure BbDataLahanClick(Sender: TObject);procedure BbDataTebuClick(Sender: TObject);procedure BbDataRendClick(Sender: TObject);procedure BbDataBiayaClick(Sender: TObject);procedure compute_membership ();procedure Apply_Rule ();procedure Run();procedure compute_output();procedure BbClearClick(Sender: TObject);procedure SpdBtnSPKClick(Sender: TObject);procedure BbPrintClick(Sender: TObject);procedure FormCreate(Sender: TObject);procedure BbSimpanClick(Sender: TObject);function Find_Min(a,b,c,d : real):real;procedure BBDetailClick(Sender: TObject);procedure FormShow(Sender: TObject);procedure edt_x1KeyPress(Sender: TObject; var Key: Char);procedure edt_x2KeyPress(Sender: TObject; var Key: Char);procedure edt_x3KeyPress(Sender: TObject; var Key: Char);procedure edt_x4KeyPress(Sender: TObject; var Key: Char);

private{ Private declarations }

public{ Public declarations }

end;

varfrmSPK: TfrmSPK;a,b,c,d,e : real;output_rule : array[1..19] of real;u_output : array[1..19] of real;

Page 126: Laporan TA Yoga Adiyasa

6

u_x1_segitiga, u_x1_bahu_kiri, u_x1_bahu_kanan:real;u_x2_segitiga, u_x2_bahu_kiri, u_x2_bahu_kanan:real;u_x3_segitiga, u_x3_bahu_kiri, u_x3_bahu_kanan:real;u_x4_segitiga, u_x4_bahu_kiri, u_x4_bahu_kanan:real;x,y:string;

implementation

uses UDataLahan1,UDataTebu1, UDataRend1, UDataBiaya1,UFuzzifikasi,UDefuzzifikasi,UModul, UCetak, UDetail;

{$R *.dfm}

//NB :{ x1=luas lahanx2=jumlah tebux3=rendemenx4=biaya produksix5=jumlah produksia,b,c =ambil dari tabel batas;

}

//---------------- Proses dieksekusi -----------------------------procedure TfrmSPK.SpdBtnSPKClick(Sender: TObject);var x1,x2,x3,x4,a,b,c,d : string;beginx1:=edt_x1.Text;x2:=edt_x2.Text;x3:=edt_x3.Text;x4:=edt_x4.Text;DataModul.TabelBatas.RecNo:=1;a:=DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=4;b:=DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=7;c:=DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=10;d:=DataModul.TabelBatasA.AsString;

if (x1 = '') or (x2 = '') or (x3 = '') or (x4 = '') then //semua kosongMessageDlg('Input harus diisi semuanya',mtWarning, [mbOk], 0)

else if (x1 = a) or (x2 < b) or (x3 < c) or (x4 < d) then //kurang dari batas minMessageDlg('Ada nilai yang kurang dari Batas Minimum', mtWarning,

[mbOk], 0)elseRun(); //perintah jika sesuai inputnya

Page 127: Laporan TA Yoga Adiyasa

7

end;

//-----Proses SPK ------procedure TfrmSPK.Run();begin

compute_membership(); //FuzzifikasiApply_Rule(); //Aplikasi fungsi implikasi --- Defuzzifikasicompute_output (); //Rata-Rata Terbobot

end;

//------ Fuzzifikasi ------procedure TfrmSPK.compute_membership ();var x1,x2,x3,x4: real;

beginwith DataModul dobegin

x1 := StrToFloat(edt_x1.Text);tabelbatas.First;u_x1_bahu_kiri:=bahu_kiri(x1,tabelbatas.Fieldbyname('B').AsFloat

,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Lahan1.Caption:=FloatToStr(RoundTo(u_x1_bahu_kiri,-3));tabelbatas.Next;u_x1_segitiga:=segitiga(x1,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Lahan2.Caption:=FloatToStr(RoundTo(u_x1_segitiga,-3));tabelbatas.Next;u_x1_bahu_kanan:=bahu_kanan(x1,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat);frmDetail.Lahan3.Caption:=FloatToStr(RoundTo(u_x1_bahu_kanan,-3));tabelbatas.Next;

x2 := StrToFloat(edt_x2.Text);u_x2_bahu_kiri:=bahu_kiri(x2,tabelbatas.Fieldbyname('B').AsFloat

,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Tebu1.Caption:=FloatToStr(RoundTo(u_x2_bahu_kiri,-3));tabelbatas.Next;u_x2_segitiga:=segitiga(x2,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Tebu2.Caption:=FloatToStr(RoundTo(u_x2_segitiga,-3));tabelbatas.Next;u_x2_bahu_kanan:=bahu_kanan(x2,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat);

Page 128: Laporan TA Yoga Adiyasa

8

frmDetail.Tebu3.Caption:=FloatToStr(RoundTo(u_x2_bahu_kanan,-3));tabelbatas.Next;

x3 := StrToFloat(edt_x3.Text);u_x3_bahu_kiri:=bahu_kiri(x3,tabelbatas.Fieldbyname('B').AsFloat

,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Rend1.Caption:=FloatToStr(RoundTo(u_x3_bahu_kiri,-3));tabelbatas.Next;u_x3_segitiga:=segitiga(x3,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Rend2.Caption:=FloatToStr(RoundTo(u_x3_segitiga,-3));tabelbatas.Next;u_x3_bahu_kanan:=bahu_kanan(x3,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat);frmDetail.Rend3.Caption:=FloatToStr(RoundTo(u_x3_bahu_kanan,-3));tabelbatas.Next;

x4 := StrToFloat(edt_x4.Text);u_x4_bahu_kiri:=bahu_kiri(x4,tabelbatas.Fieldbyname('B').AsFloat

,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Biaya1.Caption:=FloatToStr(RoundTo(u_x4_bahu_kiri,-3));tabelbatas.Next;u_x4_segitiga:=segitiga(x4,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat,tabelbatas.Fieldbyname('C').AsFloat);frmDetail.Biaya2.Caption:=FloatToStr(RoundTo(u_x4_segitiga,-3));tabelbatas.Next;u_x4_bahu_kanan:=bahu_kanan(x4,tabelbatas.Fieldbyname('A').AsFloat

,tabelbatas.Fieldbyname('B').AsFloat);frmDetail.Biaya3.Caption:=FloatToStr(RoundTo(u_x4_bahu_kanan,-3));

end;

end;

// ------ Fungsi Implikasi Min & Defuzzifikasi ---------procedure TfrmSPK.Apply_Rule ();beginwith DataModul do begin

(* 1. IF luas lahan luas AND jumlah tebu banyak AND rendemen tinggiAND Biaya Produksi TinggiTHEN Jumlah Produksi tinggi *)TabelBatas.RecNo:=15;//Implikasi Minoutput_rule[1]:=Find_Min(u_x1_bahu_kanan, u_x2_bahu_kanan,

u_x3_bahu_kanan, u_x4_bahu_kanan);//Ambil Min

Page 129: Laporan TA Yoga Adiyasa

9

frmDetail.Min1.Caption:=FloatToStr(RoundTo(output_rule[1],-3));//Defuzzifikasi masing-masing Aturan

u_output[1]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[1]); //DefuzzifikasifrmDetail.Z1.Caption:=FloatToStr(Round(u_output[1]));

(* 2. IF luas lahan luas AND jumlah tebu banyak AND rendemen tinggiAND Biaya Produksi normalTHEN Jumlah Produksi tinggi *)

output_rule[2]:=Find_Min(u_x1_bahu_kanan, u_x2_bahu_kanan,u_x3_bahu_kanan, u_x4_segitiga);frmDetail.Min2.Caption:=FloatToStr(RoundTo(output_rule[2],-3));

u_output[2]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[2]);frmDetail.Z2.Caption:=FloatToStr(Round(u_output[2]));

(* 3. IF luas lahan luas AND jumlah tebu banyak AND rendemen sedangAND Biaya Produksi tinggiTHEN Jumlah Produksi tinggi *)

output_rule[3]:=Find_Min(u_x1_bahu_kanan, u_x2_bahu_kanan, u_x3_segitiga,u_x4_bahu_kanan);frmDetail.Min3.Caption:=FloatToStr(RoundTo(output_rule[3],-3));

u_output[3]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[3]);frmDetail.Z3.Caption:=FloatToStr(Round(u_output[3]));

(* 4. IF luas lahan luas AND jumlah tebu sedang AND rendemen sedangAND Biaya Produksi tinggiTHEN Jumlah Produksi tinggi *)

output_rule[4]:=Find_Min(u_x1_bahu_kanan, u_x2_segitiga, u_x3_segitiga,u_x4_bahu_kanan);frmDetail.Min4.Caption:=FloatToStr(RoundTo(output_rule[4],-3));

u_output[4]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[4]);frmDetail.Z4.Caption:=FloatToStr(Round(u_output[4]));

(* 5. IF luas lahan sedang AND jumlah tebu sedang AND rendemen sedangAND Biaya Produksi tinggi

Page 130: Laporan TA Yoga Adiyasa

10

THEN Jumlah Produksi tinggi *)output_rule[5]:=Find_Min(u_x1_segitiga, u_x2_segitiga, u_x3_segitiga,

u_x4_bahu_kanan);frmDetail.Min5.Caption:=FloatToStr(RoundTo(output_rule[5],-3));

u_output[5]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[5]);frmDetail.Z5.Caption:=FloatToStr(Round(u_output[5]));

(* 6. IF luas lahan luas AND jumlah tebu banyak AND rendemen sedangAND Biaya Produksi normalTHEN Jumlah Produksi tinggi *)

output_rule[6]:=Find_Min(u_x1_bahu_kanan, u_x2_bahu_kanan, u_x3_segitiga,u_x4_segitiga);frmDetail.Min6.Caption:=FloatToStr(RoundTo(output_rule[6],-3));

u_output[6]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[6]);frmDetail.Z6.Caption:=FloatToStr(Round(u_output[6]));

(* 7. IF luas lahan luas AND jumlah tebu sedang AND rendemen tinggiAND Biaya Produksi normalTHEN Jumlah Produksi tinggi *)

output_rule[7]:=Find_Min(u_x1_bahu_kanan, u_x2_segitiga, u_x3_bahu_kanan,u_x4_segitiga);frmDetail.Min7.Caption:=FloatToStr(RoundTo(output_rule[7],-3));

u_output[7]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[7]);frmDetail.Z7.Caption:=FloatToStr(Round(u_output[7]));

(* 8. IF luas lahan sedang AND jumlah tebu banyak AND rendemen sedangAND Biaya Produksi tinggiTHEN Jumlah Produksi tinggi *)

output_rule[8]:=Find_Min(u_x1_segitiga, u_x2_bahu_kanan, u_x3_segitiga,u_x4_bahu_kanan);frmDetail.Min8.Caption:=FloatToStr(RoundTo(output_rule[8],-3));

u_output[8]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[8]);frmDetail.Z8.Caption:=FloatToStr(Round(u_output[8]));

Page 131: Laporan TA Yoga Adiyasa

11

(* 9. IF luas lahan luas AND jumlah tebu sedang AND rendemen tinggiAND Biaya Produksi tinggiTHEN Jumlah Produksi tinggi *)

output_rule[9]:=Find_Min(u_x1_bahu_kanan, u_x2_segitiga, u_x3_bahu_kanan,u_x4_bahu_kanan);frmDetail.Min9.Caption:=FloatToStr(RoundTo(output_rule[9],-3));

u_output[9]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[9]);frmDetail.Z9.Caption:=FloatToStr(Round(u_output[9]));

(* 10. IF luas lahan sedang AND jumlah tebu banyak AND rendemen tinggiAND Biaya Produksi tinggiTHEN Jumlah Produksi tinggi *)

output_rule[10]:=Find_Min(u_x1_segitiga, u_x2_bahu_kanan,u_x3_bahu_kanan, u_x4_bahu_kanan);frmDetail.Min10.Caption:=FloatToStr(RoundTo(output_rule[10],-3));

u_output[10]:=defz_bahu_kanan(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[10]);frmDetail.Z10.Caption:=FloatToStr(Round(u_output[10]));

TabelBatas.RecNo:=14;(* 11. IF luas lahan luas AND jumlah tebu sedang AND rendemen sedang

AND Biaya Produksi normalTHEN Jumlah Produksi normal *)

output_rule[11]:=Find_Min(u_x1_bahu_kanan, u_x2_segitiga, u_x3_segitiga,u_x4_segitiga);frmDetail.Min11.Caption:=FloatToStr(RoundTo(output_rule[11],-3));

u_output[11]:=defz_segitiga(TabelBatasB.AsFloat,TabelBatasC.AsFloat,output_rule[11]);frmDetail.Z11.Caption:=FloatToStr(Round(u_output[11]));

(* 12. IF luas lahan sedang AND jumlah tebu sedang AND rendemen sedangAND Biaya Produksi normalTHEN Jumlah Produksi normal *)

output_rule[12]:=Find_Min(u_x1_segitiga, u_x2_segitiga, u_x3_segitiga,u_x4_segitiga);frmDetail.Min12.Caption:=FloatToStr(RoundTo(output_rule[12],-3));

u_output[12]:=defz_segitiga(TabelBatasB.AsFloat,TabelBatasC.AsFloat,output_rule[12]);frmDetail.Z12.Caption:=FloatToStr(Round(u_output[12]));

Page 132: Laporan TA Yoga Adiyasa

12

TabelBatas.RecNo:=13;(* 13. IF luas lahan sempit AND jumlah tebu sedikit AND rendemen rendah

AND Biaya Produksi rendahTHEN Jumlah Produksi rendah *)

output_rule[13]:=Find_Min(u_x1_bahu_kiri, u_x2_bahu_kiri, u_x3_bahu_kiri,u_x4_bahu_kiri);frmDetail.Min13.Caption:=FloatToStr(RoundTo(output_rule[13],-3));

u_output[13]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[13]);frmDetail.Z13.Caption:=FloatToStr(Round(u_output[13]));

(* 14. IF luas lahan sedang AND jumlah tebu sedikit AND rendemen rendahAND Biaya Produksi normalTHEN Jumlah Produksi rendah *)

output_rule[14]:=Find_Min(u_x1_segitiga, u_x2_bahu_kiri, u_x3_bahu_kiri,u_x4_segitiga);frmDetail.Min14.Caption:=FloatToStr(RoundTo(output_rule[14],-3));

u_output[14]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[14]);frmDetail.Z14.Caption:=FloatToStr(Round(u_output[14]));

(* 15. IF luas lahan sedang AND jumlah tebu sedikit AND rendemen sedangAND Biaya Produksi normalTHEN Jumlah Produksi rendah *)

output_rule[15]:=Find_Min(u_x1_segitiga, u_x2_bahu_kiri, u_x3_segitiga,u_x4_segitiga);frmDetail.Min15.Caption:=FloatToStr(RoundTo(output_rule[15],-3));

u_output[15]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[15]);frmDetail.Z15.Caption:=FloatToStr(Round(u_output[15]));

(* 16. IF luas lahan sedang AND jumlah tebu sedikit AND rendemen tinggiAND Biaya Produksi normalTHEN Jumlah Produksi rendah *)

output_rule[16]:=Find_Min(u_x1_segitiga, u_x2_bahu_kiri, u_x3_bahu_kanan,u_x4_segitiga);frmDetail.Min16.Caption:=FloatToStr(RoundTo(output_rule[16],-3));

Page 133: Laporan TA Yoga Adiyasa

13

u_output[16]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[16]);frmDetail.Z16.Caption:=FloatToStr(Round(u_output[16]));

(* 17. IF luas lahan sempit AND jumlah tebu sedikit AND rendemen rendahAND Biaya Produksi normalTHEN Jumlah Produksi rendah *)

output_rule[17]:=Find_Min(u_x1_bahu_kiri, u_x2_bahu_kiri, u_x3_bahu_kiri,u_x4_segitiga);frmDetail.Min17.Caption:=FloatToStr(RoundTo(output_rule[17],-3));

u_output[17]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[17]);frmDetail.Z17.Caption:=FloatToStr(Round(u_output[17]));

(* 18. IF luas lahan sempit AND jumlah tebu sedikit AND rendemen sedangAND Biaya Produksi normalTHEN Jumlah Produksi rendah *)

output_rule[18]:=Find_Min(u_x1_bahu_kiri, u_x2_bahu_kiri, u_x3_segitiga,u_x4_segitiga);frmDetail.Min18.Caption:=FloatToStr(RoundTo(output_rule[18],-3));

u_output[18]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[18]);frmDetail.Z18.Caption:=FloatToStr(Round(u_output[18]));

(* 19. IF luas lahan sempit AND jumlah tebu sedikit AND rendemen tinggiAND Biaya Produksi normalTHEN Jumlah Produksi rendah *)

output_rule[19]:=Find_Min(u_x1_bahu_kiri, u_x2_bahu_kiri,u_x3_bahu_kanan, u_x4_segitiga);frmDetail.Min19.Caption:=FloatToStr(RoundTo(output_rule[19],-3));

u_output[19]:=defz_bahu_kiri(TabelBatasA.AsFloat,TabelBatasB.AsFloat,output_rule[19]);frmDetail.Z19.Caption:=FloatToStr(Round(u_output[19]));

end;end;

//--------- Fungsi Min ---------function TFrmSPK.Find_Min(a,b,c,d:real):real;

Page 134: Laporan TA Yoga Adiyasa

14

var x:real;beginx := a;if x > b thenx := b;

if x > c thenx := c;

if x > d thenx := d;

//menyimpan nilaiFind_Min:= x;end;

//----- Rata-Rata Terbobot -----procedure TfrmSPK.compute_output ();var i: integer;

z,temp1,temp2: real;

beginfor i:=1 to 19 dobegintemp1 := temp1 + output_rule[i] * u_output[i];temp2 := temp2 + output_rule[i];

end;

if (temp1=0) OR (temp2=0) thenbeginMessageDlg('Tidak sesuai aturan', mtWarning, [mbOk], 0);

endelsez:=temp1/temp2;//menampilkan jumlah produksi//lblProd.Caption:= FloatToStr(RoundTo(z,-3));x:= FormatFloat('#,##0.000',z);lblProd.Caption:= x;frmDetail.jumlah.Caption:=x;y:= FloatToStr(z);

end;//-------------------- Akhir Proses SPK Fuzzy --------------------------

//------------- Show data anggaran tiap-tiap variabel ---------------procedure TfrmSPK.BbDataLahanClick(Sender: TObject);beginfrmDataLahan1.ShowModal;

end;

Page 135: Laporan TA Yoga Adiyasa

15

procedure TfrmSPK.BbDataTebuClick(Sender: TObject);beginfrmDataTebu1.ShowModal;

end;

procedure TfrmSPK.BbDataRendClick(Sender: TObject);beginfrmDataRend1.ShowModal;

end;

procedure TfrmSPK.BbDataBiayaClick(Sender: TObject);beginfrmDataBiaya1.ShowModal;

end;

// ----- Hapus nilai -----procedure TfrmSPK.BbClearClick(Sender: TObject);beginedt_x1.Clear;edt_x2.Clear;edt_x3.Clear;edt_x4.Clear;lblProd.Caption:='';edt_x1.SetFocus;

end;

//------------------- Cetak Data ----------------------------procedure TfrmSPK.BbPrintClick(Sender: TObject);begin//frmCetak.ShowModal;DataModul.RVProject1.Execute; //cetak anggaran prod. dari SPK

end;

//------------ Memunculkan tahun --------------------procedure TfrmSPK.FormCreate(Sender: TObject);var sekarang :TDateTime;Year,Month,Day:word;beginSekarang:=Now;DecodeDate(Sekarang,Year,Month,Day);lblTahun.Caption:=intToStr(Year); //ambil tahunnya saja

end;

Page 136: Laporan TA Yoga Adiyasa

16

// --- proses menyimpan ---procedure TfrmSPK.BbSimpanClick(Sender: TObject);var x1,x2,x3,x4 : string;beginx1:=edt_x1.Text;x2:=edt_x2.Text;x3:=edt_x3.Text;x4:=edt_x4.Text;with DataModul dobegin//cek validasiif (x1 = '') or (x2 = '') or (x3 = '') or (x4 = '') thenMessageDlg('Input harus diisi semuanya',mtWarning, [mbOk], 0)

elseif TabelAnggaran.FindKey([lblTahun.Caption]) thenMessageDlg('Data dengan tahun tersebut sudah ada',mtWarning, [mbOk], 0) //

jika tahun sama di-saveelsebegin //Konfirmasi simpanif MessageDlg('Anda mau menyimpan data ini

?',mtConfirmation,[mbYes,MbNo],0)=mrYes thenbeginTabelAnggaran.Append;TabelAnggaran.FieldByName('tahun').AsString:=lblTahun.Caption;TabelAnggaran.FieldByName('luas_lahan').AsString:=edt_x1.Text;TabelAnggaran.FieldByName('jum_tebu').AsString:=edt_x2.Text;TabelAnggaran.FieldByName('rendemen').AsString:=edt_x3.Text;TabelAnggaran.FieldByName('biaya_prod').AsString:=edt_x4.Text;TabelAnggaran.FieldByName('jum_prod').AsString:=y;TabelAnggaran.Post;MessageDlg('Data sudah tersimpan',mtInformation,[mbOK],0);

endelse //Jika membatalkan penyimpananMessageDlg('Silahkan simulasikan SPK Fuzzy lagi',mtInformation, [mbOk],

0)end;end;

end;

//--------------- Detail Rumus Logika Fuzzy -------------------procedure TfrmSPK.BBDetailClick(Sender: TObject);beginfrmDetail.ShowModal;

end;

Page 137: Laporan TA Yoga Adiyasa

17

//--------------- Jika form SPK muncul ----------------------procedure TfrmSPK.FormShow(Sender: TObject);beginedt_x1.SetFocus;edt_x1.Clear;edt_x2.Clear;edt_x3.Clear;edt_x4.Clear;lblProd.Caption:='';//Ambil nilai dari tabel batasDataModul.TabelBatas.RecNo:=1;lblMinLahan.Caption:= DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=3;lblMaxLahan.Caption:= DataModul.TabelBatasB.AsString;DataModul.TabelBatas.RecNo:=4;lblMinTebu.Caption:= DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=6;lblMaxTebu.Caption:= DataModul.TabelBatasB.AsString;DataModul.TabelBatas.RecNo:=7;lblMinRend.Caption:= DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=9;lblMaxRend.Caption:= DataModul.TabelBatasB.AsString;DataModul.TabelBatas.RecNo:=10;lblMinBiaya.Caption:= DataModul.TabelBatasA.AsString;DataModul.TabelBatas.RecNo:=12;lblMaxBiaya.Caption:= DataModul.TabelBatasB.AsString;

end;

//---------- Validasi inputan harus berupa numerik --------------procedure TfrmSPK.edt_x1KeyPress(Sender: TObject; var Key: Char);beginif (key = chr(vk_return)) or (key = chr(vk_delete))

or (key = chr(vk_back)) then exit;

if (key < chr(48)) or (key > chr(57)) thenkey := chr(13);

end;

procedure TfrmSPK.edt_x2KeyPress(Sender: TObject; var Key: Char);beginif (key = chr(vk_return)) or (key = chr(vk_delete))

or (key = chr(vk_back)) then exit;

if (key < chr(48)) or (key > chr(57)) then

Page 138: Laporan TA Yoga Adiyasa

18

key := chr(13);end;

procedure TfrmSPK.edt_x3KeyPress(Sender: TObject; var Key: Char);beginif (key = chr(vk_return)) or (key = chr(vk_delete))

or (key = chr(vk_back)) then exit;

if (key < chr(48)) or (key > chr(57)) thenkey := chr(13);

end;

procedure TfrmSPK.edt_x4KeyPress(Sender: TObject; var Key: Char);beginif (key = chr(vk_return)) or (key = chr(vk_delete))

or (key = chr(vk_back)) then exit;

if (key < chr(48)) or (key > chr(57)) thenkey := chr(13);

end;end.

Page 139: Laporan TA Yoga Adiyasa

19

unit UFuzzifikasi;

interfacefunction bahu_kiri(x,a,b:real):real;function segitiga (x,a,b,c : real):real;function bahu_kanan (x,a,b:real):real;

implementation

function bahu_kiri(x,a,b:real):real;beginif(x<=a) thenbahu_kiri:=1else if (x>a) and (x<b) thenbahu_kiri:= (b-x)/(b-a)elsebahu_kiri:=0;

end;

function segitiga (x,a,b,c : real):real;beginif (x<=a) or (x>=c) thensegitiga:=0else if (x>a) and (x<b) thensegitiga:=(x-a)/(b-a)else if x=b thensegitiga:=1elsesegitiga:=(c-x)/(c-b);

end;

function bahu_kanan (x,a,b:real):real;beginif(x<=a) thenbahu_kanan:=0else if (x>a) and (x<b) thenbahu_kanan:=(x-a)/(b-a)elsebahu_kanan:=1;

end;

end.

Page 140: Laporan TA Yoga Adiyasa

20

unit UDefuzzifikasi;

interfacefunction defz_bahu_kiri(a,b,c:real):real;function defz_segitiga(a,b,c:real):real;function defz_bahu_kanan(a,b,c:real):real;

implementation

function defz_bahu_kiri(a,b,c:real):real;begindefz_bahu_kiri:= b-(c*(b-a));

end;

function defz_segitiga(a,b,c:real):real;begindefz_segitiga:= b-c*(b-a);

end;

function defz_bahu_kanan(a,b,c:real):real;begindefz_bahu_kanan:= c*(b-a)+a;

end;end.