ABSTRACT
THE DEVELOPMENT OF AUTONOMOUS MOBILE ROBOT USING FUZZY CONTROL SYSTEM AND ARTIFICIAL NEURAL NETWORK. Autonomous mobile robot navigationbasedon PIC 16C57rnicrocontrollerhas beenrealizedusing fuzzy logic control and neural network systems.Realization of autonomousbehavior in mobile robot requires formulation of rules which are collectively responsiblefor necessary levels of intelligence.We use differential competitive learning and the product-space clustering techniqueto adaptivelygeneratefuzzy-associative-memory (FAM) rules from training data takenfrom the fuzzy and neuralsimulations. The input variableswerethe robot angle and the position coordinateand the outputvariablewas the steering-angle signal. The goal was to makemobile robot arrive at the loading dock at a right angleand to align the position of the robot with the desiredloadingdock. The neuralcontrol system consisted of two neuralnetworks:the controller networkandthe emulatornetwork. The controller networkproducedan appropriate steering-angle signal outputand the emulatornetworkcomputedthe next position of the robot. At every stage,the fuzzy and neuralcontrollersshouldproducethe steeringangle that move up the mobile robot to the loading dock from initial positionand from anyangle in the loadingzone.We studiedthe sensitivityandthe robustness of the controllerby examiningfailure rates. Key words: Mobile robot, fuzzy logic, neuralnetwork.
157
PENDAHULUAN Robot berasal dari bahasaCekoslowakia"robota" yang berarti pelayan atau tenagakasar, adalah mesin yang dapat bekerja sendiri tanpa kendali atau campur tanganmanusiadan biasanya pergerakannya meniru pergerakan sendi-sendi manusia. Robot dibuat untuk melakukan pekerjaan yang bersifat berulang (repetitif), membosankan, kotor, berbahayadan memerlukanketekunanyang tinggi. Dalam perkembangannya, robot dewasaini bukan hanya mesin yang melakukangerakangerakan berulang tetapi telah melibatkankecerdasan dan keluwesan.Perkembangan teknik kendalidan otomatisasi yang didukung oleh teknologi informatikadan mikroelektronika telah melahirkan robot sebagai suatu perangkat industri yang dapat meningkatkan produktivitas, standar mutu, efisiensi dan dapat menyelesaikan pekerjaanyang tidak dapatdilakukan sebelumnya oleh manusia,sepertirobot untuk dekontaminasi radiasiataurobot untuk menjelajah permukaan planetMars (Rover).
158
Pengembangan Robot Mobil Otonom Menggunakan Sistern Kendali Fuzzy clan Jaringan
bejana, dll.), pembongkaran reaktor nuklir, dekontaminasi dan pembongkaran hot cell/glove box, penanganandan pengangkutan sampah, dan dekontaminasi dinding dan lantai ruang reaktor. Navigasi robot otonom berarti kemampuan suatu robot untuk bergerak menuju tujuan tanpa campur tangan manusia dalam suatu lingkungan yang tidak khusus direkayasa untuk lintasan langkahnya. Dalam mencapai tingkat otonomi dibutuhkan sistem kendali jenis pintar. Beberapa arsitektur telah dikembangkan untuk navigasi robot otonom yaitu : (1) Arsitektur terhirarki yaitu membagi fungsi robot ke dalam lapisan tingkat-tinggi (model dan perencanaan)dan lapisan tingkat rendah (pengindera dan pengeksekusi); (2) Arsitektur berbasis perilaku yaitu merealisasikan perilaku kompleks dengan mengkombinasikan unit-unit yang dihasilkan daTibeberapa perilaku sederhana; dan (3) Arsitektur campuran (hybrid) yaitu dengan mengkombinasikan kedua perilaku di atas. Kami mengembangkan arsitektur navigasi robot mobil berbasis perilaku yaitu menggunakan sistem kendali fuzzy dan sistem kendali jaringan syaraf. Kedua sistem kendali tersebut menggunakan pendekatan stokastik yang tidak membutuhkan komputasi kompleks seperti pada kendali Pill (Proportional Integral & Derivative) yang umum digunakan pada saat ini. Untuk objek penelitian digunakan robot edukatif yaitu robot mobil yang dilengkapi dengan tangan kinematik yang memiliki empat poros gerakan dengan tiga derajat kebebasan. Sebagai otak robot digunakan Basic Stamp II denganpengendali mikro PIC 16C57.
PRINSIP KERJA
Pada robot sering digunakan istilah-istilah untuk menunjukkan geometri dan spesifikasi robot seperti "poros gerakan" dan "derajat kebebasan". Setiap benda bergerak berarti menempuh jarak dari satu titik ke titik lain yang berada pada satu bidang. Pergerakan ini mempunyai garis sumbu atau titik yang tidak berubah yang disebut poros. Jadi poros gerakan merupakan titik atau pusat terjadinya gerakan. Derajat kebebasan adalah jumlah arab bebas (independent) dari suatu robot (end effector) yang menentukan arab dari pergerakannya. Parameter-parameter yang bertindak sebagai variabel masukan dari robot mobil adalah koordinat posisi (x, y) yaitu titik pusat robot dan sudut arab ~ yaitu sudut antara sumbu x denganporos robot. Sebagai variabel keluarannya adalah sinyal sudut-pengarahe yaitu sudut antara poros dengan arab roda. Tujuan daTi sistem pengendali navigasi ini adalah bagaimana menggerakkan robot agar mencapai terminal pengangkut (loading dock) pada posisi dan sudut yang tepat (~r = 90). Hal ini dilakukan dengan meluruskan posisi dari robot (x, y) denganposisi terminal pengangkut yang diinginkan (xr, Yr).
159
(x,
Back Whee]
"
Wht,-el
if ,. ,-,"
L.x
Gambar 2. Diagramsimulasidari posisidan sudutarabrobot Setiap langkah daTi sistem kendali memberikansinyal berupa besar sudut pengarah e yang menuntunrobot menujuterminalpengangkut daTisuatuposisi awal. Keberhasilan daTi pengendalian adalah: pertama dapat mencapai tujuan yang diinginkan dan kedua memberikanjalur lintasan yang optimal, yaitu tidak adanya langkah-langkah yangtidak perlu dantidak berputar-putar secara tidakberaturan.
160
Sistem kendali akan menghitung kesalahan sikap tubuh (posture) untuk setiap langkah. Kesalahan sikap tubuh adalah selisih antara sikap yang diinginkan (x d, y d, 8d) dengan sikap aktual (x r, Y r, 8J. Kemudian dapat kita hitung kesalahan pada orientasi (8e = 8d -8J clan kesalahan jarak (de = ~d~-~). Tujuan pengendalian adalah melakukan koreksi arab robot clan mengatur kecepatanroda kiri clanroda kanan sedemikian sehingga kesalahan sikap tubuh dapat dihilangkan. Jika kesalahannya besar maka sinyal sudut pengarahjuga hams besar clanjika kesalahannya kecil maka sinyal sudut pengarahjuga kecil.
SistemKendall Fuzzy Sistem kendali fuzzy adalah sistemberbasispengetahuan yang dirumuskan dalam bentuk aturan-aturan(rules base)sebagaiakumulasidaTi suatupengalaman. Logika fuzzy dikembangkan pertama kali oleh Dr. Lotti A. Zadeh (1965) untuk merumuskan secaramatematikkonsepketidakpastianataukesamaran sehinggadapat diprosesoleh komputer.Dengan menerapkan logika fuzzy pada programkomputer, sistemkendali dapat memutuskan seperti caramanusiaberpikir. Kemampuaninilah yang disebutsebagai kecerdasan buatanpadasistem kepakaran fuzzy.
. .
I I I
Defuzzification .Inference
Pa~~~k2ll!: :.O!;:.t~!-I I I I I
'"'
Mecllauism Fuzzificatioll
I
I
~r
Control actions
'I
Gambar 4. Bagansistemkendali fuzzy untuknavigasirobotmobil. PadaGambar4 diperlihatkanbagandasardaTisuatusistemkendali fuzzy yang terdiri daTitiga lapis dasaryaitu: fuzzifikasi, mekanismemenarik kesimpulan dan defuzzifikasi. Fuzzifikasi adalahmengubahatribut-atributbasil pengukuranfisik ke dalamkonsepfuzzy. Konsepfuzzy tidak bekerjasecara biner (himpunancrips) tetapi berupa himpunan fuzzy di mana elemen-elemennya dinyatakan dengan pasangan
161
elemenanggotahimpunan x dan fungsi keanggotaannya m(x). Derajat atau fungsi keanggotaan adalahbilangan riel dalam interval [0,1] yang menyatakanmutu dari keanggotaan x terhadap suatuhimpunan.
m(x)
~-~
0 10
LC
C1-:
/
20 m1
/"
40
/:"
RC A
RI
/ i
R8 ,,'-',
J
RU
30
50
R\'
,;\\
VE
LV
LV
LB
~
l('y~
-90
l '"
Y ~
180 27{)
<P
j\
90
m(e)
~n
NM,/"'" NS Z1': PS I'M
/""-"
PH,/'
.\()
20
-10
(I
10
20
Gambar 5. Fungsi keanggotaan fuzzy untuk x, cj> dan e. Langkah pertama dalam merancang pengendali fuzzy adalah dengan menentukan daerah nilai-nilai masukan clan nilai-nilai keluaran daTi pengendali. Daerah variabel pengendali navigasi robot mobil adalah sebagaiberikut: 0 ~ x ~ 100 -900~ <I> ~ 2700 -300 ~ e ~ 300 Nilai-nilai positif daTi e menggambarkan rotasi roda pengarah sesuai dengan arab jarum jam clan nilai negatif bila berlawanan arab dengan jarum jam. Resolusi daTi 4> clan e masing-masing satu derajat sedangakanresolusi daTi x adalah 0, I. Posisi x dibagi menjadi lima sub-himpunan fuzzy yang simetris yaitu: LE (Left), LC (Left Center), CE (Center), RC (Right Center) clan Rl (Right). Sudut 4> dibagi menjadi tujuh sub-himpunan fuzzy: RB (Right Below), RV (Right Upper), RV (Right Vertical), VE (Vertical), LV (Left Vertical), LV (Left Upper), dan LB (Left Below). Sedangkan sinyal sudut-pengarah e dibagi menjadi tujuh sub-himpunan fuzzy: NB (Negative Big), NM (Negative Medium), NS (Negative Small), ZE (Zero), PS (Positive Small),
162
PM (Positive Medium), dan PB (Positive Big). Fungsi keanggotaan fuzzy pada aplikasi ini diambil linier berbentuk segitiga untuk menyederhanakan perhitungan. Gambar 5 adalah grafik fungsi keanggotaan untuk setiap himpunan fuzzy di atas. Sebagai contoh, untuk e = 20, diperoleh kualitas keanggotaannya adalah 0,5 (50%) untuk sub-himpunan PM dan 0,3 (30%) untuk sub-himpunanPH. Sub-himpunan fuzzy CE, VE dan ZE dibuat lebih sempit daripada sub-himpunan yang lain agar memungkinkan pengendalian langkah dapat lebih halus di dekat terminal pengangkut.
X
LE
LC
CE
RB
Rl RV
PS
NS
NM NM
PM
PM
PM PS
C'"C", cc ~~.d!=
"
RC
!{I 5
PO
PH
PB
PS
NS
PM PM
cI>
VE
LV
NO NB
NM
PS
NM
NB NB
NS NM
LB
NB
NM
IF x=LE AND <j>=RB,THEN e =PS Artinya jika x ada di kiri (LE) clan <I> di kanan bawah (RB) maka sinyal sudut pengarahnya e haruspositif kecil (PS). Aturan FAM nomor 18 menunjukkan bahwa jika robot berada dekat pada posisi kesetimbangan, maka sistem kendali tidak menghasilkan sinyal sudutpengarah positif ataupun negatif(Zero).
163
Risalah Lokakarya Komputasi dalam gains clan Teknologi Nuklir XIV, Juli 2003
m(cII)
mtx)
RV/,\j .
c..:,4\
I! " L..$
\. \
m(9) PS
1A
""CO;,
(~)13
.II
m!I>
VE
18
m(9)
input
<!J
input x
t I)
centroid output
- 2:8jmoC8j) 8= j-l
Lmo(8j)
j;J
di mana 0 mendetinisikan sub-himpunan fuzzy daTi sudut-pengarahuniversal e = {e\, e2, ..., eN}, Gambar 7 memperlihatkan pengambilan kesimpulan korelasi minimum dan defuzzitikasi centroid yang diterapkan pada aturan FAM nomor 13 dan 18. Subhimpunan <I>dan x dikombinasikan menggunakan logika AND (mencari nilai kepatutan minimum) untuk mengaktifkan konsekuensi. Aturan FAM nomor 13 dan 18 dikombinasikan dengan logika OR (mencari nilai kepatutan maksimum) untuk menentukan daerahcentroid sebagaikeluaran.
164
Topologi sistem kendali jaringan syaraf untuk navigasi robot mobil otonom adalah jenis jaringan syaraf multilayer feedforward yang dilatih dengan algoritma gradian turun backpropagation. Sistem kendali syaraf terdiri dari dua jaringan: jaringan pengendali clan jaringan emulator. Jaringan pengendali menghasilkan keluaran berupa sinyal sudut pengarah sebagaibasil dari dua masukan yaitu koordinat posisi tempat pemberhentian (Xk, yJ clan sudut arab robot <Pk. Jaringan emulator menghitung arab Pk+J clan posisi iterasi berikutnya (Xk+l,Yk+J. Sebagai masukan adalah posisi robot aktual clan sudut pengarah sebagai keluaran dari jaringan
165
pengendali. Jaringanpengendalimemiliki 24 jaringan tersembunyi (hidden networks) denganfungsi logistik berbentuksigmoid. Pelatihanhanya dilakukanpada jaringan pengendaliyaitu denganmetodabackpropagation. Kami melakukanestimasi sinyal sudut pengarahideal yang dihasilkan oleh suatu pengendalifuzzy. Lintasan robot berbentukbusur dari suatu pengendalifuzzy digunakansebagailintasan ideal clan kemudiandigunakan sebagai datapelatihan darijaringanpengendali., Kami tidak melakukanpelatihan pada jaringan emulator karena sulit untuk memperoleh koneksi pemboboton sinapsis universal. Algoritma pelatihan backpropagationtemyata tidak dapat konvergenuntuk beberapacontoh himpunan data pelatihan. Sebab itu maka digunakan persamaankinetika sederhanauntuk menggatikan peranjaringan emulator. Jika robot bergerakdari posisi (x, y) menuju posisi(x', y') dalamsuatuiterasi, makadiperoleh:
Xk+l = Xk + r COSci>k Yk+l = Yk + r sin <Pk <Pk+l= <Pk + 8k dengan r adalah jarak lintasan tetap daTi robot untuk setiap langkah gerakan.
166
Pengembangan Robot Mobil Otonom Menggunakan Sistem Kendali Fuzzy daD Jaringan
~
~ \}.
' .:;;:;K
1""
.'~~jY' r~' ,.'"
J
-:,:""'~
,~7 ,,~
~1
"1!:t7
~~; ...;,...,,'
(30, 10,230)
(30,40, -10)
(20,20,30)
"---~ --"
J l :~f"
I,)
~~
~.~~ J
(20,20,30) (30, 10,230) (30,40, -10) Gambar 10. Lintasan dan robot mobil untuk tiga buah posisi awal (x, y, <1.
Gambar10 memperlihatkan beberapa lintasandaTirobot mobil untuk tiga buah posisi awal (x, y, <1 yaitu: (20, 20, 30), (30, 10, 230) clan(30, 40, -10) dengan menggunakan sistemkendali fuzzy clansistemkendalijaringansyaraf. Sistemkendali fuzzy tidak menggunakanseluruh aturan-aturanFAM untuk setiap iterasinya. Umumnya sistem hanya menggunakansatu atau dua aturan FAM untuk setiap iterasinya.Sistemsebagian besarmenggunakan 4 aturanFAM dalam satukejadian.
167
Jika kita membandingkan lintasan robot mobil dengan sistem fuzzy clan sistem jaringan, sistem pengendali fuzzy selalu memberikanlintasan robot yang halus sedangkan pada sistempengendalijaringan syaraf memberikan lintasan yang tidak optimalclankadang-kadang diikuti denganjejaklangkahyangtidak beraturan.
KESIMPULAN Pengendalifuzzy selalu menggerakkan robot mobil denganhalus, sedangkan pengendalineural tidak. Gerak dengankendali neural kadang-kadang memberikan jejak langkahyang tidak teratur. Melatih sistemkendali neural membutuhkan cukup banyakwaktu, karena algoritrnabackpropagation memerlukan ribuan langkahuntuk pelatihanpada jaringan pengendali.Kadang-kadang, algoritma pembelajarantidak mencapai konvergensi. Pengendalifuzzy tidak membutuhkanemulator robot clan tidak memerlukan model matematika yang menghubungkankeluaran sebagai fungsi masukan. Pengendali fuzzy lebih sedikit membutuhkan operasikomputasidibandingkan dengan pengendali neural. Sebagian besar operasi komputasi pada pengendali neural melibatkanoperasiperkalian,penambahan atau fungsi logaritmik daTidua bilangan nyata. Sedangkan pada pengendali fuzzy, sebagian besar operasikomputasi adalah operasi pembandingan clan penambahan dua bilangan nyata.
DAFTARPUSTAKA
FU, K.S., GONZALEZ, R.C., LEE, C.S.G.,Robotics: Control, Sensing,Vision, and Intelligence, McGraw-Hill Book Co., Singapore, 1987 ZADEH, L.A., FuzzyLogic, Computer,21 (1988)
3,
NGUYEN, D., WillROW, B., "The Truck Backer-Upper:An Example of SelfLearningin Neural Networks", ProceedingsofInternationalJoint Conference on Neural NetworkS' (UCNN-89),Vol. II, (1989)357-363 KOSKO, B., Neural NetworkS'and Fuzzy Systems: A Dynamical Systems Approach to Machine Intelligence,Prentice Hall Inc., EngelwoodCliffs. New Jersey,1992 POMERLEAU, D.A., Neural Network Perception for Mobile Robot Guidance, Kluwer AcademicPublishers, Boston,1993 PIN, F.G., WATANABE, Y., "Navigation of Mobile Robots Using a Fuzzy Behaviorist Approach and Custom-DesignedFuzzy Inferencing Boards", Robotica,12 (6) (1994)491-504
168
TUNSTEL, E., "Co-ordinationof Distributed FuzzyBehaviorsin Mobile Robot Control", IEEEInt. Con! on Systems, Man and Cybernetics, (1995)4009-4014 SAFFIOTTI,A., "Fuzzy Logic in Autonomous Robotics:behaviorcoordination", Sixth IEEE IntI. Conference on Fuzzy Systems(FuzzIEEE'97), Barcelona, (1997)573-578
DISKUSI
SUDARNO Apakah sistemkontrol fuzzy clanJSTbekerjasecara independent atau diintegrasikan menjadineurofuzzy? M. SYAMSA ARDISASMITA
Kami di sini bermaksud membandingkan keandalan daTi sistem kendali fuzzy dan sistem kendali jaringan syaraf pada navigasi robot mobil yang otonom, artinya masing-masing sistem bekerja secara independent. Tetapi karena sistem jaringan syaraf membutuhkan data-data untuk pelatihan maka kami gunakan data-data lintasan ideal yang dihasilkan oleh suatu pengendali fuzzy untuk pelatihan.
EDYSAPTONO
Dalam perjalanan dari Start menuju sasaran, di tengah jalan ada perintang/wall, bagaimana kontrol robot tersebut agar sampai sasaran? Bagaimana internal input dari robot tersebut?
M. SYAMSA ARDISASMITA
Kita dapat menggunakan peta lingkungan yang diintegrasikan pada program pengendalian sehingga robot dapat melakukan koreksi arab clan lintasan penjejakan. Bisa juga robot dilengkapi dengan sistem penginderaan jarak inframerah untuk menentukan posisi clan arab lintasan penjejakan. Sebagai masukan bagi robot mobil menggunakan sistem kendali fuzzy clan jaringan syaraf adalah titik awal, titik akhir (terminal) clan sudut arab badan robot.
169
ADE JAMAL Berapabesarukuranrobot yangbisa dibuat dengan metodaFuzzy, Neural ataupm? Sebagai masukan, jika ukuran ini bisa menjadikecil karenapilihan metodenya maka bisa digunakan untuk pengecekan pipa bocor. M. SYAMSA ARDISASMU A
Metoda Logika Fuzzy, Neural Network dan pm dapat digunakan untuk berbagai ukuran robot karena metoda-metoda tersebut merupakan program komputer yang ditanamkan pada sistem pengolah robot untuk mengatur gerakan motor sesuai dengan algoritma yang dibuat sebelumnya.
B AKRI ARB IE Tampaknya Fuzzy Control cukup menarik. Apakah acta usaha untuk pengendalian PLTN. Kalau actastatusnya sudah sampai di mana? M. SY AMSA ARDISASMIT A Sudah banyak penelitian yang dilakukan untuk rnenerapkan sistern pakar urnumnya atau logika fuzzy khususnya dalarn pengendalian PLTN. Ternan-ternan di Reaktor Kartini Yogtakarta sudah rnencoba rnenerapkan pengaturan batang kendali reaktor dengan logika fuzzy.
UTAJA
Bagaimana hila perubahan kondisi terlalu besar? Bagaimana hila masuk dalam kondisi vibrasi (arah selalu bolak-balik)?
M. SYAMSAARDISASMITA
Kondisi pada sistem kendali fuzzy dan jaringan syaraf adalah posisi dan sudut arah. Kondisi perubahan posisi maupun sudut yang besar tidak ada masalah selamamasih dalam daerah variabel perhitungan. Dalam sistem kendali, vibrasi merupakan suatu gangguan akibat daTi ketidak stabilan disebabkan damping ratio pada response transien suatupenggerak. Dalam kasus kita, hal ini tidak akan terjadi karena posisi akhir dan arahnya adalah tetap.
70
Home