Algoritma Backtracking Analisis Algoritma

3.2 Analisis Algoritma

Penulis akan menganalisa Algoritma Backtracking secara Manual sebelum di implementasikan ke dalam Robot Line Maze Solving.

3.2.1 Algoritma Backtracking

Algoritma backtracking pertama kali diperkenalkan oleh D.H. Lehmer pada tahun 1950. Dalam perkembangannya beberapa ahli seperti RJ Walker, Golomb, dan Baumert menyajikan uraian umum tentang backtracking dan penerapannya dalam berbagai persoalan dan aplikasi. Algoritma backtracking runut balik merupakan salah satu metode pemecahan masalah yang termasuk dalam strategi yang berbasis pencarian pada ruang status. Algoritma backtracking bekerja secara rekursif dan melakukan pencarian solusi persoalan secara sistematis pada semua kemungkinan solusi yang ada Aho, Hopcroft, dan Ullman, 1983. Algoritma backtrack runut balik merupakan salah satu metode pemecahan masalah yang termasuk dalam strategi yang berbasis pencarian pada ruang status. Algoritma backtrack bekerja secara rekursif dan melakukan pencarian solusi persoalan secara sistematis pada semua kemungkinan solusi yang ada. Oleh karena algoritma ini berbasis pada algoritma Depth-First Search DFS, maka pencarian solusi dilakukan dengan menelusuri suatu struktur berbentuk pohon berakar secara preorder . Proses ini dicirikan dengan ekspansi simpul terdalam lebih dahulu sampai tidak ditemukan lagi suksesor dari suatu simpul . Berikut ini adalah langkah-langkah penyelesaian line maze solving Menggunakan Algoritma Backtracking : 1. Prioritas Belokan adalah Belok kiri Left 2. Kemudian, petakan jalur keluar Solusi dengan aturan Persimpangan Sebagai berikut : 3. Jika Simpang 1,3,4,5 terdeteksi, maka robot akan belok kiri. Jika simpang 2,6 terdeteksi maka robot akan belok kanan. Jika simpang 8 terdeteksi robot akan kembali. Dan jika simpang 7 terdeteksi maka robot berhenti dan memetakan solusi. 4. Setelah solusi dipetakan, lakukan aturan algoritma backtracking untuk mendapatkan shortest-pathnya. Berikut ini adalah aturan-aturan dalam backtracking : LBR = B LBS = R RBL = B SBL = R SBS = B LBL = S 1 3 2 4 5 6 7 8 5. Tukar setiap kode yang telah dipetakan, jika terdapat kode yang sama pada aturan backtracking. Tujuannya adalah untuk menyederhanakan track. 6. Jika tidak ditemukan lagi kode yang sama dengan aturan algoritma backtracking ambil kode track tesebut sebgai solusi jalur terpendek penyelesaian line maze. Berikut ini pengaplikasian nya secara manual : Gambar 3.1 Penerapan Algoritma Backtracking pada Labirin Garis Keterangan : L = Left R = Right B = Back S = Skip Setelah mencapai Finish, kemudian akan dipetakan solusi sbb : SLSLSRSBSLSLSBSLSLS Kemudian sederhanakan dengan menggunakan aturan rule Algoritma Backtracking sbb: LBR = B LBS = R RBL = B SBL = R SBS = B LBL = S Reg 0 = SLSLSRSBSLSLSBS Reg 1 = SLSLS LSLS RBL SLBL Reg2 = SLSL SLS SBS Reg3 = SLS SSLS LBS Reg4 = SLSRSLS SOLUSI SLS Jadi, berikut ini adalah Shortest-Pathnya berdasarkan solusi diatas : Gambar 3.2 Shortest way Robot Line Maze Solving

3.3 Flowchart Algoritma