• Tidak ada hasil yang ditemukan

Penggunaan Integer Linear Programming de

N/A
N/A
Protected

Academic year: 2018

Membagikan "Penggunaan Integer Linear Programming de"

Copied!
5
0
0

Teks penuh

(1)

AbstrakPermasalahan penjadwalan pegawai paruh waktu sangatlah menarik untuk diselesaikan karena terdapat begitu banyak batasan, terutama batasan dari segi pegawai yang tersedia. Batasan tersebut antara lain perbedaan kemampuan yang dimiliki oleh setiap pegawai, ketersediaan setiap pegawai untuk bekerja pada waktu tertentu, dan target jam kerja yang dimiliki oleh setiap pegawai dalam suatu periode penjadwalan. Tujuan utama dari permasalahan penjadwalan pegawai paruh waktu adalah untuk memenuhi tuntutan jam kerja (permintaan pasar) dengan berbagai batasan yang ada. Selain itu, penjadwalan pegawai paruh waktu harus dapat menghasilkan penjadwalan yang efektif agar dapat meminimalkan kelebihan pegawai (overstaff) dan juga meminimalkan total deviasi antara jam kerja yang dijadwalkan dan target jam kerja setiap pegawai. Permasalahan penjadwalan pegawai paruh waktu sangat sulit untuk diselesaikan karena membutuhkan integer linear programming (ILP) yang sangat besar. Oleh karena itu, permasalahan ini akan dibagi menjadi 2 sub masalah yaitu: menentukan shift yang baik dan memberikan shift yang telah didapat kepada pegawai yang tersedia dengan menggunakan ILP untuk menyelesaikan kedua sub masalah tersebut.

Kata Kunci— heuristik, integer linear programming, optimasi, penjadwalan.

I. PENDAHULUAN

ERMASALAHAN penjadwalan adalah bagian yang sangat penting dalam sebuah industri, sebagai contoh pada perusahaan layanan jasa, seperti bank, restoran, call center, dan lain sebagainya. Pada perusahaan layanan jasa, biasanya mempekerjakan pegawai paruh waktu, karena perusahaan memiliki tuntutan jam kerja yang tinggi sementara para pegawai memiliki batasan berupa kemampuan serta jam kerja mereka. Para pegawai paruh waktu tersebut, memiliki kecenderungan untuk bekerja pada waktu tertentu, memiliki kemampuan untuk melakukan tugas tertentu dan memilki target jam kerja yang berbeda pula dalam suatu periode penjadwalan. Sementara itu, perusahaan penyedia layanan jasa, memiliki tuntutan kerja yang harus dipenuhi selama periode kerja. Tuntutan jam kerja umumnya fluktuatif terhadap waktu sesuai dengan permintaan konsumen.

Terdapat tiga langkah dalam melakukan permasalahan penjadwalan seperti ini. Langkah pertama, untuk memprediksi tuntutan kerja untuk setiap jam kerja selama periode penjadwalan. Kedua, mewujudkan prediksi tuntutan kerja tersebut pada kebutuhan pegawai untuk setiap jam kerja supaya dapat memenuhi permintaan konsumen. Ketiga, untuk

mendapatkan ketersediaan setiap pegawai dengan menentukan hari kerja dan shift pada setiap pegawai.

Tujuan utama dari proses penjadwalan ini untuk menghasilkan penjadwalan pegawai yang dapat memenuhi tuntutan kerja dengan meminimalkan total jam kerja para pegawai serta memenuhi target jam kerja pegawai dalam suatu periode penjadwalan.

Permasalahan penjadwalan seperti ini sangat sulit untuk diselesaikan karena membutuhkan Integer Linear Programming (ILP) yang sangat besar sehingga penyelesaian permasalahan ini membutuhkan waktu komputasi yang sangat lama. Mehran Hojati dan Ashok S Patil [1] mengajukan sebuah solusi untuk menyelesaikan permasalahan penjadwalan ini yaitu dengan membagi permasalahan ini menjadi 2 sub masalah, yaitu: menentukan shift yang baik dan memberikan shift yang didapat pada pegawai yang tersedia dengan menggunakan ILP untuk menyelesaikan setiap sub masalah tersebut. ILP tahap pertama untuk menghasilkan shift yang baik. Shift yang baik adalah shift yang meminimalkan total jam kerja yang akan dijadwalkan serta memaksimalkan jumlah pegawai yang bisa melaksanakannya. ILP tahap pertama ini bertujuan untuk mereduksi kemungkinan shift yang ada. ILP tahap kedua digunakan untuk memberikan shift yang telah didapat sebelumnya kepada para pegawai yang tersedia .

Permasalahan penjadwalan yang diangkat pada artikel ini adalah permasalahan penjadwalan pada restoran cepat saji. Terdapat beberapa batasan tambahan yaitu pekerja harus bekerja maksimal pada 5 hari kerja dalam seminggu dan pekerja minimal bekerja minimal 3 jam dan maksimal 8 jam pada hari kerja.

Dalam studi ini akan mengimplementasikan metode yang diajukan oleh Mehran Hojati dan Ashok S Pathil [1] dengan menggunakan data ujicoba untuk dapat membandingkan hasil yang didapat serta beberapa data ujicoba acak untuk menguji kebenaran model yang telah dibangun.

II. METODOLOGIPENELITIAN A. Notasi

 h

Indeks jam kerja pada setiap hari kerja (h1,...,18).

 d

Indeks hari kerja dalam 1 minggu. (d 1,...,7).  e

Penggunaan

Integer Linear Programming

dengan Metode Heuristik untuk Optimasi

Penjadwalan Paruh Waktu

Agri Kridanto, Ahmad Saikhu, dan Rully Soelaiman

Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS)

Jl. Arief Rahman Hakim, Surabaya 60111 Indonesia

e-mail: [email protected]

(2)

Indeks pegawai yang tersedia. (e1,...,40).  s

Indeks dari shift yang memungkinkan setiap harinya (s1,...,81), dimana setiap indeks shift yang memiliki durasi minimal 3 jam dan maksimal 8 jam, contoh: s=1 (1,2,3), s=2 (1,2,3,4)

 t

Indeks dari tugas yang ada serta kemampuan yang dimiliki oleh pegawai, t=1(Grill/Gr), 2(Drive Thru/DT), 3(French Fries/FF), 4(Bin Call/BC), 5(Counter/Co) .

 ystd

Jumlah pegawai yang dijadwalkan pada shift s, untuk tugas t pada hari d.

a

hstd

Bernilai 1 jika jam h terdapat dalam shift s. Jika tidak maka bernilai 0.

 rhtd

Jumlah pegawai yang dibutuhkan pada jam h untuk tugas t pada hari d .

 hrs s

Durasi dalam jam pada shift s.  r eq

d

h

Jumlah jam kerja yang dibutuhkan pada hari d.  r eq

td

h

Jumlah jam kerja yang dibutuhkan untuk tugas t pada hari d.

 Trgt e

Target jam kerja pegawai e dalam 1 minggu.  Trgt w

Target jumlah shift yang dijadwalkan dalam 1 minggu.  Trgt d

Target jumlah shift yang dijadwalkan dalam hari d. 

Trgt

td

Target jumlah shift untuk tugas t yang dijadwalkan pada hari d.

 Estd

Jumlah pegawai yang tersedia dan memenuhi syarat untuk shift s, tugas t, hari d.

 u td

Jumlah shift yang dibawah target Trgttd.

 o td

Jumlah shift yang diatas target Trgttd.

 r ed

S

Jumlah dari shift yang tersisa pada hari d, dimana pegawai e tersedia dan memenuhi syarat untuk shift-shift tersebut.  r

e

S

Jumlah dari shift-shift yang tersisa dalam 1 minggu, dimana pegawai e tersedia dan memenuhi syarat untuk shift-shift tersebut. d

r ed r

e S

S  r

ed

E

Bernilai 1 jika pegawai e yang tersedia dan memenuhi syarat setidaknya untuk 1 shift pada hari d. Jika tidak maka bernilai 0

 r d

E

Jumlah dari pegawai yang tersisa dimana pegawai tersebut tersedia dan memenuhi syarat setidaknya untuk 1 shift pada hari d. epegawai tersisa

r ed r

d E

E  r

E

Jumlah total dari hari kerja semua pegawai yang tersisa dengan maksimal 5 hari kerja untuk tiap pegawai.

 

 epegawai tersisamin( d ,5) r ed r

E E

 r std

E

Jumlah dari pegawai yang tersisa dimana para pegawai tersebut tersedia dan memenuhi syarat untuk shift s, tugas t, pada hari d

 r ld

E

Jumlah minimum dari pegawai yang tersisa dimana para pegawai tersebut tersedia dan memenuhi syarat untuk shift yang berdurasi L jam pada hari d.

) :

min(E hrs L Eldr  stdr s   r

d

S

Jumlah dari shift yang tersisa pada hari d  r

u

Konstanta heuristik yang menyatakan total jam kerja yang masih kurang dari target jam kerja mingguan selama pencarian solusi berlangsung.

 r o

Konstanta heuristik yang menyatakan total jam kerja yang melebihi selama pencarian solusi berlangsung.

 r u

Total jam kerja yang masih kurang dari target jam kerja mingguan pegawai (Trgte).

 r o

Total jam kerja yang melebihi target jam kerja mingguan pegawai (Trgte).

 r u

d

Sisa hari kerja pegawai terhadap batas maksimal hari kerja 

x

Ld

Bernilai 1 jika shift dengan durasi L jam tersedia dan cocok untuk diberikan kepada pegawai e . Bernilai 0 jika shift dengan durasi L jam tersebut tidak tersedia dan cocok untuk diberikan kepada pegawai e.

B. Proses Menentukan Shift yang Baik Menggunakan ILP

(3)

melaksanakan shift tersebut dan shift yang akan dipilih adalah shift yang memiliki jumlah maksimal pegawai yang bisa melaksanakan shift tersebut.

Terdapat 3 langkah dalam proses menentukan shift yang baik, yaitu:

1. Tentukan target shift untuk setiap tugas t pada hari d. Asumsikan, pegawai bekerja rata-rata dalam 4 hari kerja seminggu. Sehingga, untuk 40 pekerja akan terdapat 160 target shift untuk periode penjadwalan 1 minggu.

(1)

Target shift untuk setiap hari d didapatkan dengan menghitung jumlah jam kerja yang dibutuhkan pada hari d dibagi total jam kerja dalam 1 minggu dikali dengan target shift per minggu. (2) Target shift untuk tugas t pada hari d didapatkan dengan menghitung jumlah jam kerja yang dibutuhkan untuk tugas t pada hari d dibagi target shift pada hari tersebut. (3)

2. Tentukan jumlah pegawai yang tersedia dan memenuhi syarat untuk melaksanakan setiap shift s untuk tugas t pada hari d. 3. Formulasikan ILP1 untuk setiap tugas t pada hari d. Meminimalkan :

Koefisien yang digunakan dalam fungsi objektif pada model ILP1 ,

=1 dan

=0.1. Fungsi objektif ILP1 pada (4), dapat dibagi menjadi 3 bagian, yaitu:

untuk meminimalkan total jam kerja dari pegawai yang akan dijadwalkan.

untuk memperbolehkan adanya shift yang melebihi target shift untuk tugas t pada hari d (

Trgt

td) tetapi tetap menjaga untuk meminimalkan adanya shift yang melebihi

Trgt

td.

untuk memaksimalkan jumlah pegawai yang tersedia dan memenuhi syarat untuk shift yang terpilih.

Batasan ILP1 dalam (5) digunakan untuk memastikan bahwa setiap shift yang terpilih nanti akan memiliki jumlah pegawai minimal sebanyak pegawai yang dibutuhkan pada jam kerja tersebut. Batasan ILP1 dalam (6) digunakan agar jumlah shift yang terpilih ditambah shift yang melebihi target, dikurangi shift yang dibawah target sama dengan target shift untuk tugas t pada hari d Trgttd . Batasan ILP1 dalam (7)

digunakan untuk memastikan bahwa nilai dari variabel keputusan

y

std adalah bilangan non negatif integer. Batasan ILP1 dalam (8) digunakan untuk memastikan shift yang melebihi target dan shift yang kurang dari target adalah bilangan non negatif.

Pemodelan ILP1 yang telah dijelaskan diatas diharapkan mencapai hasil yang optimal, sehingga kita bisa mendapat nilai dari setiap variabel keputusan

y

std. Shift yang akan digunakan adalah shift yang memiliki nilai

y

std yang positif. Jika nilai

y

std

2

maka perlu dilakukan replikasi sebanyak nilai

y

std sehingga akan terdapat shift sebanyak nilai

y

std

untuk shift s, tugas t, pada hari d yang bisa dijadwalkan kepada para pegawai dalam tahap selanjutnya. Hasil akhir dari seluruh tahapan ini adalah daftar shift yang baik yang akan digunakan pada tahapan selanjutnya.

C. Proses Pemberian Shift kepada Pegawai Menggunakan ILP dengan Metode Heuristik

Pada proses pemberian shift kepada pegawai akan digunakan ILP2 dengan metode heuristik untuk memberikan shift yang telah didapat kepada pegawai yang tersedia. Berikut ini adalah langkah-langkah untuk proses pemberian shift kepada para pegawai. Sebagai inisialisai,

ru

0

dan

0

r

o .

1. Cari pegawai dengan ketersediaan terendah pada daftar shift (selanjutnya disebut ei).

2. Untuk setiap ei

i. Untuk setiap shift yang tersisa dalam daftar shift, periksa apakah ei tersedia untuk shift tersebut, jika ya,

E

std = jumlah pegawai yang bisa melaksanakan shift tersebut. Jika tidak,

E

std

0

. ii. Untuk setiap shift dengan durasi L jam pada hari d, pegawai yang tersedia dan memenuhi syarat setidaknya untuk 1 shift pada hari tersebut (

E

dr). iv. Hitung jumlah total dari ketersediaan pegawai dalam

(4)

v. Hitung jumlah shift pada setiap hari d (

S

dr). shift yang tepilih dari daftar shift.

viii. Perbarui konstanta heuristik,

u dijadwalakan dan tidak ada pegawai yang tersisa dalam daftar pegawai.

Koefisien yang digunakan dalam fungsi objektif pada model ILP2 ,



0

.

1

dan

1

2

3=3. Fungsi objektif ILP2 dalam persamaan 9 dapat dibagi menjadi 4 bagian, yaitu :

i. oe

E akan semakin mengecil ketika nilai

E

rmendekati nilai d 

r d

S . Sehingga koefisien dari

d

euakan semakin meningkat. Karena fungsi tujuan meminimalkan nilai variabel keputusan

u e

d

, maka diharapkan nilai

d

eu akan semakin mengecil sehingga solusi diharapkan akan semakin memenuhi target kerja mingguan pegawai (Trgte).

iii.

Hal ini diharapkan dapat menjadikan pemilihan variabel

x

Ld menjadi lebih baik.

iv.  Hal ini diharapkan dapat menjadikan pemilihan variabel

x

Ld menjadi lebih baik.

Batasan ILP2 dalam (13) mengharuskan solusi yang dihasilkan harus memenuhi target maksimal 5 hari kerja. Batasan ILP2 dalam (14) mengharuskan bahwa solusi yang dihasilkan memenuhi target jam kerja pegawai. Batasan ILP2 dalam (15) mengharuskan hanya ada satu shift yang terpilih mengharuskan nilai variabel keputusan

x

Ld adalah variabel biner. Batasan ILP2 pada (15) mengharuskan nilai dari variabel keputusan oe

(5)

III. HASILUJICOBA

Dalam uji coba ini model dibangun pada lingkungan pemodelan MATLAB dengan TOMLAB Optimization untuk menyelesaikan ILP. Data uji coba berasal dari paper [1] . Data uji coba terdiri dari data uji coba utama dan data uji coba acak. Dalam bagian ini akan diberikan perbandingan antara hasil penjadwalan dari model yang telah dibangun dan hasil dari penulis. Sebagai informasi tambahan, Mehran Hojati dan Ashok S Pathil (2008) menggunakan Excel VBA dengan Standard Solver untuk menyelesaikan ILP.

Dalam data uji coba utama terdapat 40 pegawai yang tersedia dengan jam kerja tertentu, 5 jenis tugas dan kemampuan pegawai serta tuntutan jam kerja yang ada. Proses menetukan shift yang baik membutuhkan 35 ILP1 (7 hari kerja, 5 tugas). Proses memberikan shift kepada menggunakan 40 ILP2 yang digunakan dalam 40 kali iterasi karena terdapat 40 pegawai yang tersedia. Perbandingan untuk data uji coba utama dapat dilihat pada Tabel 1.

Uji coba juga dilakukan untuk 10 data uji coba acak [1]. Dari data tersebut didapatkan hasil yaitu: rata-rata kelebihan jam kerja hanya 0,3 jam untuk setiap data uji coba, rata-rata total deviasi antara target jam kerja dan jam kerja yang dijadwalkan adalah 6,4 jam untuk setiap data uji coba atau hanya 0,16 jam untuk setiap pegawai, dan rata-rata waktu komputasi yang dibutuhkan untuk menyelesaikan permasalahan penjadwalan yaitu 3,5 detik untuk setiap data uji coba.

IV. KESIMPULAN/RINGKASAN

Berdasarkan hasil uji coba, keseluruhan model yang telah dibangun dapat menyelesaikan permasalahan penjadwalan paruh waktu dengan waktu komputasi yang cukup singkat. Model ILP1 dapat menghasilkan shift yang baik, dimana shift tersebut dapat memaksimalkan jumlah pegawai yang melaksanakannya sehingga shift tersebut dapat diberikan kepada pegawai yang tersedia. Model ILP2 dengan menggunakan metode heuristik dapat memberikan shift yang telah didapat kepada pegawai yang tersedia dengan meminimalkan total deviasi antara jam kerja yang dijadwalkan dan target jam kerja mingguan pegawai. Keseleruhan proses penjadwalan pegawai paruh waktu dapat memberikan hasil yang cukup baik, dengan memenuhi tuntutan jam kerja yang ada, dan mampu meminimalkan adanya kelebihan jam kerja (overstaff).

UCAPANTERIMAKASIH

Penulis A.K. mengucapkan terima kasih kepada dosen pembimbing yang telah banyak memberikan bantuan dan bimbingan kepada penulis dalam melakukan penelitian ini.

Tabel 1 Perbandingan Hasil Uji Coba untuk Data Uji Coba Utama

Parameter perbandingan

Mehran Hojati dan Ashok S Pathil.

Hasil Uji Coba

Kelebihan jam kerja 4 jam 4 jam

Total deviasi 20 jam 12 jam

Waktu Komputasi 18 menit 5,44 detik

DAFTARPUSTAKA

Gambar

Tabel 1 Perbandingan Hasil Uji Coba untuk Data Uji Coba Utama

Referensi

Dokumen terkait

Setelah didapatkan hasil rata-rata perhitungan kelelahan kerja sebelum dan sesudah pemberian susu kedelai dilakukan uji analisa data dengan menggunakan uji paired

pencekaman benda kerja yang baru didapatkan rata-rata waktu setup 13 detik, waktu proses 24 detik, dan total konsumsi waktu 37 detik.1. Berasarkan uji coba tersebut diketahui

Berdasarkan hasil pengukuran dan perhitungan data kebisingan terhadap aktifitas kerja selama 24 jam, maka didapatkan data rata-rata tingkat kebisingan di PT PLN

Dalam penelitian ini, penulis menggunakan metode kajian pustaka (studi literatur), yaitu penelitian yang bertujuan untuk mengumpulkan data dan informasi dengan bantuan bermacam-

Dari hasil uji coba didapatkan bahwa Algoritma genetika telah berhasil diterapkan pada Data Mining untuk pencarian pola implikasi dalam suatu Basis

Dari perhitungan menggunakan interger linear programming dan dibandingkan dengan data lapangan, didapatkan penggunaan alat berat yang digunakan untuk menggali tanah

Berdasarkan hasil pengukuran dan perhitungan data kebisingan terhadap aktifitas kerja selama 24 jam, maka didapatkan data rata-rata tingkat kebisingan di PT PLN

Dalam penelitian ini, penulis menggunakan metode kajian pustaka (studi literatur), yaitu penelitian yang bertujuan untuk mengumpulkan data dan informasi dengan bantuan bermacam-