Anda di halaman 1dari 21

MAKALAH KECERDASAN BUATAN

METODE PENCARIAN BUTA ( BLIND SEARCH )


DAN PENCARIAN HEURISTIK

Disusun oleh :

Veri Sri Mulyono C.411.17.0041

S1 TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SEMARANG SEMARANG
2020
DAFTAR ISI
KATA PENGANTAR

BAB I PENDAHULUAN
1.1 Latar Belakang
1.2 Batasan Masalah
1.3 Tujuan
1.4 Metodologi Penulisan

BAB II PEMBAHASAN
2.1 Pencarian Buta
2.2 Pencarian Heuristik
2.3 Kanibal
2.4 Menara Hanoi
2.5 Sudoku

BAB III PENUTUP


3.1 Kesimpulan

DAFTAR PUSTAKA
KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Esa karena berkat dan rahmatnya,
penulis dapat menyusun dan menyajikan makalah “ Kecerdasan Buatan – Metode
Pencarian Buta (Blind Search) Dan Pencarian Heuristik ”. Penulis juga
mengucapkan terima kasih kepada dosen mata kuliah kecerdasan buatan yang telah
memberikan bimbingannya dalam proses penyusunan makalah ini. Tak lupa penulis
mengucapkan terima kasih kepada berbagai pihak yang telah memberikan dorongan
dan motivasi.

Penulis menyadari bahwa dalam penyusunan makalah ini masih terdapat


banyak kekurangan dan jauh dari kesempurnaan. Oleh karena itu, penulis
mengharapkan kritik serta saran yang membangun guna menyempurnakan makalah ini
dan dapat menjadi acuan dalam menyusun makalah-makalah atau tugas-tugas
selanjutnya.

Penulis juga memohon maaf apabila dalam penulisan makalah ini terdapat
kesalahan pengetikan dan kekeliruan sehingga membingungkan pembaca dalam
memahami maksud penulis.

Semarang, 20 Oktober 2020

Veri Sri Mulyono


BAB I PENDAHULUAN

1.1 Latar Belakang


Kecerdasan buatan ( artificial intelligence) merupakan salah satu bagian dari ilmu
computer yang mempelajari bagaiman membuat mesin dapat melakukan pekerjaan
seperti dan sebaik yang dilakukan oleh manusia bahkan lebih baik daripada yang
manusia lakukan.

Menurut John McCarthy, 1956, AI : untuk mengetahui dan memodelkan proses


proses berpikir manusia dan mendesain mesin agar dapat menirukan perilaku manusia.
Cerdas berarti memiliki pengetahuan ditambah pengalaman, penalaran, dan moral yang
baik.

Kecerdasan buatan tak lepas dari penggunaan metode pencarian sebagai


penggerak sistemnya. Dalam penggunaannya metode pencarian yang digunakan dapat
berupa metode pencarian buta (blind search) dan metode pencarian heuristic. Metode
pencarian buta salah satunya menggunakan Depth First Searh, sedangkan untuk
pencarian Heuristik menggunakan generate and test, hill climbing, best first search dan
stimulated annealing.

Penggunaan metode pencarian, dapat diimplementasikan dalam game logika.


Game adalah sebuah permainan yang mengasah logika pemainnya. Pencarian Buta dan
pencarian heuristic dapat di gunakan dalam penyelesaian permasalahan game Menara
honai, sudoku dan kanibal.
1.2 Batasan Masalah
Batasan Masalah ini meliputi :
a. Penjelaskan tentang metode pencarian buta dan pencarian heuristic
b. Penjelaskan tentang kasus teka teki Menara Hanoi, sudoku dan kanibal

1.3 Tujuan
Tujuan dibuatnya makalah ini adalah :
a. Mahasiswa mampu memahami tentang metode oencarian buta (blind
search) dan pencarian heuristic
b. Mahasiswa mampu menganalisa metode yang digunakan dalam kasus
teka teki Menara Hanoi, sudoku dan kanibal

1.4 Metodologi Penulisan


Metode yang digunakan dalam penulisan makalah ini adalah :
a Metode Studi Pustaka
Metode ini dilakukan dengan cara pencarian referensi melalui buku,
makalah, jurnal ilmiah dan post terkait dari internet.
BAB II PEMBAHASAN

2.1 Pencarain Buta (Blind Search)


Blind Search atau Uninformed Search secara umum mengartikan bahwa saat
proses pencarian kita tidak memiliki clue/hint apakah hasil yang ditemukan lebih baik
daripada yang lainnya, sehingga kita tidak mengetahui apakah hasil dari eksplorasi
tersebut bermanfaat secara maksimal atau tidak.

Search Space (ruang pencarian) dieksplorasi tanpa memanfaatkan apapuun


informasi yang menyangkut pada masalah maka dari itu digunakan istilah blind search
atau naive search, dan karena metode ini masih sangat umum maka hasil yang didapat
secara instrinsik kurang efisien. Strategi yang terdapat pada blind search :

Breadth-First Search (BFS)


BFS dimulai dari akar node (root) lalu mengeksplor ke seluruh cabang (branch)
dalam level yang sama.

• BFS dikatakan komplit/selesai jika terdapat solusi dan BFS menemukannya.


• BFS dikatakan optimal jika solusi yang didapat dapat dipastikan menjadi jalur
terpendek (shortest path).
• Algoritma dapat diimplementasikan dengan First In First Out (FIFO) stack.

DEPTH-FIRST SEARCH (DFS)


Depth-First Search melakukan eksplorasi dimulai root node (akar) lalu ke
cabang pertama (dimulai dari paling kiri) sampai ke kedalaman maksimum , setelah itu
baru dilakukan eksplorasi ke cabang lainnya, dan terus dilakukan sampai menemukan
state goal.
Jika telah mencapai node yang terdalam namun tidak juga ditemukan solusi, maka akan
mundur sampai menemukan cabang yang belum dieksplorasi. Tree dilakukan
pencarian dengan top-to-bottom, left-to-right. Depth-First Search dikatakan tidak
komplit:

Jika siklus yang disajikan dalam graf lalu DFS melakukan eksplorasi terhadap siklus
berulang(tidak ada batas). Jika tidak terdapat siklus, maka algoritma komplit. Efek
siklus dapat dibatasi dengan memaksakan kedalaman pencarian yang maksimal(namun
algoritma tetap tidak komplit).

2.2 Pencarian Heuristik


Heuristic search adalah suatu istilah yang berasal dari bahasa Yunani yang berarti
menemukan/ menyingkap. Heuristik adalah suatu perbuatan yang membantu kita
menemukan jalan dalam pohon pelacakan yang menuntut kita kepada suatu solusi
masalah. Heuristik dapat diartikan juga sebagai suatu kaidah yang merupakan metoda/
prosedur yang didasarkan kepada pengalaman dan praktek, syarat, trik atau bantuan
lainnya yang membantu mempersempit dan memfokuskan proses pelacakan kepada
suatu tujuan tertentu.

George Poyla (dalam Kristanto. A, 2003) mendefinisikan heuristik sebagai ”studi


tentang sebuah metode dan aturan discovery serta invention” dalam pencarian state
space, heuristik didefinisikan sebagai aturan untuk memilih cabang-cabang dalam
ruang keadaan yang paling tepat untuk mencapai solusi permasalahan yang dapat
diterima .
Pemecahan masalah AI menggunakan heuristik dalam dua situasi dasar (Setiawan.
S, 1993), yaitu :
a. Permasalahan yang mungkin tidak mempunyai solusi yang pasti disebabkan yang
baik secara relatif, di lain waktu sebuah nilai rendah mengindikasikan sebuah
situasi yang menguntungkan. Program yang menggunakan nilai (value) dari fungsi
dapat mengusahakan minimal atau maksimal secara tepat. oleh ambiguitas
(keraguan/ketidakpastian) mendasar dalam pernyataan
b. Permasalahan yang boleh jadi memiliki solusi pasti, tetapi biaya komputasinya
untuk mendapatkan solusi tersebut mungkin sangat tinggi. Dalam banyak
problema (misalnya saja catur), pertumbuhan state space adalah secara
kombinatorial eksplosif dengan bayak state yang mungkin meningkat secara
eksponensial atau faktorial dengan kedalaman pencarian. Dalam hal ini,
exhaustive, yakni teknik pencarian brute force seperti pencarian mendalam
pertama dan pencarian meluas pertama mungkin gagal menemukan solusi
sehingga heuristik akan menangani kerumitan permasalahan ini dengan panduan
pencarian pada sepanjang lintasan yang memeberi harapan melewati state.
Dengan mengeliminasi state yang tidak memberi harapan dan turunannya dari
ruang tersebut maka algoritma heuristik dapat mengalahkan ledakan kombinatorial
dan menemukan penyelesaian yang dapat diterima.

Pencarian terbimbing (heuristic search) dibutuhkan karena pencarian buta (blind


search) tidak selalu dapat diterapkan dengan baik, hal ini disebabkan waktu aksesnya
yang cukup lama serta besarnya memori yang diperlukan. Dalam pencarian ruang
keadaan, heuristik dinyatakan sebagai aturan untuk melakukan pemilihan cabang-
cabang dalam ruang keadaan yang paling tepat untuk mencapai solusi permasalahan
yang dapat diterima.

Heuristik dapat digunakan pada beberapa kondisi berikut ini (Siswanto, 2010):
· Mengatasi combinatorial explosion. Ada masalah yang kemungkinan arah
penyelesaiannya berkembang pesat (bersifat faktorial) sehingga
menimbulkan combinatorial explosion. Heuristik merupakan cara untuk menentukan
kemungkinan arah penyelesaian masalah secara efisien.
·
Solusi paling optimal mungkin tidak diperlukan.Dalam suatu keadaan,
mungkin lebih baik mendapatkan solusi yang mendekati optimal dalam waktu yang
singkat daripada solusi yang paling optimal dalam waktu yang lama.
·
Pada umumnya hasilnya cukup baik. Sekalipun tidak optimal, tetapi biasanya
mendekati optimal. Membantu pemahaman bagi orang yang menyelesaikan persoalan.
· Banyak alternatif heuristik yang dapat diterapkan dalam suatu percobaan.
Orang yang menyelesaikan persoalan tersebut akan lebih mengerti persoalannya jika
mencoba heuristik yang diterapkannya.

Salah satu contoh dari heuristik yang baik untuk tujuan umum yang berguna
untuk beragam kombinasi permasalahan adalah the nearest neighbour heuristic, yang
bekerja dengan cara menyeleksi alternatif yang paling tinggi secara lokal pada setiap
langkahnya.

Fungsi heuristik yang dirancang dengan baik dapat berperan dalam sebuah
bagian yang penting untuk memandu secara efisien proses pencarian menuju ke
sebuah solusi. Kadang kala sebuah nilai tinggi dari fungsi heuristik mengindikasikan
sebuah posisi.

Tujuan dari sebuah fungsi heuristik adalah untuk memandu proses pencarian
tujuan yang menguntungkan dengan menganjurkan jalur yang mana yang diikuti
pertama kali ketika tersedia lebih dari satu tujuan. Setelah proses berlangsung, akan
bisa dihitung sebuah fungsi heuristik yang sempurna dengan cara melakukan sebuah
pencarian yang lengkap dari simpul dalam pertanyaan dan menentukan apakah fungsi
ini menuju ke sebuah solusi yang baik.

Sayangnya, seperti semua kaidah penemuan lainnya, heuristik juga dapat salah.
Heuristik hanyalah panduan informasi untuk menebak langkah berikutnya yang harus
diambil dalam menyelesaikan suatu permasalahan, dan sering dilakukan berdasarkan
eksperimen/ percobaan atau secara intuisi. Oleh karena menggunakan informasi yang
terbatas, heuristik jarang dapat memprediksi tingkah laku yang eksak dari ruang
keadaan saat dilakukan pencarian. Heuristik dapat membimbing algoritma pencarian
untuk mendapatkan solusi suboptimal atau gagal menemukan solusi apapun, karena
tidak ada solusi yang dapat menuju keadaan akhir.

Metode Heuristic Searching:


1. Generate and Test
2. Hill Climbing
a. Simple Hill Climbing
b. Steepest-Ascent Hill Climbing
3. Best-First Seacrh
a. Algoritma A*
4. Simulated Anneal
2.3 Kanibal
Teka teki Kanibal memiliki alur yang saat awal permainan, terdapat dua buah
daratan disebelah kanan dan kiri yang dipisahkan oleh sebuah sungai. Terdapat tiga
manusia dan tiga kanibal di sisi kanan sungai dan sebuah perahu atau boat di sisi kanan
sungai. Perahu tersebut hanya dapat mengangkut paling banyak dua penumpang dan
dikendalikan oleh salah satu penumpang di dalam perahu. Dan perahu hanya dapat
bergerak ke kanan atau kiri.Selain itu juga terdapat aturan bahwa jumlah manusia tidak
boleh lebih sedikit dari jumlah kanibal pada kedua sisinya. Jika jumlah manusia lebih
sedikit dari jumlah kanibal, maka kanibal akan memakan manusia dan game pun akan
berakhir.

Tujuan akhir dari permainan ini adalah memindahkan ketiga manusia dan
ketiga kanibal dari daratan sebelah kanan ke daratan sebelah kiri dengan selamat. Jadi
dibutuhkan perhitungan yang tepat agar jumlah manusia lebih banyak daripada jumlah
kanibal di setiap sisi atau jumlah manusia sama dengan jumlah kanibal di setiap sisi.

Berikut penjelasan singkat mengenai teknis permainan. Untuk


menaikkanmissionary atau cannibal, cukup mengkliknya maka missionary atau
cannibal akan otomatis masuk ke perahu. Begitu pula untuk mengeluarkannya dari
perahu tinggal mengklik missionary atau cannibal yang ada di dalam perahu. Untuk
menjalankan perahu, cukup mengklik tombol GO! Yang terletak kanan atas. Aturan
Permainan :
1. Ada tiga misionaris dan tiga kanibal yangharus menyebrang sungai.
2. Hanya disediakan satu perahu.
3. Perahu bisa berjalan jika ada minimalsatu orang atau satu kanibal (satupenumpang).
4. Perahu maksimum berisi dua (1kanibal/1 misionaris /2 kanibal /2misionaris)
5. Jumlah kanibal tidak boleh lebih banyakdari jumlah misionaris di salah satu
sisidaratan.
6. Jika jumlah kanibal lebih banyak darijumlah misionaris pada suatu sisi daratanmaka
kanibal akan memakan misionaris.
7. Pemain berhasil menyelesaikanpermainan jika semua misionaris dansemua kanibal
ada di sisi seberang yangmenjadi tujuan.

Dasar Aturan (Rule Base)


Untuk mencapai keadaan tujuan maka dibuatlah aturan-aturan yang dapat
memenuhi semua keadaan yang mungkin terjadi. Adapun aturan-aturan tersebut adalah
sebagai berikut.
Salah satu metode yang dapat dipakai dalam proses pemecahan
permasalahan pada permainan Missionaries dan Cannibals yaitu dengan menggunakan
metode DFS (Depth First Search) atau pencarian mendalam.

Depth First Search adalah algoritma pencariansolusi yang melakukan pencarian


pada graf ataupohon berakar secara mendalam dengan caramelakukan proses pencarian
dilakukan pada semua anaknya sebelum dilakukan pencarian ke node-node yang
selevel.

Solusi permasalahan untuk pemindahan seluruh Missionaries dan Cannibals


dari seberang kanan(asal) ke seberang kiri(tujuan) pada permainan Missionaries dan
Cannibals dengan metode DFS dapat dilihat pada table berikut ini
2.4 Menara Hanoi
Menara Hanoi adalah sebuah permainan matematis atau teka-teki. Teka-teki ini
ditemukan Eduard Lucas, ahli matematika Perancis di tahun 1883.

Permainan ini terdiri dari tiga tiang dan sejumlah cakram dengan ukuran berbeda-
beda yang bias dimasukkan ke tiang mana saja. Permainan Menara Hanoi dimulai
dengan cakram-cakram yang tertumpuk rapi dari cakram paling besar sampai ke
cakram paling terkecil dalam salah satu tiang, sehingga membentuk kerucut. Objektif
dari permainan Menara Hanoi adalah memindahkan tumpukan n buah cakram
berlubang dari tiang asal ke tiang tujuan dengan memanfaatkan sebuah tiang perantara.
Piringan berukuran tidak sama. Jumlah pemindahan dalam n buah cakram adalah
sebanyak 2n-1 kali.

Permainan Menara Hanoi memiliki beberapa aturan yang harus dipatuhi untuk
menyelesaikan teka-teki dalam melakukan pemindahan cakram harus mengikuti aturan
berikut:
a. Hanya satu cakram yang boleh dipindahkan dalam setiap kali perpindahan.
b. Setiap perpindahan berupa pengambilan cakram teratas dari satu tiang dan
memasukkannya ke tiang lain, di atas cakram lain yang mungkin sudah ada di
tiang tersebut.
c. Tidak boleh meletakkan cakram di atas cakram lain yang lebih kecil

Analisa dan Hasil


Puzzle Tower Hanoi merupakan salah satu persoalan klasik dalam bidang studi
Artificial Intelligence (AI). Penyelesaian permasalahan Menara Hanor menggunakan
Metode Heuristik. Problema ini dapat diilustrasikan seperti berikut, terdapat 3 atau
lebih cakram yang disusun sebagai kondisi awal (initial state). Sasaran (goal) dari kasus
ini adalah mendapatkan suatu tumpukan cakram yang sesuai dengan kondisi awal.
Operasi, aksi dan aturan yang terdapat di dalam kasus ini adalah:

1. Kondisi awal dari menara hanoi, terdapat 3 buah cakram yang diberi nama
C1,C2,C3, C1 merupakan cakram yang terbesar dan C3 merupakan cakram
yang paling kecil, berikut gambarnya
2. Pindahkan cakram merah dari tiang-1 ke tiang-3. Aturannya adalah cakram harus
merupakan balok paling atas dari tiang-1 dan cakram merah menempati posisi paling
atas pada tiang-3

3. Pindahkan cakram hitam dari tiang-1 ke tiang-2. Aturannya adalah cakram harus
merupakan cakram paling atas dari tiang-1 dan cakram hitam menempati posisi paling
atas pada tiang-2

4. Pindahkan cakram merah dari tiang-3 ke tiang-2. Aturannya adalah cakram merah
harus merupakan cakram paling atas dari tiang-3 dan cakram merah menempati posisi
paling atas pada tiang-2
5. Pindahkan cakram putih dari tiang-1 ke tiang-3. Aturannya adalah cakram putih
harus merupakan cakram paling atas dari tiang-1 dan cakram putih menempati posisi
paling atas pada tiang-3.

6. Pindahkan cakram merah dari tiang-2 ke tiang-1. Aturannya adalah cakram merah
harus merupakan cakram paling atas dari tiang-2 dan cakram merah menempati posisi
paling atas pada tiang-1

7. Pindahkan cakram hitam dari tiang-2 ke tiang-3. Aturannya adalah cakram hitam
harus merupakan cakram paling atas dari tiang-2 dan cakram hitam menempati posisi
paling atas pada tiang-3.

8. Pindahkan cakram merah dari tiang-1 ke tiang-3. Aturannya adalah cakram merah
harus merupakan cakram paling atas dari tiang-1 dan cakram merah menempati posisi
paling atas pada tiang-3.
Penulusuran

Pada gambar diatas, terlihat bahwa pencarian dimulai dari node akar yang berisi
problema. Pada node akar dilakukan beberapa operasi sehingga didapatkan keadaan-
keadaan baru.

Keadaan-keadaan baru ini direpresentasikan sebagai node anak dari node akar.
Selanjutnya hal yang sama dilakukan untuk node-node yang baru terbentuk hingga
ditemukan solusi.

2.5 Sudoku
Permainan Sudoku adalah permainan yang dapat melatih logika manusia dalam
berpikir cepat dan teliti. Permainan ini tidak bisa sembarang dimainkan, karena bila
bermain dengan sembarangan di awal permainan, tidak bisa menyelesaikan game ini.
Permasalahan puzzle Sudoku sulit untuk dipecahkan karena masuk dalam
permasalahan NP-complete, sehingga tidak bisa diselesaikan dalam waktu yang sama.
Hingga saat ini banyak programmer yang mencari algoritma yang tepat untuk
menyelesaikan puzzle ini.

Cara yang paling gampang adalah algoritma Brute Force yaitu dengan cara
mengenumerasikan semua kemungkinan isi sel dengan angka 1 sampai 9. Tetapi cara
ini tentu saja tidak tepat karena kemungkinannya akan sangat banyak sekali. Karena
itu algoritma ini diperbaiki dengan menambahkan batasan (constraints), yaitu tidak
boleh ada angka yang sama dalam satu baris, kolom atau subgrid. Cara ini bisa
mereduksi jumlah kemungkinan secara signifikan sehingga algoritma menjadi lebih
tepat. Untuk memecahkan teka-teki Sudoku, dapat digunakan algoritma backtracking
(runut-balik). Algoritma ini merupakan perbaikan dari algoritma Brute Force, dimana
solusi dapat ditemukan dengan penelusuran yang lebih sedikit dan dapat mencari solusi
permasalahan secara lebih efektif karena tidak perlu memeriksa semua kemungkinan
solusi yang ada. Hanya pencarian yang mengarah ke solusi saja yang perlu
dipertimbangkan.

Aturan permainan untuk puzzle ini sangat sederhana, untuk menyelesaikan


permainan ini tidak diperlukan pengetahuan umum, kepandaian atas bahasa tertentu,
juga kemampuan matematika. Tetapi hanya memerlukan kecermatan, kesabaran, dan
logika. Papan Sudoku terbuat dari sembilan buah kotak oiberukuran 3×3 (disebut blok/
subgrid) yang disusun sedemikian rupa sehingga menghasilkan kotak besar berukuran
9×9. Beberapa kotak sudah diisi sebagai petunjuk awal dan tugas pemain adalah
melengkapi angka-angka pada kotak yang lain sehingga keseluruhan papan permainan
terisi angka secara lengkap. Aturan permainannya sangatlah sederhana:

1. Kotak-kotak pada setiap baris, kolom, dan blok/ subgrid harus berisi sebuah angka.
2. Angka-angka yang diisikan harus unik dari 1 hingga 9 sehingga dalam 1 blok/
subgrid hanya terdiri atas angka 1-9 yang tidak berulang dan tidak ada angka yang
berulang dalam 1 baris maupun kolom.

Angka-angka ini sebenarnya tidak memiliki hubungan aritmetis satu sama lain.
Anda boleh menggantinya dengan 9 huruf, lambang, atau warna yang berbeda.
Algoritma Umum Backtracking
Algoritma backtracking adalah suatu algoritma yang merupakan perbaikan dari
algoritma brute force, secara sistematis mencari solusi persoalan di antara semua
kemungkinan solusi yang ada(6). Backtracking merupakan bentuk tipikal dari
algoritma rekursif dan berbasis pada DFS dalam mencari solusi yang tepat. Selain itu,
algoritma ini juga merupakan metode yang mencoba-coba beberapa keputusan sampai
kita menemukan salah satu yang ”berjalan”. Kita tidak perlu memeriksa semua
kemungkinan solusi yang ada, tetapi cukup yang mengarah kepada solusi saja. Dengan
memangkas (pruning) simpul- simpul yang tidak mengarah ke solusi, sehingga waktu
pencarian dapat dihemat. Algoritma ini banyak diterapkan untuk program games dan
permasalahan pada bidang kecerdasan buatan.

Saat ini algoritma backtracking banyak diterapkan untuk program games seperti
permainan tic-tac-toe, menemukan jalan keluar dalam sebuah labirin, catur dan
sebagainya serta untuk menyelesaikan masalah-masalah pada bidang kecerdasan
buatan (artificial intelligence). Prinsip dasar algoritma backtracking adalah mencoba
semua kemungkinan solusi yang ada. Perbedaan dengan algoritma brute force adalah
pada konsep dasarnya, yaitu pada backtracking semua solusi dibuat dalam bentuk
pohon solusi (tree), dan kemudian pohon tersebut akan ditelusuri secara DFS sehingga
ditemukan solusi terbaik yang diinginkan. Misalkan pohon di atas menggambarkan
solusi dari suatu persoalan. Jika kita ingin mencari solusi dari A ke E, maka jalur yang
harus ditempuh adalah (A-B-E).

Demikian juga untuk solusi-solusi yang lain. Algoritma backtracking akan


memeriksa jalur secara DFS, yaitu dari solusi terdalam pertama yang ditemui yaitu
solusi E. Jika ternyata E bukanlah solusi yang diharapkan, maka pencarian akan
dilanjutkan ke F. Jalur yang harus dilalui untuk bisa mencapai E adalah (A-B-E) dan
untuk mencapai F adalah (A- B-F). Kedua solusi tersebut memiliki jalur awal yang
sama, yaitu (A-B). Jadi, dari pada memeriksa ulang jalur dari A kemudian B, maka
jalur (A-B) disimpan dulu dan langsung memeriksa solusi F. Untuk kasus pohon yang
lebih rumit, ar aini dianggap lebih efisien daripada jika menggunakan algoritma Brute-
Force.

Penyelesaian
Seperti yang telah dijelaskan bahwa pencarian solusi dengan menggunakan
algoritma backtracking digunakan pohon ruang status. Cara kerjanya adalah dengan
membentuk lintasan dari akar ke daun.

Langkah-langkah pencarian solusi pada pohon ruang status yang dibangun secara
dinamis:
1. Solusi dicari dengan membentuk lintasan dari akar ke daun. Aturan pembentukan
yang dipakai adalah mengikuti metode pencarian mendalam (DFS). Simpul-simpul
yang sudah dilahirkan dinamakan simpul hidup (live node). Simpul hidup yang sedang
diperluas dinamakan simpul-E (Expand-node). Simpul dinomori dari atas ke bawah
sesuai dengan urutan kelahirannya.
2. Tiap kali simpul-E diperluas, lintasan yang dibangun olehnya bertambah panjang.
Jika lintasan yang sedang dibentuk tidak mengarah ke solusi maka simpul-E tersebut
“dibunuh” sehingga menjadi simpul mati (dead node). Fungsi yang digunakan untuk
membunuh simpul-E adalah dengan menerapkan fungsi pembatas (bounding function).
Simpul yang sudah mati tidak akan pernah diperluas lagi.
3. Jika pembentukan lintasan berakhir dengan simpul mati, maka proses pencarian
diteruskan dengan membangkitkan simpul anak yang lainnya. Bila tidak ada lagi
simpul anak yang dapat dibangkitkan, maka pencarian solusi dilanjutkan dengan
melakukan backtracking ke simpul hidup terdekat (simpul orang tua). Selanjutnya
simpul ini menjadi simpul-E yang baru. Lintasan baru dibangun kembali sampai
lintasan tersebut membentuk solusi.
4. Pencarian dihentikan bila kita telah menemukan solusi atau tidak ada simpul hidup
untuk backtracking atau simpul yang dapat di diperluas.
BAB III PENUTUP

3.1 Kesimpulan
Permainan Menara Hanoi merupakan permainan matematis atau teka teki.
Permainan ini terdiri dari tiga tiang dan sejumlah piringan dengan ukuran yang berbeda
beda yang dapat dapat dipindahkan ke tiang mana saja. Ujung permainan ini adalah
dengan penyelesaian piringan secara rapi atau bertumpuk rapi berurutan berdasarkan
ukurannya. Dalam makalah metode yang digunakan untuk penyelesain problema
Menara honai adalah pencarian heuristic.

Sudoku atau dikenal sebagai number place adalah permainan teka teki logika.
Tujuannya adalah mengisi angka dari 1 – 9 pada jaring angka 9x9 dan terdiri dari 9
kotak 3x3. Ujung permainannya adalah angka yang tidak terulang dalam satu kotak,
kolom dan bads. Metode penyelesaiannya menggunakan pencarian heuristic dengan
algoritma backtracking.

Kanibal merupakan permainan logika, tujuan permainnya adalah


menyeberangkan/ memindahkan ketiga manusia dan ketiga kanibal dari daratan
sebelah kanan ke daratan sebelah kiri yang terpisahkan oleh sungai dan alat pindahnya
berupa perahu yang dapat memuat 2 orang. Dalam penyelesain problema permainan
kanibal, dalam makalah dijelaskan dengan menggunakan metode depth first search
(DFS).
DAFTAR PUSTAKA

Supiyandi Supiyandi. 2016. PENYELESAIAN PROBLEMA TOWER OF HANOI


MENGGUNAKAN ALGORITMA A*

Rina Dewi Indah Sari. 2011. ANALISIS PENYELESAIAN PUZZLE SUDOKU


DENGAN MENERAPKAN ALGORITMA BACKTRAKING

Kahar Muzakkar. 2018. Kecerdasan Buatan Games ( Menara Hanoi, Sudoku dan
Chanibal ). https://kaharmusakkar97.blogspot.com/2018/01/kecerdasan-buatan-
games-menara- hanoi.html

Anonim. 2017. MAKALAH KECERDASAN BUATAN METODE


PENCARIAN
HEURISTIK. http://elektrojoker13unc.blogspot.com/2017/12/makalah-kecerdasan-
buatan- metode.html

Syifamss. 2017. METODE PENCARIAN BUTA (BLIND SEARCH) DAN METODE


PENCARIAN HEURISTIK. https://syifamss.wordpress.com/2017/12/08/metode-
pencarian-buta-blind-search-metode-pencarian-heuristik/

Anda mungkin juga menyukai