PENGGUNAAN ALGORITMA KUHN MUNKRES UNTUK MENDAPATKAN MATCHING MAKSIMAL PADA GRAF BIPARTIT BERBOBOT

dokumen-dokumen yang mirip
BAB III LIMIT DAN FUNGSI KONTINU

Solusi Sistem Persamaan Linear Fuzzy

Penerapan Masalah Transportasi

BEBERAPA SIFAT JARAK ROTASI PADA POHON BINER TERURUT DAN TERORIENTASI

BAB III 3. METODOLOGI PENELITIAN

PENENTUAN MATCHING MAKSIMUM PADA GRAF BIPARTIT BERBOBOT MENGGUNAKAN METODE HUNGARIAN

I PENDAHULUAN II LANDASAN TEORI

Bab 5 RUANG HASIL KALI DALAM

PENYELESAIAN LUAS BANGUN DATAR DAN VOLUME BANGUN RUANG DENGAN KONSEP DETERMINAN

BAB II TINJAUAN PUSTAKA

HASIL KALI TITIK DAN PROYEKSI ORTOGONAL SUATU VEKTOR (Aljabar Linear) Oleh: H. Karso FPMIPA UPI

Bab 5 RUANG HASIL KALI DALAM

EKONOMETRIKA PERSAMAAN SIMULTAN

BAB 2 LANDASAN TEORI

APLIKASI SPANNING TREE UNTUK MENENTUKAN HAMBATAN TOTAL PADA RANGKAIAN LISTRIK SKRIPSI. Oleh: MUAYYAD NANANG KARTIADI NIM

Mata Kuliah: Aljabar Linier Dosen Pengampu: Darmadi, S. Si, M. Pd

METODE FINITE DIFFERENCE INTERVAL UNTUK MENYELESAIKAN PERSAMAAN PANAS ABSTRACT 1. PENDAHULUAN

BAB 2 LANDASAN TEORI. Pada bab ini akan dibahas tentang teori-teori dan konsep dasar yang mendukung pembahasan dari sistem yang akan dibuat.

BAB RELATIVITAS Semua Gerak adalah Relatif

BUKU AJAR METODE ELEMEN HINGGA

PENELUSURAN LINTASAN DENGAN JARINGAN SARAF TIRUAN

OPTIMALISASI FITUR-FITUR PADA APLIKASI PRESENTASI UNTUK MENINGKATKAN KUALITAS PENYAMPAIAN PESAN BERBASIS HCI

Seminar Nasional Aplikasi Teknologi Informasi 2004 Yogyakarta, 19 Juni 2004

KAJIAN PEMODELAN MATEMATIKA TERHADAP PENYEBARAN VIRUS AVIAN INFLUENZA TIPE-H5N1 PADA POPULASI UNGGAS

CHAPTER 6. INNER PRODUCT SPACE

3. RUANG VEKTOR. dan jika k adalah sembarang skalar, maka perkalian skalar ku didefinisikan oleh

Untuk pondasi tiang tipe floating, kekuatan ujung tiang diabaikan. Pp = kekuatan ujung tiang yang bekerja secara bersamaan dengan P

IT CONSULTANT UNIVERSITAS MURIA KUDUS (ITC - UMK)

BEBERAPA IDENTITAS PADA GENERALISASI BARISAN FIBONACCI ABSTRACT

EKSISTENSI BAGIAN IMAJINER PADA INTEGRAL FORMULA INVERSI FUNGSI KARAKTERISTIK

ALJABAR LINEAR (Vektor diruang 2 dan 3) Disusun Untuk Memenuhi Tugas Mata Kuliah Aljabar Linear Dosen Pembimbing: Abdul Aziz Saefudin, M.

Pengenalan Pola. Ekstraksi dan Seleksi Fitur

SISTEM PERANGKINGAN ITEM MOBIL PADA E-COMMERCE PENJUALAN MOBIL DENGAN METODE RANDOM-WALK BASE SCORING

Korelasi Pasar Modal dalam Ekonofisika

Hasil Kali Titik. Dua Operasi Vektor. Sifat-sifat Hasil Kali Titik. oki neswan (fmipa-itb)

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB II TINJAUAN PUSTAKA

III PEMODELAN SISTEM PENDULUM

Analisis Peluruhan Flourine-18 menggunakan Sistem Pencacah Kamar Pengion Capintec CRC-7BT S/N 71742

BAB 2 LANDASAN TEORI

lim 0 h Jadi f (x) = k maka f (x)= 0 lim lim lim TURUNAN/DIFERENSIAL Definisi : Laju perubahan nilai f terhadap variabelnya adalah :

BAB 2 LANDASAN TEORI. Analisis jalur yang dikenal dengan path analysis dikembangkan pertama pada tahun 1920-an oleh

KEPUTUSAN INVESTASI (CAPITAL BUDGETING) MANAJEMEN KEUANGAN 2 ANDRI HELMI M, S.E., M.M.

BAB V PENERAPAN 5.1 PERMASALAHAN PENUGASAN PEGAWAI. Dalam suatu perusahaan, n pekerja-pekerja X 1, X 2,... X 3 tersedia untuk

Trihastuti Agustinah

NAMA : KELAS : theresiaveni.wordpress.com

ANALISIS PENGENDALIAN KUALITAS TERHADAP PROSES WELDING ( PENGELASAN N ) PADA PEMBUATAN KAPAL CHEMICAL TANKER / DUPLEK M Di PT.

Pemodelan Dinamika Gelombang dengan Mengerjakan Persamaan Kekekalan Energi. Syawaluddin H 1)

BAB II TINJAUAN PUSTAKA

PENYELESAIAN MASALAH KONTROL OPTIMAL KONTINU YANG MEMUAT FAKTOR DISKON

FEEDFORWARD FEEDBACK CONTROL SEBAGAI PENGONTROL SUHU MENGGUNAKAN PROPORSIONAL - INTEGRAL BERBASIS MIKROKONTROLLER ATMEGA 8535

Model Hidrodinamika Pasang Surut Di Perairan Pulau Baai Bengkulu

BAB 2 TINJAUAN PUSTAKA. mendorong pengembangan yang sukses, dan suatu desain didasarkan kepada

Rekomendasi Pengambilan Mata Kuliah Pilihan Menggunakan Recursive Elimination Algorithm (Relim)

BAB 2 LANDASAN TEORI

KAJIAN PENGGUNAAN KOMPRESOR AKSIAL

Pemodelan Matematika Rentang Waktu yang Dibutuhkan dalam Menghafal Al-Qur an

UNIVERSITAS INDONESIA

PANJANG DAN JARAK VEKTOR PADA RUANG HASIL KALI DALAM. V, yang selanjutnya dinotasikan dengan v, didefinisikan:

MIDDLE PADA BEBERAPA GRAF KHUSUS

PENDUGAAN JUMLAH PENDUDUK MISKIN DI KOTA SEMARANG DENGAN METODE SAE

Analisa Performasi Kolektor Surya Terkonsentrasi Dengan Variasi Jumlah Pipa Absorber Berbentuk Spiral

BAB III PENDEKATAN TEORI

Pengembangan Hasil Kali Titik Pada Vektor

Kontrol Optimum pada Model Epidemik SIR dengan Pengaruh Vaksinasi dan Faktor Imigrasi

Aljabar Linear Elementer

MODUL PERKULIAHAN. Kalkulus. Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh

URUNAN PARSIAL. Definisi Jika f fungsi dua variable (x dan y) maka: atau f x (x,y), didefinisikan sebagai

mengenalkan kampus Teknik Informatika ITS kepada pengguna perangakat berbasis Android. II. METODOLOGI

BAB 2 LANDASAN TEORI. yang tak kosong yang anggotanya disebut vertex, dan E adalah himpunan yang

merupakan kabupaten ke dua terbesar di Jawa Timur. Kabupaten Malang berbatasan dengan dua kota madya yaitu Malang dan Batu dan

PEMBERIAN NOMOR VERTEX PADA TOPOLOGI JARINGAN GRAF WHEEL, GRAF HELM DAN GRAF LOLLIPOP

NILAI MAKSIMUM DAN MINIMUM PELABELAN γ PADA GRAF FLOWER, GRAF BIPARTIT LENGKAP DAN GRAF C n K m

VOTEKNIKA Jurnal Vokasional Teknik Elektronika & Informatika

DIMENSI METRIK PADA GRAF (n, t)-kite, UMBRELLA, G m H n, DAN K 1 + (P m P n )

KARAKTERISTIK PERMAINAN ELLO YANG DAPAT DIMENANGKAN FITRI DURROTUN NAFISAH

Analisis Komputasi pada Segmentasi Citra Medis Adaptif Berbasis Logika Fuzzy Teroptimasi

BAB IV HASIL DAN PEMBAHASAN

2. TINJAUAN PUSTAKA. Chartrand dan Zhang (2005) yaitu sebagai berikut: himpunan tak kosong dan berhingga dari objek-objek yang disebut titik

PENGENDALIAN OPTIMAL PADA MODEL KEMOPROFILAKSIS DAN PENANGANAN TUBERKULOSIS

SIMULASI PADA MODEL PENYEBARAN PENYAKIT TUBERKULOSIS SRI REJEKI PURI WAHYU PRAMESTHI DOSEN PENDIDIKAN MATEMATIKA IKIP WIDYA DARMA SURABAYA

PELABELAN SELIMUT H-AJAIB SUPER PADA KORONASI BEBERAPA KELAS GRAF DENGAN GRAF LINTASAN

Integrasi 2. Metode Integral Kuadratur Gauss 2 Titik Metode Integral Kuadratur Gauss 3 Titik Contoh Kasus Permasalahan Integrasi.

FAKULTAS DESAIN dan TEKNIK PERENCANAAN

BAB 3 METODE PENELITIAN

BAB II TINJAUAN PUSTAKA. kromatik lokasi sebagai landasan teori dari penelitian ini.

PRAKTIKUM OPERASI TEKNIK KIMIA II MODUL 5 BILANGAN REYNOLD

WALIKOTA BANJARMASIN PROVINSI KALIMANTAN SELATAN PERATURAN DAERAH KOTA BANJARMASIN NOMOR TAHUN 2016 TENTANG

Trihastuti Agustinah

KONSTRUKSI FUNGSI µ REGULAR DARI FUNGSI PANHARMONIK BERNILAI KOMPLEKS SKRIPSI. Oleh: SUCI RAHAYU NIM:

(x, f(x)) P. x = h. Gambar 4.1. Gradien garis singgung didifinisikan sebagai limit y/ x ketika x mendekati 0, yakni

DIMENSI METRIK PADA BEBERAPA KELAS GRAF

Abstrak. a) b) Gambar 1. Permukaan parametrik (a), dan model solid primitif (b)

oleh ACHMAD BAIHAQIH M SKRIPSI ditulis dan diajukan untuk memenuhi sebagian persyaratan memperoleh gelar Sarjana Sains Matematika

(a) (b) Gambar 1. garis singgung

TINJAUAN PUSTAKA. Pada bab ini akan dijelaskan beberapa konsep dasar teori graf dan dimensi partisi

STUDI IDENTIFIKASI LOKASI PEMBANGUNAN IPAL KOMUNAL DAN EVALUASI IPAL KOMUNAL YANG ADA DI KECAMATAN PANAKUKKANG MAKASSAR

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

vektor ( MAT ) Disusun Oleh : Drs. Pundjul Prijono Nip

Transkripsi:

PENGGUNAAN ALGORITMA KUHN MUNKRES UNTUK MENDAPATKAN MATCHING MAKSIMAL PADA GRAF BIPARTIT BERBOBOT oleh GURITNA NOOR AINATMAJA M SKRIPSI ditlis dan diajkan ntk memenhi sebagian persyaratan memperoleh gelar Sarjana Sains Matematika FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SEBELAS MARET SURAKARTA 9 i

SKRIPSI PENGGUNAAN ALGORITMA KUHN MUNKRES UNTUK MENDAPATKAN MATCHING MAKSIMAL PADA GRAF BIPARTIT BERBOBOT yang disiapkan dan dissn oleh GURITNA NOOR AINATMAJA M Pembimbing I, dibimbing oleh Pembimbing II, Dra. Diari Indriati, M.Si NIP 8 Dra. Yliana Ssanti, M.Si NIP 69 8 Telah dipertahankan di depan Dewan Pengji pada hari Rab, tanggal Jni 9 dan dinyatakan telah memenhi syarat. Anggota Tim Pengji Tanda Tangan. Drs. Tri Atmodjo K., M.Sc., Ph.D NIP 79 7..... Dra. Mania Roswitha, M.Si NIP 8 86..... Drs. Isnandar Slamet, M.Sc NIP 8.... Srakarta, Jni 9 Disahkan oleh Fakltas Matematika dan Ilm Pengetahan Alam Dekan, Keta Jrsan Matematika, Prof. Drs. Starno, M.Sc., Ph.D Drs. Kartiko, M.Si NIP 69 98 NIP 69 ii

ABSTRAK Gritna Noor Ainatmaja, 9. PENGGUNAAN ALGORITMA KUHN MUNKRES UNTUK MENDAPATKAN MATCHING MAKSIMAL PADA GRAF BIPARTIT BERBOBOT, Fakltas Matematika dan Ilm Pengetahan Alam Uniersitas Sebelas Maret. Masalah penempatan calon pegawai ke dalam posisi jabatan pekerjaan dapat dibawa ke dalam graf teori dengan mencari matching maksimal pada graf bipartit berbobot. Matching maksimal pada graf bipartit berbobot dapat diselesaikan dengan menggnakan algoritma Kn Mnkres. Tjan dari penlisan ini adalah mapatkan matching maksimal pada graf bipartit berbobot, menentkan kompleksitas rnning time algoritma Khn Mnkres, dan menysn sebah program ntk mencari matching maksimal pada graf bipartit berbobot. Metode yang dignakan dalam penlisan skripsi ini adalah stdi literatr. Oleh karena it, materi bersmber dari bk-bk referensi dan jrnal yang berhbngan dengan matching maksimal pada graf bipartit berbobot, algoritma, kompleksitas wakt O-Besar, dan bahasa pemrograman dengan menggnakan software Matlab 6.. Dari pembahasan disimplkan bahwa matching maksimal pada graf bipartit berbobot dapat diselesaikan dengan menggnakan algoritma Khn Mnkres. Kompleksitas wakt dalam kass terbrk algoritma Khn Mnkres adalah sebesar O ( n ). Untk data n ertex yang besar dapat diselesaikan dengan pembatan program menggnakan software Matlab 6.. iii

ABSTRACT Gritna Noor Ainatmaja, 9. THE APPLICATION OF KUHN MUNKRES ALGORITHM TO FIND MAXIMUM MATCHING ON WEIGHTED BIPARTITE GRAPH, Faclty of Mathematics and Natral Sciences Sebelas Maret Uniersity. Assignment problem of aplicants for seeral jobs can be carried ot to graph theory by finding maximm matching in weighted bipartite graph. Maximm matching in weighted bipartite graph can be soled sing Khn Mnkres Algorithm. The prposes of this research are to find maximm matching in weighted bipartite graph, to find complexity of rnning time Khn Mnkres Algorithm, and to create a program for finding maximm matching in weighted bipartite graph. The method sed in this research is a literary stdy. Therefore, the references of this research are taken from some books and jornals which discss abot maximm matching in weighted bipartite graph, algorithm, Big-O time complexity and programming langage sing Matlab 6.. The reslt shows that maximm matching in weighted bipartite graph can be soled sing Khn Mnkres Algorithm. The complexity of rnning time in the worst case on this process prodces an O(n ). For n ertices it can be soled by a program sing Matlab 6. software. i

MOTO Bersaha sekat tenaga, dan berdoa-lah, Jangan berpts asa karena sesnggghnya tidaklah ada yang berpts asa dari rahmat Allah kecali orang-orang yang kafir (Q. S. Ysf : 87).

PERSEMBAHAN Tlisan ini dipersembahkan kepada :. Bapak dan Ib yang tercinta,. keda adikk tersayang. i

KATA PENGANTAR Pji sykr kehadirat Allah SWT yang telah melimpahkan rahmat dan hidayah-nya, sehingga penlis dapat menyelesaikan skripsi ini. Penlis menyadari bahwa selesainya skripsi ini tidak lepas dari bimbingan, petnjk, saran, dan dkngan dari berbagai pihak. Untk it penlis mengcapkan terima kasih kepada :. Ib Dra. Diari Indriati, M.Si sebagai Dosen Pembimbing Akademis dan jga selak Dosen Pembimbing I yang telah melangkan wakt ntk memberikan bimbingan, nasehat dan pengarahan dalam penysnan skripsi ini.. Ib Dra. Yliana Ssanti, M.Si sebagai Dosen Pembimbing II yang telah memberikan bantan dan pengarahan serta perhatian dalam penlisan skripsi ini.. Teman-teman angkatan atas bantan, semangat, serta dkngan ntk menyelesaikan skripsi ini. Penlis berharap tlisan ini dapat menambah wawasan mahasiswa FMIPA UNS, tertama tentang teori graf. Srakarta, Jni 9 Penlis ii

DAFTAR ISI Halaman HALAMAN JUDUL... i HALAMAN PENGESAHAN... ii ABSTRAK... iii ABSTRACT... i MOTO... PERSEMBAHAN... i KATA PENGANTAR... ii DAFTAR ISI... iii DAFTAR GAMBAR... x DAFTAR LAMPIRAN... xi DAFTAR NOTASI... xii BAB I PENDAHULUAN. Latar Belakang Masalah.... Rmsan Masalah.... Batasan Masalah.... Tjan Penelitian.... Manfaat Penelitian... BAB II LANDASAN TEORI. Tinjaan Pstaka..... Definisi dan Notasi Graf..... Matching Graf Bipartit... 7.. Algoritma... 8.. Kompleksitas Wakt Algoritma.... Kerangka Pemikiran... BAB III METODE PENELITIAN... iii

BAB IV PEMBAHASAN. Matching.... Matching Maksimal pada Graf Bipartit... 6. Matching Maksimal pada Graf Bipartit Berbobot.... Langkah Algoritma Khn Mnkres..... Algoritma Khn Mnkres..... Contoh Kass.... Kompleksitas Algoritma Khn Mnkres... 8.6 Aplikasi Algoritma Khn Mnkres dalam Bahasa Pemrograman... 9.6. Langkah Penysnan Program... 9.6. Analisis Hasil Pemrograman....6. Kompleksitas Rnning Time Program... 6 BAB V KESIMPULAN DAN SARAN. Kesimplan... 7. Saran... 7 DAFTAR PUSTAKA... 8 LAMPIRAN... 9 ix

DAFTAR GAMBAR Halaman Gambar. Graf G... Gambar. -regler graph... Gambar. Walk, Path, Trail, Circit dan Cycle dalam graf G... Gambar. Pohon T... Gambar. H sbgraf G dan H adalah sbgraf perentang G... 6 Gambar.6 Graf Bipartit... 6 Gambar.7 Matching... 7 Gambar. H dan H merpakan sbgraf perentang dari G... Gambar. Agmenting M sepanjang P... 6 Gambar. Lintasan Agmenting-M... 8 Gambar. Membangn Pohon Alternating... Gambar. Matching Maksimal Graf G dengan Algoritma Khn Mnkres 7 Gambar.6 Matching Maksimal M... 8 Gambar.7 Diagram Alir Program KhnMnkres... Gambar.8 Graf H l... Gambar.9 Graf Matching Awal.. Gambar. Graf G l. Gambar. Graf Matching Maksimal... Gambar. Grafik Rnning Time Program KhnMnkres... 6 x

DAFTAR LAMPIRAN Halaman Lampiran : Listing Program KhnMnkres... 9 Lampiran : Listing Program Fnction Matchmax... Lampiran : Listing Program Fnction Vsingle... Lampiran : Listing Program Fnction Newedge... xi

NOTASI E e : Himpnan edge : Nama edge sat graf f, g : fngsi pada bilangan Asli, N G H i, j, p, q, k : Indeks K l M N O P Q r T : Nama sat graf : Nama sat sbgraf : Nama sat graf lengkap : Nama sat pelabelan ertex : Nama sat matching : Himpnan bilangan Asli : Notasi O-Besar (Big-O) : Nama sat lintasan : Nama sat barisan memat ertex tingkatan genap pada pohon Alternating : Nama ertex akar sat graf pohon : Graf yang berbentk pohon U, V : Himpnan ertex sat graf, : Nama ertex sat graf w deg G δ : Bobot sat edge : Notasi degree sat ertex : Notasi degree terbesar sat graf : Notasi degree terkecil sat graf xii

xiii

BAB I PENDAHULUAN. Latar Belakang Masalah Sebah persahaan membka lowongan pekerjaan dengan syarat yang telah ditentkan. Seorang pelamar diberi kesempatan ntk memilih lebih dari sat jabatan. Persahaan melakkan jian seleksi ntk mapatkan calon pegawai dengan nilai terbaik ntk setiap jabatan pekerjaan. Persahaan ingin mengoptimalkan calon pekerja dengan jabatan pekerjaan yang tersedia. Jika dilakkan penggolongan antara calon pegawai dengan posisi jabatan menjadi da himpnan yang berhbngan, dan hasil nilai jian dijadikan sebagai relasi penghbng antara calon pegawai dengan jabatannya maka masalah ini dapat dibawa ke dalam graf matching bipartit berbobot. Himpnan calon pegawai U dan posisi jabatan V sebagai himpnan ertex yang dihbngkan dengan nilai hasil jian sebagai bobot edge w(u,v). Pengoptimalan penempatan calon pegawai ke jabatan dapat dikaji dengan menggnakan teori graf, yait dengan cara mapatkan matching maksimal pada graf bipartit berbobot. Matching maksimal pada sat graf berbobot G adalah matching yang memiliki jmlah bobot yang maksimal. Matching maksimal pada graf bipartit berbobot dapat diperoleh dengan menggnakan algoritma Khn Mnkres. Rosen () menyatakan bahwa keefisienan sat algoritma dapat ditentkan atas dasar dari jmlah wakt dan memori yang dibthkan ntk menyelesaikan sat inpt dengan kran tertent. Jmlah wakt dan memori yang dibthkan algoritma ini dapat dikr dengan kompleksitas yang dinotasikan dengan O-Besar.

. Permsan Masalah Berdasarkan latar belakang masalah di atas, maka permasalahannya dapat dirmskan sebagai berikt :. bagaimana mapatkan matching maksimal pada graf bipartit berbobot,. berapa besar keefisienan algoritma Khn Mnkres,. bagaimana menysn sebah program ntk mapatkan matching maksimal pada graf bipartit berbobot.. Batasan Masalah Dalam penlisan skripsi ini, permasalahan dibatasi pada penentan matching dalam graf bipartit berbobot, penghitngan kompleksitas rnning time sat algoritma menggnakan O-Besar kompleksitas wakt terbrk, aplikasi menggnakan software Matlab 6... Tjan Tjan dari penlisan ini adalah. mapatkan matching maksimal pada graf bipartit berbobot,. menentkan kompleksitas rnning time algoritma Khn Mnkres,. menysn sebah program ntk mencari matching maksimal pada graf bipartit berbobot.. Manfaat Manfaat dari penlisan makalah ini adalah :. menambah pengetahan tentang graf teori dan aplikasinya,. mapatkan hasil yang maksimal dari penempatan calon pegawai ke jabatan yang sesai dengan keahliannya.

BAB II LANDASAN TEORI Bab ini dibagi menjadi da bagian yait tinjaan pstaka dan kerangka pemikiran. Pada bagian tinjaan pstaka diberikan beberapa terminologi tentang graf yang dignakan dalam penlisan ini. Pada bagian kerangka pemikiran dijelaskan alr dalam penlisan skripsi ini.. Tinjaan Pstaka Untk mencapai tjan penlisan, diperlkan teori-teori yang mkng dan relean dengan pembahasan. Pada sbbab ini diberikan beberapa definisi, teorema dan pengertian yang berhbngan dengan matching graph bipartite berbobot, melipti pengertian graf, graf terhbng, graf tree, graf bipartite, matching, dan algoritma Khn Mnkres... Definisi dan Notasi Graf Definisi.. (Chartrand dan Lesniak, 986:) Sat graf G adalah pasangan himpnan ( V, E), dimana V adalah himpnan ertex berhingga yang tidak kosong dan E adalah himpnan edge yang menghbngkan sepasang ertex di dalam V. Graf G dapat dinyatakan dengan G = ( V, E). Jika V = {,,..., }, dan e adalah edge yang menghbngkan ertex i dan j, maka e dapat dinyatakan dengan e (, ) = i j. n Definisi.. (Chartrand dan Oellerman, 99:) Banyaknya ertex dalam himpnan V disebt order, sedang banyaknya edge dalam himpnan E disebt size. Gambar. merpakan graf G, dengan order dan size.

G : e e e e Gambar.. Graf G Definisi.. (Bondy dan Mrty, 976:) Vertex dan dalam G dikatakan adjacent (bertetangga) jika kedanya dihbngkan oleh sebah edge. Sat ertex dikatakan incident jika ertex tersebt dikawankan dengan edge. Sedangkan da edge dikatakan adjacent jika da edge tersebt incident pada sebah ertex yang sama. Pada Gambar. terlihat ertex dan dikatakan adjacent, ertex incident dengan edge e, sedang edge e dan e adjacent. Definisi.. (Chartrand dan Oellerman, 99:6) Degree dari ertex dalam graf G adalah banyaknya edge yang incident dengan, yang dinotasikan deg. G Sat graf G disebt r-regler ata regler degree r, jika setiap ertex dari graf G mempnyai degree yang sama sebesar r. Degree terbesar dari sat ertex dalam graf G disebt maximm degree ( G) dan degree terkecil dari sat ertex dalam graf G disebt minimm degree δ ( G). Vertex yang mempnyai degree disebt isolated ertex (ertex terasing), sedang ertex yang mempnyai degree disebt -ertex. Gambar. deg =, deg =, ( G) =, ( G) δ =, adalah isolated ertex, sedang adalah -ertex. Contoh graf -regler graf terlihat pada Gambar. dibawah ini. G : Gambar.. -regler graph

Definisi.. (Chartrand dan Lesniak, 986:6) dan adalah ertex dari graf G, walk dari ke dalam graf G adalah rangkaian bergantian dari ertex dan edge dari G, dimlai dari berakhir. Trail dalam graf G adalah walk dimana tidak menglang edge. Lintasan (path) dari ke adalah walk - dimana tidak menglang ertex. Sat ertex dapat membentk lintasan triial. Circit dalam sat graf G adalah sat trail dimana ertex awal sama dengan ertex akhir, definisi sat cycle adalah circit yang tidak menglang ertex kecali pada ertex awal dan akhir dengan jmlah edge paling sedikit tiga edge. Gambar. contoh walk adalah,, 6,,,,. Contoh trail adalah,, 6,, sedang sat path adalah,,,,. Contoh sebah circit adalah,,,,, 6, sedang,,, 6, adalah sebah cycle. G : Gambar.. Walk, Path, Trail, Circit dan Cycle dalam graf G. 6 Definisi.6. (Chartrand dan Lesniak, 986:8) Graf G dikatakan terhbng (connected) jika ntk setiap da ertex berbeda dan, terdapat sat lintasan - yang menghbngkannya. Definisi.7. (Chartrand dan Lesniak, 986:6) Graf terhbng yang tidak memat sat cycle disebt pohon (tree). Sebah graf pohon T disebt pohon berakar jika T mempnyai sat ertex akar yait r dimana ntk setiap ertex di T terdapat lintasan r ke. Contoh pohon terlihat pada Gambar.. T: 6 7 Gambar.. Pohon T

Definisi.8 (Bondy dan Mrty, 976:8) Graf H disebt sbgraf dari graf G jika V ( H ) V ( G) dan ( H ) E( G) E. Graf H disebt sbgraf perentang (spanning sbgraph) G jika order sbgraf H sama seperti order graf G, ( H ) V ( G) ( H ) E( G) E. V = dan Contoh sbgraf H dan sbgraf perentang H dapat dilihat pada gambar di bawah ini. G : H : H : Gambar.. H sbgraf G dan H adalah sbgraf perentang G Definisi.9 (Bondy dan Mrty, 976:) Graf G dikatakan graf bipartit jika ertex dari G, V(G) dapat dipartisi menjadi da sb himpnan tidak kosong V dan V dimana edge dari G incident dengan ertex V dan ertex V. Graf bipartit lengkap adalah graf bipartit dimana setiap ertex dari V adjacent dengan sema ertex dari V. Jika V = m dan V = n, maka graf bipartit lengkap dinotasikan dengan graf berbobot. K m, n. Jika setiap edge dari graf G diberi nilai ata bobot, maka disebt Gambar.6 (a) mennjkkan graf bipartit berbobot dengan ertex V(G) dipartisi menjadi sb himpnan V = {, } dan {, }, V = serta tiap edge, menghbngkan ertex dari V dan V, dengan diberi nilai ata bobot. Gambar.6 (b) merpakan graf bipartit lengkap.. 6 8 7 6 6 6 (a.) (b.) Gambar.6. Graf Bipartit 6

.. Matching Graf Bipartit Definisi.. (Chartrand dan Oellermann, 99:6) Matching dalam graf G adalah -regler sbgraf dari G, merpakan sbgraf yang diambil dari himpnan pasangan edge yang tidak adjacent, dengan notasi M. Edge dari G yang termask dalam M disebt edge matching, sedang edge dari G yang bkan termask dalam matching disebt bkan edge matching. Sebah ertex dalam G adalah ertex matching jika incident dengan edge dalam M, jika tidak maka adalah ertex tnggal dalam M. Gambar.7 mennjkkan matching M = { e },e, dimana e dan e merpakan edge matching dari M, sedang e, e, e bkan edge matching dari M. Vertex matching M adalah,,, sedang dan 6 adalah ertex tnggal. e e 6 e e e Gambar.7. Matching Definisi.. (Torosl dan Ucolk, 6) Lintasan alternating dari G adalah lintasan yang memiliki edge yang saling bergantian antara edge matching dan bkan matching. Lintasan alternating yang dimlai dan diakhiri dengan titik tnggal disebt lintasan agmenting. Graf G pada Gambar.7, dimana matching M = { e },,,,e, terdapat lintasan, yang merpakan lintasan alternating terhadap M, tapi bkan lintasan agmenting, sedang lintasan,,,,, 6 adalah lintasan agmenting terhadap M. Definisi.. (Chartrand dan Oellermann, 99:6) Matching yang memiliki anggota yang maksimal dalam graf G disebt matching maksimal dari G. 7

Matching maksimal pada graf berbobot adalah matching yang memiliki jmlah bobot edge yang maksimal. Graf G adalah graf berorder p yang mempnyai matching dengan jmlah p/ edge maka matching tersebt adalah matching semprna. Matching { e, e e } M = pada Gambar.7 adalah matching maksimal dan jga, matching semprna, sedangkan { e } berbobot. M = adalah matching maksimal,e.. Algoritma Algoritma, menrt Fletcher et al. (99:) adalah daftar instrksi yang linear, digabng dengan inpt tertent yang memiliki da sifat sebagai berikt :. setiap inpt menghasilkan sat otpt dalam wakt yang berhingga,. algoritma bersifat seperti fngsi, yait sat inpt tidak mngkin menghasilkan da otpt yang berbeda. Seperti yang ditlis Chartrand dan Oellerman (99:7), ntk mapatkan matching maksimal pada graf bipartit dapat diperoleh dengan menggnakan algoritma matching maksimal. Langkah-langkah dalam algoritma sebagai berikt... Algoritma Matching Maksimal ntk Graf Bipartit Misal G adalah graf bipartit dengan V ( G) {,,..., p } V ( G) { y y,..., } = dan = y q dengan matching awal M, maka langkah ntk, mapatkan matching maksimal pada graf bipartit sebagai berikt :. Indeks ariabel i menandai tahapan di algoritma yang berakar pada i dari pohon alternating. Himpnan M akan memat matching maksimal di penghentian algoritma. Langkah awal i adalah dan M memat edge dari M. i dan M M. 8

. Langkah keda menentkan apakah matching M adalah matching maksimal. Jika i < p, maka lanjtkan, dan jika tidak, maka berhenti karena matching maksimal M sdah didapatkan.. Langkah ketiga mencari ertex tnggal di matching M yang sebelmnya belm dignakan sebagai akar dari pohon alternating. Jika ertex didapatkan, maka menjadi akar dari pohon alternating bar. Langkah ini awal sebah barisan Q, yait barisan yang memat saja. Barisan Q memat ertex pada tingkatan genap dari pohon alternating dan ertex yang bertetangga tetap diji. Jika i adalah ertex matching, maka i i + dan kembali ke Langkah, dan jika tidak, maka i dan Q diawali memat saja.. Langkah keempat membangn pohon alternating yang berakar pada. a. Untk j =,,..., p dan i, ( i ) T. j misal pohon ( ) F j dan pohon Langkah ini awal penysnan pohon, yait ssnan yang memat tepat sat entri ntk setiap ertex dari G. Ssnan pohon dignakan ntk menandai adanya ertex dari pohon alternating yang sedang dibangn. Jika ertex sdah termask pohon alternating, maka pohon() = T (Tre), dan jika ertex belm termask pohon alternating, maka pohon() = F (False). b. Jika Q = φ, maka i i + dan kembali ke Langkah keda, dan jika tidak, maka haps titik x dari Q dan lanjtkan. Langkah ini menentkan apakah ssnan pohon alternating berakar pada adalah lengkap. = i c. Selanjtnya mengji setiap ertex yang bertetangga dengan x ntk menentkan apakah pohon alternating dapat diperlas ata lintasan agmenting sdah didapatkan. Jika ada edge dari ertex x ke y, maka x disebt parent y. ). Misal N ( x) { y y,..., } = dan j., y k 9

). Jika j k, maka y y j dan jika tidak, maka kembali ke Langkah b. ). Jika pohon(y) = T, maka j j + dan kembali ke Langkah ). dan jika tidak, maka lanjtkan. ). Jika y menempel dengan edge matching yz, maka y adalah titik tnggal dan lanjtkan. ). Ssnan parent dignakan ntk menentkan lintasan alternating ke x yait P di pohon alternating. Jika P adalah lintasan agmenting yang diperbolehkan dari P dengan menambah lintasan x ke y, maka lakkan Langkah.. Jika matching bar M diperoleh dari agmenting M sepanjang P, maka algoritma berhenti. Jika M M ' dan i i +, maka kembali ke Langkah. Langkah ini agmenting M sepanjang P dan mengganti M dengan matching bar yang sdah dibentk... Kompleksitas Wakt Algoritma Menrt Chartrand dan Oellerman (99:8), kompleksitas sat algoritma dikr dengan seberapa besar saha yang dikelarkan dari hasil kompterisasi ketika kompter menyelesaikan masalah menggnakan algoritma tersebt. Ukran ini bisa berdasarkan jmlah langkah kompterisasi, rnning time, ata seberapa besar rang yang diperlkan ntk menyimpan. Fletcher et. al. (99:) menyatakan dalam pembatan sat program ada da hal yang penting ntk dijadikan bahan pertimbangan selain dari kebenaran program tersebt, yait wakt yang diperlkan ntk mengekseksi dan besar memory yang dibthkan dalam kompter. Seiring perkembangan teknologi sekarang, terbatasnya besar memory bkan menjadi pertimbangan tama lagi, yang menjadi pertimbangan tama dalam pembatan program adalah wakt yang diperlkan ntk memproses inptan data yang mask dan menghasilkan otpt.

Wakt yang diperlkan sat algoritma sangat bergantng pada kran inpt yang diproses. Bahkan dapat dipilih sat inpt berkran tertent yang jika dimaskkan ke dalam algoritma akan membthkan wakt yang terbaik (tercepat) ntk menghasilkan otpt. Selain it, jga dapat dipilih inpt yang berkran lain yang membthkan wakt terbrk (terlama) ntk menghasilkan sat otpt. Kass semacam ini sering dikenal dengan kass terbaik dan kass terbrk. Selain it jga dikenal kass rata-rata, yait wakt rata-rata ntk sema kran inpt. Pada penelitian ini dikaji ntk kass wakt terbrk. Wakt yang diperlkan sat algoritma dalam menyelesaikan sat inpt akan bertambah seiring bertambahnya kran inpt. Besaran yang dignakan ntk menentkan wakt terbrk yang dibthkan sat algoritma adalah kompleksitas yang dinotasikan dengan O-Besar. Definisi O-Besar menrt Johnsonbagh (99: ) adalah sebagai berikt. Definisi.. Misal fngsi f dan g adalah fngsi yang bekerja pada domain bilangan asli, Ν. Kemdian hbngan antara f dan g ditliskan f ( n) = O( g( n)) dan dikatakan f(n) berorder paling besar g(n) jika terdapat konstan positif c > sedemikian hingga f ( n) c g( n) ntk sema bilangan blat positif yang berhingga n. Pernyataan f ( n) berorder paling besar g ( n) memberikan pengertian bahwa jika sat algoritma memiliki kompleksitas wakt sebesar ( g( n) ) O dan n diperbesar, maka wakt yang dibthkannya tidak akan melebihi sat konstanta c dikalikan dengan g ( n). Rosen () menyatakan bahwa notasi O-Besar menyajikan batas atas wakt yang dibthkan algoritma ntk menyelesaikan inpt berkran n dalam kass terbrk. Lebih lanjt, wakt sebenarnya yang dibthkan algoritma dapat

diketahi jika setiap langkah di dalam algoritma telah diterjemahkan ke dalam sat bahasa pemrograman yang kemdian dijalankan oleh kompter.. Kerangka Pemikiran Sebah persahaan membka lowongan pekerjaan dengan syarat yang telah ditentkan. Seorang pelamar diberi kesempatan ntk memilih lebih dari sat jabatan. Persahaan melakkan jian seleksi ntk mapatkan calon pegawai dengan nilai terbaik ntk setiap jabatan pekerjaan. Berpijak pada landasan teori di atas, masalah pengoptimalan penempatan calon pekerja ke dalam posisi jabatan dapat diselesaikan dengan mencari matching maksimal pada graf bipartit berbobot menggnakan algoritma Khn Mnkres. Selanjtnya, mencari keefisienan algoritma Khn Mnkres dalam menyelesaikan matching maksimal pada graf bipartit berbobot dengan mengetahi kompleksitas wakt O-Besar. Untk inpt data yang besar akan lebih mdah mapatkan penyelesaian dengan membat sat program. Program dibat dengan menggnakan software Matlab 6..

BAB III METODE PENELITIAN Metode yang dignakan dalam penlisan skripsi ini adalah stdi literatr, sehingga langkah-langkah yang diambil adalah mengmplkan beberapa bk dan smber pstaka lain yang berkaitan dengan matching, matching graf bipartit, matching graf bipartit berbobot, algoritma, kompleksitas O-Besar dan pemrograman Matlab 6.. Untk mencapai tjan skripsi ini, maka diambil langkah-langkah sebagai berikt :. Diberikan pengertian dasar tentang graf, lintasan, graf pohon, graf bipartit, matching, algoritma, matching pada graf bipartit berbobot.. Mengkaji langkah-langkah algoritma Khn Mnkres. Sesai dengan jdl tlisan ini, perl diberikan penjelasan langkahlangkah algoritma Khn Mnkres menghasilkan matching maksimal pada graf bipartit berbobot.. Mencari kompleksitas algoritma Khn Mnkres. Untk mencari keefisienan algoritma Khn Mnkres dapat ditnjkkan dengan mencari kompleksitas dalam menyelesaikan masalah matching maksimal pada graf bipartit berbobot.. Menerapkan algoritma Khn Mnkres dalam bahasa pemrograman. Untk mempermdah mencari matching maksimal pada graf bipartit berbobot dibat program menggnakan algoritma Khn Mnkres dengan software Matlab 6... Implementasi algoritma Khn Mnkres. Diberikan sat graf bipartit berbobot dicari matching maksimal dengan menggnakan algoritma Khn Mnkres secara manal mapn dengan program, serta membandingkan hasil kedanya.

BAB IV PEMBAHASAN Pemahaman dasar yang ckp diperlkan ntk mempermdah memahami sat masalah. Beberapa teorema berikt merpakan dasar dalam penysnan algoritma ntk mapatkan matching maksimal pada graf bipartit berbobot... Matching Teorema. Misal M dan M adalah matching di graf G. Jika H merpakan sbgraf perentang dari G dengan himpnan edge E(H) = (M M ) (M M ), maka setiap komponen dari H mengikti salah sat dari tipe berikt : a. Sebah ertex terasing b. Sebah cycle genap dengan edge saling bergantian antara M dan M c. Sebah lintasan tak triial dengan edge saling bergantian antara M dan M sedemikian sehingga setiap ertex terakhir dari lintasan adalah ertex tnggal di M ata M tetapi bkan kedanya. Bkti: (H) karena setiap ertex dari H incident dengan paling banyak sat edge di M dan M. Akibatnya setiap komponen dari H adalah sebah lintasan (mngkin triial) ata sebah cycle. Jika komponen dari H adalah lintasan triial, maka komponen tersebt dinamakan ertex terasing. Karena tidak ada da edge yang adjacent pada matching, maka edge dari setiap cycle dan lintasan di H adalah saling bergantian antara M dan M. Jadi setiap cycle di H adalah genap. Misal e = adalah edge di H, dan adalah ertex terakhir di lintasan P yang jga komponen dari H. Akan ditnjkkan bahwa adalah ertex tnggal di M ata M, tapi bkan kedanya. Karena e E(H), maka berlak e M M ata e M M. Jika e M M dan adalah ertex matching di M, ditnjkkan adalah ertex tnggal di M. Andaikan bkan ertex tnggal di M. Misal edge f di M (dengan f e) sedemikian hingga f incident dengan

(f dan e adjacent). Karena e dan f adjacent, maka f M. Jadi f M M E(H). Hal ini tidak mngkin karena adalah ertex terakhir di P. Jadi adalah ertex tnggal di M. Dengan cara yang sama, dapat ditnjkkan bahwa jika e M M, dan adalah ertex matching di M, maka adalah ertex tnggal di M. Gambar. mennjkkan H (H dan H ) merpakan sbgraf perentang dari G yang mempnyai himpnan edge, E(H) = (M M ) (M M ) dengan M ={e, e, e 6 } dan M ={ e, e, e } di H, M ={e, e, e 6 } dan M ={e, e, e 7 } di H. Graf H terdiri dari komponen, yait ertex terasing 7 dan cycle dengan panjang 6, sedangkan graf H terdiri dari komponen, yait lintasan yang edgenya saling bergantian antara M dan M. 6 e e 6 e e 7 7 e 6 e e 6 7 e e 6 e e 6 7 e 7 e e e e e e e G: H : H : Gambar.. H dan H merpakan sbgraf perentang dari G Teorema. Sebah matching M di graf G adalah matching maksimal jika dan hanya jika tidak ada lintasan agmenting-m di G. Bkti : Misal M adalah matching maksimal di G. Andaikan G memat P, yait lintasan agmenting-m, maka P mempnyai panjang ganjil. Jika M' adalah himpnan edge dari M yang ada di P dan M" = E( P) M ' sehingga E ( M ") > E( M '), maka M = M' + dan himpnan M = ( M M ') " M adalah matching dengan M = M +. Jadi M diperoleh dari agmenting M

sepanjang P. Ini kontradiksi dengan M di graf G adalah matching maksimal, maka tidak ada lintasan agmenting-m di G. Sebaliknya, misal M adalah matching di graf G dan tidak ada lintasan agmenting-m di G. Akan ditnjkkan bahwa M adalah matching maksimal di G. Misal M adalah matching maksimal di G. Dari pembktian bagian pertama tadi, maka tidak ada lintasan agmenting-m di G. Misal H adalah sbgraf perentang dari G dengan E(H) = (M M ) (M M ). Misal sbgraf H' merpakan komponen dari H. Jika H' adalah ertex terasing, maka H' tidak mempnyai matching maksimal. Jika H' adalah cycle genap, maka M = M. Dengan demikian M adalah matching maksimal di G. Jika H' bkan ertex terasing mapn cycle genap, maka berdasarkan Teorema., H' adalah lintasan tak triial dengan edge saling bergantian antara M dan M. Karena G tidak memat lintasan agmenting-m, maka H' adalah lintasan yang mempnyai panjang genap sedemikian hingga M M = M M, yang berarti M = M. Jadi M adalah matching maksimal di G. Sebagai ilstrasi dari Teorema., perhatikan graf G pada Gambar. (a). Misalkan M = {e, e } adalah matching di G dan P:,,,,, 6 adalah lintasan agmenting-m. Maka M = {e,e,e } adalah matching yang diperoleh dengan agmenting M sepanjang P, dengan M = = M + (lihat Gambar. (b)). (a) : (b) : e e e e e 6 e e e e e 6 Gambar.. Agmenting M sepanjang P.. Matching Maksimal pada Graf Bipartit Diketahi graf G dengan partisi himpnan ertex U dan U di V(G). Misal terdapat matching M di G sedemikian hingga setiap edge dari M incident dengan ertex di U dan U, dan setiap ertex dari U ata U incident dengan edge di M. Jika M M* dengan M* adalah matching di G, maka matching M adalah 6

matching bagian dari M* di G. Persekitaran ertex di graf G dinotasikan N() adalah ertex-ertex yang bertetangga dengan ertex, yait : N()={ V(G) E(G)} dan deg() = N(). Teorema. dan hasil berikt merpakan dasar dari Algoritma. ntk mapatkan matching maksimal pada graf bipartit. Teorema. M adalah matching di graf G yang bkan maksimal. Misal M adalah matching yang diperoleh dengan agmenting M sepanjang lintasan agmenting, maka G memat lintasan agmenting-m yang diakhiri ertex tnggal. Bkti : Andaikan G tidak memat lintasan agmenting-m yang diakhiri ertex tnggal. Misal P:=,,..., n adalah lintasan agmenting-m tetapi bkan lintasan agmenting-m, maka P memat sema edge dari M. Misal i adalah bilangan asli terkecil sedemikian hingga i i+ M M, maka i bkan ertex tnggal di M. Misal M diperoleh dari agmenting M sepanjang lintasan Q:,,..., k. Jika i i+ E(Q) M, maka i incident dengan edge e di Q dan i adalah ertex matching di M. Misal i = j (<j<k), maka e = j- j ata e = j j+. Jika e = j- j, maka lintasan Q'=,,..., j- j adalah lintasan alternating- M yang memat tepat sat ertex tnggal, yait. Edge yang bkan edge matching di M dari Q' merpakan edge matching di M ketika agmenting M sepanjang Q. Jadi Q' dan P' mempnyai ertex j = i, sehingga =,,..., i, j-, j-,..., adalah lintasan agmenting-m dan tidak memat lintasan agmenting-m yang diakhiri ertex tnggal (lihat Gambar.). Asmsi ini kontradiksi dengan G memat lintasan agmenting-m yang diakhiri ertex tnggal. Jika e = j j+, maka dengan cara yang sama =,,..., i, j+,..., k adalah lintasan agmenting-m. Ini jga menghasilkan kontradiksi. Jadi G tidak memat lintasan agmenting-m yang diakhiri ertex tnggal. 7

Sebagai ilstrasi, Gambar. mennjkkan pembktian Teorema. menghasilkan lintasan agmenting-m. Matching M adalah edge yang ditandai dengan garis tebal dan matching M adalah edge yang ditandai dengan garis ptspts. j- i+ = j+ n- n i = j j+ j+ k- k Gambar.. Lintasan Agmenting-M Akibat Teorema. Misal M adalah matching awal di graf G. Misal M,M,..., M k adalah barisan matching di G dengan ( i k) M i diperoleh dengan agmenting M i- sepanjang lintasan agmenting-m i-, dan M k adalah ertex tnggal, maka G tidak memat lintasan agmenting-m yang diawali ertex tnggal, maka G tidak memat lintasan agmenting-m ( i k) yang diakhiri ertex tnggal. Bkti : Andaikan G memat lintasan agmenting-m yang diakhiri ertex tnggal, maka berdasarkan Teorema., G memat lintasan agmenting-m i- yang diakhiri ertex tnggal. Misal i= sehingga M i- = M. Jadi G memat lintasan agmenting-m yang diawali dan diakhiri oleh ertex tnggal. Ini kontradiksi dengan G tidak memat lintasan agmenting-m yang diakhiri ertex tnggal. 8

Sebah cara yang sistematis dan efisien dilakkan ntk mapatkan matching maksimal di graf G. Misal M adalah matching awal di graf G. Jika ada lintasan agmenting-m, maka agmenting M sepanjang lintasan agmenting-m adalah ntk mapatkan matching bar M dengan M = M +. Jika tidak ada lintasan agmenting-m yang diawali ertex tnggal, maka M adalah matching maksimal. Pohon alternating merpakan pohon berakar di ertex, jika setiap lintasan yang berawal di adalah lintasan alternating-m. Jika G adalah graf bipartit dan adalah ertex tnggal di matching M, maka pohon alternating dapat dibangn. Jika ada lintasan agmenting-m yang diakhiri ertex tnggal, maka lintasan akan diperoleh dari ssnan pohon alternating. Lintasan agmenting-m didapat melali proses berikt. Pohon alternating yang berakar pada dibat dengan penempatan pada tingkatan, dan sema ertex,,..., k yang bertetangga dengan di G ditempatkan pada tingkatan, dan ertex dihbngkan ke ertex i ( i k). Misal i ntk i k. Vertex,,..., k ditempatkan pada tingkatan, dan i dihbngkan ke i ( i k) sedemikian hingga tingkatan keda dari pohon alternating sdah terssn. Misal pohon alternating sdah terssn sampai tingkatan m (m genap). Pada ssnan pohon alternating, setiap ertex x pada tingkatan m di pohon alternating mengji setiap ertex y yang bertetangga dengan x. Jika y termask pohon alternating, maka ada lintasan adalah agmenting. Jika y bkan termask pohon alternating, maka y adalah ertex matching ata ertex tnggal. Jika y adalah ertex matching dengan yz M, maka z bkan termask pohon alternating, sehingga ertex y dan z bertrt-trt ditempatkan pada tingkatan m+ dan m+ dengan x dihbngkan ke y dan y ke z. Jika y adalah ertex tnggal, maka lintasan agmenting ke y yait lintasan alternating ke x di pohon alternating yang diikti oleh edge xy sdah didapatkan. Gambar. (a) mennjkkan y adalah ertex matching dengan yz M, sedangkan (b) mennjkkan bahwa y adalah ertex tnggal. Edge matching ditandai dengan garis tebal dan ertex matching ditandai dengan ertex gelap. 9

Ssnan pohon alternating terselesaikan jika salah sat lintasan terdapat lintasan agmenting ata tidak bisa menambah tingkatan pada pohon alternating. Pada kass pertama, agmenting M sepanjang lintasan agmenting adalah ntk mapatkan matching M dengan jmlah edge M +. Jika ada ertex tnggal di matching bar yang belm dignakan sebagai akar dari pohon alternating, maka sebah ertex dipilih ntk menjadi akar dari pohon alternating bar. Jika tidak ada ertex tnggal, maka M adalah matching maksimal.... tingkatan... x............ m x......... y z m+ y m+ a. b. Gambar.. Membangn Pohon Alternating.. Matching Maksimal pada Graf Bipartit Berbobot dan graf Misal G adalah graf bipartit berbobot dengan partisi himpnan V dan V G adalah graf bipartit lengkap berbobot yang memat G sebagai sbgraf. Misal G mempnyai partisi himpnan U dan U dengan U = U = maksimal { V, V } dan V i termat di U i, ntk i =,. Misal x U dan y U, jika wg '( xy) = wg ( xy), maka xy E(G) dan jika w G '( xy) =, maka xy E(G). Jika M adalah matching maksimal di G, maka M adalah matching

semprna di G dengan beberapa edge dari M mngkin mempnyai bobot, sehingga M E(G) adalah matching maksimal di G. Jadi jika M adalah matching semprna dengan jmlah bobot maksimal di G, maka M E(G) adalah matching maksimal di G. Dalam tlisan ini dignakan algoritma Khn Mnkres, ntk mencari matching semprna dengan jmlah bobot maksimal di G. Algoritma Khn Mnkres mencari matching semprna dengan jmlah bobot maksimal dengan memilih bobot yang terbesar dari persekitaran ertex di V dan membangn sebah pohon alternating yang hasilnya ters dilang sampai mapatkan sebah matching semprna dengan jmlah bobot maksimal. Untk mapatkan matching maksimal di G yang ertex-nya diberi label, maka diperlkan pelabelan ertex-ertex dalam graf G. Pelabelan ertex adalah fngsi nilai real l di himpnan ertex V V ntk sema V dan V, Misalkan l() + l() w() (.) l() = maksimal {w() V } ntk sema V dan l() = ntk sema V, maka l adalah pelabelan ertex di G dengan E l = { E(G ) V dan V dan l() + l() = w()}. Teorema. Misal l adalah pelabelan ertex di graf bipartite lengkap berbobot G. Misal H l adalah sbgraf perentang dari G dengan himpnan edge E l. Jika E l memat matching semprna M, maka M adalah matching maksimal di G. Bkti : Misal M adalah matching semprna di H l. Karena H l adalah sbgraf perentang dari G, maka M adalah matching semprna di G dan w(m ) = Σ{w(e) e M } = Σ{l(x) x V(G )} (.) Misal M adalah matching semprna selain M di G, maka menrt (.) Σ{l(x) x V(G )} w(m) = Σ {w(e) e M} (.)

dan menrt (.) dan (.), w(m ) w(m). Jadi M adalah matching maksimal di G... Langkah Algoritma Khn Mnkres Langkah-langkah dalam mapatkan matching maksimal pada graf bipartit berbobot dengan menggnakan algoritma Khn Mnkres sebagai berikt.... Algoritma Khn Mnkres Misal G adalah graf bipartit berbobot dengan partisi himpnan ertex V dan V.. Langkah awal sebah pelabelan ertex l..a. Untk setiap V, misal l() maksimal {w() V }..b. Untk setiap V, misal l()..c. Misal H l adalah sbgraf perentang dari G dengan himpnan edge E l..d. Misal G l adalah graf dasar dari H l.. Berlak Algoritma. ntk mapatkan matching maksimal M di G l.. Jika mapatkan matching maksimal di G l, dicari apakah G l merpakan matching semprna, maka menrt Teorema. matching semprna tersebt adalah matching maksimal di G. Jika matching maksimal di G l bkan matching semprna, maka ssn sebah pohon alternating T yang berakar di ertex tnggal dengan Algoritma. ntk mefinisikan sebah pelabelan ertex bar l..a. Jika setiap ertex di V merpakan ertex matching di M, maka M adalah matching maksimal di G dan algoritma berhenti, jika tidak maka dilanjtkan..b. Misal x adalah ertex tnggal di V..c. Ssn pohon alternating dari M yang berakar di x. Jika ada lintasan agmenting-m, maka agmenting M sepanjang lintasan agmenting- M ntk mapatkan matching bar dan kembali ke langkah.a, jika tidak memat lintasan agmenting-m dan T adalah pohon alternating

dari M yang berakar di x yang tidak dapat diperlas lebih jah di G l, maka pelabelan ertex l diganti dengan sebah pelabelan ertex bar l dengan sifat bahwa M dan T termat di graf dasar G l dari H l.. Langkah beriktnya ntk menghitng pelabelan ertex bar l. Misalkan : m l minimal {l() + l () w() V V(T) dan V V(T)}. Maka berlak ntk l : l( ) m l'( ) l( ) + m l( ) l l ntk ntk lainnya V V ( T ) V V ( T ). Jika l l, maka bat G l dan kembali ke Langkah.c.... Contoh Kass Algoritma Khn-Mnkres dignakan ntk pengoptimalan penempatan calon pekerja ke jabatan yang sesai dengan kemampannya. Sebagai contoh misal terdapat calon pekerjaan, i (i=,,,) ntk jabatan dalam sat persahaan j (j=,,,). Tiap pelamar memiliki kemampan yang berbedabeda ntk tiap jabatan. Kemampan pelamar kerja adalah bobot edge yang menghbngkan pelamar kerja i dengan jabatan j. Bentk matrik M = [m ij ] dengan m ij = w( i j ). M = Jika dibat grafnya sebagai berikt : 6 G :

G adalah graf bipartit berbobot dengan partisi himpnan ertex-ertex, dengan partisi himpnan V = {,,, } dan {,,, }, V =., Dengan mengikti langkah-langkah pada algoritma Khn Mnkres didapatkan hasil sebagai berikt : Langkah.a. Untk setiap V, l() maksimal {w() V }, sehingga diperoleh : l( i ) = {,,,, 6}.b. Untk setiap V, l(), maka nilai pelabelan l( i ) = {,,,, }.c. H l adalah sbgraf perentang dari G dengan himpnan edge E l..d. G l adalah graf dasar dari H l. Langkah. Berlak Algoritma. ntk mapatkan matching maksimal M di G l, diperoleh M = {,,, } adalah matching maksimal di G l. Langkah.a. Ada ertex di V merpakan ertex tnggal di M, maka lanjtkan..b. adalah ertex tnggal di V sehingga sebagai ertex akar..c. Ssn pohon alternating dari M yang berakar di. Pohon alternating diperoleh dengan ( T ) {, } V =, karena tidak ada, lintasan agmenting-m dan T adalah pohon alternating dari M yang berakar di yang tidak dapat diperlas lebih jah di G l, maka pelabelan ertex l diganti dengan sebah pelabelan ertex bar l. Langkah. Menghitng label bar l : m l minimal {l() + l () w() V V(T) dan V V(T)} anggota ertex V V(T) adalah {, } dan anggota V V(T) adalah {,,, }, jadi perhitngan nilai m l sebagai berikt : m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + =

m l = l( ) + l( ) w( ) = 6 + = m l = l( ) + l( ) w( ) = 6 + = 6 m l = l( ) + l( ) w( ) = 6 + = 6 m l = l( ) + l( ) w( ) = 6 + = dari perhitngan di atas maka diperoleh m l =, sehingga diperoleh pelabelan bar l sebagai berikt : l( ) m = {,,,,} ntk l l'( ) l( ) + ml = {,,,,} ntk l( ) lainnya V V ( T ) V V ( T ) Langkah. Karena l l, maka bat G l dan kembali ke Langkah.c. Langkah.c. Ssn pohon alternating dari M yang berakar di. Pohon alternating diperoleh dengan ( T ) {,,,,, } V =, karena, tidak ada lintasan agmenting-m dan T adalah pohon alternating dari M yang berakar di yang tidak dapat diperlas lebih jah di G l, maka pelabelan ertex l diganti dengan sebah pelabelan ertex bar l. Langkah. Menghitng label bar l : m l minimal {l() + l () w() V V(T) dan V V(T)} anggota ertex V V(T) adalah {,,, } dan anggota V V(T) adalah {, }, jadi perhitngan nilai m l sebagai berikt : m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + = m l = l( ) + l( ) w( ) = + =

6 dari perhitngan di atas maka diperoleh m l =, sehingga diperoleh pelabelan bar l sebagai berikt : = + = ) ( {,,,,} ) ( {,,,,} ) ( ) '( m m l l l l l l ntk ntk lainnya ) ( ) ( T V V T V V Langkah. Karena l l, maka bat G l dan kembali ke Langkah.c. Langkah.c. Ssn pohon alternating dari M yang berakar di. Pohon alternating diperoleh dengan ( ) { },,,,,,, T V =, karena lintasan agmenting-m didapatkan, maka agmenting M sepanjang lintasan agmenting-m ntk mapatkan matching bar dan kembali ke Langkah.a. Langkah.a. Setiap ertex di V merpakan ertex matching di M, maka M={,,,, } adalah matching maksimal di G dan algoritma berhenti. Jadi M E(G) = {,,,, } adalah matching maksimal di G. Ilstrasi dalam matriks dan gambar : G : ( ) ( ) 6 6 i i l l ( ) ( ) 6 6 i i l l

7 ( ) ( ) 6 6 i i l l ( ) ( ) 6 i i l l ( ) ( ) 6 i i l l ( ) ( ) 6 i i l l Gambar.. Matching Maksimal Graf G dengan Algoritma Khn Mnkres T m l = m l = T T T

Dari langkah di atas diperoleh matching semprna yait M = {,,,, }, dengan besar bobot maksimal sebesar. Jadi penempatan calon pekerja ke posisi jabatan pekerjaannya sebagai berikt : Gambar.6. Matching Maksimal M.. Kompleksitas Algoritma Khn Mnkres Keefisienan algoritma Khn Mnkres ntk menyelesaikan inpt berkran nxn dapat ditnjkkan dengan menggnakan kompleksitas. Langkahlangkah menentkan kompleksitas algoritma Khn Mnkres sebagai berikt. Misal dimaskkan sebah G graf bipartit berbobot dengan nxn ertex ke dalam algoritma Khn Mnkres. Setiap ertex dari graf G mempnyai degree n, maka langkah ke- pnya kompleksitas sebesar O ( n ). Pada langkah ke-, pohon alternating dissn sebanyak n kali, dengan pengambilan ertex tnggal ntk dignakan sebagai akar dari pohon alternating yang akan dissn, mempnyai kompleksitas sebesar O ( n), sehingga kompleksitasnya menjadi O ( n ) pohon alternating dissn pada langkah ke-.c, ( n ). Setiap kali O operasi telah dibentk. Untk setiap ertex tnggal x yang dipilih pada langkah ke-.b, maka langkah ke-.c dibentk sebanyak O ( n) kali. Untk mennjkkan hal ini, pada pengambilan ertex tnggal, setiap kali kembali ke langkah.c setelah yang pertama, ntk menysn pohon alternating yang berakar di x, akan diperoleh lintasan agmenting ata kala tidak da ertex ditambahkan ke pohon alternating bar yang berakar di x. Pada saat pohon alternating yang berakar di x tidak memat lintasan agmenting yang memiliki n- ertex, dengan begit kembali ke langkah.c paling banyak n- kali. Oleh sebab it, langkah.c keselrhan 8

mempnyai kompleksitasnya sebesar O ( n ) O ( n ) kali, setiap kali langkah ke- dijalankan, ( n ). Langkah ke- dibentk sebanyak O langkah telah dibentk. Pada saat langkah ke- di bentk setiap kali maka langkah ke- telah selesai dijalankan, dan ssnan dari G l pnya kompleksitas O ( n ) kompleksitas dari langkah ke- adalah O ( n ) Mnkres pnya kompleksitas sebesar O ( n )., secara keselrhan. Oleh karena it algorithma Khn-.6. Aplikasi Algoritma Khn Mnkres dalam Bahasa Pemgrograman.6.. Langkah Penysnan Program Penggnaan algoritma Khn Mnkres dalam bahasa pemrograman dignakan ntk mempermdah dalam mencari matching maksimal berbobot, dengan jmlah ertex banyak. Algoritma Khn Mnkres dapat diterjemahkan ke dalam bahasa pemrograman dengan menggnakan software Matlab 6.. Dalam tlisan ini, program diberi nama KhnMnkres. Program ini memiliki diagram alir seperti tampak pada Gambar.7, diambil dari Bondy dan Mrty (976:89), dengan perbahan pada notasi dan proses inpt data. Dalam program ini, terdapat sat program tama yait KhnMnkres dan tiga fnction ntk mempermdah dalam pembatan program yait Matchmax, Vsingle dan Newedge. Dalam program KhnMnkres dimlai dengan memaskkan bobot edge yang menghbngkan da partisi graf, dengan jmlah bobot ertex nxn. Proses inpt data diberikan da pilihan yait memaskkan secara manal ata dengan generate data. Setelah memilih, ntk inpt data manal format inpt data diawali dengan tanda [ dan diakhiri dengan ], antara bobot edge sat dengan yang lain masih dalam sat baris diberi tanda,, sedang ntk ganti baris diberi tanda ;. Setelah memaskkan bobot ertex, kemdian dicari bobot yang paling maksimal tiap barisnya, sehingga akan diperoleh sbgraf perentang H l. Pada graf H l dapat dibentk matching maksimal 9

dengan menggnakan fnction Matchmax. Pilih salah sat matching maksimal yait Mlx, kemdian dilakkan pengecekan apakah Mlx sema ertex-nya sdah mask didalam matching tersebt, jika sema ertex sdah termask didalam Mlx maka matching tersebt adalah matching maksimal sehingga program akan berhenti dan Mlx adalah matching maksimal berbobot. Jika sema ertex tidak mask dalam Mlx, maka terdapat ertex tnggal yang tidak mask dalam Mlx, dengan menggnakan fnction Vsinggle akan diperoleh ertex tnggal yang belm mask dalam Mlx. Langkah beriktnya adalah penysnan pohon alternating. Penysnan pohon alternating dimlai dengan mefinisikan ariabel bar, yait S adalah ertex anggota V yang mask dalam penysnan pohon alternating, N(S) adalah ertex anggota V yang adjecent dengan anggota S, T adalah ertex anggota V yang mask dalam penysnan pohon alternating. Langkah awal dalam penysnan pohon alternating adalah dengan menggnakan ertex tnggal misal sebagai akar pohon alternating. Dengan definisi awal { } T φ S,. Seperti yang tertera pada diagram alir pada Gambar.7, dilakkan pengecekan apakah menghitng N G ( S) = T, jika N S T l G ( ) =, maka dilakkan pelabelan bar dengan l, ', l' m l G l. Pelabelan bar dilakkan dengan menggnakan fnction Newedge, dengan otpt pelabelan bar dan graf terdapat ertex dalam ( S) N G ' G l' yang bar. Pada graf G l' l \T. Jika N G ( S) T, maka terdapat ertex l dalam N Gl ( S) \T. Kemdian dicek apakah ertex adalah ertex matching dalam Mlx, jika ertex adalah ertex matching maka terdapat ertex, dimana adalah edge matching dalam Mlx. Dengan penambahan ertex dan ertex dalam pohon alternating maka anggota himpnan S menjadi S { } S anggota himpnan T menjadi T { } T, dan. Dengan penambahan anggota pada himpnan S maka kembali pada langkah pengecekan apakah N G ( S) = T l.

START Generate inpt nxn ertex Inpt manal or generate Manal inpt nxn ertex Matchmax fnction to find G l and matching M M ' M Vsingle fnction Is X M-satrated in G l YES END M is an optimal matching { } S, φ T NO : an M-nsatrated ertex in X Newedge fnction To compte m ' ', l l, G l YES ( S) T? N G = l NO : a ertex in N G S \ l ( ) T S T { } S { } T ' l l G G l' l a ertex in N G S \ l ( ) T Is M-satrated? YES M M' = M E( P) NO : an M-agmenting (,)-path P Gambar.7. Diagram Alir Program KhnMnkres

Jika pada saat pengecekan ertex bkan merpakan anggota ertex matching maka terdapat lintasan agmenting dari akar pohon alternating sampai ertex. Sehingga dapat dibentk matching bar dengan ( Mlx E( P) ) M (Ep) Mla =. Setelah ditemkan matching bar, kemdian kembali pada langkah pengecekan apakah sema ertex sdah termask dalam matching bar tersebt, jika sema sdah termask maka Mla adalah matching maksimal berbobot. Jika masih terdapat ertex tnggal maka langi langkah dari pengambilan ertex tnggal sebagai akar pohon alternating sampai sema ertex termask dalam matching terbar. Penghitngan bobot maksimal dilakkan dengan menjmlahkan bobot edge pada matching maksimal yang telah diperoleh. Listing program dapat dilihat pada halaman lampiran..6.. Analisis Hasil Pemrograman Uraian pada sbbab di atas akan lebih jelas apabila diterapkan dalam sat contoh graf. Misal graf G adalah graf pada Gambar..a. Dengan inpt bobot ertex n x n, yait : G = [,,,, ;,,,, ;,,,, ;,,,, ; 6,,,, ], dengan hasil otpt sebagai berikt : ==== Matrik Bobot G ================ G = 6

==== Graf Dasar ==================== ==== Graf Matching Awal terpilih === ==== Graf Gl akhir ================= ==== Graf Match Maks akhir ========== ==== Bobot Matching Maksimal =====

Apakah ingin menampilkan Graf Hl (Y/N)? 'y' Gambar.8. Graf H l Apakah ingin menampilkan Matching Maks Awal (Y/N)? y Gambar.9. Graf Matching Awal

Apakah ingin menampilkan Graf Gl (Y/N)? 'y' Gambar.. Graf G l Apakah ingin menampilkan Final Graf Matching Maks (Y/N)? 'y' Gambar.. Graf Matching Maksimal Hasil penghitngan secara manal dan hasil menggnakan program nilainya sama, bobot matching maksimal bipartit adalah.

.6.. Kompleksitas Rnning Time Program Pengecekan rnning time program KhnMnkres dilakkan dengan mencatat wakt yang diperlkan ntk menyelesaikan sat inpt data. Inpt ertex nxn dimlai dari n = sampai dengan n =. Spesifikasi kompter yang dignakan adalah kompter Pentim III 7 MHz, dengan memori 8 MB, dan dengan operating system Windows 98. Hasil rnning time dapat dilihat pada Gambar.. Grafik rnning time pada Gambar. belm bisa mennjkkan bahwa rnning time program KhnMnkres sesai dengan penghitngan rnning time algoritma Khn Mnkres yang dikr dari jmlah tahapan komptasi yang dibthkan ntk menjalankan algoritma tersebt. Kompter dengan arsitektr yang berbeda akan berbeda pla lama wakt yang diperlkan ntk menyelesaikan sat inpt data. Rnning Time Program Khn Mnkres 7 6 detik 6 7 8 9 6 7 8 9 6 7 8 9 ertex Gambar.. Grafik Rnning Time Program KhnMnkres 6

BAB V KESIMPULAN DAN SARAN.. Kesimplan Berdasar raian pada bab pembahasan, maka dapat disimplkan beberapa hal sebagai berikt :. Matching maksimal pada graf bipartit berbobot dapat diperoleh dengan menggnakan Algoritma Khn Mnkres.. Algoritma Khn Mnkres memiliki kompleksitas sebesar ( n ) O.. Algoritma Khn Mnkres dapat dignakan dalam pembatan program dengan bantan software Matlab 6. ntk mempermdah dalam mencari matching maksimal pada graf bipartit berbobot... Saran. Matching maksimal yang dicari dalam penlisan ini adalah matching maksimal pada graf bipartit berbobot, disarankan pencarian matching maksimal pada sembarang graf.. Selain menggnakan software Matlab 6., terdapat software pemrograman yang lain, seperti Delphi yang bisa menampilkan otpt yang lebih optimal dalam isalnya. Oleh karena it, disarankan ntk menggnakan software tersebt ntk mapatkan tampilan isal yang lebih menarik. 7