Anda di halaman 1dari 13

ALGORITMA POHON RENTANG MINIMUM

(Prim, Kruskol, Solin)

Makalah
Disusun untuk memenuhi salah satu tugas mata kuliah Teori Graf yang diampu
oleh Ibu Khafidhoh Nurul Aini, S.Si., M.Pd

Disusun oleh kelompok 4:


1. Nur Khofifah : 18031021
2. Siti Mardziyah : 18031023
3. Wasiatul Maghfiroh : 18031003
4. Wardah Nabillah Mujahidah : 18031033

PENDIDIKAN MATEMATIKA
FAKULTAS KEGURUAN DAN ILMU PENDIDIKAN
UNIVERSITAS ISLAM DARUL ‘ULUM LAMONGAN
LAMONGAN
2021
KATA PENGANTAR

Alhamdulillah, Segala Puji Syukur senantiasa tercurahkan kepada Allah


SWT atas rahmat dan karunia-Nya, sehingga makalah ini dapat terselesaikan
dengan segala kesalahan dan kekurangannya, guna memenuhi tugas mata kuliah
“Teori Graf”. Sholawat serta salam tidak lupa kita haturkan kepada Baginda Nabi
Muhammad SAW, dan semoga kita semua termasuk umatnya yang kelak
mendapatkan syafa’atnya kelak di hari kiamat.
Makalah ini telah kami susun semaksimal mungkin dan kami juga
mendapatkan bantuan dari berbagai pihak sehingga dapat memperlancar pembuatan
makalah ini. Untuk itu kami menyampaikan banyak terima kasih kepada semua
pihak yang telah berkontribusi dalam pembuatan makalah ini.
Meskipun kami sebagai penyusun berharap isi dari makalah ini bebas dari
kesalahan dan kekurangan. Namun, tentunya kami menyadari bahwa kami hanyalah
manusia biasa yang tidak luput dari kesalahan dan kekurangan dan kesempurnaan
itu hanya milik Allahsemata. Oleh karena itu, kami sebagai penyusun
mengharapkan kritik dan saran yang membangun demi sempurnanya lapoaran ini
diwaktu mendatang. Semoga Allah SWT memberkahi makalah ini, sehingga dapat
memberikan manfaat kepada kita semua.

Lamongan, 29 Maret 2021

Penulis
Kelompok 4

ii
DAFTAR ISI

JUDUL MAKALAH .............................................................................................. i


KATA PENGANTAR ........................................................................................... ii
DAFTAR ISI ......................................................................................................... iii
BAB I. PENDAHULUAN ..................................................................................... 1
1.1 Latar Belakang ....................................................................................... 1
1.2 Rumusan Masalah .................................................................................. 1
1.3 Tujuan ..................................................................................................... 1
BAB II. PEMBAHASAN ...................................................................................... 2
2.1 Algoritma Pohon Rentang Minimal ..................................................... 2
2.2 Algoritma Prim ....................................................................................... 3
2.3 Algoritma Kruskal ................................................................................. 3
2.4 Algoritma Solin ....................................................................................... 6
DAFTAR PUSTAKA .......................................................................................... 10

iii
BAB I. PENDAHULUAN

1.1 Latar Belakang


Teori Graf menurut Munir (2012), merupakan salah satu cabang dari
ilmu matematika dengan pokok bahasan yang sudah sejak lama digunakan dan
memiliki banyak terapan hingga saat ini. Semakin berkembangnya teori graf,
kemudian lahir beberapa konsep baru yang dikemukakan oleh para ahli mate-
matika. Konsep-konsep yang dikemukakan kemudian berkembang sehingga
muncul solusi-solusi baru dalam teori graf. Di antara sekian banyak konsep
dalam teori graf, konsep pohon rentang minimum (minimum spanning tree)
merupakan konsep yang paling banyak diterapkan, baik dalam ilmu komputer
maupun di luar ilmu komputer (Munir, 2012).
Terdapat beberapa algoritma yang dikemukakan oleh peneliti-peneliti
dibidang teori graf untuk menentukan pohon merentang minimum pada graf
terhubung berbobot tak berarah. Pada umumnya algoritma-algoritma tersebut
menggunakan metode Greedy yaitu membangun suatu pohon merentang
minimum dengan memeriksa garis demi garis untuk memilih garis dengan
bobot kecil dab membuang garis yang bobot besar sehingga terbentuk pohon
rentang minimum.
Di makalah ini akan dijelaskan tiga algoritma yang sering digunakan
dalam menentukan pohon rentang minimum dari sebuah graf diantaranya, Prim,
Kuskol, dan Solin.

1.2 Rumusan Masalah


1.2.1 Apa yang dimaksud pohon merentang minimum?
1.2.2 Bagaimana cara menentukan pohon rentang minimum pada graf?
1.2.3 Sebutkan dan jelaskan algoritma yang digunakan untuk menentukan
pohon rentang minimum?

1.3 Tujuan
1.3.1 Mengetahui apa itu pohon rentang minimum
1.3.2 Mengetahui cara menentukan pohon rentang minimum
1.3.3 Dapat menyebutkan dan menjelaskan algoritma yang digunakan

1
BAB II. PEMBAHASAN

2.1 Algoritma Pohon Rentang Minimal


Pohon adalah sebuah graf terhubung yang tidak mengandung sirkuit. Definisi
lain pohon yaitu graf tidak berarah yang bersifat hanya terdapat sebuah lintasan
unik antara setiap pasang simpul. Beberapa pohon dapat membentuk hutan
(forest) yaitu kumpulan pohon yang saling lepas. Konsep pohon ini memiliki
penerapan yang luas, baik di dalam ilmu komputer maupun di luar bidang ilmu
computer.
Pohon membantu untuk mempelajari struktur data. Para ahli bahasa
menggunakan konsep pohon parsing (parse tree) untuk menguraikan kalimat.
Dalam kehidupan sehari-hari kita telah menggunakan konsep pohon untuk
menggambarkan diagram sistem gugur pertandingan olahraga, silsilah
keluarga, struktur organisasi, dan lain-lain. Contoh aplikasi pohon rentang yaitu
pada pemeliharaan jalan raya dengan dana terbatas. Alokasi dana yang terbatas
akan menyebabkan pertimbangan hanya merawat ruas jalan sesedikit mungkin,
namun semua daerah masih tetap dapat terhubung satu sama lain.
Jika 𝐺 adalah graf berbobot, maka bobot pohon rentang 𝑇 dari 𝐺 didefinisikan
sebagai jumlah bobot sisi di 𝑇. Pohon rentang yang berbeda mempunyai bobot
yang berbeda pula. Di antara semua pohon rentang di 𝐺, pohon rentang yang
berbobot minimum disebut pohon rentang minimum (minimum spanning tree).
Algoritma pohon rentang minimum secara lengkap pernah ditulis oleh Nesetril
dan Nesetrilova pada tahun 2012. Sementara itu, Tapia dan Rojas pada tahun
2004 berhasil menerapkan konstruksi pohon rentang minimum untuk mengenali
tulisan tangan secara on-line. Contoh sederhana pohon rentang minimum dapat
dilihat pada Gambar.

Gambar Pohon Rentang Minimum

Di sini akan digunakan dua buah algoritma untuk menyusun pohon rentang
minimum yaitu algoritma Kruskal dan Prim. Proses atau langkah-langkah
penyusunan pohon menggunakan kedua algoritma ini berbeda, namun bentuk
akhir pohon yang dihasilkan adalah sama.

2
2.2 Algoritma Prim
Algoritma Prim adalah sebuah algoritma dalam teori graf untuk mencari pohon
rentang minimum untuk sebuah graf berbobot yang saling terhubung. Ini berarti
bahwa sebuah himpunan bagian dari edge yang membentuk suatu pohon yang
mengandung node, di mana bobot keseluruhan dari semua edge dalam pohon
diminimalisasikan. Bila graf tersebut tidak terhubung, maka graf itu hanya
memiliki satu pohon rentang minimum untuk satu dari komponen yang
terhubung.Berikut ini adalah langkah-langkah algoritma Prim yaitu:
1. Ambil sisi dari graf 𝐺 yang berbobot minimum, masukkan ke dalam 𝑇.
2. Pilih sisi 𝑒 (𝑢, 𝑣) yang mempunyai bobot minimum dan bersisian dengan
simpul di T, tetapi 𝑒 (𝑢, 𝑣) tidak membentuk sirkuit di 𝑇. Masukkan 𝑒 (𝑢, 𝑣)
ke dalam 𝑇.
3. Ulangi langkah 2 sebanyak 𝑛 − 2 kali.

Proses memperoleh pohon rentang minimum menggunakan algoritma Prim


pada graf 𝐵 dapat dilihat pada Gambar.

Gambar Pohon rentang minimum algoritma Prim

2.3 Algoritma Kruskal


Algoritma ini lebih rumit bila dibandingkan dengan Algoritma Prim karena
pada Algoritma Kruskal data harus diurutkan dulu berdasarkan dari data edge
terkecil ke data edge terbesar, dan proses penyelesaian masalah minimum
spanning tree pun lebih rumit karena edge yang dipilih bisa sembarang edge
dengan syarat edge tersebut memiliki nilai bobot terkecil dan tidak terjadi
sirkuit diantara edge-edge yang dipilih tersebut. Dalam Algoritma Kruskal pada
proses pembentukannya mungkin saja terjadi forest, tetapi hasil akhir tetap
berupa tree.
Langkah awal algoritma Kruskal adalah sisi-sisi di dalam graf diurutkan
terlebih dulu berdasarkan bobot dari yang kecil ke besar. Sisi-sisi yang sudah
urut berdasarkan bobot akan membentuk hutan dengan masing-masing pohon

3
di hutan hanya berupa satu buah simpul, disebut dengan hutan rentang
(spanning forest). Misalkan 𝑇 adalah pohon rentang yang sisi-sisinya diambil
dari graf 𝐺. Sisi yang dimasukkan ke dalam himpunan 𝑇 adalah sisi graf 𝐺
sedemikian sehingga T adalah pohon. Sisi dari graf 𝐺 ditambahkan ke 𝑇 jika ia
tidak membentuk sirkuit atau siklus di 𝑇.

Berikut ini adalah langkah-langkah algoritma Kruskal yaitu:


1. Urutkan secara menaik berdasarkan bobotnya untuk semua sisi-sisi graf. 𝑇
masih kosong.
2. Pilih sisi 𝑒 (𝑢, 𝑣) dengan bobot minimum yang tidak membentuk sirkuit di
𝑇. Masukkan 𝑒 (𝑢, 𝑣) ke dalam 𝑇.
3. Ulangi langkah nomor 2 sebanyak 𝑛 − 1 kali.

Proses memperoleh pohon rentang minimum menggunakan algoritma Kruskal


pada graf 𝐵 dapat dilihat pada Gambar.

Gambar Pohon rentang minimum algoritma Kruskal


Contoh:
Suatu Graf 𝐺:

Kita akan mencari MST dengan menggunakan Algoritma Kruskal:


Penyelesaian:
1. Mula-mula kita buat Graf 𝐺 hanya terdiri dari Simpul saja.

4
2. Urutkan Ruas dari bobot kecil ke besar
(𝑫𝑭, 𝑨𝑩, 𝑬𝑮, 𝑨𝑫, 𝑪𝑬, 𝑩𝑪, 𝑩𝑬, 𝑭𝑮, 𝑩𝑫, 𝑬𝑭, 𝑫𝑬), kemudian berdasarkan
urutan tersebut, kita menambahkan ruas dengan mencegah terbentuknya
sirkuit

5
2.4 Algoritma Solin
Algoritma Solin untuk Pohon rentang minimum merupakan kebalikan dari
algoritma kruskal, yaitu membuat tree didahului dengan melakukan pengurutan
garis dari garis yang mempunyai bobot terbesar.
Langkah-langkah dalam menentukan hasil dari Algoritma Sollin ini adalah:
1. Menginisialisasi bahwa graf 𝑇 masih berupa graf kosong.
2. Memilih edge dengan nilai bobot terendah dari masing-masing titik/vertex
yang saling berhubungan.
3. Mengeliminasi edge duplikat jika pada edge yang telah terpilih terdapat
edge dengan titik yang sama.
4. Mengelompokkan edge yang telah terpilih kedalam tree-nya masing-
masing. Pada langkah ini pengecekan jika terbentuk sirkuit pada data hasil

6
pemilihan wakil edge yang terpilih, dan dilakukan penghapusan jika terjadi
duplikat. Jika pada data yang akan ditemukan solusi dari minimum spanning
tree telah terbentuk pada langkah ini, maka langkah selanjutnya tidak perlu
dilakukan.
5. Menghubungkan masing-masing tree yang telah terbentuk di dalam graf 𝑇
agar menjadi suatu penyelesaian minimum spanning tree. Penghubungan ini
diawali dengan sorting titik-titik yang belum terhubung diurutkan dari
paling kecil ke besar. Pada langkah ini data sebelum diurutkan diberi label
terlebih dahulu agar pada saat setelah data diurutkan data tersebut masih
merupakan nilai edge dari vertex yang sama.
Contoh:
Suatu Graf 𝐺:

Kita akan mencari MST dengan menggunakan Algoritma Solin:


Penyeselaian :
1. Urutkan Ruas Graf (𝐺) menurut bobotnya dari bobot yang terbesar
sampai bobot yang terkecil.

2. Lakukan penghapusan masing-masing ruas yang tidak menyebabkan


graf menjadi tidak terhubung atau membentuk sirkuit. Kita mulai
melakukan tahapan penghapusan dengan ruas dengan nilai bobot
terbesar sampai bobot terkecil:
1) Bobot : 𝟏𝟓 → 𝑫, 𝑬

7
Ruas 𝐷, 𝐸 tidak dihapus karena ruas tersebut menghubungkan 𝐷 dan
𝐸
2) Bobot : 𝟗 → 𝑩, 𝑫 dan 𝑬, 𝑭

Ruas 𝐵, 𝐷 dan 𝐸, 𝐹 tidak dihapus karena kedua ruas tersebut


menyebabkan graf terhubung
3) Bobot : 𝟖 → 𝑩, 𝑪 𝑩, 𝑬 dan 𝑭, 𝑮

Ruas 𝐵, 𝐶 dan 𝐹, 𝐺 tidak dihapus.


Ruas 𝐵, 𝐸 dihapus, karena membentuk sirkuit (𝐵, 𝐷, 𝐸, 𝐵)
4) Bobot : 𝟕 → 𝑨, 𝑫 dan 𝑪, 𝑬

Ruas 𝐴, 𝐷 tidak dihapus.


Ruas 𝐶, 𝐸 dihapus, karena membentuk sirkuit (𝐷, 𝐵, 𝐶, 𝐸, 𝐷)
5) Bobot : 𝟔 → 𝑨, 𝑩 dan 𝑬, 𝑮

8
Ruas 𝐴, 𝐵 dan 𝐸, 𝐺 dihapus, karena membentuk sirkuit (𝐴, 𝐵, 𝐷, 𝐴)
dan (𝐸, 𝐹, 𝐺, 𝐸)
6) Bobot : 𝟓 → 𝑫, 𝑭

Ruas 𝐷, 𝐹 dihapus, karena membentuk sirkuit (𝐷, 𝐸, 𝐹, 𝐷)


Tahap Penghapusan Selesai, Gambar 6 adalah Minimun Spanning
Tree dari Graf 𝐺 dengan Nilai Bobot: 56.

9
DAFTAR PUSTAKA

Husni Imam Al Amin, 2014, Visualisasi Pohon Rentang Minimum Menggunakan


Algoritma Kruskal Dan Prim, Universitas Stikubank, Semarang, Jawa Tengah,
Indonesia,
Abdus Syakur, 2018, Teori Dan Algoritma Graph, Jawa Tengah
Wamiliana, Kurniawan Didik, 2014, Perbandingan Kompleksitas Algoritma Prim,
Algoritma Kruskal, Dan Algoritma Sollin Untuk Menyelesaikan Masalah
Minimum Spanning Tree, UNILA

10

Anda mungkin juga menyukai