makalah algoritma kruskal

11
Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 1 BAB I PENDAHULUAN A. Latar Belakang Di zaman yang serba modern ini, dunia ilmu teknologi berkembang sangat pesat, dan hampir merata ditanah air dari kota sampai pelosok pun terjamah teknologi. Sehingga sebagai pelaku utama yang berkecimpung dalam dunia teknik maupun (IT) seharusnya sudah mampu untuk bersaing tidak hanya dalam lingkup global tapi ranah yang lebih luas, bahkan dapat mengembangkan sebuah projek sendiri. Mengingat sekarang dunia teknologi berkembang dimana-mana khususnya dikawasan asia, bersaing membuat suatu program atau projek-projek yang notabene teknologinya sangat canggih bahkan disingkronkan dengan mikrokontroller dan mikroprosesor. Maka dari itu, dalam rangka mensejajarkan teknologi dengan negara asia yang lain dan sumber daya yang ada, sebagai anak komputer (IT) dituntut agar belajar dengan semaksimal mungkin secara efisien dan efektif dalam segala hal terutama dalam mendalami sebuah algoritma yang menjadi dasar landasan untuk mengembangkan suatu program atau aplikasi. Dan tentunya disuatu saat akan bermanfaat. Selain itu, juga mampu bersaing dikawasan Asean ini. Yang tentunya sangat ketat dari segi keunggulan maupun kelemahan dari masing-masing negara yang bersangkutan dengan perkembangan teknologi masa depan. Adapun dalam makalah ini penulis akan membahas salah satu metode penyelesaian kasus menggunakan algoritma kruskal dari tujuh metode yang telah ditentukan yang notabene merupakan metode yang berguna untuk menyelesaikan dan memahami suatu masalah yang bersangkutan dengan spanning tree, dengan harapan suatu masalah dapat diselesaiakan dengan lebih efisien dengan menggunakan algoritma tersebut. B. Rumusan Masalah Berdasarkan latar belakang, maka masalah yang muncul berdasarkan uraian di atas dirumuskan sebagai berikut: 1. Apakah definisi dari algoritma kruskal ? 2. Bagaimana karakteristik algoritma kruskal ? 3. Apakah kelebihan dan kekurangan algoritma kruskal? 4. Contoh algoritma kruskal?

Upload: zaenal-mustofa

Post on 28-Jan-2018

438 views

Category:

Technology


0 download

TRANSCRIPT

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 1

BAB I

PENDAHULUAN

A. Latar Belakang

Di zaman yang serba modern ini, dunia ilmu teknologi berkembang sangat pesat,

dan hampir merata ditanah air dari kota sampai pelosok pun terjamah teknologi.

Sehingga sebagai pelaku utama yang berkecimpung dalam dunia teknik maupun

(IT) seharusnya sudah mampu untuk bersaing tidak hanya dalam lingkup global

tapi ranah yang lebih luas, bahkan dapat mengembangkan sebuah projek sendiri.

Mengingat sekarang dunia teknologi berkembang dimana-mana khususnya

dikawasan asia, bersaing membuat suatu program atau projek-projek yang

notabene teknologinya sangat canggih bahkan disingkronkan dengan

mikrokontroller dan mikroprosesor. Maka dari itu, dalam rangka mensejajarkan

teknologi dengan negara asia yang lain dan sumber daya yang ada, sebagai anak

komputer (IT) dituntut agar belajar dengan semaksimal mungkin secara efisien

dan efektif dalam segala hal terutama dalam mendalami sebuah algoritma yang

menjadi dasar landasan untuk mengembangkan suatu program atau aplikasi. Dan

tentunya disuatu saat akan bermanfaat. Selain itu, juga mampu bersaing

dikawasan Asean ini. Yang tentunya sangat ketat dari segi keunggulan maupun

kelemahan dari masing-masing negara yang bersangkutan dengan

perkembangan teknologi masa depan.

Adapun dalam makalah ini penulis akan membahas salah satu metode

penyelesaian kasus menggunakan algoritma kruskal dari tujuh metode yang

telah ditentukan yang notabene merupakan metode yang berguna untuk

menyelesaikan dan memahami suatu masalah yang bersangkutan dengan

spanning tree, dengan harapan suatu masalah dapat diselesaiakan dengan lebih

efisien dengan menggunakan algoritma tersebut.

B. Rumusan Masalah

Berdasarkan latar belakang, maka masalah yang muncul berdasarkan

uraian di atas dirumuskan sebagai berikut:

1. Apakah definisi dari algoritma kruskal ?

2. Bagaimana karakteristik algoritma kruskal ?

3. Apakah kelebihan dan kekurangan algoritma kruskal?

4. Contoh algoritma kruskal?

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 2

C. Tujuan

Berdasarkan rumusan masalah, maka apabila tujuan tercapai adalah

sebagai berikut:

1. Agar mahasiswa mengetahui lebih mendalam tentang pengertian algoritma

kruskal

2. Agar mahasiswa mampu mengimplementasiakan atau menerapakan

penyelesaian minimum spanning dengan Algoritma kruskal ataupun metode

lain yang terkait.

3. Mempelajari bagaimana menganalisa suatu perancangan algoritma yang

sudah berjalan dan tentunya masih mempunyai kekurangan dari sisi lain yang

tidak terlihat.

D. Manfaat

Manfaat adanya penyususnan makalah perancangan dan analisis

algoritma ini yang diharapkan apabila tujuan terpenuhi adalah membantu

mahasiswa untuk bisa menerapkan ataupun mengimplementasikanya dalam

kehidupan sehari-hari. Bahkan bisa mengimplementasiakan matakuliah

perancangan dan analisis algoritma dengan minimum spanning (MST)

khususnya adalah algoritma kruskal. Selain itu, mampu menganalisa suatu

perancangan yang sulit jadi lebih mudah untuk banyak pengguna atau user.

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 3

BAB II

PEMBAHASAN

A. Pengertian Algoritma Kruskal

Algoritma kruskal adalah sebuah algoritma dalam teori graf yang mencari

sebuah minimum spanning tree untuk sebuah graf berbobot yang terhubung. Ini

berarti menemukan subset dari tepi yang membentuk sebuah pohon yang

mencakup setiap titik, di mana berat total dari semua tepi di atas pohon

diminimalkan. Jika grafik tidak terhubung, maka menemukan hutan rentang

minimum (pohon rentang minimum untuk setiap komponen terhubung).

Algoritma kruskal juga tergolong algoritma Greedy dalam teori graf yang

digunakan untuk mencari minimum spanning tree. Algoritma ini pertama kali

muncul pada tahun 1956 dalam sebuah tulisan yang ditulis oleh Joseph Kruskal.

Algoritma Kruskal adalah contoh dari algoritma rakus. Algoritma ini pertama

kali muncul dalam Prosiding American Mathematical Society, hal 1956.

Dasar pembentukan algoritma Kruskal berasal dari analogi growing

forest.Growing forest maksudnya adalah untuk membentuk pohon merentang

minimum T dari graf G adalah dengan cara mengambil satu per satu sisi dari

graf G dan memasukkannya ke dalam pohon yang telah terbentuk sebelumnya.

Seiring dengan berjalannya iterasi untuk setiap sisi, maka forest akan memiliki

pohon yang semakin sedikit. Oleh sebab itu, maka analogi ini disebut dengan

growing forest. Algoritma Kruskal akan terus menambahkan sisi-sisi ke dalam

hutan yang sesuai hingga akhirnya tidak akan ada lagi forest dengan, melainkan

hanyalah sebuah pohon yang merentang minimum.

Graph: kumpulan dua himpunan yaitu himpunan titik (vertek/simpul/node) dan

kumpulan dari garis (edge).

Tree: graph tak berara yang terhubung dan tidak mengandung sirkuit. Sirkuit:

simpil awal=simpul akhir.1

Secara umum Algoritma kruskal ditulis:

1. T masih kosong

2. Pilih sisi (i,j) dengan bobot minimum.

3. Pilih sisi (i,j) dengan bobot minimum berikutnya yang tidak membentuk

cycle di T, tambahkan (i,j) ke T.

4. Ulangi langkah 3 sebanyak (n-2) kali.

5. Total langkah (n-1) kali.

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 4

B. Karakteristik Alogritma kruskal

a. Sifat algoritma kruskal ini:

1. Bekerja tidak hanya dengan grafik diarahkan.

2. Bekerja dengan bobot dan tidak grafik tertimbang. Tapi, yang lebih

menerik, apabila tepi yang berbobot.

3. Kruskal adalah jenis algoritma yang menghasilkan solusi optimal

MST

b. Langkah Algoritma Kruskal

Langkah-langkah utama Algoritma Kruskal adalah sebagai berikut:

1. Atur tepi berat: paling berat pertama dan terberat terakhir.

2. Pilih yang ringan tidak diperiksa tepi dari diagram.

3. Tambahkan tepi memilih ini ke pohon, hanya jika hal itu tidak akan

membuat siklus.

4. Menghentikan proses kapanpun n-1 tepi telah ditambahkan ke pohon.2

C. Kelebihan dan Kekurangan Algoritma Kruskal

Terdapat dua macam algoritma tipe greedy yang dapat memenuhi

pemecahan masalah pohon merentang ini. Yaitu algoritma prim dan algoritma

kruskal, berikut adalah kelebihan dan kekurangan algoritma Kruskal dibanding

algoritma prim.

a) Kelebihan Algoritma Kruskal

Kelebihan algoritma Kruskal dibanding algoritma prim adalah sebagai

berikut:

Sangat cocok digunakan saat graf memiliki sisi berjumlah sedikit namun

memiliki sangat banyak simpul, karena orientasi kerja algoritma ini

adalah berdasarkan pada urutan bobot sisi, tidak berdasarkan simpul.

b) Kekurangan Algoritma Kruskal

Beberapa hal yang menjadi kekurangan algoritma kruskal dibanding

algoritma prim:

Kuranag cocok digunakan saat graf lengkap atau yang mendekati

lengkap, dimana setiap simpul terhubungkan dengan semua simpul yang

lain. Karena algoritma Kruskal menitik beratkan pada pencarian sisi,

dimana sisi-sisi tersebut harus diurutkan dan ini memakan waktu yang

tidak sedikit.

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 5

D. Contoh Penyelesaian Masalah dengan Algoritma Kruskal

Contoh penyelesaian kasus minimum spanning tree dengan algoritma kruskal,

diketahui sebuah pohon graf berbobot seperti gambar berikut ini:

Gambar 2.10 Gambaran Awal graf

Tabel 2.1 Daftar urut nilai Graf dari sisi terbesar sampai terkecil

Bobot Ruas

15 D,E

9 B,D E,F

8 B,C B,E F,G

7 A,D C,E

6 A,B E,G

5 D,F

Penyelesaian:

1. Mula-mula kita buat sekumpulan titik G hanya terdiri dari simpul-simpul

saja.

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 6

2. Urutkan Ruas dari bobot kecil ke besar (DF, AB, EG, AD, CE, BC, BE, FG,

BD, EF, DE), kemudian berdasarkan urutan tersebut, kita menambahkan ruas

dengan mencegah terbentuknya sirkuit.

B. Ruas D,F A. Ruas A,B D,F

C. Ruas E,G D. Ruas A,D C,E

F. Ruas C,E E. Ruas B,C B,E F,G

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 7

Selesai MST Graf G dengan Bobot: 38

Gambar 2.11 Teknik penyelesaian Spanning Tree dengan Metode Kruskal Pada gambar 2.12 langkah-langkah teknik penyelesaian Minimum spanning

Tree adalah sebagai berikut:

a. Pilih ruas terkecil dari keseluruhan graf secara acak. Ruas DF adalah ruas

H. Ruas B,D E,F D,E G. Ruas DB dihapus

J. Ruas E,F dihapus I. Ruas D,E dihapus

K. Ruas

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 8

terkecil dengan bobot 5 (gambar 2.11(a)).

b. Setelah ruas 1 didapatkan, ulangi lagi pemilihan ruas terkecil secara acak

dari keseluruhan graf. Ruas AB dan ruas EG adalah ruas terkecil (gambar

2.11(b)).

c. Lanjutkan untuk ruas yang selanjutnya, Ruas EG adalah ruas terkecil

dengan bobot 6 dan tidak membentuk sirkuit jika dihubungkan. Maka

pilih ruas EG (gambar 2.11(c)).

d. Pilih ruas selanjutnya dengan bobot yang tekecil saat ini, yaitu ruas AD

dan ruas CE dengan bobot 7. Pilih acak ruas AD (gambar 2.11(d)).

e. Lanjutkan untuk ruas CE adalah ruas terkecil dengan 7 dan tidak

membentuk sirkuit jika dihubungkan. Maka pilih ruas CE (gambar

2.11(e)).

f. Ruas selanjutnya dengan bobot yang terkecil saat ini yaitu ruas BC, BE

dan FG dengan bobot 8. Pilih acak ruas BC dan hapus ruas BE (gambar

2.11) dan ruas FG karena akan membentuk sirkuit jika dihubungkan

(gambar 2.11(f)).

g. Untuk ruas-ruas selanjutnya, BD, EF, dan DE dihapus karena akan

membentuk sirkuit jika dihubungkan gambar 2.11(h), gambar 2.11(i),

gambar 2.11(j)).

h. Gambar 2.11 (k) adalah Minimum spanning Tree yang dihasilkan.

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 9

BAB III

KESIMPULAN DAN SARAN

A. Kesimpulan

Algoritma kruskal merupakan turunan dari algoritma greedy yang

mengupayakan pengambilan pilihan optimum pada setiap langkah dengan

harapan akan mendapatkan hasil optimum global pada akhirnya.

Sedangkan untuk Algoritma Kruskal lebih menitik beratkan pada pemilihan sisi

berdasarkan urutan bobotnya. Untuk itu terlebih dahulu harus mengurutkan sisi

berdasarkan pada bobotnya, dan algoritma ini lebih cocok untuk pohon dengan

jumlah simpul sedikit kurang disarankan untuk pohon dengan jumlah simpul

yang banyak.

B. Saran

Setelah selesainya pembuatan makalah dari makul Perancangan dan Analisis

Algoritma terlaksana, adapun saran-saran penulis sampaikan dalam proses

pengerjaan terutama pada bagian menganalisa program, pembahasan masalah

diantarannya sebagai berikut:

1. Untuk pembuatan makalah atau laporan kedepanya, saya mengharapkan

adanya kritik dan saran yang sifatnya membangun dari semua pihak

dosen maupun seluruh mahasiswa yang sempat membaca makalah makul

Perancangan dan Analisis Algoritma yang berjudul Penyelesaian

Minimum SpanningTree dengan Algoritma Kruskal.

2. Agar kedepanya dosen pendamping dalam teori Perancangan dan

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 10

Analisis Algoritma untuk lebih mempertimbangkan adanya penjelesan

(pembekalan) tentang materi terlebih dahulu ketimbang langsung

membuat laporan tanpa suatu adanya penjelasan. Menurut penulis sendiri

materi tanpa penjelasan itu lebih grambyang secara istilah.

3. Agar kedepanya untuk pembuatan projek ataupun laporan untuk

kedepanya, penulis sangat mengharapkan adanya penjelasan materi atau

teori terlebih dahulu. Disamping itu, karena untuk membuat laporan

tanpa adanya penjelasan tentang teori terkait itu, akan mempersulit

mahasiswa dalam mengerjakan tugas yang telah diberikan. Bahkan

malah menjadi beban terutama untuk penulis sendiri.

Universitas Sains Al-Quran Wonosobo Perancangan & Analisis 11

DAFTAR PUSTAKA

http://bobo-magazine.blogspot.co.id/2010/05/algoritma-kruskall.html

http://slidegur.com/doc/1714614/minimum-spanning-tree

http://repository.amikom.ac.id/files/Publikasi_07.11.1385.pdf

http://allaboutalgoritma.blogspot.co.id/2011/04/pemodelan-sistem-

minumun-spanning-tree.html

http://wahyumiftahulhuda.blogspot.co.id/2014/05/pengertian-algoritma-

prim-dan-program-c.html

http://www.tutorvista.com/content/math/kruskals-algorithm/

http://repository.unib.ac.id/9217/2/I,II,III,II-14-ris-FT.pdf