y4nu4r88@yahoo.com
bambang@eepis-its.edu
3
ardik@eepis-its.edu
I. PENDAHULUAN
Tren dalam dunia robot saat ini bisa dikatakan
sudah berkembang dengan pesat. Hal ini dikarenakan
keinginan manusia untuk melakukan sebuah pekerjaan
dengan mudah sehingga diperlukan otomasi dalam
pekerjaan. Dalam perkembangannya, jenis robot yang
dirancang banyak jenisnya seperti robot yang dirancang
khusus di industri, robot untuk hiburan, robot di bidang
kesehatan dan lain sebagainya. Pembuatan robot juga bisa
mengacu pada prinsip dasar pergerakan manusia. Misalkan
saja dari cara manusia berjalan, berbicara, memegang
benda dan lain-lain.
Jari adalah salah satu bagian dari tubuh manusia
yang mempunyai peranan penting dalam pergerakan
manusia untuk melakukan berbagai aktivitas. Manusia
mempunyai total sepuluh jari yang berfungsi untuk
memegang benda. Dari prinsip jari tangan manusia itulah
kemudian digunakan sebagai dasar pengembangan robot
Ya
Kirim data ke hardware
END
A. Kinematika Terbalik
Pada proses ini kita mencari rumus
kinematika terbalik dari robot gripper. Karena struktur
robot tersusun atas 2 DOF dan 3 DOF, maka dalam
merancang kinematika terbalik robot gripper
mengadopsi dari persamaan kinematika terbalik robot
lengan 2 DOF dan 3 DOF. Diibaratkan seperti jari
tangan manusia, jari pertama adalah jempol yang
mempunyai 2 derajat kebebasan. Berikut adalah
persamaan robot lengan 2 DOF.
2 = arcos{ (x2 + y2 - l12 - l22) / 2l1l2 }
1 = arctan{ (y(l1 + l2 cos 2) - x . l2 sin 2) /
(x(l1 + l2 cos 2) - y . l2 sin 2) }
(2.10)
(2.11)
(2.17)
1 = -
(2.18)
Setelah mendapatkan nilai 1 dan 2 maka dapat
dihitung 3 dengan persamaan,
1 = e - (1 + 2)
(2.19)
(3.31)
keterangan :
Pi = nilai output pada program
Oi = nilai output yang dihasilkan dari training
set
Dari rumus di atas dapat dilihat bahwa
fungsi fitness ini akan menghitung nilai mutlak
dari selisih antara nilai output program dengan
nilai output dari training set. Jadi semakin kecil
nilai selisihnya maka fitnessnya semakin baik.
4.
Seleksi Individu
Pada perancangan sistem optimasi ini
menggunakan metode roulette wheel. Seleksi
ini menggunakan fitness skala dalam memilih
kromosom dari populasi. Untuk menghitung
fitness skala dari suatu kromosom maka perlu
diketahui terlebih dahulu jumlah seluruh fitness
dalam populasi. Proses seleksi ini, orangtua
dipilih berdasarkan fitness mereka. Lebih baik
kualitas suatu kromosom, lebih besar peluang
untuk terpilih. Probabilitas suatu individu
terpilih untuk crossover sebanding dengan
fitness-nya. Cara penyelesaian ini merupakan
peniruan dari permainan roda rolet.
5.
Crossover
/
*
2
+
x
+
2
y
Gambar 4. Metode Grow
3.
Evaluasi Fitness
Genetic programming bekerja dengan
men set suatu individu untuk membentuk suatu
generasi. Di dalam setiap iterasi, akan dilakukan
evaluasi individu, seleksi individu, mengenerate
individu baru dengan melakukan mutasi,
crossover dan reproduksi secara langsung, dan
yang terakhir akan terbentuk suatu generasi
baru. Di dalam melakukan proses seleksi dapat
dilakukan dengan cara memilih parent dari
generasi berikutnya dan menentukan individu
yang mana yang bertahan hidup untuk generasi
berikutnya. Fungsi fitness menggambarkan
suatu solusi terbaik untuk probabilitas seleksi
individu.
Tujuan utama evaluasi fitness adalah
untuk memberikan umpan balik ke algoritma
yang telah dirancang mengenai pemilihan
individu yang mempunyai probabilitas tinggi
dapat melakukan operasi genetika seperti
crossover, reproduksi dan mutasi dan pemilihan
mother
father
+
sin (5.47)
12.3
pow
2.51
cos (53.2)
sin (37.23)
child_2
12.3
sin (5.47)
cos (53.2)
pow
2.51
sin (37.23)
6.
Mutasi
Operator mutasi digunakan untuk
melakukan modifikasi satu atau lebih nilai gen
dalam individu yang sama. Untuk menentukan
kromosom mana yang mengalami mutasi, maka
perlu dibangkitkan bilangan random. Bila
bilangan random < probabilitas mutasinya,
maka dilakukan proses mutasi, sedangkan bila
tidak maka tidak perlu dilakukan mutasi.
Proses mutasi yang digunakan pada
kasus ini adalah sebuah subtree dapat
digantikan dengan subtree lain dengan cara
membangkitkan secara random.
*
cos (53.2)
sin (5.47)
sin (5.47)
7
Gambar 7. Proses Mutasi
4.7
-2.1
4.08
2.61
Error
Sumbu
x
(persen)
0.5
0.99
Error
Sumbu
y
(persen)
0.46
3.02
Sumbu
x
(input)
Sumb
uy
(input)
Sumb
ux
(uji)
Sumb
uy
(Uji)
3
3.6
4.1
2.7
2.98
3.63
3.5
4.04
3.58
1.03
2.5
2.8
2.5
2.81
2.65
0.44
6.2
2.4
3.5
2.38
3.48
0.4
0.3
2.57
4.1
1.94
3.99
2.85
1.6
3.7
1.58
3.6
1.06
2.47
0.4
4.5
0.35
4.44
10.86
1.39
0.6
3.5
0.65
3.43
1.95
3.9
0.96
3.8
4.1
2.5
2.2
2.9
2.2
2.8
0.11
2.98
E. KESIMPULAN
Pada bagian ini akan diulas tentang
kesimpulan dari seluruh percobaan dan pengujian
software. Berikut adalah beberapa kesimpulan yang
dapat diambil diantaranya adalah sbb.
1. Untuk mengoptimalkan proses komputasi dari
program GP, maka dilakukan pembagian
kondisi berdasarkan nilai sumbu x yang ada.
2. Banyak tidaknya fitness case mempengaruhi
kinerja dari program, semakin banyaknya
fitness case membuat kinerja program menjadi
lambat tetapi mempunyai kelebihan yaitu
persamaan yang dihasilkan menjadi lebih tepat.
3. Persamaan yang didapatkan dari proses genetic
programming akan menghasilkan nilai optimum
yang hampir dibandingkan dengan fitness case,
sedangkan yang tidak masuk ke dalam fitness
case, kemungkinan error lebih besar.
F. DAFTAR PUSTAKA
[1]. Akio Namiki, Y. I., Masatoshi Ishikawa, 2004,
Development of a High-speed Multifingered
Hand System and Its Application to Catching,
University
of
Tokyo,Department
of
Information Physics and Computing
[2]. J.ButterfaB,M.G,H.Liu,G.Hirzinger,
2001,
DLR-Hand II: Next Generation of a Dextrous
Robot Hand, Seoul Korea, International
Conference on Rootic and Automation
[3]. Khandar Wiliam, 2008, Penggunaan Genetic
Programming untuk Mencari Rumus Suatu
Deret Bilangan, Bandung, Sekolah Teknik
Elektro dan Informatika ITB
[4].
Ali Husein A, 2008, Kinematika Terbalik,
Surabaya, Politeknik Elektronika Negeri
Surabaya
[5].
Isnawati Ulifah, 2007, Peramalan Time Series
Menggunakan
Genetic
Programming,
Surabaya, Politeknik Elektronika Negeri
Surabaya
[6].
Endra Pitowarno, 2006, Robotika : Desain,
kontrol, dan Kecerdasan Buatan, Yogyakarta,
Andi
[7].
Heriady, 2007, Pemrograman Grafik 3D
Menggunakan C & OpenGL, Yogyakarta,
Graha Ilmu
[8].
Wolfgang Banzhaf, Peter Nordin,, Robert E
Keller, and Frank D Francone, 1998, Genetic
Programming: An Introduction, San Francisco,
CA, Morgan Kaufmann.
[9].
H. Harry Asada. 2005. Introduction to
Robotics : Chapter 4 Planar Kinematics,
Massachusetts, Massachusetts Institute of
Technology