• Tidak ada hasil yang ditemukan

Perancangan Algoritma Jaringan Saraf Tiruan Backpropagation untuk Navigasi Robot Beroda

N/A
N/A
Protected

Academic year: 2021

Membagikan "Perancangan Algoritma Jaringan Saraf Tiruan Backpropagation untuk Navigasi Robot Beroda"

Copied!
8
0
0

Teks penuh

(1)

Fakultas Ilmu Komputer

Universitas Brawijaya

1572

Perancangan Algoritma Jaringan Saraf Tiruan Backpropagation untuk

Navigasi Robot Beroda

Mohammad Riski Aprilianto1, Gembong Edhi Setyawan2, Eko Setiawan3

Program Studi Teknik Komputer, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1riski12@student.ub.ac.id, 2gembong@ub.ac.id, 2ekosetiawan@ub.ac.id

Abstrak

Robot beroda merupakan suatu robot yang bergerak menggunakan roda dalam suatu kondisi tertentu sehingga dibutuhkan sistem navigasi yang baik. Baik atau tidaknya sistem navigasi robot dipengaruhi oleh sistem perangkat lunak dan algoritma yang berjalan. Seiring berjalannya waktu, algortima jaringan saraf tiruan banyak diminati dan dikembangkan karena memiliki fleksibilitas yang baik terhadap kondisi lingkungan nonlinier. Oleh karena itu dalam penelitian ini akan dirancang sebuah algoritma jaringan saraf tiruan backpropagation untuk navigasi robot beroda. Jaringan saraf tiruan memiliki kelebihan antara lain tingkat akurasinya lebih baik dibandingkan algoritma pengenalan pola seperti fuzzy dan KNN. Selain itu jaringan saraf tiruan juga memiliki fleksibilitas yang baik dalam memecahkan masalah dengan kelas multidimensi. Jaringan saraf tiruan backpropagation merupakan sebuah jaringan saraf tiruan supervisi yang di dalamnya terdapat sebuah pelatihan jaringan. Dalam pelatihan jaringan terdapat beberapa faktor yang mempengaruhi, antara lain lapisan tersembunyi, momentum, dan learning rate. Selain pelatihan yang baik, pengaturan kecepatan robot juga perlu diperhatikan agar robot memiliki stabilitas yang baik dalam lingkungannya. Berdasarkan waktu dan nilai kesalahan pada pelatihan jaringan, jumlah node lapisan tersembunyi sebanyak 5 memiliki hasil terbaik terhadap masukan dan keluaran sebanyak 4 node. Sedangkan pada pengaturan nilai PWM motor 150 diperoleh stabilitas gerakan yang cukup baik untuk robot beroda yang digunakan.

Kata kunci: robot beroda, navigasi, backpropagation, lapisan tersembunyi, PWM Abstract

Wheeled robot is a robot that moves using wheels under certain conditions so that a good navigation system is needed. Whether or not the robot navigation system is influenced by the software system and the algorithm that is running. Over time, artificial neural network algorithm is much in demand and developed because it has good flexibility to the nonlinear environment. Therefore, in this study a backpropagation artificial neural network algorithm is designed for navigation of wheeled robots. Artificial neural networks have advantages, among others, the level of accuracy is better than pattern recognition algorithms such as fuzzy and KNN. Besides artificial neural networks also have good flexibility in solving problems with multidimensional classes. Backpropagation artificial neural network is a supervised neural network in which there is a network training. In network training there are several factors that influence, including hidden layers, momentum, and learning rate. In addition to good training, robot speed regulation also needs to be considered so that the robot has good stability in its environment. Based on the time and error values in the network training, the number of hidden layer nodes of 5 has the best results on input and output of 4 nodes. Whereas in the PWM motor 150 value setting obtained a fairly good movement stability for the wheeled robot used.

Keywords: mobile robot, navigation, backpropagation, hidden layer, PWM

1. PENDAHULUAN

Perkembangan teknologi mengalami pertumbuhan yang cepat beberapa tahun terakhir dan meluas ke berbagai sektor pendidikan, manufaktur dan masih banyak lagi

(Supriadi, 2018). Salahsatu bidang teknologi yang berkembang pesat adalah bidang robotika, khususnya robot beroda. Robot beroda merupakan robot dengan roda sebagai alat untuk berpindah posisi. Robot beroda memiliki banyak fungsi, salahsatu penerapannya adalah

(2)

sebagai robot pemadam api dan robot pencari atau SAR.

Robot beroda memerlukan navigasi yang baik khususnya dalam menghindari halangan di medan pada saat menjalankan tugasnya. Seringkali navigasi pada robot dibentuk sedemikian rupa hingga dapat memahami kondisi fisik lingkungannya (Cory & Dale, 2019). Navigasi pada robot beroda telah lama dikembangkan dan telah banyak algoritma digunakan dalam pengimplementasiannya. Tujuan dari penerapan algoritma pada navigasi robot beroda untuk memperoleh hasil yang baik dalam pengolahan data maupun tingkat kesalahan yang dihasilkan.

Penelitian terkait dengan algoritma yang digunakan dalam navigasi robot telah banyak dikembangkan. Algoritma yang sering digunakan dalam navigasi robot adalah algoritma fuzzy (Cakir & Ezzaldin, 2016). Namun teknik fuzzy memiliki kelemahan dalam nilai linguistik yang dinyatakan dalam bahasa alami karena tidak memiliki batas pasti. Pada penelitian tersebut navigasi robot kurang diulas secara mendalam. Selain itu algoritma fuzzy juga kurang fleksibel sehingga dalam perkembangannya teknik ini sudah jarang digunakan.

Beberapa penelitian memilih menggunakan algoritma jaringan saraf tiruan dalam navigasi robot beroda. Jaringan saraf tiruan memiliki hasil fleksibilitas penggunaan yang cukup baik serta dapat beradaptasi layaknya otak manusia. Sensor IR atau infrared digunakan untuk mendeteksi keberadaan halangan di sekitar robot dan mengubah sinar IR yang diterima ke dalam bentuk sinyal data (Shan, Chia, Liou, & Su, 2013). Pada penerapannya robot digunakan dalam kondisi lingkungan yang ditentukan berupa labirin. Namun sensor IR memiliki keterbatasan jarak sensor dan rentan terhadap interferensi pantulan dari objek yang di deteksi.

Pada penelitian lainnya juga mencoba menerapkan jaringan saraf tiruan

backpropagation sebagai navigasi robot beroda

menggunakan sensor ultrasonik. Jumlah sensor yang digunakan sebanyak 3 buah yang terpasang pada bagian depan robot untuk mendeteksi halangan (Santiago, Anzuelo, Feijoo, & Leon, 2014). Jaringan saraf tiruan memiliki hasil yang cukup baik dalam mengolah data dan informasi non linier. Hasil pembacaan dari 3 sensor juga cukup baik namun pada bagian belakang robot tidak dapat

di deteksi keberadaan halangan. Oleh karena itu dibutuhkan adanya sensor pada bagian belakang robot untuk menghindari tabrakan.

Pada kedua penelitian sebelumnya memiliki persamaan dalam peletakan roda. 3 buah roda digunakan dalam robot, 2 buah pada bagian belakang dan terhubung dengan Motor DC sedangkan 1 buah roda bebas pada bagian depan. Peletakan tersebut membantu robot untuk bermanuver lebih baik dalam lingkungannya. Desain tersebut juga cukup baik dan banyak digunakan dalam penerapan robot beroda (Goris, 2005).

Berdasarkan analisis yang telah dilakukan, algoritma jaringan saraf tiruan memiliki fleksibilitas yang cukup baik disamping perkembangannya yang pesat di era robot otomasi. Pada penelitian ini akan digunakan algoritma jaringan saraf tiruan backpropagation sebagai navigasi robot beroda. Selain itu robot beroda juga akan menggunakan 4 buah sensor yang masing-masing diletakkan di bagian kanan, kiri, depan, dan belakang robot. Robot beroda juga menggunakan 3 buah roda. Hasil dari penelitian ini diharapkan algoritma jaringan saraf tiruan backpropagation dapat menghasilkan sebuah klasifikasi pergerakan menggunakan sonsor dan motor yang telah ditentukan.

2. PERANCANGAN DAN IMPLEMENTASI 2.1 Gambaran Umum Sistem

Gambar 1. Diagram Blok Sistem

Berdasarkan diagram blok sistem pada Gambar 1 dapat kita lihat bahwa arduino sebagai komponen utama pengendali robot. Blok diagram sistem memiliki 3 kategori utama yatu input, proses, dan outout. Mula-mula data mentah pada pc berupa data jarak dari sensor akan di mapping menggunakan excel untuk kemudian dijadikan data latih algoritma jaringan saraf tiruan. Setelah data latih diperoleh maka arduino akan melakukan

(3)

pelatihan jaringan terhadap data untuk menemukan nilai bobot yang ideal pada tiap node yang tehubung. Setelah pelatihan jaringan selesai dilakukan maka bobot tersebut akan digunakan untuk menjalankan klasifikasi data dari jarak sensor secara aktual menggunakan jaringan saraf tiruan backpropagation.

2.2 Perancangan Robot Beroda

Robot beroda marupakan wadah utama untuk pengimplementasian jaringan saraf tiruan pada penelitian ini. Robot beroda yang digunakan memiliki 5 komponen utama antara lain sensor ultasonik HC-SR04, Arduino Mega 2560, motor driver L298N, baterai Li-Po, serta motor dc. Perancangan hubungan antar komponen tersebut dapat kita lihat pada Gambar 2 berikut.

Gambar 2. Perancangan Sistem

Robot akan menggunakan 4 buah sensor ultrasonik dan 2 buah motor dc 620 rpm yang masing-masing terhubung secara paralel terhadap arduino. Secara umum, sensor akan mendetekasi halangan dengan jarak maksimum 4 meter. Kemudian data jarak akan di olah pada arduino menggunakan jaringan saraf tiruan dan menghasilkan klasifikasi berupa kondisi pergerakan motor. Rangkaian sistem pada Gambar 2 selanjutnya akan di implementasikan pada sebuah wadah berupa robot beroda. Pada tahap ini robot beroda dirancang menggunakan bahasn utama akrilik 4mm seperti gambar dibawah.

Gambar 3. Desain Robot Beroda

Robot beroda berbentuk persegi 8 yang pada bagian sisi depan, kanan, kiri, dan belakangnya terdapat sensor ultrasonik untuk memudahkannya dalam mengenali lingkungan. Pada bagian belakang terdapat 2 roda yang masing-masing terhubung dengan motor dc untuk kemudian dikendalikan kecepatannya. Pada bagian depan terdapat 1 buah roda bebas untuk memudahkan dalam melakukan manuver serta menopang bagian depan robot.

2.3 Perancangan Pengolahan Data Latih

Pada jaringan saraf tiruan supervisi terdapat adanya pasangan input dan target. Algoritma jaringan saraf tiruan

backpropagation merupakan salahsatu metode

pelatihan jaringan supervisi. Sebelum melakukan pelatihan terhadap jaringan saraf tiruan maka akan dibentuk sebuah data latih berupa nilai jarak dari 4 sensor yang telah di

map atau di petakan. Pemetaan terhadap data

mentah ini memerlukan bantuan aplikasi excel yang berjalan pada sistem operasi windows. Nilai yang diperoleh dari sensor memiliki rentang 2-400cm yang akan dipetakan ke dalam rentang 0-1 mengikuti persamaan berikut.

𝑁 = (𝑥−𝑖nmin)×(out𝑚𝑎𝑥− out𝑚𝑖𝑛 )

(𝑖𝑛𝑚𝑎𝑥− 𝑖𝑛𝑚𝑖𝑛 )+ 𝑜𝑢𝑡𝑚𝑖𝑛 (1) Dimana :

N = Hasil pemetaan nilai X = Nilai masukan

in_min = Batas bawah nilai masukan in_max = Batas atas nilai masukan out_min = Batas bawah nilai yang

diinginkan (0)

out_max = Batas atas nilai yang diinginkan (1)

Setelah nilai jarak sensor dimasukkan ke dalam persamaan di atas maka akan diperoleh nilai N antara 0-1. Kemudian data tersebut akan disesuaikan dengan target yang di inginkan. Setelah diperoleh pasangan input dan target

(4)

maka data latih akan dimasukkan ke dalam algoritma jaringan saraf tiruan dengan bantuan Arduino IDE.

2.4 Perancangan Jaringan Saraf Tiruan

Backpropagation

Jaringan saraf tiruan backpropagation bekerja dengan memperbarui nilai bobot yang menghubungkan atar jaringan dengan memperbarui nilai bobot melalui sebuah iterasi. Terdapat 3 lapisan utama penyusun jaringan saraf tiruan yaitu lapisan masukan, lapisan tersembunyi, dan lapisan keluaran. Struktur ini juga disebut struktur jaringan multilayer.

Gambar 4. Jaringan Multilayer

Pada jaringan multilayer terdapat 3 proses yang berjalan untuk memperbarui nilai bobot antara lain proses propagasi maju, perhitungan nilai kesalahan, kemudian proses propagasi mundur. Dalam proses propagasi mundur dikenal istilah gradien descent untuk memperbarui nilai bobot dan bias, teknik ini banyak digunakan dalam propagasi mundur dengan menerapkan aturan delta (Utami & Ulama, 2015). Proses pelatihan jaringan saraf tiruan melalui beberapa proses sebagai berikut.

Gambar 5. Proses Pelatihan Backpropagation

Pada Gambar 5 disajikan diagram alir dari proses propagasi mundur untuk memperbarui

nilai bobot dan bias. Proses pelatihan tersebut dapat dituliskan sebagai berikut.

Step 1

𝐻𝑖𝑑𝑑𝑒𝑛𝑊𝑒𝑖𝑔ℎ𝑡𝑠11= 2 × (𝑎𝑛𝑔𝑘𝑎 𝑎𝑐𝑎𝑘 −

0.5) × 0.5 (2)

Pada persamaan diatas digunakan untuk mencari nilai awal dari sebuah bobot pada tiap node lapisan. Pada angka acak digunakan angka pecahan yang diperoleh dari mengacak nilai 1-100 kemudian dibagi 1-100. Banyak ditemui saat perancangan awal bobot jaringan saraf tiruan biasanya menggunakan angka yang seragam. Pengacakan nilai awal memiliki kelebihan sehingga dapat menghasilkan solusi yang lebih cepat dan bobot yang lebih variatif.

Step 2

𝑊 = 𝑊1. 𝐼1 + 𝑊1. 𝐼2 + 𝑊1. 𝐼3+ 𝑊1. 𝐼4+ 𝑏1 (3)

Setelah diperleh nilai bobot awal maka tiap nilai dari node masukan I akan dikalikan dengan bobot dari tiap node pada lapisan tersembunyi sehingga diperoleh skema seperti Gambar 4. Setelah diperoleh nilai W dari lapisan tersembunyi maka untuk mencari W dari lapisan keluaran lakukan seperti cara pertama. Namun W lapisan tersembunyi berperan sebagai

I yang dikalikan dengan W node lapisan

keluaran. Kemudian kita akan mendapatkan nilai W dari node tersembunyi dan keluaran.

Step 3

𝑓(𝑥) = 1

1+𝑒−𝑤 (4)

Langkah selanjutnya adalah memasukkan nilai W lapisan tersembunyi ke dalam fungsi sigmoid biner dan menghasilkan nilai W baru yang telah dipetakan. Fungsi sigmoid biner akan menghasilkan keluaran 0-1 sehingga nantinya fungsi ini dapat digunakan untuk klasifikasi yang lebih mudah.

Step 4

Setelah langkah 3 selesai maka kita akan mencari nilai W dari node keluaran. Caranya dengan mengulang dari Step 2 dan Step 3. Nilai dari W node tersembunyi akan menjadi masukan I yang dikalikan dengan W dari node keluaran dan akan diperoleh nilai W node keluaran. Kemudian nilai tersebut akan dimasukkan pada fungsi sigmoid.

Step 5

(5)

Kemudian hitung nilai delta keluaran dengan persamaan 5. Dari sini kita asumsikan berdasarkan data masukan awal yang dimasukkan maka keluarannya adalah kondisi t atau target yang direpresentasikan dengan bentuk biner.

Step 6

𝛿ℎ1= (𝑊𝑜× 𝛿𝑜). ℎ. (1 − ℎ)

Melalui persamaan diatas akan dihitung nilai dari delta node tersembunyi. 𝑊𝑜

merupakan bobot dari tiap node keluaran dan 𝛿𝑜 merupakan nilai dari delta keluaran.

Step 7 𝐸𝑡𝑜𝑡𝑎𝑙 =𝑖(1

2(𝑡𝑖− 𝑜𝑖)

2)

Pada langkah selanjutnya kita akan menghitung nilai kesalahan total yang dihasilkan oleh fungsi propagasi maju. Nilai kesalahan ini yang nantinya menjadi variabel yang diamati pada setiap iterasinya.

Step 8

𝑏ℎ =× 𝛿ℎ+× 𝑏ℎ𝑠𝑒𝑏𝑒𝑙𝑢𝑚𝑛𝑦𝑎

Selanjutnya adalah proses propagasi mundur. Pada pross ini nilai dari bias lapisan tersembunyi akan diperbarui mengikuti persamaan di atas.

𝑊ℎ =  × 𝐼 × 𝛿ℎ+  × 𝑊𝑠𝑒𝑏𝑒𝑙𝑢𝑚𝑛𝑦𝑎

Setelah nilai bias, nilai bobot juga akan diperbarui mengikuti persamaan dia atas.  merupakan learning rate dengan nilai 0.25 dan  merupakan momentum dengan nilai yang direkomendasikan yaitu 0.9. Dari persamaan diatas akan diperoleh nilai bobor baru sejumlah node lapisan tersembunyi.

Step 9

Ulangi Step 7 dan Step 8 namun untuk mencari nilai bias dan bobot pada lapisan keluaran. Hasilnya akan diperoleh nilai bias dan bobot masing-masing sejumlah node lapisan keluaran.

Step 9

Gunakan nilai bobot dan bias pada lapisan tersembunyi dan lapisan keluaran untuk menjalankan jaringan saraf tiruan. Lakukan

kembali iterasi dari Step 2 hingga diperoleh hasil nilai kesalahan lebih kecil dari nilai kesalahan yang ditentukan. Sebisa mungkin nilai kesalahan mendekati nol, namun semakin nilainya mendekati nol maka iterasinya juga akan semakin banyak. Namun tidak ada ketentuan pasti berapa nilai batas kesalahan harus diterapkan. Untuk klasifikasi maka digunakan fungsi propagasi maju dengan nilai bobot hasil pelatihan, yaitu pada Step 2 hingga

Step 4.

3. PENGUJIAN DAN HASIL

Pada tahap pengujian dan hasil akan diuji beberapa komponen pengujian terkait robot beroda dan jaringan saraf tiruan.

3.1. Pengujian Sensor dan Motor

Pengujian ini bertujuan untuk mengetahui fungsonalitas dari sensor dan motor yang digunakan pada robot beroda. Pengujian terhadap sensor diperlukan sebab nilai masukan dari jaringan saraf tiruan merupakan nilai aktual dari hasil pembacaan sensor. Sehingga dapat diketahui kinerja sensor sebagai modul untuk memperoleh data dan akurasinya. Selain itu pengujian motor juga diperlukan untuk mengontrol pergerakan robot pada lingkungannya. Pengujian motor adalah dengan mengubah parameter PWM dan diamati nilai kecepatan motor sehingga dapat digunakan dalam pengimplementasian di lapangan agar tidak menabrak. Hasil dari pengujian sensor dapat kita amati pada Gambar 6.

Gambar 6. Grafik Kesalahan Pembacaan Sensor

Gambar di atas menunjukkan bahwa pada ke 4 sensor yang digunakan terdapat nilai kesalahan yang cukup kecil dengan rata-rata kesalahan ke empat sensor sebesar 1,55 cm. Pengujian dilakukan dengan membandingkan hasil pengukuran aktual terhadap hasil pengukuran sensor, kemudian dari 10

(6)

percobaan akan diambil rata-rata kesalahannya. Dari hasil pengujian diperoleh hasil bahwa sensor dapat bekerja baik sesuai kebutuhan sistem meskipun memiliki nilai selisih pembacaan tertinggi 9 cm pada sensor kanan pada jarak deteksi 4 m.

Pada pengujian kecepatan motor berdasarkan nilai PWM dapat kita lihat pada Tabel 1.

PWM Rata-rata Kecepatan Motor (rpm) Motor Kanan Motor Kiri

100 344,4 372,6

150 450,6 468

200 502,8 501

255 554,4 557,4

Tabel 1. Pengujian PWM Motor

Pada pengujian PWM motor dilakukan terhadap motor kanan dan kiri. Hal tersebut juga untuk melihat keseimbangan fungsionalitas kecepatan rotasi motor menggunakan sensor encoder FC 03. Hasilnya pada beberapa kasus motor kiri memiliki kecepatan sedikit lebih tinggi. Nilai PWM ini yang nantinya akan di ujikan terhadap pergerakan robot dan dipilih PWM yang sesuai untuk mengendalikan robot agar tidak menabrak.

3.2. Pengujian Jaringan Saraf Tiruan

Backpropagation

Terdapat bebera komponen pengujian pada jaringan saraf tiruan antara lain pengujian jumlah lapisan tersembunyi, pengujian akurasi jaringan saraf tiruan, dan pengujian pergerakan robot.

A. Pengujian Pergerakan Robot

Pengujian pergerakan robot bertujuan untuk mengetahui hasil akhir dari program berupa pergerakan robot yang akan dikendalikan kecepatannya dengan nilai PWM. Dari pengujian ini diharapkan dapat menetukan nilai PWM yang sesuai untuk menjalankan robot sehingga memiliki stabilitas pergerakan yang baik. Nilai PWM pada arduino memiliki rentang nilai 8-bit dengan nilai desimal yaitu 0-255. Beberapa nilai PWM yang akan di ujikan adalah 100, 150,200, dan 255. Pengujian ini perlu dilakukan agar robot tidak terlalu cepat saat bermanuver sehingga kehilangan kendali dan menabrak, namun juga dapat beroperasi tidak terlalu lambat sehingga efisien.

Robot akan diletakkan pada suatu titik dimana akan diberi halangan pada 4 sisi yang telah ditentukan masing-masing jaraknya. Skenario pengjian akan dibentuk sedemikian hingga dapat mewakili pergerakan maju, mundur, belok kanan,dan belok kiri. Hasil dari pengujian nilai PWM terhadap pergerakan robot disajikan pada Tabel 6.

Kondisi PWM Gerakan Robot

Maju 100 Diam 150 Tidak Menabrak 200 Tidak Menabrak 255 Tidak Menabrak Mundur 100 Diam 150 Tidak Menabrak 200 Tidak Menabrak 255 Tidak Menabrak Kanan 100 Diam 150 Tidak Menabrak 200 Menabrak 255 Menabrak Kiri 100 Diam 150 Tidak Menabrak 200 Tidak Menabrak 255 Menabrak

Tabel 6. Hasil Pengujian Gerakan Robot Berdasarkan Tabel 6 dapat kita amati bahwa saat digunakan PWM 100 maka robot tidak berjalan atau diam. Hal ini dikarenakan nilai PWM akan dkonversikan ke dalam bentuk daya yang pada motor, dan dengan PWM 100 tidak mencukupi daya torsi untuk menggerakkan tubuh robot. Pada nilai PWM 200 dan 255 terdapat kondisi dimana saat melakukan gerakan belok kanan dan kiri masih menabrak, hal ini dikarenakan kecepatan motor yang terlalu tinggi sehingga saat akan melakukan gerakan belok respon motor dan sensor menjadi kurang baik sehingga terjadi tabrakan pada halangan.

Berdasarkan hasil pengujian, nilai PWM 150 memiliki stabilitas gerakan yang cukup baik sehingga nilai tersebut akan digunakan dalam penerapan jaringan saraf tiruan

(7)

B. Pengujian Jumlah Lapisan Tersembunyi Pengujian jumlah lapisan tersembunyi bertujuan untuk mengetahui berapa jumlah node lapisan tersembunyi yang ideal untuk diterapkan pada penelitian ini. Skenario yang dipilih adalah dengan mengubah jumlahnya dengan jumlah node 4,5,6,7, dan 8 node. Menurut (Heaton, 2017) terdapat 3 cara praktis menentukan jumlah node lapisan tersembunyi antara lain:

1. Jumlahnya di antara ukuran node masukan dan lapisan keluaran.

2. Jumlahnya harus 2/3 dari node masukan ditambah node keluaran.

3. Jumlah node kurang dari dua kali node masukan.

Berdasarkan referensi tersebut maka dipilih jumlah node yang akan di uji. Jumlah node sangat berpengaruh terhadap waktu komputasi dan nilai kesalahan yang dihasilkan. Berikut hasil pengujian dapat dilihat pada Tabel 2. Jumlah Node Waktu Komputasi (ms) Kesalahan Jumlah Iterasi 4 816955 0.02343 1600 5 360622 0.02124 600 6 408427 0.02079 600 7 494531 0.02296 600 8 553763 0.02291 600

Tabel 2. Pengujian Jumlah Node

Pada pengujian jumlah node lapisan

tersembunyi diperoleh hasil terbaik pada node dengan jumlah 5 node. Waktu yang dibutuhkan untuk pelatihan dengan 5 node lapisan tersembunyi adalah 360622 ms dan dengan kesalahan sebesar 0,02124. Oleh karena itu jumlah node lapisan tersembunyi nantinya akan berjumlah 5 node. C. Pengujian Akurasi Jaringan Saraf Tiruan

Pengujian akurasi jaringan saraf tiruan bertujuan untuk mengetahui seberapa besar akurasi yang dimiliki oleh jaringan dalam mengklasifikasikan data. Data hasil klasifikasi jaringan saraf tiruan nantinya akan dibandingkan dengan keluaran yang di inginkan atau keluaran seharusnya. Dengan demikian dapat diamati akurasi jaringan saraf tiruan dalam penerapannya untuk klasifikasi pergerakan robot.

No Kondisi Sensor

Kiri Depan Kanan Belakang

1 20 120 90 100 2 180 20 190 300 3 150 200 25 300 4 200 200 150 25 5 20 25 200 300 6 300 25 27 350 7 200 270 20 25 8 22 60 60 23 9 25 300 26 250 10 250 25 200 22 11 27 30 30 200 12 300 25 20 20 13 25 30 220 27 14 20 200 25 25 15 25 24 26 23 16 375 350 400 300

Tabel 3. Kondisi Sensor

Berdasarkan 16 data acak pada Tabel 3 akan dimasukkan sebagai data masukan dan dilakukan pelatihan untuk kemudian di amati keluarannya pada Tabel 4 dan di cocokkan kesesuaiannya dengan keluaran yang diharapkan.

Hasil

Maju Mundur Kanan Kiri

0.9998 0.00002 0 0 0.00016 0.99889 0.01273 0.00371 0.99964 0.00001 0 0.00099 0.99962 0 0 0 0.00759 0.00539 0.99727 0.0001 0.00334 0.00062 0.00004 0.99861 0.99966 0 0 0.00152 0.25549 0.00001 0.25070 0 0.99999 0 0 0 0.00002 0.00003 0.99212 0.00931 0.00038 0.99647 0.00429 0.00395 0.00158 0.00093 0.0001 0.99867 0.00149 0 1 0 0.99999 0 0 0 0.00034 0.10531 0.03512 0.00689 0.99999 0.00001 0 0

Tabel 4. Hasil Keluaran Jaringan Saraf Tiruan Pada Tabel 4 terdapat keluaran yang dihasilkan oleh masukan pada Tabel 3. Kemudian berdasarkan keluaran tersebut akan di kelompokkan sesuai kedekatannya dengan angka 0 atau 1. Setelah mengetahui hasil dari program, maka akan dibandingkan dengan keluaran yang diinginkan pada Tabel 5.

N o Keluaran Seharus nya Keluaran Program N o Keluaran Seharus nya Keluaran Program

1 Maju Maju 9 Maju Maju

2 Mundur Mundur 10 Kanan Kanan

3 Maju Maju 11 Mundur Mundur

(8)

5 Kanan Kanan 13 Kanan Kanan

6 Kiri Kiri 14 Maju Maju

7 Maju Maju 15 Diam Diam

8 Maju Diam 16 Maju Maju

Tabel 5. Perbandingan dengan Gerak Sebenarnya Pada tabel diatas dapat kita amati dari 16 data terdapat 1 kondisi pada data nomor 8 dimana keadaan yang seharusnya maju namun program mengklasifikasikannya menjadi keadaan diam. Dari 16 data uji dapat kita ukur akurasi klasifikasi menggunakan jaringan saraf tiruan sebesar 93,75%.

4. KESIMPULAN

Robot beroda telah menerapkan algoritma jaringan saraf tiruan backpropagation dalam bernavigasi dan menghindari halangan. Hasilnya, dari fungsionalitas sensor dan aktuator yang digunakan memiliki hasil kesalahan sensor sebesar 1,55 cm, aktuator motor dc dapat bekerja dalam merespon perubahan nilai PWM yang diberikan. Nilai PWM yang sesuai berdasarkan kestabilan gerakan robot adalah 150. Selanjutnya, Jumlah node lapisan tersembunyi berdasarkan nilai kesalahan dan waktu komputasi memiliki hasil terbaik pada jumlah node 5. Algoritma jaringan saraf tiruan memiliki flesibilitas dan akurasi yang baik terhadap klasifikasi struktur data non linier. Akuasi algoritma jaringan saraf tiruan dalam mengklasifikasikan data yang diperoleh dari 16 data uji menghasilkan akurasi sebesar 93,75%.

Komponen pendukung pada robot beroda dapat dikembangkan menggunakan komponen yang lebih baik seperti sensor SRF08 yang memiliki tingkat akurasi yang lebih tinggi. Kemudian robot dapat lebih ditujukan untuk memecahkan kasus tertentu menggunakan

jaringan saraf tiruan, contohnya seperti pencarian titik api.

5. DAFTAR PUSTAKA

Cakir, A., & Ezzaldin, N. F. (2016). Fire-Extinguishing Robot Design by Using Arduino. IOSR Journal of Computer

Engineering, 18(6), 113-119.

Cory, J., & Dale, J. (2019). Technopedia. Retrieved 08 20, 2019, from

https://www.techopedia.com/definition/ 32694/autonomous-robot

Goris, K. (2005). Autonomous Mobile Robot

Mechanical Design. Brussel: Vrije

Universitiet Brussel.

Heaton, J. (2017). The Number of Hidden

Layer. Retrieved from Heaton

Research:

https://www.heatonresearch.com/2017/ 06/01/hidden-layers.html

Santiago, M., Anzuelo, C., Feijoo, V., & Leon, H. d. (2014). Neural Control System in Obstacle Avoidance in Mobile Robots Using Ultrasonic Sensor. 12, 104-110. Shan, S. H., Chia, S. H., Liou, J. W., & Su, K.

L. (2013). Mobile Robots Based Intelligent Fire. JOURNAL OF

COMPUTERS, 8(5), 1298-1302.

Supriadi, C. (2018). Marketing. Retrieved 08 18, 2019, from

https://marketing.co.id/bagaimana-perkembangan-teknologi-di-2019/ Utami , A. T., & Ulama, B. S. (2015).

Penerapan Backpropagation untuk Meningkatkan Efektifiktas Waktu dan Akurasi pada Data Wall-Following Robot Navigation. JURNAL SAINS

Gambar

Gambar 1. Diagram Blok Sistem
Gambar 3. Desain Robot Beroda
Gambar 6. Grafik Kesalahan Pembacaan Sensor  Gambar  di  atas  menunjukkan  bahwa  pada  ke  4  sensor  yang  digunakan  terdapat  nilai  kesalahan  yang  cukup  kecil  dengan  rata-rata  kesalahan  ke  empat  sensor  sebesar  1,55  cm
Tabel 1. Pengujian PWM Motor
+2

Referensi

Dokumen terkait

Nilai rata-rata potensi produksi gas diterjemahkan sebagai parameter bagian bahan organik (BO) yang potensial terfermentasi didalam rumen (b) dan laju produksi

Untuk mengetahui Implementasi Program Bantuan Operasional Sekolah (BOS) Pada Seksi Pembinaan Sekolah Menengah Pertama di Dinas Pendidikan dan Kebudayaan Daerah

(Lihat Bab 18 untuk diskusi lebih lanjut tentang masalah ini. Hukuman adalah prinsip dasar perilaku. Definisinya memiliki tiga komponen dasar: Terjadinya suatu

(1) Rumah negara dan perlengkapannya serta kendaraan dinas jabatan sebagaimana dimaksud dalam Pasal 9 ayat (2) huruf a dan huruf b disediakan bagi Pimpinan DPRD sesuai

Ibu jari dan dua jari yang pertama dari tangan kanan disusun sehingga saling tegak lurus satu sama lain dengan menunjukkan arah garis gaya magnet dari medan, dan jari

berdasarkan kebijaksanaan dan program Rumah Sakit untuk mencapai sasaran yang telah ditentukan. Menyusun pedoman, standar dan kriteria yang dipakai untuk mengukur

Dari penelitian ini dapat disimpulkan bahwa strategi komunikasi yang dilakukan oleh komunitas „Srikandi Merapi‟ dalam upaya mengatasi terjadinya pernikahan usia dini di