\documentclass{template-jurnal} %Bagian ini diedit oleh editor Jurnal Matematika UNAND

\hyphenation{di-tulis-kan di-terang-kan}
%Perhatikan aturan penulisan dan ukuran huruf yang digunakan
\begin{document}

\markboth{Muhammad Fadly Putra Medianto dkk} %Jika lebih dari dua penulis, tuliskan sebagai Nama Penulis Pertama dkk.
{Aplikasi \emph{Goal Progamming} untuk Optimalisasi Jadwal Kerja Studi Kasus pada \emph{Laundry Zone}}

%%%%%%%%%%%%%%%%%%%%% Publisher's Area please ignore %%%%%%%%%%%%%%%
%
\catchline{}{}{}{}{}
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\title{APLIKASI \emph{GOAL PROGRAMMING} \linebreak UNTUK OPTIMALISASI JADWAL KERJA \linebreak STUDI KASUS PADA \emph{LAUNDRY ZONE }}

\author{MUHAMMAD FADLY PUTRA MEDIANTO, SUSILA BAHRI\footnote{penulis korespondensi}, RIRI LESTARI}

\address{Jurusan Matematika,\\
Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Andalas,\\
Kampus UNAND Limau Manis Padang, Indonesia.\\
email : \email{m.fadlyputramedianto@gmail.com, susilabahri@sci.unand.ac.id, ririlestari@sci.unand.ac.id}}

\maketitle
\setcounter{page}{1} %bagian ini diedit oleh editor Jurnal Matematika UNAND

\begin{abstract}
\begin{center}
Diterima ..... \quad Direvisi ..... \quad Dipublikasikan ..... %tanggal-tanggal tersebut \textbf{dikosongkan} saja
\end{center}

\bigskip

\textbf{Abstrak}. %Dalam bahasa Indonesia
Pekerja Laundry Zone dijadwalkan bekerja 7 hari dalam seminggu dan hanya bekerja pada satu jadwal tertentu saja. Untuk kenyamanan karyawan, maka jadwal pekerja perlu dikonstruksi kembali sehingga pekerja memiliki hari libur dalam seminggu dan dapat bekerja pada jadwal lain. Pada penilitian ini digunakan metode \emph{Goal Programming} dan software LINGO 11.0 untuk menyusun jadwal yang optimal tersebut.

\bigskip

\textbf{Abstract}. % Dalam bahasa Inggris
\textit{The laundry zone workers was scheduled to work 7 days a week and to work only on one particular schedule. For employee convenience, then the work schedule needs to be reconstructed so that workers have a week off and can work on other schedules. The assessment used Goal Progamming and LINGO 11.0 software to complete the optimum schedule.}

\end{abstract}

\keywords{Jadwal kerja,Goal Programming, LINGO 11.0}

\section{Pendahuluan}
Pada umumnya perusahaan perlu menentukan solusi untuk masalah jadwal yang berhubungan dengan masalah kebutuhan jam kerja dengan jumlah pekerja yang ada. Penjadwalan adalah masalah yang sangat rumit dan sering ditemui \linebreak di ketenagakerjaan dan dikaitkan dengan penugasan pekerja yang bekerja setiap hari kerja.

Penjadwalan \emph{Laundry Zone} sebagaimana dinyatakan pada {\cite{3}} ini adalah masih belum optimal karena pekerja tertentu hanya bekerja terbatas pada \emph{shift} tertentu saja dan tidak dapat bekerja pada \emph{shift} lain, sebagai contoh pekerja 1 dan 2 bekerja pada \emph{shift} pagi saja dan pekerja 5 dan 6 bekerja pada \emph{shift} siang saja. Pada {\cite{3}} tersebut, penjadwalan pekerja menggunakan metode penjadwalan \emph{Cyclical}.

Dalam riset operasi, masalah penjadwalan kerja sering diformulasikan ke dalam model matematika. Model matematika yang umum digunakan dalam masalah penjadwalan ini adalah model pemrograman linier yaitu model yang memiliki satu/lebih fungsi objektif. Berbagai metode dapat digunakan \linebreak untuk menyelesaikan model yang memiliki satu/lebih fungsi objektif. Salah satu metode tersebut adalah \emph{Goal Progamming} yang berguna untuk \linebreak menyeimbangkan konflik antar fungsi objektif tersebut.

Dalam makalah ini, masalah penjadwalan tenaga kerja dengan metode \emph{Goal Programming} bertujuan untuk meminimalkan biaya tenaga kerja dan \linebreak memaksimalkan preferensi tenaga kerja. Dalam kasus Laundry Zone{\cite{3}}, akan diseimbangkan jadwal/\emph{shift} tiap pekerja sehingga tiap pekerja dapat bekerja dalam berbagai \emph{shift}.

\section{Landasan Teori}
\subsection{Goal Programming}
\emph{Goal Programming} merupakan perluasan dari formula pemrograman linier dengan banyak tujuan (\emph{multi objektif}). Dalam formulasi tersebut  digunakan dua \linebreak jenis variabel yaitu variabel keputusan dan variabel deviasi. Ada dua kategori dari kendala yaitu kendala struktural atau sistem dan kendala \emph{goal} yang merupakan target \emph{goal} dengan menetapkan prioritas serta variabel deviasi positif dan variabel deviasi negatif{\cite{2}}. 

Bentuk umum model \emph{goal progamming} secara matematika adalah {\cite{2}}
\begin{eqnarray}
Min \ Z = \sum \limits_{i=1}^{m} P_i (d_i^{+}+d_i^{-}) \ ,
\end{eqnarray} 

\hskip -0.5 cm dengan kendala \emph{goal} adalah
\begin{eqnarray}
\sum \limits_{j=1}^{n} a_{i,j}x_{j} - d_i^{+} + d_i^{-}= b_i,\ untuk\ i=1,\ldots,m  \ ,
\end{eqnarray}
dan kendala sistem adalah
\begin{eqnarray}
\sum \limits_{j=1}^{n} a_{i,j}x_{j}\left[ \begin{array}{c}
\leq \\ = \\ \geq \\
\end{array} \right] b_i,\ untuk\ i= m+1,\ldots,m+p
\end{eqnarray}
dengan $d_i^{+}, d_i^{-}, x_{j} \geq 0$ untuk  $i=1,\ldots,m $\ ,\ $j=1,\ldots,n$

\hskip -0.5 cm dimana:\\
$Z$ : fungsi tujuan \\
$a_{i,j}$ : koefisien yang berhubungan dengan variabel $j$ untuk tujuan ke-$i$\\
$x_{j}$ : variabel keputusan ke-$j$\\
$b_i$ : tujuan yang ingin dicapai\\
$d_i^{-}$ : deviasi negatif dari tujuan ke-$i$\\
$d_i^{+}$ : deviasi positif dari tujuan ke-$i$\\
$P_i$ : tingkat prioritas setiap tujuan ke-i

\newpage
Pada model \emph{goal programming}, terdapat $m$ tujuan, $p$ kendala sistem, dan $n$ variabel keputusan. Selanjutnya, algoritma dalam \emph{goal programming} adalah{\cite{3}}:
\begin{itemize} 
\item[1.] Menetapkan variabel keputusan,\\
penetapan ini merupakan dasar dalam membuat model keputusan untuk mendapatkan solusi yang dicari.
\item[2.] Menyatakan kendala sistem,\\
tahapan ini merupakan menentukan nilai-nilai sisi kanan dan kemudian koefisien variabel keputusan yang cocok dan variabel keputusan yang diikutsertakan dalam kendala.
\item[3.] Menyatakan kendala tujuan,\\
pada tahap ini sisi kiri ditambahkan dengan deviasi negatif dan deviasi positif.
\item[4.] Menentukan prioritas,\\
inti dalam tahapan ini adalah membuat urutan-urutan pada masing-masing tujuan. 
\item[5.] Menyatakan fungsi tujuan,\\
fungsi tujuan adalah fungsi yang ingin dicapai dalam setiap kendala.
\item[6.] Menentukan nilai non negatif,\\
tahap ini merupakan tahapan yang diperlukan untuk merumuskan masalah \emph{goal programming} karena semua variabel dalam model \emph{goal programming} tidak boleh bernilai negatif
\item[7.] Menyelesaikan model \emph{goal programming}.
\end{itemize}

\section{Pembahasan}
\subsection{Penyajian Data}
Berikut merupakan data alokasi karyawan laundry zone seturan dan jam kerja untuk pekerja. Data tersebut dapat dilihat pada tabel dibawah:
\begin{table} [h]
\renewcommand{\baselinestretch}{1.5}\footnotesize
\caption{Alokasi Pekerja Laundry Zone Seturan}
\begin{footnotesize}
\begin{center}
\begin{tabular}{|c|c|c|c|}
\hline
Hari & \multicolumn{3}{|c|}{\textbf{Shift}}\\
\cline{2-4} & I & II & III \\
\hline
Senin & 3 & 9 &3 \\
\hline
Selasa & 3 & 9 &3 \\
\hline
Rabu & 3 & 9 &3 \\
\hline
Kamis & 3 & 9 &3 \\
\hline
Jumat & 3 & 9 &3 \\
\hline
Sabtu & 3 & 9 &3 \\
\hline
Minggu & 3 & 9 &3 \\
\hline
\end{tabular}
\end{center}
\end{footnotesize}
\end{table}

\newpage
Tabel 1 menyatakan bahwa pembagian jumlah pekerja dalam setiap shift per harinya dengan \emph{shift} I merupakan \emph{shift} pagi, \emph{shift} II merupakan \emph{shift} siang, dan \emph{shift} III merupakan \emph{shift} malam. 

\begin{table} [h]
\renewcommand{\baselinestretch}{1.5}\footnotesize
\caption{Jam Kerja}
\begin{center}
\begin{tabular}{|c|l|} \hline 
\textbf{Shift} & \textbf{Waktu}  \\
\hline
I & 07.00-14.00 \\
\hline
II & 14.00-22.00 \\
\hline
III & 22.00-07.00 \\
\hline
IV & PIKET \\
\hline
\end{tabular}
\end{center}
\end{table}

Berdasarkan Tabel 1 dan Tabel 2 diketahui bahwa tiap pekerja bekerja setiap hari. Pekerja memiliki jadwal yang berbeda-beda. Pekerja hanya boleh bekerja satu shift pagi, siang atau malam setiap harinya.

\subsection{Pengembangan Model}

Untuk membentuk model penentuan jadwal pekerja setiap harinya, ditetapkan notasi dan variabel-variabel keputusan berikut.

\begin{table} [h]
\renewcommand{\baselinestretch}{1.5}\footnotesize
\caption{Notasi}
\begin{center}
\begin{tabular}{|c|l|l|} \hline 
\textbf{Notasi} & \textbf{Makna Notasi} & \textbf{Range}  \\
\hline
$n$ & jumlah hari pada jadwal & $n$=7 \\
\hline
$m$ & jumlah pekerja yang tersedia & $m$=15 \\
\hline
$i$ & indeks hari & $i$=1,...,n \\
\hline
$j$ & indeks pekerja & $j$=1,...,m \\
\hline
\end{tabular}
\end{center}
\end{table}

\subsubsection{Variabel Keputusan}
Variabel keputusan yang digunakan adalah\\
$X_{(i,j)} = \begin{cases}
1,\ jika\ pekerja\ j\ ditugaskan\ shift\ pagi\ pada\ hari\ ke-i\\
0,\ jika\ pekerja\ j\ tidak\ ditugaskan\ shift\ pagi\ pada\ hari\ ke-i
\end{cases} \nonumber \\
Y_{(i,j)} = \begin{cases}
1,\ jika\ pekerja\ j\ ditugaskan\ shift\ siang\ pada\ hari\ ke-i\\
0,\ jika\ pekerja\ j\ tidak\ ditugaskan\ shift\ siang\ pada\ hari\ ke-i
\end{cases} \nonumber \\
Z_{(i,j)} = \begin{cases}
1,\ jika\ pekerja\ j\ ditugaskan\ shift\ malam\ pada\ hari\ ke-i\\
0,\ jika\ pekerja\ j\ tidak\ ditugaskan\ shift\ malam\ pada\ hari\ ke-i
\end{cases} \nonumber \\
L_{(i,j)} = \begin{cases}
1,\ jika\ pekerja\ j\ libur\ pada\ hari\ ke-i\\
0,\ jika\ pekerja\ j\ tidak\ libur\ pada\ hari\ ke-i .
\end{cases} \nonumber$ \\

\subsubsection{Kendala-Kendala}
\textbf{Kendala 1} : Kebutuhan pekerja pada \emph{shift}(pagi,siang, dan malam). Kebutuhan \emph{shift} pagi minimal 3 orang, kebutuhan \emph{shift} siang minimal 9 orang, dan kebutuhan \emph{shift} malam minimal 3 orang.
\begin{itemize}
\item[a.] Kebutuhan \emph{shift} pagi\\
$\sum \limits_{j=1}^{15} X_{(i,j)} \geq 3 ,\ j = 1,\ldots,15$ untuk setiap $i=1,\ldots,7$.
\item[b.] Kebutuhan \emph{shift} siang\\
$\sum \limits_{j=1}^{15} Y_{(i,j)} \geq 9 ,\ j = 1,\ldots,15$ untuk setiap $i=1,\ldots,7$.
\item[c.] Kebutuhan \emph{shift} malam\\
$\sum \limits_{j=1}^{15} Z_{(i,j)} \geq 3 ,\ j = 1,\ldots,15$ untuk setiap $i=1,\ldots,7$.
\end{itemize}

\hskip -0.5 cm \textbf{Kendala 2} : Setiap pekerja hanya boleh mengisi satu \emph{shift} (jam kerja) atau libur setiap harinya,sehingga
\begin{eqnarray}
X_{(i,j)}+Y_{(i,j)}+Z_{(i,j)}+L_{(i,j)}=1 \nonumber
\end{eqnarray}     
untuk setiap $i=1,\ldots,15$ dan  $j = 1,\ldots,7$.

\hskip -0.5 cm \textbf{Kendala 3} : Setiap pekerja harus memiliki satu \emph{shift} pagi,siang atau malam setiap minggunya,oleh karena itu
\begin{itemize}
\item[a.] Setiap pekerja memiliki satu \emph{shift} pagi setiap minggunya,sehingga\\
$\sum \limits_{i=1}^{7} X_{(i,j)} \geq 1,\ i =1,\ldots,7$ untuk setiap $j = 1,\ldots,15$.
\item[b.] Setiap pekerja memiliki satu \emph{shift} siang setiap minggunya,sehingga\\
$\sum \limits_{i=1}^{7} Y_{(i,j)} \geq 1,\ i =1,\ldots,7$ untuk setiap $j = 1,\ldots,15$.
\item[c.] Setiap pekerja memiliki satu \emph{shift} malam setiap minggunya,sehingga\\
$\sum \limits_{i=1}^{7} Z_{(i,j)} \geq 1,\ i =1,\ldots,7$ untuk setiap $j = 1,\ldots,15$.
\end{itemize}

\hskip -0.5 cm \textbf{Kendala 4} : Jadwal setiap pekerja menghindari \emph{shift} malam yang diikuti \emph{shift} pagi.
\begin{eqnarray}
Z_{(i,j)} + X_{(i+1,j)} \leq 1 \nonumber
\end{eqnarray}
untuk setiap $i =1,\ldots,6$ dan  $j = 1,\ldots,15$. Khusus untuk hari ke-7 maka kendala adalah
\begin{eqnarray}
Z_{(i,j)} + X_{(i-6,j)} \leq 1 \nonumber
\end{eqnarray} 
untuk setiap $i =7$ dan  $j = 1,\ldots,15$. 

\hskip -0.5 cm \textbf{Kendala 5} : Laundry mengusahakan agar setiap pekerja mendapatkan \linebreak maksimal satu kali libur setiap minggunya dan jadwal setiap pekerja tidak memiliki pola libur yang berderet (hari libur yang diikuti kembali oleh libur pada hari berikutnya). Kendala ini dapat dinyatakan dengan
\begin{eqnarray}
L_{(i,j)} + L_{(i+1,j)} \leq 1 \nonumber
\end{eqnarray}
untuk setiap $i =1,\ldots,6$ dan  $j = 1,\ldots,15$. Khusus untuk hari ke-7 maka kendala adalah
\begin{eqnarray}
L_{(i,j)} + L_{(i-6,j)} \leq 1 \nonumber
\end{eqnarray} 
untuk setiap $i =7$ dan  $j = 1,\ldots,15$.

\hskip -0.5 cm \textbf{Kendala 6} : Setiap pekerja memiliki kesempatan libur minimal nol kali setiap minggunya, yang dapat dinyatakan dengan 
\begin{eqnarray}
\sum \limits_{i=1}^{7} L_{(i,j)} \geq 0,\ i=1,\ldots,7 \nonumber
\end{eqnarray}
untuk setiap $j = 1,\ldots,15$.

\hskip -0.5 cm \textbf{Kendala 7} : Laundry menginginkan agar setiap pekerja memiliki \emph{shift} kerja (pagi, siang atau malam) minimal 6 kali dalam seminggu, yang dapat \linebreak dinyatakan dengan
\begin{eqnarray}
\sum \limits_{i=1}^{7} X_{(i,j)} + \sum \limits_{i=1}^{7} Y_{(i,j)} + \sum \limits_{i=1}^{7} Z_{(i,j)} \geq 6,\ i=1,\ldots,7 \nonumber
\end{eqnarray}
untuk setiap $j = 1,\ldots,15$.

\hskip -0.5 cm \textbf{Kendala 1 \emph{goal programming}} : Kendala 7 berhubungan dengan kendala 1 sehingga kendala 7 diubah kedalam bentuk kendala baru dengan \linebreak menambahkan nilai deviasi. Kendala baru memastikan bahwa semua pekerja dijadwalkan untuk mempunyai 6 \emph{shift} kerja sebisa mungkin dalam satu minggu. Notasi $d1^{-}_{(j)}$ dan $d1^{+}_{(j)}$ berturut-turut adalah banyaknya deviasi negatif dan positif dari tujuan 1 untuk $j$ pekerja. Kendala ini dapat dinyatakan dengan
\begin{eqnarray}
\left( \sum \limits_{i=1}^{7} X_{(i,j)} + \sum \limits_{i=1}^{7} Y_{(i,j)} + \sum \limits_{i=1}^{7} Z_{(i,j)} \right) + d1^{-}_{(j)} - d1^{+}_{(j)} = 6,\ i=1,\ldots,7 ,\nonumber
\end{eqnarray}
untuk setiap $j = 1,\ldots,15$.

\hskip -0.5 cm \textbf{Kendala 2 \emph{goal programming}} : Kendala 6 berhubungan dengan kendala 2 sehingga kendala 6 diubah kedalam bentuk batasan baru dengan \linebreak menambahkan nilai deviasi. Batasan baru memastikan bahwa semua pekerja sebisa mungkin memiliki 0 hari libur dalam satu minggu. Notasi $d1^{-}_{(j)}$ dan $d1^{+}_{(j)}$ berturut-turut adalah banyaknya deviasi negatif dan positif dari tujuan 1 untuk $j$ pekerja. Kendala ini dapat dinyatakan dengan 
\begin{eqnarray}
\left( \sum \limits_{i=1}^{7} L_{(i,j)} \right) + d1^{-}_{(j)} - d1^{+}_{(j)} = 0,\ i=1,\ldots,7 ,\nonumber
\end{eqnarray}
untuk setiap $j = 1,\ldots,15$.

\subsubsection{Fungsi Tujuan}
Ada beberapa ketentuan dalam \emph{goal programming} untuk menentukan tujuan(\emph{goal}) yang baru, yaitu {\cite{7}} :
\begin{itemize} 
\item[1.] jika formula awal yang ditambahkan variabel deviasi adalah $Y \geq 0$, maka fungsi tujuan yang baru adalah meminimumkan $d_{j}^{-}$.
\item[2.] jika formula awal yang ditambahkan variabel deviasi adalah $Y \leq 0$, maka \emph{goal} yang baru adalah meminimumkan $d_{j}^{+}$.
\item[3.] jika formula awal yang ditambahkan variabel deviasi adalah $Y = 0$, maka \emph{goal} yang baru adalah meminimumkan $d_{j}^{-}$ dan $d_{j}^{+}$. 
\end{itemize}

Berdasarkan ketentuan tentang \emph{goal programming} dan digunakan metode \emph{preemptive} dimana jumlah \emph{shift} kerja pekerja (\emph{goal} satu) memiliki prioritas lebih besar \linebreak ketimbang jumlah libur karyawan (\emph{goal} dua), maka Persamaan berikut menyatakan fungsi tujuan untuk skenario ini. 
\begin{eqnarray}
Min \ Z= P_1 \sum \limits_{j=1}^{15} d1^{-} (j), Min\ Z= P_2 \sum \limits_{j=1}^{15} d2^{-} (j) ,\nonumber
\end{eqnarray}

\hskip -0.5 cm dimana $P_1$ adalah prioritas pertama sedangkan $P_2$ adalah prioritas kedua. Karena priotitas pertama adalah \emph{goal} satu maka $P_1$ dipasangkan dengan $d1^{-}_{(j)}$ sedangkan $P_2$ dipasangkan dengan $d2^{-}_{(j)}$. 

\subsection{Formulasi dalam Bahasa LINGO}
Setelah terbentuk model,selanjutnya diformulasikan ke dalam bahasa LINGO.

\begin{figure}[htbp]
\includegraphics[scale=0.8]{lingo1.jpg}
\label{gbr1}
\end{figure}
\begin{figure}[htbp]
\includegraphics[scale=0.8]{lingo2.jpg}
\label{gbr1}
\end{figure}

\newpage
\subsection{Hasil}
Berikut ini adalah jadwal jam kerja yang disimpulkan berdasarkan variabel \linebreak keputusan yang bersumber pada hasil \textit{output} LINGO untuk penjadwalan pekerja \textit{laundry} Zone.

\begin{table} [h]
\renewcommand{\baselinestretch}{1.5}\footnotesize
\caption{Jadwal Pekerja Laundry Zone}
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline
Pekerja & \multicolumn{7}{|c|}{Hari/Tanggal}\\
\cline{2-8} & 1 & 2 & 3 & 4 & 5 & 6 & 7 \\
\hline
1 & S & S & S & P & M & S & S \\ \hline
2 & M & S & S & S & S & P & S \\ \hline
3 & S & S & P & P & P & M & S \\ \hline
4 & P & S & M & S & S & P & P \\ \hline
5 & S & P & S & S & M & S & S \\ \hline
6 & P & S & S & S & M & S & S \\ \hline
7 & P & P & S & M & S & S & S \\ \hline
8 & S & P & S & M & S & S & P \\ \hline
9 & M & M & M & S & P & M & M \\ \hline
10 & M & S & P & S & S & S & S \\ \hline
11 & S & S & P & S & S & S & M \\ \hline
12 & S & S & M & S & P & S & M \\ \hline
13 & S & M & S & P & S & M & S \\ \hline
14 & S & M & S & S & S & S & P \\ \hline
15 & S & S & S & M & S & P & S \\ \hline
\end{tabular}
\end{center}
\end{table}

\newpage
Pada Tabel 4, $P$ adalah \textit{shift} pagi, $S$ adalah \textit{shift} siang, $M$ adalah \textit{shift} malam dan $L$ adalah libur. Fungsi tujuan terpenuhi karena nilai seluruh deviasi $d1^{-}_{(j)}$ dan $d2^{-}_{(j)}$ sama dengan nol. Nilai deviasi ini menyatakan bahwa jadwal yang dihasilkan telah meminimumkan jumlah libur serta \textit{shift} kerja para pekerja. Dikarenakan nilai deviasi sama dengan nol, maka jadwal telah memenuhi syarat \emph{goal} minimal yaitu jumlah libur setiap pekerja lebih dari nol dan jumlah \textit{shift} kerja lebih dari 6. Oleh karena itu, semua kendala dan fungsi tujuan sudah terpenuhi maka \textit{Laundry Zone} dapat menggunakan jadwal pada Tabel 4.

\section{Kesimpulan}
Berdasarkan pembahasan diatas didapatkan jadwal kerja para pekerja di Laundry Zone menggunakan metode \emph{Goal Progamming}. Metode ini dapat menyelesaikan model yang mempunyai banyak fungsi objektif. Hasil jadwal yang didapat pada program LINGO dapat dikatakan optimal karena pada LINGO dapat dilihat bahwa hasil jadwal tersebut merupakan solusi global optimal  dan berdasarkan Tabel 4 dapat disimpulkan bahwa para pekerja dapat bekerja di berbagai \emph{shift}. 

\section{Ucapan Terima kasih}
Penulis mengucapkan terima kasih kepada Bapak Muhafzan, Bapak Efendi, dan Ibu Hazmira Yozza yang telah memberikan masukan dan saran terhadap penyempurnaan makalah ini. 

\begin{thebibliography}{0}
\bibitem{1} Al-Rawi, O.Y.M. and Mukherjee, T. 2019. Application of linear programming in optimizing labour schedulling. \textit{Journal of Mathematical Finance}. \textbf{9}: 272-285

\bibitem{2} Anonymous. No Year. Chapter 1 an introduction to goal programming. \underline{www.researchgate.net}, diakses tanggal 9 Maret 2022

\bibitem{3} Oktaviani,L.,Y.Fuad dan Y.P.Astuti. 2018. Penerapan model goal programming dalam penyusunan rencana bisnis anggaran (studi kasus pada pemerintah kabupaten lamongan). \textit{Jurnal Ilmiah Matematika}. \textbf{6}: 33-39

\bibitem{4} Sulistyo, M.C.W. 2018. Penjadwalan karyawan (aplikasi metode cyclical scheduling di laundry zone). \textit{Jurnal Profit}. \textbf{12}: 38-49
 
\bibitem{5} Siang, Jong Jek . 2011. \textit{Riset Operasi Dalam Pendekatan Algoritmis}. Andi Offset, Yogyakarta

\bibitem{6} Siswanto . 2007. \textit{Operation Research}. Erlangga, Jakarta

\bibitem{7} Warman, R.A.A. 2018. Optimasi Penjadwalan Karyawan Menggunakan Metode Goal Programming(Studi Kasus PT ABC). \textit{Skripsi S-1}, tidak diterbitkan. Fakultas Teknologi Informasi dan Komunikasi, Institut Teknologi Sepuluh Nopember, Surabaya.

\bibitem{8} Wintson, W.L. 1991. \textit{Operation Research : Application and Algorithms. Fourth Edition}. Indiana University, USA
\end{thebibliography}
\end{document}
