Goal
Programming
Ir. Arrazy Elba Ridha, [Link]., MT
Capaian Pembelajaran
1. Defenisi Goal Programming
2. Goal Programming
3. Perbedaan goal programming dengan linear programming
4. Contoh Soal
5. Penyelesaian dengan Lingo
Pendahuluan
❑ Banyak permasalahan dimana keputusan yang diambil harus dapat memenuhi
beberapa (lebih dari satu) tujuan secara simultan.
❑ Hal ini menyebabkan pengambil keputusan akan sangat sulit untuk memenuhi
semua tujuan tanpa “mengorbankan” tujuan yang lain sehingga seringkali solusi
yang diperoleh merupakan solusi yang ”memuaskan” dan bukan solusi yang
optimal.
3
DEFENISI
Menurut Render, Stair Jr dan Hanna (2012:468) Goal
Programming merupakan suatu metode yang
dikembangkan dari metode sebelumnya yaitu Linear
Programming. Goal Programming ini digunakan dalam
menangani beberapa masalah dalam pengambilan
suatu keputusan, yang melibatkan lebih dari satu
tujuan (multi-objective) yang ingin dicapai oleh
perusahaan. Goal Programming ini terlebih dahulu
menentukan hierarki prioritas, dimulai dari fungsi tujuan
dengan prioritas yang tinggi hingga rendah dan
mencoba untuk meminimalisasi penyimpangan dan hal-
hal yang dapat dimaksimalkan dengan batasan-
batasan tertentu dengan meminimalkan jumlah variabel
deviasi.
Pendahuluan
❑ Permasalahan optimisasi dengan lebih dari satu tujuan dapat diselesaikan
dengan goal programming.
❑ Goal programming merupakan pengembangan dari linear programming.
❑ Perbedaan utama antara goal programming dengan linear programming adalah
pada fungsi tujuan. Pada linear programming hanya terdapat satu tujuan
sedangkan pada goal programming terdapat lebih dari satu tujuan (multi
objective).
5
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 pemakaian sumber daya.
6
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 (D1+) menunjukkan besarnya kelebihan
dari target(hasil yang diinginkan) sedangkan underachieving deviational
variable (D1-) menunjukkan besarnya kekurangan dari target.
7
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.
8
Langkah-langkah dalam Goal Programming
Formulasikan Fungsi Tujuan
○ Fungsi tujuan dalam goal programming selalu minimisasi besarnya
jumlah 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.
9
Meminimalkan Deviasi Goal Programming
Variabel deviasi dalam GP bisa berbentuk 𝑑1− − 𝑑1+ 𝑎𝑡𝑎𝑢 𝑆1− − 𝑆2+
Variabel tersebut didefenisikan sebagai :
𝑆1+ : 𝐾𝑒𝑙𝑒𝑏𝑖ℎ𝑎𝑛 𝑑𝑎𝑟𝑖 𝑡𝑒𝑟𝑝𝑒𝑛𝑢ℎ𝑖𝑛𝑦𝑎 𝑡𝑢𝑗𝑢𝑎𝑛 𝑘𝑒 − 𝑖
𝑆1− : 𝐾𝑒𝑘𝑢𝑟𝑎𝑛𝑔𝑎𝑛 𝑑𝑎𝑟𝑖 𝑡𝑒𝑟𝑝𝑒𝑛𝑢ℎ𝑖𝑛𝑦𝑎 𝑡𝑢𝑗𝑢𝑎𝑛 𝑘𝑒 − 𝑖
Contoh Tujuan : Sebuah pembisnis mendapatkan untung melebihi targetnya,
tagetnya : 40 Juta/Bulan Realisasi : 50 Juta/bulan
7𝑋1 + 3𝑋2 = 50 ≥ 40
10
Goal Programming Algorithms
Representing the multiple goals by a single objective function
Weight Method Preemtive Methods
The single objective function is Starts by prioritizing
the weighted sum of the the goals in order of
functions representing the importance
goals of the promblem
Contoh Kasus
● Ayniland merupakan agen periklanan yang baru berdiri dengan jumlah karyawan sebanyak
10 orang. Ayniland menerima kontrak untuk mempromosikan produk baru. Ayniland
mempromosikan melalui radio dan televisi. Tabel berikut menunjukkan jumlah orang yang
dijangkau setiap hari oleh setiap jenis iklan serta persyaratan tenaga kerja :
Radio Televisi
Jangkauan (dalam juta orang) / menit 4 8
Biaya (dalam ribuan dollar) / menit 8 24
Karyawan yang dianggarkan/menit 1 2
Contoh Kasus - 1
● Kontrak melarang Ayniland menggunakan lebih dari 6 menit iklan radio. Selain itu, iklan
radio dan televisi harus menjangkau setidaknya 45 juta orang. Ayniland memiliki sasaran
anggaran $100.000 untuk proyek tersebut. Jika X1 dan X2 merupakan menit yang
dialokasikan untuk iklan radio dan televisi, maka formulasi GP untuk masalah tersebut
adalah: −
Minimize G1 = 𝑆1 (𝑇𝑢𝑗𝑢𝑎𝑛 𝐽𝑎𝑛𝑔𝑘𝑎𝑢𝑎𝑛 𝑃𝑒𝑛𝑦𝑖𝑎𝑟𝑎𝑛)
Fungsi Tujuan :
Minimize G2 = 𝑆2+ (𝑇𝑢𝑗𝑢𝑎𝑛 𝐴𝑛𝑔𝑔𝑎𝑟𝑎𝑛)
Perubahan Fungsi GP :
4𝑋1 + 8𝑋2 + 𝑆1− − 𝑆1+ = 45 (𝑇𝑢𝑗𝑢𝑎𝑛𝑔 𝐽𝑎𝑛𝑔𝑘𝑎𝑢𝑎𝑛 𝑃𝑒𝑛𝑦𝑖𝑎𝑟𝑎𝑛)
Fungsi kendala : 4𝑋1 + 8𝑋2 ≥ 45
8𝑋1 + 24𝑋2 + 𝑆2− − 𝑆2+ = 100 (𝑇𝑢𝑗𝑢𝑎𝑛𝑔 𝐴𝑛𝑔𝑔𝑎𝑟𝑎𝑛)
8𝑋1 + 24𝑋2 ≤ 100
𝑋1 + 2𝑋2 ≤ 10 (𝐵𝑎𝑡𝑎𝑠𝑎𝑛 𝑃𝑒𝑘𝑒𝑟𝑗𝑎)
𝑋1 ≤ 6 (𝐵𝑎𝑡𝑎𝑠𝑎𝑛 𝑅𝑎𝑑𝑖𝑜)
𝑋1 , 𝑋2 , 𝑆1− , 𝑆1+ , 𝑆2− , 𝑆2+ ≥ 0
Contoh Kasus – 1 (2)
● Manajemen Ayniland memperkirakan bahwa tujuan jangkauan penyiaran dua kali lebih
penting dari tujuan anggaran. Fungsi objektif gabungan menjadi :
Fungsi Tujuan : Minimize z = 2𝐺1 + 𝐺2 = 2𝑆1− + 𝑆2+
Pengerjaan : ?
Pengerjaan Weight Method
● Manajemen Ayniland memperkirakan bahwa tujuan jangkauan penyiaran dua kali lebih
penting dari tujuan anggaran. Fungsi objektif gabungan menjadi :
● Min = 2*S1_min + S2_plus;
● 4*x1 + 8*x2 + S1_min - S1_plus = 45;
● 8*x1 + 24*x2 + S2_min - S2_plus = 100;
● x1 + 2*x2 <= 10;
● x1 <= 6;
● End
Pengerjaan Weight Method
● Solusi optimum adalah z = 10, x1 = 5 menit, x2 = 2,5 menit, 𝑠1− = 5 𝑗𝑢𝑡𝑎 𝑜𝑟𝑎𝑛𝑔 𝑠1+ =
0 𝑑𝑎𝑛 𝑠2+ = 0. Secara khusus 𝑠1− = 5 berarti bahwa tujuan eksposur (setidaknya 45 juta
orang) tidak tercapai (Kurang 5 juta orang). Sebaliknya tujuan (tidak melebihi $100.000)
tidak dilanggar, karena 𝑠2+ = 0
● Meskipun GP disajikan dalam konteks LP yang dioptimalkan, hasil akhirnya mencari solusi
yang memuaskan daripada solusi yang optimal
● Kesimpulan ini dapat dibuktikan dengan contoh soal diatas dimana nilai “Optimum” pada
pemodelan GP adalah x1=5 menit dan x2= 2,5 menit dengan jangkauan penyiaran 40 juta
orang dan biaya $100.000.
● Sebaliknya jika nilai x1 = 6 menit dan x2 = 2 menit, maka jangkauan penyiaran tetap 40 juta
orang (4x6 + 8x2) namun biayanya $96.000 (8x6 + 24x2). Kesimpulan pencarian dari Gp
adalah menemukan solusi yang memuaskan
Pengerjaan Preemptive Method
● Dari soal sebelumnya kita tentukan prioritasnya:
● Minimize G1 = p1 (prioritas tertinggi)
● Minimize Gn = pn (prioritas terkecil)
● Prioritas 1 : Memaksimalkan jangkauan Penyiaran (p1)
● Prioritas 2 : Meminimalkan biaya (p2)
● Secara matematis, fungsi tujuan menjadi :
● Memaksimalkan p1 = 4x1 + 8x2 (jangkauan Penyiaran)
● Meminimalkan p2 = 8x1 + 24x2 (Biaya siaran)
Pengerjaan Preemptive Method
● Manajemen Ayniland memperkirakan bahwa tujuan jangkauan penyiaran dua kali lebih
penting dari tujuan anggaran. Fungsi objektif gabungan menjadi :
● !Step 1;
● !Max = 4*x1 + 8*x2;
● !x1 + 2*x2 <= 10;
● !x1 <= 6;
● !x1 >= 0;
● !x2 >= 0;
● !Step 2;
● !Min = 8*x1 + 24*x2;
● !Subject to;
● !x1 + 2*x2 <= 10;
● !x1 <= 6;
● !4*x1 + 8*x2 >= 40;
● !x1 >= 0;
● !x2 >= 0;
● End
TERIMA KASIH