Variabel dan parameter yang digunakan dalam perumusan goal programming ini adalah sebagai berikut :
= jumlah produksi roti jenis j (j = 1,2,3,4,5)
= jumlah penjualan produk roti jenis j pada bulan k = biaya produksi bahan bangunan pada bulan k
= total keuntungan dari penjualan yang diharapkan pada bulan k
= pencapaian target yang melebihi dari target yang ditetapkan pada persamaan ke-i
= ketidaktercapaiannya target yang sudah ditetapkan pada persamaan ke-i = prioritas ke-k
= nilai RHS (target yang ingin dicapai) 4.3.2 Penentapan Proritas
Dalam penelitian ini yang menjadi sasaran ada tiga, yaitu : volume penjualan untuk memenuhi permintaan pasar, meminimumkan biaya produksi, dan memaksimalkan total keuntungan supaya memenuhi batasan target. Permasalahan ini akan diselesaikan menggunakan kelompok skala prioritas goal programming dengan urutan sebagai berikut :
1. Prioritas 1
Jumlah produksi roti diharapkan dapat memenuhi target permintaan pasar setiap bulannya.
2. Prioritas 2
Biaya produksi yang dikeluarkan tiap bulannya tidak melebihi batasan biaya produksi.
3. Prioritas 3
Total keuntungan dari tiap bulannya diharapkan dapat mencapai batasan yang sudah ada.
37 4.3.3 Penentuan dan Perumusan Fungsi Kendala Model
Untuk menyelesaikan permasalahan perencanaan produksi pada Dorina Bakery, maka kendala yang menjadi sasaran akan dimodelkan ke dalam fungsi kendala.
Tujuan dari fungsi kendala adalah untuk mengetahui batasan-batasan atau kendala yang ada sehingga bisa dirumuskan fungsi tujuannya dan menentukan penambahan deviasi yang sesuai dengan kendala tersebut. Perumusan fungsi kendala dapat dilakukan dengan menggunakan persamaan (2.14) dan perumusan masing-masing fungsi tujuan dapat dilakukan dengan menggunakan persamaan (2.13). Kendala dalam penelitian ini ada tiga, yaitu memenuhi permintaan pasar, meminimumkan biaya produksi, dan meminimumkan tidak tercapainya target keuntungan yang sudah ditentukan. Berikut adalah perumusan untuk masing-masing kendala :
1. Kendala Target Permintaan Pasar
Untuk memenuhi permintaan pasar, maka deviasi negatif dan deviasi positif dari pembatas target permintaan harus diminimumkan. Karena kekurangan jumlah produksi akan menyebabkan tidak mampunya untuk memenuhi permintaan pelanggan dan jumlah produksi yang berlebih akan menyebabkan biaya inventory yang semakin besar dan biaya produksi yang dikeluarkan tidak dapat diatasi. Sehingga fungsi tujuannya harus diminimumkan. Berikut adalah fungsi kendala dari masing-masing produk.
Dan fungsi tujuannya adalah :
∑
2. Fungsi Biaya Produksi
Tujuannya adalah untuk meminimumkan biaya yang digunakan selama produksi, maka yang diminimumkan adalah nilai deviasi positif ataupun yang berlebih. Berdasarkan Tabel 4.8, fungsi kendala modelnya dirumuskan sebagai berikut :
Dan fungsi tujuannya adalah :
38 3. Kendala Target Keuntungan
Dorina Bakery bertujuan untuk memperoleh keuntungan yang maksimal sehingga target keuntungan yang dibawah target ataupun nilai deviasi negatif akan diminimumkan. Berdasarkan Tabel 4.10, fungsi kendala modelnya dirumuskan sebagai berikut :
Dan fungsi tujuaannya adalah :
4.3.4 Fungsi Tujuan Model
Berdasarkan fungsi kendala dan penetapan skala prioritas maka fungsi tujuan yang dapat diterapkan pada optimasi perencanaan Dorina Bakery adalah sebagai berikut :
∑
Optimasi perencanaan produksi yang akan dibuat adalah untuk periode satu tahun dan dibuat dalam jangka waktu perbulan. Berdasarkan model yang telah dibuat, maka fungsi tujuan model untuk setiap bulannya (untuk target permintaan pasar lihat Tabel 4.7, batasan biaya produksi lihat Tabel 4.9, dan untuk target keuntungan lihat Tabel 4.11 untuk membuat nilai RHSnya) akan dirumuskan pada tabel berikut ini:
Tabel 4.12 Fungsi Model Tujuan
Bulan
Kendala Target Permintaan
Pasar (Prioritas 1) Biaya Produksi (Prioritas 2) Target Keuntungan (Prioritas 3) Januari
April
Desember
43 4.3.5 Penyelesaian Model
Permasalahan perencanaan produksi yang telah diformulasikan ke dalam model goal programming akan diselesaikan dengan menggunakan algoritma simpleks.
Perhitungan algoritma simpleks akan dilakukan hanya untuk bulan Januari 2019 saja mengingat data yang akan dihitung secara iteratif cukup banyak, maka untuk bulan selanjutnya akan diselesaikan dengan menggunakan software Lingo yang hasil perhitungannya dapat dilihat pada Lampiran.
Berikut adalah perhitungan untuk bulan Januari 2019 dengan menggunakan tabel simpleks.
1. Membuat formulasi tabel simpleks awal
Tabel 4.13 Simpleks Awal
Setelah membuat tabel simpleks awal maka langkah selanjutnya adalah menentukan kolom pivot. Kolom pivot yang dipilih adalah yang memiliki nilai negatif paling terbesar karena merupakan kasus minimasi, dikarenakan ada 4 nilai yang sama maka dipilih salah satu yaitu pada kolom
yaitu -801. Kemudian tentukan baris pivot yaitu dengan membagi nilai dengan nilai rasio kolom pivot ataupun dengan menggunakan rumus :
Sehingga baris pivot adalah dengan nilai 7643.
2. Untuk membuat tabel simpleks selanjutnya maka dimasukkan nilai variabel pendatang ke kolom variabel dasar yaitu dan ke dan melakukan
44 transformasi baris-baris variabel. Sebelum melakukan transformasi maka
dipastikan terlebih dahulu bahwa nilai kolom pivot adalah 1 dan nilai kolom lai pada baris tersebut adalah 0, jika belum maka harus dilakukan operasi terhadap kolom-kolom tersebut dengan menggunakan rumus :
Apabila bukan merupakan baris pivot
Dimana :
Apabila merupakan baris pivot
Ulangi langkah 1 dan langkah 2 sampai tidak ada lagi nilai yang negatif, dengan begitu maka tabel sudah optimal. Pada perhitugan tersebut diperoleh bahwa nilai deviasinya nol dan nilai sesuai dengan nilai RHS yang diinginkan.
Tabel 4.14 Iterasi – 1
0 0 0 0 Cj 0 1 1 1 1 1 1 1 1 1 1 1 1
Pk Cj x1 x2 x3 Vb x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7 bi
P1 1 1 0 0 Db1 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643
P1 1 0 1 0 X2 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643
P1 1 0 0 1 Db3 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963
P1 1 0 0 0 Db4 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573
P1 1 0 0 0 Db5 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384
P2 1 449 0 439 Db6 439 439 0 0 444 -444 0 0 0 0 0 0 -1 0 4274587
P3 1 301 0 361 Db7 361 361 0 0 356 -356 0 0 0 0 0 0 0 1 2993663
751 0 801 Zj 801 801 -1 1 799 -799 -1 1 -1 1 -1 1 -1 1
-751 0 -801 Cj-Zj -801 -801 2 0 -798 800 2 0 2 0 2 0 2 0
Tabel 4.15 Iterasi – 2
Cj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Pk Cj Vb x1 x2 x3 x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7 bi
P1 1 Db1 1 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643
P1 1 X2 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643
P1 1 X3 0 0 1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963
P1 1 Db4 0 0 0 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573
P1 1 Db5 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384
P2 1 Db6 449 0 0 439 439 0 0 444 -444 439 -439 0 0 0 0 -1 0 3851830
P3 1 Db7 301 0 0 361 361 0 0 356 -356 361 -361 0 0 0 0 0 1 2646020
Zj 751 0 0 801 801 -1 1 799 -799 799 -799 -1 1 -1 1 -1 1
Cj-Zj -751 0 0 -801 -801 2 0 -798 800 -798 800 2 0 2 0 2 0
Tabel 4.16 Iterasi - 3
Cj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Pk Cj Vb x1 x2 x3 x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7 bi
P1 1 Db1 1 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643
P1 1 X2 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643
P1 1 X3 0 0 1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963
P1 1 X4 0 0 0 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573
P1 1 Db5 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384
P2 1 Db6 449 0 0 0 439 0 0 444 -444 439 -439 439 -439 0 0 -1 0 3600283
P3 1 Db7 301 0 0 0 361 0 0 356 -356 361 -361 361 -361 0 0 0 1 2439167
Zj 751 0 0 0 801 -1 1 799 -799 799 -799 799 -799 -1 1 -1 1
Cj-Zj -751 0 0 0 -801 2 0 -798 800 -798 800 -798 800 2 0 2 0
Tabel 4.17 Iterasi – 4
Cj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Pk Cj Vb x1 x2 x3 x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7 bi
P1 1 Db1 1 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643
P1 1 X2 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643
P1 1 X3 0 0 1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963
P1 1 X4 0 0 0 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573
P1 1 X5 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384
P2 1 Db6 449 0 0 0 0 0 0 444 -444 439 -439 439 -439 439 -439 -1 0 3431707
P3 1 Db7 301 0 0 0 0 0 0 356 -356 361 -361 361 -361 361 -361 0 1 2300543
Zj 751 0 0 0 0 -1 1 799 -799 799 -799 799 -799 799 -799 -1 1
Cj-Zj -751 0 0 0 0 2 0 -798 800 -798 800 -798 800 -798 800 2 0
Tabel 4.18 Iterasi - 5
Cj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Pk Cj Vb x1 x2 x3 x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7 bi
P1 1 Db1 1 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643
P1 1 X2 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643
P1 1 X3 0 0 1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963
P1 1 X4 0 0 0 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573
P1 1 X5 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384
P2 1 Db6 82,964 0 0 0 0 0 0 11,1 -11,08 0 0 0 0 0 0 -1 -1,22 634093,8
P3 1 Da3 0,8338 0 0 0 0 0 0 0,99 -0,9861 1 -1 1 -1 1 -1 0 0,003 6372,695
Zj 84,798 0 0 0 0 -1 1 11,1 -11,066 0 0 0 0 0 0 -1 -1,21
Cj-Zj -84,8 0 0 0 0 2 0 -10 12,0665 0 1 1 1 1 1 2 2,213
Tabel 4.19 Iterasi – 6
Cj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
bi
Pk Cj Vb x1 x2 x3 x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7
P1 1 X1 1 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643 #DIV/0!
P1 1 X2 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643 -7643
P1 1 X3 0 0 1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963 #DIV/0!
P1 1 X4 0 0 0 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573 #DIV/0!
P1 1 X5 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384 #DIV/0!
P2 1 Db6 0 0 0 0 0 0 0 11,08033 -11,08033241 0 0 0 0 0 0 -1 -1,2160665 0 0
P3 1 Da3 0 0 0 0 0 0 0 0,98615 -0,986149584 1 -1 1 -1 1 -1 0 0,0027701 0 0
Zj 0 0 0 0 0 -1 1 11,06648 -11,06648199 0 0 0 0 0 0 -1 -1,2132964
Cj-Zj 0 0 0 0 0 2 0 -10,0665 12,06648199 0 1 1 1 1 1 2 2,2132964
Tabel 4.20 Iterasi – 7
Cj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
bi
Pk Cj Vb x1 x2 x3 x4 x5 da1 db1 da2 db2 da3 db3 da4 db4 da5 db5 da6 db7
P1 1 X1 1 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 7643 7643
P1 1 X2 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 7643 #DIV/0!
P1 1 X3 0 0 1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 963 #DIV/0!
P1 1 X4 0 0 0 1 0 0 0 0 0 0 0 -1 1 0 0 0 0 573 #DIV/0!
P1 1 X5 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 1 0 0 384 #DIV/0!
P2 1 Db6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 #DIV/0!
P3 1 Da3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 #DIV/0!
Zj 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cj-Zj 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Pada tabel simpleks iterasi 7 jika semua nilai koefisien tidak ada lagi yang bernilai negatif maka tabel sudah optimal. Pada perhitungan tersebut diperoleh bahwa nilai deviasinya nol dan nilai seusai dengan nilai RHS ataupun target yang diinginkan.