Penerapan Logika Fuzzy Implementasi Konsep Kecerdasan Buatan Dalam Rancang Bangun Game Brick Breaker

Flowchart tersebut menggambarkan alur dari jalannya permainan. Ketika akan memulai permainan maka masing-masing pemain dan lawan opponent diberi level kekuatan yang sama. Bola akan datang dari bagian lawan menuju ke arah pemain. Apabila mengenai brick bata maka brick akan hilang dan bola akan memantul namun apabila tidak mengenai brick maka bola akan bergerak ke arah pemain. Apabila pemain dapat memantulkan bola maka bola akan memantul lagi namun apabila pemain tidak berhasil memantulkan bola maka kekuatan dan kelincahan pemain akan berkurang dan lawan mendapat nilai. Begitu pula sebaliknya jika terjadi pada pihak lawan. Apabila bola bergerak ke arah lawan dan berhasil dipantulkan oleh lawan maka bola akan kembali menuju pemain dan apabila tidak berhasil dipantulkan maka kekuatan dan kelincahan lawan akan berkurang dan pemain mendapatkan skor. Permainan ini akan berakhir apabila salah satu dari pemain atau lawan telah kehabisan kekuatan atau kelincahannya dalam menangkap bola.

3.2. Penerapan Logika Fuzzy

a. Variabel Fuzzy Variabel Fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Dalam aplikasi ini variabel yang digunakan adalah HP Kekuatan dan Agility kelincahan. b. Himpunan Fuzzy Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy. - Variabel Kekuatan HP, terbagi menjadi 3 himpunan, yaitu: lemah , normal, dan kuat. - Variabel Agility, terbagi menjadi 3 himpunan, yaitu: lambat, sedang, dan cepat. Universitas Sumatera Utara 1 Lemah Normal Kuat µ[x] 0 10 50 85 100 Gambar 3.3 : Himpunan Fuzzy pada variabel Kekuatan 1 Lambat Sedang Cepat µ[x] 0 10 50 85 100 Gambar 3.4 : Himpunan Fuzzy Pada Variabel Agility c. Semesta Pembicaraan Semesta pembicaraan keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan himpunan bilangan real yang senantiasa naik secara monoton dari kiri ke kanan. - Semesta pembicaraan untuk variabel kekuatan : [0 , 100] - Semesta pembicaraan untuk variabel agility : [0 , 100] d. Domain Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy. Untuk Variabel kekuatan: Lemah = [10 50] Normal = [10 85] Kuat = [50 85] Universitas Sumatera Utara Untuk Variabel Agility: Lambat = [10 50] Sedang = [10 85] Cepat = [50 85]

3.2.1. Menghitung Fungsi Keanggotaan

Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan tiap-tiap titik input data ke dalam nilai keanggotaannya yang memiliki interval 0 sampai 1. Salah satu cara yang digunakan adalah pendekatan fungsi. 1. Representasi linier Ada 2 keadaan himpunan linier. Pertama, kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan nol bergerak ke kanan menuju ke nilai domain yang memiliki derajat keanggotaan lebih tinggi. Fungsi Keanggotaan: µ[x] Fungsi Keanggotaan untuk himpunan Cepat pada variabel Agility µcepat[65] = 65-5085-50 = 0.4 1 Cepat 0.4 0 50 65 85 Gambar 3.5 : Himpunan Fuzzy: Cepat Agility Universitas Sumatera Utara Yang kedua adalah kebalikan yang pertama.dimulai dengan yang memiliki nilai domain tertinggi pada sisi kiri bergerak menurun ke nilai domain yang lebih rendah. Fungsi Keanggotaan: µ[x] Fungsi Keanggotaan untuk himpunan Lambat pada variabel Agility µ lambat[35] = 50-3550-10 = 0.3 Lambat 1 0.3 10 35 50 Gambar 3.6 : Himpunan Fuzzy: Lambat Agility 2. Representasi Kurva Segitiga Kurva segitiga pada dasarnya adalah gabungan antara 2 garis linier. Fungsi Keanggotaan: µ[x] Fungsi Keanggotaan untuk himpunan Sedang pada variabel Agility µsedang[25] = 25-1050-10 =0.3 Universitas Sumatera Utara Sedang 1 0.75 10 25 50 85 Gambar 3.7 : Himpunan Fuzzy: Sedang Agility Begitu juga pada variabel Kekuatan, maka harus dicari juga derajat keanggotaannya. Fungsi Keanggotaan untuk himpunan Kuat pada Variabel Kekuatan. µkuat[60]=60-5085-50 = 0.2 Kuat 1 0.2 50 60 85 Gambar 3.8 : Himpunan Fuzzy: Kuat Kekuatan Fungsi Keanggotaan untuk himpunan Lemah Pada variabel Kekuatan µ lemah[45] = 50-4550-10 = 0.1 Universitas Sumatera Utara Lemah 1 0.1 10 45 50 Gambar 3.9 : Himpunan Fuzzy: Lemah Kekuatan Fungsi Keanggotaan untuk Himpunan Sedang pada variabel Kekuatan µnormal [40] = 40-1050-10 = 0.7 Normal 1 0.7 10 40 50 85 Gambar 3.10 : Himpunan Fuzzy: Sedang Kekuatan Maka derajat Keanggotaan yang didapat adalah: Untuk Variabel Kekuatan: µkuat[60] = 0.2 µ lemah[45] = 0.1 µnormal[40] = 0.7 Untuk Variabel Agility: µcepat[65] = 0.4 µ lambat[35] = 0.3 µsedang[25] = 0.3 Universitas Sumatera Utara

3.2.2. Operasi Himpunan Fuzzy

Ada beberapa operasi yang didefinisikan untuk mengkombinasikan dan memodifikasi himpunan fuzzy. Nilai keanggotaan sebagai hasil operasi dari dua himpunan sering dikenal dengan α-predikat. Pada operasi ini nilai yang akan dicari adalah nilai maksimum antara nilai keanggotan dengan menggunakan operator OR. Dari hasil perhitungan derajat keanggotaan, maka diketahui nilai maksimum pada tiap variabel fuzzynya adalah derajat keanggotaan normal dan cepat. Hitung nilai α-predikat untuk normal dan cepat µnormal ∩ µcepat = max µnormal[40] ∩ µcepat[65] = max 0.7;0.4 = 0.7 Selanjutnya akan dibuat variabel baru sebagai hasil dari pengoperasian dua buah himpunan yang menjelaskan kondisi akhir atau kesimpulan akhir. Untuk bagannya dapat dilihat sebagai berikut: Cepat Aman Kuat Sedang Hati-Hati Normal Lambat Bahaya Lemah Dari hasil nilai α-predikat untuk derajat keanggotaan normal dan cepat, nilai Maximum yang diperoleh adalah µ normal. Dengan begitu kondisi atau kesimpulan yang didapatkan adalah HATI-HATI.

3.3. Storyboard