Download - PROGRAMA LINIER

Transcript
Page 1: PROGRAMA LINIER

PROGRAMA LINIER

Konsep dasar

• Matematis: mencari kondisi optimal dari sebuah fungsi (tujuan) linier berdasarkan satu sistem fungsi pembatas linier.

• Praktis: alokasi sumber daya terbatas untuk mencapai sebuah tujuan optimal.

Page 2: PROGRAMA LINIER

Sumber Daya P r o d u k Tersedia1 … j … n

1 a11 … a1j … a1n b1

: : : : : : :i ai1 … aij … ain bi

: : : : : : :m am1 … amj … amn bm

Laba/Cost C1 … Cj … Cn :

Masalah dan Formulasi

00;/1

jjj

n

jj CatauCXCZMinMax ij

n

jij bXa

1

ij

n

jij bXa

1

ij

n

jij bXa

1

TujuanPembatas

Page 3: PROGRAMA LINIER

Metoda Grafis1. Buat sistem koordinat salib sumbu (Kuadran I)2. Gambarkan fungsi pembatas untuk memperoleh

daerah fisibel dan titik-titik fisibelnya3. Subtitusikan koordinat masing-masing titik fisibel ke

dalam fungsi tujuan, dan pilih nilai yang terbesar (maksimasi) atau terkecil (minimasi), atau

4. Gunakan garis selidik dengan menggambarkan garis fungsi tujuan. Jika garis selidik digambar di luar daerah fisibel, maka titik optimalya adalah titik yang pertama kali tersentuh garis tersebut (maksimasi) atau yang terakhir tersentuh (minimasi), kecuai titik nol (0,0)

Page 4: PROGRAMA LINIER

Contoh

Sebuah perusahaan membuat dua jenis produk (A dan B). Laba masing-masing adalah $ 1 dan $ 1,5 per unit. Kedua jenis produk dibuat melalui tiga deparemen (1, 2, dan 3). Produk A membutuhkan waktu di tiap departemen selama 2, 1, dan 4 jam sedangkan produk B selama 2 jam (di tiap departemen). Jika jam kerja yang tersedia di tiap departemen masing-masing adalah 160, 120, dan 280 jam per minggu masing-masing jenis produk harus dibuat agar diperoleh laba maksimum?

Page 5: PROGRAMA LINIER

Solusi

Dept.Waktu proses (jam per unit)

WaktuProduk A Produk B

1 2 2 1602 1 2 1203 4 2 280

Laba $1 $ 1,5

21 5,1)( XXZMax

0,

28024

1202

16022

21

21

21

21

XX

XX

XX

XX

Page 6: PROGRAMA LINIER

20

40

60

80

140

20 60 70 80 120

X2

X1

(3)

(1)

(2)

A

B

C

D

Daerah Feasible: O-A-B-C-D

Titik Feasible:A(0,60) Z=90B(40.40) Z=100C(60,20) Z=90D(70,0) Z=70

O

Page 7: PROGRAMA LINIER

Metoda Simplex1. Ubah bentuk umum ke bentuk standar

(fungsi pembatas bertanda =) dengan cara menambah slack variabel (S) pada ruas kiri fungsi pembatas bertanda dan mengurangi ruas kiri fungsi pembatasa bertanda dengan surplus variabel (U) sehingga

00;/1

jjj

n

jj CatauCXCZMinMax

0;1

iiij

n

jij WbWXa

2. Buat tabel solusi awal (TSA) spb

Page 8: PROGRAMA LINIER

Tabel Solusi Awal (TSA)

BasisNon Basic Variabel (nbv) Basic Variabel (bv)

Ruas KananX1 Xj Xn W1 … Wj … Wm

Z C1 Cj Cn 0 0 0 0

W1 a11 … a1j … a1n 1 … 0 … 0 b1

: : : : : : : : : : :

Wj ai1 … aij … ain 0 … 1 … 0 bi

: : : : : : : : : : :

Wm am1 … amj … amn 0 … 0 … 1 bm

3. Melakukan iterasi Simplex• Pilih entering variabel, yaitu nbv dengan Cj paling negatif

(mak) atau Cj paling positif (min). Jika ada lebih dari satu, pilih salah satu. Dan perhatikan nilai-nilai aij > 0 di

kolom var ini, sebut aij. Jika semua ais 0, stop

(unbounded solution) kondisi/isyarat optimal

Page 9: PROGRAMA LINIER

• Pilih leaving variabel, yaitu bv pada baris dengan Min. {bi/ais; ais > 0 }. Jika ada lebih dari satu, pillih salah satunya kondisi/syarat fisibel

• Persamaan pivot baru baru (ppb), yaitu baris pivot dibagi dengan elemen pivot (elemen pada sel irisan antara baris leaving variabel dan klom entering variable)

• Buat tabel solusi baru dengan elemen awal ppb• Misal, ppb berasal dari baris r dan entering

variabel ada pada kolom s. Maka, baris lain pada tabel baru dihitung, dengan formula

Z baru = (Z lama) – (Cs) x ppbbv baru = (bv lama) – (ais) x ppb ;

untuk i s• Jika Cj pada kolom nbv semuanya positif (mak)

atau semua negatif (minimasi), stop (solusi sudah optimal). Jika masih ada yang negatif (maksimasi) atau masih ada yang positif (minimasi), kembali ke langkah 1!

Page 10: PROGRAMA LINIER

Contoh

Sebuah perusahaan membuat dua jenis produk (A dan B). Laba masing-masing adalah $ 1 dan $ 1,5 per unit. Kedua jenis produk dibuat melalui tiga deparemen (1, 2, dan 3). Produk A membutuhkan waktu di tiap departemen selama 2, 1, dan 4 jam sedangkan produk B selama 2 jam (di tiap departemen). Jika jam kerja yang tersedia di tiap departemen masing-masing adalah 160, 120, dan 280 jam per minggu masing-masing jenis produk harus dibuat agar diperoleh laba maksimum?

Page 11: PROGRAMA LINIER

Solusi Simplex

Tujuan:Max. Z = X1 + 1,5 X2 atau

Z - X1 - 1,5 X2 + 0S1 + 0S2 + 0S3 = 0

Pembatas:(1) 2X1 + 2 X2 + S1 = 160 Departemen 1(2) X1 + 2 X2 + S2 = 120 Departemen 2(3) 4X1 + 2 X2 + S3 = 280 Departemen 3

S1, S2, S3, X1, X2 0

Page 12: PROGRAMA LINIER

Nbv bvRuas

KananBasis X1 X2 S1 S2 S3

Z -1 -3/2 0 0 0 0S1 2 2 1 0 0 160

S2 1 2 0 1 0 120

S3 4 2 0 0 1 280

Tabel Solusi Awal (TSA)

Maka, ppb = baris X2 = ( 1/2 1 0 1/2 0 60 )

Z1 = Z0 - C2 x ppb = ( 1/4 0 0 3/4 0 90 ) S1

1 = S10 - a12 x ppb = ( 1 0 1 -1

0 40 ) S3

1 = S30 - a32 x ppb = ( 3 0 0 -1

1 160 )

Basis X1 X2 S1 S2 S3 RK

Z -¼ 0 0 ¾ 0 90

S11 0 1 -1 0 40

X2½ 1 0 ½ 0 60

S33 0 0 -1 1 160

Page 13: PROGRAMA LINIER

Basis X1 X2 S1 S2 S3 RK

Z 0 0 ¼ ¾ 0 100

X1 1 0 1 -1 0 40

X2 0 1 -1/2 1 0 40

S3 0 0 -3 2 1 40

Semua Cj untuk nbv positif, solusi optimal telah didapat, yaitu:• Laba maksimum: $ 100 per minggu,

jika• Produk 1 dan Produk 2 masing-masing

sebanyak 40 unit,• dengan sisa waktu di departemen C: 40

jam.

Page 14: PROGRAMA LINIER

Min. Z = 4X1+ X2, dengan pembatas

(1) 3X1 + X2

= 3(2) 4X1 + 3X2 6(3) X1 + 2X2

4X1,

X2 0

Tambah S pada (3) dan (2) kurangkan dengan dengan U didapatMin. Z = 4X1+ X2, dengan pembatas :(1) 3X1 + X2 = 3(2) 4X1 + 3X2 – U = 6 (3) X1 + 2X2 + S = 4

U,S, X1, X2 0

Teknik - M

Tambahakan artificial variabel (R) ke fungsi pembatas bertanda “” dan “=” (pembatas (1) dan (2). Koefisien R dalam fungsi tujuan adalah M (minimasi) atau –M (maksiasi), dimana M merupakan bilangan positif yang sangat besar (M>>>0). Maka,

Page 15: PROGRAMA LINIER

Min. Z = 4X1+ X2 + MR1 + MR2, dengan pembatas:

(1) 3X1+ X2 + R1 = 3

(2) 4X1+ 3X2 – U + R2 = 6

(3) X1 + 2X2 + S = 4 R1, R2, U, S, X1, X2 0Dari pembatas (1) dan (2) didapat

:

R1 = 3 – 3X1 – X2 R2 = 6 – 4X1 – 3X2 + U

Subtitusikan ke dalam fungsi tujuan, diperoleh:

Min. Z = 4X1+ X2 + M (3 – 3X1 – X2 ) + M (6 – 4X1 – 3X2 + U) atauMin. Z = (4 – 7M)X1 + (1 - 4M )X2 + MU + 9M, dengan pembatas:

(1) 3X1+ X2 + R1 = 3(2) 4X1+ 3X2 – U + R2 = 6(3) X1+ 2X2 + S = 4

R1, R2, U, S, X1, X2 0

Page 16: PROGRAMA LINIER

Basisnbv bv

RKX1 X2 U R1 R2 S

Z 7M – 4 4M – 1 –M 0 0 0 9MR1 3 1 0 1 0 0 3

R2 4 3 –1 0 1 0 6S 1 2 0 0 0 1 4

Tabel Solusi Awal (TSA)

Dengan algoritma simpex diperoleh Tabel Solusi Optimal (TSO)

Basisnbv bv

RKX1 X2 U R1 R2 S

Z 0 0 0 (7/5) – M –M –1/5 17/5X1 1 0 0 2/5 0 –1/5 2/5

X2 0 1 0 –1/5 0 3/5 9/5

U 0 0 1 1 –1 1 1

Page 17: PROGRAMA LINIER

Metoda Dual Simplex1. Pilih leaving variable (baris pivot), yaitu

baris dengan Min. {bj ; bj < 0}, misal ada pada baris r. Jika tidak ada, stop (solusi sudah fisibel).

2. Pilih entering variable(kolom pivot), yaitu klom nbv dengan Min. { Cj/arj; arj < 0} untuk meminimasi, atau Min. { Cj/arj ; arj < 0 } untuk maksimasi.

3. Buat ppb sperti pada primal simplex, dan buat Tabel Iterasi 1.

4. Jika ruas kanan tidak ada lagi yang negatif dan Cj untuk nbv tidak ada lagi yang negatif (minimasi) atau tidak ada lagi yang positif (minimasi), stop (solusi sudah optimal dan fisibel). Jika tidak, kembali ke langkah 1.

Page 18: PROGRAMA LINIER

Min. Z = 3X1 + 2X2 dengan pembatas

(1)3X1 + 2X2 3(2)4X1 + 3X2 6(3) X1 + X2 4 X1, X2 0

Jika pembatas (1) & (2) dikalikan dengan -1, didapat

Min. Z = 3X1 + 2X2, dengan pembatas

(1)-3X1 - X2 -3

(2)-4X1 - 3X2 -6

(3) X1 + X2 4S1, S2, S3 0X1, X2 0

Page 19: PROGRAMA LINIER

Bentuk standar :

Min. Z = 3X1 + 2X2, dengan pembatas

(1)-3X1 – X2 + S1 = -3(2)-4X1 – 3X2 + S2 = -6(3) X1 + X2 + S3 =

4S1, S2, S3 , X1, X2 0

Basisnbv bv

RKX1 X2 S1 S2 S3

Z -3 -2 0 0 0 0S1 -3 -1 1 0 0 -3

S2 4 -3 0 1 0 -6

S3 1 1 0 0 1 3

Tabel 2.11 Solusi Awal

Page 20: PROGRAMA LINIER