4
BAB II
LANDASAN TEORI
2.1 Pengertian Penjadwalan
Penjadwalan dapat diartikan sebagai pengalokasian sejumlah sumber daya
(resource) untuk melakukan sejumlah tugas atau operasi dalam jangka waktu
tertentu dan sebagai proses pengambilan keputusan pada industri manufaktur dan
jasa yang memiliki peranan penting dalam mencapai tujuan atau sasaran
perusahaan (Pinedo, 2016).
Menurut Pinedo (2016), penjadwalan dapat didefinisikan dalam 2 arti
penting sebagai berikut :
a) Penjadwalan merupakan suatu fungsi pengambilan keputusan untuk membuat
atau menentukan jadwal. Hal ini berkaitan dengan pengalokasian sumber daya
yang ada untuk mengerjakan tugas selama jangka waktu tertentu dan untuk
mengoptimalkan satu atau lebih tujuan (performansi).
b) Penjadwalan merupakan suatu teori yang berisi sekumpulan prinsip dasar,
model, teknik, dan kesimpulan logis dalam proses pengambilan keputusan
yang memberikan pengertian dalam fungsi penjadwalan. Meminismalkan
perkiraan waktu penyelesaian semua job dapat menggunakan salah satu fungsi
sistem operasi komputer dengan menjadwalkan waktu pada CPU untuk
menampilkan program yang harus dijalankan. Waktu pemrosesan yang tepat
biasanya tidak dapat diketahui sebelumnya. Namun, distribusi waktu
pemrosesan acak ini dapat diketahui sebelumnya, termasuk cara dan
variansnya. Selain itu, setiap tugas biasanya memiliki tingkat prioritas tertentu
(sistem operasi biasanya memungkinkan operator dan pengguna menentukan
tingkat prioritas atau bobot setiap tugas).
Penjadwalan dibutuhkan untuk mengurangi alokasi tenaga operator, mesin
peralatan produksi, dan dari aspek lainnya untuk lebih efisien. Hal ini sangat
penting dalam pengambilan keputusan dalam proses kelangsungan produksi.
5
2.2 Tujuan Penjadwalan
Tujuan penjadwalan adalah mengurangi waktu keterlambatan dari batas
waktu yang ditentukan agar dapat memenuhi batas waktu yang telah disetujui
dengan konsumen, penjadwalan juga dapat meningkatkan produktifitas mesin dan
mengurangi waktu menganggur. Produktifitas mesin meningkat maka waktu
menganggur berkurang, maka secara tidak langsung perusahaan dapat mengurangi
biaya produksi. Semakin baik suatu penjadwalan semakin menguntungkan juga
bagi perusahaan dan bisa menjadi acuan untuk meningkatkan keuntungan dan
strategi bagi perusahaan dalam pemuasan pelanggan. Beberapa tujuan yang ingin
dicapai dengan dilaksanakannya penjadwalan adalah sebagai berikut (Baker &
Trietsch, 2009).
1. Meningkatkan produktifitas mesin, yaitu dengan mengurangi waktu mesin
menganggur.
2. Mengurangi persediaan barang setengah jadi dengan mengurangi jumlah rata-
rata pekerjaan yang menunggu antrian suatu mesin karena mesin tersebut
sibuk. Pengurangan persediaan barang setengah jadi (work in process
inventory) berdampak pada pengurangan biaya penyimpanannya.
3. Mengurangi keterlambatan karena telah melampaui batas waktu dengan cara,
a) Mengurangi maksimum keterlambatan,
b) Mengurangi jumlah pekerjaan yang terlambat.
4. Meminimasi ongkos produksi.
Ongkos yang dapat dihemat dengan adanya penjadwalan adalah :
Biaya Lembur, dapat dicegah karena dengan penjadwalan yang baik tugas
dapat diselesaikan dalam waktu kerja normal, tetapi tidak melanggar due
date.
Biaya penalty keterlambatan.
Biaya work in process, dan biaya penyimpanan lainnya.
5. Pemenuhan batas waktu yang telah ditentukan (due date), karena dalam
kenyataan jika terjadi keterlambatan pemenuhan due date dapat dikenakan
suatu denda (penalty).
6
Teknik penjadwalan yang tepat bergantung pada volume pesanan, ciri
operasi, keseluruhan kompleksitas pekerjaan, serta perhatian pada tujuan dari
penjadwalan itu sendiri.
2.3 Klasifikasi Penjadwalan
Klasifikasi penjadwalan menurut Pinedo (2016), terbagi menjadi :
a) Penjadwalan mesin tunggal (single machine)
Penjadwalan mesin tunggal merupakan masalah penjadwalan yang memiliki
sebuah sumber tunggal atau mesin tunggal dan semua waktu pemrosesan
bersifat deterministik. Hasil yang dapat diperoleh dari penelitian model mesin
tunggal tidak hanya memberikan wawasan pada lingkungan mesin tunggal,
namun juga menjadikan dasar pemikiran untuk heuristik pada lingkungan
mesin yang lebih rumit. Dalam prakteknya, masalah penjadwalan di
lingkungan mesin yang lebih rumit sering didekomposisi menjadi
subproblem yang berhubungan dengan mesin tunggal.
b) Penjadwalan paralel
Penjadwalan paralel dibagi menjadi :
1. Penjadwalan N job pada mesin parallel identik (identical machine
parallel) prinsip dalam penjadwalan paralel identik adalah pengalokasian
beban ke mesin yang lebih dahulu kosong/idle.
2. Penjadwalan N job pada mesin paralel non identic, dimana setiap mesin
mempunyai fungsi yang sama namun waktu proses berbeda. Flow time tidak
bisa dievaluasi langsung dari waktu proses. Tidak selalu alternatif waktu
terpendek dari setiap job akan menjadi keputusan alokasi pada mesin.
3. Penjadwalan N job pada mesin paralel unrelated perluasan dari paralel
non identic. Terdapat m mesin paralel, dimana mesin i untuk memproses
job j maka kecepatan mesin adalah vij.
4. Penjadwalan Flow Shop dan Flexible Flowshop, terdapat m mesin serial
dimana masing-masing job harus diproses di setiap mesin. Semua job
harus mengikuti rute yang sama. Setelah proses selesai di satu mesin
maka akan dilanjutkan proses pada mesin selanjutnya.
7
5. Penjadwalan Job Shop dan Flexible Job Shop, terdapat m mesin dimana
setiap job memiliki rute produksi yang harus diikuti. Job dapat diproses
lebih dari satu kali pada mesin yang sama. Kondisi ini yang sering disebut
dengan recirculation. Flexible Job Shop adalah perluasan dari job shop
dan mesin paralel. Pada kasus ini terdapat m mesin seri dengan c stasiun
kerja dengan sejumlah mesin identik untuk setiap stasiun kerja.
6. Penjadwalan Open Shop diterapkan untuk kasus m mesin dimana setiap
job harus diproses lagi untuk setiap mesin. Akan tetapi waktu proses
dapat bernilai nol. Tidak ada batasan urutan produksi untuk setiap job,
setiap job memiliki urutan proses yang berbeda pula.
2.4 Jenis-jenis Aliran Produksi
Jenis-jenis aliran produksi merupakan suatu skema dimana proses
berjalannya aliran dapat diklasifikasikan menjadi beberapa tipe. Adapun jenis-
jenis aliran produksi menurut Baker & Trietsch (2009), yang secara umum
dimiliki banyak perusahaan yaitu :
a) Aliran proses flow shop, yaitu lantai produksi yang memproses produknya
dengan urutan proses yang sama terhadap semua komponen produk yang
bersangkutan dari mulai bahan awal sampai produk selesai. Jadi setiap
pekerjaan yang telah diproses pada suatu mesin dan kemudian sedang diproses
pada mesin yang lain tidak dapat diproses kembali pada mesin yang telah
dilalui sebelumnya. Adapun beberapa variansi aliran proses flow shop yaitu :
1. Pure Flow Shop
Semua jenis pekerjaan melalui urutan proses yang sama pada setiap mesin.
2. Skip Flow Shop
Aliran pekerjaan pada jenis aliran proses ini cenderung melalui urutan
proses yang sama, tetapi ada beberapa pekerjaan yang tidak diproses pada
mesin-mesin tertentu.
3. Re-entrant Flow Shop
Yakni aliran proses dimana terdapat penggunaan satu atau beberapa mesin
lebih dari sekali dalam membuat produk dimaksud.
8
4. Compound Flow Shop
Yakni aliran proses yang memuat kelompok jenis mesin pada setiap tahap
prosesnya. Kelompok mesin biasanya berupa mesin mesin paralel.
b) Job Shop
Merupakan proses transformasi dimana produk dibuat atas dasar pesanan
dalam jumlah waktu tertentu. Setiap order dapat mempunyai urutan dari
jumlah lot atau batch atau mesin yang berbeda. Dalam lantai produksi stasiun
kerja dan departemen dikelompokkan berdasarkan fungsinya. Karena setiap
order dapat mempunyai urutan dari jumlah lot atau batch atau mesin yang
berbeda, maka memungkinkan setiap stasiun kerja memproses beberapa item
yang berbeda. Artinya bahwa pekerjaan diperbolehkan untuk diproses lebih
dari satu kali pada mesin yang sama. Jika setiap mesin hanya dilalui satu kali,
disebut aliran job shop murni sebaliknya disebut job shop umum.
2.5 Penjadwalan Flowshop
Tipe penjadwalan flow shop adalah pergerakan dari unit satu ke unit yang
lain secara terus menerus dengan melewati workstation dan disusun berdasarkan
produk yang dibuat (Baker & Trietsch, 2009). Proses produksi pada aliran flow
shop adalah proses produksi dengan pola aliran barang identik dari satu mesin ke
mesin lain. Semua job harus mengikuti rute mesin yang sama, yaitu tiap job harus
diproses terlebih dahulu di mesin 1, lalu di mesin 2, dan seterusnya. Setelah
selesai pada satu mesin, sebuah job bergabung dengan antrian di mesin berikutnya
(Pinedo, 2016). Walaupun pada flow shop semua tugas akan mengalir pada jalur
produksi yang sama, yang umumnya dikenal sebagai pure flow shop, tetapi dapat
pula berbeda dalam dua hal. Pertama, jika flow shop dapat menangani tugas yang
bervariasi. Kedua, jika tugas yang datang ke dalam flow shop tidak harus
dikerjakan pada semua jenis mesin. Jenis flow shop ini disebut general flow shop.
2.6 Klasifikasi Kondisi Penjadwalan
Penjadwalan produksi dapat diklasifikasikan dari perbedaan kondisi yang
mendasarinya, klasifikasi penjadwalan yang sering terjadi dalam proses produksi
menurut Baker & Trietsch (2009) adalah sebagai berikut :
9
1. Berdasarkan pola kedatangan job.
a) Statik, pengurutan job terbatas pada pesan yang ada. Job yang baru tidak
mempengaruhi pengurutan job yang sudah dibuat.
b) Dinamik, pengurutan job selalu diperbaharui jika ada job baru yang
datang.
2. Berdasarkan waktu proses
a) Deterministik, waktu proses yang diterima sudah diketahui dengan pasti.
b) Stokastik, waktu proses yang diterima belum pasti, oleh karena itu perlu
diperkirakan dengan menggunakan distribusi probabilitas.
2.7 Kendala-Kendala pada Penjadwalan Urutan Job
Dalam pelaksanaannya, penjadwalan produksi di tingkat lantai produksi (shop
floor) dapat mengalami gangguan dan hambatan. Menurut Pinedo (2016) gangguan
dan hambatan pada lantai produksi yang dapat terjadi antara lain adalah :
1. Mesin Rusak
Pada saat mesin rusak (machine breakdown), maka operasi-operasi yang akan
menggunakan mesin tersebut tidak dapat dikerjakan dan harus menunggu
sampai mesin selesai diperbaiki. Hal ini mengakibatkan terhentinya proses
produksi dan penjadwalan urutan job semula menjadi tidak terpenuhi. Maka
perlu dilakukan penyesuaian pada jadwal semula sehingga diperoleh kembali
jadwal produksi yang feasible. Penjadwalan ulang ini dikenal dengan istilah
rescheduling. Informasi yang diperlukan adalah jenis dan nomor mesin yang
rusak, waktu terjadinya kerusakan dan lama waktu perbaikan untuk kerusakan
mesin tersebut.
Prinsip yang digunakan untuk pengembangan algoritma penjadwalan ulang
untuk gangguan mesin rusak, adalah :
Penjadwalan ulang dilakukan dari titik waktu terjadinya gangguan mesin.
Penjadwalan ulang dilakukan untuk opersi-operasi yang belum dikerjakan.
Operasi-operasi yang telah selesai dikerjakan sebelum titik waktu
terjadinya gangguan tidak diperhatikan lagi.
10
Operasi yang sedang dikerjakan pada saat terjadi gangguan tidak
mengalami perubahan.
Setelah mengidentifikasi mesin yang rusak, penjadwalan ulang dilakukan
dengan mengundurkan waktu operasi sesuai dengan lama waktu perbaikan
mesin.
2. Penambahan pesanan baru
Pada saat produksi sedang berjalan, tidak tertutup kemungkinan bahwa terjadi
penambahan pesanan baru. Hal ini mengakibatkan pelaksanaan penjadwalan
yang belum memperhitungkan pesanan baru tersebut akan mengalami
gangguan. Oleh karena itu, diperlukan penjadwalan ulang dengan
mempertimbangkan pesanan baru tersebut, sehingga produksi akan tetap
berada pada kondisi yang optimal serta lantai produksi (shop floor) dapat
segera menyesuaikan diri dengan penjadwalan baru tersebut. Informasi yang
diperlukan dari adanya pesanan baru tersebut adalah jenis produk yang
dipesan, routing pekerjaan (rute proses produksi), jumlah pesanan dan due
date yang diminta konsumen.
Prinsip yang telah dikembangkan untuk algoritma penjadwalan ulang untuk
kasus masuknya pesanan baru adalah :
Penjadwalan ulang dilakukan dari titik waktu terjadinya gangguan.
Penjadwalan ulang dilakukan untuk operasi-operasi yang belum
dikerjakan.
Operasi yang sedang dikerjakan pada saat terjadi gangguan tidak
mengalami perubahan.
Operasi-operasi yang telah selesai dikerjakan sebelum titik waktu
terjadinya gangguan tidak diperhatikan lagi.
3. Perubahan prioritas
Perubahan prioritas pembuatan produk akan mempengaruhi penjadwalan yang
telah dilakukan. Prinsip yang telah dikembangkan pada algoritma penjadwalan
ulang untuk gangguan ini sama dengan prinsip yang digunakan untuk kasus
adanya pesanan baru.
11
4. Adanya pengulangan operasi pada produk tertentu
Pengulangan operasi pada produk tertentu dilakukan jika terdapat produk yang
dinyatakan cacat, sehingga menyebabkan produk tersebut harus diproses ulang
untuk memenuhi spesifikasi yang diinginkan. Akibat dari pengulangan proses
tersebut maka waktu operasi produk tersebut bertambah dan proses produksi
dari produk lain tertunda. Untuk itu dibutuhkan penjadwalan ulang mesin
dengan data tambahan seperti jenis produk yang akan diulang, operasi proses
produksi yang diulang dan mesin yang digunakan dalam proses pengulangan
tersebut.
5. Perubahan due date
Produk yang mengalami perubahan due date akan menyebabkan perubahan
pada jadwal produksi semula. Perubahan due date ada dua macam yaitu due
date semakin maju atau due date semakin mundur. Penjadwalan produksi
dengan due date yang semakin mundur tidak akan mengubah penjadwalan
urutan job dan tidak akan mengakibatkan perubahan pada performansi
penjadwalan semula. Akan tetapi, perubahan due date yang semakin maju
akan mengubah penjadwalan urutan job awal agar kriteria performansi yang
dipilih dapat tetap dipertahankan dengan adanya perubahan due date tersebut.
2.8 Beberapa Istilah dalam Penjadwalan
Dalam pembahasan masalah penjadwalan sering dijumpai beberapa istilah
yang umum digunakan, antara lain:
Processing Time / waktu proses (Pi)
Waktu yang diperlukan untuk menyelesaikan operasi atau proses dari
pekerjaan ke- i, waktu proses ini telah mencakup waktu untuk persiapan dan
pengaturan proses.
Due Date (di)
Batas akhir waktu pekerjaan ke-i boleh diselesaikan. Lewat dari batas ini suatu
pekerjaan dikatakan tardy.
12
Completion Time / waktu penyelesaian (Ci)
Rentang waktu sejak pekerjaan pertama dimulai (t= 0) hingga pekerjaan ke-i
diselesaikan.
Lateness (Li)
Penyimpangan dari waktu penyelesaian hingga saat due date.
Li = Ci – di<0 , saat penyelesaian memenuhi batas (early job). (1)
Li = Ci – di>0 , saat penyelesaian melampaui batas (tardy job).
Li = Lateness
Ci = waktu penyelesaian
di= Due Date
Tardiness (Ti)
Keterlambatan penyelesaian suatu pekerjaan dari saat due date.
ini
i LMaxT ,01
(2)
Earliness
Saat penyelesaian terlalu dini (sebelum due date ), earliness juga disebut
lateness negative.
0,ii LMinE (3)
Slack (Si)
Waktu sisa yang tersedia bagi suatu pekerjaan
Si = di – ti (4)
di = Due Date
ti = Tardiness
Makespan (M)
Jangka waktu penyelesaian suatu pekerjaan merupakan penjumlahan dari
seluruh waktu proses suatu mesin.
Flow Time (Fi)
Routing waktu mulai dari pekerjaan ke-i siap untuk dikerjakan hingga
pekerjaan selesai.
Ready Time (Ri) Saat pekerjaan ke-i dapat dikerjakan (siap dijadwalkan).
13
2.9 Prioritas Dispatching Rules
Penjadwalan flow shop dapat diselesaikan dengan menggunakan metode-
metode heuristic (Baker & Trietsch, 2009). Dispatching rule atau sering
diistilahkan scheduling in advance merupakan teknik heuristic yang sering
digunakan dalam penjadwalan. Beberapa metode dispatching rule adalah :
1. First Come First Serve (FCFS)
Menurut aturan ini, urutan penjadwalan dilakukan berdasarkan waktu
kedatangan job atau pesanan pelanggan. Jadi job yang pertama kali datang,
akan dikerjakan terlebih dahulu dan seterusnya untuk job-job berikutnya.
2. Earliest Due Date First (EDD)
Menurut aturan ini, urutan penjadwalan dilakukan berdasarkan pada due date
setiap job. Aturan ini mengabaikan waktu kedatangan dan total waktu proses
setiap setiap job. Artinya job yang memiliki due date yang paling awal
diantara job-job lainnya dipilih sebagai job yang memiliki prioritas paling
tinggi untuk diproses pada sebuah mesin. Aturan ini cenderung digunakan
untuk meminimalkan maximum lateness pada job-job yang ada dalam antrian.
3. Longest Processing Time (LPT)
Proses dengan waktu operasi yang paling panjang akan dijadwalkan terlebih
dahulu. Aturan ini juga sangat sederhana yaitu dengan cara mengurutkan
pekerjaan dari yang mempunyai waktu proses terbesar hingga yang terkecil
(t1≥t2≥…≥tn). Setelah itu penjadwalan dilakukan berdasarkan urutan tersebut.
4. Shortest Processing Time (SPT)
Menurut aturan ini, job diurutkan berdasarkan pada lamanya waktu proses tiap
job. Jadi job yang mempunyai waktu proses paling singkat akan diproses
terlebih dahulu dan kemudian dilanjutkan job-job lainnya sampai pada job
yang paling lama waktu prosesnya.
2.10 Ukuran Performansi Penjadwalan
Ukuran performansi merupakan tujuan dari penjadwalan akan hasil yang
diinginkan (Baker & Trietsch, 2009). Adapun kriteria penjadwalan urutan job
adalah sebagai berikut :
14
1. Kriteria performansi penjadwalan berdasarkan atribut tugas.
a) Flow time (Fi), adalah waktu yang dibutuhkan oleh suatu pekerjaan dari
saat pekerjaan tersebut masuk ke dalam suatu tahap proses sampai
pekerjaan yang bersangkutan selesai dikerjakan.
(5)
b) Completion Time (Ci), waktu yang dibutuhkan untuk menyelesaikan
pekerjaan mulai dari saat tersedianya pekerjaan (t = 0) sampai pada
pekerjaan tersebut selesai dikerjakan. Atau menunjukkan rentang waktu
sejak pekerjaan pertama mulai dikerjakan sampai proses tersebut selesai
dimana :
(6)
c) Mean flow time merupakan waktu rata-rata waktu pekerjaan j yang
dihabiskan dimana :
∑ (7)
d) Mean weight flow time, memiliki arti yang hampir sama dengan mean flow
time, hanya saja mempertimbangkan prioritas pengerjaan setiap job, dimana
dalam perhitungan sebagai berikut :
∑ (8)
e) Maximum Lateness, yaitu besarnya simpangan maksimum atau selisih
waktu penyelesaian seluruh job yang dijadwalkan terhadap batas waktu
penyelesaian job tersebut, dimana Lmax = max {I}.
f) Tardiness, yaitu ukuran keterlambatan yang bernilai positif jika pekerjaan
dapat diselesaikan lebih cepat dari dari due date-nya pekerjaan tersebut
akan memiliki keterlambatan negatif.
( ) (9)
g) Total tardiness, yaitu total keterlambatan setiap job dapat dihitung sebagai
berikut :
∑ (10)
h) Mean tardiness, merupakan rata-rata keterlambatan seluruh job yang
dijadwalkan dan dapat dihitung dengan rumus sebagai berikut :
15
∑ (11)
Keterangan : Processing Time
Waktu job menunggu
Flow Time
Ready time
Flow Time
Weight Flow Time
Jumlah Job
Tardiness
maximum flow time
2. Kriteria berdasarkan atribut pabrik
a) Utilitas mesin, merupakan rasio dari jumlah mesin yang dibebankan pada
mesin dengan rentan waktu untuk menyelesaikan seluruh tugas pada semua
mesin.
∑ ( )
dimana
∑ ( )
(12)
b) Minimasi makespan, yaitu jangka waktu penyelesaian seluruh job yang
akan dijadwalkan yang merupakan jumlah dari seluruh proses.
∑ (13)
c) Pemenuhan due date, merupakan penyelesaian pekerjaan sesuai dengan
batas waktu yang ditentukan oleh pelanggan dimana harus selalu dilakukan
produsen untuk mempertahankan pelanggan.
Keterangan : makespan untuk n job dan penjadwalan s.
waktu proses job i
2.11 Gantt Chart
Menurut Heizer & Render (2005), Gantt Chart merupakan diagram
perencanaan yang digunakan untuk penjadwalan sumber daya dan alokasi waktu.
Gantt Chart adalah contoh teknik non-matematis yang banyak digunakan dan
sangat populer di kalangan para manajer karena sederhana dan mudah dibaca.
Gantt Chart dapat membantu penggunanya untuk memastikan bahwa,
16
a) Semua kegiatan telah direncanakan
b) Urutan kinerja telah diperhitungkan
c) Perkiraan waktu kegiatan telah tercatat
d) Keseluruhan waktu proyek telah dibuat
Gantt Chart sangat mudah dipahami, balok horizontal (horizontal bar) dibuat
pada tiap kegiatan proyek sepanjang garis waktu. Gantt Chart juga dapat
digunakan untuk penjadwalan operasi yang berulang. Gantt Chart digunakan
untuk penjadwalan sederhana atau proyek-proyek yang kegiatannya tidak terlalu
berkaitan atau proyek kecil, sedangkan network untuk penjadwalan yang rumit.
Gantt Chart tidak bisa secara eksplisit menunjukkan keterkaitan antara
aktivitas dan bagaimana satu aktivitas berakibat pada aktivitas lain bila waktunya
terlambat atau dipercepat, sehingga perlu dilakukan modifikasi terhadap Gantt
Chart. Untuk mengatasi kekurangan-kekurangan yang ada pada Gantt Chart maka
dikembangkan sebuah teknik baru yaitu jaringan (network). Berikut merupakan
contoh pengerjaan produk di suatu perusahaan manufaktur :
Gambar 2.1 Gantt Chart
Kelebihan penggunaan Gantt Chart, diantaranya :
1. Dapat menunjukkan waktu, kegiatan dan urusan kegiatan.
2. Jika jumlah kegiatan tidak terlalu banyak atau hanya sekedar jadwal induk,
maka metode Gantt Chart menjadi pilihan pertama dalam proses perencanaan
dan pengendalian kegiatan, karena mudah dipahami oleh semua lapisan
pelaksana proyek.
Dari kelebihan diatas Gantt Chart juga memiliki kelemahan, antara lain
1. Tidak memperhatikan saling ketergantungan dan hubungan antar kegiatan
sehingga sulit diantisipasi jika terjadi keterlambatan suatu kegiatan terhadap
keseluruhan proyek.
Resource
Resource
Resource
1 2 3 4 5 6 7 8 Time
Job B
Job A Job B
Job A
Job A
Job B
17
2. Tidak mudah dilakukan perbaikan dan pembaharuan (updating) disebabkan
Gantt Chart baru harus dibuat kembali (tidak efisien), padahal pembuatan
ulang akan memakan waktu dan jika tidak dilakukan segera maka peta
tersebut akan menurun daya gunanya.
3. Untuk proyek yang berukuran sedang dan besar serta kompleks, maka Gantt
Chart tidak mampu menyajikan jadwal secara sistematis dan mengalami
kesulitan dalam menentukan keterkaitan antar kegiatan.
2.12 Penjadwalan Urutan Job dengan Metode NEH-EDD
Pada algoritma pure NEH, dilakukan pengurutan jumlah processing time tiap
job pada mesin dari jumlah terbesar sampai terkecil, kemudian dilakukan
perhitungan menggunakan algoritma NEH dengan mencari solusi terbaik
(makespan) dari tiap jadwal partial yang telah dibuat. Menurut Kim (1999), NEH-
EDD yaitu penjadwalan urutan job dengan mengurutkan job yang memiliki due
date terkecil sampai terbesar, kemudian hasil dari pengurutan tersebut dilakukan
perhitungan menggunakan algoritma NEH untuk mendapatkan solusi (mean
tardiness) terbaik. Tetapi jika menggunakan performansi mean tardiness saja,
pada algoritma NEH menemui kesulitan untuk menentukan jadwal partial yang
terpilih. Karena tidak menutup kemungkinan jika masing-masing job memiliki
nilai due date yang lebih besar dari completion time yang dihasilkan, maka hasil
yang didapat pada setiap alternatif bernilai nol. Untuk menghindari hal ini, maka
performansi yang digunakan adalah total lateness, dimana terdapat dua kondisi
yang dihasilkan lebih luas dari mean tardiness (rata-rata waktu keterlambatan
bernilai positif) yaitu total waktu keterlambatan positif (tardiness) dan waktu
keterlambatan bernilai negatif (earliness). Jadi jika hasil mean tardiness dari tiap-
tiap job bernilai positif maka digunakan kriteria mean tardiness untuk
menentukan jadwal alternatif di tiap jadwal partial. Jika hasil mean tardiness dari
tiap-tiap job bernilai negatif, maka baru digunakan kriteria total lateness untuk
menentukan jadwal alternatif di tiap jadwal partial.
18
2.13 Penjadwalan Urutan Job dengan Metode Simulated Annealing
Menurut Kirkpatrick, et al.(1983) yang dikutip oleh Dowsland & Thompson
(2012), simulated annealing termasuk algoritma yang meniru perilaku fisik proses
pendinginan material (baja) yang dikenal sebagai proses annealing. Teknik ini
meniru perilaku baja yang mengalami pemanasan suhu tertentu kemudian
didinginkan secara perlahan. Ketika baja dipanaskan sampai suhu mendidih, atom-
atom dalam baja tersebut bergerak bebas, dan semakin terbatas gerakannya ketika
suhunya turun. Ketika suhunya turun, susunan atomnya akan menjadi besar lebih
teratur dan akhirnya akan membentuk kristal dan mempunyai energy internal yang
minimum. SA telah banyak diterapkan diberbagai masalah optimasi seperti TSP,
VRP, penjadwalan pekerjaan dan beberapa masalah yang lain.
Simulated Annealing dengan beberapa modifikasi dapat digunakan untuk
menyelesaikan permasalahan penjadwalan pekerjaan, yang terdiri atas nilai
temperatur awal, jadwal pendinginan (cooling schedule), jumlah iterasi yang
diperlukan pada setiap temperatur, dan kriteria pemberhentian untuk
menghentikan algoritma. Pilihan nilai awal temperatur T, jumlah iterasi k sebelum
mengurangi temperatur, dan faktor pengurangan temperatur c adalah parameter-
parameter penting dalam keberhasilan pelaksanaan algoritma SA. Jika misalnya
nilai temperatur awal terlalu tinggi, maka dibutuhkan lebih banyak pengurangan
temperatur untuk konvergen. Sebaliknya jika nilai awal ini terlalu kecil proses
pencarian mungkin kurang sempurna sehingga ada titik-titik potensial yang bisa
menjadi global optimum terlewati. Faktor pereduksi temperatur c memainkan
peran yang sama. Jika terlalu besar (0.8 atau 0.9) akan memerlukan terlalu banyak
langkah komputasi untuk konvergen. Sebaliknya jika terlalu kecil nilai c (missal
0.1 atau 0.2) bisa berakibat terlalu cepatnya penurunan temperatur sehingga akan
banyak titik-titik potensial untuk menjadi solusi global akan terlewati.
Begitu juga jika jumlah iterasi k terlalu besar akan membantu mencapai
keseimbangan termal pada setiap temperatur tetapi dengan tambahan jumlah
komputasi. Jika jumlah iterasi n sedikit, maka bisa terjadi konvergensi yang terlalu
cepat atau menuju ke solusi tetapi local optimum. Sayangnya, tidak ada nilai T, n,
dan c yang unik yang akan sesuai untuk semua problem. Tetapi ada beberapa cara
19
untuk mendapatkan nilai yang cukup baik. Misalkan untuk T bisa dipilih dari nilai rata-
rata dari fungsi tujuan yang dihitung pada sejumlah solusi awal yang dipilih secara
random. Jumlah iterasi k bisa dipilih diantara 50 dan 100 berdasarkan pada akurasi yang
diinginkan. Faktor pereduksi temperatur c bisa dipilih antara 0.4 dan 0.6 untuk strategi
pengurangan temperatur yang masuk akal (cooling schedule). Algoritma simulated
annealing dapat dituliskan sebagai berikut (Santoso & Willy, 2011) :
1. Tentukan parameter dan mulai dengan vektor xi :
– T : nilai temperatur
– c : faktor pereduksi temperatur dengan nilai 0< c <1
– n : jumlah iterasi
2. Hitung nilai fi = f(xi), tetapkan iterasi i = 1, dan jumlah siklus p = 1.
3. Bangkitkan vektor baru xi+1 di sekitar xi dan hitung f(xi+1), hitung △f = fi+1 – fi.
4. Terima atau tolak vektor baru xi+1 sebagai solusi kriteria metropolis :
a) Jika △f bernilai negatif, maka xi+1 diterima.
b) Jika △f bernilai positif, maka digunakan distribusi probabilitas Boltzmann.
( ) (14)
Untuk menerima atau tidak, perlu digunakan solusi pembanding terhadap nilai
probabilitas dengan membangkitkan nilai acak (0,1). Jika nilai acak < P(E), maka
solusi baru diterima. Namun jika sebaliknya maka solusi baru ditolak.
5. Jika i < n, kembali ke langkah 3. Akan tetapi jika i ≥ n, maka lanjutkan ke
langkah 6.
6. Update siklus iterasi p = p + 1, dan iterasi i = 1.
7. Kurangi temperature
8. Jika kriteria pemberhentian tercapai, maka pencarian dihentikan. Namun jika
kriteria pemberhentian belum tercapai, maka ulangi dari langkah 3.
Keterangan :
xi : solusi ke-i
fi : nilai fungsi tujuan
f(xi) : nilai fungsi tujuan dari solusi ke-i
Secara umum dapat dilihat pada gambar flowchart 2.1 sebagai berikut (Santosa &
Willy, 2011).
20
Mulai dengan vektor xi
Tentukan parameter
awal dan paarameter
lain : T,c, n
Itung nilai f1 = f(x1)
Tetapkan iterasi i=1
Jumlah siklus p=1
Bangkitkan vektor
baru xi+1 disekitar xi
dan hitung f(xi+1)
Hitung ∆f = fi+1- fi
Terima atau tolak vektor
baru xi+1 sebagai solusi
dengan kriteria metropolis
Update iterasi i =i+1
Apakah i≥n
Update siklus p = p + 1
Update iterasi i =1
Kurangi Temperatur
T ×c
Stopping kriteria
tercapai ?
Selesai
Mulai
Ya
Tidak
(Sumber : Buku Metode Metaheuristik Konsep dan Implementasi, 2011)
Gambar 2.2 Flowchart Algolritma Simulated Annealing
2.14 Literatur Review Jurnal-Jurnal Pendukung Penelitian
Beberapa penelitian terdahulu mengenai penjadwalan flow shop meliputi
Nawaz, et al.(1983) telah membahas tentang penjadwalan flow shop meliputi
penjadwalan static dan dynamic menggunakan algoritma baru (NEH), Kim
(1999) telah membahas tentang algoritma heuristic pada penjadwalan flow shop
menggunakan NEH yang dikombinasikan dengan aturan EDD (earlist due date)
21
untuk meminimasi mean tardiness, Radhakrishnan & Ventura (2000) pada
penjadwalan flow shop dengan performansi meminimasi completion time, Low
(2005) telah menggunakan Simulated Annealing pada penjadwalan flow shop
dengan performansi meminimasi total flow time, Varadharajan & Rajendran
(2005) telah menggunakan Simulated Annealing pada penjadwalan flow shop
dengan performansi meminimasi makespan dan total flow time, Loukil, et
al.(2007) telah menggunakan Simulated Annealing pada penjadwalan flexible (or
hybrid) job shop dengan performansi meminimasi makespan, mean completion
time, maximal tardiness, mean tardiness, Lin, et al.(2009) telah menggunakan
Simulated Annealing pada penjadwalan flow shop dengan performansi
meminimasi makespan, Naderi, et al.(2009) telah menggunakan Simulated
Annealing pada penjadwalan hybrid flowshop dengan performansi meminimasi
total completion time dan total tardiness, Naderi, et al.(2010) telah menggunakan
Simulated Annealing dan Electromagnetism pada penjadwalan flow shop dengan
performansi meminimasi total bobot tardiness dan makespan, Tamilarasi &
Kumar (2010) telah menggunakan Simulated Annealing pada penjadwalan job
shop dengan kriteria minimasi makespan, Dai , et al.(2013) telah menggunakan
Simulated Annealing pada penjadwalan flexible flow shop dengan performansi
efisiensi energy, Mousavi, et al.(2013) telah menggunakan Simulated Annealing
pada penjadwalan flexible flow shop dengan performansi meminimasi makespan
dan total tardiness.
22
Tabel 2.1 Literatur Review Jurnal Pendukung
Nama Penulis Tahun Judul Jurnal Jenis
Lingkungan
Manufaktur
Metode Performansi
Nawaz, et al 1983 A heuristic algorithm
for the m-machine, n-
job flow shop
sequencing problem
flowshop
(static &
dynamic)
NEH Makespan
Kim 1999 Heuristics for
Flowshop Scheduling
Problems Minimizing
Mean Tardiness
flowshop NEH-
EDD
mean
tardiness
Radhakrishnan
& Ventura
2000 Simulated annealing
for parallel machine
scheduling
with earliness tardiness
penalties and
sequence-dependent
set-up times.
flowshop Simulated
annealing
completion
time
Varadharajan
& Rajendran
2005 A Multi Objective
Simulated Annealing
Algorithm for
Scheduling
in Flowshops to
Minimize the
Makespan and Total
Flowtime of Jobs
flowshop Simulated
Annealing
makespan
dan total
flowtime
Low 2005 Simulated Annealing
Heuristic for Flowshop
Scheduling
Problems with
Unrelated Parallel
Machines
flowshop Simulated
Annealing
total flow
time
Loukil, et al 2007 A Multi Objective
Production Scheduling
Case Study Solved by
Simulated Annealing
flexible
(or hybrid)
job shop
Simulated
Annealing
makespan,
mean
completion
time,
maximal
tardiness,
mean
tardiness
Naderi, et al 2009 An Improved Simulated
Annealing for Hybrid
Flowshops
with Sequence
Dependent Setup and
Transportation Times
to
Minimize Total
Completion Time and
Total Tardiness
hybrid
flowshop
Simulated
Annealing
total
completion
time dan
total
tardiness
23
Tabel 2.1 Lanjutan Literatur Review Jurnal Pendukung
Lin , et al 2009 Using simulated
annealing to schedule
a flowshop
manufacturing cell
with sequence-
dependent family setup
times
flowshop Simulated
Annealing
Makespan
Naderi, et al 2010 Electromagnetism-like
mechanism and
simulated annealing
algorithms
for flowshop
scheduling problems
minimizing the total
weighted tardiness and
makespan
flowshop simulated
annealing
total
weighted
tardiness &
makespan
Mousavi, et al 2013 A simulated
annealing/local search
to
minimize the makespan
and total tardiness on a
hybrid flowshop
Hybrid
Flowshop
simulated
annealing
Makespan
dan Total
Tardiness
Dai, et al 2013 Energy-Efficient
Scheduling for Flexible
Flowshop
using an Improved
Genetic-Simulated
Annealing Algorithm.
Flexible
Flowshop
simulated
annealing
Efisiensi
Energi