Pemikiran heuristic tidak perlu berjalan dalam cara yang langsung. Pemikiran ini meliputi pencarian, pembelajaran, evaluasi, penilaian, dan kemudian pencarian
ulang, pembelajaran ulang, dan penilaian ulang saat terjadi eksplorasi dan pembuktian. Pengetahuan yang didapatkan dari kesuksesan atau kegagalan pada saat
yang sama merupakan umpan balik dan memodifikasi proses pencarian. Biasanya tujuan atau masalah atau pemecahan yang terkait atau masalah yang disederhanakan
perlu ditentukan kembali sebelum masalah utama dapat dipecahkan Turban et al, 2005.
2.3. Algoritma A
Secara umum, pencarian jalur terpendek dapat dibagi menjadi dua metode yaitu metode algoritma konvensional dan algoritma heuristic. Metode algoritma
konvensional diterapkan dengan cara perhitungan matematis biasa, sedangkan metode algoritma heuristic diterapkan dengan perhitungan kecerdasan buatan dengan
menentukan basis pengetahuan dan perhitungannya Mutakhiroh et al, 2007.
Metode algoritma heuristic dapat menyelesaikan masalah pencarian jalur terpendek dengan hasil yang lebih variatif dan dengan waktu perhitungan yang lebih
singkat. Pada metode algoritma konvensional, logika yang dipakai hanya dengan membandingkan jarak masing-masing simpul dan kemudian mencari jarak yang
terpendek. Namun, kelemahan metode algoritma konvensional pada keakuratan hasil yang didapatkan serta tingkat kesalahan yang dihasilkan pada perhitungan. Hal
tersebut tidak akan menjadi masalah jika data yang dibutuhkan hanya sedikit, sebaliknya maka akan menyebabkan peningkatan tingkat kesalahan perhitungan dan
penurunan keakuratan. Secara konsep algoritma, metode algoritma konvensional lebih mudah untuk dipahami, tetapi hasil yang diperoleh dari metode algoritma heuristic
lebih variatif.
Di dalam mempelajari tingkah laku suatu heuristic tidak hanya dibutuhkan solusi, tetapi juga membutuhkan algoritma untuk mendapatkan jalur atau lintasan
Universitas Sumatera Utara
terpendek untuk mencapai data yang diinginkan goal. Hal ini adalah penting jika sebuah aplikasi mempunyai biaya tinggi untuk langkah-langkah solusi ekstranya,
seperti misalnya merencanakan sebuah jalur untuk sebuah robot autonomous pada sebuah lingkungan yang berbahaya. Heuristic yang menemukan lintasan terpendek
kapan saja dan di mana berada disebut admissible. Suatu algoritma pencarian disebut admissible jika algoritma tersebut terjamin dalam hal pencarian jalur yang minimal
pada suatu solusi di manapun jalur tersebut berada Kristanto, 2004.
Salah satu metode algoritma heuristic yang digunakan untuk melakukan pencarian jalur terpendek adalah algoritma A. A admissible heuristic adalah
strategi best first search yang menggunakan estimasi solusi biaya terkecil untuk mencapai suatu tujuan dengan jarak tempuh terdekat dan memiliki nilai heuristic yang
digunakan sebagai dasar pertimbangan Seminar Nasional Sains dan Teknologi-II, 2008. Algoritma A menghasilkan jalur optimal mulai dari tempat awal kemudian
melalui simpul menuju tempat yang dituju.
Notasi yang dipakai oleh algoritma A adalah:
fn = gn + hn 2.4
Dalam notasi standar yang dipakai untuk algoritma A di atas, digunakan gn untuk mewakili biaya rute dari simpul awal ke simpul n. Lalu hn mewakili perkiraan
biaya dari simpul n ke simpul tujuan, yang dihitung dengan fungsi heuristic. A ‘menyeimbangkan’ kedua nilai ini dalam mencari jalan dari simpul awal ke simpul
tujuan. Dalam menentukan simpul yang akan dikembangkan, algoritma ini akan memilih simpul dengan nilai fn = gn + hn yang paling kecil Adipranata et al,
2007.
Beberapa terminologi dasar yang terdapat pada algoritma A Viktor et al, 2010 adalah:
a. starting point merupakan terminologi untuk posisi awal sebuah benda.
Universitas Sumatera Utara
b. simpul nodes merupakan petak-petak kecil sebagai representasi dari
pathfinding. Bentuknya dapat berupa persegi, lingkaran, maupun segitiga. c.
A merupakan simpul yang sedang dijalankan dalam algoritma pencarian jalan terependek.
d. open list merupakan tempat menyimpan data simpul yang mungkin diakses
dari starting point maupun simpul yang sedang dijalankan. e.
closed list merupakan tempat menyimpan data simpul sebelum A yang juga merupakan bagian dari jalur terpendek yang telah berhasil didapatkan.
f. harga cost merupakan nilai dari fn.
g. halangan unwalkable merupakan sebuah atribut yang menyatakan bahwa
sebuah simpul tidak dapat dilalui oleh A.
Berikut ini adalah algoritma A Pearl, 1984:
1. Letakkan simpul awal s pada OPEN.
2. Jika OPEN kosong, pencarian berakhir.
3. Pindahkan simpul n yang memiliki nilai f minimum dari OPEN ke CLOSED.
4. Jika n adalah simpul tujuan, pencarian berhasil dan berakhir dengan
menelusuri kembali pointer dari n sampai s. 5.
Ekspansikan n, bangkitkan semua successor dari simpul n, dan tambahkan ke pointer tersebut kembali ke n. Untuk setiap successor n’ dari simpul n:
a. Jika n’ tidak ada pada OPEN atau CLOSED, estimasi hn’ sebuah
perkiraan dari biaya perjalanan terbaik dari n’ ke beberapa simpul tujuan, dan hitung fn’ = gn’ + hn’ dimana gn’ = gn + cn, n’ dan gs =
0. b.
Jika n’ sudah berada pada OPEN atau CLOSED, letakkan pointer perjalanan pada hasil gn’ yang terendah.
c. Jika n’ membutuhkan penyesuaian pointer dan ditemukan pada CLOSED,
buka kembali n’. 6.
Kembali ke langkah 2.
Universitas Sumatera Utara
2.4. Delphi 7.0