• Tidak ada hasil yang ditemukan

Aplikasi Dengan Metode Fuzzy. doc

N/A
N/A
Protected

Academic year: 2018

Membagikan "Aplikasi Dengan Metode Fuzzy. doc"

Copied!
5
0
0

Teks penuh

(1)

Aplikasi Dengan Metode Fuzzy Tsukamoto

Posted: April 13, 2012 in Source Code, Visual Basic 6 Tags: Fuzzy, Fuzzy Tsukamoto, Metode

25

Tugas, tugas dan tugas :( Kira-kira sampai kapan ya tugas itu berakhir untuk mahasiswa :D. Kali

ini saya coba share sebagian source code hasil dari tugas kuliah yang sudah terselesaikan (Tapi

sebenarnya masih harus dipresentasikan tanggal 7 Mei sih) :D. Sesuai dengan judul posting ini

tugas yang diberikan adalah tugas membuat aplikasi dengan menggunakan metode Fuzzy

Tsukamoto Berdasarkan suatu Kasus. Kasus itu yang saya jadikan acuan, lihat disini untuk

mengetahui serperti apa kasusnya (Program : 1). Aplikasi yang dibuat menggunakan Visual

Basic.

Berikut langkah-langkahnya

Pasang 8 TextBox dan 16 ComboBox, Berikut Setting untuk propertiesnya

[TextBox]

{Text1}

Nama : Variabel

Index : 0

{Text2}

Nama : Variabel

Index : 1

Atur nama Text3 sampai Text6 menjadi “Variabel” dan atur indexnya menjadi berurutan mulai

dari 2-5

[ComboBox]

{Combo1}

Nama : Pembayaran

Index : 0

Lakukan hal sama dengan TextBox, Untuk 3 ComboBox berikutnya. Hanya Saja

Nama =

“Pembayaran”

dan Index mulai dari 1-3

{Combo5}

Nama : Operator

Index : 0

(2)

Index : 0

Lakukan Hal yang sama dengan ComboBox5 – ComboBox8 hanya saja

nama = “Pelayanan”

{Combo13}

Nama : Tips

Index : 0

Lakukan Hal yang sama dengan ComboBox9 – ComboBox12 hanya saja

nama = “Tips”

Tambahkan Label dan ComboBox

Ketikkan kode berikut. Kode berikut merupakan fungsi nantinya yang akan digunakan sebagai

aturan fuzzy (rule).

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

'SETTING VARIABEL KEANGGOTAAN DAN OPERATOR PrivateSubAddRule()

Dima AsLong, b AsLong, c AsLong, d AsLong Fora = Pembayaran.LBound ToPembayaran.UBound Pembayaran(a).AddItem "SEDIKIT"

Pembayaran(a).AddItem "BANYAK" Next

Forb = Operator.LBound ToOperator.UBound Operator(b).AddItem "AND"

Operator(b).AddItem "OR" Next

Forc = Pelayanan.LBound ToPelayanan.UBound Pelayanan(c).AddItem "CEPAT"

Pelayanan(c).AddItem "LAMA" Next

Ford = Tips.LBound ToTips.UBound Tips(d).AddItem "SEDIKIT" Tips(d).AddItem "BANYAK" Next

EndSub

Langkah selanjutnya ketikkan kode berikut. Kode ini merupakan fungsi untuk menghitung

derajat keanggotaan dari masing-masing variabel

1

2

3

4

5

6

7

8

'MENGHITUNG DERAJAT KEANGGOTAAN DARI MASING-MASING VARIABEL PrivateFunctionsetDerajatKeanggotaan() AsString

Dima AsLong, b AsLong, c AsSingle, d AsSingle, MBayar AsString, MPelayanan AsString

DimSedikit AsLong, Banyak AsLong DimCepat AsLong, Lama AsLong a = Val(Nilai(0).Text)

b = Val(Nilai(1).Text)

(3)

10

Cepat = Val(Variabel(2).Text) Lama = Val(Variabel(3).Text)

setDerajatKeanggotaan = MBayar & "#"& MPelayanan EndFunction

(4)

3

String, NilaiZ AsString

Pisah = Split(setDerajatKeanggotaan, "#") MBayar = Split(Pisah(0), "|")

MPelayanan = Split(Pisah(1), "|")

Fora = Pembayaran.LBound ToPembayaran.UBound SelectCaseOperator(a).ListIndex

NilaiAlpha = Split(AlphaPredikat, "|") Forb = Tips.LBound ToTips.UBound SelectCaseTips(b).ListIndex Case0

d = Val(Variabel(5).Text) - (NilaiAlpha(b) * (Val(Variabel(5).Text) - Val(Variabel(4).Text)))

Case1

d = (NilaiAlpha(b) * (Val(Variabel(5).Text) - Val(Variabel(4).Text))) + Val(Variabel(4).Text)

EndSelect

(5)

48

49

50

51

Berikut ini merupakan fungsi untuk menghitung nilai Z akhir

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

PrivateFunctionHasilAkhir() AsInteger DimNilaiZ

DimAlfaPredikat DimPotong

DimAlpha AsSingle DimSigma AsSingle Dima AsLong, b AsLong

Potong = Split(setProsesRule, "#") AlfaPredikat = Split(Potong(0), "|") NilaiZ = Split(Potong(1), "|")

Alfa = 0 Sigma = 0

Fora = LBound(NilaiZ) ToUBound(NilaiZ)

Sigma = Sigma + (NilaiZ(a) * AlfaPredikat(a)) Nexta

Forb = LBound(AlfaPredikat) ToUBound(AlfaPredikat) Alpha = Alpha + AlfaPredikat(b)

Nextb

HasilAkhir = Sigma / Alpha EndFunction

kode-kode tadi masih belum terpanggil. kode untuk memanggilnya adalah sebagai berikut

1

2

3

4

5

6

7

PrivateSubForm_Load() call AddRule

EndSub

PrivateSubCommand1_Click()

Label1.Caption = Format(HasilAkhir, "#,###") EndSub

Referensi

Dokumen terkait

Tabel 4.7.1.2 Perhatian Responden Tentang Bagaimana Proses Mendapatkan Informasi Hotel Tempat Teman Terlapor (Edo) yaitu Tommy Dahulu bekerja 96 Tabel 4.7.1.3

Secara substantif antara akad dan kontrak dalam perjanjian syariah di lembaga keuangan syariah memiliki kesamaan, hanya beberapa bagian tertentu saja yang terdapat perbedaan

Hadits ketiga dalam kitab Qurrat al-Uyun diriwayatkan oleh Ibnu Mas’ud, sedang dalam kitab sumbernya, nama Ibnu Mas’ud tidak tercantum sebagai sanad maupun mukharrij hadits,

Masalah hukum (inefektivitas hukum) muncul karena adanya kesenjangan antara hukum dalam tataran teoritis ( law in books ) dengan hukum dalam tataran praktek ( law

Dari analisis dengan jumlah sampel 302 hasil pembacaan radiologis (mamografi, USG payudara dan pemeriksaan kombinasi mamografi dan USG payudara) yang dibaca oleh divisi payudara

Berdasarkan hasil penelitian yang telah dilakukan di dapatkan hasil berupa aplikasi Kmois yang dapat berjalan di sistem android dan petunjuk peggunaan sebagai

Semakin besar tekanan dan temperatur pemanasan awal minyak kelapa maka spray angle yang terbentuk di ujung nosel semakin besar, kecuali pada tekanan 6 bar dan temperatur pemanasan

Akhir kata penulis ucapkan terima kasih atas bantuan dan dorongan dari berbagai pihak yang telah membantu dalam penyusunan laporan ini khususnya para