Disain
Mekanik:
Cara Kerja Robot:
- Zona deteksi robot dibagi menjadi 4 bagian: sisi depan, sisi
kanan, sisi belakang, dan sisi kiri.
- Tiap zona dibagi lagi menjadi 3 segmen pemantauan sesuai dengan
jumlah sensor.
- Robot akan mencari cahaya sampai robot mencapai titik yang
memiliki tingkat kecerahan yang lebih dari atau sama dengan batas
kecerahan yang telah ditetapkan di program sebelumnya.
- Robot akan berhenti pula jika tidak mendapatkan perbedaan tingkat
kecerahan cahaya di 4 zona deteksi di mana di tiap zona tingkat kecerahan
berada di bawah batas gelap.
- Jika dari 3 segmen dalam satu zona deteksi memiliki kecerahan
yang sama, maka robot akan bergerak ke arah depan, dengan skala prioritas;
depan-kanan-kiri.
Flowchart:
7.1.
Fuzzy Kohonen Network
Logika
fuzzy dan jaringan syaraf tiruan
adalah dua metode kecerdasan buatan yang sama sama digunakan untuk
merepresentasikan kecerdasan manusia tapi dengan menggunakan cara yang berbeda.
Kedua metode tersebut memiliki kelebihan dan kekurangannya masing masing yang saling
bertolak belakang. Logika fuzzy dapat
menjelaskan proses penalaran berdasarkan basis aturan tetapi tidak memiliki
kemampuan pelatihan sedangkan jaringan syaraf tiruan tidak dapat menjelaskan
proses penalaran tetapi memiliki kemampuan pelatihan. Karena kekurangannya
masing masing, baik logika fuzzy
maupun jaringan syaraf tiruan hanya dapat memberikan solusi untuk satu aspek
permasalahan saja [11].
Untuk
mendapatkan hasil yang lebih baik, logika fuzzy
dan jaringan syaraf tiruan dapat digabungkan sehingga menghasilkan metode baru
yaitu fuzzy-neuro. Fuzzy-neuro memiliki kelebihan yang
dimiliki oleh kedua metode pembentuknya yaitu kemampuan penalaran yang dimiliki
oleh logika fuzzy dan kemampuan
pembelajaran yang dimiliki oleh jaringan syaraf tiruan.
Fuzzy kohonen network adalah salah satu fuzzy-neuro yang merupakan hasil
penggabungan antara logika fuzzy dan
jaringan syaraf kohonen [3]. Fuzzy kohonen network adalah metode
kecerdasan buatan terawasi yang berarti dapat melakukan proses pembelajaran
tanpa pelatihan. Dikatakan terawasi karena bobot yang digunakan adalah bobot
tetap atau tidak mengalami perubahan. Nilai bobot didapatkan dari hasil
percobaan terhadap beberapa data contoh dan ditentukan berdasarkan pengetahuan
pakar dalam dengan menggunakan basis aturan pada logika fuzzy, sehingga proses pelatihan dapat dihilangkan [11].
Tahap awal pada fuzzy kohonen network adalah masukan nilai yang kemudian langsung
dilanjutkan ke proses pembelajaran. Proses pembelajaran yang terjadi pada fuzzy kohonen network terdiri dari 3
tahap yaitu kuantisasi nilai masukan, menghitung jarak euclidean, dan menghitung nilai derajat keanggotaan. Struktur
keseluruhan dari fuzzy kohonen network
dapat dilihat pada Gambar 2.1.
Gambar
2.1.
Struktur fuzzy kohonen network.
7.1.1.
Kuantisasi Nilai Masukan (Bagian
Logika Fuzzy)
Kuantisasi adalah proses merubah
nilai-nilai masukan menjadi nilai-nilai bobot. Nilai-nilai yang dimasukkan ke
sistem diubah menjadi nilai-nilai bobot dengan menggunakan persamaan (1).
Keterangan:
x :
Nilai bobot hasil kuantisasi
y :
Nilai masukan sebelum kuantisasi
i :
Indeks masukan
Nilai-nilai
bobot hasil kuantisasi membentuk sebuah pola yang pada proses selanjutnya akan
dibandingkan jarak kemiripannya dengan pola-pola pada basis aturan yang telah
ditanamkan.
7.1.2.
Menghitung Jarak Euclidean (Bagian
Kohonen)
Jarak
euclidean adalah jarak kemiripan
antara pola masukan dengan pola pada basis aturan yang telah ditanamkan. Nilai
bobot hasil kuantisasi dihitung jarak kemiripannya dengan nilai bobot pada
pola-pola di dalam basis aturan yang telah ditanamkan dengan menggunakan
persamaan 2.
Keterangan:
d : Jarak euclidean
w : Nilai bobot yang ditanamkan
j : Indeks pola
Basis
aturan yang digunakan pada fuzzy kohonen
network hampir sama dengan basis aturan yang digunakan pada logika fuzzy, tapi basis aturan pada fuzzy kohonen network hanya terdiri dari
beberapa kemungkinan masukan, tidak seperti logika fuzzy yang basis aturannya harus memiliki semua kemungkinan
masukan.
7.1.3.
Menghitung Derajat Keanggotaan
(Bagian Logika Fuzzy)
Setelah
didapatkan jarak euclidean untuk
semua pola, kemudian dihitung derajat keanggotaan untuk semua pola. Pola yang
memiliki derajat keanggotaan tertinggi dikenali oleh sistem sebagai pola yang
paling mirip dengan pola dari data yang dimasukkan. Fungsi yang digunakan untuk
menghitung derajat keanggotaan adalah fungsi linier menurun seperti yang
ditunjukkan pada Gambar 2.2 dan persamaan yang digunakan untuk menghitung
derajat keanggotaan adalah persamaan (3).
Gambar
2.2.
Fungsi linier menurun.
Keterangan:
µ : Derajat keanggotaan
dmin : Jarak euclidean terkecil = 0
dmax : Jarak euclidean terbesar
Setelah
didapatkan nilai derajat keanggotaan untuk semua pola, kemudian nilai keluaran
pada pola tertanam yang memiliki nilai derajat keanggotaan tertinggi akan
dikalikan dengan nilai derajat keanggotaan untuk pola tersebut sehingga
didapatkan nilai keluaran terakhir dari sistem.
berdasarkan
penjelasan yang telah dijabarkan, dapat disimpulkan bahwa fuzzy kohonen network memiliki kelebihan pada sisi waktu pemrosesan
yang lebih cepat karena di dalam proses pembelajarannya tidak menggunakan
proses pelatihan dan operasi operasi perhitungan yang digunakan juga cukup
sederhana. Selain itu, penggunaan operasi perhitungan yang sederhana juga
menjadikan fuzzy kohonen network
lebih hemat dalam penggunaan memori [7].
7.2.
Logika Fuzzy Tipe-2 Interval
Logika fuzzy tipe-2 interval adalah pengembangan dari logika fuzzy tipe-1. Sama seperti logika fuzzy tipe-1, logika fuzzy
tipe-2 interval juga terdiri dari
fuzzifikasi, sekumpulan aturan, inferensi dan pengolah keluaran [12]. Namun
pada pengolah keluarannya terdiri atas reduksi tipe dan defuzzifikasi yang akan
menghasilkan nilai tegas. Logika fuzzy
tipe-2 interval juga memiliki aturan
jika-maka, tetapi himpunan keanggotaan antecedent
dan consequence-nya adalah tipe-2
[13]. Secara umum logika fuzzy tipe-2
interval digambarkan seperti Gambar
2.3.
Gambar 2.3. Struktur logika
fuzzy tipe-2 interval.
7.2.1. Fuzzifikasi
Fuzzifikasi adalah proses
menterjemahkan masukan yang berupa nilai tegas menjadi nilai fuzzy. Fungsi yang digunakan pada proses
fuzzifikasi adalah fungsi keanggotaan, yaitu fungsi yang memetakan nilai tegas
ke nilai derajat keanggotaan yang berada pada rentang nilai 0 sampai dengan 1.
Pada logika fuzzy tipe-2 interval,
fungsi keanggotaan yang digunakan memiliki variable linguistik yang terdiri
dari dua bagian yaitu upper dan lower. Contoh fungsi keanggotaan yang
digunakan pada logika fuzzy tipe-2 interval dapat dilihat pada Gambar 2.4.
Gambar 2.4. Contoh fungsi
keanggotaan logika fuzzy tipe-2 interval.
Berdasarkan fungsi
keanggotaan yang ditunjukkan pada Gambar 2.4, didapatkan persamaan sebagai
berikut.
Keterangan:
7.2.2. Basis
Aturan
Sebuah aturan fuzzy yang biasanya dikenal juga sebagai
inferensi fuzzy, aturan fuzzy jika-maka atau syarat aturan fuzzy dapat diasumsikan dalam bentuk :
jika x adalah A maka y adalah B
A
dan B adalah nilai – nilai linguistik
yang didefinisikan oleh himpunan fuzzy
pada semesta wacana x dan y. “x adalah A” disebut dengan “antecedent”
atau “premis” dan “y adalah B” adalah “consequence” atau “kesimpulan”. Sebagai contoh, aturan fuzzy jika – maka secara luas dalam
ekspresi linguistik :
jika halangan kiri
dekat, maka belok kanan
jika suhu panas, maka putaran kipas sangat cepat
jika volume air banyak, maka putar motor cepat
Ekspresi
jika x adalah A maka y adalah B atau biasa disingkat menjadi A à B adalah ekpresi yang menyatakan
hubungan antara dua variabel x dan y.
7.2.3. Inferensi
Inferensi adalah proses
untuk menghitung nilai yang diberikan dari antecedent
ke consequence dan mengumpulkan semua
consequence dari setiap aturan ke
dalam consequence yang baru untuk
mendapatkan keputusan. Pada penggunaannya, inferensi pada fuzzy tipe-2 interval
dapat dengan menggunakan dua metode, yaitu metode komposisi extended sup-star dan komposisi produk.
Komposisi Extended Sup-Star
Komposisi Extended Sup-star adalah proses inferensi dalam
logika fuzzy tipe-2 interval. Langkah pertama yang dilakukannya adalah
mendapatkan himpunan yang diberikan (firing set) kepada consequence dengan
mengolah masukan dan operasi pada antecedent. Komposisi tersebut
dapat didefinikan pada persamaan (8) dan
persamaan (9).
Komposisi Produk
Komposisi produk adalah proses inferensi yang nilai
perhitungannya menggunkanan operasi produk (pengali) dari nilai keanggotaan
atas dan bawah. Komposisi produk dapat didefinisikan sebagai:
7.2.4. Pemrosesan
Keluaran
Pada logika fuzzy tipe-2 interval pemrosesan keluaran terdiri
dari dua langkah, pertama adalah reduksi tipe dan kedua adalah defuzzifikasi.
Hal ini dikarenakan keluaran dari inferensi merupakan himpunan logika fuzzy
tipe-2 interval. Reduksi tipe menggabungkan semua himpunan dalam sebuah komputasi
lalu menjalankannya dalam suatu metode reduksi tipe yang akan merubah himpunan
tersebut kedalam himpunan logika fuzzy tipe-1. Dan terakhir adalah proses
defuzzifikasi untuk menemukan besaran tegas untuk keluaran dari fuzzy proses
[14].
Setelah proses fuzzifikasi dan inferensi fuzzy, maka selanjutnya masuk pada tahap
reduksi tipe dan defuzzifikasi. Secara umum keluaran dari logika fuzzy tipe-2 interval ditunjukkan pada persamaan (12).
Setiap Zl (l=1,…,M) adalah himpunan tipe-2 interval, yang memiliki pusat cl
dan lebar (spread) sl(sl
³0). Setiap Wl juga merupakan himpunan tipe-2 interval yang memiliki pusat hl
dan lebar (spread) Dl (Dl ³0), dengan anggapan hl ³ Dl
sehingga wl ³ 0 untuk l=1,…,M. demikian juga Y adalah himpunan tipe-2 interval,
sehingga yang dihitung adalah titik paling kiri (yl) dan paling
kanan (yr). Nilai yl memiliki ketergantungan terhadap
nilai cl - sl dan salah satu titik batas dari Wi,
sedangkan nilai yr tergantung pada nilai cl + sl
dan salah satu titik batas dari Wi. Persamaan berikut adalah
persamaan yang digunakan selama iterasi dalam menghitung nilai yl
dan yr.
dengan wlÎ[hl-Dl,
hl+Dl]
dan hl ³ Dl
untuk l=1,…,M sedangkan zlÎ[cl-sl, cl+sl].
S memiliki nilai maksimum pada yr.
7.2.6. Defuzzifikasi
Defuzzifikasi
pada logika fuzzy tipe-2 interval lebih mudah dibanding
defuzzifikasi pada logika fuzzy
tipe-1. Proses defuzzifikasi ditunjukkan dalam persamaan (14).
7.3.
Fuzzy Interval Kohonen
Network
Fuzzy kohonen network
memiliki kelebihan yaitu waktu pemrosesan yang lebih cepat dan penggunaan
memori yang lebih hemat. Tapi metode ini masih memiliki keterbatasan, yaitu
pada tahap kuantisasi, fuzzy kohonen
network hanya mengelompokkan masukan berdasarkan nilai-nilai tegas dengan
batasan yang jelas. Ini berarti bahwa pada tahap kuantisasi tersebut fuzzy kohonen network hanya memetakan
suatu besaran tegas menjadi besaran tegas yang baru, menghilangkan sifat
ketidakpastian yang awalnya merupakan kelebihan yang ditawarkan oleh logika fuzzy. Untuk mengatasi keterbatasan
tersebut, proses kuantisasi bisa diganti dengan proses fuzzifikasi logika fuzzy tipe-2 interval sehingga membentuk metode fuzzy interval kohonen network.
Fuzzy interval kohonen
network adalah pengembangan dari fuzzy kohonen network. Pengembangan yang
dilakukan adalah pada proses kuantisasi yang diganti menjadi proses
fuzzifikasi.
TABEL
1
Perbandingan FKN dan FIKN
Tahap
|
Fuzzy Kohonen
Network
|
Fuzzy Interval
kohonen Network
|
1
|
Masukan nilai
|
Masukan nilai
|
2
|
Kuantisasi
|
Fuzzifikasi
|
3
|
Jarak euclidean
|
Jarak euclidean
|
4
|
Derajat Keanggotaan
|
Derajat Keanggotaan
|
5
|
Pemrosesan Keluaran
|
Pemrosesan Keluaran
|
7.3.1.
Fuzzifikasi
Nilai
masukan yang berupa nilai tegas, diterjemahkan menjadi nilai fuzzy yang berupa nilai-nilai derajat
keanggotaan dengan menggunakan fungsi keanggotaan logika fuzzy tipe-2 interval
seperti yang ditunjukkan oleh Gambar 2.4 dan menggunakan persamaan (4) sampai
persamaan (7).
7.3.2.
Menghitung
Jarak Euclidean
Nilai-nilai
derajat keanggotaan yang telah didapatkan, dihitung selisih atau jarak
kemiripannya dengan nilai-nilai derajat keanggotaan pada basis aturan yang
telah ditanamkan. Persamaan yang umum digunakan untuk menghitung jarak euclidean adalah persamaan (2). Tapi
karena pada tugas akhir ini perhitungan jarak euclidean untuk setiap elemen dilakukan satu persatu, maka yang
digunakan adalah persamaan jarak euclidean
untuk satu dimensi. Banyaknya nilai jarak euclidean
untuk setiap masukan tergantung dari banyaknya variable linguistik pada fungsi
keanggotaan yang digunakan. Jika fungsi keanggotaan yang digunakan mempunyai 2
variabel linguistik, maka ada 4 nilai jarak euclidean
yang didapatkan mengunakan persamaan (15) sampai persamaan (18).
Keterangan:
7.3.3.
Menghitung
Derajat Keanggotaan
Jarak
euclidean yang telah didapatkan
kemudian digunakan untuk mencari nilai derajat keanggotaan yang merupakan
tingkat kemiripan antara masukan dengan pola yang ditanamkan menggunakan fungsi
linier menurun seperti yang ditunjukkan pada Gambar 2.2 dan persamaan (19) sampai
persamaan (22).
Setelah
didapatkan nilai-nilai derajat keanggotaan untuk semua pola, langkah berikutnya
adalah menyederhanakannya menjadi nilai derajat keanggotaan rata-rata dengan
menggunakan persamaan (19).
7.3.4.
Pemrosesan
Keluaran
Tahap
terakhir adalah mengubah nilai derajat keanggotaan yang telah didapat menjadi
nilai persentase kecepatan motor kiri dan motor kanan. Nilai derajat
keanggotaan tertinggi yang didapat dikalikan dengan nilai persentase kecepatan
motor kiri dan motor kanan pada indeks di mana nilai derajat keanggotaan
tertinggi tersebut didapat.
Keterangan:
output : Keluaran terakhir dari sistem
out_ref : Keluaran refrensi setiap pola