41
Goal Programming Goal Programming

Goal Programming

  • Upload
    viveca

  • View
    164

  • Download
    6

Embed Size (px)

DESCRIPTION

Goal Programming. Konsep-konsep Dasar dan Unsur-unsur LGP. LGP pengembangan dari LP - PowerPoint PPT Presentation

Citation preview

Page 1: Goal Programming

Goal ProgrammingGoal Programming

Page 2: Goal Programming

Konsep-konsep Dasar dan Unsur-unsur LGP

• LGP pengembangan dari LP

• LP fungsi tujuannnya hanya mengandung 1 tujuan. LGP satu atau lebih tujuan digabungkan dalam 1 fungsi tujuan. Tujuan diekspresikan dalam kendala tujuan (goal constrain) dan variabel simpangan (deviation variable)

• Pada LP tujuannya adalah maksimasi atau minimasi. Sedangkan LGP tujuannya adalah meminimumkan simpangan.

Page 3: Goal Programming

a. Terminologi LGP Berikut adalah definisi dari beberapa istilah dan lambang

yang biasa digunakan dalam LGP Decision Variabel : variabel keputusan Right Hand Side Values (RHS/NK); nilai-nilai yang

menunjukkan ketersediaan sumberdaya (dilambangkan dengan bi) yang akan ditentukan kelebihan dan kekurtangan penggunaannya.

Goal : keinginan untuk meminimumkan angka penyimpangan dari suatu nilai RHS pada suatu goal constraint tertentu (Tujuan).

Goal Constraint : sinonim dari istilah goal equation, yaitu suatu tujuan yang diekspresikan dalam persamaan matematik dengan memasukkan variabel simpangan.

Page 4: Goal Programming

Preemtive priority factor : suatu sistem urutan (yg dilambangkan dg Pk, dimana k= 1,2,…, k dan k menunjukkan banyaknya tujuan dalam model) yg memungkinkan tujuan-tujuan disusun secara ordinal dalam model LGP. P1 > P2 >>> Pk

P1 merupakan tujuan yg paling pentingP2 merupakan tujuan yg kurang penting dan seterusnya.

Deviational variables: variabel-variabel yg menunjukkan kemungkinan penyimpangan negatif dr suatu nilai RHS kendala tujuan (dalam LGP dilambangkan dengan di

- , dimana I = 1,2,3….,m dan m adalah banyaknya kendala tujuan dalam model) atau penyimpangan positif dari suatu nilai RHS (dilambangkan dengan di

+ . Variabel-variabel ini sama dengan slack variabel dlm LP.

Page 5: Goal Programming

Differential weight (bobot): timbangan matematik yang diekspresikan dengan angka kardinal (dilambangkan dengan wki dimana k = 1,2,3….k; I = 1,2…m) dan digunakan untuk membedakan variabel simpangan I di dalam suatu tingkat prioritas k.

Technological coefficient (koefisien teknologi): nilai-nilai numerik (dilambangkan dengan aij) yg menunjukkan penggunaan nilai bi per unit untuk menciptakan xj.

Page 6: Goal Programming

b. Unsur-unsur LGP

Model LGP paling sedikit terdiri dari tiga komponen : fungsi Tujuan, kendala-kendala tujuan, kendala non negatif.

Fungsi Tujuan

Ada tiga jenis fungsi tujuan dlm LGP.

(I) Minimumkan Z = ∑ di- + di

-

Fungsi tujuan (I) ini digunakan jika variabel simpangan dalam suatu masalah tidak dibedakan menurut prioritas atau bobot.

m

i=1

Page 7: Goal Programming

(II) Minimumkan Z = ∑ Pk (di- + di

+ ) untuk k = 1,2,3….k

Fungsi (II) tujuan kedua diguanakn dalam suatu masalah dimana urutan tujuan-tujuan diperlukan , tetapi variabel simpangan didalam setiap tingkat prioritas memiliki kepentingan yang sama.

(III) Minimumkan Z = ∑ wki (di- + di

+ ) untuk k = 1,2,3….k

Pada fungsi tujuan (III), tujuan-tujuan diurutkan dan variabel simpangan pada setiap tingkat prioritas dibedakan dengan menggunakan bobot yang berlainan wki.

m

i=1

Page 8: Goal Programming

Kendala Tujuan (Goal Constraint)

Kendala Tujuan Variabel Simpangan dlm fungsi Tujuan

Kemungkinan Simpangan

Penggunaan Nilai RHS yg dihilangkan

aij xj + di- = bi di

- negatif = bi

aij xj – di+ = bi di

+ positif = bi

aij xj + di- - di

+ =bi di- neg dan pos bi atau lebih

aij xj + di- - di

+ =bi di- neg dan pos bi atau kurang

aij xj + di- - di

+ =bi di- dan di

+ neg dan pos = bi

aij xj - di+ =bi di

+ (artf) tidak ada pas = bi

Jenis-jenis Kendala Tujuan

Page 9: Goal Programming

Kendala Non Negatif

Seperti dalam LP, variabel-variabel model LGP bernilai lebih besar atau sama dengan nol. Semua model LGP terdiri dari variabel simpangan dan variabel keputusan, sehingga pernyataan non negatif dilambangkan dengan :

xj , di- , di

+ ≥ 0

Kendala Struktural

Diluar 3 komponen yang telah disebutkan. Kendala yang tidak berhubungan langsung dengan tujuan. Krn itu variabel simpangan tidak termasuk pada kendala ini, sehingga kendala ini juga tidak dimasukkan ke dalam fungsi tujuan.

Page 10: Goal Programming

Asumsi Model LGP

Additivitas dan Linieritas; Divisibilitas; Terbatas; Kepastian dan periode waktu statis;

Page 11: Goal Programming

Perumusan Masalah LGP

a) Prosedur Perumusan

- Tentukan variabel keputusan

- Nyatakan sistem kendala

- Tentukan prioritas utama

- Menentukan bobot

- Nyatakan fungsi tujuan

- Nyatakan kendala non negatif

Page 12: Goal Programming

b). Model Tujuan Tunggal

Sebuah perusahaan menghasilkan dua produk, yaitu produk 1 dan produk 2. Masing-masing produk memerlukan waktu untuk ditangani dalam dua bagian, yaitu bagian 1 dan bagian 2. Produk 1 membutuhkan 20 jam dibagian 1 dan 10 jam di bagian 2. Produk 2 membutuhkan 10 jam di bagian dan 10 jam di bagian. Bagian 1 memiliki keterbatasan waktu sampai 60 jam dan bagian 2 sampai 40 jam. Sumbangan keuntungan produk 1 sebesar 40 dan produk 2 sebanyak 80. Tujuan pemilik adalah memaksimumkan keuntungan.

Solusi optimum masalah tersebut melalui metode simpleks adalah X1 = 0, X2 = 4 dan Z = 320.

Page 13: Goal Programming

Perumusan LGP masalah itu (karena tujuannya maksimasi keuntungan, kita tetapkan secara sembarang target keuntungan, misalnya 1000) :

Minimumkan Z = d-

dengan syarat 20x1 + 10X2 ≤ 60

10x1 + 10X2 ≤ 40

40X1 + 80X2 + di- - di

+ = 1000

x1, x2, di- , di

+ ≥ 0

dimana x menunjukkan variabel keputusan dan d merupakan variabel simpangan.

Page 14: Goal Programming

Model Banyak Tujuan Tujuan Banyak Tanpa Prioritas (Prioritas Sama)

Contoh soal sebelumnya (ttg dua produk). Misalnya tujuan tunggal tersebut dimodifikasi sedemikian rupa sehingga disamping tujuan keuntungan, paling sedikit dua unit dari setiap jenis produk diproduksi. Dalam keadaaan ini, pemilik menganggap bahwa penyimpangan satu rupiah dari target keuntungan sama pentingnya dengan penyimpangan satu unit dari target produksi. Perumusan LGP untuk masalah tsb adalah:

Minimumkan Z = d1- + d2

- + d3+

20x1 + 10X2 ≤ 60

10x1 + 10X2 ≤ 40

40X1 + 80X2 + d1- - d1

+ = 1000

X1 + d2- - d2

+ = 2

X2 + d3- - d3

+ = 2

x1, x2, d1- , d1

+ , d2- , d2

+ d3- , d3

+ ≥ 0

Page 15: Goal Programming

Tujuan Banyak dengan Prioritas Masih terkait dengan contoh sebelumnya, jika pemilik

mempertimbangkan banyak tujuan , biasanya memiliki skala prioritas untuk tujuan-tujuan itu. LGP memberikan urutan preferensi tujuan melalui penggunaan keofisien prioritas (P).

Tujuan (variavel simpangan) yg memiliki prioritas pertama diberi nilai fungsi P1, prioritas kedua P2, dan seterusnya. Pada umumnya bukan berbentuk suatu nilai angka tetapi hanya menunjukkan tingkat prioritas.

Anggaplah pemilik menetapkan prioritas seperti berikut:

P1 (prioritas 1) : capai tujuan produksi dua unit untuk setiap jenis produk

P2 (prioritas2) : maksimumkan keuntungan

Page 16: Goal Programming

Minimumkan Z = P1 d2- + P1 d3

+ + P2 d1

-

20x1 + 10X2 ≤ 60

10x1 + 10X2 ≤ 40

40X1 + 80X2 + d1- - d1

+ = 1000

X1 + d2- - d2

+ = 2

X2 + d3- - d3

+ = 2

x1, x2, d1- , d1

+ , d2- , d2

+ d3- , d3

+ ≥ 0

Page 17: Goal Programming

Tujuan Banyak dengan Prioritas dan Bobot

Kadang-kadang kita dihadapkan pada beberapa tujuan dengan urutan yang sama adalah lebih penting dibandingkan tujuan-tujuan lain. Jika demikian, perlu digunakan bobot yang berlainan untuk mencerminkan beda kepentingan dalam tingkat prioritas yang sama

Misal, keuntungan dan waktu lembur dari persoalan yang tadi memiliki urutan prioritas sama. Jika tidak ada bobot, pemilik menganggap bahwa penyimpangan keuntungan satu rupiah sama pentingnya dengan satu jam waktu lembur. Jika sebetulnya tidak demikian, kemudian dapat diberikan bobot yang mencerminkan hubungan yang lebih tepat.

Jika pemilik menetapkan bahwa 6 jam lembur setara dengan keuntungan 1 rupiah, maka akan digunakan bobot 6 banding 1.

Page 18: Goal Programming

Misal sedikit diubah tujuan pada masalah tadi.

Tujuan menghasilkan 2 unit per jenis produk kita rubah, kita menetapkan tujuan untuk memproduksi produk 1 minimal 4 unit dan produk 2 minimal 6 unit. Karena produk 2 menyumbang dua kali profit produk 1, kita seharusnya menghasilkan produk 2 sebelum mulai memproduksi produk 1.

Waktu lembur diperlukan dalam menghasilkan sejumlah produk-produk yang telah ditetapkan. Kita asumsikan tersedia 50 jam lembur. Misalkan kita menetapkan prioritas untuk mencapai tujuan:

Page 19: Goal Programming

P1 : membatasi jumlah jam lembur sampai dengan 50 jam dalam dua kegiatan produksi

P2: memenuhi tujuan jumlah produksi yg ditetapkan untuk tiap produk. Dan berikan bobot 2 untuk produk 1 dan 1 untuk produk 2 karena kentribusi keuntungan Xi = 40 dan X2 = 80

P3 : maksimumkan keuntungan

Minimumkan Z = P1 d6+ + 2 P2 d2

- + 1 P2 d3- + P3

d1-

20x1 + 10X2 + d4- - d4

+ = 60

10x1 + 10X2 + d5- - d5

+ = 40

40X1 + 80X2 + d1- - d1

+ = 1000

X1 + d2- - d2

+ = 4

X2 + d3- - d3

+ = 6

d4+ + d5

+ + d6- - d6

+ = 50

x1, x2, d1- , d1

+ , d2- , d2

+ d3- , d3

+ ≥ 0

Variabel simpangan d4+ dan d5

+ menunjukkan waktu lembur yang diperlukan pada kegiatan 1 dan 2. Variabel d6

+ dimasukkan dalam kendala tujuan untuk mencerminkan kemungkinan melebihi 50 jam lembur.

Page 20: Goal Programming

Formulasi Goal Programming

Step 1: Tetapkan tingkat prioritas tiap goal.Step 1: Tetapkan tingkat prioritas tiap goal.

Step 2: Tetapkan bobot tiap goal.Step 2: Tetapkan bobot tiap goal.

Jika suatu tingkat prioritas mempunyai lebih dari satu goal, untuk tiap goal i ditetapkan bobot, wi , diletakkan pada deviasi, di

+ dan/atau di-, dari goal.

Page 21: Goal Programming

Formulasi Goal ProgrammingFormulasi Goal Programming

Step 3: Bentuk programa linier Step 3: Bentuk programa linier awal. awal.

Min Min ww11dd11++ + + ww22dd22

--

s.t. Batasan Fungsional, dan s.t. Batasan Fungsional, dan and Batasan Goal and Batasan Goal

Step 4: Selesaikan programa linier Step 4: Selesaikan programa linier saat ini. saat ini.

Jika ada suatu tingkat prioritas terendah Jika ada suatu tingkat prioritas terendah ke step ke step

5, Kalau tidak solusi akhir telah dicapai. 5, Kalau tidak solusi akhir telah dicapai.

Page 22: Goal Programming

Formulasi Goal ProgrammingStep 5: Step 5: Bentuk Programa Linier Baru Bentuk Programa Linier Baru

Pertimbangkan tingkat prioritas goal terendah berikutnya dan formulasikan fungsi obyektif yang didasarkan pada goal tersebut. Tambahkan pembatas yang diperlukan untuk mencapai tingkat prioritas tertinggi berikutnya. Programa Linier yang baru adalah :

Min w3d3+ + w4d4

- s.t. Batasan-batasan fungsional, Batasan-batasan Goal, dan

w1d1+ + w2d2

- = k

ke step 4. (Ulangi steps 4 dan 5 sampai semua tingkat prioritas telah diuji.)

Page 23: Goal Programming

Contoh: Conceptual Products

Conceptual Products is a computer company thatproduces the CP400 and CP500 computers. The

computers use different mother boards produced in abundant supply by the

company, but use the same cases and disk drives. The CP400 models use two floppy disk drives and no zip

disk drives whereas the CP500 models use onefloppy disk drive and one zip disk drive.

Page 24: Goal Programming

Contoh: Conceptual Products

The disk drives and cases are bought

from vendors. There are 1000 floppy disk drives,

500 zip disk drives, and 600 cases available to

Conceptual Products on a weekly basis. It takes one hour to manufacture a CP400 and its profit is $200 and it takes one and one-half hours to manufacture a CP500 and its profit is $500.

Page 25: Goal Programming

Contoh: Conceptual Products Ada Empat Goal dari Perusahaan :

Priority 1: Memenuhi kontrak min 200 mesin CP400 tiap minggu. (Goal 1)

Priority 2: Membuat paling sedikit total 500, CP400 dan CP500 tiap minggu. (Goal 2)

Priority 3: Mendapatkan keuntungan paling sedikit $2500 per-minggu. (Goal 3)

Priority 4: Menggunakan tidak lebih 400 man- hours per-minggu. (Goal 4)

Page 26: Goal Programming

VariablesVariables x1 = Jumlah CP400 computers dihasilkan per minggu

x2 = Jumlah CP500 computers dihasilkan per minggu

di- = besaran sisi kanan goal i yang deficient

di+ = besaran sisi kanan goal i yang exceeded

Functional ConstraintsFunctional ConstraintsKetersediaan floppy disk drives: 2x1 + x2 < 1000

Ketersediaan zip disk drives: x2 < 500

Ketersediaan cases: x1 + x2 < 600

Goal Programming: Formulasi

Page 27: Goal Programming

Constrain GoalsConstrain Goals(1) 200 CP400 computers per minggu:

x1 + d1- - d1

+ = 200 (2) 500 total computers per-minggu:

x1 + x2 + d2- - d2

+ = 500 (3) $250(ribu),keuntungan :

2x1 + 5x2 + d3- - d3

+ = 2500 (4) 400 total man-hours per-minggu:

x1 + 1.5x2 + d4- - d4

+ = 400 Non-negativity:

x1, x2, di-, di

+ > 0 for all i

Goal Programming: Formulation

Page 28: Goal Programming

Objective FunctionsObjective Functions

Priority 1: Minimal besaran kontrak : Min d1-

Priority 2: Minimasi jumlah komputer dibawah 500 : Min d2

-

Priority 3: Minimal revenue $2500

yang diperoleh per-minggu: Min d3-

Priority 4: Maximal man-hours 400 yang

digunakan per-minggu: Min d4+

Goal Programming: Formulation

Page 29: Goal Programming

Formulation SummaryFormulation Summary

Min P1(d1-) + P2(d2

-) + P3(d3-) + P4(d4

+)

s.t. 2x1 +x2 < 1000

+x2 < 500

x1 +x2 < 600

x1 +d1- -d1

+ = 200

x1 +x2 +d2- -d2

+ = 500

.2x1+ .5x2 +d3- -d3

+ = 2500

x1+1.5x2 +d4- -d4

+ = 400

x1, x2, d1-, d1

+, d2-, d2

+, d3-, d3

+, d4-, d4

+ > 0

Goal Programming: Formulation

Page 30: Goal Programming

Iteration 1Iteration 1

Menyelesaikan secara grafis, grafik I dari batasan fungsional. Grafik goal I : x1 = 200. Catatan pada slide berikut bahwa ada satu set yang melebihi x1 = 200 (dimana d1

- = 0).

Goal Programming : Solusi Grafik

Page 31: Goal Programming

Batasan Fungsional dan grafik Goal IBatasan Fungsional dan grafik Goal I

22xx11 + + xx22 << 1000 1000

Goal 1: Goal 1: xx11 >> 200 200

xx11 + + xx22 << 600 600xx2 2 << 500 500

Points SatisfyingPoints SatisfyingGoal 1Goal 1

xx11

xx22

Goal Programming:Graphical Solution

200 400 600 800 1000 1200200 400 600 800 1000 1200

10001000

800800

600600

400400

200200

Page 32: Goal Programming

Iteration 2Iteration 2

Tambahkan Goal 1 sebagai x1 > 200 dan grafik Goal 2: x1 + x2 = 500.

Catatan pada slide berikut bahwa masih ada suatu set of points memenuhi goal I yang juga memenuhi goal II (dimana d2

- = 0).

Goal Programming : Solusi Grafik

Page 33: Goal Programming

Goal 1 (Constraint) and Goal 2 GraphedGoal 1 (Constraint) and Goal 2 Graphed

22xx11 + + xx22 << 1000 1000

Goal 1: Goal 1: xx11 >> 200 200

xx11 + + xx22 << 600 600xx2 2 << 500 500

Points Satisfying BothPoints Satisfying BothGoals 1 and 2Goals 1 and 2

xx11

xx22

Goal 2: Goal 2: xx11 + + xx22 >> 500 500

Goal Programming : Solusi Grafik

200 400 600 800 1000 1200200 400 600 800 1000 1200

10001000

800800

600600

400400

200200

Page 34: Goal Programming

Iteration 3Iteration 3

Tambahkan Goal 2 sebagai x1 + x2 > 500 dan Goal 3: .2x1 + .5x2 = 2500

Pada slide berikut tidak ada points memenuhi batasan fungsional sebelumnya dan goals memenuhi batasan ini.

Maka, untuk Min d3-, nilai minimum adalah

dicapai ketika Max .2x1 + .5x2.

Catatan ini terjadi pada x1 = 200 dan x2 = 400, maka .2x1 + .5x2 = 2400 atau d3

- = 100.

Goal Programming : Solusi Grafik

Page 35: Goal Programming

Goal 2 (Constraint) and Goal 3 GraphedGoal 2 (Constraint) and Goal 3 Graphed

10001000

800800

600600

400400

200200

22xx11 + + xx22 << 1000 1000

Goal 1: Goal 1: xx11 >> 200 200

xx11 + + xx22 << 600 600xx2 2 << 500 500

Points Satisfying BothPoints Satisfying Both Goals 1 and 2Goals 1 and 2

xx11

xx22

Goal 2: Goal 2: xx11 + + xx22 >> 500 500

Goal 3: 2Goal 3: 2xx11 + 5 + 5xx22 = 2500 = 2500

(200,400(200,400))

Goal Programming : Solusi Grafik

200 400 600 800 1000 1200200 400 600 800 1000 1200

Page 36: Goal Programming

Kasus Bawika

1.Kapasitas yg tersedia pada fasilitas dimanfaatkan pemrosesan secara optimum2.Kapasitas yg tersedia pada fasilitas dimanfaatkan pengalengan secara optimum3.Produksi X1 paling sedikit 104.Produksi X2 paling sedikit 6 unit

Maka model GLP kasus ini menjadi: d1- -d1

+

Min P1 (d1+ + d1

-) + P2 (d2+ + d2

-) + P3 ( d3-) + P4 ( d4

-) Kendala I 5 X1 + 6 X2 + d1

- -d1+ = 60

II X1 + 2 X2 + d2- -d2

+ = 16 III X1 + d3

- = 10 IV X2 + d4

- = 6Dan X1, X2, d1

+ ,d1- d2

+ d2- d3

- d4- > 0

Goal Programming : Algoritma Simpleks

Page 37: Goal Programming

Cj 0 0 1 1 1 1 1 1

Ci VB X1 X2 d1+ d1

- d2+ d2

- d3- d4

- bi

1111

d1-

d2-

d3-

d4-

5110

6201

-1000

1000

0-100

0100

0010

0001

6016106

Zj 7 9 -1 1 -1 1 1 1

Cj-Zj -7 -9 2 0 2 0 0 0

Tabel awal simpleks kasus bawika tanpa prioritas

Page 38: Goal Programming

Cj 0 0 1 1 1 1 1 1

Pk Ci VB X1 X2 d1+ d1

- d2+ d2

- d3- d4

- bi

P1P2P3P4

1111

d1-

d2-

d3-

d4-

5110

6201

-1000

1000

0-100

0100

0010

0001

6016106

Zj P1P2P3P4

5110

6201

-1000

1000

0-100

0100

0010

0001

6016106

Cj-Zj P1P2P3P4

-5-1-10

-6-20-1

2111

0111

1211

1011

1101

1110

Simpleks awal goal programming dengan prioritas

Page 39: Goal Programming

Cj 0 0 1 1 1 1 1 1

Pk Ci VB X1 X2 d1+ d1

- d2+ d1

- d3- d4

- bi

P1P2P3

1111

d1-

d2 -

d3-

X 2

5110

0001

-1000

1000

0-100

0100

0010

-6-221

244106

Zj P1P2P3

511

000

-100

100

0-10

010

001

-6-22

24410

Cj-Zj P1P2P3

-5-1-1

000

211

011

121

101

110

731

Page 40: Goal Programming

Cj 0 0 1 1 1 1 1 1

Pk Ci VB X1 X2 d1+ d1

- d2+ d1

- d3- d4

- bi

P1P2P3

1111

d1-

X 1 d3

- X 2

0100

0001

-1000

1000

5-110

-51-10

0010

4-221

4466

Zj P1P3

00

00

-10

10

51

-5-1

01

-21

46

Cj-Zj P1P3

00

00

21

01

-40

61

01

-3-1

Iterasi kedua

Lakukan iterasi berikutnya

Page 41: Goal Programming

Cj 0 0 1 1 1 1 1 1

Pk Ci VB X1 X2 d1+ d1

- d2+ d2

- d3- d4

- bi

P4

P3

1111

d2+

X 1 d3

- X 2

0100

0001

-1/4-1/21/21/4

1/41/2-1/2-1/4

-5/43/2-3/2-5/4

0100

0010

1000

1645

Zj P4P3

00

00

-1/41/2

1/4-1/2

-5/4-3/2

00

01

10

14

Cj-Zj P4P3

00

00

5/41/2

3/43/2

9 /45/2

11

11

01

H asil akhir ( H asil iterasi keempat)