Optimasi Penjadwalan
Optimasi Penjadwalan
Arifudin
Riza Arifudin
Abstract
The project scheduling must be prepared systematically by using resources effectively and efficiently so
that project objectives can be achieved optimally. This research aimed to examine the application of
combinaton CPM and genetic algorithms to solved optimization problems in a project scheduling with the
leveling of costs and designing a software. CPM is one of method to schedule the project that produce the
shortest time. In this study of CPM combined with genetic algorithm to perform scheduling. Genetic
algorithms are search methods that mimic the process of solution of natural selection and genetics. The
allocation of activities is determined based on the earliest start time and latest start time by taking into
account the cost of resources in each period of the project. Project scheduling and optimal criterion used
is minimizing the cost of deviations from the average total project cost. Results obtained in this research
is that the cost of scheduling with deviations smaller than the scheduling with CPM alone thus generated
a shorter project schedules and project cost per day is also more equitable. This Scheduling method can
be alternative decisions for the contractor in project implementation.
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 1
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
2 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930
Riza Arifudin
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 3
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
jadwal proyek harus dilakukan dengan fitness yang lebih tinggi sebagai generasi baru
melibatkan faktor biaya proyek agar lebih atau keturunan (offspring) berikutnya.
merata, karena kemungkinan pelaksanaan Kromosom-kromosom tersebut akan mengalami
beberapa kegiatan secara berbarengan akan iterasi yang disebut generasi (generation). Pada
mengakibatkan penggunaan biaya yang cukup setiap generasi, kromosom dievaluasi
tinggi pada waktu tertentu. berdasarkan nilai fungsi fitness [3]. Setelah
Langkah yang dilakukan untuk beberapa generasi maka algoritma genetika akan
pengembangan jadwal dengan melibatkan faktor konvergen dapat kromosom terbaik, yang
biaya yaitu dengan menggeser kegiatan-kegiatan merupakan solusi optimal [4].
nonkritis (ke depan atau ke belakang) antara 2.7 Struktur Umum Algoritma Genetika
batas waktu yang diijinkan untuk dapat Algoritma genetika memberikan suatu pilihan
menurunkan kebutuhan biaya maksimum. bagi penentuan nilai parameter dengan meniru
Sekalipun biaya tidak dibatasi, dengan cara reproduksi genetik, pembentukan
menggunakan waktu mengambang dapat kromosom baru serta seleksi alami seperti terjadi
digunakan untuk menyeimbangkan biaya di pada mahluk hidup.
sepanjang durasi keseluruhan proyek. Langkah- Inisialisasi populasi awal dilakukan untuk
langkah ini merupakan salah satu proses menghasilkan solusi awal dari suatu
optimasi yang dapat dilakukan dengan permasalahan algoritma genetika. Inisialisasi ini
Algoritma Genetika. dilakukan secara acak sebanyak jumlah
2.6 Konsep Algoritma Genetika kromosom/populasi yang diinginkan.
Algoritma genetika adalah algoritma Selanjutnya dihitung nilai fitness dan seterusnya
pencarian (search algorithm) yang menggunakan dilakukan seleksi dengan menggunakan metode
prinsip seleksi alam dalam ilmu genetika untuk roda roullete, tournament atau ranking.
mengembangkan solusi terhadap permasalahan Kemudian dilakukan perkawinan silang
[5]. Algoritma Genetika merupakan kelas (crossover) dan mutasi. Setelah melalui
algoritma pencarian heuristik berdasarkan beberapa generasi maka algoritma ini akan
evolusi biologi [11]. berhenti sebanyak generasi yang diinginkan.
Ide dasar algoritma genetika adalah Sebagaimana halnya proses evolusi di alam,
mengelola suatu populasi individu yang suatu algoritma genetika yang sederhana
merepresentasikan kandidat solusi sebuah umumnya terdiri dari tiga operator yaitu:
permasalahan. Secara umum algoritma genetika operator reproduksi, operator crossover
memiliki lima komponen dasar [10] yaitu: (1) (persilangan) dan operator mutasi.
Representasi genetik dari solusi-solusi masalah; Ada dua hal penting yang harus dilakukan
(2) Cara membentuk populasi awal dari solusi- pada awal proses Algoritma Genetika. Pertama,
solusi; (3) Fungsi evaluasi yang me-rate (rating) pendefinisian atau pengkodean kromosom yang
solusi-solusi berdasarkan fitness mereka; (4) merupakan solusi yang masih berbentuk simbol.
Operator-operator genetik yang merubah Kedua, penentuan fungsi fitness atau fungsi
komposisi genetik dari offspring selama obyektif. Dua hal ini berperan penting dalam
reproduksi; (5) Nilai-nilai untuk parameter algoritma genetika untuk menyelesaikan suatu
algoritma genetika. masalah.
Algoritma genetika berangkat dari himpunan 2.8 Pengkodean
solusi yang dihasilkan secara acak yang disebut Pengkodean adalah suatu teknik untuk
populasi. Sedangkan setiap individu dalam menyatakan populasi awal sebagai calon solusi
populasi disebut kromosom yang merupakan dari suatu masalah ke dalam suatu kromosom [3]
representasi dari solusi dan masing-masing sebagai suatu kunci pokok persoalan ketika
dievaluasi tingkat ketangguhannya (fitness) oleh menggunakan algoritma genetika.
fungsi yang telah ditentukan. Melalui proses Berdasarkan jenis simbol yang digunakan
seleksi alam atas operator genetik, gen-gen dari sebagai nilai suatu gen, metode pengkodean
dua kromosom (disebut parent) diharapkan akan dapat diklasifikasikan sebagai berikut :
menghasilkan kromosom baru dengan tingkat
4 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930
Riza Arifudin
pengkodean biner, bilangan riil, bilangan bulat relatif terhadap kromosom itu [5]. Untuk
dan struktur data [3]. menemukan fungsi fitness yang tepat untuk
Pengkodean biner merupakan cara suatu masalah, yang harus diperhatikan adalah
pengkodean yang paling umum digunakan, ini fungsi objektif (objective function). Pada kasus
karena pengkodean ini merupakan yang pertama optimasi, dikenal dua masalah yaitu: masalah
kali digunakan dalam algoritma genetik oleh maksimasi atau masalah minimasi.
Holland [1]. Pengkodean biner dinyatakan dalam 2.10 Operator Genetika
kromosom biner. Algoritma genetika merupakan proses
Pengkodean bilangan bulat adalah suatu pencarian yang heuristik dan acak, sehingga
metode mengkodekan bilangan dalam bentuk penekanan pemilihan operator yang digunakan
bilangan bulat. Pengkodean ini baik digunakan sangat menentukan keberhasilan algoritma
untuk masalah optimasi kombinatorial [3]. genetik dalam menemukan solusi optimum suatu
Dengan pengkodean bilangan bulat, ukuran masalah yang diberikan. Operator genetika
kromosom menjadi lebih sederhana dan tidak digunakan setelah proses evalusi tahap pertama
terlalu panjang. untuk membentuk suatu populasi baru dari
Pengkodean bilangan riil adalah suatu generasi sekarang. Operator-operator tersebut
pengkodean bilangan dalam bentuk riil. Gen dan adalah operator seleksi, crossover (perkawinan
Cheng (2000) menyatakan bahwa pengkodean silang), dan mutasi.
bilangan riil baik digunakan untuk masalah Seleksi
optimasi fungsi dan optimasi kendala. Seleksi merupakan proses pemilihan orang
Pengkodean struktur data adalah model tua untuk reproduksi (biasanya didasarkan pada
pengkodean yang menggunakan struktur data. nilai fitness) [5]. Seleksi bertujuan untuk
Pengkodean ini digunakan untuk masalah yang memberikan kesempatan reproduksi yang lebih
lebih kompleks seperti perencanaan trajektori besar bagi anggota populasi yang paling baik.
robot [10] dan Masalah pewarnaan Grap [2]. Ada beberapa metode untuk seleksi
Inisialisasi Populasi Awal kromosom antara lain adalah seleksi roda
Inisialisasi populasi awal merupakan suatu roulette (roulette wheel selection), seleksi
metode untuk menghasilkan kromosom- rangking (rank selection), dan seleksi turnamen
kromosom awal. Jumlah individu pada populasi (tournament selection).
awal merupakan masukan dari pengguna. Salah satu teknik kromosom yang paling
Setelah jumlah individu pada populasi awal umum digunakan adalah pemilihan seleksi roda
ditentukan, dilakukan inisialisasi terhadap roulette (roulette wheel selection) [4]. Seleksi
kromosom yang terdapat pada populasi tersebut. dengan Roulette wheel memilih anggota populasi
Inisialisasi dilakukan secara acak, namun tertentu untuk menjadi orangtua dengan
demikian tetap memperhatikan domain solusi probabilitas sama dengan fitness dibagi dengan
dan kendala permasalahan yang ada. total fitness populasi [5].
2.9 Nilai Fitness Pada seleksi ini, orangtua dipilih berdasarkan
Secara alamiah di dunia nyata menyatakan fitness mereka. Lebih baik suatu kromosom,
bahwa hanya individu yang unggul (berkualitas lebih besar kesempatan terpilih. Probabilitas
tinggi) saja yang akan bertahan hidup. suatu individu terpilih untuk perkawinan silang
Sedangkan individu berkualitas rendah akan sebanding dengan fitnessnya. Cara penyeleksian
mati atau punah. Pada Algoritma Genetika, suatu ini merupakan peniruan dari permainan roda
individu dievaluasi berdasarkan suatu fungsi roulette, dan dapat diilustrasikan dengan
tertentu sebagai ukuran nilai kualitasnya. Fungsi Gambar 1.
ini dikenal sebagai fungsi fitness. Fungsi fitness
menghasilkan suatu nilai fitness.
Nilai fitness adalah nilai yang menyatakan
baik tidaknya suatu individu. Nilai fitness
merupakan sebuah nilai yang terkait dengan
kromosom yang memberikan suatu manfaat
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 5
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
6 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930
Riza Arifudin
ke generasi [5]. Terdapat dua model update sistem input data kegiatan harus dimasukkan
populasi yang bisa digunakan, yaitu model sesuai urutan kerja, dimana sebuah kegiatan
generational dan steady state. tidak boleh diinputkan sebelum input kegiatan
Pada penelitian ini, model yang digunakan predesesornya. Input data pekerjaan yang
adalah model steady state berbasis fitness. Pada diperlukan pada proses CPM dari sistem ini
model ini, tidak semua kromosom diganti. adalah; kode kegiatan, nama kegiatan, durasi
Penggantian dilakukan hanya pada sejumlah kegiatan, biaya kegiatan, predesesor kegiatan.
kromosom tertentu, dimana sebanyak M Sedangkan untuk input data yang diperlukan
kromosom yang diganti adalah kromosom- pada proses Algoritma Genetikanya adalah;
kromosom terburuk (yang paling rendah nilai ukuran populasi, jumlah generasi, probabiltas
fitness-nya). crossover, probabilitas mutasi. Untuk proses
pembuatan bagan penjadwalan diperlukan
tambahan input data tanggal dimulainya suatu
3. Kombinasi CPM dan Algoritma Genetika
proyek.
3.1 Deskripsi Sistem Pada tulisan ini konfigurasi sistem yang
Secara umum sistem yang akan dibuat dalam digunakan untuk mengimplementasi program
penelitian ini adalah sistem penjadwalan proyek yang dibangun adalah menggunakan software
dengan menggunakan Algoritma Genetika. Microsoft Visual Basic 6.0 dengan sistem
Sistem ini merupakan kombinasi dari CPM dan operasi berbasis windows.
Algoritma Genetika. Pada sistem ini output dari 3.3 Perhitungan Waktu CPM
perhitungan akan di optimasi dengan Algoritma Terdapat dua tahap dalam perhitungan ini,
Genetika, sehingga akan dihasilkan suatu yaitu perhitungan maju dan perhitungan mundur.
penjadwalan kegiatan-kegiatan proyek yang Hasil perhitungan yang diperoleh akan
paling awal dan merata dalam pembiayaan setiap digunakan sebagai inisialisasi pembentukan
harinya. kromosom pada Algoritma Genetika. Pada
Proses penyeimbangan biaya proyek tiap perhitungan waktu CPM ini digunakan Contoh 1
harinya dilakukan melalui proses pergeseran sebagai gambaran pada sistem ini.
waktu pelaksanaan kegiatan nonkritis dengan Contoh 1 sebuah proyek pembangunan rumah
menggunakan algoritma genetika. Gambaran dengan hubungan ketergantungan antarkegiatan
umum dari kombinasi dari CPM dan Algoritma seperti dalam Tabel 1.
Genetika pada penelitian ini sebagai berikut.
a. CPM akan menentukan waktu tercepat Tabel 1. Hubungan ketergantungan kegiatan
pelaksanaan proyek dari kegiatan-kegiatan
yang diinput dan menghitung waktu ambang DurasiBiaya
No Kegiatan Pekerjaan Predesesso
dari setiap kegiatan. (hari) (ribu)
b. Hasil dari perhitungan CPM digunakan 1 Pek. Persiapan - 8 1000
sebagai batasan pada proses Algoritma 2 Pek. galian tanah - 12 500
Genetika untuk mengalokasikan waktu 3 Pek. Pondasi 2 18 1500
pelaksanaan setiap kegiatan non kritis 4 Pek. beton 1,3 10
dengan memperhatikan faktor biaya proyek. bertulang 10000
Dari kombinasi ini akan dihasilkan sebuah 5 Pek. 3 15
pengembangan penjadwalan proyek dengan pasangan/plesteran 2000
berorientasi pada waktu dan penyeimbangan 6 Pek. pintu jendela 4 10 6000
biaya. 7 Pek. Atap 4,5 9 7000
3.2 Analisa Sistem 8 Pek. langit-langit 7 11 2000
Untuk menyelesaikan permasalahan 9 Pek. Lantai 7 8 5000
penjadwalan proyek dengan penyeimbangan 10 Pek. Finishing 6,8 12 10000
sumber daya biaya ini diasumsikan bahwa setiap
kegiatan dalam proyek mempunyai durasi dan
biaya pelaksanaan kegiatan yang tetap. Pada
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 7
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
8 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930
Riza Arifudin
3.5 x1 x2
x3 x4 x5 x6 x7 x8 x9 x10
1 3 3 5 4 5 6
Kromosom 1
3 1 3 5 1 0 6 5 8 66
1 3 3 4 4 5 6
Kromosom 2
6 1 3 5 1 4 6 5 6 66
1 3 3 4 4 5 5
Kromosom 3
8 1 3 2 1 5 6 5 5 66
1 1 3 3 4 4 5 6
Kromosom 4
0 1 3 3 1 8 6 5 8 66
1 1 3 3 4 4 5 6
Kromosom 5
5 1 3 4 1 3 6 5 4 66
1 3 3 5 4 5 5
Kromosom 6
7 1 3 4 1 5 6 5 6 66
2 1 3 3 5 4 5 6
Kromosom 7
6 1 3 2 1 5 6 5 2 66
1 1 3 3 4 4 5 6
Kromosom 8
7 1 3 4 1 7 6 5 4 66
1 3 3 4 4 5 6
Kromosom 9
4 1 3 4 1 5 6 5 4 66
1 3 3 5 4 5 5
Kromosom 10
8 1 3 5 1 1 6 5 8 66
Gambar 5. Representasi Kromosom Awal
d. Persilangan Kromosom
Prosedur persilangan satu titik sebagai
dimana merupakan suatu bilangan real yang
berikut: (1) Tentukan jumlah populasi yang akan
dianggap sangat kecil untuk menghindari mengalami persilangan, berdasarkan pc; (2) Pilih
pembagian dengan 0. dua kromosom sebagai induk, yaitu p1 dan p2;
(3) Tentukan posisi crossover dengan cara
c. Seleksi Kromosom membangkitkan bilangan acak dengan batasan 1
Pada penelitian ini, seleksi kromosom sampai n-1, dimana n adalah panjang kromosom.
dilakukan dengan menggunakan seleksi roulette Misalkan didapat posisi crossover adalah 20
wheel. Prosedur seleksi adalah sebagai berikut: maka kromosom induk akan dipotong mulai gen
1) Menghitung nilai fitness (fk) tiap kromosom ke 21 sampai gen ke n, kemudian potongan gen
2) Hitung total fitness tersebut saling ditukar antar induk; (4) Posisi
3) Menghitung nilai probabilitas seleksi (pk) cut-point crossover dipilih menggunakan
setiap kromosom bilangan acak 1-(n-1) sebanyak jumlah
4) Menghitung nilai probabilitas komulatif qk crossover yang terjadi.
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 9
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
10 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930
Riza Arifudin
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 11
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
12 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930
Riza Arifudin
kesimpulan sebagai berikut: (1) Algoritma [4] Goldsberg D.E., Genetic Algorithms in
genetika dapat digunakan untuk melakukan search, Optimization & Machine Learning,
optimasi terhadap pembuatan jadwal proyek New York, Addison-Wesley, 1989.
dengan menggabungkan CPM sehingga
[5] Haupt, L.R., and Haupt, E.S., “Practial
diperoleh sebuah jadwal proyek dengan
penyeimbangan biaya yang lebih merata Genetic Algorithm”, United States of
dibandingkan dengan tanpa menggunakan America, John Wiley and Son, 2004.
Algortima Genetika; (2) Kombinasi metode ini [6] Hegazy, T., Optimization of Resource
menghasilkan suatu penjadwalan proyek yang Allocation and Leveling Using Genetic
berorientasi pada waktu dan penyeimbangan Algorithms, Journal of Construction
biaya proyek; (3) Sistem ini menghasilkan Engineering and Management,
penjadwalan proyek yang lebih mendekati garis
Vol.125, No.3, 1999, Hal. 167–175.
linier yang ditunjukkan dengan kurva S; (4)
Hasil penjadwalan menggunakan kombinasi [7] Hiller, S.F. and Lieberman G.J., Pengantar
CPM dan Algoritma Genetika merupakan salah Riset Operasi, Jakarta, Erlangga, 1994.
satu alternatif bagi para Kontraktor dalam [8] Kim J.L. and Ellis R. D., Permutation-
melakukan penjadwalan proyek. Based Elitist Genetic Algorithm for
Optimization of Large-Sized Resource-
5.2 Saran Constrained Project Scheduling, Journal of
Berdasarkan pada pengujian yang telah
Construction Engineering and
dilakukan pada sistem yang dibuat, masih
banyak kekurangan dan kelemahan sehingga Management, Vol. 134, No. 11, November
perlu dikembangkan lagi agar kinerjanya lebih 1, 2008. ©ASCE, ISSN 0733-
baik, oleh karena itu saran yang diberikan adalah 9364/2008/11-904–913.
sebagai berikut: (1) Pada penelitian ini [9] Lawrence, J.A. and Pasternack B.A.,
menggunakan kombinasi dari CPM, disarankan Applied Management Science: Modeling,
pada penelitian selanjutnya dapat menggunakan
Spreadsheet Analysis, and Communication
metode selain CPM; (2) Untuk penelitian lebih
lanjut diharapkan dapat dikembangkan sistem For Decision Making, United States of
penjadwalan proyek yang dapat menangani America, John Wiley and Son, 2001.
lebih banyak kendala; (3) Untuk penelitian lebih [10] Michalewicz, Z., Genetic Algorithm + Data
lanjut diharapkan sistem penjadwalan proyek Structure = Evolutions Programs, 3rd
hendaknya dapat memberikan lebih banyak Edition, New York, Springer-Verlag, 1996.
pilihan metode seleksi dan metode crossover. [11] Negnevitsky, M., Artificial Intelligence: a
guide to intelligent systems, Essex England,
Referensi
Pearson Education Limited, 2004.
[1] Cordon, O., Herrera, F., Hoffmann, F., and [12] Noranita, B., Penjadwalan Proyek dengan
Magdalena, L., Genetic Fuzzy Systems: Parameter Waktu Pelaksanaan yang Tidak
Evolutionary Tuning and Learning Of Pasti dan Batasan Persediaan Sumber Daya,
Fuzzy Knowledge Bases, British, World Tesis, Yogyakarta, Program Pasca Sarjana
Scientific Publishing Co. Pte. Ltd., 2001, Ilmu Komputer, Universitas Gadjah Mada,
[2] Davis, L., Handbook of Genetic Algorithms, 2003.
United States of America, Van Nostrand [13] Pressman, R.S., Rekayasa Perangkat
Reinhold, 1991. Lunak, Yogyakarta, Andi And McGraw-
[3] Gen, M., and Cheng, R., “Genetic Hill Book Co, 1997.
Algorithms and Engineering Optimization”, [14] Turban E., Decision Support Systems and
United States of America, John Wiley and Intelligent Systems-7th Ed., New Jersey,
Son, 2000. Pearson Education Inc., 2005.
Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930 13
Optimasi Penjadwalan Proyek dengan Penyeimbangan Biaya Menggunakan Kombinasi CPM dan Algoritma Genetika
[15] Taha, H.A., Operations Research, Jakarta, Bina Rupa Aksara, 1997.
14 Jurnal Masyarakat Informatika, Volume 2, Nomor 4, ISSN 2086 – 4930