• Tidak ada hasil yang ditemukan

Contoh untuk Algoritma Simpleks Dakota’s Problem

N/A
N/A
Protected

Academic year: 2018

Membagikan "Contoh untuk Algoritma Simpleks Dakota’s Problem"

Copied!
33
0
0

Teks penuh

(1)

Linear Programming

(Pemrograman Linier)

Program Studi Statistika

Semester Ganjil 2011/2012

(2)

Contoh untuk Algoritma Simpleks

Dakota’s Problem

Perusahaan furniture Dakota

memproduksi bangku, meja dan kursi.

Untuk setiap jenis furniture dibutuhkan

bahan baku kayu dan 2 jenis waktu

pengerjaan:

fnishing & carpentry

Bahan baku dan waktu pengerjaan

terbatas

Ingin ditentukan jumlah produksi setiap

(3)

Dakota’s Problem dalam Tabel

Sumber daya Bangku Meja Kursi

Ketersedia an

Kayu (m2) 8 6 1 48 Finishing

(jam) 4 2 1.5 20 Carpentry

(jam) 2 1.5 0.5 8 Proft 60 30 20  

Peubah

Keputusan?

kursi

produksi

:#

meja

produksi

:#

bangku

produksi

:#

3 2 1

(4)

LP untuk Dakota’s

Problem

Sumber daya BangkuX1 MejaX2 KursiX3 Ketersediaan Kayu (m2) 8 6 1 48

Finishing

(jam) 4 2 1.5 20 Carpentry

(5)

Algoritma Simpleks

Tentukan BFS:

BV & NBV

Mula i

BFS optimal?

Selesa i

Lakukan iterasi untuk

menentukan BFS: BV & NBV

yang baru

Ya

(6)

Langkah 1 Algoritma Simpleks

Rubah ke bentuk Standar

0

Digunakan slack variabel karena semua kendala ≤

48

Kendala fnishing

(7)

Langkah 1 Algoritma Simpleks

Bentuk Standar LP

0

Baris 0 Baris 1 Baris 2 Baris 3

Modifkasi baris 0 menjadi:

0

(8)

Langkah 1 Algoritma Simpleks

Bentuk Tableau

0

(9)

Langkah 2 Algoritma Simpleks

  z x1 x2 x3 s1 s2 s3 rhs

Baris

0 1 -60 -30 -20 0 0 0 0

Baris

1  0 8 6 1 1 0 0 48

Baris

2  0 4 2 1.5 0 1 0 20

Baris

3  0 2 1.5 0.5 0 0 1 8

Tentukan BFS (BV dan NBV).

BV dapat ditentukan dari elemen tableau yang

berbentuk kanonik.

BV z=0 s1=4

8 s2=2

0 s3=8

s

1

,

s

2

,

s

3

BV

NBV

x

1

,

x

2

,

x

3

8

,

20

,

48

,

0

(10)

Langkah 3 Algoritma Simpleks

Apakah BFS tersebut sudah optimal?

8

,

20

,

48

,

0

:

x

1

x

2

x

3

s

1

s

2

s

3

BFS

 

0

30

 

0

20

 

0

0

60

20

30

60

1 2 3

x

x

x

z

Dapat dilihat dari koefsien baris 0.

  z x1 x2 x3 s1 s2 s3 rhs

Baris

0 1 -60 -30 -20 0 0 0 0

(11)

Langkah 3 Algoritma Simpleks

Interpretasi koefsien baris 0

Bagi

NBV

Variabel dengan Koefsien -c: satu unit penambahan

variabel tsb menaikkan Z sebesar c.

Variabel dengan koefsien +c: satu unit penambahan

variabel tsb menurunkan Z sebesar c.

Variabel dengan koefsien 0: BV

  z x1 x2 x3 s1 s2 s3 rhs

Baris

0 1 -60 -30 -20 0 0 0 0

Semua koefsien bagi NBV adalah < 0

Ada beberapa kemungkinan menaikkan nilai Z

dengan menaikkan nilai peubah keputusan: menambah produksi

(12)

Langkah 3 Algoritma Simpleks

  z x1 x2 x3 s1 s2 s3 rhs

Baris

0 1 -60 -30 -20 0 0 0 0

Produksi satu unit x1 (Bangku) akan menaikkan Z (proft) sebesar 60 ($)

Produksi satu unit x2 (Meja) akan menaikkan Z (proft) sebesar 30 ($)

Produksi satu unit x3 (Kursi) akan menaikkan Z (proft) sebesar 20 ($)

Pilih Entering Variable: Peubah NBV yang meningkatkan Z paling besar, untuk menggantikan salah satu

peubah di BV

1

(13)

Langkah 4 Algoritma Simpleks

Menentukan peubah

BV

yang mana yang akan

digantikan oleh

x

1

Dengan melakukan

Ratio Test

, agar pergantian

peubah tetap berada di dalam wilayah feasibel

  z x1 x2 x3 s1 s2 s3 rhs

Peubah selainn ya

(14)

Langkah 4 Algoritma Simpleks

Semua syarat:

6

,

5

,

4

1 1

1

x

x

x

Terpenuhi pada: di baris 3

4

1

x

Ratio Test: agar pergantian peubah tetap berada di dalam

wilayah feasibel, dipilih peubah dengan nilai ratio test

terkecil

  z x1 x2 x3 s1 s2 s3 rhs

Baris

0 1 -60 -30 -20 0 0 0 0

Baris

1  0 8 6 1 1 0 0 48

Baris

2  0 4 2 1.5 0 1 0 20

Baris

3  0 2 1.5 0.5 0 0 1 8

BV z=0 s1=4

8 s2=2

0 s3=8

 Pada BFS berikutnya x1 adalah peubah NBV yang akan

menggantikan s3 salah satu dari BV

(15)

Langkah 4 Algoritma Simpleks

Elementary Row Operation

(Operasi

baris elementer): operasi antar baris

untuk menentukan bentuk kanonik

yang baru (

BV

&

NBV

yang baru)

Di dalam bentuk kanonik baru:

s

1

,

s

2

,

x

1

BV

NBV

s

3

,

x

2

,

x

3

Peubah di dalam

BV

harus

mempunyai bentuk kanonik

B1 B2 B3

0 0 1

0 1 0

(16)

Operasi Baris Elementer

  z X1 x2 x3 s1 s2 s3 rhs

Baris

0 0 0 0

Baris

1 0 1 0

Baris

2 0 0 1

Baris

3 1 0 0

s

1

,

s

2

,

x

1

BV

NBV

s

3

,

x

2

,

x

3

(17)

Operasi Baris Elementer

Tablea

u 0  z x1 x2 x3 s1 s2 s3 rhs

Baris 0 1 -60 -30 -20 0 0 0 0 Baris 1  0 8 6 1 1 0 0 48 Baris 2  0 4 2 1.5 0 1 0 20 Baris 3  0 2 1.5 0.5 0 0 1 8

BV z=0 s1=48 s2=20 s3=8

 Tablea

u 1 z x1 x2 x3 s1 s2 s3 rhs

Baris 3 0 1 0.75 0.25 0 0 0.5 4

2

) 0 ( 3 )

1 (

3 Baris

Baris

Initial Tableau (Tableau 0):

(18)

Operasi Baris Elementer

Tablea

u 0  z x1 x2 x3 s1 s2 s3 rhs

Baris 0 1 -60 -30 -20 0 0 0 0 Baris 1  0 8 6 1 1 0 0 48 Baris 2  0 4 2 1.5 0 1 0 20 Baris 3  0 2 1.5 0.5 0 0 1 8

BV z=0 s1=48 s2=20 s3=8

 Tablea

u 1 z x1 x2 x3 s1 s2 s3 rhs

Baris 3 0 1 0.75 0.25 0 0 0.5 4

Initial Tableau (Tableau 0):

ERO untuk baris 0, memanfaatkan baris 3 pada tableu 1 (pivot row) Baris0(1) Baris0(0)60*Baris3(1)

(19)

Operasi Baris Elementer

Tablea

u 0  z x1 x2 x3 s1 s2 s3 rhs

Baris 0 1 -60 -30 -20 0 0 0 0 Baris 1  0 8 6 1 1 0 0 48 Baris 2  0 4 2 1.5 0 1 0 20 Baris 3  0 2 1.5 0.5 0 0 1 8

BV z=0 s1=48 s2=20 s3=8

 Tablea

u 1 z x1 x2 x3 s1 s2 s3 rhs

Baris 3 0 1 0.75 0.25 0 0 0.5 4

Initial Tableau (Tableau 0):

ERO untuk baris 1, memanfaatkan baris 3 pada tableu 1 (pivot row) Baris1(1) Baris1(0)8*Baris3(1)

(20)

Operasi Baris Elementer

Tablea

u 0  z x1 x2 x3 s1 s2 s3 rhs

Baris 0 1 -60 -30 -20 0 0 0 0 Baris 1  0 8 6 1 1 0 0 48 Baris 2  0 4 2 1.5 0 1 0 20 Baris 3  0 2 1.5 0.5 0 0 1 8

BV z=0 s1=48 s2=20 s3=8

 Tablea

u 1 z x1 x2 x3 s1 s2 s3 rhs

Baris 3 0 1 0.75 0.25 0 0 0.5 4

Initial Tableau (Tableau 0):

ERO untuk baris 2, memanfaatkan baris 3 pada tableu 1 (pivot row) Baris2(1) Baris2(0)4*Baris3(1)

Baris 0 1 0 15 -5 0 0 30 240 Baris 1 0 0 0 -1 1 0 -4 16

Baris 2 0 0 -1 0,5 0 1 -2 4

(21)

Tableau hasil iterasi: Tableau 1

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV

Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1

BV

0,75

s

10,25

,

s

2

,

x

1

NBV

0

0

s

3

,

x

20,5

,

x

3

4 x1=4

Pada tableau 1:

240 ,

0 ,

4 ,

16 ,

0 ,

4

: x1 x2 x3 s1 s2 s3 z BFS

 Kembali ke langkah 3: Apakah BFS tersebut sudah optimal?

 Lihat koefsien di baris 0, apakah masih ada kemungkinan menaikkan

nilai z dengan menambah nilai peubah keputusan?

Peubah dengan Koefsien baris

0 <0? 3

(22)

Langkah 3 Algoritma Simpleks,

Iterasi ke-2

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV

Baris

0 1 0 15 -5 0 0 30 240 z=240

Produksi satu unit x2 (Meja) akan menurunkan Z (proft) sebesar 15 ($)

Produksi satu unit x3 (Kursi) akan menaikkan Z (proft) sebesar 5 ($)

Pilih Entering Variable: Peubah NBV yang meningkatkan Z paling besar, untuk menggantikan salah satu

peubah di BV

3

x

s

3

,

x

2

,

x

3

NBV

s

1

,

s

2

,

x

1

BV

(23)

Langkah 4 Algoritma Simpleks,

Iterasi 2

Menentukan peubah

BV

yang mana yang akan

digantikan oleh

x

2

Dengan melakukan

Ratio Test

, agar pergantian

peubah tetap berada di dalam wilayah feasibel

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

s

1

,

s

2

,

x

1

BV

Baris 1

x

3

s

1

16

s

1

x

3

16

0

untuk

semua

x

3

0

Pada baris dengan koefsien negatif, tidak

(24)

Langkah 4 Algoritma Simpleks,

Iterasi 2

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

Baris 2

agar

s

2

0

x

3

04.5

8

Baris 3

agar

x

1

0

x

3

0.425

1

6

Pemenang ratio test (terkecil): di baris 2

(25)

Langkah 4 Algoritma Simpleks,

Iterasi 2

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

 Pada BFS berikutnya x3 adalah peubah NBV yang akan

menggantikan s2 salah satu dari BV

 Dengan EROElementary Row Operation

Kolom pivot Kolo

m pivot

Tableau 2 mempunyai bentuk kanonik baru:

 Tableau

2 z X1 x2 X3 s1 s2 s3 rhs

Baris 0 0 0 0

Baris 1 0 0 1

Baris 2 0 1 0

Baris 3 1 0 0

s1,x3,x1

BV

(26)

Operasi Baris Elementer

5 . 0

) 1 ( 2 )

2 (

2 Baris

Baris

Dengan ERO untuk memperoleh Tableau 2: baris 2 didahulukan (pivot row)

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

Tablea

u 2 z x1 x2 x3 s1 s2 s3 rhs

(27)

Operasi Baris Elementer

) 2 ( 2 *

5 . 0 ) 1 ( 0 )

2 (

0 Baris Baris

Baris

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

Tablea

u 2 z x1 x2 x3 s1 s2 s3 rhs

Baris 2 0 0 -2 1 0 2 -4 8

ERO untuk baris 0, memanfaatkan baris 2 pada tableu 2 (pivot row)

(28)

Operasi Baris Elementer

) 2 ( 2 *

) 1 ( ) 1 ( 1 )

2 (

1 Baris Baris

Baris

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

Tablea

u 2 z x1 x2 x3 s1 s2 s3 rhs

Baris 2 0 0 -2 1 0 2 -4 8

ERO untuk baris 1, memanfaatkan baris 2 pada tableu 2 (pivot row)

(29)

Operasi Baris Elementer

) 2 ( 2 *

25 . 0 ) 1 ( 3 )

2 (

3 Baris Baris

Baris

Table

au1   z x1 x2 x3 s1 s2 s3 rhs BV Baris

0 1 0 15 -5 0 0 30 240 z=240

Baris

1 0 0 0 -1 1 0 -4 16 s1=16

Baris

2 0 0 -1 0,5 0 1 -2 4 s2=4

Baris

3 0 1 0,75 0,25 0 0 0,5 4 x1=4

Tablea

u 2 z x1 x2 x3 s1 s2 s3 rhs

Baris 2 0 0 -2 1 0 2 -4 8

ERO untuk baris 3, memanfaatkan baris 2 pada tableu 2 (pivot row)

Baris 0 1 0 5 0 0 10 10 280 Baris 1 0 0 -2 0 1 2 -8 24

(30)

Tableau Hasil Iterasi: Tableau 2

Tablea

u 2 z x1 x2 x3 s1 s2 s3 rhs BV Baris 0 1 0 5 0 0 10 10 280 z=280 Baris 1 0 0 -2 0 1 2 -8 24 s1=24 Baris 2 0 0 -2 1 0 2 -4 8 x3=8 Baris 3 0 1 1.25

0

0 -0.5 1.5 2 x1=2

1 3 1

,

x

,

x

s

BV

NBV

s

3

,

x

2

,

s

2

280 ,

0 ,

24 ,

8 ,

0 ,

2

: x1 x2 x3 s1 s2 s3 z BFS

 Kembali ke langkah 3: Apakah BFS tersebut sudah optimal?  Lihat koefsien di baris 0, apakah masih ada kemungkinan

menaikkan nilai z dengan menambah nilai peubah keputusan?

 Semua koefsien baris 0 >=0. Tidak mungkin lagi

menaikkan nilai z.

(31)

Solusi Optimal Dakota’s Problem

Agar keuntungan maksimum, dan

produksi yang sesuai dengan kendala

(bahan baku dan jam pengerjaan), harus

diproduksi sejumlah 2 buah bangku (x1), 8

buah kursi (x3), tanpa memproduksi meja

kursi

produksi

:#

meja

produksi

:#

bangku

produksi

:#

3 2 1

x

x

x

280 ,

0 ,

24 ,

8 ,

0 ,

2

(32)

Langkah-langkah Algoritma

Simpleks untuk Masalah Max

Langkah 1

Rubah LP ke bentuk standar,

tuliskan dalam bentuk tableau.

Langkah

2

Tentukan BFS (BV dan NBV).

BV dapat ditentukan dari elemen

tableau yang berbentuk kanonik.

Langkah

3

Jika semua koefsien baris 0 >=0,

BFS solusi optimal

Selainnya, pilih koefsien paling

negatif untuk masuk ke dalam BV

Langkah

4

Ratio test (terkecil) untuk

(33)

Langkah-langkah Algoritma

Simpleks untuk Masalah Max

Langkah 4

Lakukan ERO untuk membentuk

bentuk kanonik baru, BFS baru

(Tableau baru)

Referensi

Dokumen terkait

Pada class Babylon Tower terdapat method yang berfungsi untuk memutar disc , menekan masuk bola ke dalam disc yang berada pada posisi paling bawah,

Langkah-langkah yang dilakukan untuk menyelesaikan masalah CVRP menggunakan algoritma genetika adalah mendefinisikan individu dengan permutation encoding, membentuk

Langkah 6: Pilih satuan populasi, yakni per tanaman. Tekan Tombol ‘OK’. Kemudian, masukkan generasi keturunan ke-2.. Jika pada kasus yang sama dilakukan prediksi genotip keturunan

Cara yang paling mudah untuk mencapai mutual exclusion adalah dengan memperkerjakan sevet yang menanggung ijin untuk memasuki critical section. Untuk masuk ke critical section,

Setelah Anda login, klik Member Corner yang berada di menu bar paling kanan atau klik nama toko untuk masuk ke halaman member.. Pada menu Account

Dalam lingkup pencarian rute terpendek ini tidak dapat dikatakan secara langsung algoritma mana yang paling optimum untuk keseluruhan kasus, karena belum tentu suatu

Algoritma Greedy yang diimplementasikan ke dalam perangkat lunak dapat digunakan untuk menyelesaikan Knapsack Problem pada dunia transportasi dengan waktu yang

Pengujian ini dilakukan dengan cara menghitung sesuai dengan langkah-langkah algoritma K-NN (K-Nearest Neighbor) untuk menghasilkan model sehingga masuk dalam kategori