BAB 2 TINJAUAN PUSTAKA

dokumen-dokumen yang mirip
Telah diuji pada. Tanggal : 3 Juni 2013 PANITIA PENGUJI TESIS

PENERAPAN PEWARNAAN GRAF DALAM PENJADWALAN

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Pendahuluan

BAB 2 LANDASAN TEORI

ANALISIS PENYELESAIAN MASALAH PENJADWALAN KULIAH MENGGUNAKAN TEKNIK PEWARNAAN GRAPH DENGAN ALGORITMA KOLONI LEBAH

PEMBANGUNAN SISTEM PENJADWALAN KULIAH MENGGUNAKAN ALGORITMA PEWARNAAN GRAF

APLIKASI PEWARNAAN SIMPUL GRAF UNTUK MENGATASI KONFLIK PENJADWALAN MATA KULIAH DI FMIPA UNY

Aplikasi Graf pada Penentuan Jadwal dan Jalur Penerbangan

BAB II LANDASAN TEORI

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf

BAB II KAJIAN PUSTAKA. Sebuah graf G didefinisikan sebagai pasangan himpunan (V,E), dengan V

APLIKASI PEWARNAAN GRAF PADA MASALAH PENYUSUNAN JADWAL PERKULIAHAN DI UNIVERSITAS KUNINGAN

Pencarian Jalur Terpendek dengan Algoritma Dijkstra

Aplikasi Algoritma Dijkstra dalam Pencarian Lintasan Terpendek Graf

= himpunan tidak-kosong dan berhingga dari simpul-simpul (vertices) = himpunan sisi (edges) yang menghubungkan sepasang simpul

Penerapan Algoritma Backtracking pada Pewarnaan Graf

BAB 2 LANDASAN TEORI

Aplikasi Pewarnaan Graf pada Pemecahan Masalah Penyusunan Jadwal

Aplikasi Shortest Path dengan Menggunakan Graf dalam Kehidupan Sehari-hari

APLIKASI PEWARNAAN GRAPH PADA PEMBUATAN JADWAL

Aplikasi Pewarnaan Graf untuk Sistem Penjadwalan On-Air Stasiun Radio

Pemanfaatan Algoritma Sequential Search dalam Pewarnaan Graf untuk Alokasi Memori Komputer

Art Gallery Problem II. POLIGON DAN VISIBILITAS. A. Poligon I. PENDAHULUAN. B. Visibilitas

BAB 2 TINJAUAN PUSTAKA

APLIKASI ALGORITMA SEQUENTIAL COLOR UNTUK PEWARNAAN PETA WILAYAH KABUPATEN KUANTAN SINGINGI PROVINSI RIAU TUGAS AKHIR

Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Riau Kampus Binawidya Pekanbaru (28293), Indonesia

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

TEORI GRAF UNIVERSITAS MUHAMMADIYAH JEMBER ILHAM SAIFUDIN PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK. Selasa, 13 Desember 2016

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Create PDF with GO2PDF for free, if you wish to remove this line, click here to buy Virtual PDF Printer

PEWARNAAN GRAF SEBAGAI METODE PENJADWALAN KEGIATAN PERKULIAHAN

Aplikasi Pewarnaan Graf Pada Pengaturan Warna Lampu Lalu Lintas

BAB 2 LANDASAN TEORI

Graf digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek tersebut. Demak Semarang. Kend al. Salatiga.

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf

BAB 2 LANDASAN TEORI

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT

STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN PROBLEM

Penerapan Pewarnaan Simpul Graf untuk Menentukan Jadwal Ujian Skripsi pada STMIK Amik Riau Menggunakan Algoritma Welch-powell

APLIKASI TRAVELLING SALESMAN PROBLEM DENGAN METODE ARTIFICIAL BEE COLONY

Graph. Politeknik Elektronika Negeri Surabaya

BAB 2 LANDASAN TEORI

Matematik tika Di Disk i r t it 2

Diktat Algoritma dan Struktur Data 2

MODEL PENJADWALAN GURU MENGGUNAKAN GRAPH COLORING DENGAN ALGORITMA BEE COLONY

BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Aplikasi Pewarnaan Graph pada Pembuatan Jadwal

I. PENDAHULUAN II. DASAR TEORI. Penggunaan Teori Graf banyak memberikan solusi untuk menyelesaikan permasalahan yang terjadi di dalam masyarakat.

LAPORAN PENELITIAN APLIKASI PEWARNAAN SIMPUL GRAF UNTUK MENGATASI KONFLIK PENJADWALAN MATA KULIAH DI FMIPA UNY

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Pencarian Jalur Terpendek dengan Menggunakan Graf dan Greedy dalam Kehidupan Sehari-hari

MateMatika Diskrit Aplikasi TI. Sirait, MT 1

BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI. Definisi Graf G didefinisikan sebagai pasangan himpunan (V, E), yang dalam hal ini:

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 1 PENDAHULUAN. Persoalan lintasan terpanjang (longest path) merupakan persoalan dalam mencari

Pewarnaan Simpul pada Graf dan Aplikasinya dalam Alokasi Memori Komputer

BAB 2 LANDASAN TEORI

PENERAPAN TEORI GRAF DALAM RENCANA TATA RUANG KOTA

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

IMPLEMENTASI ALOKASI JADWAL MATA PELAJARAN SMU MENGGUNAKAN ALGORITMA KOLONI SEMUT (AKS)

BAB II LANDASAN TEORI

Penerapan Pewarnaan Graf dalam Pengaturan Penyimpanan Bahan Kimia

BAB 2 TINJAUAN PUSTAKA

Analisis Penyelesaian Masalah Penjadwalan Kuliah Menggunakan Teknik Pewarnaan Graph Dengan Algoritma Koloni Lebah

BAB 2 LANDASAN TEORI

BAB II KAJIAN PUSTAKA. Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi

Graf. Bekerjasama dengan. Rinaldi Munir

APLIKASI ALGORITMA GREEDY UNTUK PEWARNAAN WILAYAH (REGION COLORING) PADA PETA KABUPATEN INDRAGIRI HULU DAN KAMPAR DI PROVINSI RIAU TUGAS AKHIR

BAB 2 LANDASAN TEORI

Pemanfaatan Directed Acyclic Graph untuk Merepresentasikan Hubungan Antar Data dalam Basis Data

Kode MK/ Matematika Diskrit

BAB 2 LANDASAN TEORI

Aplikasi Teori Graf dalam Pencarian Jalan Tol Paling Efisien

SATUAN ACARA PERKULIAHAN MATA KULIAH GRAPH & ANALISIS ALGORITMA (SI / S1) KODE / SKS : KK / 3 SKS

PENDAHULUAN MODUL I. 1 Teori Graph Pendahuluan Aswad 2013 Blog: 1.

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Discrete Mathematics & Its Applications Chapter 10 : Graphs. Fahrul Usman Institut Teknologi Bandung Pengajaran Matematika

BAB III KONSEP DASAR TEORI GRAF. Teori graf adalah salah satu cabang matematika yang terus berkembang

Graf. Matematika Diskrit. Materi ke-5

ANALISA DAN IMPLEMENTASI ALGORITMA PRIORITY DISPATCHING DALAM PENJADWALAN PEMBAGIAN RUANGAN UJIAN

Aplikasi Pewarnaan Graf dalam Penyimpanan Senyawa Kimia Berbahaya

Graf. Program Studi Teknik Informatika FTI-ITP

Penyelesaian Teka-Teki Sudoku dengan Didasarkan pada Teknik Pewarnaan Graf

IMPLEMENTASI ALGORITMA OPTIMASI BEE COLONY UNTUK PENJADWALAN JOB SHOP

BAB 2 LANDASAN TEORI

Pemanfaatan Algoritma Semut untuk Penyelesaian Masalah Pewarnaan Graf

BAB 2 LANDASAN TEORI

Matematika Diskret (Graf II) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

Transkripsi:

BAB 2 TINJAUAN PUSTAKA Pada umumnya beragam model penjadwalan telah dikembangkan seperti program matematis dengan berbagai teknik diantaranya Wardoyo (2003) menggunakan logika Fuzzy, yakni suatu cara untuk memetakan suatu ruang masukkan ke dalam suatu ruang keluaran, Betrianis dan Aryawan (2003) menggunakan algoritma Tabu Search, yang mana merupakan salah satu metode pemecahan permasalahan optimasi kombinatorial yang tergabung ke dalam local search methods, Ronny et al. (2005) menggunakan algoritma Branch and Bound untuk mencari solusi optimal pada masalah optimisasi kombinatorial seperti masalah penjadwalan. Salah satu penelitian untuk penyelesaian penjadwalan dilakukan oleh Redl dan Anton (2004). Yang bersangkutan menawarkan proses pemasangan kelas dilakukan bersamaan dengan proses pencarian slot waktu itu sendiri. Teknik ini dapat menghemat waktu yang harus dilakukan. Dalam hal ini, Redl dan Anton (2004) memanfaatkan teknik pewarnaan graph yang diselesaikan dengan menggunakan algoritma sekuensial dan algoritma greedy. Algoritma sekuensial merupakan suatu algoritma runtun dimana teknik pengerjaannya harus dilakukan secara berurutan mulai dari baris pertama sampai dengan baris terakhir tanpa ada loncatan atau perulangan sedangkan algoritma greedy adalah suatu algoritma yang dalam memecahkan suatu masalah selalu mengambil pilihan yang terbaik dan dapat diperoleh pada saat itu tanpa memperhatikan lagi konsekuensi di depan ( take what you can get now ). Penelitian lain tentang penjadwalan dilakukan pula oleh Komang (2008) dengan menggunakan algoritma metaheuristik kombinasi genetika dengan tabu search. Penelitian tersebut melakukan perbandingan hasil yang diperoleh saat menggunakan algoritma genetika dengan algoritma kombinasi genetika dan tabu search. Penerapan algoritma bee colony dalam masalah penjadwalan telah di bahas oleh Rachmawati et al. (2011), Carlos et al. (2008), Karaboga et al. (2010), Faraji dan Javadi (2010). Kelima peneliti tersebut menyusun model persoalan penjadwalan dengan melibatkan lebah pramuka, yakni dengan menentukan Neighbourhood 4

5 Search kemudian dievaluasi sehingga menghasilkan solusi yang layak. Menurut Rachmawati et al. (2011) banyak faktor yang harus dipertimbangkan untuk memperoleh solusi yang optimal dan seringkali tidak dapat memuaskan karena tidak semua kebutuhan terpenuhi. Oleh karena itu, perlu ditetapkan suatu batasan dalam penyusunan jadwal yang mutlak harus dipenuhi (hard constraint) dan tidak harus dipenuhi (soft constraint), akan tetapi tetap menjadi acuan dalam proses pembuatan jadwal. Sebuah jadwal dikatakan layak, apabila solusi tersebut memenuhi semua ketentuan hard constraint tanpa ada pelanggaran. Sementara solusi jadwal dikatakan optimal apabila jumlah pelanggaran terhadap soft constraint minimum. 2.1 Model Penjadwalan Permasalahan penjadwalan dapat dimodelkan dan diselesaikan dengan teknik pewarnaan graph. Masalah pewarnaan graph dikenal dengan Optimisasi Kombinatorial. Rachmawati et al. (2011), menyatakan selain untuk penjadwalan, pewarnaan graph juga dapat digunakan dalam aplikasi pemasangan frekuensi pada jaringan selular, pemasangan kru karyawan dan sebagainya. Pada model konvensional pewarnaan graph untuk penjadwalan, vertex merepresentasikan mata pelajaran yang akan dijadwalkan, edge merepresentasikan pasangan jam mengajar yang bisa menimbulkan konflik (tidak bisa dijadwalkan pada waktu yang sama), dan warna pada vertex merepresentasikan periode waktu pelajaran tersebut dijadwalkan. Jika terdapat dua vertex v dan w yang terhubung oleh sebuah edge vw maka kedua vertex harus diwarnai dengan warna yang berbeda. Jumlah minimum warna yang dibutuhkan untuk mewarnai sebuah graph disebut angka kromatik dari G atau dinotasikan dengan X(G). 2.2 Graph 2.2.1 Teori Graph Teori graph merupakan salah satu studi terhadap bidang matematika yang diperkenalkan pertama kali oleh seorang ahli matematika asal Swiss, Leonhard Euler 1736 (Deo, 1974). Ide besarnya muncul sebagai upaya penyelesaian masalah

6 jembatan Konigsberg. Dari permasalahan itu, akhirnya Euler mengembangkan beberapa konsep mengenai teori graph. Materi -materi yang terdapat dalam teori graph itu sendiri adalah ilmu yang mempelajari mengenai logika dari persoalan yang berhubungan dengan himpunan dan relasi binary. (Hariyanto, 2003). Graph merupakan salah satu model matematika yang kompleks dan cukup sulit, akan tetapi bisa juga menjadi solusi yang sangat bagus untuk masalah tertentu. Oleh sebab itu, representasi dari suatu graph bergantung dari sifat data dan operasi yang dilakukan terhadap data dari sebuah kasus tertentu. Dalam kehidupan sehari-hari banyak sekali persoalan yang diimplementasikan dengan graph. Bidang-bidang yang menggunakan penerapan graph antara lain switching network, coding theory, electric analysis, operation research, aljabar, computer science dan kimia. (Deo, 1974). Keunikan teori graph adalah kesederhanaan pokok bahasan yang dipelajarinya karena dapat disajikan dengan titik (simpul atau vertex) dan garis (sisi atau edge). Meskipun pokok bahasan dari topik-topik teori graph sangat sederhana tetapi isi di dalamnya belum tentu sesederhana itu. Kerumitan demi kerumitan masalah selalu ada dan bahkan sampai saat ini masih ada masalah yang belum terpecahkan. Teori graph telah banyak memberikan masukan kepada ilmu baru salah satunya adalah pewarnaan graph. Graph juga digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek tersebut. Banyak persoalan pada dunia nyata yang sebenarnya merupakan representasi visual dari graph. Contoh salah satu representasi visual dari graph adalah peta. Banyak hal yang dapat digali dari representasi visual dari graph. (Jusuf, 2009). Menurut Munir (2003), graph adalah struktur diskrit yang terdiri dari simpul (vertex) dan sisi (edge) atau secara matematis Graph G didefenisikan sebagai pasangan himpunan (V,E) yang mana V adalah himpunan tidak kosong dari simpulsimpul (verticles atau node) : {v 1,v 2,...v n } dan E adalah himpunan sisi (edges atau arcs) yang menghubungkan sepasang simpul : {e 1,e 2,...e n } atau dapat ditulis dengan notasi G =(V,E). Defenisi ini menyatakan bahwa V tidak boleh kosong sedangkan E boleh kosong. Artinya, sebuah graph dimungkinkan tidak mempunyai sisi satu buah pun, tetapi simpul harus ada, minimal satu.

7 Berdasarkan orientasi arah pada sisi, secara umum graph dibedakan atas dua jenis, yaitu sebagai berikut: 1. Graph tak berarah. Graph tak berarah adalah graph yang sisinya tidak mempunyai orientasi arah. Pada graph tak berarah, urutan pasangan simpul yang dihubungkan oleh sisi tidak diperhatikan. Jadi, (vj,vk) =(vk,vj) adalah sisi yang sama. Gambar 2.1 Graph tak berarah 2. Graph berarah. Graph berarah adalah graph yang sisinya diberikan orientasi arah. Pada umumnya, sisi yang berarah disebut dengan busur (arc). Pada graph berarah, (vj,vk) dan (vk,vj) menyatakan 2 buah busur yang berbeda, atau dengan kata lain (vj,vk) (vk,vj). Untuk busur (vj,vk), simpul vj dinamakan simpul asal (initial vertex) dan simpul vk dinamakan simpul terminal (terminal vertex). Gambar 2.2 Graph berarah

8 2.2.2 Graph berbobot Graph berbobot adalah graph yang setiap sisinya diberikan sebuah harga (bobot). Bobot pada setiap sisi dapat menyatakan jarak antara dua buah kota, biaya perjalanan, waktu tempuh, ongkos produksi dan sebagainya. Gambar 2.3 Graph berbobot 2.2.3 Representasi Graph Menurut Munir (2003), agar graph dapat diproses dalam program komputer, graph harus direpresentasikan ke dalam memori. Terdapat beberapa representasi untuk graph, antara lain matriks ketetanggaan, matriks bersisian dan senarai ketetanggaan. 2.2.3.1 Matriks ketetanggaan (Adjacency Matrix) Misalkan G =(V,E) graph sederhana dimana V = n, n > 1 Maka, matriks ketetanggaan A dari G adalah matriks n n dimana A =[a ij ], [a ij ] menjadi 1 bila simpul i dan j bertetangga [a ij ] menjadi 0 bila simpul i dan j tidak bertetangga. Jumlah elemen matriks bertetanggaan untuk graph dengan n simpul adalah n 2. Keuntungan representasi dengan matriks ketetanggaan adalah selain dapat mengakses elemen matriksnya secara langsung dari indeks, matriks ketetanggaan ini juga dapat menentukan secara langsung apakah simpul i dan simpul j bertetangga.

9 Pada graph berbobot, dimana a ij menyatakan bobot tiap sisi yang menghubungkan simpul i dengan simpul j. Bila tidak ada sisi dari simpul i ke simpul j atau dari simpul j ke simpul i, maka, a ij diberi nilai tak berhingga. Gambar 2.4 Graph matriks ketetanggaan Bentuk matriks ketetanggaan dari graph pada gambar 2.4 adalah : 1 2 3 4 1 2 3 4 0 0 1 0 0 0 1 1 1 1 0 1 0 1 1 0 2.2.3.2 Matriks bersisian (incidency matrix) Matriks bersisian menyatakan kebersisian simpul dengan sisi. Misalkan G = (V,E) adalah graph dengan n simpul dan m sisi, maka matriks kebersisian A dari G adalah matriks berukuran m n dimana A =[a ij ], [a ij ] menjadi 1 bila simpul i dan sisi j bersisian [a ij ] menjadi 0 bila simpul i dan sisi j tidak bersisian Gambar 2.5 Graph Matriks Bersisian

10 Bentuk matriks bersisian dari graph pada gambar 2.5 adalah : 1 2 3 4 e 1 e 2 e 3 e 4 0 0 1 0 0 0 1 1 1 1 0 1 0 1 1 0 2.2.3.3 Senarai ketetanggaan (adjacency list) Matriks ketetanggaan memiliki kelemahan apabila graph memiliki jumlah sisi yang relatif sedikit sehingga graph sebagian besar berisi bilangan 0. Hal ini merupakan pemborosan terhadap memori, karena banyak menyimpan bilangan 0 yang seharusnya tidak perlu disimpan. Untuk kepentingan efisiensi ruang, maka tiap baris matriks tersebut digantikan senarai yang hanya berisikan vertex-vertex dalam adjacency set V x dari setiap vertex x4. 2.2.4 Lintasan terpendek (shortest path) Lintasan terpendek merupakan lintasan paling minimum yang ditempuh dari suatu tempat untuk mencapai tempat tujuan tertentu. Graph yang digunakan merupakan graph berbobot, yaitu graph yang setiap edgenya memiliki nilai. Nilai pada sisi graph dapat berupa jarak, waktu, biaya, ataupun yang lainnya. Ada beberapa macam persoalan lintasan terpendek, antara lain adalah sebagai berikut: 1. Lintasan terpendek antara dua buah simpul tertentu. 2. Lintasan terpendek antara semua pasangan simpul. 3. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain. 4. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu.

11 2.2.5 Pewarnaan graph Dalam pewarnaan graph jumlah warna minimum yang dapat digunakan untuk mewarnai graph dinyatakan dengan bilangan kromatik yang disimbolkan dengan χ(g). Graph yang memiliki bilangan kromatik 1 adalah graph kosong yaitu graph yang hanya terdiri dari sebuah simpul. Sementara suatu graph dikatakan planar jika tidak ada dua buah titik yang saling berpotongan yaitu graph yang dapat digambarkan pada bidang datar tanpa ada sisi yang menyilang diatas sisi lainnya dimana jumlah warna yang digunakan hanya 4 warna. (Kubale, 2004). Sebuah kasus khusus yang terkenal dari m colorability decision problem yaitu masalah 4 warna dari suatu graph planar. Masalah ini disertai pernyataan sebagai berikut : berikan beberapa wilayah yang dapat menimbulkan daerah-daerah yang diwarnai sedemikian rupa sehingga daerah - daerah yang berdampingan tidak memiliki warna yang sama, akan tetapi hanya empat buah warna yang dipakai. (Rosen, 1999). Masalah pewarnaan seperti itu dapat berubah menjadi sangat berguna karena wilayah tersebut dapat dengan mudah diubah bentuknya menjadi sebuah graph. Masing-masing daerah dari wilayah itu menjadi sebuah simpul dan jika dua buah daerah berdampingan maka ke dua buah simpulnya berhubungan, kemudian hubungkan dengan sebuah sisi. Teori pewarnaan graph banyak diimplementasikan pada berbagai kasus, salah satu diantaranya adalahscheduling (penjadwalan), yaitu mengefektifkan waktu untuk banyak keperluan dan jumlah resource yang terbatas. Dalam penjadwalan, setiap pekerjaan dinyatakan sebagai simpul dan sisi menggambarkan bahwa kedua job yang terhubung oleh sisi tersebut berjalan secara bersamaan (konflik). Tujuan dari penerapan graph adalah agar mengetahui job yang konflik (tidak bertetangga). Sebuah graph dengan pewarnaan vertex yang tepat adalah sebuah graph yang akan mewarnai sepasang vertex yang terhubung oleh edge dengan warna yang berbeda. Pasangan vertex yang tidak terhubung oleh edge bisa menggunakan dua warna yang sama atau berbeda.

12 Dalam proses pewarnaan, graph alternatif mengunakan prosedur yang sama dengan graph konvensional, tetapi dengan satu pengecualian bahwa hanya satu ruang saja yang diberikan warna. Seperti dalam graph konvensional setiap warna dalam graph konflik yang telah melewati proses pewarnaan melambangkan slot waktu yang berbeda. Dalam graph konflik alternatif, sebuah vertex v i r n yang telah diwarnai mengimplikasikan bahwa mata pelajaran m i telah dipasang pada ruangan r n dan dijadwalkan pada sebuah slot waktu tertentu. Oleh karena itu ada dua hal yang perlu diperhatikan dalam memodelkan sistem penjadwalan, yaitu: 1. Graph mungkin dapat memiliki suatu struktur khusus sehingga memudahkan dalam pewarnaan. 2. Jika tidak dapat menemukan solusi optimum, maka dapat digunakan metode aproksimasi yang tidak memberikan solusi optimum tetapi setidaknya memberikan performansi yang lebih baik. 2.2.6 Bilangan kromatik Bilangan Kromatik Graph G(χ(G)) adalah jumlah warna minimum yang dapat digunakan untuk mewarnai simpul (verteks/ V ). Penyelesaian kasus penjadwalan pada hakikatnya adalah berupaya untuk mengalokasikan sejumlah aktivitas yang mengandung constraint atau batasan ke dalam timeslot (matriks ruang dan waktu). Jumlah timeslot yang tersedia juga memiliki batasan baik berupa jumlah ruang, maupun waktu penggunaannya. Oleh karena itu, penjadwalan yang baik haruslah dapat menyesuaikan sejumlah keterbatasan resource atau sumber daya yang ada agar seluruh aktivitas dapat tetap terlaksana tanpa melanggar constraintnya. Pewarnaan graph untuk mengakomodasi hal tersebut dilakukan dengan bilangan kromatik. 2.3 Graph Konflik (Shift Ganda) Sebuah mata pelajaran yang direpresentasikan dengan sekumpulan vertex, dimana setiap vertex pada sebuah kumpulan merepresentasikan ruangan yang mungkin

13 untuk penjadwalan mata pelajaran tersebut. Misalkan terdapat sebuah himpunan terdiri dari n mata pelajaran {m 1,m2,...,m n } yang akan dijadwalkan dan terdapat sebuah himpunan yang terdiri dari p ruangan kelas {k 1,k 2,...,k p } sebagai pasangan dari {m 1,m2,...,m n }. Apabila dari p ruangan kelas itu terdapat subset {r 1,r 2,r 4,r 5,r 6,r 8 } yakni suatu ruangan dimana setiap mata pelajaran hanya bisa dipasangkan berdasarkan beberapa faktor (misalnya kapasitas ruangan, tipe ruangan yang diminta guru). Jadi, untuk setiap mata pelajaran dalam graph konflik dengan lima vertex dapat digambarkan sebagai {v i r 1,v i r 2,v i r 4,v i r 5,v i r 6,v i r 8 }, dimana tiap vertex merepresentasikan satu kemungkinan pemasangan ruangan kelas untuk setiap mata pelajaran yang ada. Pada keadaan sebenarnya hanya akan terdapat satu ruangan kelas misalnya r n yang akan dipergunakan untuk satu mata pelajaran m i, yang mana akan direpresentasikan oleh vertex v i r n. Apabila terdapat dua mata pelajaran yang dapat menimbulkan konflik seperti m i dan m j, maka di antara kedua vertex itu harus ditambahkan sebuah edge. Edge yang ditambahkan kemudian akan menjadi sebuah subgraph bipartie yang terdiri dari sekumpulan vertex yang berhubungan dengan mata pelajaran m i dan m j. Sebagai contoh, jika mata pelajaran m i dan m j terdiri dari kumpulan vertex {v i r 1,v i r 2,v i r 4,v i r 5,v i r 6,v i r 8 } dan {v j r 1,v j r 3,v j r 5,v j r 6,v j r 8 }, maka vertex v i r 1,v i r 2,v i r 4,v i r 5,v i r 6 dan v i r 8 menjadi himpunan bagian pertama sedangkan vertex v j r 1,v j r 3,v j r 5,v j r 6 dan v j r 8 menjadi himpuan bagian kedua. Dengan kata lain jika mata pelajaran m i dan m j tidak menimbulkan konflik maka m i dan m j bebas untuk dipasangkan dalam slot waktu yang sama, oleh karena itu, dalam pewarnaan graph penjadwalan konvensional mungkin tidak perlu menambahkan edge di antara vertex v i dan v j. Pada graph konflik alternatif tetap ditambahkan edge di antara dua kumpulan vertex yang memiliki ruangan yang sama v i r n dan v j r n. Jika mata pelajaran m i dan m j yang memiliki kemungkinan pemasangan t ruangan yang sama, maka ditambahkan t edge antara kumpulan vertex milik mata pelajaran m i dan m j.

14 2.3.1 Penjadwalan dengan metode graph Ada tiga macam pewarnaan graph, yaitu : 1. Pewarnaan simpul (vertex colouring), merupakan pemberian warna atau label pada setiap simpul sehingga tidak ada 2 simpul bertetangga yang memiliki warna sama. 2. Pewarnaan sisi (edge coloring), merupakan pemberian warna pada setiap sisi pada graph sehingga sisi-sisi yang berhubungan tidak memiliki warna yang sama. 3. Pewarnaan wilayah (region colouring), merupakan pemberian warna pada setiap wilayah pada graph sehingga tidak ada wilayah yang bersebelahan yang memiliki warna yang sama. Penulis dapat memberikan sembarang warna pada simpul-simpul asalkan berbeda dengan simpul tetangganya. Dalam persoalan pewarnaan graph tidak hanya sekedar mewarnai simpul-simpul dengan warna berbeda dari warna simpul tetangganya saja, namun juga menginginkan jumlah macam warna yang digunakan sesedikit mungkin. 2.4 Masalah Pewarnaan Graph dalam Penjadwalan Berikut ini adalah masalah - masalah konflik dalam pewarnaan graph pada sistem penjadwalan : 2.4.1 Multicoloring Dalam multicoloring setiap simpul v memiliki demand x(v) sehingga harus sebanyak x(v) warna diberikan pada setiap simpul v dan setiap tetangga memiliki warna yang berbeda. Multicoloring dapat diterapkan dalam penjadwalan job yang membutuhkan waktu yang berbeda. Ada dua jenis multicoloring yaitu: 1. Non - preemptive yaitu set warna yang diberikan pada setiap simpul harus memiliki interval yang kontinu. Ini berarti setiap job tidak dapat diinterupsi karena waktu yang digunakan secara kontinu.

15 2. Preemptive, pada varian ini job dapat diinterupsi karena set warna tidak bersifat kontinu. 2.4.2 Precoloring extension Dalam penjadwalan, jadwal tidak dapat dikontrol secara penuh. Ada saat ketika terdapat suatu job yang sudah memiliki waktu kerja yang tertentu (pengambilan slot waktu telah diputuskan sebelumnya dan tidak dapat diubah atau disebut juga precoloring). 2.4.3 List coloring Dalam list coloring setiap simpul v memiliki sejumlah/set warna yang dapat diberikan. Dan tujuan dari list coloring adalah untuk mencari warna yang tepat dari himpunan warna yang tersedia. Model ini dapat diterapkan jika suatu job hanya dapat dikerjakan oleh suatu orang/suatu mesin tertentu saja tetapi terdapat beberapa opsi waktu sampai orang/mesin tersebut tersedia. 2.4.4 Minimum sum coloring Tujuan lain dalam penjadwalan adalah meminimalkan waktu total yang dibutuhkan dalam pengerjaan job dalam jadwal. Minimum sum coloring mewarnai graph sehingga jumlah warna yang diberikan pada seluruh job bernilai minimum. 2.5 Algoritma Bee Colony Menurut Nismah (2006), lebah madu mempunyai dua pola tarian dalam menginformasikan adanya sumber makanan, yakni tarian keliling (round dance) dan tarian kibasan (waggle dance). Round dance adalah suatu tarian yang menginformasikan sumber makanan yang dekat dengan sarang sedangkan waggle dance merupakan suatu tarian untuk mengetahui jarak sumber makanan yang lebih dari 15 m dan juga sekaligus sebagai alat komunikasi antara sesama lebah. Tingkah laku lebah ini pada akhirnya menginspirasi Seeley (1995) untuk mengembangkannya menjadi sebuah model penjadwalan guru dengan menggunakan salah satu al-

16 goritma metaheuristik yaitu algoritma bee colony dimana lebah pengumpul manisan/lebah pekerja mengambil peranan sebagai mata pelajaran (vertex) dan sumber makanan/solusi mengambil peranan sebagai ruangan kelas. Ada dua jenis lebah yang berperan dalam algoritma ini yakni lebah pramuka dan lebah pekerja. 1. Lebah pramuka : lebah yang melakukan pencarian awal dan di dalam wilayah pencarian, mereka menggunakan deduksi sendiri. 2. Lebah pekerja : lebah yang menemukan hasil yang lebih baik dibandingkan dengan lebah lainnya. Hanya lebah - lebah ini yang akan melakukan tarian kibasan (waggle dance). Prilaku yang dilakukan oleh sekumpulan lebah masih menjadi misteri selama bertahun-tahun sampai Von Frisch menerjemahkan bahasa isyarat yang berada pada tarian lebah (Butt, 2009). Tarian lebah yang sering disebut sebagai waggle dance ini digunakan sebagai alat komunikasi untuk membagi informasi tentang jalur solusi kepada lebah-lebah yang lain. Sekitar seperlima dari lebah-lebah di dalam sebuah sarang bertugas sebagai pengumpul nektar. Tugas mereka adalah berkelana di antara bunga-bunga dan mengumpulkan nektar sebanyak mungkin. Ketika kembali ke sarang, mereka menyerahkan muatan nektar mereka kepada lebah-lebah penyimpan makanan yang menjaga sarang dan menyimpan bahan makanan. Lebah-lebah ini kemudian menyimpan nektar di dalam petak-petak madu. Seekor lebah pengumpul nektar juga dibantu oleh rekan-rekannya dalam menentukan seberapa bagus mutu sumber bunganya. Lebah pengumpul nektar tersebut menunggu dan mengamati seberapa lama waktu yang dibutuhkan untuk bertemu dengan seekor lebah penyimpan makanan yang siap menerima muatan. Jika waktu tunggu ini berlangsung lama, maka sang lebah pengumpul nektar memahami hal ini sebagai isyarat bahwa sumber bunganya bukan dari mutu yang terbaik dan bahwa lebah-lebah yang lain kebanyakan telah melakukan pencarian yang berhasil. Sebaliknya, jika disambut oleh sejumlah besar lebah-lebah penyimpan makanan untuk mengambil muatannya, maka semakin besar pula kemungkinan bahwa muatan nektar tersebut bermutu baik. Lebah yang mendapatkan informasi ini memutuskan apakah sumber

17 bunganya senilai dengan kerja keras yang akan dilakukan berikutnya. Jika iya, maka ia melakukan tarian getarnya agar dipahami maksudnya oleh lebah-lebah lain. Lama tarian ini memperlihatkan seberapa besar keuntungan yang mungkin dapat diperoleh dari sumber bunga ini. Menurut Wong et al. (2009), model yang diperbolehkan untuk mengeksplorasi dan mencari jalan tur sampai selesai. Sebelum meninggalkan sarang, lebah akan mengamati tarian yang dilakukan oleh lebah lainnya. Kemudian lebah akan diset dengan pengetahuan yang didapatkan dari tarian. Set pergerakan, yaitu preffered path yang dinotasikan dengan, maka akan berfungsi sebagai panduan dalam proses mencari makanan. berisi tur lengkap yang telah dieksplorasi sebelumnya oleh lebah yang akan pergi ke tempat tujuan. Selama proses pencarian makanan, lebah akan melakukan perjalanan dari satu tempat ke tempat lain sampai mencapai tujuan. Aturan ini terdiri dari dua faktor yakni arc fitness dan jarak. Arc fitness dihitung untuk semua path yang mungkin untuk tempat - tempat yang bisa dikunjungi. Arc fitness yang lebih tinggi ditugaskan untuk tepi yang merupakan pilihan jalur. Dengan melakukan ini, lebah cenderung memilih tempat berdasarkan jalan pilihan. Di sisi lain, dibawah pengaruh jarak heuristik lebih cenderung memilih tempat berikutnya yang terdekat dengan tempat saat ini. Bee Colony algorithm merupakan salah satu algoritma dari algoritma metode heuristik yang lebih tepatnya berada pada metode metaheuristik. Heuristik berasal dari kata Yunani heurisken yang berarti seni untuk menemukan strategi dalam menyelesaikan persoalan sedangkan meta berarti metodologi tingkat tinggi atau lanjut (Talbi, 2009). Di dalam ilmu komputer, metode heuristik merupakan suatu teknik untuk menyelesaikan permasalahan yang tidak menekankan pada pembuktian apakah solusi yang didapatkan adalah benar (pembuktian apakah suatu solusi adalah benar merupakan fokus dari metode penyelesaian analitik), tetapi lebih menekankan pada performa komputasi dan kesederhanaan. Metode heuristik merupakan suatu metode penyelesaian yang menggunakan konsep pendekatan. Keunggulan algoritma bee colony terdapat pada kehandalannya dalam mencari solusi kompleks, terutama dalam hal penjadwalan (scheduling).

18 Langkah-langkah penyesuaian algoritma lebah sebagai berikut: a. Forage Tahapan ini akan diberikan pada setiap lebah yang akan mengunjungi sumber makanan, aturan ini diberlakukan ketika lebah dihadapkan pada beberapa pilihan vertex. b. Waggle dance Saat lebah hendak melakukan pencarian makanan sekembalinya ke sarang dari eksplorasi nektar, lebah akan mencoba dengan probabilitas p untuk menunjukkan waggle dance dalam dance floor. Jika seekor lebah menari, tarian lebah akan berlangsung selama beberapa durasi. Jika lebah memilih untuk mengikuti tarian yang terpilih, dia akan menggunakan path yang diambil oleh lebah yang menunjukkan tarian untuk memandu sebagai pemimpin bunga yang ada. Path disebut sebagai lintasan yang paling disukai. Path untuk lebah merupakan rangkaian penunjuk dari sumber (sarang) ke tujuan (nektar). Tarian akan dilakukan oleh seekor lebah ke lebah yang lainnya selama dia mengikuti aturan bahwa lebah yang membangun path lebih pendek atau lebih cepat dari percobaan sebelumnya yang diijinkan untuk melakukan tarian. Dengan kata lain, tidak semua lebah diijinkan untuk melakukan waggle dance. Tetapi hanya lebah yang berhasil mendapatkan solusi yang lebih baik dari solusi terbaik yang dimiliki saat ini yang boleh melakukan waggle dance. c. Neighbourhood Search Pada tahap ini, tiap solusi akan diuji performansinya dengan menggunakan fitness test. Solusi yang memiliki nilai tertinggi akan dipilih untuk dilakukan neighbourhood search dengan sebanyak jumlah lebah kemudian membandingkan solusi baru yang telah didapatkan terhadap solusi yang ada pada solusi primer terbaik. Apabila solusi baru memiliki nilai terbaik, maka solusi tersebut dapat menggantikan solusi primer sebelumnya. Tahapan ini dilakukan terus secara berulang hingga kriteria tercapai kemudian berhenti.