GOAL PROGRAMMING SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER (STMIK) MERCUSUAR Jl. Raya Jatiwaringin No. 144 Pondok Gede Bekasi 17411 GOAL PROGRAMMING
PENDAHULUAN Digunakan pada kondisi yang didinginkan yaitu minimasi dari tujuan/sasaran yang diharapkan Goal Programming adalah programa linier yang memiliki satu atau lebih goal sasaran yang memenuhi syarat linieritas, maka dapat diselesaikan sebagai programa linier yang ada (simpleks, dua fasa, atau primal dual). Minimasi simpangan (atas atau bawah, kiri atau kanan) dimaksudkan agar sasaran yang diinginkan memang dapat tercapai.
Contoh PL: PENDAHULUAN (2) Formulasi goal programming sedikit berbeda dengan programa linier (PL) biasa, yaitu Fungsi tujuan berupa minimasi simpangan (deviasi) bawah. Fungsi pembatas ditambah dengan pembatas dari sasaran yang diinginkan. Penyelesaian dapat diselesaikan dengan metode dua fasa, walaupun hanya melibatkan 2 variabel keputusan. Contoh Programa linier Max : Z = 8X1 + 6X2 Profit = perolehan dari perijualan s/t 4 X1 + 2 X2 ≤ 60 2 X1 + 4 X2 ≤ 48 Assembling Finishing X1 = Jumlah meja (table) dengan harga $8 per unit X2 = Jumlah kursi (chair) dengan harga $6 per unit
Pendahuluan (3) Penyelesaian persoalan tersebut dengan metode grafik: Solusi dengan metode grafik diperoleh: Jumlah meja (Xj) yang dibuat = 12 buah. Jumlah kursi (X2) yang dibuat = 6 buah. Total penjualan (revenue) yang diperoleh = $ 132
GOAL PROGRAMMING DENGAN SATU TUJUAN Misalnya, dari soal di atas akan diselesaikan sebagai goal programming dengan hanya 1 tujuan (goal) saja, yaitu untuk mendapatkan keuntungan (profit) = $ 140. Bagaimana caranya? Formulasi goal programming Min Z= D1- S/t 8 X1 + 6 X2 + D1- - D1+ = 140 4 X1 + 2 X2 ≤ 60 2 X1 + 4 X2 ≤ 48
GOAL PROGRAMMING DENGAN SATU TUJUAN Yang akan diminimasi adalah simpangan bawah dari goal profit D1 - Pembatas 1 adalah pembatas dari sasaran yang diinginkan (jumlah profit= $ 140). Simpangan atas dari profit Dj+ dimunculkan agar goal/sasaran memang dapat dicapai Garis tebal (pada grafik berikutnya) menunjukkan goal profit yang diinginkan berada di luar daerah fisibel (artinya, akan ada simpangan bawah → goal tidak tercapai)
…………………………………….. Goal Programming Dengan Satu Tujuan Gambar PL dengan goal-nya
…………………………………….. Goal Programming Dengan Satu Tujuan ~ Perlu variabel slack X, dan X5 pada dua pembatas kedua dan ketiga. …………………………………….. Goal Programming Dengan Satu Tujuan Bentuk standar dari goal programming MIN Z= D1- + MX3 s/t 8X1 + 6X2 + D1- - D1+ + X3 = 140 4X1 + 2 X2 + X4 = 60 2 X1 + 4X2 + X5 = 48 Perlu variabel artificial X3 pada pembatas pertama Perlu variabel slack X4, dan X5 pada dua pembatas kedua dan ketiga.
…………………………………….. Goal Programming Dengan Satu Tujuan Penyelesaiannya adalah dengan tabel simpleks (duafasa). Fasa I: X3 adalah variabel artificial dari pembatas 1. X4 dan X5 berturut-turut adalah variabel slack untuk pembatas 2 dan 3 Akhir fasa I ditandai oleh nilai RK( pada baris Zj - Cj adalah 0 (nol), kemudian kolom X3 (artificial) dikeluarkan untuk masuk ke fasa II
…………………………………….. Goal Programming Dengan Satu Tujuan Awal (persia pan) iterasi difasa I Kolom basis X3 pada baris Zj - Cj disesuaikan dahulu sehingga menjadi 0 (NOL) yang hasilnya ada pada baris 5 Dipisahkan komponen Zj - Cj yang tanpa M (pada baris 6) dan yang dengan M (pada baris 7).
…………………………………….. Goal Programming Dengan Satu Tujuan Bila dipilah dulu untuk: persiapan iterasi di fasa I, maka matriks tersebut akan menjadi (hanya melibatkan komponen Zj - Cj dengan M): Variabel masuk adalah X, Variabel keluar adalah X4 Pivot ada pada elemen (2; 1) - bagi semua elemen pada baris 2 dengan 4 -7 lakukan OBE pada baris 1,3, dan 4 dengan merujuk pada baris 2
…………………………………….. Goal Programming Dengan Satu Tujuan Hasil iterasi 1 fasa I Nilai Zj - Cj masih ada yang negatif, berarti harus lanjut ke iterasi 2. Pivot pada elemen (3;2), variabel masuk X2, variabel keluar X5, bagi semuaelemen pada baris 3 dengan 3 . Lakukan OBE pada 1,2, dan 4 dengan merujuk padabaris 3
…………………………………….. Goal Programming Dengan Satu Tujuan Hasil iterasi 2 fasa I Nilai Zj - Cj masih ada yang negatif, berarti harus 1anjut ke iterasi 3. Pivot pada elemen (1 ;3), variabel D1- masuk, variabel X3 ke1uar. Bagi semua elemen baris 1 dengan 1. Lakukan OBE pada baris 2, 3, dan 4 dengan merujuk pada baris 1
…………………………………….. Goal Programming Dengan Satu Tujuan Hasil iterasi 3 fasa I Fasa I berakhir karena nilai Zj - Cj pada kolom RK telah 0 (nol), berarti variabel artificial (X3) dapat dikeluarkan dari tabel untuk dilanjutkan ke fasa IT
…………………………………….. Goal Programming Dengan Satu Tujuan Fasa II (awal/pcrsiapan): Kolom D1-, yang basis harus disesuaikan (karena nilai Zj - Cj masih bernilai -1) → dengan cara OBE diperoleh hasil Zj - Cj, yang baru pada baris 5
…………………………………….. Goal Programming Dengan Satu Tujuan Fasa II berakhir (karena variabel basis sudah disesuaikan → perhatikan kolom D1-. Diperoleh X1 = 12 dan X2 = 6 dengan Z = $ 132 (seperti jawaban semula). Simpangan bawah D1- = 8 (target goal profit tidak tercapai sebesar $ 8). Fungsi tujuan goal D1- = 8 Ingat -7 solusi semula pun hanya $ 132, walaupun target $ 140
GOAL PROGRAMMING DNG DUA TUJUAN Misalnya, ada dua goal yang diinginkan, yaitu goal-1 profit = $ 125 dan goal-2 jumlah tablelmeja X, = 10. Bobot kedua goal adalah sama (tidak ada prioritas tertentu). Fungsi tujuan adalah minimasi simpangan bawah goal profit D1- dan simpangan bawah goal jumlah meja D2- Pembatas 1 adalah pembatas untuk goal profit yang ditambah simpangan bawah (D1-) dan dikurangi simpangan atasnya (D1+)
...................... Goal Programming dng 2 Tujuan Pembatas 2 adalah pembatas untuk goal jumlah meja yang ditambah simpangan bawah (D2-) dan dikurangi simpangan atasnya (D2+). Pembatas 3 dan 4 sama seperti sebelumnya (pembatas awal) Bentuk Standar Goal Programming
...................... Goal Programming dng 2 Tujuan X3 adalah variabel artificial pembatas 1 X4 adalah variabel artificial pembatas 2 X5, dan X6 merupakan variabel slack untuk pembatas 3 dan 4 Penyelesaian dengan tabel simpleks (awal fasa I)
...................... Goal Programming dng 2 Tujuan Nilai Zj - Cj pada kolom X3 dan X4 (keduanya adalah variabel artificial) masih belum 0 →perlu diubah dengan OBE (pada baris 6), selanjutnya dipilah antara Zj - Cj yang dengan M (pada baris7) dan yang tanpa M (pada baris 8) Fasa I (hanya melibatkan Zj - Cj yang dengan M serta kolom rasio)
...................... Goal Programming dng 2 Tujuan Variabel masuk Xl, karena nilai Zj - Cj terkecil variabel keluar X4· Pivot pada elemen (2; 1) → lakukan OBE pada baris 1, 3, 4, dan 5 dengan merujuk kepada baris 2 Hasil Iterasi 1 fasa I
...................... Goal Programming dng 2 Tujuan Karena Zj - Cj masih ada yang bernilai negatif, maka harus lanjut ke iterasi 2. Variabel masuk D2+, variabel keluar X5. Pivot pada elemen (3;6) → bagi semua elemen baris 3 dengan 4. Lakukan OBE pada baris I, 2, 4, dan 5 dengan merujuk pada baris 3.
...................... Goal Programming dng 2 Tujuan Hasil Iterasi 2 fasa I Karena Zj - Cj masih ada yang bernilai negatif, maka harus lanjut ke iterasi 3. Variabel masuk X2, variabel keluar X3. Pivot pada elemen (1 ;2→ bagi semua elemen baris 1 dengan 2. Lakukan OBE pada baris 2, 3, 4, dan 5 dengan merujuk pada baris
...................... Goal Programming dng 2 Tujuan Hasil Iterasi 3 fasa I Fasa I berakhir karena nilai Zj - Cj (di ruas kanan) = 0. Hilangkan kolom X3 dan X4. Siapkan tabulasi baru untuk fasa II dengan memasukkan Cj - Zj yang tanpa M.
...................... Goal Programming dng 2 Tujuan Tabel Awal Fasa II Fasa II berakhir karena komponen basis sudah sesuai nilainya. Diperolah hasil X, = 13,75, X2 = 2,5, X6 = 10,5, D/ = 3,75.
...................... Goal Programming dng 2 Tujuan Artinya: Tujuan profit dapat tercapai (tidak ada D," atau D\+ pada basis) . Tujuan jumlah meja tercapai, bahkan berlebih (ada D/ = 3,75 pada basis dari target hanya 10 buah) . Profit = 13,75 ($ 8) + 2,5 ($ 6) = $ 125 (sesuai dengan sasaran/goal).