Anda di halaman 1dari 8

KATA PENGANTAR 

 
Puji syukur kehadirat Allah SWT atas berkat limpahan rahmat dan karunia-
Nya sehingga Buku Materi Shortest path telah dapat diselesaikan. Buku materi ini disusun untuk
memenuhi ujian tengah semester mata kuliah Matematika Diskrit. Penulis mengucapkan terima
kasih kepada Ibu ____ selaku dosen pengampu mata kuliah Matematika Diskrit dan semua pihak
yang telah memberikan bantuan dan saran atas penyusunan buku ini.

Kami sadar bahwa buku yang kami buat masih belum bisa dikatakan sempurna. Maka
dari itu, kami meminta dukungan dan masukan dari pembaca, agar kedepannya kami bisa lebih
baik lagi di dalam menulis sebuah buku.

Surabaya, 23 Maret 2021

Kelompok 4……..
Shortest Path
I. Shortest Path

Shortest path adalah pencarian rute atau path terpendek antara node yang ada
pada graph, biaya (cost) yang dihasilkan adalah minimum. Sedangkan menurut (Dublin.
2009) menemukan jalan terpendek dari total panjang jalan antara dua node grafik
diarahkan dengan panjang berkaitan dengan tepi masing-masing. Dalam pencarian
lintasanterpendek masalah yang dihadapi adalah mancari lintasan mana yang akan
dilaluisehingga didapat lintasan yang paling pendek dari satu verteks ke verteks yang
lain.
Terdapat beberapa persoalan lintasan terpendek, antara lain :

1. Lintasan terpendek antara dua buah simpul tertentu (a pair shortestpath).


2. Lintasan terpendek antara semua pasanggan simpul (all pairs shortestpath)
3. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain(single-source
shortest path).
4. Lintasan terpendek antara dua buah simpul yang melalui beberapasimpul tertentu
(intermediate shortest path).

II. Graph

Graph sering digunakan untuk merepreesntasikan sebuah objek dan hubungannya


dengan objek lain. Sejarah teori graph bermula saat ahli matematika Swiss Leonhard
Euler memecahkan masalah jembatan Königsberg . Masalah jembatan Königsberg adalah
teka-teki lama mengenai kemungkinan menemukan jalan setapak di tujuh jembatan yang
membentang di sepanjang sebuah sungai bercabang yang melewati sebuah pulau tapi
dengan tanpa melewati jembatan dua kali. Euler berpendapat bahwa tidak ada jalan
semacam itu. Buktinya hanya mengacu pada susunan fisik jembatan, namun intinya dia
membuktikan teorema pertama dalam teori graph (Carlson, 2017).

Graph pada dasarnya mempunyai komponen berupa simpul dan sisi dan pada
graph tersebut sehingga membentuk graph terbuka dan graph tertutup sehingga
membentuk sejumlah lintasan dan sirkuit. Sehingga pada teorema graph telah dapat
menyelesaikan tanda tanya dalam penyelesaian teka-teki jembatan Konigsberg dan
dengan solusi masalah yang sama.
 Graph Berbobot

Graf berbobot adalah graf yang setiap sisinya diberi sebuah harga (bobot). Bobot pada tiap
sisi dapat berbeda–beda bergantung pada masalah yang dimodelkan dengan graf. Bobot dapat
menyatakan jarak antara dua buah kota, biaya perjalanan antara dua buah kota, waktu tempuh
pesan (message) dari sebuah simpul komunikasi ke simpul komunikasi lain (dalam jaringan
computer), ongkos produksi, dan sebagainya. ” (Munir, 2009 : 376).

Syarat-Syarat dalam graph berbobot:

1. Jika setiap busur mempunyai nilai yang menyatakan hubungan antara 2 buah simpul,
maka busur tersebut dinyatakan memiliki bobot.
2. Bobot sebuah busur dapat menyatakan panjang sebuah jalan dari 2 buah titik, jumlah
rata-rata kendaraan perhari yang melalui sebuah jalan, dll.
III. Algoritma Penyelesaian Shortest Path

 Algoritma Greddy

Algoritma greedy berasal dari bahasa inggris, yang berarti tamak atau rakus.
Algoritma greedy merupakan jenis algoritma yang menggunakan pendekatan
penyelesaian masalah dengan mencari nilai optimum pada setiap langkahnya. Nilai
optimum ini dikenal dengan istilah local optimum. Dengan harapan bahwa langkah
sisanya mengarah ke solusi optimum global (Global optimum). Pada banyak kasus
algoritma greedy tidak akan menghasilkan solusi paling optimal, akan tetapi algoritma
greedy biasanya memberikan solusi yang mendekati nilai optimum dalam waktu yang
cukup cepat. Oleh karena itu, pada setiap langkah diperlukan keputusan terbaik dalam
menentukan pilihan.

 Langkah – langkah penyelesaian :

1. Kunjungi satu titik pada graf, dan ambil semua


titik yang dapat dikunjungi dari sekarang.
2. Cari Optimal Solution ke titik selanjutnya.
3. Tandai titik sekarang sebagai titik yang telah
dikunjungi, dan pindah ke Optimal Solution.
4. Kembali ke langkah 1 hingga tujuan tercapai.

 Hasil
Dengan menggunakan algoritma greedy pada graph
di atas, hasil akhir yang akan didapatkan sebagai
jarak terpendek adalah A-C-D-G-I. Hasi jarak
terpendek yang didapatkan ini tidak tepat dengan
jarak terpendek yang sebenarnya (A-B-H-I).
 Kelebihan Algoritma Greddy :
Penggunaan Algoritma Greedy akan menyeleksi pilihan-pilihan yang ada dan mengambil
solusi terbaik. Jadi jika ada banyak pilihan dari lintasan di graf, maka Algoritma Greedy
akan memberi hasil yang akurat.

 Kekurangan Algoritma Greedy :


Algoritma Greedy mengambil pilihan terbaik pada setiap langkahnya. artinya,
Algoritma ini tidak mampu mengambil solusi optimal secara global. Sehingga tidak
selalu memberi hasil yang terbaik.

 Algoritma Dijkstra

Algortima ini ditemukan oleh Edsger W. Dikstra dan di publikasi pada tahun


1959 pada sebuah jurnal Numerische Mathematik yang berjudul “A Note on Two
Problems in Connexion with Graphs“[1]. Algoritma ini sering digambarkan
sebagai algoritma greedy (tamak). Sebagai contoh, ada pada buku Algorithmics (Brassard
and Bratley [1988, pp. 87-92]).
Djikstra merupakan salah satu varian bentuk algoritma popular dalam pemecahan
persoalan terkait masalah optimasi pencarian lintasan terpendek sebuah lintasan yang
mempunyai panjang minimum dari verteks a ke z dalam graph berbobot, bobot tersebut
adalah bilangan positif jadi tidak dapat dilalui oleh node negatif. Namun jika terjadi
demikian, maka penyelesaian yang diberikan adalah infiniti (Tak Hingga). Pada
algoritma Dijkstra, node digunakan karena algoritma Dijkstra menggunakan graph
berarah untuk penentuan rute listasan terpendek. 

 Langkah – langkah penyelesaian Algoritma Dijkstra :

1. Tandai titik awal sebagai titik


keberangkatan, lalu kunjungi satu titik
pada graf, dan ambil semua titik yang
dapat dikunjungi dari sekarang.
2. Cari Optimal Solution ke titik
selanjutnya, kemudian pindah ke titik
tersebut. Rekam data lain
3. Lewati jalur ke titik lain dari titik
keberangkatan. Bandingkan hasilnya
dengan Optimal Solution saat ini.
4. Jika jalur baru lebih pendek, maka hapus
data Optimal Solution dan ganti dengan
yang baru. Ulangi langkah 1.
 Tabel
Cara mudah untuk menyelesaikan Shortest Path menggunakan Algoritma Dijkstra adalah
dengan menggunakan tabel untuk menyimpan rekaman jalur. Dan menulis seluruh jalur
yang bisa dilewati untuk kemudian dibandingkan.

 Hasil
Dengan menggunakan Algoritma Dijkstra pada
persoalan Shortest Path tersebut maka didapat jalur
terpendek adalah A-B-H-I. Penggunaan Algoritma
Dijkstra memang memakan banyak waktu, namun
hasil yang didapat akan lebih akurat dan optimal.

 Kelebihan Algoritma Dijkstra


Penggunaan Algoritma Dijkstra menghasilkan solusi yang paling optimal. Algoritma
Dijkstra menyempurnakan kekurangan Algoritma Greedy Sehingga mampu melihat
solusi secara global.
 Kekurangan Algoritma Dijkstra
Algoritma Dijkstra memakan lebih banyak waktu dan perlu ketelitian ekstra untuk
mendapat hasi yang optimal. Langkah-Langkah dalam Algoritma ini mengharuskan kita
untuk menyimpan rekaman-rekaman data dari jalur lain yang bukan solusi optimal.

 Algoritma Bellman – Ford

Algoritma Bellman-Ford yang ditemukan oleh Richard E. Bellman, seorang ahli


matematika yang terlahir di New York 1920. Algoritma Bellman-Ford menghitung jarak
terpendek (dari satu sumber) pada sebuah graf berbobot. Maksudnya dari satu sumber
ialah bahwa ia menghitung semua jarak terpendek yang berawal dari satu titik node.
(Bayu Aditya Pradhana, 2006). Maksud dari sumber tunggal ialah bahwa algoritma
menghitung semuah jarak terpendek yang berawal dari satu titik. Di samping itu
algoritma ini menggunakan d[u] sebagai batas atas dengan jarak d[u, v] dari u ke v.
Algoritma ini melakukan inisialisasi jarak titik sumber ke titik nol dan semua titik lainnya
(sampai tak hingga).

 Langkah – langkah penyelesaian Algoritma


Bellman – Ford
1. Tentukan titik awal dan titik akhir dari
persoalan.
2. Telusuri jalur-jalur yang ada hingga titik
akhir, kemudian rekam total bobot.
3. Bandingkan hasil semua jalur yang telah
ditelusuri, kemudian ambil jalur dengan
bobot terkecil.
4. Lewati jalur dengan bobot terkecil tadi,
disisni merupakan akhir dari dari Algoritma
Bellman – Ford.

 Hasil
Dengan menggunakan Algoritma
Bellman-Ford pada persoalan Shortest Path
tersebut maka didapat jalur terpendek adalah
A-B-H-I. Algoritma ini hampir mirip dengan
Algoritma Dijkstra, namun pada Bellman-
Ford semua jalur yang ada langsung ditelusuri
hingga akhir dan mampu menghitung bobot
negatif.

Anda mungkin juga menyukai