METODE
BRANCH AND BOUND
UNTUK PENJADWALAN
PROYEK DENGAN
GENERALIZED
PRECEDENCE RELATIONS
SKRIPSI
JENNI PARULIANA
070803029
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
METODE BRANCH AND BOUND UNTUK PENJADWALAN
PROYEK DENGAN GENERALIZED
PRECEDENCE RELATIONS
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains
JENNI PARULIANA 070803029
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : METODE BRANCH AND BOUND UNTUK PENJADWALAN PROYEK DENGAN GENERALIZED PRECEDENCE RELATIONS
i Kategori : SKRIPSI
Nama : JENNI PARULIANA
Nomor Induk Mahasiswa : 070803029
Program Studi : SARJANA (S1) MATEMATIKA Departemen : MATEMATIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, 2011
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dra. Elly Rosmaini, M.Si Prof. Dr. Drs. Iryanto, M.Si NIP 19600520 198503 2 002 NIP 19460404 197107 1 001
Diketahui/Disetujui oleh
Departemen Matematika FMIPA USU Ketua,
PERNYATAAN
METODE BRANCH AND BOUND UNTUK PENJADWALAN PROYEK DENGAN GENERALIZED
PRECEDENCE RELATIONS
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 2011
PENGHARGAAN
Puji dan syukur penulis ucapkan ke hadirat Tuhan Yang Maha Esa yang telah melimpahkan karunia-Nya, sehingga penulis berhasil menyelesaikan skripsi ini dalam waktu yang telah ditetapkan. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada semua pihak yang telah membantu dan membimbing penulis dalam penyusunan skripsi ini, ucapan terima kasih dan penghargaan penulis sampaikan kepada:
1. Bapak Prof. Dr. Drs. Iryanto, M.Si. selaku pembimbing 1 dan Ibu Dra. Elly Rosmaini, M.Si. selaku pembimbing 2 yang telah memberikan bimbingan dan kepercayaan kepada penulis sehingga skripsi ini dapat diselesaikan.
2. Bapak Prof. Dr. Drs. Herman Mawengkang dan Bapak Drs. Suwarno Ariswoyo, M.Si. selaku dosen pembanding/penguji penulis.
3. Bapak Syahril Efendi, S.Si., M.IT. selaku dosen wali penulis selama mengikuti perkuliahan.
4. Bapak Prof. Drs. Tulus, M.Si. dan Ibu Dra. Mardiningsih, M.Si. selaku Ketua dan Sekretaris Departemen Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
5. Dekan dan Pembantu Dekan FMIPA USU.
6. Semua Dosen di Departemen Matematika FMIPA USU, pegawai di FMIPA USU, dan rekan-rekan kuliah yang selama ini telah memberikan semangat, kritik, dan saran dalam pengerjaan skripsi ini.
7. Khususnya kepada kedua orang tua penulis yang tercinta Bapak Daniel dan Ibu Yasinta, saudara laki-laki Jonni Parulian dan Jonatan Parulian, serta saudara perempuan Juliana Parulian yang selalu memberikan doa, bimbingan, dan pengorbanan baik moril maupun materil kepada penulis selama masa perkuliahan hingga selesainya skripsi ini.
Semoga budi baik dan bantuan beliau-beliau mendapat balasan dari Tuhan Yang Maha Esa. Amin.
Medan, Maret 2011 Penulis
ABSTRAK
BRANCH AND BOUND METHOD FOR PROJECT SCHEDULING WITH GENERALIZED
PRECEDENCE RELATIONS
ABSTRACT
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Abstract vi
Daftar Isi vii
Daftar Tabel ix
Daftar Gambar x
BAB 1 Pendahuluan 1
1.1 Latar Belakang 1
1.2 Identifikasi Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Kontribusi Penelitian 3
1.6 Metode Penelitian 3
1.7 Tinjauan Pustaka 3
BAB 2 Landasan Teori 6
2.1 Konsep Penjadwalan Proyek 6 2.2 Jaringan Kerja (Network) 7 2.2.1 Critical Path Method (CPM) 9 2.2.2 Program Evaluation and Review Technique (PERT) 9
2.2.3 Lintasan Kritis 9
2.3. Model Penjadwalan Proyek dengan GPR 10
2.4 Matriks dan Operasi Matriks 14
2.4.1 Definisi Matriks 14
2.4.2 Operasi Matriks 15
2.4.2.1 Penjumlahan Matriks 15 2.4.2.2 Perkalian Matriks dengan Skalar 16
2.4.2.3 Perkalian Matriks 16
BAB 3 Pembahasan 18
3.1 Metode Branch and Bound 18
3.1.1 Algoritma Dasar 18
3.1.1.1 Breadht First Search (BFS) 18 3.1.1.2 Depth First Search (DFS) 19
3.1.2 Jadwal Awal 19
BAB 4 Kesimpulan dan Saran 59
4.1 Kesimpulan 59
4.2 Saran 59
DAFTAR TABEL
Halaman
Tabel 2.1 Notasi yang digunakan dalam kendala GPR 10
Tabel 3.1 Data proyek 26
Tabel 3.2 Data dan 26
DAFTAR GAMBAR
Halaman
Gambar 2.1 Simbol GPR 8
Gambar 2.2 Simbol kegiatan 8
Gambar 2.3 Simbol kegiatan dummy 8
Gambar 2.4 Hubungan antara kegiatan dengan kejadian 8
Gambar 2.5 Kendala 11
Gambar 2.6 Kendala 11
Gambar 2.7 Kendala 11
Gambar 2.8 Kendala 11
Gambar 2.9 Kendala 12
Gambar 2.10 Kendala 12
Gambar 2.11 Kendala 12
Gambar 3.1 Conflict set jenis I 22
Gambar 3.2 Conflict set jenis II 22
Gambar 3.3 Conflict set jenis III 23
Gambar 3.4 Diagram pohon metode Branch and Bound 24 Gambar 3.5 Jaringan kerja proyek dengan GPR 25 Gambar 3.6 Jaringan kerja standar proyek 25 Gambar 3.7 Gantt Chart untuk jadwal awal 27 Gambar 3.8 Gambaran kondisi pohon pada node 1 29 Gambar 3.9 Gambaran kondisi pohon pada node 2 31
Gambar 3.10 Gantt Chart untuk node 2 31
ABSTRAK
BRANCH AND BOUND METHOD FOR PROJECT SCHEDULING WITH GENERALIZED
PRECEDENCE RELATIONS
ABSTRACT
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Suatu proyek dapat dikatakan sebagai suatu rangkaian kegiatan-kegiatan yang
mempunyai saat awal dilaksanakan serta diselesaikan dalam jangka waktu tertentu
untuk mencapai suatu tujuan (P. Siagian, 1987, hal: 287). Proyek akan dikatakan
selesai apabila seluruh kegiatan yang merangkai proyek tersebut selesai.
Kegiatan-kegiatan yang mengisi suatu proyek memiliki keterikatan. Hal ini memungkinkan
suatu kegiatan harus diselesaikan lebih dulu sebelum kegiatan yang lain dimulai.
Suatu kegiatan dalam suatu proyek biasanya dipandang sebagai suatu
pekerjaan (job) yang dalam penyelesaiannya memerlukan sumber daya seperti waktu,
tenaga, dan biaya (J. Supranto, 1988, hal: 232). Pada perusahaan produksi, semua
sumber daya yang diperlukan untuk menyelesaikan proses produksi harus tersedia.
Kadang kala sumber daya tersebut memiliki kuantitas dan kualitas yang terbatas
sehingga perusahaan dituntut untuk bisa mengalokasikan sumber daya yang ada
(terbatas) supaya proses produksi tetap berjalan lancar tanpa mengurangi keuntungan.
Solusi untuk mengatasi masalah tersebut adalah penjadwalan. Dalam penjadwalan,
jika ada kegiatan yang akan melewati proses pada mesin maka terdapat
kombinasi jadwal. Dari kombinasi jadwal tersebut akan dipilih jadwal yang optimal.
Penjadwalan berkaitan dengan penugasan (assignment) mesin-mesin yang digunakan
untuk menyelesaikan setiap operasi dimana setiap mesin mempunyai sejumlah
kegiatan yang menunggu untuk diproses sesuai dengan urutan prosesnya. Konsep
penjadwalan yang baik akan mampu memberikan petunjuk dan sekaligus menjadi
kendali di dalam pelaksanaan proyek produksi. Sistem penjadwalan yang terbentuk
setiap mesin, kapan seharusnya masing-masing kegiatan start dan finish, serta kapan
seharusnya keseluruhan proyek produksi selesai dikerjakan. Dengan demikian sistem
penjadwalan sangat berperan dalam pelaksanaan proyek agar proses produksi dapat
berjalan dengan efektif dan efisien.
Metode Branch and Bound merupakan salah satu metode yang dapat
digunakan untuk menentukan penjadwalan proyek dengan Generalized Precedence
Relations yang optimal. Metode ini mula-mula dipakai oleh A. H. Land dan A. G.
Doig pada 1960. Baik program linier maupun program nonlinier dapat diselesaikan
dengan metode Branch and Bound.
Berdasarkan permasalahan dari uraian di atas, penulis memberi judul tulisan
ini dengan “Metode Branch and Bound untuk Penjadwalan Proyek dengan Generalized Precedence Relations”.
1.2 Identifikasi Masalah
Permasalahan yang akan dibahas adalah bagaimana metode Branch and Bound dalam
menentukan penjadwalan proyek dengan Generalized Precedence Relations yang
optimal.
1.3 Batasan Masalah
Agar tulisan ini terfokus dan tidak menyimpang dari tujuannya, maka diadakan
pembatasan masalah, yaitu:
1. Masalah yang dibahas adalah penjadwalan proyek dengan kendala Generalized
Precedence Relations dengan bobot kecepatan-keterlambatan.
2. Hasil akhir yang akan dicapai adalah solusi optimal penjadwalan proyek dengan
Generalized Precedence Relations menggunakan metode Branch and Bound
1.4 Tujuan Penelitian
Tujuan penelitian ini adalah untuk mengetahui bagaimana metode Branch and Bound
dalam mengoptimalkan penjadwalan proyek dengan Generalized Precedence
Relations.
1.5 Kontribusi Penelitian
Manfaat yang diharapkan dari penelitian ini adalah menambah referensi yang
berhubungan dengan problem penjadwalan yang diharapkan dapat membantu para
pengambil keputusan dalam mengatasi problem penjadwalan proyek.
1.6 Metode Penelitian
Penelitian ini bersifat literatur yang disusun berdasarkan rujukan pustaka dengan
langkah-langkah sebagai berikut:
1. Menjelaskan proyek dan penjadwalan proyek dengan Generalized Precedence
Relations.
2. Menjelaskan metode Branch and Bound untuk pencarian solusi.
3. Membahas masalah penjadwalan proyek dengan Generalized Precedence
Relations untuk mendapatkan solusi optimal.
4. Menarik kesimpulan dan saran.
1.7 Tinjauan Pustaka
Karena tulisan ini adalah studi literatur, maka tinjauan kepustakaan merupakan tolak
ukur yang utama untuk menyelesaikan tulisan ini. Beberapa literatur yang mendukung
P. K. Gupta dan D. S. Hira (2007) dalam bukunya menguraikan tentang
jaringan kerja dan analisisnya dalam suatu proyek. Suatu proyek terdiri dari tiga
bagian utama, yaitu: perencanaan, penjadwalan, dan pengendalian proyek. Jaringan
kerja menyangkut dua teknik, yaitu: Critical Path Method dan Programm Evaluation
and Review Technique.
F. S. Hillier dan G. J. Lieberman (2005) dalam bukunya menguraikan
tentang konsep utama metode Branch and Bound adalah dengan membagi dan
menyelesaikan. Pembagian atau percabangan dilakukan dengan membagi keseluruhan
penyelesaian layak dari suatu masalah optimasi menjadi beberapa submasalah yang
lebih kecil. Penyelesaian atau pembatasan dilakukan dengan memberi batasan
terhadap penyelesaian optimal pada suatu anak percabangan (node).
B. A. Nadjafi dan S. Shadrokh (2008) dalam jurnalnya menguraikan masalah
penjadwalan proyek dengan bobot kecepatan-keterlambatan sebagai pengembangan
bentuk di mana nilai waktu dari uang dihitung berdasarkan tingkat diskonto dari aliran
kas yang kontinu. Masalah penjadwalan yang dibahas memuat kendala General
Precedence Relation dan penyelesaiannya menggunakan metode Branch and Bound.
Secara matematis fungsi tujuan dari masalah penjadwalan tersebut dapat
diformulasikan sebagai berikut:
∑ ∑
∑
dengan kendala:
P. Siagian (1987) dalam bukunya menguraikan tentang program bilangan
cacah dan teori jaringan kerja. Metode Branch and Bound pertama kali dipakai oleh
A. H. Land dan A. G. Doig untuk menyelesaikan program bilangan cacah. Ternyata
Branch and Bound tidak hanya digunakan untuk program bilangan cacah, tetapi juga
merupakan akhir dari suatu jaringan kerja. Jadwal ini berupa diagram waktu yang
dituangkan menjadi satu kalender yang sangat dibutuhkan oleh para palaksana.
Wikipedia (2011) dalam situsnya menjelaskan faktor diskonto, , adalah
faktor yang dikalikan dengan suatu aliran kas yang akan datang untuk mendapatkan
nilai sekarang. Secara diskrit dirumuskan faktor diskonto sebagai berikut:
dan secara kontinu dirumuskan sebagai:
BAB 2
LANDASAN TEORI
Di dalam bab 2 ini akan diuraikan mengenai landasan teori berdasarkan tinjauan
kepustakaan yang berhubungan dengan persoalan penjadwalan proyek dengan GPR.
2. 1 Konsep Penjadwalan Proyek
Suatu proyek dapat dikatakan sebagai suatu rangkaian kegiatan-kegiatan yang
mempunyai saat awal dilaksanakan serta diselesaikan dalam jangka waktu tertentu
untuk mencapai suatu tujuan (P. Siagian, 1987, hal: 287). Proyek akan dikatakan
selesai apabila seluruh kegiatan yang merangkai proyek tersebut selesai.
Kegiatan-kegiatan yang mengisi suatu proyek memiliki keterikatan. Hal ini memungkinkan
suatu kegiatan harus diselesaikan lebih dulu sebelum kegiatan yang lain dimulai.
Kegiatan yang harus diselesaikan lebih dulu dari kegiatan lain disebut predecessor
dan kegiatan yang diselesaikan setelah kegiatan sebelumnya disebut successor. Suatu
kegiatan dalam suatu proyek biasanya dipandang sebagai suatu pekerjaan (job) yang
dalam penyelesaiannya memerlukan waktu, tenaga, dan biaya. Proyek memerlukan
tiga tahapan, yaitu:
1. Perencanaan (Planning), meliputi penetapan sasaran dan strategi, pendefinisian
proyek dan ketentuan organisasi.
2. Penjadwalan (Scheduling), meliputi pengalokasian sumber daya.
3. Pengendalian (Controlling), meliputi pengawasan sumber daya, biaya, kualitas,
dan budget.
Tahap pertama dan kedua dilakukan sebelum proyek dimulai dan tahap ketiga
Penjadwalan merupakan proses pengalokasian sumber-sumber yang dimiliki
suatu pabrik dalam menyelesaikan suatu pekerjaan. Di samping itu, penjadwalan juga
merupakan suatu teori yang berisi prinsip-prinsip dasar, model, teknik dan kesimpulan
logis dalam pengambilan keputusan. Persoalan penjadwalan muncul ketika jumlah
kegiatan yang dapat dikerjakan secara bersama lebih besar dibandingkan dengan
jumlah peralatan yang ada. Penjadwalan terdiri dari dua unsur yang penting, yaitu
kegiatan (job) dan sumber daya seperti mesin, waktu, tenaga, dan biaya. Secara
ringkas pokok-pokok penjadwalan adalah sebagai berikut (J. Supranto, 1988, hal:
234):
1. Menentukan target, tanpa adanya target sukar untuk membuat evaluasi.
2. Kegiatan-kegiatan yang harus dilakukan.
3. Urutan kegiatan.
4. Jangka waktu yang diperlukan oleh masing-masing kegiatan.
5. Tersedianya alat ukuran/standar.
6. Memperhatikan contingency factor.
2. 2 Jaringan Kerja (Network)
Jaringan kerja (network) merupakan salah satu teknik penjadwalan selain teknik Gantt
Chart. Teknik Gantt Chart adalah teknik perencanaan yang paling sederhana untuk
penjadwalan proyek. Gantt Chart bersifat dinamis dengan penampilan yang selalu
berubah-ubah. Kelebihannya adalah Gantt Chart mempergunakan skala waktu dan
kekurangannya adalah Gantt Chart tidak dapat menunjukkan relasi antara
kegiatan-kegiatan dalam suatu rencana penjadwalan. Sedangkan kelebihan teknik jaringan kerja
adalah mampu mengatasi kelemahan Gantt Chart dalam hal menunjukkan relasi
antara kegiatan-kegiatan dalam suatu rencana penjadwalan. Kekurangan jaringan kerja
adalah tidak memiliki skala waktu. Teknik jaringan kerja dan teknik Gantt Chart
dapat dikolaborasikan untuk pencapaian yang optimal. Jaringan kerja digunakan untuk
melihat relasi antara kegiatan-kegiatan dalam suatu rencana penjadwalan dan Gantt
Chart digunakan untuk melihat posisi kegiatan-kegiatan dalam rencana penjadwalan
Penjadwalan merupakan bagian terakhir dari suatu rencana jaringan kerja.
Penjadwalan proyek dapat digambarkan dengan diagram jaringan kerja dengan
menggunakan beberapa simbol, yaitu:
1. Anak panah (Edge), menyatakan hubungan GPR antara dua kegiatan yang
berpasangan. edge dapat berbentuk horizontal, diagonal, dan lengkungan.
Panjang edge tidak berpengaruh dengan besarnya GPR. Pada umumnya GPR
dicantumkan di atas, di bawah, atau di samping anak panah. Pangkal anak panah
menandakan kegiatan predecessor dan ujung anak panah menandakan kegiatan
successor. Untuk jaringan kerja standar proyek, GPR diganti dengan .
Gambar 2.1 Simbol GPR
2. Lingkaran (Node), menyatakan kegiatan yang dalam penyelesaiannya
memerlukan waktu, tenaga, dan biaya. Pada umumnya nomor urut kegiatan
dibubuhkan di dalam node. Di atas node biasanya dicantumkan durasi kegiatan.
Gambar 2.2 Simbol kegiatan
3. Lingkaran terputus-putus, menyatakan kegiatan boneka (Dummy) yang pada
penyelesaiannya tidak memerlukan waktu, tenaga, dan biaya. Tujuan dari
menggunakan dummy adalah untuk menghindari keraguan dalam hal
pengindikasian dan menunjukkan gambaran urutan logika yang benar. Dalam
penelitian ini, dummy ditempatkan di awal dan di akhir jaringan kerja proyek.
Gambar 2.3 Simbol kegiatan dummy
Hubungan antara dua kegiatan dengan GPR dapat dilihat pada Gambar 2.4.
Dalam analisis jaringan kerja dikenal dua metode, yaitu Critical Path Method
dan Program Evaluation and Review Technique. Kedua teknik tersebut dikembangkan
oleh kelompok yang berbeda secara simultan pada waktu yang bersamaan.
2.2.1 Critical Path Method (CPM)
Pada awalnya CPM dikenal dengan sebutan William-Kelly Method. Pada tahun 1956
Morgan Walker dari E.I. du Pont de Nemours Company bekerjasama dengan James E.
Kelly dari kelompok perencanaan proyek konstruksi internal Remington Rand dalam
menggunakan komputer Univac untuk melakukan penjadwalan konstruksi yang
menghasilkan metode yang rasional, tertib, dan mudah untuk menggambarkan proyek
dalam komputer. Kemudian CPM dilanjutkan oleh Mauchly Associates. Karakteristik
khusus dari CPM adalah memperkirakan waktu dengan pasti (Deterministik).
2.2.2 Program Evaluation and Review Technique (PERT)
PERT pertama kali dikembangkan oleh U. S. Navy dari Special Project Office yaitu
Biro Proyek Khusus Angkatan Laut Amerika Serikat bekerja sama dengan Allen dan
Hamilton dari perusahaan jasa konsultasi manajemen Booz untuk jadwal penelitian
dan pengembangan kegiatan program peluru kendali Polaris. Teknik ini bersifat
probabilistik yaitu memperkirakan waktu dengan kemungkinan.
2.2.3 Lintasan Kritis
Lintasan kritis adalah lintasan di mana setiap kejadian pada lintasan tersebut (kegiatan
kritis) mempunyai waktu kejadian paling cepat sama dengan waktu kejadian paling
lambat (P. Siagian, 1987, hal: 302). Jumlah waktu yang diperlukan untuk
menyelesaikan satu lintasan kritis adalah sama dengan jumlah waktu yang diperlukan
Ketentuan-ketentuan lain dari lintasan kritis adalah (P. Siagian, 1987, hal:
302):
1. Lintasan kritis juga diperkenankan melalui dummy.
2. Lintasan kritis tidak perlu hanya terdiri dari satu lintasan melainkan boleh terdiri
dari dua atau lebih.
3. Waktu penyelesaian satu kegiatan kritis tidak boleh melebihi waktu yang sudah
ditentukan, karena keterlambatan kegiatan kritis dapat mengganggu atau
memperpanjang waktu penyelesaian seluruh proyek.
2. 3 Model Penjadwalan Proyek dengan GPR
GPR menyangkut dua teknik, yaitu CPM dan PERT yang sangat dibutuhkan dalam
penjadwalan proyek. GPR dibedakan dalam empat jenis, yaitu: Start (SS),
Start-Finish (SF), Finish-Start (FS), dan Finish-Finish (FF). GPR menyajikan nilai
maksimum atau minimum time-lag antara dua kegiatan yang berpasangan. Misalkan
waktu start dari kegiatan disimbolkan dengan , waktu finish dari kegiatan
disimbolkan dengan , dan meyatakan durasi kegiatan , di mana , maka
nilai maksimum dan minimum time-lag antara dua kegiatan, dan disajikan dalam
bentuk:
GPR menjelaskan bahwa maksimal time-lag dapat disajikan sebagai minimial
time-lag pada arah yang berlawanan. Ada beberapa simbol yang digunakan dalam kendala
GPR dan hubungannya antarkegiatan seperti dalam tabel berikut.
Tabel 2.1 Notasi yang Digunakan dalam Kendala GPR
Notasi Kendala
Graf yang menggambarkan kendala GPR tersebut ditampilkan dalam
gambar-gambar berikut.
Gambar 2.5 Kendala
Gambar 2.6 Kendala
Gambar 2.7 Kendala
Gambar 2.9 Kendala
Gambar 2.10 Kendala
Gambar 2.11 Kendala
Jika didefinisikan sebagai due date dari kegiatan , yang
bersifat deterministik, maka nilai kecepatan dari kegiatan dapat dihitung dengan
rumus dan nilai keterlambatan dari kegiatan dapat dihitung
dengan rumus Sehingga total nilai kecepatan-keterlambatan
dari kegiatan adalah dengan meyatakan bobot kecepatan kegiatan dan
meyatakan bobot keterlambatan kegiatan , .
Kemudian, diasumsikan bahwa , , , dan
sehingga masalah kecepatan-keterlambatan menjadi:
∑
dengan kendala:
di mana:
(1) Menyatakan fungsi tujuan untuk meminimumkan bobot nilai
kecepatan-keterlambatan dari proyek.
(2) Menyatakan hubungan urutan finish-start di antara kegiatan.
(3) Menyatakan nilai kecepatan setiap kegiatan.
(4) Menyatakan nilai keterlambatan setiap kegiatan.
(5) Menyatakan kegiatan dummy awal finish pada waktu nol.
(6) Menyatakan waktu finish, nilai kecepatan, dan nilai keterlambatan dari setiap
kegiatan adalah integer nonnegatif.
Net Present Value (NPV) atau nilai bersih sekarang adalah analisis manfaat
finansial yang digunakan untuk mengukur kelayakan suatu proyek berdasarkan nilai
sekarang aliran kas bersih dari pendapatan yang akan datang dipotong modal dan
biaya investasi. Aliran kas bersih adalah laba bersih ditambah penyusutan. Biaya
investasi adalah total dana yang dikeluarkan untuk pengadaan seluruh sumber daya
yang dibutuhkan dalam menjalankan suatu proyek. Pada kriteria NPV, nilai waktu
uang dihitung dengan mendiskonto aliran kas. Nilai uang sebagai manfaat finansial
dari usaha yang diperkirakan akan diterima di masa yang akan datang tidak sama
dengan nilai uang yang diterima sekarang karena adanya faktor tingkat diskonto yang
disimbolkan dengan . Dengan menggunakan , nilai sekarang yang harus dibayar
pada akhir periode diperoleh dari
Fungsi tujuan dalam penelitian ini, disimbolkan dengan , adalah
menjadwalkan proyek dengan kendala GPR dan batas waktu yang ditentukan, dengan
tujuan meminimumkan NPV dari proyek. Secara matematis fungsi tujuan dapat
ditulis:
∑ ∑
∑
(10)
di mana:
(7) Menyatakan fungsi tujuan dengan tujuan meminimumkan NPV dari proyek.
(8) Menyatakan kegiatan dapat start jika predecessor-nya, kegiatan , telah start
selama satuan waktu.
(9) Menyatakan batas dari durasi proyek dengan menambahkan batas waktu
proyek, disimbolkan dengan , untuk kegiatan dummy akhir .
(10) menyatakan kegiatan dummy awal start dan finish pada waktu nol.
(11) menyatakan waktu start setiap kegiatan bernilai integer nonnegatif.
Suatu jadwal, , dikatakan optimal jika waktu start setiap kegiatan
memenuhi semua kendala GPR. Fungsi tujuan optimal dinyatakan dengan .
2. 4 Matriks dan Operasi Matriks
2.4.1 Definisi Matriks
Matriks adalah kumpulan bilangan berbentuk persegi panjang yang disusun menurut
baris (arah horizontal) dan kolom (arah vertikal). Bilangan-bilangan yang terdapat di
dalam matriks tersebut disebut elemen atau entri dari matriks. Ukuran suatu matriks
dinyatakan dalam jumlah baris dan kolom yang dimilikinya. Suatu matriks yang hanya
terdiri dari satu kolom disebut matriks kolom dan suatu matriks yang hanya terdiri
dari satu baris disebut matriks baris. Jika adalah sebuah matriks, maka
menyatakan entri yang terdapat di dalam baris dan kolom dari matriks . Secara
[
]
Matriks di atas disebut matriks berukuran kali (ditulis ) karena memiliki baris
dan kolom.
Dalam tulisan ini, matriks akan digunakan untuk menguji kelayakan dari
suatu jadwal. Anggota-anggota dari matriks tersebut dapat diperoleh dengan
mengikuti ketentuan berikut:
{
di mana menyatakan minimal time-lag antara waktu start dari kegiatan dan .
Dalam matriks ini kegiatan merupakan predecessor bagi kegiatan . Suatu jadwal
dikatakan tidak layak apabila terdapat paling tidak satu dari elemen matriks yang
mewakili jadwal tersebut bernilai negatif. Elemen yang bernilai negatif tersebut
menunjukkan pasangan kegiatan yang bermasalah dan himpunan pasangan kegiatan
yang bermasalah dinyatakan dengan .
2.4.2 Operasi Matriks
2.4.2.1Penjumlahan Matriks
Jika [ ] dan [ ] adalah dua matriks sebarang berukuran , maka
adalah suatu matriks [ ] berukuran di mana (R. Bronson, 1970, hal: 3). Matriks-matriks dengan ukuran yang berbeda tidak dapat dijumlahkan.
Contoh :
Misalkan [
]
dan [
]
[ ] [
]
2.4.2.2Perkalian Matriks dengan Skalar
Jika [ ] adalah matriks berukuran sebarang dan adalah skalar sebarang,
maka adalah suatu matriks [ ] berukuran di mana
(R. Bronson, 1970, hal: 4). Matriks disebut sebagai kelipatan skalar dari .
.
Contoh :
Misalkan matriks [ ] Maka,
[ ]
[ ]
[ ]
2.4.2.3Perkalian Matriks
Jika [ ] adalah matriks berukuran sebarang dan [ ] adalah matriks
berukuran sebarang, maka didefinisikan sebagai suatu matriks [ ]
berukuran di mana ∑
(R. Bronson, 1970, hal: 8).
Contoh :
Diketahui [
], dan [
Karena adalah matriks berukuran dan adalah matriks berukuran ,
maka adalah matriks berukuran . Perhitungan untuk hasilkali-hasilkalinya
adalah:
BAB 3
PEMBAHASAN
Dalam Bab 3 ini akan dibahas mengenai metode Branch and Bound yang akan
digunakan pada pencarian solusi optimal dan contoh masalah beserta penyelesaiannya.
3.1 Metode Branch and Bound
Metode Branch and Bound adalah suatu metode pencarian solusi yang
ditransformasikan dalam bentuk pohon percabangan dan pembatasan. Metode ini
mula-mula dipakai oleh A. H. Land dan A. G. Doig pada tahun 1960. Metode Branch
and bound merupakan suatu metode yang paling umum digunakan untuk mencari
solusi optimal pada masalah optimasi kombinatorial seperti penjadwalan proyek.
Branch and bound terdiri atas tiga bagian utama, yaitu batas bawah, strategi
pencarian, dan percabangan. Baik program linier maupun program nonlinier dapat
diselesaikan dengan metode Branch and Bound.
3.1.1 Algoritma Dasar
Ada dua yang menjadi dasar dari algoritma Branch and bound, yaitu algoritma
Breadht First Search dan algoritma Depth First Search.
3.1.1.1Breadht First Search (BFS)
ang status. Langkah-langkah yang dilakukan pada implementasi Branch and Bound
adalah:
1. Membangkitkan node baru dari semua node awal.
2. Memberikan cost tertentu untuk setiap node pada pohon percabangan.
3. Memilih node yang memiliki cost terkecil untuk dibangkitkan.
3.1.1.2Depth First Search (DFS)
Prinsip DFS adalah selalu membangkitkan node pertama dari node awal pada pohon
percabangan. Langkah-langkah yang dilakukan pada implementasi Branch and Bound
adalah:
1. Membangkitkan setiap node pertama dari node awal hingga tidak ada lagi node
yang dapat dibangkitkan.
2. Kembali menelusuri node-node calon solusi yang telah dibangkitkan untuk
menemukan jalur solusi lain yang lebih baik.
3. Berhenti setelah menemukan solusi yang optimal.
3.1.2 Jadwal awal
Hal pertama yang harus dilakukan sebelum membangun pohon percabangan adalah
menentukan jadwal awal. Apabila tingkat pohon Branch and Bound disimbolkan
dengan maka jadwal awal berada pada tingkat . Untuk menentukan jadwal
awal, waktu start dari masing-masing kegiatan harus ditentukan terlebih dahulu
dengan mengikuti persyaratan berikut:
{
di mana meyatakan waktu start paling awal kegiatan dan meyatakan
waktu finish paling akhir kegiatan . dari kegiatan dapat dihitung dengan
menentukan jarak terjauh dari node 1 ke node dan dari kegiatan dapat dihitung
Jadwal awal tersebut belum tentu jadwal yang layak sehingga harus diuji
kelayakannya dengan matriks yang telah dijelaskan dalam subbab 2.4.1.
3.1.3 Strategi Pencarian dan Percabangan
Pencarian dimulai dari jadwal awal yang telah ditentukan. Asumsikan terdapat dua
kegitan, dan , yang bermasalah pada tingkat dari pohon percabangan di
mana kegiatan merupakan predecessor bagi kegiatan . Suatu masalah akan dipecah
menjadi beberapa submasalah. Misalkan jumlah elemen yang bernilai negatif
adalah , maka terdapat alternatif percabangan sehingga pohon percabangan
ditingkatkan menjadi . Dari masing-masing node akan dihitung nilai .
Misalkan elemen matriks pertama yang bernilai negatif adalah – , maka
terdapat alternatif untuk menentukan nilai suatu node. Alternatif yang
pertama adalah memajukan waktu start kegiatan sebesar satuan waktu. Alternatif
kedua adalah memundurkan waktu start kegiatan sebesar 1 satuan waktu dan
memajukan waktu start kegiatan sebesar satuan waktu. Alternatif
ke-adalah memundurkan waktu start kegiatan sebesar satuan waktu dan
memajukan waktu start kegiatan sebesar satuan waktu. Terakhir,
alternatif ke- adalah memundurkan waktu start kegiatan sebesar satuan
waktu. Dari semua alternatif yang mungkin akan dipilih nilai yang paling minimum.
Pada proses memundurkan dan atau memajukan waktu start kegiatan, , perlu
diperhatikan bahwa waktu start kegiatan tidak boleh lebih dari atau kurang dari
.
Lemma
Strategi penggeseran, yang terdiri dari semua penggeseran pada jalur kegiatan, akan
menghasilkan enumerasi lengkap dari pohon pencarian.
Bukti:
Pada suatu tingkat dari pohon Branch and Bound, untuk menyelesaikan kegiatan
menggeser kegiatan , periode ke kiri dan kegiatan , periode ke kanan.
Misalkan ada kegiatan , , dan , di mana , , dan , .
Misalkan juga konflik waktu kegiatan dan sebesar , dan kegiatan dan
sebesar . Kemudian dan masing-masing didefinisikan sebagai waktu start
kegiatan pada jadwal tak layak tertentu dan pada suatu jadwal yang layak. Jelas
bahwa pada cabang pertama dari tingkat , terdapat , , dan
. Demikian juga pada cabang terakhir dari tingkat , terdapat , , dan . Lalu, akan diperlihatkan bahwa waktu start kegiatan , , diperoleh dari interval , dengan
menunjukkan bahwa strategi percabangan akan memperhitungkan semua titik pada
interval tersebut. Walaupun pada tingkat pohon Branch and Bound ini, diketahui
hanya interval tersebut untuk yang menghasilkan waktu layak untuk kegiatan , ,
dan , tetapi ada kemungkinan diperoleh dari di luar interval tersebut pada tingkat
pohon Branch and Bound berikutnya.
,
Seandainya konflik waktu kegiatan dan diselesaikan pada tingkat dari pohon
Branch and Bound dan konflik waktu kegiatan dan diselesaikan pada tingkat .
Asumsikan . Kegiatan start pada pada cabang ke-
tingkat dan menurut strategi percabangan, konflik waktu kegiatan dan juga
diselesaikan secera otomatis. Asumsikan . Pada cabang
tingkat , konflik waktu kegiatan dan diselesaikan dengan menggeser
sebesar periode ke kiri, sehingga konflik waktu kegiatan dan tidak
terselesaikan. Cabang ke- tingkat , akan menghasilkan waktu start
kegiatan pada periode dan menyelesaikan konflik waktu kegiatan dan .
Akibatnya, dengan mengulang strategi percabangan sepanjang pencarian akan
menghasilkan enumerasi dari semua solusi yang mungkin.
Pada proses percabangan, mungkin saja suatu node yang sama terulang
kembali. Dengan kata lain, terdapat dua node yang mempresentasikan jaringan kerja
penjadwalan proyek yang sama. Hal ini diketahui dari matriks yang sama.
matriks dari node sebelumnya maka node tersebut dapat dipangkas atau
perhitungan tidak perlu dilanjutkan. Proses percabangan akan berhenti apabila telah
didapatkan jadwal optimal yaitu suatu jadwal dengan matriks yang semua
elemennya bernilai nonnegatif. Dengan kata lain, proses percabangan akan berhenti
apabila tidak terdapat lagi pasangan kegiatan yang bermasalah.
3.1.4 Batas Bawah (Lower Bound)
Jika batas bawah ( ) tidak digunakan maka segala kemungkinan penyelesaian harus
dienumerasikan satu persatu, sehingga memperlama proses optimasi. Oleh karena itu,
LB perlu dikalkulasikan pada setiap node. Selain itu, apabila percabangan yang
dibangkitkan dari suatu node tidak mengarah pada solusi, maka node tersebut dapat
dipangkas.
Terdapat tiga jenis conflict set, yaitu:
1. Apabila kegiatan merupakan predecessor bagi kegiatan dan kedua kegiatan
tersebut memiliki konflik waktu . Untuk lebih jelas, dapat dilihat
dalam gambar 3.1.
Gambar 3.1 Conflict set jenis I
2. Apabila kegiatan merupakan predecessor bagi beberapa kegiatan, ,
dengan mengabaikan kendala GPR kegiatan-kegiatan tersebut. Untuk lebih jelas,
dapat dilihat dalam gambar 3.2.
3. Apabila kegiatan merupakan successor bagi beberapa kegiatan, ,
dengan mengabaikan kendala GPR kegiatan-kegiatan tersebut. Untuk lebih jelas,
dapat dilihat dalam gambar 3.3.
Gambar3.3 Conflict set jenis III
Dalil 1
Untuk conflict set jenis I, di mana kendala GPR antara kegiatan dan kegiatan
diabaikan, diasumsikan besar konflik waktu adalah satuan waktu. Dengan demikian,
nilai minimum untuk menyelesaikan conflict set ke- , ̅ , dapat dihitung dengan
rumus:
̅ di mana diperoleh dari:
{ ∑
∑
}
dengan merupakan nilai minimum untuk menyelesaikan konflik waktu antara
kegiatan dan kegiatan .
Dalil 2
Untuk conflict set jenis II, di mana kegiatan merupakan predecessor bagi beberapa
kegiatan, , dengan mengabaikan kendala GPR kegiatan-kegiatan tersebut,
nilai minimum untuk menyelesaikan conflict set ke- , ̅ , dapat dihitung dengan
rumus:
Dalil 3
Untuk conflict set jenis III, di mana kegiatan merupakan successor bagi beberapa
kegiatan, , dengan mengabaikan kendala GPR kegiatan-kegiatan tersebut,
nilai minimum untuk menyelesaikan conflict set ke- , ̅ , dapat dihitung dengan
rumus:
̅
{ }
Dalil 4
Untuk setiap jadwal yang dibangkitkan dari pohon percabangan, LB ditentukan oleh:
∑ ̅
dengan menyatakan solusi sementara dan ̅ menyatakan nilai minimum untuk
menyelesaikan conflict set ke- .
Gambar 3.4 Diagram pohon metode Branch and Bound
Gambar di atas memperlihatkan pohon percabangan dengan nilai solusi
sementara, , batas bawah, , dan himpunan kegiatan yang bermasalah, .
3.2 Contoh Kasus dan Penyelesaiannya
Pada subbab ini akan ditampilkan satu contoh kasus yang diambil dari jurnal “A
Branch and Bound Algorithm for the Weighted Earliness-Tardiness Project
4
3
1
2
5
7
6
3 0 Shadrokh, 2009, vol:16, hal: 55-64) yang telah dimodifikasi berikut penyelesaiannya.
Suatu proyek terdiri dari 9 kegiatan yang merangkainya. Setiap kegiatan memiliki
durasi yang berbeda-beda. Gambar 3.5 menunjukkan jaringan kerja proyek tersebut.
Angka di dalam node menyatakan nomor urut kegiatan, , dan angka di atas node
menunjukkan durasi kegiatan, . Kendala GPR dibubuhkan pada edge yang
bersesuaian. Jaringan kerja proyek dalam bentuk standar ditampilkan dalam Gambar
3.6.
Gambar 3.5 Jaringan kerja proyek dengan GPR
Gambar 3.6 Jaringan kerja standar proyek
Due date dan penalti ditunjukkan pada Tabel 3.1. Dalam hal ini, diasumsikan bobot
kecepatan, , sama dengan bobot keterlambatan, . Batas waktu proyek, , adalah
35 dan tingkat diskonto, , adalah 0.01 atau 1 .
Tabel 3.1 Data proyek
Kegiatan
1 2 3 4 5 6 7 8 9 10 11
0 13 9 15 23 17 24 29 25 34 35
4 7 9 2 4 5 3 2 1
Secara matematis, fungsi tujuan dari permasalahan di atas adalah:
∑ ∑
∑
dengan kendala:
Untuk mendapatkan jadwal yang optimal, langkah pertama yang harus
dilakukan adalah membentuk jadwal awal pada tingkat awal pohon percabangan untuk node 1. Dari data yang ada, diperoleh dan yang dirangkum dalam Tabel 3.2.
Tabel 3.2 Data dan
Kegiatan
1 2 3 4 5 6 7 8 9 10 11
0 9 4 9 12 12 16 17 18 25 33
Waktu start masing-masing kegiatan pada jadwal awal ditentukan dengan
ketentuan berikut:
{
Sehingga diperoleh jadwal awal untuk node
1 seperti yang ditampilkan pada Gambar 3.7.
Gambar 3.7 Gantt Chart untuk jadwal awal
Pada node 1, kegiatan yang mengalami keterlambatan adalah kegiatan 2 sehingga nilai
untuk node 1 adalah:
∑ ∑
∑
∑
∑
Selanjutnya dibentuk matriks yang anggota-anggotanya mengikuti ketentuan
sebagai berikut:
{
pasangan kegiatan yang bermasalah diperoleh dari:
Selanjutnya untuk node 1 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.3.
3 I 5 dan 8 1.6050 1.6050
Pada akhirnya diperoleh node 1 adalah:
Gambar 3.8 Gambaran kondisi pohon pada node 1
Berdasarkan matriks untuk node 1, maka diketahui ada 4 node pada tingkat
pohon yang dapat dibangkitkan dari node 1. Selanjutnya, perhitungan
dilanjutkan untuk node 2. Pada node 2, yang disoroti adalah kegiatan 3 dan 2 dengan
konflik waktu sebesar 2 satuan waktu. Ada 3 kemungkinan untuk node 2, yaitu:
1. Kegiatan 2 dimajukan 2 satuan waktu sehingga jadwalnya menjadi
Kemudian diperoleh nilai adalah:
3. Kegiatan 3 dimundurkan 2 satuan waktu sehingga jadwalnya menjadi
Dari ketiga kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
Kemudian untuk node 2 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.4.
Tabel 3.4 Hasil perolehan untuk node 2
Jenis Anggota ̅ 1 I 3 dan 6 3.3411 3.3411
19.1690 2 I 4 dan 5 3.8940 3.8940
3 I 7 dan 8 1.6050 1.6050
Pada akhirnya diperoleh node 2 adalah:
Gambar 3.9 Gambaran kondisi pohon pada node 2
Gambar 3.10 Gantt chart untuk node 2
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 3.
Pada node 3, yang disoroti adalah kegiatan 3 dan 6 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 3, yaitu:
1. Kegiatan 6 dimajukan 1 satuan waktu sehingga jadwalnya menjadi
. Kemudian diperoleh nilai adalah:
∑ ∑
∑
∑
∑
1 3.48 15.83
2, 3, 4, 5, 6, 7, 8
2 10.33 19.17
∑
Dari kedua kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
{ ∑
Kemudian untuk node 3 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.5.
Tabel 3.5 Hasil perolehan untuk node 3
Pada akhirnya diperoleh node 3 adalah:
Gambar 3.11 Gambaran kondisi pohon pada node 3
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 4.
Pada node 4, yang disoroti adalah kegiatan 4 dan 7 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 4, yaitu:
2. Kegiatan 4 dimundurkan 1 satuan waktu sehingga jadwalnya menjadi
Dari kedua kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
untuk node 4. Selanjutnya dibentuk matriks
pasangan kegiatan yang bermasalah adalah:
{ ∑
Kemudian untuk node 4 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.6.
Tabel 3.6 Hasil perolehan untuk node 4
Pada akhirnya diperoleh node 4 adalah:
Gambar 3.12 Gambaran kondisi pohon pada node 4
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 5.
Pada node 5, yang disoroti adalah kegiatan 5 dan 8 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 5, yaitu:
2. Kegiatan 5 dimundurkan 1 satuan waktu sehingga jadwalnya menjadi
Dari kedua kemungkinan, dipilih kemungkinan yang terakhir yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal untuk node 5. Matriks untuk node 5:
Tabel 3.7 Hasil perolehan untuk node 5
Pada akhirnya diperoleh node 5 adalah:
Gambar 3.13 Gambaran kondisi pohon pada node 5
Langkah selanjutnya adalah memilih salah satu node pada tingkat pohon
untuk dibangkitkan. Node tersebut dipilih berdasarkan nilai terkecil, yaitu node 5.
Berdasarkan matriks untuk node 5, maka diketahui ada 3 node pada tingkat pohon
yang dapat dibangkitkan dari node 5. Selanjutnya, perhitungan dilanjutkan untuk node 6. Pada node 6, yang disoroti adalah kegiatan 3 dan 2 dengan konflik
waktu sebesar 2 satuan waktu. Ada 3 kemungkinan untuk node 6, yaitu:
1. Kegiatan 2 dimajukan 2 satuan waktu sehingga jadwalnya menjadi
Kemudian diperoleh nilai adalah:
∑ ∑
Dari ketiga kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
Maka diperoleh { } dan nilai dari masing-masing pasangan
Kemudian untuk node 6 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.8.
Tabel 3.8 Hasil perolehan untuk node 6
Jenis Anggota ̅ 1 I 3 dan 6 3.3411 3.3411
19.1690 2 I 4 dan 7 3.8940 3.8940
Pada akhirnya diperoleh node 6 adalah:
Gambar 3.14 Gambaran kondisi pohon pada node 6
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 7.
Pada node 7, yang disoroti adalah kegiatan 3 dan 6 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 7, yaitu:
∑
Dari kedua kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
{ ∑
Kemudian untuk node 7 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.9.
Tabel 3.9 Hasil perolehan untuk node 7
Jenis Anggota ̅ 1 I 3 dan 2 6.8514 6.8514
19.1690 2 I 4 dan 5 3.8940 3.8940
Pada akhirnya diperoleh node 7 adalah:
Gambar 3.15 Gambaran kondisi pohon pada node 7
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 8.
Pada node 8, yang disoroti adalah kegiatan 4 dan 7 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 8, yaitu:
∑
Dari kedua kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
{ ∑
Kemudian untuk node 8 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.10.
Tabel 3.10 Hasil perolehan untuk node 8
Pada akhirnya diperoleh node 8 adalah:
Gambar 3.16 Gambaran kondisi pohon pada node 8
Langkah selanjutnya adalah kembali memilih salah satu node pada tingkat
pohon untuk dibangkitkan. Node tersebut dipilih berdasarkan nilai terkecil,
yaitu node 8. Berdasarkan matriks untuk node 8, maka diketahui ada 3 node pada
tingkat pohon yang dapat dibangkitkan dari node 8. Selanjutnya, perhitungan
dilanjutkan untuk node 9. Pada node 9, yang disoroti adalah kegiatan 3 dan 2 dengan
konflik waktu sebesar 2 satuan waktu. Ada 3 kemungkinan untuk node 9, yaitu:
∑
Kemudian diperoleh nilai adalah:
∑ ∑
Dari ketiga kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
untuk node 9. Selanjutnya dibentuk matriks untuk node 9, yaitu:
[
]
Maka diperoleh { } dan nilai dari masing-masing pasangan
kegiatan yang bermasalah adalah:
{ ∑
∑
}
{ ∑
∑
}
Kemudian untuk node 9 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.11.
Tabel 3.11 Hasil perolehan untuk node 9
Jenis Anggota ̅ 1 I 3 dan 6 3.3411 3.3411
19.8737 2 I 5 dan 10 0.7047 0.7047
Gambar 3.17 Gambaran kondisi pohon pada node 9
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 10.
Pada node 10, yang disoroti adalah kegiatan 3 dan 6 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 10, yaitu:
∑
Dari kedua kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
untuk node 10. Selanjutnya dibentuk
Kemudian untuk node 10 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.12.
Tabel 3.12 Hasil perolehan untuk node 10
Jenis Anggota ̅ 1 I 3 dan 2 6.8514 6.8514
19.8737 2 I 7 dan 10 0.7047 0.7047
Gambar 3.18 Gambaran kondisi pohon pada node 10
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 11.
Pada node 11, yang disoroti adalah kegiatan 7 dan 10 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 11, yaitu:
Dengan demikian, diperoleh jadwal untuk
node 11. Selanjutnya dibentuk matriks untuk node 11, yaitu:
[
]
Maka diperoleh { } dan nilai dari masing-masing pasangan kegiatan
yang bermasalah adalah:
{ ∑
∑
}
{ ∑
∑
}
Kemudian untuk node 11 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.13.
Tabel 3.13 Hasil perolehan untuk node 11
Jenis Anggota ̅
1 II 3 dan 2 6.8514 6.8514 16.5326 3 dan 6 3.3411
Gambar 3.19 Gambaran kondisi pohon pada node 11
Langkah selanjutnya adalah kembali memilih salah satu node pada tingkat
pohon untuk dibangkitkan. Node tersebut dipilih berdasarkan nilai terkecil,
yaitu node 11. Berdasarkan matriks untuk node 11, maka diketahui ada 2 node pada
tingkat pohon yang dapat dibangkitkan dari node 11. Selanjutnya, perhitungan
2. Kegiatan 2 dimajukan 1 satuan waktu dan kegiatan 3 dimundurkan 1 satuan
waktu sehingga jadwalnya menjadi .
Kemudian diperoleh nilai adalah:
∑ ∑
Dari ketiga kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
Kemudian untuk node 12 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.14.
Tabel 3.14 Hasil perolehan untuk node 12
Jenis Anggota ̅ 1 I 3 dan 6 3.3411 3.3411 19.8737
Pada akhirnya diperoleh node 12 adalah:
Gambar 3.20 Gambaran kondisi pohon pada node 12
Selanjutnya, perhitungan dilanjutkan pada tingkat pohon untuk node 13.
Pada node 13, yang disoroti adalah kegiatan 3 dan 6 dengan konflik waktu sebesar 1
satuan waktu. Ada 2 kemungkinan untuk node 13, yaitu:
1. Kegiatan 6 dimajukan 1 satuan waktu sehingga jadwalnya menjadi
Dari kedua kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
untuk node 13. Selanjutnya dibentuk matriks untuk node 13, yaitu:
[
]
Maka diperoleh { } dan nilai dari masing-masing pasangan kegiatan
yang bermasalah adalah:
{ ∑
∑
}
Kemudian untuk node 13 dikalkulasikan, dan hasilnya tertera dalam Tabel 3.15.
Tabel 3.15 Hasil perolehan untuk node 13
Jenis Anggota ̅ 1 I 3 dan 2 6.8514 6.8514 19.8737
Gambar 3.21 Gambaran kondisi pohon pada node 13
Langkah selanjutnya adalah kembali memilih salah satu node pada tingkat
pohon untuk dibangkitkan. Node tersebut dipilih berdasarkan nilai terkecil,
yaitu node 13. Berdasarkan matriks untuk node 13, maka diketahui hanya ada 1
node pada tingkat pohon yang dapat dibangkitkan dari node 13. Selanjutnya,
perhitungan dilanjutkan untuk node 14. Pada node 14, yang disoroti adalah kegiatan 2
dan 3 dengan konflik waktu sebesar 2 satuan waktu. Ada 3 kemungkinan untuk node
∑
Kemudian diperoleh nilai adalah:
∑
Dari ketiga kemungkinan, dipilih kemungkinan yang pertama yaitu kemungkinan
dengan nilai minimum. Dengan demikian, diperoleh jadwal
untuk node 14. Selanjutnya dibentuk matriks untuk node 14, yaitu:
[
]
Karena tidak ada lagi elemen dari matriks untuk node 14 yang bernilai negatif
maka proses dihentikan dan diperoleh
sebagai jadwal proyek yang optimal dengan . Gambar 3.21
menunjukkan pohon Branch and Bound secara keseluruhan dan gambar 3.23
Gambar 3.22 Gambaran kondisi pohon pada node 14
Gambar 3.23 Gantt Chart untuk jadwal optimal
10 12.32 19.87
2, 3, 7, 10
7 8.42 19.17
2, 3, 4, 5
6 11.93 19.17
3, 4, 6, 7
4 7.37 16.53
2, 3, 5, 6, 7, 8, 10
1 3.48 15.83
2, 3, 4, 5, 6, 7, 8
2 10.33 19.17
3, 4, 5, 6, 7, 8
3 6.82 19.17
2, 3, 4, 5, 7, 8
5 5.08 15.83
2, 3, 4, 6, 7
8 8.98 16.53
2, 3, 6, 7, 10
11 9.68 16.53
2, 3, 6
9 15.83 19.87
3, 6, 7, 10
13 13.02 19.87
2, 3
12 16.53 19.87
3, 6
BAB 4
KESIMPULAN DAN SARAN
4.1 Kesimpulan
Dari uraian pembahasan pada bab 3, maka dapat disimpulkan bahwa metode Branch
and Bound merupakan metode yang dapat digunakan untuk mencari solusi jadwal
optimal suatu proyek dengan GPR berdasarkan bobot minimum
kecepatan-keterlambatan dengan fungsi tujuan meminimumkan NPV.
4.2 Saran
Pada skripsi ini, masalah yang dibahas dikhususkan pada kasus penjadwalan proyek,
sehingga pada penelitian relevan berikutnya supaya dapat mempertimbangkan kasus
DAFTAR PUSTAKA
Applegate, D. dan Cook, W. 1991. “A Computational Study of the Job-Shop Scheduling Problem”. Jurnal Komputasi 3(2): hal.149-156.
Bazaraa, M. S. 1977. Linier Programming and Network Flows. Canada: John Wiley and Sons, Inc.
Bronson, R. 1970. Matrix Methods. New York: Academic Press.
Brucker, P., dkk. 1997. “A Branch and Bound Algorithm for the Open-Shop Problem”. Jurnal Matematika 76: hal.43-59.
Ecker, J. G. dan Kupferschmid, M. 1988. Introduction to Operations Research. Canada: John Wiley and Sons, Inc.
Gupta, P. K. dan Hira, D. S. 2007. Operations Research. India: S.Chand.
Hillier, F. S. dan Lieberman, G. J. 2005. Introduction to Operation Research Eight Edition. New York: McGraw-Hill.
Lomnicki, Z. A. 1970. “A Branch and Bound Algorithm for the Exact Solution of the Three-Machine Scheduling Problem”. Jurnal Operasi Riset 16(1): hal.89-100.
Mitten, L. G. 1970. “Branch and Bound Methods”. Journal Operasi Riset 18(1): hal.24-34.
Nadjafi, B. A. dan Shadrokh, S. 2008. “An Algorithm for the Weighted Earliness-Tardiness Unconstrained Project Scheduling Problem”. Journal of Applied Sciences 8(9): hal.1651-1659.
Nadjafi, B. A. dan Shadrokh, S. 2009. “A Branch and Bound Algorithm for the Weighted Earliness-Tardiness Project Scheduling Problem with Generalized Precedence Relations”. Jurnal Teknik Industri 16(1): hal.55-64.
Purwanto, E. B. 2008. Perancangan dan Analisis Algoritma. Yogyakarta: Graha Ilmu.
Sakellaropoulos, S. dan Chassiakos, A.P. 2004. “Project Time-Cost Analysis under Generalized Precedence Relations”. Jurnal Teknik Sipil 35: hal.715-724.
Siagian, P. 1987. Penelitian dan Operasional. Jakarta: Penerbit Universitas Indonesia.
Tan, H. W. dan Salim, S. 2004.”A Branch and Bound and Simulated Anneling Approach for Jobshop Scheduling. Malaysia”. Jurnal Matematika 20(1): hal.1-17.