Oleh:
Kelompok 1
Pada masa sekarang ini ilmu pengetahuan dan teknologi sangatlah dibutuhkan dalam
kehidupan manusia untuk mempermudah pekerjaan manusia. Karena keterbatasan manusia
dalam ilmu pengetahuan khususnya di bidang teknik. Untuk memudahkan manusia dengan
keterbatasan fisiknya yaitu dengan perkembangan kecerdasan buatan (Artificial Intelligence),
salah satu contohnya yaitu robot yang dapat membantu pekerjaan manusia.
Teknologi robotik saat ini mengalami kemajuan yang sangat pesat. Teknologi robotik
digunakan untuk melakukan kegiatan seperti yang makhluk hidup lakukan, sehingga
membutuhkan persepsi, aksi dan kecerdasan tersendiri yang diprogram di dalamnya untuk
menyamai kelakuan makhluk hidup. Persepsi didapatkan melalui sensor, aksi dikerjakan dengan
motor, dan kecerdasan diprogram dalam unit mikrokontroler yang menghubungkan sensor dan
motor. Robot yang canggih bahkan memiliki sistem kontrol (mikrokontroller yang di program)
yang tidak hanya menghasilkan aksi berdasarkan pengetahuan yang tersimpan di ’otak’-nya,
melainkan juga belajar memperoleh pengetahuan baru secara otomatis dari pengalamannya
sendiri.
Mobile robot merupakan salah satu jenis robot yang banyak digunakan dalam membantu
pekerjaan manusia. Mobile robot dapat diterapkan dalam beberapa aplikasi diantaranya:
pemadam kebakaran, pengelompokkan barang, pengikut objek, robot sepak bola dan robot
pencari rute terpendek.
Salah satu robot yang menarik dan banyak dikembangkan yaitu robot tikus. Robot tikus
merupakan salah satu mobile robot yang memiliki tujuan untuk menyelesaikan lintasan berupa
labirin, sehingga robot dapat menemukan tempat yang dituju melalui rute dengan jarak yang
terpendek. Untuk menyelesaikan solusi jalur terpendek dari titik start ke finish, Robot Tikus
harus melakukan scanning area secara langsung untuk mendapatkan data-data bobot sebagai
input algoritma pencari jalur terpendek dengan cara melalui semua jalan di dalam lintasan
labirin. Pada laporan tugas besar ini, robot tikus untuk mencari jalur terpendek dari titik start ke
goal pada lintasan labirin menggunakan algoritma djikstra. Algoritma ini menyelesaikan masalah
mencari sebuah lintasan terpendek (sebuah lintasan yang mempunyai panjang minimum) dari
vertex 0 ke
vertex 14 dalam graph berbobot, bobot tersebut adalah bilangan positif.
Berdasarkan hal tersebut, dalam penelitian tugas besar matakuliah ini kami bertujuan
untuk membangun mekanisme pembelajaran untuk robot tikus sederhana dengan penerapan
metode searching menggunakan algoritma djikstra untuk mencari jalur terpendek pada sebuah
labirin dari titik start sampai titik goal.
1.2 Rumusan Masalah
Berdasarkan latar belakang tersebut, ada beberapa permasalahan yang menjadi fokus
pada penilitian dan pengerjaan tugas besar matakuliah ini, antara lain :
1. Bagaimana kita dapat mengimplementasikan materi Sistem Cerdas sub bab Algoritma
Djikstra kedalam dunia nyata?
2. Bagaimana cara melakukan perhitungan manual dan running program dengan
menggunakan robot tikus di suatu labirin menggunakan algoritma djikstra?
3. Bagaimana prinsip kerja dari robot tikus pencarian rute terpendek dengan cost terendah
untuk mencari titik keluar (start menuju goal)?
1.3 Tujuan
Tujuan tugas besar ini adalah membuat pencarian jalur terpendek menggunakan
algoritma djikstra pada robot tikus. Tujuan tugas besar ini yaitu:
1. Mengimplementasikan materi Sistem Cerdas sub bab Algoritma Djikstra kedalam dunia
nyata.
2. Mengetahui cara melakukan perhitungan manual dan running program dengan
menggunakan robot tikus di suatu labirin menggunakan algoritma djikstra.
3. Mengetahui system control bekerja pencarian rute terpendek dengan cost terendah untuk
mencari titik keluar (start menuju goal).
BAB II
TINJAUAN PUSTAKA
Mobil robot adalah kontruksi robot yang ciri khasnya yaitu mempunyai actuator berupa
roda untuk menggerakkan keseluruhan badan robot tersebut sehingga robot dapat melakukan
perpindahan posisi dari satu titik ke titik yang lain. Robot tikus adalah robot cerdas yang dapat
bergerak bebas di dalam sebuah labirin (maze) tanpa menyentuh obyek sekitarnya, robot
mengetahui ke arah mana harus bergerak, berapa derajat harus berputar jika menemui jalan buntu
pada area labirin. Robot tikus ini termasuk ke dalam jenis robot mobile yaitu Autonomous
Mobile Robot. Autonomous Mobile Robot adalah pengendalian gerakan dari robot yang
berdasarkan program kemudi yang diberikan sehingga seolah - olah robot tersebut bergerak
sendiri. Robot tikus ini akan berjalan dalam labirin yang dimulai dari posisi start pada bagian
sudut labirin. Kemudian robot akan bergerak menuju finish yang berada di tengah labirin.
Setelah mencapai finish maka robot akan kembali ke posisi start.
Robot tikus menggunakan mobile robot komersil Pololu 3π seperti yang ditunjukkan
pada gambar :
Pada robot tikus ini menggunakan pengolahan citra untuk melakukan scanning area pada
daerah labirin guna menyimpan data node serta cost yang telah ditentukan. Melakukan scanning
area secara langsung melalui pengolahan citra labirin pada komputer yang tentunya memiliki
proses lebih cepat. Dengan mengambil citra dari area labirin, melakukan pengolahan citra
tersebut pada Personal Computer (PC) sehingga data-data bobot yang diperlukan untuk
penyelesaian rute terpendek dapat diketahui, dan mengirim data-data tersebut ke Robot Tikus.
Setelah data pengolahan citra oleh komputer diterima, diharapkan Robot Tikus mengetahui jalur
terpendek dari titik start ke finish tanpa melakukan scanning area pada lintasan labirin.
h
Ultrasonik, sering digunakan untuk keperluan mengukur jarak sebuah benda atau untuk
mendeteksi rintangan. Teknik mengukur menggunakan ultrasonic ini meniru cara yang
digunakan kelelawar atau lumba-lumba yang secara alami menggunakan sonar (sound navigation
and ranging) untuk keperluan mengukur jarak dan navigasi. Sensor ultrasonik merupakan sensor
yang digunakan untuk mendeteksi halangan yang akan dilewati oleh mobile robot tikus. Sensor
ultrasonic yang digunakan dalam pembuatan mobile robot tikus ini adalah sensor PING yang
berjumlah 3 buah. Dimana 1 buah sensor berfungsi sebagai sensor kiri, 1 buah untuk sebagai
sensor tengah dan 1 buah sensor berfungsi sebagai sensor kanan. Inputan sensor ultrasonic akan
dihubungkan ke pin digital yang ada pada Arduino mobile robot.
Arduino Uno adalah papan mikrokontroler yang berbasiskan ATmega328. Arduino jenis
ini memiliki 14 pin input/output digital (dengan 6 di antaranya bisa digunakan sebagai output
PWM), 6 analog input, ceramic resonator 16 MHz, koneksi USB, sambungan untuk power
supply, header ICSP, dan tombol reset. Untuk menghidupkannya, mikrokontroler ini bisa
disambungkan ke komputer menggunakan koneksi USB, menggunakan adaptor AC-DC, atau
baterai.
2. 7 Labirin
Labirin merupakan tempat yg penuh dengan jalan dan lorong yg berliku-liku dan
simpang siur dan dipisahkan oleh tembok dengan lebar yang sama. Labirin sering kali
dijadikan tantangan dalam permainan seperti puzzle, dimana terdapat objek dalam posisi
awal harus menemukan jalan keluar pada posisi yang ditentukan. Berikut sketsa gambar labirin :
Gambar Sketsagsddc Labirin
BAB III
METODOLOGI PENELITIAN
3.1 Blok Diagram Sistem dan Cara Kerja Blok
Setelah robot tikus melakukan scanning area untuk mendapatkan data-data bobot sebagai
input algoritma pencari jalur terpendek dengan cara melalui semua jalan di dalam lintasan labirin
tersebut, maka output langkah ketiga dari system ini yaitu penelusuran rute terpendek di suatu
labirin pada robot tikus menggunakan algoritma djikstra.
k
Gambar Graph
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
0 0 3 ∞ 10 6 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
1 3 0 1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
2 ∞ 1 0 ∞ 4 2 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
3 10 ∞ ∞ 0 ∞ ∞ 3 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
4 6 ∞ 4 ∞ 0 9 ∞ 7 ∞ ∞ ∞ ∞ ∞ ∞ ∞
5 ∞ ∞ 2 ∞ 9 0 ∞ 4 ∞ ∞ ∞ ∞ ∞ ∞ ∞
6 ∞ ∞ ∞ 3 ∞ ∞ 0 ∞ ∞ 5 ∞ ∞ ∞ ∞ ∞
7 ∞ ∞ ∞ ∞ 7 4 ∞ 0 ∞ 6 1 ∞ ∞ ∞ ∞
8 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ 4 2 ∞ ∞ ∞
9 ∞ ∞ ∞ ∞ ∞ ∞ 5 6 ∞ 0 7 ∞ 6 ∞ ∞
10 ∞ ∞ ∞ ∞ ∞ ∞ ∞ 1 4 7 0 8 ∞ 5 ∞
11 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 2 ∞ 8 0 ∞ ∞ 3
12 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 6 ∞ ∞ 0 11 ∞
13 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 5 ∞ 11 0 2
14 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 3 ∞ 2 0
Tabel Matrix Adjecancy
k
Perhitungan cost pada robot tikus menggunakan algoritma djikstra di suatu labirin
langkah pertama yaitu menscanning area di suatu labirin untuk mendapatkan data setiap
node beserta cost atau jarak antar node dengan melalui semua jalan. Cost atau jarak yang
terpendek yang akan dipilih dan dilalui oleh robot tikus. Contoh pada graph kita
menentukan start pada node 0 dan goal pada node 14. Maka jarak terpendek yang akan
dilalui yaitu 0 – 1 – 2 – 5 – 7 – 10 – 13 – 14 dengan cost sebesar 18.
BAB IV
HASIL DAN ANALISA
4.1 Hasil Perhitungan Manual
Start = 0; goal = 14
Cost dari 0 ke 14 yaitu 18
Rute yang dilalui = 0 -> 1 -> 2 -> 5 -> 7 -> 10 -> 13 -> 14
o
void init(){
for(int i=0;i<n;i++){
parent[i]=i;
dist[i]=INF;
}
dist[src]=0;
}
int getNearest(){
int minvalue = INF;
int minnode = 0;
for(int i=0; i < n; i++){
if( !visited[i] && dist[i] < minvalue){
minvalue = dist[i];
minnode = i;
}
}
return minnode;
}
void dijkstra(){
for(int i=0;i<n;i++){
int nearest = getNearest();
visited[nearest] = true;
void display(){
cout<<"\nGoal :\t\t\tCost :\t\t\tJalur";
cout<<i<<" ";
int parnode = parent[i];
while(parnode!=src){
cout<<" <- " << parnode<<" ";
parnode = parent[parnode];
}
cout<<endl;
}
int main(void) {
cout<<"Jumlah Node : ";
cin>>n ;
for(int i = 0 ;i < n ; i++){
for(int j = 0 ; j< n ; j++){
cin>>cost[i][j] ;
}
}
cout<<"\nMasukan Start : ";
cin>>src ;
init();
dijkstra() ;
display();
}
Algoritma Djikstra dapat digunakan sebagai pemandu gerak robot tikus karena algoritma
Djikstra beroperasi secara tidak menyeluruh terhadap semua alternative fungsi yang ada,
sehingga lintasan terpendek tidak hanya diperoleh dari node sumber ke node tujuan saja,
akan tetapi lintasan terpendek dapat diperoleh dari semua kemungkinan node yang ada.
Prinsip kerja dari robot tikus yaitu mobile robot yang digunakan untuk menyelesaikan
lintasan berupa labirin, sehingga robot bisa menemukan tempat yang dituju dengan rute
dengan jarak yang terpendek. menggunakan algoritma Dijkstra. Untuk menyelesaikan
lintasan labirin dari start ke goal, robot tikus harus melakukan scanning area terlebih
dahulu secara langsung untuk mendapatkan data-data bobot sebagai input algoritma
pencari jalur terpendek dengan cara melalui semua jalan di dalam lintasan labirin
tersebut, lalu kembali ke titik awal kemudian mencari titik keluar dengan jarak terpendek.
Aplikasi pada PC dapat melakukan pengolahan citra labirin sehingga pada dinding labirin
berwarna hitam dan pada lintasan berwarna putih. Aplikasi juga dapat mendeteksi adanya
nodes dan jumlah nodes yang terdeteksi oleh aplikasi pada PC sesuai dengan perhitungan
nodes secara manual jika pada semua lintasan memiliki lebar yang sama. Aplikasi akan
mengalami error dalam pencarian nodes jika terdapat lintasan yang memiliki lebar tidak
sama.
Dari hasil perhitungan manual dan hasil running program didapatkan hasil yang sama
untuk mencari rute terpendek pada sebuah labirin pada start node 0 dan goal node 14,
maka jarak terpendek yang akan dilalui yaitu 0 – 1 – 2 – 5 – 7 – 10 – 13 – 14 dengan cost
sebesar 18. Dengan demikian robot tikus akan melewati rute node tersebut.
5.2 Saran
Penulis menyadari bahwa laporan Tugas Besar ini masih jauh dari sempurna karena
terbatasnya pengalaman penulis. Untuk itu segala saran dan kritik yang membagun akan sangat
penulis terima dengan kerendahan hati.
DAFTAR PUSTAKA
Finsa Ferdiansyah. 2013, Perbandingan Algoritma Djikstra Dan Algoritma Ant Colony Dalam
Penentuan Jalut Terpendek. Jurnal Jurusan teknik elektro Konsentrasi Rekayasa Komputer
Fakultas Teknik, Universitas Brawijaya.
Mishra, Swati. Maze Solving Algorithm for Micromouse. IEEE International Conference on
Signal Image Technology and internet Based Systems :2008.
Nateshmbat, 2020. Dijkstra Algorithm for finding shortest path to all vertices from a single
source URL : https://gist.github.com/nateshmbhat/1a79daa00a148e44ad79c3e338977440#file-
dijkstra_algorithm-cpp. Diakses pada tanggal 11 Mei 2020, pukul 09.00 WIB.
Rusmini. 2011. Pencarian Rute Terpendek Untuk Robot Micromouse Dengan Menggunakan
Algoritma.Backtracking.URL.:http://repo.eepisits.edu/1459/1/[A
%2DD206%2D9]_pp.41%2D48_Pencarian_Rute_Terpendek_Untuk_Robot_Micr
omouse_Dengan.pdf. Diakses pada tanggal 11 Mei 2020, pukul 15.30 WIB.
Basuki, A., Palandi, J.F. 2005. Pengolahan Citra Digital Menggunakan Visual Basic.Jogjakarta:
Graha Ilmu.
LAMPIRAN
A. Lampiran Perhitungan Manual
k
C. Lampiran PPT
Di file PPT.
l
D. Pembagian Pengerjaan Tugas Besar