Goal Programming
(MultiObjective Programming)
Outline Kuliah Minggu 4
dan Minggu 5
■ Perbedaan goal programming dengan linear programing
■ Pengertian hard constrain dan soft constrain
■ Pengertian variabel deviasional
■ Pemodelan permasalahan goal programming.dengan tujuan
yang berprioritas sama.
■ Pemodelan permasalahan goal programming dengan tujuan
yang berprioritas berbeda.
2
Pendahuluan
3
Pendahuluan
4
Ilustrasi Goal Programming
5
Ilustrasi Goal Programming
6
Ilustrasi Goal Programming
7
Langkah-langkah dalam Goal
Programming
■ Tentukan variabel keputusan
Variabel keputusan dalam goal programming sama dengan
variabel keputusan dalam linear programming yaitu variabel
yang memiliki nilai yang menunjukkan kebijakan yang harus
diambil supaya dapat memperoleh hasil yang optimal,
misalnya banyaknya produk yang diproduksi, banyaknya
pekerja, atau variabel lain yang dapat memiliki nilai yang
berkaitan dengan pemakain sumber daya.
8
Langkah-langkah dalam Goal
Programming
Tentukan Deviational Variable untuk Setiap Tujuan
– Deviational variabel merupakan variabel yang nilainya
menunjukkan besarnya penyimpangan solusi dari tujuan yang
diinginkan.
– Deviational variabel dapat dikategorikan menjadi dua kategori
yaitu overachieving deviational variable dan underachieving
deviational variabel.
– Overachieving deviational variable menunjukkan besarnya
kelebihan dari target(hasil yang diinginkan) sedangkan
underachieving deviational variable menunjukkan besarnya
kekurangan dari target.
9
Langkah-langkah dalam Goal
Programming
Formulasikan Pembatas yang meliputi economic constrains
(hard constrains) dan goal constrains (soft constrains)
– Economic constrains (hard constrains) merupakan pembatas yang
harus dipenuhi, tidak boleh dilanggar. Pembatas ini biasanya
berkaitan dengan ketersediaan sumber daya dan atau kebijakan
yang harus dipenuhi
– Goal constrain (soft constrains), berbeda dengan economic
constrain, merupakan pembatas yang masih boleh dilanggar karena
pembatas ini merupakan pembatas yang berkaitan dengan
pencapaian target. Suatu kegiatan selalu memiliki target namun jika
target tidak dapat tercapai kegiatan tersebut masih dapat berjalan.
10
Langkah-langkah dalam Goal
Programming
Formulasikan Fungsi Tujuan
– Fungsi tujuan dalam goal programming selalu minimisasi
besarnya jumlah total penyimpangan dari beberapa tujuan
yang ingin dicapai secara simultan.
– Dalam fungsi tujuan seringkali juga diberi bobot yang
menunjukkan tingkat kepentingan dari tujuan-tujuan yang ada,
tujuan yang lebih penting diberi bobot yang lebih besar.
11
Contoh 1
■ Perusahaan Fastestsolution merupakan perusahaan yang menjual
perangkat lunak untuk perusahaan energi. Perusahaan ini
memperkerjakan beberapa tenaga penjualan yang bertugas untuk
mendapatkan klien baru dan mempertahankan klien lama. dalam
menjalankan tugasnya tenaga penjualan mengunjungi perusahaan-
perusahaan untuk menawarkan produknya.
■ Berdasarkan pengalaman, waktu yang diperlukan untuk
mengunjungi calon klien adalah 3 jam sedangkan waktu yang
diperlukan untuk mengunjungi klien lama adalah 2 jam. Dalam satu
bulan, total jam kerja tenaga penjualan yang dimiliki oleh
perusahaan adalah 640 jam kerja.
■ Bulan ini perusahaan memiliki target untuk mengunjungi 120 klien
baru dan 200 klien lama. Modelkan masalah ini dalam goal
programming sehingga perusahaan dapat menentukan banyaknya
klien baru maupun lama yang harus dikunjungi.
12
Langkah 1 dan Langkah 2
13
Langkah 3 Tentukan
Deviational Variabel
D1+ : besarnya kelebihan dari target banyaknya klien baru
yang akan dikunjungi (overachieving deviational
variable)
D1- : besarnya kekurangan dari target banyaknya klien
baru yang akan dikunjungi (underachieving
deviational variabel).
D2+ : besarnya kelebihan dari target banyaknya klien lama
yang akan dikunjungi (overachieving deviational
variable)
D2- : besarnya kekurangan dari target banyaknya klien
lama yang akan dikunjungi (underachieving
deviational variabel).
14
Langkah 4 Formulasikan pembatas yang
meliputi economics constrain(hard
constrains) dan goal constrains(soft
constrains)
Economics constrains (hard constrains)
3X1 + 2X2 ≤ 640
Pembatas diatas memiliki arti banyaknya jam kerja yang
digunakan oleh tenaga penjualan tidak bisa melebihi jam
kerja tenaga penjualan total yang dimiliki.
Goal constrains
X1 + D1- - D1+ = 200;
X2 + D2- - D2+ = 120;
X1 , X2 , D1- , D1+ ,D2- , D2+ ≥ 0;
15
Tetapkan Fungsi Tujuan
Fungsi Tujuan
Minimisasi Z = D1- + D2-
16
Model Lengkap Goal
Programming
Fungsi Tujuan
Minimisasi : Z = D1- + D2-
Pembatas
2X1 + 3X2 ≤ 640;
X1 + D1- - D1+ = 200;
X2 + D2- - D2+ = 120;
X1, X2 , D1+, D1-, D2+, D2- ≥ 0.
17
Solusi Grafis
18
Solusi Grafis
19
Solusi Lingo 8
20
Contoh 2
■ Sebuah perusahaan memproduksi produk 1 dan produk 2, kedua produk
tersebut dibuat dari bahan baku yang sama yaitu bahan baku A, bahan baku B
dan bahan baku C. Kebutuhan bahan baku untuk produk 1 dan produk 2 serta
ketersediaan bahan baku adalah sebagai berikut:
21
Tentukan Variabel keputusan dan deviational Variable
22
Tentukan Economic Constrains (hard Constrains)
Pembatas
0.4 X1 + 0.5 X2 ≤ 20;
0.2 X2 ≤ 5;
0.6 X1 + 0.3 X2 ≤ 21;
23
Tentukan Pembatas yang
berkaitan dengan tujuan
(Goal)
Pesanan produk 1 yang telah diterima adalah 30 ton sehingga
perusahaan menargetkan X1 = 30,
Namun karena bahan baku yang terbatas, banyaknya produk 1 yang
diproduksi bisa lebih dari target sebanyak D1+ dan juga bisa kurang
dari target sebanyak D1-.
Hal ini dapat ditulis dalam persamaan matematis sebagai berikut:
X1 = 30 - D1- + D1+ atau X1 + D1- - D1+ = 30;
24
Tentukan Pembatas yang
berkaitan dengan tujuan (Goal)
Logika yang sama juga digunakan untuk memformulasikan
pembatas yang berkaitan dengan tujuan yang kedua.
Pesanan produk 2 yang telah diterima adalah 15 ton sehingga
perusahaan menargetkan X2 = 15,
Namun karena bahan baku yang terbatas, banyaknya produk 2 yang
diproduksi bisa lebih dari target sebanyak D2+ dan juga bisa kurang
dari target sebanyak D2-.
Hal ini dapat ditulis dalam persamaan matematis sebagai berikut:
X2 = 15 – D2- + D2+ atau X2 + D2- - D2+ = 15;
25
Tentukan Fungsi Tujuan
Perusahaan mengusahakan supaya kekurangan produksi
seminimal mungkin.
fungsi tujuan adalah minimisasi banyaknya kekurangan
dari target produk 1 yang harus diproduksi
(underachieving deviational variabel) dan banyaknya
kekurangan dari target produk 2 yang harus diproduksi
(underachieving deviational variabel).
26
Model Lengkap Goal
Programing
Fungsi Tujuan
Minimisasi : Z = D1- + D2-
Pembatas
0.4 X1 + 0.5 X2 ≤ 20;
0.5 X2 ≤ 5;
0.6 X1 + 0.3 X2 ≤ 21;
X1 + D1- - D1+ = 30;
X2 + D2- - D2+ = 15;
X1, X2 , D1+, D1-, D2+, D2- ≥ 0.
27
Solusi Grafis
28
Solusi Lingo
29
Contoh 3
Perusahaan Maju Sejahtera memproduksi produk A dan Produk B. Kedua produk ini
diproduksi melalui dua proses yaitu pemotongan dan perakitan. Kapasitas yang
tersedia untuk stasiun kerja pemotongan adalah 12 jam dan perakitan adalah 30
jam. Bulan depan perusahaan berencana untuk melakukan penataan ulang lay out
pabrik dan perbaikan sarana penunjang pabrik sehingga hal ini sedikit banyak akan
mengganggu kinerja perusahaan. Menyadari hal ini, pihak manajemen menetapkan
beberapa target yang ingin dicapai selama masa penataan ulang pabrik. Target-
target tersebut meliputi:
Target 1 : memperoleh keuntungan minimal sebesar 30 juta.
Target 2 : menghindari adanya pemutusan hubungan kerja karyawan stasiun kerja
pemotongan sehingga perusahaan menargetkan untuk menggunakan
kapasitas stasiun kerja pemotongan secara penuh.
Target 3 : menghindari adanya kerja lembur pada stasiun kerja perakitan.
Target 4 : memenuhi semua pesanan yang telah diterima yaitu 17 unit produk B.
Modelkan masalah ini dalam goal programming! (waktu proses setiap produk pada
setiap stasiun kerja silahkan ditentukan sendiri dan Laba setiap produk silahkan
tentukan sendiri.)
30
Tentukan variabel keputusan
X1 : banyaknya produk A yang diproduksi
X2 : banyaknya produk B yang diproduksi
D1- : besarnya kekurangan dari target keuntungan (underachieving deviational
variabel).
D1+ : besarnya kelebihan dari target keuntungan (overachieving deviational variabel).
D2- : besarnya kekurangan dari target penggunaan kapasitas pada stasiun kerja
pemotongan.
D2+ : besarnya kelebihan dari target penggunaan kapasitas pada stasiun kerja
pemotongan
D3- : besarnya kekurangan dari target penggunaan kapasitas pada stasiun kerja
perakitan
D3+ : besarnya kelebihan dari target penggunaan kapasitas pada stasiun kerja
perakitan
D4- : besarnya kekurangan dari target produksi produk B
D4+ : besarnya kelebihan dari target produksi produk B
31
Tentukan Soft Constrains dan Hard Constrains
32
Tentukan Soft Constrains
dan Hard Constrains
Hard constrain dari permasalahan ini didominasi oleh pembatas yang
berkaitan dengan tujuan 2 dan tujuan 3 sehingga hard constrain dapat
diabaikan. Hal ini menyebabkan pembatas secara keseluruhan menjadi:
6 X1 + 7 X2 + D1- - D1+ = 30
2X1 + 3 X2 + D2- - D2+ = 12
6X1 + 5 X2 + D3- - D3+ = 30
X2 + D4- - D4+ =7
X1 , X2 , D1- , D1+, D2- ,D2+ ,D3- , D3+, D4- ,D4+ ≥ 0
33
Fungsi Tujuan
34
Formulasi Model Lengkap
Goal Programming.
Fungsi Tujuan
Minimisasi Z = D1- + D2- + D3+ + D4-
Pembatas
6 X1 + 7 X2 + D1- - D1+ = 30 (pembatas untuk tujuan ( target) 1)
2X1 + 3 X2 + D2- - D2+ = 12 (pembatas untuk tujuan ( target) 2)
6X1 + 5 X2 + D3- - D3+ = 30 (pembatas untuk tujuan ( target) 3)
X2 + D4- - D4+ = 7 (pembatas untuk tujuan ( target) 4)
X1 , X2 , D1- , D1+, D2- ,D2+ ,D3- , D3+, D4- ,D4+ ≥ 0
Dody Hartanto 35
Contoh 4
■ Permasalahan yang sama dengan contoh 4 namun
pihak manajemen memiliki prioritas yang berbeda-
beda untuk setiap tujuan. Prioritas keempat target
tersebut adalah sebagai berikut:
Dody Hartanto 36
Solusi
Jika setiap tujuan memiliki prioritas yang berbeda maka
formulasi goal programming dilakukan dengan cara
memberikan bobot yang lebih besar untuk tujuan yang lebih
penting. Pada kasus di contoh 5 bobot bisa diberikan sebagai
berikut :
Tujuan Prioritas Bobot pada
ke- fungsi tujuan
Tujuan 1 memperoleh keuntungan, minimal sebesar 30 juta. 1 40
Tujuan 2 menghindari adanya pemutusan hubungan kerja karyawan 2 30
stasiun kerja pemotongan
Tujuan 3 menghindari adanya kerja lembur pada stasiun kerja perakitan 3 20
Tujuan 4 memenuhi semua pesanan yang telah diterima yaitu 7 unit 4 10
produk B
Dody Hartanto 37
Pemberian Bobot pada Tujuan
dengan Prioritas yang Berbeda
■ Tujuan yang lebih penting diberi bobot yang lebih tinggi
■ Perhatikan masalah linear programming berikut ini:
Minimisasi
Z = 1000 X1 + X2
Pembatas
X1+ X2=1
X1,X2 ≥0
Solusi dari masalah ini bisa dipastikan X1 = 0 dan X2= 1 karena pada masalah
minimisasi sangat menghindari memberikan nilai dengan koefisien yang besar.
Jika dalam goal programming diberikan bobot yang besar pada variabel deviasional
yang berkaitan dengan tujuan yang berprioritas tinggi maka goal programming akan
sangat menghindari untuk memberikan nilai yang besar pada variabel deviasional
tersebut. Atau dengan kata lain akan sangat menghindari untuk tidak memenuhi
tujuan tersebut.
Dody Hartanto 38
Perubahan pada Fungsi
Tujuan
Fungsi tujuan menjadi
Minimisasi Z = 40 D1- + 30 D2- + 20 D3+ + 10 D4-
Bobot tidak harus seperti pada tabel diatas, bisa juga, misalnya tujuan 1
diberi bobot 7, tujuan 2 diberi bobot 4, tujuan 3 diberi bobot 3 dan tujuan
keempat diberi bobot 1.
Pemberian bobot disesuaikan dengan tingkat prioritas tujuan.
Jika salah satu tujuan memiliki prioritas yang jauh lebih penting
dibandingkan dengan tujuan yang lain maka prioritas tersebut harus diberi
bobot yang juga jauh lebih besar jika dibandingkan tujuan yang dinilai
kurang penting.
Dody Hartanto 39
Model Lengkap Goal
Programming
Pembatas tetap sama dengan kasus pada contoh 4 sehingga formulasi
secara keseluruhan adalah:
Fungsi tujuan:
Minimisasi Z = 40 D1- + 30 D2- + 20 D3+ + 10 D4-
Pembatas:
6 X1 + 7 X2 + D1- - D1+ = 30
2X1 + 3 X2 + D2- - D2+ = 12
6X1 + 5 X2 + D3- - D3+ = 30
X2 + D4- - D4+ =7
X1 , X2 , D1- , D1+, D2- ,D2+ ,D3- , D3+, D4- ,D4+ ≥ 0
Dody Hartanto 40
Review Question
Dody Hartanto 41