Anda di halaman 1dari 46

[EL2108] MATEMATIKA DISKRIT

GRAF (bagian-4)
Kisna Pertiwi

Program Studi Teknik Elektro


Institut Teknologi Sumatera
Aplikasi Graf

• Lintasan terpendek (shortest path)


• Persoalan pedagang keliling (travelling salesperson
problem)
• Persoalan tukang pos Cina (chinese postman
problem)
• Pewarnaan graf (graph colouring)

2
Aplikasi Graf 1. Lintasan Terpendek
• Persoalan mencari lintasan terpendek di dalam graf : salah satu
persoalan optimasi
• Graf yang digunakan dalam pencarian lintasan terpendek : Graf
Berbobot
• Graf berbobot : graf yang setiap sisinya diberikan nilai / bobot
• Bobot pada sisi graf dapat menyatakan jarak antar kota, waktu
pengiriman pesan, ongkos pembangunan
• Kata “terpendek” jangan selalu diartikan secara fisik sebagai panajng
minimum, sebab kata “terpendek” berbeda-beda maknanya bergantung
pada tipikal persoalan yang akan diselesaikan
• Namun, secara umum “terpendek” berarti meminimasasi bobot pada
suatu lintasan di dalam graf

3
Lintasan
Terpendek Contoh-contoh terapan pencarian lintasan terpendek:
1. Misalnya simpul pada suatu graf dapat merupakan kota, sedangkan sisi
menyatakan jalan yang menghubungkan dua buah kota. Bobot sisi graf dapat
menyatakan jarak antara dua buah kota atau rata-rata waktu yang ditempuh
antara dua buah kota. Apabila terdapat lintasan terpendek disini adalah
menentukan jarak terpendek atau waktu tersingkat dari kota A ke kota B

2. Misalkan simpul pada gra dapat berupa terminal computer atau simpul
komunikasi dalam suatu jaringan, sedangkan sisi menyatakan saluran
komunikasi yang menghubungkan dua buah terminal. Bobot pada graf dapat
menyatakan biaya pemakaian saluran komunikasi antara dua buah terminal,
jarak antara dua buah terminal, atau waktu pengiriman pesan (message)
antara dua buah terminal. Persoalan lintasan terpendek disini adalah
menentukan jalur komunikasi terpendek antara dua buah terminal komputer.
Lintasan terpendek akan menghemat waktu pengiriman pesan dan biaya
komunikasi
4
Lintasan
Terpendek

Beberapa macam persoalan lintasan terpendek:


a. Lintasan terpendek antara dua buah simpul tertentu
b. Lintasan terpendek antara semua pasangan simpul
c. Lintasan terpendel dari simpul tertentu ke semua simpul
lainnya
d. Lintasan terpendek antara dua buah simpul yang melalui
beberapa simpul tertentu

5
Lintasan
Terpendek
Graf berbobot G = (V, E) dan sebuah simpul awal a. tentukan lintasan terpendek
dari a ke setiap simpul lainnya di dalam G.

Gambar 2. Graf yang digunakan sebagai contoh untuk persoalan lintasan terpendek
6
Contoh 1. Lintasan Terpendek (1/4)

Gambar 1. Graf berarah dari sebuah peta AS

7
Contoh 1. Lintasan Terpendek (2/4)

Matriks ketetanggaan M sebagai berikut:

j=1 2 3 4 5 6 7 8
i=1 0 ∞ ∞ ∞ ∞ ∞ ∞ ∞
2 300 0 ∞ ∞ ∞ ∞ ∞ ∞
3 1000 800 0 ∞ ∞ ∞ ∞ ∞
4 ∞ ∞ 1200 0 ∞ ∞ ∞ ∞
5 ∞ ∞ ∞ 1500 0 250 ∞ ∞
6 ∞ ∞ ∞ 1000 ∞ 0 900 1400
7 ∞ ∞ ∞ ∞ ∞ ∞ 0 1000
8 1700 ∞ ∞ ∞ ∞ ∞ ∞ 0

8
Contoh 1. Lintasan Terpendek (3/4)

Perhitungan lintasan terpendek dari simpul awal a = 5 ke semua simpul lainnya ditabulasikan sebagai berikut.

Lelaran Simpul yang Lintasan D


dipilih 1 2 3 4 5 6 7 8
Inisial
1 5 5 ∞ ∞ ∞ 1500 ∞ 250 ∞ ∞
2 6 5, 6 ∞ ∞ ∞ 1250 ∞ 250 1150 1650
3 7 5, 6, 7 ∞ ∞ ∞ 1250 ∞ 250 1150 1650
4 4 5, 6, 4 ∞ ∞ 2450 1250 ∞ 250 1150 1650
5 8 5, 6, 8 3350 ∞ 2450 1250 ∞ 250 1150 1650
6 3 5, 6, 4, 3 3350 ∞ 2450 1250 ∞ 250 1150 1650
7 2 5, 6, 4, 3, 2 3350 3250 2450 1250 ∞ 250 1150 1650

9
Contoh 1. Lintasan Terpendek (4/4)

Jadi, lintasan terpendek dari:

5 ke 6 adalah 5, 6 dengan panjang = 250


5 ke 7 adalah 5, 6, 7 dengan jarak = 1150
5 ke 4 adalah 5, 6, 4 dengan jarak = 1250
5 ke 8 adalah 5, 6, 8 dengan jarak = 1650
5 ke 3 adalah 5, 6, 4, 3 dengan jarak = 2450
5 ke 2 adalah 5, 6, 4, 3, 2 dengan jarak = 3250
5 ke 1 adalah 5, 6, 8, 1 dengan jarak = 3350

10
Algoritma
Dijkstra
• Algoritma Dijkstra : algoritma yang banyak digunakan untuk
mencari lintasan terpendek
• Algoritma Djikstra ditemukan oleh Edsger W. Dijkstra
• Algoritma Djikstra diterapkan untuk mencari lintasan terpendek
pada graf berarah dan bisa juga pada graf tak-berarah
• Algoritma Djikstra mencari lintasan terpendek dalam sejumlah
langkah
• Algoritma Djikstra menggunakan prinsip greedy
• Prinsip greedy pada Algoritma Djikstra menyatakan bahwa setiap
langkah kita memilih sisi yang berbobot minimum dan
memasukkannya ke dalam himpunan solusi

11
Contoh Menentukan jalur terpendek dari titik A ke semua titik lainnya.
AB 20 ABF 30
10 Iterasi From A to>> B C D E F G H
B F 10 20 80 90
1 A ∞ ∞ ∞ ∞
ABFC 40 A A A
20
50 20 80 30 90 ∞
C 2 B
A

A

B A
50 40
A 20
3 F
20 40 70

30 90

10 A F F B A
90 80
H 4 C
20 40 50

30 90 60
E 20
ABFCH 60
A F C B A C
D 5 D
20 40 50

30 70 60
30 A F C B D C
20 AD 80
ABFD 70 20 40 50 30 70 60
AG 90 G ABFCD 50
6 H
A F C

B D C
ABFCDG 70
12
Contoh Menentukan jalur terpendek dari titik A ke semua titik lainnya

Jadi, kesimpulannya adalah

Jalur terpendek dari A ke B adalah A-B dengan panjang 20


Jalur terpendek dari A ke C adalah A-B-F-C dengan panjang 40
Jalur terpendek dari A ke D adalah A-B-F-C-D dengan Panjang 50
Tidak ada jalur terpendek dari A ke E
Jalur terpendek dari A ke F adalah A-B-F dengan panjang 30
Jalur terpendek dari A ke G adalah A-B-F-C-D-G dengan panjang 70
Jalur terpendek dari A ke H adalah A-B-F-C-H dengan panjang 60
Algoritma Penerapan Algoritma Dijkstra pada Jaringan
Dijkstra Komputer

• Jaringan komputer dapat dimodelkan sebagai sebuah graf


terhubung
• Simpul : komputer (bisa berupa terminal komputer atau sebuah
router
• Sisi : saluran komunikasi (link)
• Setiap sisi di-assign dengan label nilai (bobot)
• Bobot tersebut menyatakan jarak geografis (kilometer), kecepatan
transfer data, atau delai transmisi (waktu pengiriman)

14
Algoritma • Mencari lintasan terpendek dari router asal ke router tujuan dapat
diartikan sebagai menentukan lintasan terpendek dari simpul asal ke
Dijkstra simpul tujuan di dalam graf yang merepresentasikan jaringan komputer
tersebut

Gambar. Jaringan komputer (simpul-simpul terminal


komputer end user tidak digambarkan
15
Gambar. Jaringan komputer dengan tabel rute pada setiap router
16
Algoritma
Dijkstra

Gambar. Lintasan terpendek yang dilalui oleh pesan dari router 1 ke router 5
17
Aplikasi Graf 2. Persoalan Pedagang Keliling (travelling
salesperson problem (TSP)
Diberikan sejumlah kota dan diketahui jarak antar kota.
Tentukan tur terpendek yang harus dilalui oleh seorang
pedagang bila pedagang itu berangkat dari sebuah kota asal
dan menyinggahi setiap kota tepat satu kali dan kembali lagi
ke kota asal keberangkatan.

==> menentukan sirkuit Hamilton yang


memiliki bobot minimum.

18
Travelling
Salesperson
Problem
(TSP)

19
Travelling
Salesperson
Problem Aplikasi TSP:
(TSP)
1.Pak Pos mengambil surat di kotak pos yang tersebar
pada n buah lokasi di berbagai sudut kota.
2.Lengan robot mengencangkan n buah mur pada
beberapa buah peralatan mesin dalam sebuah jalur
perakitan.
3.Produksi n komoditi berbeda dalam sebuah siklus.

20
Travelling Jumlah sirkuit Hamilton di dalam graf lengkap dengan n simpul: (n – 1)!/2.
Salesperson a 12 b

Problem 10
5 9
8
(TSP)
d 15 c

Graf di atas memiliki (4 – 1)!/2 = 3 sirkuit Hamilton, yaitu:

a 12 b a 12 b a b

5 9 5 9
10 8 10 8

d 15 c d 15 c d c

21
a 12 b a 12 b a b
Travelling 5 9 5 9
10 10
Salesperson 8 8

Problem d 15 c d 15 c d c
(TSP)
I1 = (a, b, c, d, a) → bobot = 10 + 12 + 8 + 15 = 45
I2 = (a, c, d, b, a) → bobot = 12 + 5 + 9 + 15 = 41
I3 = (a, c, b, d, a) → bobot = 10 + 5 + 9 + 8 = 32

Sirkuit Hamilton terpendek: I3 = (a, c, b, d, a)


dengan bobot = 10 + 5 + 9 + 8 = 32.

• Jika jumlah simpul n = 20 akan terdapat (19!)/2 sirkuit


Hamilton atau sekitar 6  1016 penyelesaian.
22
Aplikasi Graf 3. Persoalan Tukang Pos Cina (Chinese
Postman Problem)
• Dikemukakan oleh Mei Gan (berasal dari Cina)
pada tahun 1962.

• Persoalan: seorang tukang pos akan mengantar surat ke


alamat-alamat sepanjang jalan di suatu daerah. Bagaimana
ia merencanakan rute perjalanannya supaya ia melewati
setiap jalan tepat sekali dan kembali lagi ke tempat awal
keberangkatan?
➔ menentukan sirkuit Euler di dalam graf

23
Chinese
Postman
Problem
B 8 C
2 8 1
4
A 3 4 D
6 2
F 5 E

Lintasan yang dilalui tukang pos: A, B, C, D, E, F, C, E, B, F, A.

24
Chinese
Postman
Problem • Jika graf yang merepresentasikan persoalan adalah
graf Euler, maka sirkuit Eulernya mudah ditemukan.

• Jika grafnya bukan graf Euler, maka beberapa sisi di


dalam graf harus dilalui lebih dari sekali.

• Jadi, pak pos harus menemukan sirkuit yang


mengunjungi setiap jalan paling sedikit sekali dan
mempunyai jarak terpendek.

25
Chinese Persoalan tukang pos Cina menjadi:
Postman
Problem Seorang tukang pos akan mengantar surat ke alamat-
alamat sepanjang jalan di suatu daerah. Bagaimana ia
merencanakan rute perjalanannya yang mempunyai jarak
terpendek supaya ia melewati setiap jalan paling sedikit
sekali dan kembali lagi ke tempat awal keberangkatan?

26
Aplikasi Graf 4. Pewarnaan Graf
• Ada dua macam: pewarnaan simpul, dan pewarnaan sisi
• Hanya dibahas perwarnaan simpul
• Pewarnaan simpul: memberi warna pada simpul-simpul graf
sedemikian sehingga dua simpul bertetangga mempunyai
warna berbeda.

27
Pewarnaan
Graf

28
Pewarnaan
Graf - Peta
• Aplikasi pewarnaan graf: mewarnai peta.

• Peta terdiri atas sejumlah wilayah.

• Wilayah dapat menyatakan kecamatan, kabupaten,


provinsi, atau negara.

• Peta diwarnai sedemikian sehingga dua wilayah


bertetangga mempunyai warna berbeda.

29
Pewarnaan
Graf - Peta

30
Pewarnaan
Graf - Peta
• Nyatakan wilayah sebagai simpul, dan batas antar dua
wilayah bertetangga sebagai sisi.

• Mewarnai wilayah pada peta berarti mewarnai simpul


pada graf yang berkoresponden.

• Setiap wilayah bertetangga harus mempunyai warna


berbeda ➔ warna setiap simpul harus berbeda.

31
1 1 1
Pewarnaan 2 2 2

3 3 3
Graf - Peta 8
4
5 8
4
5
4
5
8

7 6 7 6 7 6

(a) (b) (c)

1 merah 2 kuning 1 merah 2 kuning

biru 3 jingga biru 3 merah


ungu ungu
4 4
hijau
8 5 kuning
8 5

putih kuning
7 6 7 6
hitam merah

(d) (e)

Gambar (a) Peta


(b) Peta dan graf yang merepresentasikannya,
(c) Graf yang merepresentasikan peta,
(d) Pewarnaan simpul, setiap simpul mempunai warna berbeda,
(e) Empat warna sudah cukup untuk mewarnai 8 simpul
32
Bilangan • Bilangan kromatik : jumlah minimum warna yang dibutuhkan
Kromatik untuk mewarnai peta.
• Simbol: (G).

• Suatu graf G yang mempunyai bilangan kromatis k dilambangkan


dengan (G) = k.
• Graf di bawah ini memiliki (G) = 3

33
Pewarnaan
pada Berbagai • Graf kosong Nn memiliki (G) = 1, karena semua simpul tidak
terhubung, jadi untuk mewarnai semua simpul cukup
Tipe Graf dibutuhkan satu warna saja.

34
Pewarnaan
pada Berbagai
Tipe Graf • Graf lengkap Kn memiliki (G) = n sebab semua simpul
saling terhubung sehingga diperlukan n buah warna.

35
Pewarnaan
pada Berbagai
Tipe Graf
• Graf bipartit Km,n mempunyai (G) = 2, satu untuk simpul-
simpul di himpunan V1 dan satu lagi untuk simpul-simpul di
V2.

36
Pewarnaan
pada Berbagai
Tipe Graf
• Graf lingkaran dengan n ganjil memiliki (G) = 3, sedangkan
jika n genap maka (G) = 2.

• Sembarang pohon T memiliki (T) = 2.

• Untuk graf-graf yang lain tidak dapat dinyatakan secara


umum bilangan kromatiknya.

37
Teorema
Pewarnaan • Perkembangan teorema pewarnaan graf:
Graf TEOREMA 1. Bilangan kromatik graf planar  6.
TEOREMA 2. Bilangan kromatik graf planar  5.
TEOREMA 3. Bilangan kromatik graf planar  4.

• Teorema 4 berhasil menjawab persoalan 4-warna (yang


diajuka pada abad 19): dapatkah sembarang graf planar
diwarnai hanya dengan 4 warna saja?

• Jawaban dari persoalan ini ditemukan oleh Appel dan Haken


yang menggunakan komputer untuk menganalisis hampir
2000 graf yang melibatkan jutaan kasus
38
Cukup 4 warna saja untuk mewarnai sembarang peta

39
Pewarnaan
Graf -
Penjadwalan • Aplikasi lain pewarnaan graf: penjadwalan.
Misalkan terdapat delapan orang mahasiswa (1, 2, …, 8) dan lima buah mata kuliah yang
dapat dipilihnya (A, B, C, D, E). Tabel berikut memperlihatkan matriks lima mata kuliah
dan delapan orang mahasiswa. Angka 1 pada elemen (i, j) berarti mahasiswa i memilih
mata kuliah j, sedangkan angka 0 menyatakan mahasiswa i tidak memilih mata kuliah j.

A B C D E
1 0 1 0 0 1
2 0 1 0 1 0
3 0 0 1 1 0
4 1 1 0 0 0
5 0 1 0 1 0
6 0 0 1 1 0
7 1 0 1 0 0
8 0 0 1 1 0

40
Pewarnaan
Graf -
Penjadwalan Berapa paling sedikit jumlah hari yang dibutuhkan
untuk jadwal ujian tersebut sedemikian sehingga
semua mahasiswa dapat mengikuti ujian mata
kuliah yang diambilnya tanpa bertabrakan waktunya
dengan jadwal ujian kuliah lain yang juga
diambilnya?

Penyelesaian:
simpul → mata kuliah
sisi → ada mahasiswa yang mengambil
kedua mata kuliah (2 simpul)
41
Pewarnaan A merah A

Graf - biru
E E
Penjadwalan B B merah

merah
biru
D
D C

(a) (b)

Gambar 8.74. (a) Graf persoalan penjadwalan ujian 5 mata kuliah


untuk 8 orang mahasiswa
(b) Hasil pewaranan pada simpul-simpul graf
• Bilangan kromatik graf pada Gambar 8.74 adalah 2.
• Jadi, ujian mata kuliah A, E, dan D dapat dilaksanakan bersamaan,
sedangkan ujian mata kuliah B dan C dilakukan bersamaan
tetapi pada waktu yang berbeda dengan mata kuliah A, E, dan D sehingga
butuh waktu 2 hari untuk pelaksaan ujian 42
Latihan

1. Dapatkah kita menggambar graf teratur


berderajat 3 dengan 7 buah simpul? Mengapa?
2. Tentukan jumlah simpul pada graf sederhana
bila mempunyai 20 buah sisi dan tiap simpul
berderajat sama.
3. Berapa jumlah minimum simpul yang
diperlukan agar sebuah graf dengan 6 buah sisi
menjadi planar? Ulangi soal yang sama untuk 11
buah sisi.

43
Latihan

4. Diberikan gambar sebuah graf G seperti di bawah ini.

B
(a) Tunjukkan dengan ketidaksamaan
A C Euler bahwa graf G tidak planar.
D E

F G

44
Latihan
5. Gambarkan 2 buah graf yang isomorfik dengan graf teratur
berderajat 3 yang mempunyai 8 buah simpul.

6. Sebuah departemen mempunyai 6 kelompok kerja yang


setiap bulannya masing-masing selalu mengadakan rapat
satu kali. Keenam kelompok kerja dengan masing-masing
anggotanya adalah: K1 = {Amir, Budi, Yanti}, K2 = {Budi,
Hasan, Tommy}, K3 = {Amir, Tommy, Yanti}, K4 = {Hasan,
Tommy, Yanti}, K5 = {Amir, Budi}, K6 = {Budi, Tommy, Yanti}.
Berapa banyak waktu rapat berbeda yang harus
direncanakan sehingga tidak ada anggota kelompok kerja
yang dijadwalkan rapat pada waktu yang sama. Gambarkan
graf yang merepresentasikan persoalan ini lalu (jelaskan
sisi menyatakan apa, simpul menyatakan apa) tentukan
jumlah waktu rapat ini.
45
Latihan

7. Apakah K13 memiliki sirkuit Euler? Sirkuit Hamilton?


Ulangi pertanyaan yang sama untuk K14
8. Sebuah graf akan dibentuk dari 25 buah sisi. Berapa
jumlah maksimum simpul di dalam graf sederhana yang
dapat dibuat dari 25 buah sisi tersebut?

46

Anda mungkin juga menyukai