Bab 5 Pemrograman Linier 2-2016
Bab 5 Pemrograman Linier 2-2016
Ab.Alkaff
Ab.Alkaff
5. Pemrograman Linier
Ab.Alkaff
Outline
Pemrograman Linier Bentuk standar
Penyelesaian Grafis
Penyelesaian Matriks
Analisis Sensitivitas 1
Ab.Alkaff
Fungsi Tujuan
Fungsi linier terhadap variabel putusan
Semua Kendala
Max
DS
2
Ab.Alkaff
[ ]
𝑥1
𝑥= 𝑥2
⋮ 𝑐 =[ 𝑐 1 𝑐 2 … 𝑐 𝑛 ]
𝑥𝑛
[ ] [ ]
𝑏1 𝑎 11 𝑎 21 … … 𝑎 1 𝑛
𝑎 12 𝑎 22 … … 𝑎 2 𝑛
𝑏 = 𝑏2 𝐴= … … … … …
⋮
… … …… …
𝑏𝑛
𝑎 𝑚 1 𝑎𝑚 2 … … 𝑎𝑚𝑛
Didapat,
Max
S.T 3
Ab.Alkaff
Spesifikasi :
• Terdapat 4 mesin di unit I
• Terdapat 3 mesin di unit II 4
• Terdapat 3 mesin di unit III
Ab.Alkaff
[ ]
Formulasi Program Linier : 3 0
𝐴= 0 2
Max
2 1
S.T
[ ]
36
𝑏= 27
27 6
Ab.Alkaff
Penyelesaian Grafis
𝑥2
( )
Persoalan pemrograman linier dimensi dua semacam 6
3
4
( )
ini dapat diselesaikan secara grafis sebagai berikut. 0
13
1
1 2
Kendala-kendala pada persoalan ini dapat 13
2
digambarkan pada bidang kartesian dua dimensi
seperti pada gambar di samping ini. Daerah yang Kontur f
diarsir adalah himpunan titik-titik yang memenuhi
semua kendala atau biasa disebut daerah kelayakan.
Terlihat bahwa daerah kelayakan selalu berbentuk Daerah
polyhedral. Kelayakan 𝛻𝑓
Karena fungsi tujuan adalah linier maka konturnya
berupa garis lurus seperti terlihat pada gambar. Dari
( )
12
3
( )
0 12
fungsi-fungsi kendala. Karena itu, ujung-ujung 0
polyhedral ini disebut sebagai titik-titik ekstrim.
Ab.Alkaff
Penyelesaian Grafis
Titik – titik ekstrim dari pemrograman linier tersebut adalah :
[ ][ ][ ][ [ ]
3
0 6
0 12
0
,
0
,
13
1 ,
2
12
3
, ]
13
4
1
2
[ ] [ ]
3 3
6 6 z =
4 ∗ 4
, sehingga diperoleh 𝑥 = =
1 1 7
13 13
2 2
Ab.Alkaff
8
Ab.Alkaff
[ ] [ ]
titik
3 3
𝛻 g3
6 6
4 ∗ 4 𝛻g 1
, sehingga diperoleh 𝑥 =
13
1
13
1 𝛻g 4 𝛻𝑓
2 2 𝛻 g1
𝛻𝑓 𝛻 g5 𝛻𝑓 𝛻g 5
Ab.Alkaff
Penyelesaian Matriks
Pertidaksamaan diubah menjadi Persamaan dengan menambahkan SLACK :
adalah slack
Max
ds
9
Ab.Alkaff
Penyelesaian Matriks
10
Ab.Alkaff
Penyelesaian Matriks
Dalam bentuk Matrik didapatkan :
Max
S.T. Bentuk Kanonik
[]
Dimana,
𝑥1
.
.
[ ]
𝑥= 𝑥 =
𝑥𝑠
𝑥𝑛
𝑥𝑛 +1
.
.
𝑥 𝑛 +𝑚 11
Ab.Alkaff
Penyelesaian Matriks
Contoh :
Nyatakan dalam bentuk kanonik :
Max Max
DS DS
12
Ab.Alkaff
Penyelesaian Matriks
Max A=…
DS
c=…
b=…
13
Ab.Alkaff
Penyelesaian Matriks
Penyelesaiannya adalah :
−1
𝑥= 𝐴 𝑏 14
Ab.Alkaff
Penyelesaian Matriks
Dalam program linier akan didapat sistem persamaan linier dengan
banyaknya variabel selalu lebih banyak dari banyaknya persamaan.
Akibatnya sistem tersebut akan punya banyak penyelesaian, yang salah
satunya adalah penyelesaian dasar yang dapat dicari dengan memecah
matriks A menjadi matriks B dan N:
( )
𝑥𝐵
𝑥 = … , 𝐴𝑥= 𝑏
𝑥𝑁 14
Ab.Alkaff
Penyelesaian Matriks
Berubah Menjadi
−1
×𝐵
−1 −1
𝑥 𝐵= 𝐵 𝑏− 𝐵 𝑁 𝑥 𝑁 16
Ab.Alkaff
Penyelesaian Matriks
Penyelesaian dasar didapat dengan memilih :
Didapat :
yang berarti :
Adalah penyelesaian dasar dari sistem persamaan linier
disebut variabel dasar/basis
disebut variabel bukan dasar/nonbasis
disebut matrik dasar/basis
disebut matrik bukan dasar/nonbasis
Banyaknya penyelesaian dasar adalah sebanyak cara membentuk matriks B
dari matriks A, yaitu memilih n dari n+m, sehingga jumlahnya banyak sekali!
Ab.Alkaff
Penyelesaian Matriks
Contoh:
Daerah kelayakannya adalah sebagai berikut:
Max
S.T.
x1 0
(2,2)
Bentuk kanoniknya adalah (0,2)
Max (0,0) x1 0
S.T. (4,0)
Diperoleh titik-titik ekstrim sebagai berikut
Ab.Alkaff
Penyelesaian Matriks
Penyelesaian dasarnya dapat dicari sbb :
, ,
Alternatif 1 : Maksimum ada 6 kemungkinan
penyelesaian dasar. Mengapa?
(titik ekstrim )
Alternatif 2 :
(tidak memenuhi karena tidak memiliki invers)
Ab.Alkaff
Penyelesaian Matriks
Alternatif 3 :
(titik ekstrim)
Terlihat bahwa penyelesaian dasar adalah sama dengan titik ekstrim. Karena penyelesaian
persoalan pemrograman adalah selalu pada titik ekstrim, penyelesaian tersebut dapat
dicari dengan menentukan penyelesaian dasar dengan nilai fungsi tujuan maksimal
Ab.Alkaff
Penyelesaian Tabel
Menyelesaikan program linier sama saja dengan mencari penyelesaian dasar dari
suatu sistem persamaan linier, karenanya dapat dilakukan dengan menggunakan
Eliminasi GAUSS. Untuk itu program linier tersebut dinyatakan dalam bentuk
tabel sehingga memudahkan proses eliminasi Gauss.
Tabel untuk menyelesaikan persoalan pemrograman linier pada dasarnya adalah
tabel untuk mencari penyelesaian dasar dengan nilai fungsi tujuan yang
maksimal. Caranya adalah dari satu penyelesaian dasar berpindah ke
penyelesaian dasar lain dengan nilai fungsi tujuan yang lebih baik (lebih besar
dalam kasus maksimisasi). Karena penyelesaian dasar selalu pada titik ekstrim
yang berada pada ujung polyhedral daerah kelayakan, perpindahan tersebut
adalah sepanjang simpleks dari polyhedral sehingga tabel dan metode
penyelesaian ini disebut tabel simpleks dan metode simpleks 14
Ab.Alkaff
Penyelesaian Tabel
Proses ini dimulai dari suatu penyelesaian dasar yang paling mudah dicari
kemudian pada tiap iterasi berusaha mendapatkan penyelesaian dasar yang
memiliki nilai tujuan (z) yang lebih baik dan seterusnya sampai tidak dapat
menghasilkan yang lebih baik lagi. Pada saat itu iterasi dihentikan dan
penyelesaian dasar yang terakhir adalah penyelesaian optimal yang dicari.
Telah didapat bahwa :
Atau
.......(1)
14
Ab.Alkaff
Penyelesaian Tabel
Untuk nilai tujuan digunakan persamaan,
… (2)
Bila maka sebaiknya tetap nonbasis yang bernilai nol, sehingga penyelesaian
dasar yang sekarang tidak perlu diganti, yang berarti sudah optimal 14
Ab.Alkaff
Penyelesaian Tabel
Tabel Eliminasi Gauss untuk Program linier atau sering disebut Tabel Simpleks
dibentuk dari system persamaan (1) dan (2), yaitu:
(2)
(1)
Program Linier
Max Max
D.S. D.S.
26
Ab.Alkaff
Penyelesaian Tabel
z RK
z 1 0
0 I
, , 27
Ab.Alkaff
Penyelesaian Tabel
Contoh Soal 1
28
Ab.Alkaff
Penyelesaian Tabel
Tabel simpleks bila yang diambil sebagai basis adalah slack,
sehingga B = I, CB = 0 adalah sebagai berikut:
z RK
z 1 0 = =0
0 I =N =b
Penyelesaian Tabel
Pembuatan Tabel Simpleks Membentuk matriks Identitas
Z RK
Z 1 -1 -2 0 0 0
0 2 3 1 0 18
0 -2 1 0 1 4
Perhatikan bahwa:
𝑍 − 𝑥 1 −2 𝑥 2 − 0 𝑥 3 −0 𝑥 4 =0
Ab.Alkaff
Penyelesaian Tabel
Pembuatan Tabel Simpleks xN CBB-1N-CN
CB
Z RK
Z 1 -1 -2 0 0 0 B-1b=b
0 2 3 1 0 18
xB
0 -2 1 0 1 4
B-1N=N B
Penyelesaian Tabel
Penggantian Variabel Basis Mencari x dengan koefisien paling negatif
agar nilai Z cepat menjadi maksimal
Mencari nilai
z RK yang paling
cepat menjadi 0
z 1 -1 -2 0 0 0 (diambil yang
terkecil)
18
0 2 3 1 0 18 3
=6
4
0 -2 1 0 1 4 1
=4
Penyelesaian Tabel
z RK Penyelesaian
saat ini adalah:
[]
z 1 -1 -2 0 0 0 0
0 2 3 1 0 18 𝑥= 0
18
4
0 -2 1 0 1 4
Harus 1
Ab.Alkaff
Penyelesaian Tabel
z RK Operasi Baris
z 1 -1 -2 0 0 0 𝑏1 +2 𝑏3
0 2 3 1 0 18 𝑏2 + ( −3 ) 𝑏3
0 -2 1 0 1 4
Penyelesaian Tabel
[]
Masih ada koefisien z yang negative, lanjutkan proses 0
penggantian Variabel Basis 4
Penyelesaian saat ini:𝑥 =
6
0
z RK Mencari nilai
yang paling
z 1 -5 0 0 2 8 cepat menjadi 0
6
0 8 0 1 -3 6 8
4
0 -2 1 0 1 4 −2
Penyelesaian Tabel
Z RK Operasi Baris
Z 1 -5 0 0 2 8 𝑏1 +( )𝑏 5
2
8
0 8 0 1 -3 6 ( 8 )𝑏
1
2
𝑏 +(
4)
0 -2 1 0 1 4 1
3 𝑏 2
Ab.Alkaff
Penyelesaian Tabel
Penyelesaian Optimal
Z RK
[]
Z 1 0 0 3
4
𝑥 = 11
0 1 0 2
0
0
0 0 1
Penyelesaian Tabel
Pengecekan Keoptimalan
Diketahui dari soal
Cek nilai
det ( 𝐵)=( 2 ) ( 1 ) − ( −2 ) ( 3 ) =8
[ ]
1 3
−
𝐵
−1
= [
1 1
8 2
−3
2
=]8
1 1
8
4 4
Ab.Alkaff
Penyelesaian Tabel
Pengecekan Keoptimalan
Cek nilai
[ ][ ] [ ]
1 3 3
−
−1 8 8 18 4
𝑋 𝑏= 𝐵 𝑏= =
1 1 4 11
4 4 2
Cek nilai
[ ]
3
4 3
𝑏= [ 1 2]
−1
𝑍 =𝐶 𝑏 𝐵 =11
11 4
2
Ab.Alkaff
Penyelesaian Tabel
Pengecekan Keoptimalan
Cek nilai
[ ]
1 3
−
𝐶𝑏 𝐵
−1
𝑁 − 𝐶 𝑁 =[ 1 2]
8
1 1
8
[ 1
0
0
1]−[0 0 ]= [ 5
8
1
8 ]
4 4
Penyelesaian Tabel
z RK
z 1 0 0 𝑧
0 1 0
0 0 1
𝐵−1 𝑥𝐵
Ab.Alkaff
Penyelesaian Tabel
𝑥2
( )
3
n Gambaran Geometris dari iterasi
ju a
4
11
tu
( )
4
un
0
f
Proses iterasi:
berjalan sepanjang
Daerah Layak
simpleks dari
polyhedral daerah
kelayakan sampai 40
titik dengan kontur
terjauh ( )
0
0
𝑥1
Ab.Alkaff
Penyelesaian Tabel
𝒙𝟐
Pengecekan Geometris
−𝟐 𝒙 𝟏+ 𝒙 𝟐 ≤ 𝟒 𝟐 𝒙𝟏 +𝟑 𝒙𝟐 ≤𝟏𝟖 terhadap pemenuhan syarat
keoptimalan Kuhn-Tucker:
−𝟐 𝒙 𝟏+ 𝒙 𝟐 ≤ 𝟒 𝒎𝒊𝒏− 𝒙 − 𝟐 𝒙
𝟏 𝟐 bahwa resultan vector
− 𝒙𝟏≤ 𝟎
fungsi tujuan dan kendala
𝒎𝒊𝒏− 𝒙 𝟏 − 𝟐 𝒙 𝟐
berpengaruh harus dapat
dibuat nol dengan pengali
Lagrange nonnegative.
− 𝒙𝟏≤ 𝟎 𝒙𝟏 Ada kesalahan pada arah
gradien! Perbaiki dan
𝒎𝒊𝒏− 𝒙𝟏 − 𝟐−
𝒙 𝟐𝒙 𝟐 ≤ 𝟎
41
tambahkan pada paparan ini
Ab.Alkaff
Jika ada salah satu yang tidak terpenuhi, maka persoalan tersebut tergolong
pemrograman linier tidak standar.
1. Tujuan : Meminimumkan
Ab.Alkaff
×−1
Ab.Alkaff
tidak dapat digunakan sebagai variabel basis. Oleh karena itu ditambahkan
sebuah variabel semu xa yang bisa menjadi variabel basis.
Namun harus dibuat menjadi bernilai nol setelah sejumlah iterasi (dipaksa
keluar dari basis) karena memang seharusnya tidak ada
Ab.Alkaff
Contoh
Contoh
Min za =
Tujuan za menyatakan nilai variable semu yang harus diminimumkan (dibuat nol). Dapat
diselesaikan dengan menggunakan table simpleks dengan dua tujuan. Untuk memudahkan
pembentukan table simpleks, pilih sebagai variable basis adalah variable yang menghasilkan
matrik basis berupa matriks identitas. Untuk contoh ini ambil dan sebagai variable basis
Ab.Alkaff
Tidak memenuhi
Pembuatan Tabel Simpleks aturan tabel simpleks
Tahap
RK
(II) 1 -2 -1 0 0 0 0 max 𝑍
0 1 1 1 0 0 3
0 -1 1 0 -1 1 1
Ab.Alkaff
RK Operasi Baris
0 0 0 0 0 1 0 𝑏1 +(− 1)𝑏4
1 -2 -1 0 0 0 0
0 1 1 1 0 0 3
0 -1 1 0 -1 1 1
Ab.Alkaff
RK
[]
0 1 -1 0 1 0 -1 0
0
1 -2 -1 0 0 0 0 𝑥= 3
0
0 1 1 1 0 0 3 1
Bukan Titik Layak
0 -1 1 0 -1 1 1
Ab.Alkaff
RK Operasi Baris
0 1 -1 0 1 0 -1 𝑏1 +𝑏4
1 -2 -1 0 0 0 0 𝑏2 +𝑏 4
0 1 1 1 0 0 3 𝑏3 + ( −1 ) 𝑏 4
0 -1 1 0 -1 1 1 𝑏4
Ab.Alkaff
RK sudah minimum
[]
0 0 0 0 0 1 0 0
1
𝑥= 2
1 -3 0 0 -1 1 1
0
0
0 2 0 1 1 -1 2
0 -1 1 0 -1 1 1 √ Tahap 1 selesai
sudah nol, variable semu hilang⟶ koef baris sama dengan koef di tabel simpleks awal
Ab.Alkaff
RK Mencari nilai
yang paling
1 -3 0 0 -1 1 cepat menjadi 0
2
0 2 0 1 1 2 2
1
0 -1 1 0 -1 1 −1
49
Ab.Alkaff
RK Operasi Baris
1 -3 0 0 -1 1 𝑏1 + ( )𝑏
3
2 2
0 2 0 1 1 2 ( 1
)𝑏 2
2
0 -1 1 0 -1 1 𝑏3 +(
1
)𝑏
250 2
Ab.Alkaff
RK
[]
1
1 0 0 4 2
𝑥= 0
0 1 0 1 0
0
0 0 1 2
Membentuk matriks Identitas
karena menjadi variabel basis
√ Sudah Optimal karena koefisien z
(membentuk basis) tidak ada yang negatif
Ab.Alkaff
𝑥2
Gambaran Geometris:
Daerah layak Tahap 1: Mulai dari titik (0,0) yang
tidak layak menuju ke
()1
2 titik (0,1) yang layak.
Tahap 2: Mulai dari titik (0,1) hasil
()
0
1
Tahap 2/iterasi 1
dari Tahap 1 yang layak
Tahap 1/iterasi 1 tetapi belum optimal
menuju ke titik (1,2)
()
0 𝑥1 yang optimal 52
0
ntur f
Ko
Ab.Alkaff
𝑥2
Pengecekan Geometris terhadap
keterpenuhan syarat keoptimalan
𝑥1 + 𝑥2 ≤ 3
Kuhn Tucker: bahwa resultan
vector fungsi tujuan dan kendala
max 2 𝑥1 +𝑥2 − 𝑥 + 𝑥 ≥ 1
1 2 berpengaruh harus dapat dibuat nol
− 𝑥1≤ 0 dengan pengali Lagrange
max 2 𝑥1 +𝑥2 nonnegative.
− 𝑥 1+ 𝑥 2 ≥ 1 Ada kesalahan pada arah gradient?
𝑥1
53
Ab.Alkaff
Contoh
Max
DS
Ab.Alkaff
Sehingga
Min
S.T
.
Ab.Alkaff
Min Max
Ab.Alkaff
RK
0 0 0 0 0 0 1 1 0
-1 0 1 0 0 0 0 -1 -6
0 0 -5/4 0 1 1/4 -1/4 -1/2 4
0 1 1/2 0 0 -1/2 1/2 0 1
0 0 -1/4 1 0 1/4 -1/4 1/2 2
Diabaikan boleh dibuang
Ab.Alkaff
Sehingga,
Ab.Alkaff
z RK
z 1 0
0 I
Analisis Sensitivitas
Bila terdapat perubahan pada nilai parameter atau penambahan kendala atau
penambahan variable keputusan, hasil penyelesaian optimal yang telah diperoleh
tetap dapat dipakai untuk mencari penyelesaian yang baru akibat adanya
perubahan tersebut.
Analisis Sensitivitas
Macam-macam analisis sensitivitas, antara lain adalah:
1. Perubahan parameter
a. Perubahan nilai elemen pada vector c
b. Perubahan nilai elemen pada vector b
c. Perubahan nilai elemen pada matriks A
2. Penambahan atau pengurangan kendala
3. Penambahan atau pengurangan variabel
23
Ab.Alkaff
Tugas 5
1. Ambil satu contoh soal pemrograman linier tidak standar dua dimensi dari buku
referensi (atau buat sendiri) dengan tiga kendala fungsional dengan titik O bukan
titik layak. Selesaikan dengan metode grafik, metode matriks, metode geomterik
lengkap dengan vector persyaratan Kuhn-Tucker, metode table simpleks lengkap
dengan perjalanan iterasinya. Jelaskan kesesuaian hasil empat metode tersebut
2. Ambil satu contoh soal pemrograman linier (standar/tidak) dari buku referensi yang
memuat paling sedikit 4 variable dan ada penjelasan diskripsi permasalahannya
(atau buat sendiri). Tuliskan formulasinya. Konversikan ke bentuk kanonik.
Selesaikan dengan bantuan paket program. Tuliskan proses iterasinya dalam bentuk
table simpleks seperti yang diberikan pada paparan kuliah. Beri interpretasi
penyelesaian pada tiap iterasi. Interpretasikan penyelesaian optimalnya
3. Cari dari buku referensi satu contoh cara menyelesaikan salah satu permasalahan
23
analisis sensitivitas lengkap dengan iterasinya untuk mencari titik optimal baru