Dunia tempat kita hidup jarang sekali hitam dan putih. Kita tidak hanya berhadapan dengan “panas” atau “dingin”, “cepat” atau “lambat”. Kita hidup dalam spektrum “cukup panas”, “agak dingin”, “lumayan cepat”, dan “sedikit lambat”. Otak manusia sangat pandai mengolah informasi yang bersifat kualitatif dan “kabur” (fuzzy) ini untuk mengambil keputusan yang logis. Namun, bagaimana kita mengajarkan komputer untuk berpikir seperti ini?
Di sinilah Logika Fuzzy berperan. Ia adalah cabang kecerdasan buatan yang menjembatani logika manusia yang fleksibel dengan logika mesin yang kaku (1 atau 0, Ya atau Tidak). Untuk menerapkan logika ini, kita memerlukan sebuah Sistem Inferensi Fuzzy (Fuzzy Inference System/FIS), yang bertindak sebagai “mesin” penalarannya. Ada beberapa metode FIS yang populer, seperti Mamdani, Sugeno, dan salah satu yang paling elegan: Tsukamoto.
Metode Tsukamoto, yang dikembangkan oleh Prof. Y. Tsukamoto, memiliki ciri khas yang membuatnya unik dan efisien secara komputasi. Berbeda dengan Mamdani yang consequent (bagian “THEN” dari aturan) berupa himpunan fuzzy (yang menghasilkan “area”), Tsukamoto menggunakan fungsi monoton (fungsi yang terus naik atau terus turun) sebagai consequent.
Ini mungkin terdengar rumit, tetapi keuntungannya besar: proses defuzzifikasi (mengubah kembali kesimpulan fuzzy menjadi angka pasti) menjadi sangat sederhana, yaitu hanya menggunakan rata-rata tertimbang. Cara terbaik untuk memahaminya adalah dengan membedah tuntas sebuah contoh soal dari awal hingga akhir.
baca juga:Panduan Lengkap Tes PPM Contoh Soal, Pembahasan, dan
Baca juga:Contoh Soal Mencari Diskon Terbaru untuk Persiapan Ujian Matematika dan Evaluasi
Arsitektur Logika Fuzzy Tsukamoto
Sebelum masuk ke soal, mari kita pahami empat langkah utama dalam setiap penalaran fuzzy, dan kekhasan Tsukamoto pada langkah 3 dan 4.
- Fuzzifikasi: Proses mengubah input angka yang pasti (crisp), seperti “Suhu = $28^\circ$C”, menjadi derajat keanggotaan dalam himpunan fuzzy, seperti “Dingin = $0.2$” dan “Hangat = $0.8$”.
- Evaluasi Aturan (Basis Pengetahuan): Menerapkan input fuzzy tadi ke dalam serangkaian aturan “IF-THEN” yang telah kita buat. Misalnya, “IF Suhu is Hangat AND Kelembapan is Lembap THEN…”.
- Implikasi Aturan (Ciri Khas Tsukamoto): Ini adalah intinya. Untuk setiap aturan yang “aktif”, kita menghitung “kekuatan pemicu” (firing strength, $\alpha$). Kemudian, kita menggunakan nilai $\alpha$ ini untuk mencari nilai output ($z$) yang spesifik pada fungsi monoton consequent (THEN) aturan tersebut. Setiap aturan akan menghasilkan satu nilai $z$.
- Defuzzifikasi (Ciri Khas Tsukamoto): Menggabungkan semua nilai $z$ yang didapat dari setiap aturan menjadi satu angka pasti (crisp). Tsukamoto menggunakan metode Weighted Average (Rata-rata Tertimbang), yang sangat efisien.
Studi Kasus: Kontrol Kualitas Produksi Roti
Mari kita gunakan studi kasus yang praktis. Sebuah pabrik roti otomatis ingin menentukan Tingkat Kematangan (skala 0-10) sebuah roti berdasarkan dua input: Suhu Oven dan Waktu Panggang.
Variabel yang Diketahui:
- Input 1: Suhu Oven (°C)
- Himpunan Fuzzy: [Rendah, Ideal]
- Range: [$150^\circ$C – $200^\circ$C]
- Input 2: Waktu Panggang (Menit)
- Himpunan Fuzzy: [Sebentar, Lama]
- Range: [20 Menit – 35 Menit]
- Output: Kematangan (Skala 0-10)
- Himpunan Fuzzy: [Mentah, Matang]
- Range: [0 – 10]
Pertanyaan (Input Crisp):
Berapa nilai Kematangan roti jika Suhu Oven = 165∘C dan Waktu Panggang = 30 Menit?
Langkah 1: Fuzzifikasi (Mengubah Angka Menjadi ‘Rasa’)
Kita perlu mendefinisikan fungsi keanggotaan (membership function) untuk setiap himpunan fuzzy input. Untuk sederhana, kita gunakan fungsi linear (naik dan turun).
1. Fuzzifikasi Suhu (Input: $165^\circ$C)
- Domain: [$150, 200$]
- $\mu_{\text{Rendah}}(x) = (200 – x) / (200 – 150) \text{ (fungsi turun)}$
- $\mu_{\text{Ideal}}(x) = (x – 150) / (200 – 150) \text{ (fungsi naik)}$
Hitung:
- $\mu_{\text{Rendah}}(165) = (200 – 165) / 50 = 35 / 50 = \mathbf{0.7}$
- $\mu_{\text{Ideal}}(165) = (165 – 150) / 50 = 15 / 50 = \mathbf{0.3}$
- Interpretasi: Suhu $165^\circ$C dianggap “Rendah” dengan derajat 0.7 dan “Ideal” dengan derajat 0.3.
2. Fuzzifikasi Waktu (Input: 30 Menit)
- Domain: [$20, 35$]
- $\mu_{\text{Sebentar}}(x) = (35 – x) / (35 – 20) \text{ (fungsi turun)}$
- $\mu_{\text{Lama}}(x) = (x – 20) / (35 – 20) \text{ (fungsi naik)}$
Hitung:
- $\mu_{\text{Sebentar}}(30) = (35 – 30) / 15 = 5 / 15 = \mathbf{0.33}$
- $\mu_{\text{Lama}}(30) = (30 – 20) / 15 = 10 / 15 = \mathbf{0.67}$
- Interpretasi: Waktu 30 menit dianggap “Sebentar” dengan derajat 0.33 dan “Lama” dengan derajat 0.67.
Langkah 2 & 3: Evaluasi Aturan dan Implikasi Tsukamoto
Pertama, kita tentukan Basis Pengetahuan (Rules). Dengan 2 input yang masing-masing punya 2 himpunan, kita akan memiliki $2 \times 2 = 4$ aturan.
- [R1] IF Suhu is Rendah AND Waktu is Sebentar THEN Kematangan is Mentah.
- [R2] IF Suhu is Rendah AND Waktu is Lama THEN Kematangan is Mentah.
- [R3] IF Suhu is Ideal AND Waktu is Sebentar THEN Kematangan is Mentah.
- [R4] IF Suhu is Ideal AND Waktu is Lama THEN Kematangan is Matang.
Kedua, kita definisikan Fungsi Monoton untuk Output (Consequent).
- Domain: Kematangan [0, 10]
- Kita definisikan ‘Mentah’ sebagai fungsi yang turun secara linear dan ‘Matang’ sebagai fungsi yang naik secara linear. Kita cari nilai $z$ (Kematangan) berdasarkan nilai $\alpha$ (firing strength).
- Mentah: $\alpha = (10 – z) / (10 – 0)$ $\rightarrow$ $z_{\text{Mentah}} = 10 – 10\alpha$
- Matang: $\alpha = (z – 0) / (10 – 0)$ $\rightarrow$ $z_{\text{Matang}} = 10\alpha$
Ketiga, kita hitung nilai $\alpha$ (firing strength) dan $z$ (output individu) untuk setiap aturan. Kita gunakan operator MIN untuk “AND”.
Perhitungan Aturan per Aturan:
[R1] IF Suhu Rendah (0.7) AND Waktu Sebentar (0.33) THEN Kematangan Mentah.
- Kekuatan Pemicu: $\alpha_1 = \min(0.7, 0.33) = \mathbf{0.33}$
- Output (Gunakan fungsi $z_{\text{Mentah}}$):
- $z_1 = 10 – 10(\alpha_1) = 10 – 10(0.33) = 10 – 3.3 = \mathbf{6.7}$
[R2] IF Suhu Rendah (0.7) AND Waktu Lama (0.67) THEN Kematangan Mentah.
- Kekuatan Pemicu: $\alpha_2 = \min(0.7, 0.67) = \mathbf{0.67}$
- Output (Gunakan fungsi $z_{\text{Mentah}}$):
- $z_2 = 10 – 10(\alpha_2) = 10 – 10(0.67) = 10 – 6.7 = \mathbf{3.3}$
[R3] IF Suhu Ideal (0.3) AND Waktu Sebentar (0.33) THEN Kematangan Mentah.
- Kekuatan Pemicu: $\alpha_3 = \min(0.3, 0.33) = \mathbf{0.3}$
- Output (Gunakan fungsi $z_{\text{Mentah}}$):
- $z_3 = 10 – 10(\alpha_3) = 10 – 10(0.3) = 10 – 3.0 = \mathbf{7.0}$
[R4] IF Suhu Ideal (0.3) AND Waktu Lama (0.67) THEN Kematangan Matang.
- Kekuatan Pemicu: $\alpha_4 = \min(0.3, 0.67) = \mathbf{0.3}$
- Output (Gunakan fungsi $z_{\text{Matang}}$):
- $z_4 = 10(\alpha_4) = 10(0.3) = \mathbf{3.0}$
Ringkasan Hasil Implikasi:
- Aturan 1: $\alpha_1 = 0.33 \rightarrow z_1 = 6.7$
- Aturan 2: $\alpha_2 = 0.67 \rightarrow z_2 = 3.3$
- Aturan 3: $\alpha_3 = 0.3 \rightarrow z_3 = 7.0$
- Aturan 4: $\alpha_4 = 0.3 \rightarrow z_4 = 3.0$
Langkah 4: Defuzzifikasi (Menarik Kesimpulan Pasti)
Inilah bagian termudah dari metode Tsukamoto. Kita tidak perlu menghitung integral atau centroid yang rumit seperti pada Mamdani. Kita hanya perlu mengambil rata-rata tertimbang dari semua nilai $z$ yang kita dapatkan.
Rumus Defuzzifikasi (Weighted Average):
$$z_{\text{akhir}} = \frac{\sum (\alpha_i \times z_i)}{\sum \alpha_i}$$
$$z_{\text{akhir}} = \frac{(\alpha_1 \times z_1) + (\alpha_2 \times z_2) + (\alpha_3 \times z_3) + (\alpha_4 \times z_4)}{\alpha_1 + \alpha_2 + \alpha_3 + \alpha_4}$$
Mari kita hitung:
- Hitung Pembilang (Numerator): $\sum (\alpha_i \times z_i)$
- $(\alpha_1 \times z_1) = 0.33 \times 6.7 = 2.211$
- $(\alpha_2 \times z_2) = 0.67 \times 3.3 = 2.211$
- $(\alpha_3 \times z_3) = 0.3 \times 7.0 = 2.1$
- $(\alpha_4 \times z_4) = 0.3 \times 3.0 = 0.9$
- Total Pembilang = $2.211 + 2.211 + 2.1 + 0.9 = \mathbf{7.422}$
- Hitung Penyebut (Denominator): $\sum \alpha_i$
- $\alpha_1 + \alpha_2 + \alpha_3 + \alpha_4 = 0.33 + 0.67 + 0.3 + 0.3$
- Total Penyebut = $\mathbf{1.6}$
- Hitung Hasil Akhir:
- $z_{\text{akhir}} = 7.422 / 1.6 = \mathbf{4.63875}$
baca juga:FEB Teknokrat Hadirkan Vice President Pegadaian: Bedah Peluang Investasi Emas
Interpretasi Hasil dan Kesimpulan
Jawaban: Berdasarkan perhitungan logika fuzzy Tsukamoto, untuk Suhu Oven $165^\circ$C dan Waktu Panggang 30 Menit, Kematangan roti diprediksi memiliki nilai $4.64$ (pada skala 0-10).
Mengapa Hasilnya Masuk Akal?
Mari kita lihat kembali input dan aturannya.
- Inputnya adalah Suhu Rendah (dominan, 0.7) dan Waktu Lama (dominan, 0.67).
- Kombinasi “Rendah” dan “Lama” memicu [R2] paling kuat ($\alpha_2 = 0.67$).
- [R2] menyarankan Kematangan “Mentah” ($z_2 = 3.3$).
- Kombinasi lain (Rendah & Sebentar, Ideal & Sebentar, Ideal & Lama) juga aktif, tetapi dengan kekuatan yang lebih kecil. Mereka memberikan “tarikan” ke nilai-nilai lain (6.7, 7.0, dan 3.0).
- Hasil akhir $4.64$ adalah “kompromi” yang logis dari semua aturan yang aktif, tetapi sangat dipengaruhi oleh aturan terkuat [R2] yang menariknya ke nilai “Mentah” ($z_2 = 3.3$). Ini logis: suhu yang agak rendah, meskipun waktunya lama, masih menghasilkan roti yang cenderung kurang matang (nilai $4.64$ dari 10).
penulis:Elsandria Aurora


Post Comment