PENDAHULUAN
1.1 LATAR BELAKANG
Saat ini, di kota-kota besar khususnya, banyak jalur-jalur umum yang tersedia dari satu
tempat ketempat lain. Kita sebagai pengguna tentu saja selektif dalam memilih jalur yang
pendek dan efisien, tidak berliku-liku, menghemat waktu, dan menghemat ongkos
tentunya. Algoritma SMA* ini merupakan algoritma pencarian yang dapat digunakan
untuk mencari solusi yang dapat mendekati permasalahan tersebut, apalagi dengan
banyaknya rute-rute yang berbeda-beda. Akan banyak sekali alternatif jalan dari tempat
asal (initial state) menuju tempat tujuan (goal state).
BAB II
PEMBAHASAN
2.1 Pengertian Algoritma SMA*
Untuk masalah tertentu dimana memori computer terbatas, algoritma A* mungkin
tidak mampu menemukan solusi karena sudah tidak tersedia lagi memori untuk
menyimpan simpul-simpul yang di bangkitkan.
Simplified Memory Bounded A* (SMA*) merupakan pengembangan dari algoritma
A*. Algoritma SMA* merupakan penggabungan dari algoritma greedy sort yang
meminimalisir perkiraan pencarian harga dan uniform cost search yang meminimalisir
harga sampai selesai. Algoritma SMA* bersifat admissible yang berarti apabila solusi ada,
solusi yang ditemukan pertama adalah solusi yang optimal. Simplified Memory Bounded
ini dikembangkan karena algoritma A* menggunakan banyak memory sehingga
menghabiskan memory untuk pencarian. Algoritma ini menjalankan best first search
selama memory masih tersedia, apabila memory penuh maka node dengan nilai terburuk
dihapus
dari
memory,
namun
nilai
terbaik
disimpan
pada
node
atasnya.
Algoritma SMA* mengingat f-cost , dari setiap iterasi sampai sejumlah simpul yang
ada didalam memori. Karena batasan memori dalam jumlah tertentu, maka kita dapat
mengatasi pencarian hanya sampai simpul-simpul yang dapat dicapai dari root sepanjang
jalur yang memorinya masih mencukupi. Kemudian mengembalikan rute terbaik diantara
rute-rute yang ada dalam batasan simpul tersebut. Jika computer hanya mampu
menyimpan 100 simpul, maka kita bisa membatasi proses pencarian sampai level 99.
pencarian kesuksesor yang lenih kecl, sebelumnya menhapus suksesor yang lebih
besar tersebar.
3. Jika menemukan state dilevel yang lebih dangkal, dan mempunyai f-cost lebih besar,
maka state tersebut juga harus dihapus.
2.3 Contoh Kasus dengan Algoritma SMA*
Misalkan memory komputer hanya mampu menyimpan 6 simpul. Oleh karena itu, level
maksimum yang dapat di jangkau oleh SMA* adalah level 5.
Simpul A merupakan state awal, dan simpul O merupakan goal atau tujuan.
Langkah 1.
Langkah 2.
Ket :
Suksesor yang dibuka adalah simpul B, C, E. kemudian mencari nilai f-cost dari masingmasing simpul yang dibuka. Nilai f-cost terkecil adalah 70 (simpul E). Menggantikan nilai fcost pada n(simpul A) dengan nilai f-cost terkecil dari nilai-nilai f-cost yang ada pada semua
suksesor.
Langkah 3.
Ket : membuka suksesor dari E yaitu simpul I dan G. Mencari nilai f-cost I dan G, selanjutnya
menggantikan nilai f-cost pada n dengan nilai f-cost terkecil.
Nilai f-cost terkecil adalah 85 (simpul C).
Langkah 4.
Ket : membangkitkan suksesor dari simpul C yaitu F. Pada langkah ini simpul I dihapus dari
memory karena mempunyai f-cost terbesar dan karena maksimum simpul yang dibuka hanya
5. F-cost terkecilnya yaitu 90(simpul F).
Langkah 5.
Ket: membangkitkan suksesor dari simpul F yaitu H dan I. Pada langkah ini juga simpul G dan
simpul E dihapus karena memiliki nilai f-cost terbesar dan karena melebihi kapasitas memory
yaitu 5 simpul. F-cost terkecil 110 .
Langkah 6.
Ket: membangkitkan suksesor dari B yaitu D, simpul H dihapus. kemudian mencari nilai f-cost
dari simpul D sehingga f-cost dari simpul D adalah 145. f-cost terkecil adalah 137 (simpul I).
F-cost menggantikan nilai f-cost pada Simpul A.
Langkah 7
Ket: membangkitkan suksesor dari I yaitu K dan J, simpul B dan D dihapus. kemudian mencari
nilai f-cost dari simpul K dan J sehingga f-cost dari simpul K adalah 137, dan f-cost dari simpul
J adalah 142. f-cost terkecil adalah 137 (simpul K). F-cost menggantikan nilai f-cost pada
parentnya.
Langkah 8
Solusi
Dari pemecahan kasus diatas untuk SMA*, pencarian yang dilakukan sudah optimal
dan komplit. Algoritma SMA*.membatasi memori yang digunakan dalam jumlah tertentu,
karena itu kita dapat membatasi pencarian hanya sampai pada node tertentu sepanjang memori
yang disediakan masih cukup.
Pencarian SMA* bisa dikatakan komplit dan optimal jika solusinya berada di bawah
level x,dimana x didapat dari
memori,dikurangi 1.
BAB III
PENUTUP
KESIMPULAN
Untuk SMA*, pencarian yang dilakukan sudah optimal dan komplit. Algoritma
SMA*.membatasi memori yang digunakan dalam jumlah tertentu, karena itu kita dapat
membatasi pencarian hanya sampai pada node tertentu sepanjang memori yang disediakan
masih cukup. Pencarian SMA* bisa dikatakan komplit dan optimal jika solusinya berada di
bawah level x,dimana x didapat dari jumlah maksimum simpul yang bisa disimpan di
memori,dikurangi 1.