Anda di halaman 1dari 8

Bab ini memperkenalkan masalah perencanaan personil dan model multi-periode yang

sesuai. Model ini mencakup kendala keseimbangan (stok) yang tipikal dalam model multi-
periode yang melibatkan variabel keputusan keadaan dan kontrol. Notasi jeda waktu
diperkenalkan untuk referensi mundur periode waktu. Awalnya, formulasi model yang
disederhanakan diselesaikan dan ditunjukkan bahwa pembulatan solusi pemrograman linier
fraksional dapat menjadi alternatif yang baik untuk menggunakan pemecah pemrograman
integer. Akhirnya, model lengkap lengkap dengan variabel acak dipertimbangkan, dan
pendekatan berdasarkan penggunaan kendala probabilistik disajikan.
Masalah jenis ini dapat ditemukan di, misalnya, [Wa75], [Ep87], dan [Ch83]. Program Linier,
Program Integer, Variabel Kontrol-Negara, Pembulatan Heuristik,
Kendala Probabilistik, Contoh Kerja.

8.1 Perekrutan dan pelatihan pramugari


Pertimbangkan masalah perencanaan personel berikut ini. Manajer personalia perusahaan
penerbangan harus memutuskan berapa banyak pramugari baru yang akan dipekerjakan
dan dilatih selama enam bulan ke depan. Kontrak kerja dimulai pada awal setiap bulan.
Karena peraturan, setiap pramugari hanya dapat bekerja hingga 150 jam sebulan. Trainee
membutuhkan dua bulan pelatihan sebelum mereka dapat diterbangkan sebagai pramugari
reguler. Selama waktu ini seorang peserta pelatihan tersedia secara efektif selama 25 jam
sebulan. Karena kapasitas pelatihan terbatas, jumlah maksimum peserta baru setiap bulan
adalah 5.
Sepanjang tahun, pramugari berhenti dari pekerjaan mereka karena berbagai alasan. Ketika
mereka melakukannya, mereka perlu memberi tahu manajer personalia satu bulan di muka.
Ketidakpastian dalam jumlah pramugari meninggalkan perusahaan di bulan-bulan
mendatang, membuat sulit bagi manajer personalia untuk membuat rencana jangka
panjang. Pada bagian pertama bab ini, diasumsikan bahwa semua pemberitahuan cuti
selama enam bulan ke depan diketahui. Asumsi ini santai di akhir bab ini.

Masalah maskapai dipelajari dengan menggunakan data berikut. Pada awal Desember, 60
pramugari tersedia untuk bekerja dan tidak ada pengunduran diri yang diterima. Dua
peserta pelatihan dipekerjakan pada awal November dan tidak ada pada Desember. Biaya
pramugari adalah $ 5.100 sebulan sedangkan biaya trainee adalah $ 3.600 sebulan.
Persyaratan pramugari dalam hal jam terbang diberikan pada Tabel 8.1 untuk bulan Januari
hingga Juni. Tabel ini juga mencakup (diketahui) jumlah pramugari yang akan menyerahkan
pengunduran diri mereka, mulai berlaku satu bulan sesudahnya.

Bulan Jam yang dibutuhkan Pengunduran diri


Januari 8 2
Februari 9
Maret 9,8 2
April 9,9
Mei 10,05 1
Juni 10,5

Tabel 8.1: Persyaratan dan pengunduran diri pramugari


8.2 Perumusan model
Keputusan utama yang harus diambil oleh manajer personalia adalah jumlah peserta yang
akan dipekerjakan pada awal setiap bulan. Sebelum keputusan ini, baik jumlah peserta
pelatihan dan jumlah pramugari tidak diketahui, dan ini mewakili dua jenis variabel
keputusan. Pengamatan penting adalah bahwa begitu keputusan mengenai peserta
pelatihan telah dibuat maka jumlah pramugari yang tersedia ditentukan. Hal ini
menyebabkan perbedaan antara variabel kontrol dan variabel status. Variabel kontrol
adalah variabel keputusan independen sedangkan variabel keadaan langsung bergantung
pada variabel kontrol. Dalam model matematika keduanya dianggap sebagai variabel
keputusan.
Perbedaan antara variabel kontrol dan status sering kali mengarah pada penggunaan yang
disebut kendala keseimbangan. Ini sering sama dengan mendefinisikan variabel keadaan
dalam hal variabel kontrol. Kendala tersebut biasanya terjadi dalam model multi-periode di
mana variabel keadaan seperti stok dari beberapa jenis dicatat dari waktu ke waktu.
Pernyataan model verbal masalah didasarkan pada gagasan batasan keseimbangan untuk
jumlah petugas ditambah kendala yang mencerminkan persyaratan personil dalam hal jam
penerbangan.

Minimalkan: total biaya personil, Tunduk pada:


􏰃 untuk semua bulan: jumlah pramugari sama dengan jumlah pramugari bulan sebelumnya
dikurangi jumlah pramugari yang mengundurkan diri bulan sebelumnya ditambah jumlah
trainee yang telah menjadi pramugari,
􏰃 untuk semua bulan: jumlah jam terbang petugas ditambah jumlah jam peserta pelatihan
harus lebih besar dari atau sama dengan jam pramugari wajib bulanan.

Pernyataan model verbal dari masalah perencanaan personel dapat ditentukan sebagai
model matematika menggunakan notasi berikut.
Indeks:
t periode waktu (bulan) dalam interval perencanaan
Parameter:
c biaya bulanan satu pramugari d biaya bulanan satu peserta pelatihan
u jumlah jam bulanan satu pramugari
v jumlah bulanan jam satu peserta pelatihan
m jumlah maksimum trainee baru setiap bulan rt diperlukan jam pramugari di t
Jumlah pramugari mengundurkan diri di t
Variabel:
Xt :Jumlah pramugari tersedia dalam jumlah trainee yang dipekerjakan di t
Yt. :Adalah penting untuk secara eksplisit menentukan waktu yang tepat yang Anda
asumsikan untuk mengambil keputusan. Itu membuat perbedaan pada kendala model Anda
apakah sesuatu terjadi di awal atau di akhir periode. Aturan yang baik adalah konsisten
untuk semua parameter dan variabel dalam model Anda. Sepanjang bagian ini diasumsikan
bahwa semua peristiwa terjadi pada awal setiap periode bulanan.
Kendala keseimbangan pramugari adalah identitas pembukuan langsung yang
menggambarkan bagaimana jumlah pramugari bervariasi dari waktu ke waktu

x t=x t −1−l t−1 + y t−1 ∀ t


menggunakan persamaan keseimbangan, harus diperhatikan untuk memastikan bahwa itu
hanya digunakan untuk periode waktu dalam interval perencanaan. Dalam bab ini, interval
perencanaan ditentukan oleh bulan Januari hingga Juni.
Dalam Aimms ada jenis himpunan khusus yang disebut cakrawala, yang dirancang khusus
untuk periode waktu. Di setiap cakrawala, ada masa lalu, interval perencanaan, dan
seterusnya. Variabel apa pun yang merujuk pada periode waktu di luar interval perencanaan
(mis. Melewati dan melampaui) secara otomatis diasumsikan sebagai data (tetap). Fitur ini
menyederhanakan representasi kendala keseimbangan dalam Aimms.
Batasan persyaratan personel tidak dinyatakan dalam hal orang tetapi dalam hal jam. Ini
membutuhkan terjemahan dari orang ke jam.

u x t +v ( y ¿ ¿t + y t −1 )≥ r t ∀ t ¿

Perhatikan bahwa peserta pelatihan yang memulai pelatihan mereka pada awal bulan ini
atau bulan sebelumnya hanya berkontribusi v <u jam terhadap total ketersediaan jam
pramugari.
Fungsi tujuannya adalah untuk meminimalkan total biaya personil.

Minimumkan

∑ cx t +d ( y t + y t−1)
t

Pernyataan matematis berikut meringkas model

Min: ∑ cx t +d ( y t + y t−1)
t
Kendala :
x t=x t −1−l t−1 + y t−2 ∀ t
u x t +v ( y ¿ ¿t + y t −1 )≥ r t ∀ t ¿
x t ≥ 0 ,integer . ∀ t
0 ≤ y t ≤m , integer . ∀ t

8.3 Solusi dari pemecah konvensional

Model di atas adalah model pemrograman integer karena semua variabel keputusan harus
mengasumsikan nilai integer. Anda dapat melonggarkan persyaratan ini untuk variabel xt
(jumlah pramugari) karena dalam batasan keseimbangan mendefinisikan xt dalam hal yt
(jumlah peserta pelatihan baru), nilai xt ini secara otomatis bilangan bulat ketika yt bilangan
bulat.
Model, ketika dipakai dengan set data kecil, dapat dengan mudah diselesaikan dengan
pemecah pemrograman integer. Solusi yang ditemukan oleh pemecah seperti itu
ditampilkan pada Tabel 8.2 dan nilai fungsi objektif optimalnya yang sesuai adalah $
2.077.500.

Bulan Jam yang dibutuhkan Pengunduran diri


November 2
Desember 60
Januari 62 5
Februari 60 2
Maret 65 2
April 65 4
Mei 67
Juni 70
Tabel 8.2: Solusi integer optimal

Karena ukuran set data yang mendasarinya meningkat, mungkin menjadi tidak praktis untuk
menemukan solusi integer yang optimal menggunakan pemecah program integer
konvensional. Dalam kondisi ini, tidak lazim bahwa solver konvensional menemukan satu
atau lebih solusi suboptimal dalam jumlah waktu yang masuk akal, tetapi kemudian
menghabiskan banyak waktu untuk mencoba menemukan solusi yang lebih baik daripada
solusi terbaik saat ini. Dalam aplikasi praktis, solusi terbaik terakhir ini mungkin cukup baik.
Salah satu cara untuk mendapatkan solusi suboptimal tersebut adalah dengan menentukan
toleransi optimalitas.
Setiap kali Anda memecahkan model pemrograman integer skala besar, Anda disarankan
untuk menggunakan pengaturan toleransi solusi dalam upaya untuk menghindari waktu
persaingan yang lama. Dalam Aimms Anda dapat menentukan toleransi optimalitas relatif
dan toleransi optimalitas absolut. Toleransi optimalitas relatif
MIP_relative_optimality_tolerance adalah sebagian kecil yang menunjukkan kepada
pemecah bahwa ia harus berhenti segera setelah solusi integer dalam 100 kali
MIP_relative_optimality_tolerance persen global optimum telah ditemukan. Mirip dengan
toleransi optimalitas relatif, toleransi optisitas absolut MIP_absolute_optimality_tolerance
adalah angka yang menunjukkan bahwa pemecah harus berhenti segera setelah solusi
integer berada dalam toleransi MIP_absolute_optimality_tolerance dari global optimum.
Fitur lain yang tersedia di Aimms yang dapat digunakan untuk mengurangi waktu
penyelesaian untuk program integer besar adalah pengaturan prioritas. Dengan
menetapkan nilai prioritas ke variabel integer, Anda secara langsung memengaruhi urutan
variabel yang diperbaiki selama pencarian oleh solver. Misalnya, dengan menetapkan nilai
prioritas positif rendah untuk variabel yf (jumlah peserta baru yang akan dipekerjakan), dan
membiarkan nilai-nilai ini meningkat seiring berjalannya waktu, metode cabang dan solusi
terikat akan memutuskan jumlah peserta yang akan dipekerjakan di urutan yang sama
seperti di set bulan. Pengalaman telah menunjukkan bahwa menetapkan prioritas bilangan
bulat untuk meniru urutan keputusan yang alami, kemungkinan akan mengurangi waktu
komputasi. Ini terutama benar ketika ukuran kumpulan data tumbuh.

8.4 Solusi dari pembulatan heuristik


Dengan bersantai (mis. Mengabaikan) persyaratan bilangan bulat pada variabel xt dan yt,
model perencanaan personalia menjadi program linier. Secara umum, program lin-ear lebih
mudah untuk diselesaikan daripada program integer dan ini terutama berlaku untuk
instance data besar. Namun, solusi optimal belum tentu bernilai integer. Pertanyaan
kemudian muncul apakah pembulatan sederhana dari solusi pemrograman lin-ear
mengarah ke solusi integer suboptimal yang berkualitas baik. Pertanyaan ini diselidiki
menggunakan solusi pemrograman linier optimal yang disajikan pada Tabel 8.3.
Bulan Jam yang dibutuhkan Pengunduran diri
November 2
Desember 60
Januari 62.00 4,76
Februari 60.00 2.24
Maret 64.76 1.20
April 65.00 4.80
Mei 66.20
Juni 70.00
Tabel 8.3: Solusi LP optimal

Membulatkan nilai xt (pramugari) dan yt (peserta pelatihan) dalam solusi santai melanggar
batasan keseimbangan. Membulatkan variabel yt ke atas dan menghitung ulang variabel xt
menghasilkan solusi yang layak untuk kumpulan data ini.
Varian yang lebih ketat dari heuristik paragraf sebelumnya adalah membulatkan ke bawah
selama ada cadangan setidaknya satu peserta pelatihan, dan untuk mengumpulkan ke atas
ketika tidak ada cadangan seperti itu. Solusi yang diperoleh dari kedua varian pembulatan
terdapat pada Tabel 8.4. Perhatikan bahwa tidak satu pun dari dua solusi bundar yang
sebagus solusi integer optimal. Algoritma kerangka untuk varian kedua dapat ditulis sebagai

FOR (t) DO
IF reserve < 1

THEN y(t) := ceil[y(t)]

ELSE y(t) := floor[y(t)] ENDIF

Update reserve ENDFOR

Algoritma kerangka ini dapat membentuk dasar untuk implementasi dalam Aimms. Tentu
saja, heuristik di atas hanya satu dari banyak prosedur pembulatan yang mungkin. Heuristik
yang lebih kuat harus mendaftar tidak hanya cadangan yang dibuat dengan pembulatan, tetapi
juga jumlah jam pelatihan tambahan yang diperlukan. Namun, penyempurnaan ini lebih sulit
daripada yang mungkin Anda pikirkan pada awalnya!

Bulan Jam yang dibutuhkan. yt Pengunduran diri


November 2
Desember 60
Januari 62.00 4,76
Februari 60.00 2.24
Maret 64.76 1.20
April 65.00 4.80
Mei 66.20
Juni 70.00

Tabel 8.4: Solusi bulat


8.5 Memperkenalkan kendala probabilistik

Sampai sekarang, diasumsikan bahwa jumlah pengunduran diri dikenal di muka untuk setiap
bulan dalam interval perencanaan. Tanpa asumsi ini, jumlah pengunduran diri setiap bulan
bukanlah parameter melainkan variabel acak dengan distribusinya sendiri. Untuk
mendapatkan wawasan tentang distribusi, perlu menganalisis data pengunduran diri secara
statistik. Analisis harus didasarkan pada catatan historis dan informasi tentang volatilitas
personel di pasar saat ini.

Asumsikan bahwa analisis data statistik seperti itu menyimpulkan bahwa data pengunduran
diri terdistribusi secara normal dengan rata-rata dan varian seperti yang disajikan pada Tabel
8.5. Tabel ini juga berisi tingkat pengunduran diri kritis yang digunakan dalam analisis
probabilistik berikut.

Bulan Jam yang dibutuhkan. yt Pengunduran diri


November 2
Desember 60
Januari 62.00 4,76
Februari 60.00 2.24
Maret 64.76 1.20
April 65.00 4.80
Mei 66.20
Juni 70.00

Tabel 8.5: Data pengunduran diri yang terdistribusi secara normal dan nilai kritis

Sehubungan dengan ketidakpastian dalam data pengunduran diri, manajer personalia perlu
merekrut cukup banyak peserta tambahan untuk memastikan bahwa ada cukup banyak
penumpang penerbangan di sebagian besar keadaan. Tidak ekonomis untuk membahas
skenario ekstrem yang tidak mungkin terjadi di mana jumlah pengunduran diri jauh
melampaui rata-rata. Menghilangkan skenario ekstrem dapat dicapai melalui penggunaan
kendala probabilistik.

Pertimbangkan versi yang sedikit dimodifikasi dari kendala keseimbangan pramugari, di


mana ungkapan di sebelah kiri dapat diartikan sebagai jumlah persis pramugari yang dapat
pergi tanpa menyebabkan kekurangan atau surplus.

x t−1− y t −2−x t=l t −1 ∀ t

Dengan mengincar surplus, dimungkinkan untuk menghindari kekurangan dalam sebagian


besar skenario pengunduran diri. Batasan keseimbangan pramugari dapat diubah menjadi
salah satu dari dua kendala probabilitas setara berikut:

Pr ⁡¿ ¿

Pr ⁡¿ ¿
Nilai α diasumsikan kecil, yang menunjukkan seringnya ada surplus (bentuk pertama) atau
jarang ada kekurangan (bentuk kedua).

Seperti yang dijelaskan dalam Bagian 6.6, kedua kendala probabilistik memiliki persamaan
de-terministik yang sama, yaitu:

x t−1− y t −2−x t ≥l t −1 ∀ t

di mana l´t bisa menjadi salah satu nilai kritis dari Tabel 8.5 tergantung pada

tingkat α dipilih oleh manajemen.

Model baru dengan persamaan deterministik dari kendala probabilistik sekarang dapat
diringkas sebagai berikut.

Minimize :

∑ cx t +d ( y t + y t−1)
t

Kendala :

x t ≤ x t −1 −l t−1 + y t−2 ∀ t

ux t + v ( y t + y t−1 ) ≥r t ∀ t

x t , y t ≥0 , integer ∀ t

Model baru ini sangat menyerupai model dalam Bagian 8.2. Perhatikan bahwa nilai
parameter ̄lt cenderung fraksional dalam versi di atas. Ini menyiratkan bahwa persyaratan
bilangan bulat pada xt dan yt diperlukan, dan bahwa kendala keseimbangan di atas untuk
pramugari cenderung tidak ketat dalam solusi optimal.

8.6 Ringkasan

Dalam bab ini, model perencanaan multi-periode dikembangkan untuk menentukan


persyaratan perekrutan dan pelatihan untuk perusahaan penerbangan. Karena jumlah
pramugari baru harus bilangan bulat, model yang dihasilkan adalah model pemrograman
bilangan bulat. Untuk kumpulan data besar, satu opsi untuk mendapatkan solusi integer
adalah membulatkan solusi LP. Jika Anda memahami modelnya, adalah mungkin untuk
mengembangkan prosedur pembulatan yang masuk akal. Prosedur seperti itu mungkin jauh
lebih efisien daripada menggunakan pemecah integer pemrograman. Menjelang akhir bab ini,
ketidakpastian dalam jumlah pramugari mengundurkan diri selama interval perencanaan
dimodelkan. Dengan memodifikasi kendala probabilitas yang dihasilkan untuk kendala
deterministik, model optimasi integer biasa ditemukan.

Anda mungkin juga menyukai