![STECHOQ TRAINING CENTER](https://si.stechoq.com/pluginfile.php/1/theme_edumy/headerlogo_mobile/1691382424/circ1.png)
Mengatasi
Ketidakpastian: Logika fuzzy memungkinkan pemodelan dan pengambilan keputusan
dalam situasi ketidakpastian dan ambiguitas. Variabel fuzzy dan himpunan fuzzy
memungkinkan penggambaran tingkat keanggotaan yang lebih fleksibel daripada
logika klasik.
2. Fleksibilitas dalam Representasi Linguistik: Logika fuzzy memungkinkan representasi variabel dan hubungan antara variabel dalam bentuk linguistik. Ini memungkinkan pemrosesan data yang lebih intuitif dan manusiawi.
3. Aplikabilitas yang Luas: Logika fuzzy dapat diterapkan dalam berbagai bidang, termasuk sistem kendali cerdas, pengenalan pola, pengambilan keputusan, optimisasi, dan pemodelan prediksi. Kelebihan ini menjadikannya alat yang berguna dalam memecahkan masalah yang kompleks.
Metode Mamdani adalah salah satu metode umum dalam penerapan logika fuzzy. Algoritma ini menggunakan aturan fuzzy (IF-THEN) untuk menggabungkan kriteria dan memberikan bobot relatif. Metode ini cocok untuk masalah pengambilan keputusan yang melibatkan banyak variabel masukan dan keluaran yang berhubungan dengan himpunan fuzzy.Berikut adalah langkah-langkah dalam menggunakan metode Mamdani:
• Fuzzifikasi: Mengubah variabel input crisp menjadi variabel fuzzy dengan menggunakan fungsi keanggotaan yang tepat. Misalnya, jika variabel input adalah "kecepatan" dengan himpunan fuzzy "lambat", "sedang", dan "cepat", maka nilai kecepatan crisp akan diubah menjadi nilai keanggotaan dalam himpunan fuzzy tersebut.
• Rule Evaluation: Menerapkan aturan fuzzy (IF-THEN) untuk menggabungkan kriteria dan memberikan bobot relatif. Setiap aturan memiliki kondisi IF yang berhubungan dengan variabel input dan konklusi THEN yang memberikan hasil dalam variabel output. Misalnya, "IF kecepatan adalah lambat DAN jarak adalah dekat, THEN aksi adalah berhenti".
• Agregasi: Menggabungkan hasil dari setiap aturan menjadi satu himpunan fuzzy yang menggambarkan tingkat kecocokan dengan setiap variabel output.
• Defuzzifikasi: Mengubah himpunan fuzzy hasil agregasi menjadi nilai crisp yang dapat dipahami. Ini melibatkan proses menghitung titik pusat atau menggunakan metode tertentu, seperti metode centroid atau metode weighted average.
2. Metode Sugeno
sebagai sistem fuzzy berbasis model, menggunakan fungsi lineer untuk menggabungkan kriteria dan memberikan bobot relatif. Algoritma İni sering digunakan dalam sistem kendali cerdas dan pengambilan keputusan yang melibatkan hubungan linier antara variabel maşukan dan keluaran. Berikut adalah langkah-langkah dalam menggunakan metode Sugeno:
• Fuzzifikasi: Seperti pada metode Mamdani, variabel input crisp diubah menjadi variabel fuzzy dengan menggunakan fungsi keanggotaan yang tepat.
• Rule Evaluation: Aturan fuzzy (IF-THEN) diterapkan seperti pada metode Mamdani. Namun, konklusi THEN dalam metode Sugeno bukan himpunan fuzzy, melainkan fungsi linear dari variabel input. Misalnya, "İF suhu adalah tinggi DAN kelembaban adalah rendah, THEN aksi adalah 0.7 * suhu + 0.3 * kelembaban".
• Agregasi: Hasil darİ setiap aturan dievaluasi menggunakan fungsİ linear, dan hasil-hasil İni dijumlahkan atau digabungkan untuk menghasilkan nilai keluaran yang akhir.
• Defuzzifıkasi: Seperti pada metode Mamdani, himpunan fuzzy hasil agregasi diubah menjadi nilai crisp menggunakan metode defuzzifıkasi yang sesuai.
Penerapan algoritma logika fuzzy dengan metode yang sesuai bergantung pada karakteristik dan kebutuhan deri kasus yang dihadapi. Metode Mamdani lebih cocok untuk masalah yang kompleks dengan banyak variabel maşukan dan keluaran yang berhubungan dengan himpunan fuzzy. Di sisi lain, metode Sugeno lebih cocok untuk masalah yang melibatkan hubungan linier antara variabel input dan output.
Contoh Kasus: Sistem Kendali Air Conditioner
Kita akan menggunakan contoh kasus sederhana tentang sistem kendali air conditioner berdasarkan suhu dan kelembaban ruangan. Tujuan kita adalah mengatur tingkat kekuatan air conditioner berdasarkan kondisi şuhu dan kelembaban yang diberikan.
Variabel Input:
I . şuhu: Dingin,
Normal, Panas
2. Kelembaban: Rendah, Normal, Tİnggİ
Variabel Output:
1. Kekuatan Air Conditioner: Rendah, Sedang, Tinggi
Dengan menggunakan metode mamdani dan aturan fuzzy
didapatkan aturan berikut
1 . Jika suhu adalah Dingin atau Kelembaban adalah Rendah, maka kekuatan Air Conditioner adalah Rendah.
2. Jika şuhu adalah Normal, maka kekuatan Air Conditioner adalah Sedang.
3. Jika şuhu adalah Panas atau Kelembaban adalah Tinggi, maka kekuatan Air Conditioner adalah Tinggi.
Fungsi keanggotaan yang digunakan •
• Şuhu: Dingin (0, 10, 20), Normal (15, 25, 35), Panas (30, 40, 40)
• Kelembaban: Rendah (0, 20, 40), Normal (30, 50, 70), Tinggi (60, 80, 100)
• Kekuatan Air Conditioner: Rendah (0, 30, 60), Sedang (40, 70, 100), Tinggi (70, 100, 100)
Contoh Perhitungan: Misalkan şuhu z 25 dan kelembaban 70. Kita akan menggunakan metode Mamdani untuk menghitung tingkat kekuatan air conditioner.
Fuzzifikasi:
• şuhu: Normal 0.5
• Kelembaban: Tinggi 0.3
2. Rule Evaluation.
• İF şuhu adalah Normal, THEN kekuatan Air Conditioner adalah Sedang (0,5)
• İF şuhu adalah Panas atau Kelembaban adalah Tinggi, THEN kekuatan Air Conditioner adalah Tinggi (0,3)
3. Agregasi:
• Kombinasi nilai keanggotaan yang didapat: (Sedang 0.5), (Tinggi 0.3)
4. Defuzzifikasi:
• Menggunakan metode centroid, kita akan menghitung nilai crisp kekuatan Air Conditioner.
• Area Sedang * (70 - 40) * (0.7) 10 5
• Area Tinggi - 0.3 * (100 -70) * (0.7) - 6 3
• Nilai crisp kekuatan Air Conditioner = Total Area / Total Tinggi = 16.8 / 0.7 = 24
Berikut ini adalah contoh implementasi program Python menggunakan library scikit-fuzzy untuk memodelkan dan menghitung tingkat kekuatan air conditioner berdasarkan kasus di atas.
Dalam program di
atas, kita mendefinisikan variabel input (suhu dan kelembaban) dan variabel
output (kekuatan). Kemudian, kita menentukan fungsi keanggotaan untuk setiap
variabel. Selanjutnya, kita mendefinisikan aturan fuzzy menggunakan Objek ctrl.
Rule. Setelah itu, kita membuat sistem kendali fuzzy menggunakan ctrl.
controlSystem , dan ctrl. controlSystemSimu1ation untuk menghitung output
berdasarkan input yang diberikan. Akhirnya, kita mengambil output menggunakan output[ ' kekuatan ] .
Program di atas akan memberikan output tingkat kekuatan air conditioner yang dapat digunakan untuk mengatur suhu dan kelembaban ruangan secara otomatis.
Kita akan menggunakan contoh kasus pengambilan keputusan investasi berdasarkan faktor keuntungan dan risiko. Tujuan kita adalah menghitung tingkat keputusan investasi berdasarkan nilai keuntungan dan risiko yang diberikan.
Variabel Input:
1. Keuntungan: Rendah, Sedang, Tinggi
2. Risiko: Rendah, Sedang, Tinggi
Variabel Output:
1. Tingkat Keputusan: Rendah, Sedang, Tinggi
Kita akan menggunakan metode Sugeno untuk memodelkan sistem pengambilan keputusan investasi ini. Aturan fuzzy yang dapat diterapkan adalah sebagai berikut :
1 . IF keuntungan adalah Rendah dan risiko adalah Rendah, THEN tingkat keputusan adalah 0.5 * keuntungan + 0.5 * risiko.
2. IF keuntungan adalah Tinggi atau risiko adalah Tinggi, THEN tingkat keputusan adalah keuntungan - risiko.
3. IF keuntungan adalah Sedang atau risiko adalah Sedang, THEN tingkat keputusan adalah 0.8 * keuntungan + 0.2 * risiko.
Contoh Perhitungan: Misalkan keuntungan = 0.8 dan risiko = 0.6. Kita akan menggunakan metode Sugeno untuk menghitung tingkat keputusan investasi.
1. Fuzzifikasi:
• Keuntungan: Sedang = 0 8
• Risiko: Sedang = 0.6
2. Rule Evaluation:
• IF keuntungan adalah Rendah dan risiko adalah Rendah, THEN tingkat keputusan adalah 0.5 * keuntungan + 0.5 * risiko = 0.5 * 0.8 + 0.5 *
0.6 = 0.7.
• IF keuntungan adalah Tinggi atau risiko adalah Tinggi, THEN tingkat keputusan adalah keuntungan - risiko = 0.8 - 0.6 = 0.2.
• IF keuntungan adalah Sedang atau risiko adalah Sedang, THEN tingkat keputusan adalah 0.8 * keuntungan + 0.2 * risiko 0.8 * 0.8 + 0.2 *
0.6 = 0.74.
3. Agregasi:
• Menggabungkan hasil dari aturan fuzzy: (0.7, 0.2, 0.74).
4. Defuzzifikasi:
• Menggunakan metode weighted average, kita akan menghitung nilai crisp tingkat keputusan investasi.
• Nilai crisp tingkat keputusan = (0.7 * 0.5 + 0.2* 1 + 0.74*0.8) / (0.7 + 0.2 + 0.74) = 0.62.
Berikut ini adalah contoh implementasi program Python menggunakan library scikit-fuzzy untuk memodelkan dan menghitung tingkat keputusan investasi berdasarkan kasus di atas.
Pada program tersebut, kita mendefinisikan variabel input (keuntungan dan risiko) dan variabel output (tingkat_keputusan). Kemudian, kita menentukan fungsi keanggotaan untuk setiap variabel. Selanjutnya, kita mendefinisikan aturan fuzzy menggunakan Objek ctrl. Rule . Setelah itu, kita membuat sistem kendali fuzzy menggunakan ctrl. ControlSystem , dan ctrl. ControlSystemSimu1ation untuk menghitung output berdasarkan input yang diberikan. Akhirnya, kita mengambil output menggunakan kendali_investasi. output[ 'tingkat_keputusan'] .
Program di atas akan memberikan output tingkat keputusan investasi yang dapat digunakan untuk mengambil keputusan investasi berdasarkan nilai keuntungan dan risiko Yang diberikan.
Yuhuuu.. kita telah selesai nih belajar logika fuzzy!! Nah selanjutnya jangan lupa kerjain Quiz dan Studi Kasusnyaa !! See youuu!!
Seorang petani ingin mengautomatisasi sistem irigasi di kebunnya berdasarkan tingkat kelembapan tanah dan curah hujan. Jika tingkat kelembapan tanah rendah dan curah hujan tinggi, maka sistem irigasi harus menyala. Jika tingkat kelembapan tanah sedang dan curah hujan sedang, maka sistem irigasi harus tetap aktif. Jika tingkat kelembapan tanah tinggi dan curah hujan rendah, maka sistem irigasi harus dimatikan. Tentukan output berupa nilai aktivasi sistem irigasi menggunakan metode Mamdani atau Sugeno.
1. Variabel Input:
• Kelembapan Tanah: Rendah (O - 50), Sedang (10 - 60), Tinggi (40 - 100)
• Curah Hujan: Rendah (O - 50), Sedang (10 - 60), Tinggi (40 - 100)
2. Variabel Output:
• Aktivasi Sistem Irigasi: Mati (0- 1), Aktif (O - 1), Hidup (0- 1)
3. Fungsi Keanggotaan:
• Kelembapan
Tanah Rendah: [0, 0, 30]
• Kelembapan Tanah Sedang: [1 0, 30, 50]
• Kelembapan Tanah Tinggi: [30, 60, 601
• Curah Hujan Rendah: [O, O, 301
• Curah Hujan Sedang: [1 0, 30, 50]
• Curah Hujan Tinggi: [30, 60, 60]
• Aktivasi Sistem Irigasi Mati: [O, O, 0.5]
• Aktivasi Sistem
Irigasi Aktif: [O, 0.5, I l
• Aktivasi Sistem Irigasi Hidup: [0.5, 1, 1]
4. Aturan:
• Jika Kelembapan Tanah Rendah dan Curah Hujan Tinggi, maka Aktivasi Sistem Irigasi Mati.
• Jika Kelembapan Tanah Sedang dan Curah Hujan Sedang, maka Aktivasi Sistem Irigasi Aktif.
• Jika Kelembapan Tanah Tinggi dan Curah Hujan Rendah, maka Aktivasi Sistem Irigasi Hidup.
5. Implementasi Program Python menggunakan metode Mamdani: