• Tidak ada hasil yang ditemukan

2. Algoritma Greedy Pada Penentuan Jalur Terpendek

N/A
N/A
Protected

Academic year: 2019

Membagikan "2. Algoritma Greedy Pada Penentuan Jalur Terpendek"

Copied!
34
0
0

Teks penuh

(1)
(2)

Graph Graph

Graph digunakan untuk merepresentasikan

objek-objek diskrit dan hubungan antara objek-objek tersebut.

Gambar berikut ini sebuah graph yang

(3)
(4)

Komponen dalam Graph:

Simpul (vertex)  menyatakan titik/node/ kota

(5)

Definisi Graph

Graph

G

= (

V

,

E

), yang dalam hal ini:

V

= himpunan tidak-kosong dari

simpul-simpul

(

vertices

)

= {

v

1 ,

v

2 , ... ,

vn

}

E

= himpunan sisi (

edges

) yang

(6)
(7)

Menentukan Simpul dan Sisi pada Graph

Graph G1 G1 adalah graph dengan

Simpul(V) = { 1, 2, 3, 4 }

Sisi(E) = { (1, 2), (1, 3), (2, 3),

(2, 4), (3, 4) }

1

2 3

(8)
(9)
(10)

Graph

Graph G2 Pada G

2, sisi e3 = (1, 3)

dan sisi e4 = (1, 3)

dinamakan sisi-ganda

(multiple edges atau

paralel edges) karena kedua sisi ini

(11)

Graph

Graph G3 Pada G3, sisi e8 = (3, 3)

dinamakan gelang

atau kalang (loop)

(12)

Jenis-Jenis Graph

a. Berdasarkan ada tidaknya gelang atau sisi ganda pada suatu graph, maka graph

digolongkan menjadi dua jenis:

1. Graph sederhana (simple graph).

(13)

Graph sederhana

(

simple graph

)

Graph yang tidak mengandung gelang maupun sisi-ganda dinamakan graph sederhana. G1

adalah contoh graph sederhana

1

2 3

(14)

Graph tak-sederhana

(

unsimple-graph)

Graph yang mengandung sisi ganda atau gelang dinamakan graph tak-sederhana

(unsimple graph). G2 dan G3 adalah contoh graph tak-sederhana

(15)

Jenis-Jenis Graph

b. Berdasarkan jumlah simpul pada suatu graph, maka secara umum graph dapat digolongkan menjadi dua jenis:

1. Graph berhingga (limited graph)

(16)

Graph berhingga

(

limited graph

)

Graph berhingga adalah graph yang jumlah simpulnya, n, berhingga.

(17)

Graph tak-berhingga

(

unlimited graph

)

Graph yang jumlah simpulnya, n, tidak

berhingga banyaknya disebut graph

(18)

Jenis-Jenis Graph

c. Berdasarkan orientasi arah pada sisi, maka secara umum graph dibedakan atas 2 jenis: 1. Graph tak-berarah (undirected

graph)

2. Graph berarah (directed graph atau

(19)

Graph

tak-berarah

(

undirected graph

)

Graph yang sisinya tidak mempunyai

(20)

tak-Graph berarah

(

directed graph

atau

digraph

)

Graph yang setiap sisinya diberikan

orientasi arah disebut sebagai graph

berarah.

1 1

2 3

4

2 3

4

(a) G4 (b) G5

(21)

Jenis-Jenis Graph

d. Berdasarkan Nilai yang ada pada edge:

Graph Berbobot

yaitu graph yang pada setiap sisinya terdapat nilai bilangan riil yang menyatakan sebuah

bobot

Graph Tidak berbobot

yaitu graph yang pada setiap sisinya tidak terdapat sebuah bilangan, sehingga bobot

(22)

Lintasan (

Path

)

Tinjau graph G1:

lintasan 1, 2, 4, 3 adalah lintasan

dengan barisan sisi (1,2), (2,4), (4,3).

Panjang lintasan

adalah jumlah sisi dalam lintasan

tersebut. Lintasan 1, 2, 4, 3 pada G1

memiliki panjang 3.

1

2 3

(23)

Siklus (

Cycle

) atau Sirkuit (

Circuit

)

Lintasan yang berawal

dan berakhir pada simpul yang sama disebut sirkuit atau

siklus.

Panjang sirkuit

adalah jumlah sisi

dalam sirkuit tersebut. Sirkuit 1, 2, 3, 1 pada

G1 memiliki panjang 3.

Tinjau graph G1:

1, 2, 3, 1 adalah sebuah sirkuit.1

2 3

(24)
(25)

Representasi Graph dalam Matrik

Sebuah graph dapat direpresentasikan dalam bentuk Matrik Adjacency, dengan cara sbb:

1.Matrik yang terbentuk adalah matrik bujur sangkar nxn, sesuai banyaknya simpul / vertex yang ada.

2.Elemen yang ada pada setiap matrik

diperoleh berdasarkan bobot yang ada pada masing-masing sisinya dan berdasarkan

(26)

Contoh Graph Berarah-Berbobot

v1 v2 v3 v4 v5 v1

(27)

Contoh Graph Tidak Berarah-Tidak

berbobot

v1 v2 v3 v4 v5 v1

(28)
(29)

Algoritma greedy merupakan metode yang

paling populer untuk memecahkan persoalan optimasi.

Persoalan optimasi (optimization problems):

persoalan yang menuntut pencarian solusi optimum.

Persoalan optimasi ada dua macam:

(30)

Solusi optimum (terbaik) adalah solusi yang bernilai minimum atau maksimum dari

sekumpulan alternatif solusi yang mungkin.

Elemen persoalan optimasi:

kendala (constraints)

fungsi objektif(atau fungsi optimasi)

Solusi yang memenuhi semua kendala disebut

solusi layak (feasible solution). Solusi layak

yang mengoptimumkan fungsi optimasi disebut

(31)

Contoh masalah sehari-hari yang menggunakan prinsip greedy:

Memilih beberapa jenis investasi (penanaman

modal)

Mencari jalur tersingkat dari kota asal ke kota

yang dituju

(32)

Cara Kerja Algoritma Greedy

1. Tentukan node awal dan node tujuan

2. Lakukan berulang-ulang:

a. Menentukan kandidat: Periksa semua sisi yang

terhubung langsung dengan node awal.

b. b. Menentukan kandidat solusi - pilih sisi yang memiliki bobot paling kecil.

- hitung panjang lintasan sementara d(i).

c. Menentukan solusi terpilih - Cek node akhir <> node tujuan

- set node awal = node akhir terpilih

3. Lakukan tahap no.2 sampai node tujuan ketemu

Rumus

(33)
(34)

Loo

1. Tentukan node Awal: A Tentukan node tujuan: L

2.

Referensi

Dokumen terkait

Jika suatu graph diberi label pada setiap simpul dan sisi dengan bilangan sebanyak simpul dan sisi, maka graph tersebut mempunyai sifat total sisi ajaib jika label pada setiap sisi

Pada penyelesaian persoalan dengan metode ini terdapat sejumlah berhingga pilihan yang mungkin, solusi pada setiap tahap dibangun dari hasil solusi tahap sebelumnya, kita

pencarian, Algoritma Greedy bekerja dengan mencari titik bobot yang terkecil dengan menghitung rute yang dilewati dan Algoritma Greedy melakukan perhitungan bobot

Graf tak-berbobot adalah graf yang tidak memiliki bobot pada simpulnya, atau untuk setiap sisi yang menghubungkan setiap simpul memiliki bobot yang sama (sehingga bisa diabaikan)..

Jika suatu graph diberi label pada setiap simpul dan sisi dengan bilangan sebanyak simpul dan sisi, maka graph tersebut mempunyai sifat total sisi ajaib jika label pada setiap sisi

Contoh sederhana penyelesaian sebuah graph untuk menentukan rute terpendek menggunakan algoritma Greedy dengan vertex awal A dan vertex akhir F dapat dilihat

Jika kita mengambil sebuah cycle Hamilton dengan bobot minimal pada graph komplit ini dan menghapus vertex A dan semua edge yang insiden dengannya, maka kita mendapatkan

Minimum Spanning Tree • Prim’s Algorithm – Pada setiap langkah, pilih sisi dari graf G yang mempunyai bobot minimum dengan syarat sisi tersebut tetap terhubung dengan pohon merentang