Anda di halaman 1dari 6

Perancangan dan Implementasi Algoritma Sistem

Komunikasi dan Algoritma Strategi Bermain Sepak


Bola pada Robot Humanoid Kidsize
Maratush Sholihah, Imre Nagi, Dr. Widyawardhana Adiprawita, S.T., M.T., Dr. Kusprasapta Mutijarsa. S.T., M.T.
Program Studi Teknik Elektro
Sekolah Teknik Elektro Dan Informatika
Institut Teknologi Bandung
Bandung 40135, Jawa Barat, Indonesia
E-mail : ms.sholihah@yahoo.com, imre.here@yahoo.co.id, wadiprawita@yahoo.com, soni@stei.itb.ac.id
Abstrak--Proyek ini merupakan pengembangan algoritma
desain komunikasi dan strategi robot humanoid bermain bola.
Modul komunikasi digunakan untuk menentukan state
permainan dan komunikasi dalam sebuah robot tim. Modul
strategi mendapat informasi berupa kondisi lapangan dari
modul persepsi, posisi robot di lapangan dari modul lokalisasi,
orientasi dari kompas, dan state permainan dari modul
komunikasi untuk menentukan tindakan apa yang harus
dilakukan oleh modul gerakan. Robot yang bertindak sebagai
eksekutor adalah robot yang berada pada posisi yang lebih dekat
dengan bola dan atau memiliki orientasi yang terarah ke gawang
lawan. Sementara robot lainnya akan tetap mengejar bola hingga
jarak kemiringan kepala robot terhadap bola sebesar 30 derajat.
Sistem
komunikasi
dan
strategi
telah
berhasil
diimplementasikan. Robot dapat mencetak gol dengan maksimal
3 kali tendangan dengan kondisi tanpa lawan serta berhasil
mengirim dan menerima data dalam waktu kurang dari 0,5
detik.
Kata kunci--Robot, Humanoid, State, Komunikasi, Strategi

I. PENDAHULUAN
Dunia robotika merupakan salah satu bentuk
pengembangan teknologi yang semakin hari semakin banyak
peminatnya. Berbagai macam jenis robot diciptakan untuk
memenuhi berbagai kebutuhan manusia. Mulai dari jenis robot
yang dapat mempermudah pekerjaan rumah, robot yang
digunakan dalam industri, maupun jenis robot yang digunakan
sebagai hiburan. Robosoccer atau robot sepak bola adalah
salah satu contoh pengembangan robot yang digunakan di
bidang hiburan. Robosoccer merupakan sebuah sistem yang
mengendalikan robot menggunakan kendali cerdas (intelligent
control) dan multi agen (Multi Agent System).
Perkembangan teknologi robotika ditunjang dengan
banyaknya kompetisi yang diselenggarakan. Di Indonesia
kompetisi robot yang cukup bergengsi adalah Kontes Robot
Sepak Bola Indonesia. Kontes ini menggunakan robot
humanoid untuk saling berkompetisi mencetak gol ke gawang
lawan. Sampai saat ini tim perwakilan ITB selalu mengikuti
kompetisi ini namun prestasi yang diraih belum maksimal.

masih terdapat beberapa kelemahan yang menyebabkan robot


tidak dapat memberikan performa yang maksimal dalam
pertandingan. Beberapa kelemahan tersebut antara lain adalah
belum diterapkannya sistem komunikasi dan strategi tim
sehingga robot masih saling bertabrakan dan berebut dalam
mengejar bola.
Atas permasalahan tersebut, maka diperlukan adanya
pengembangan secara khusus untuk merancang algoritma
komunikasi dan strategi robot dalam bermain bola. Diyakini
dengan adanya sistem komunikasi yang baik, maka akan dapat
menghasilkan pergerakan serangan yang lebih optimal
sehingga dapat mencetak gol lebih banyak ke gawang lawan.
Dengan demikian, tim ITB akan dapat membuktikan bahwa
perkembangan robotika di ITB tidak kalah dengan institusiinstitusi lain yang telah sering meraih prestasi tertinggi di
kontes bergengsi tersebut.
II. KOMUNIKASI TIM
Komunikasi
digunakan
untuk
mengetahui
state
pertandingan dan komunikasi antar robot dalam tim. State
pertandingan diperoleh dari server yaitu seorang juri yang
mengatur pertandingan. Selain state pertandingan, juri juga
menentukan apakah robot boleh memasuki lapangan atau
tidak. Komunikasi antar robot diperlukan tim untuk bekerja
sama dalam bermain bola. Informasi yang dikomunikasikan
antara lain robot manakah yang mengetahui posisi bola
(diperoleh dari sistem persepsi), posisi robot yang mendeteksi
bola terhadap bola, dan robot mana yang akan mengambil
bola. Dengan adanya komunikasi dalam tim, maka robot
dalam sebuah tim tidak akan berebut mengejar bola. Berikut
diagram alir komunikasi untuk mempermudah ilustrasi:

Gambar 1 Diagram Alir Komunikasi Data

START

START

Membangun socket komunikasi

Membangun socket komunikasi

Mengirimkan data jarak robot ke server

Menerima data jarak robot dari masing-masing client

Dalam proses pengiriman datanya, komunikasi antar wasit


Menerima data balasan dari server
dan robot pemain bersifat satu arah, sedangkan komunikasi
antar robot pemain bersifat dua arah. Data-data yang dikirim
Menyimpan data jarak robot pada variabelnya masing-ma
dan diterima antar pemain memiliki format paket struktur data
Parsing dan verifikasi data yang diterima dari server
sebagai berikut:

Mengirimkan data jarak setiap robot ke semua client


Simpan data jarak pada variable masing-masing

Gambar 2 Struktur Data Komunikasi

Header: Merupakan penanda data yang akan diproses.


Pembuatan Header bersifat sangat penting agar data yang
tidak diinginkan tidak turut mengganggu keberlangsungan
komunikasi data.
X: Merupakan koordinat x posisi lapangan.

Y: Merupakan koordinat y posisi lapangan.

: Merupakan besar sudut yang akan berfungsi dalam arah


putar Robot.
Num Player: Merupakan nomor pemain yang sedang
digunakan.
Status: Merupakan penjelasan mengenai status robot yang
dimaksud (aktif/tidak).
Strategi: Merupakan jenis strategi yang digunakan.

Jarak Bola: Merupakan besar jarak antara bola dengan


robot.

END

END

Gambar 3 State Chart Sistem Komunikasi

Protokol komunikasi yang digunakan dalam proses


pengembangan robot ini adalah protocol UDP. UDP dipilih
karena memiliki beberapa kelebihan, diantaranya yakni lebih
cepat koneksinya karena tidak harus bernegosiasi dan juga
tidak berurutan pengirimannya, serta dapat melakukan
broadcast (tidak membutuhkan handshaking). Selain itu, UDP
juga tergolong hemat memori karena tidak harus memecah data
terlebih dahulu. Sebelum membuat algoritma komunikasi,
dilakukan pula pengembangan pada behavior robot yang
dinilai masih kurang, terutama pada bagian turningBall
(Mengitari Bola).
III. ALGORITMA STRATEGI
Dalam pembuatan algoritma strategi, dibuat bagian-bagian
program strategi serangan yang bertujuan agar pemrograman
strategi yang kompleks dapat menjadi lebih mudah dipahami.
Bagian-bagian desain yang dirancang dibagi atas urgensi dari
pemecahan kasus-kasus yang akan dihadapi.
Algorima strategi menentukan tindakan yang harus
dilakukan oleh robot sesuai dengan input yang diberikan. Input
yang diberikan berupa lokasi objek-objek yang terdeteksi,
seperti posisi gawang lawan, gawang tim sendiri, posisi bola,
posisi pole-pole pada lapangan, posisi anggota tim, posisi robot
itu sendiri, serta jenis strategi yang akan digunakan. Strategi

robot penyerang dan robot bertahan akan digunakan sebagai


strategi utama dalam perancangannya. Berikut diagram UML
bagaimana strategi penyerangan atau pertahanan akan
dikembangkan:

Gambar 4 Ilustrasi Pembagian Posisi Antara R1 dan R2

IV. IMPLEMENTASI DAN PENGUJIAN


A. Konfigurasi Pengujian
Pengujian sistem komunikasi dan strategi dilakukan
dengan menggunakan remote computer terhadap robot.
Koneksi yang digunakan oleh remote komputer dan robot
adalah koneksi ssh (secure shell). Komponen-komponen yang
digunakan pada pengujian adalah sebagai berikut:
1. Remote Computer
Prosesor
: Intel(R)
Core(TM) i5-3317U CPU @ 1.70GHz
Memori (RAM) : 4.00 GB
Sistem Operasi : Ubuntu 12.04 LTS
2. Prosesor pada robot, SBC
Prosesor
:1.6 GHz Intel
Atom Z530 (32 bit)
Memori (RAM)
: 1 GHz
Sistem Operasi
: Ubuntu 10.04
LTS
3. Wireless Router
TP-Link TL-WR941ND
4. Lain-lain
Bola tenis orange

Lapangan

Gawang kuning

B. Prosedur Pengujian
Prosedur pengujian sistem komunikasi dan strategi adalah:
1. Komputer dan kedua robot dihubungkan dengan
menggunakan router yang sama.
2.

Jalankan program demo dengan memberikan perintah


sudo ./demo pada terminal.

3.

Robot dinyalakan dalam mode soccer dan


ditempatkan pada tengah lapangan untuk bersiap
melakukan kick off.

C. Hasil Pengujian
1) Komunikasi Tim
Komunikasi
digunakan
untuk
mengetahui
state
pertandingan dan komunikasi antar robot dalam tim. State
pertandingan diperoleh dari server yaitu seorang juri yang
mengatur pertandingan. Selain state pertandingan, juri juga
menentukan apakah robot boleh memasuki lapangan atau tidak.
Pada pengujian sistem komunikasi antar robot, dilakukan
pengiriman dan penerimaan data untuk menetapkan:
Robot manakah yang mengetahui posisi bola (diperoleh
dari sistem persepsi)
Posisi robot yang mendeteksi bola terhadap bola
Robot mana yang akan mengambil bola.
Berikut tampilan terminal hasil pengujian komunikasi:

Gambar 5 Tampilan Terminal Saat Pengujian Sistem Komunikasi

Potongan gambar di atas menampilkan struktur data yang


terkirim saat modul komunikasi antara dua robot dalam satu
tim dijalankan. Terlihat bahwa data-data yang dikirim dan
diterima sesuai dengan yang diharapkan, yakni:
Send: (Dago#A#B#C#D#E#F#G)
Header dibuat tulisan Dago, dan komponen data A, B, C,
D, E, F, G dikomunikasikan pula sesuai dengan kebutuhan
struktur data pada Gambar 2.13. Selain itu, data dari robot lain
dalam satu tim juga ditampilkan sebagai informasi yang dapat
menunjukkan berhasil atau tidaknya strategi yang diterapkan.
Tabel 1 Verifikasi Spesifikasi dan Hasil Uji Coba Komunikasi

No
1
2

3
4

Spesifikasi
Selama pertandingan robot harus bergerak secara
otomatis
Robot dapat berkomunikasi melalui jaringan
wireless dengan maksimal total bandwidth tiap
tim 1 Mbit/s
Robot dapat berkomunikasi selama pertandingan
Waktu untuk data yang dikirim dalam
komunikasi antar robot maksimal 0.5 detik

1
2
3
4

tendang kearah
gawang
Berhasil
Berhasil
Berhasil
Berhasil

Gagal

00:16.22

6
7
8

Berhasil
Berhasil
Berhasil

00:14.54
00:14.40
00:15.02

Berhasil

00:20.31

10

Berhasil

00:14.11

(mm:ss)
00:15.40
00:18.02
00:17.31
00:15.09

Tendangan
saat mau

Sempat ke
ditemuka

Dari hasil pengujian, dapat diambil kesimpulan bahwa


behavior robot yang dirancang dapat dinyatakan berhasil
untuk kondisi ini. Hal ini terlihat dari statistik keberhasilan
Darirobot
keseluruhan
percobaan
robot
mencetak
gol yakni(10/10),
9 dari 10
kali percobaan.
berhasil berkomunikasi antar robot dalam
Tercapai
degan
waktu
pengiriman
data
5 dan Gawang
Robot
Tidak
Sejajar
Terhadap
Bola

2) Behavior Robot
Pada pengujian behavior robot, dibagi menjadi sub-sub
bagian implementasi berdasarkan posisi robot terhadap bola
dan gawang:
Robot Sejajar Terhadap Bola dan Gawang
Gambar 7 Ilustrasi Kondisi 2 Robot

Gambar 6 Ilustrasi Kondisi 1 Robot

Pada kondisi ini, Robot berada pada posisi yang sejajar


terhadap bola dan gawang lawan. Kondisi ini bertujuan untuk
menguji fungsi mencari gawang. Pengujian dinyatakan
berhasil apabila robot berhasil mencetak gol dengan
menendang bola ke arah gawang. Waktu yang dicatat adalah
waktu dari robot mulai siap menendang hingga robot kembali
ke posisi standby untuk state berikutnya. Berikut adalah tabel
hasil pengujian.
Tabel 2 Hasil Pengujian I Behavior Robot

No.

Berhasil

Waktu

Pada kondisi ini, Robot berada pada posisi yang tidak


sejajar terhadap bola dan gawang lawan. Kondisi ini bertujuan
untuk menguji fungsi mencari gawang dan turningball. Fungsi
turningball adalah fungsi yang bertujuan untuk memposisikan
robot agar sejajar dengan bola dan gawang lawan. Pengujian
dinyatakan berhasil apabila robot berhasil mencetak gol
dengan menendang bola ke arah gawang. Waktu yang dicatat
adalah waktu dari robot mulai siap menendang hingga robot
kembali ke posisi standby untuk state berikutnya. Berikut
adalah tabel hasil pengujian.
Tabel 3 Hasil Pengujian II Behavior Robot

No.
1
2
3
4

Berhasil
tendang kearah
gawang
Berhasil
Gagal
Berhasil
Gagal

Waktu
(mm:ss)
00:52.06
00:48.22
00:56.30
00:36.18

Bola

Tendangan
saat mau

Berhasil

00:45.20

6
7
8
9
10

Berhasil
Berhasil
Berhasil
Gagal
Berhasil

00:21.46
00:33.40
00:43.27
00:51.35
01:00.17

Lokalisasi, Modul Komunikasi, Modul Gerakan, dan lainnya.


Pengujian
modulsempat
strategi kehilangan
ini dilakukan dengan menggunakan
Lancar,
walaupun
dua buah robot dengan kondisi tanpa lawang dan diuji dengan
menggunakan separuh bagian lapangan.
Tabel 4 Verifikasi Spesifikasi dan Hasil Uji Coba Strategi

No
1

Dari hasil pengujian, dapat diambil kesimpulan bahwa


behavior robot yang dirancang dapat dinyatakan berhasil
untuk kondisi ini. Hal ini terlihat dari statistik keberhasilan
robot mencetak gol yakni 7 dari 10 kali percobaan.
3) Sistem Strategi
Strategi yang dikembangkan pada proyek ini yakni robot
yang memiliki posisi lebih efektif untuk menendang, maka
robot itulah yang akan bertindak sebagai eksekutor. Kondisi
yang lebih efektif ini dinyatakan dengan algoritma
implementasi berupa robot yang memiliki jarak lebih dekat
dengan bola, serta orientasi robot terhadap bola yang lebih
baik. Jarak dekat atau tidaknya bola terhadap robot dinyatakan
dalam variabel tilt, yakni variabel yang nilainya diperoleh dari
besarnya sudut arah kamera yang ada pada kepala robot
dengan posisi titik tengah bola.

Spesifikasi
Robot
mampu
menjalankan algoritma strategi
dengan baik sebanyak 5 kali
dari 10 kali percobaan. Tidak
bertabrakan dan tidak saling
berebut antar robot.
Robot mampu mencetak
gol
ke
gawang
lawan
maksimal 3 kali passing.
Dalam durasi permainan
10
menit,
robot
dapat
mencetak 5 gol ke gawang
lawan.

Ketercapaian
Tercapai. 8 dari 10 kali
percobaan, robot
berhasil menjalankan
algoritma strategi yang
dirancang
Tercapai. Posisi inisial
robot ada di tengah
lapangan.
Tercapai. Posisi inisial
robot ada di tengah
lapangan.

V. KESIMPULAN DAN SARAN

Gambar 8 Ilustrasi Strategi 1 Tim Robot

Berdasarkan pembahasan yang telah dijabarkan


sebelumnya pada bagian perancangan, implementasi, dan
pengujian, dapat disimpulkan bahwa algoritma komunikasi
dan strategi untuk robot humanoid pemain sepak bola sudah
berhasil dibuat. Algoritma yang dirancang pun dinilai mampu
mengoptimalkan serangan. Namun, masih ada bagian-bagian
yang dirasa dapat lebih dioptimalkan. Berikut merupakan
beberapa saran penulis untuk pengembangan algoritma
komunikasi dan strategi robot humanoid selanjutnya adalah:
Pengembangan algoritma behavior untuk bermain sepak
bola pada robot humanoid masih dapat ditingkatkan
dengan memaksimalkan beberapa fungsi yang digunakan.
Image processing dapat ditingkatkan sehingga kegagalan
dalam pencarian objek bola dan gawang dapat dikurangi.
Fungsi TurningBall masih dapat ditingkatkan. Pada bagian
ini pendeteksian bola masih belum optimal.
Sistem Lokalisasi dan dipercepat waktu pemrosesannya,
sehingga strategi dapat berjalan lebih baik.
DAFTAR PUSTAKA

Gambar 9 Ilustrasi Strategi 2 Tim Robot

Modul strategi mendapatkan


keseluruhan modul-modul yang

input informasi dari


ada, seperti: Modul

[1] Ha, Inyong, dkk. Gait Pattern Generation and Stabilization


for Humanoid Robot Based on Coupled Oscillators. 2011.
IEEE/RJS International Conference on Intelligent Robots
and Systems, San Fransisco.

[2] Ha, Inyong, dkk. Development of Open Humanoid


Platform DARwIn-OP. 2011. SICE Annual Conference,
Tokyo.
[3] Fu, K.S, dkk. Robotics Control, Sensing, Vision, and
Intelligence.1987. Singapore: McGraw-Hill, Inc.
[4] Nagi, Imre, Harish Mahatma Putra, dan Maratush
Sholihah, Humanoid Robosoccer League (Proposal),
Dokumen B100, Institut Teknologi Bandung, 2013
[5] Nagi, Imre, Harish Mahatma Putra, dan Maratush
Sholihah, Humanoid Robosoccer League (Spesifikasi),
Dokumen B200, Institut Teknologi Bandung, 2012
[6] Nagi, Imre, Harish Mahatma Putra, dan Maratush
Sholihah, Humanoid Robosoccer League (Perancangan),
Dokumen B300, Institut Teknologi Bandung, 2014
[7] Nagi, Imre, Harish Mahatma Putra, dan Maratush
Sholihah,
Humanoid
Robosoccer
League
(Implementasi), Dokumen B400, Institut Teknologi
Bandung, 2014
[8] Nagi, Imre, Harish Mahatma Putra, dan Maratush
Sholihah, Humanoid Robosoccer League (Verifikasi),
Dokumen B500, Institut Teknologi Bandung, 2014
[9] Surya Adiputro, Azhari, Rancang Bangun Robot
Humanoid Pemain Sepak Bola, Laporan Tugas Akhir,
Institut Teknologi Bandung, 2011.
[10] Kristanto, dkk. 2012. Nao Humanoid Robosoccer Team.
Bandung : Prodi Teknik Elektro ITB.
[11] Friedmann, M, dkk., Darmstadt Dribblers Team
Description for Humanoid KidSize League of RoboCup

2011,2011.http://www.sim.informatik.tudarmstadt.de/publ/download/2011_tdp_hum.pdf
[12] Kuhn, J, dkk., Darmstadt Dribblers Team Description for
Humanoid KidSize League of RoboCup 2012, 2012.
http://application2012.germanteam.org/upload/99ea768df2
2e9e05cc9d7eb3910fb7cb04e4260b/TDP2012_DD.pdf
[13] Kuhn, J, dkk., Darmstadt Dribblers KidSize Robot 2012,
2012.
[14] McGill, Stephen, dkk., Team DARwIn Team Description
for Humanoid KidSize League of RoboCup 2012,2012.
http://application2012.germanteam.org/upload/fbe7f71262
c0045d1660fde9b679e35971e84d5b/Team%20DARwIn
%20TDP%202012.pdf
[15] RoboCup Technical Committee, RoboCup Soccer
Humanoid League Rules and Setup for the 2012
Competition
in
Mexico
City,
2012.
http://www.tzi.de/humanoid/pub/Website/Downloads/Hum
anoidLeagueRules2012-06-07-with-changes.pdf
[16] RoboCup Technical Committee, RoboCup Soccer
Humanoid League Rules and Setup for the 2013
Competition
in
Eindhoven,
2012.
http://www.tzi.de/humanoid/pub/Website/Downloads/Hum
anoidLeagueRules2013_DRAFT_20121010.pdf
[17] Rofer Thomas, dkk. B-Human Team Report and Code
Release 2011. Universitat Bremen, Germany.
[18] Sporea, Radu. Color Model Alternative Colorimetric
Systems and Color Models
http://www.photozone.de/colorimetric-systems-and-colormodels.