Topik 4
Teori Dasar Program Linear & Pendahuluan
Metode Simplex
Agus Yodi Gunawan
FMIPA
Institut Teknologi Bandung, Indonesia
JJ J N I II 1/29
Half space (kendala) aktif
Misalkan X = {x ∈ Rn|Ax ≤ b, x ≥ 0} himpunan polyhedral tak
hampa, dengan A matriks berukuran m × n dan b di Rm dengan kom-
ponennya adalah bi.
Notasi:
JJ J N I II 2/29
Titik ekstrim: hyperplane aktif
JJ J N I II 3/29
Arah ekstrim: polyhedral
Vektor arah himpunan d biasanya dinormalisasi. Untuk memperta-
hankan sifat kelinearan, digunakan jarak Manhattan, |d1|+· · ·+|dn| = 1
yang ekivalen dengan d1 + · · · + dn = 1 (karena d ≥ 0). Tulis, vektor
1 = (1, · · · , 1), maka D = {d ≥ 0 : Ad ≤ 0, 1T d = 1}.
Analogi dengan tafsiran geometris dari titik ekstrim, maka arah ek-
strim sebenarnya merupakan ’titik ekstrim’ dari himpunan D (n
def ining hyperplanes yang melalui titik 0).
d2
1
x2
d1
x1 0 1
JJ J N I II 4/29
Ide teorema representasi polyhedral
x3
x4 x3
y y
w x2
x5 x2
w
x1 x1
JJ J N I II 5/29
Teorema representasi polyhedral
Misalkan X = {x|Ax ≤ b, x ≥ 0} himpunan (polyhedral) tak hampa.
Maka
Lebih jauh lagi, titik x̄ ∈ X jika dan hanya jika titik tersebut da-
pat disajikan sebagai kombinasi konveks dari berhingga titik ekstrim
x1, x2, · · · , xk ditambah kombinasi linear tak negatif dari berhingga
banyaknya vektor-vektor arah d1, d2, · · · , dl , yaitu
k
X l
X k
X
x̄ = λj xj + µl dj , λj = 1, λj ≥ 0, µj ≥ 0.
j=1 j=1 j=1
JJ J N I II 6/29
Titik ekstrim dan keoptimalan...1
Perhatikan masalah program linear berikut (harus dalam bentuk baku):
Minimum z = cT x
dengan kendala
Ax = b
x ≥ 0.
Misalkan x1, · · · , xk titik-titik ekstrim dan d1, · · · , dl vektor-vektor
arah ekstrim dari himpunan kendala (himpunan konveks) X = {x :
Ax = b, x ≥ 0}. Dari teori sebelumnya, setiap vektor x ∈ X dapat
dituliskan sebagai
k
X l
X
x= λixi + µi dj ,
i=1 j=1
k
dimana λi = 1, λi, µj ≥ 0. Masalah di atas dapat dituliskan kembali
P
i=1
menjadi..............
JJ J N I II 7/29
Titik esktrim dan keoptimalan...2
k
X l
X
T
Minimum z = (c xi)λi + (cT dj )µj
i=1 j=1
k
dengan kendala λi = 1 dimana λi, µj ≥ 0 (mana yang merupakan
P
i=1
variabel keputusannya?)
Dalam hal ini parameter µj adalah parameter bebas yang nilainya dapat
dipilih sesuai kebutuhan. Dari Persamaan di atas dapat diamati:
JJ J N I II 8/29
Jadi...
k
X l
X
T
Minimum z = (c xi)λi + (cT dj )µj
i=1 j=1
k
dengan kendala λi = 1 dimana λi, µj ≥ 0.
P
i=1
JJ J N I II 9/29
Contoh...
X = {x : −x1 + x2 ≤ 2, −x1 + 2x2 ≤ 6, x1 ≥ 0, x2 ≥ 0}. Dibentuk
bentuk baku, diperoleh
−x1 + x2 + x3 = 2 (1)
−x1 + 2x2 + x4 = 6 (2)
x1, x2, x3, x4 ≥ 0. (3)
Titik ekstrim adalah solusi tak negatif dari SPL tak homogen. Diperoleh
x1 = 2 + 2x3 − x4 dan x2 = 4 + x3 − x4,
JJ J N I II 11/29
Contoh...
X = {x ≥ 0 : −x1 + x2 ≤ 2, −x1 + 2x2 ≤ 6}.
Diperoleh tiga titik ekstrim:x = (0, 0), x2 = (0, 2), x3 = (2, 4) dan dua
arah ekstrim: d1 = (1, 0), d2 = (2, 1).
min z cT x1 cT x2 cT x3 cT d1 cT d2
(1, −3)T x 0 −6 −10 1 −1
(4, −1)T x 0 −2 4 4 7
Kasus pertama nilai minimumnya −∞, karena ada arah ekstrim dimana
cT d < 0.
Kasus kedua memiliki nilai minimum hingga, yaitu -2 dengan titik op-
timalnya x2 = (0, 2).
JJ J N I II 12/29
Situasi geometris
x2
x2
=0
=0 x4
x4
(2, 4)
0
(2, 4)
=
0
=
x3
x3
(0, 2)
x1 = 0
(0, 2)
x1 = 0
x1
x1 x2 = 0
x2 = 0
JJ J N I II 13/29
Basic Feasible Solution (BFS)
Perhatikan kembali SPL Ax = b, x ≥ 0 (m persamaan, n variabel,
Rank(A, b)=Rank(A) = m, bentuk baku). Misalkan setelah pengatu-
ran kolom-kolom dari A diperoleh A = (B, N) (B matriks tak singular
berukuran m × m dan N matriks
berukuran
m × (n − m)). Solusi SPL
xB
tersebut diberikan oleh x = , yang disebut solusi basis relatif
xN
terhadap matriks B, dimana xB = B−1b dan xN = 0.
Matriks B disebut matriks basis dan N disebut matriks nonbasis. Kom-
ponen xB disebut variabel basis/variabel terikat sedangkan xN disebut
variabel nonbasis/variabel bebas.
Jika xB ≥ 0, maka x disebut BFS; Variabel basis pada solusi basis tidak
perlu semuanya tak nol:
JJ J N I II 15/29
Contoh BFS
X = {(x1, x2)|x1 +x2 ≤ 6, ≥ 0, x2 ≥ 0}. Dalam bentuk baku,
x2 ≤ 3, x1
1 1 1 0
diperoleh Ax = b, A = , x = (x1, x2, x3, x4), b = (6, 3).
0 1 0 1
1 1
À B = [a1 , a2 ] = , xB = (x1, x2) = B−1b = (3, 3), xN =
0 1
(x3, x4) = (0, 0). Jadi x = (3, 3, 0, 0).
1 0
Á B = [a1 , a4 ] = , xB = (x1, x4) = B−1b = (6, 3), xN =
0 1
(x2, x3) = (0, 0). Jadi x = (6, 0, 0, 3).
1 0
 B = [a2 , a4 ] = , xB = (x2, x4) = B−1b = (6, −3), xN =
1 1
(x1, x3) = (0, 0). Jadi x = (0, 6, 0, −3) 7.
à B = [a2 , a3 ], xB = (x2 , x3 ) = B−1 b = (3, 3). Jadi x = (0, 3, 3, 0)
Ä B = [a3 , a4 ], xB = (x3 , x4 ) = B−1 b = (6, 3). Jadi x = (0, 0, 6, 3)
JJ J N I II 16/29
Contoh degenerate BFS
X = {(x1, x2)|x1 + x2 ≤ 6, x2 ≤ 3, x1 + 2x2 ≤ 9, x1 ≥ 0, x2≥ 0}.
1 1 1 0 0
Dalam bentuk baku, diperoleh Ax = b, A = 0 1 0 1 0 , x =
1 2 0 0 1
(x1, x2, x3, x4), x5, b = (6, 3, 9).
JJ J N I II 17/29
Geometris degenerate BFS
x2
x1
+2
x4 = 0 (3, 3) x2
=9
x1 = 0
x3
=
0
x2 = 0
x1
JJ J N I II 18/29
Teorema dasar program linear...1
Diberikan masalah pemograman linear dalam bentuk baku dengan ma-
triks A berukuran m × n dengan Rank(A) = m.
JJ J N I II 19/29
Teorema dasar program linear...2
Dengan demikian,
x1a1 + · · · + xpap = b. (7)
Akan ditunjukkan bahwa dari Xp = (x1, · · · , xp) dapat dikonstruksi
suatu BFS. Hal ini dapat diperoleh dengan memperhatikan kebebas lin-
earan himpunan {a1, · · · , ap}:
JJ J N I II 20/29
Teorema dasar program linear...3
• Kasus Xp himpunan bergantung linear. Untuk kasus ini maka terda-
pat paling sedikit satu konstanta tak nol yj (selanjutnya diasumsikan
bernilai positif) sehingga
y1a1 + · · · + ypap = 0.
Kalikan persamaan ini dengan suatu skalar ε kemudian persamaan
yang dihasilkan dikurangkan dengan Persamaan (7) akan diperoleh
(x1 − εy1)a1 + · · · + (xp − εyp)ap = b. (8)
Persamaan (8) berlaku untuk setiap ε, dan untuk setiap ε kom-
ponen (xj − εyj ) merupakan solusi persamaan linear (meskipun
tidak ada jaminan bahwa (xj − εyj ) ≥ 0 untuk setiap j. Tulis
y = (y1, y2, · · · , yp, 0, · · · , 0). Kita perhatikan bahwa untuk setiap ε
| {z }
(n−p)
maka vektor
x − εy (9)
adalah solusi persamaan linear.
JJ J N I II 21/29
Teorema dasar program linear...4
• ... x − εy. Untuk ε = 0, vektor tersebut menjadi solusi feasibel
yang diketahui di awal.Untuk ε bilangan positif dekat ke nol, maka
komponen-komponen (9) ada yang bernilai naik, turun, atau tetap
bergantung pada apakah nilai yj yang bersesuaian negatif, positif,
atau nol. Karena diasumsikan terdapat yj > 0, maka paling sedikit
ada satu komponen vektor (9) akan turun ketika nilai ε dinaikan
menjadi bernilai positif. Kita akan pilih nilai ε tersebut sedemikian
sehingga komponen yj yang positif pertama kali bernilai nol, yaitu
kita pilih
ε = min{xj /yj : yj > 0}.
Untuk nilai ε tersebut, vektor (9) merupakan solusi feasibel yang
memiliki paling banyak (p − 1) komponen positif. Ulangi prosedur
ini jika diperlukan sehingga kita akan menghilangkan komponen posi-
tif sampai dengan kita memperoleh suatu solusi feasibel yang terkait
dengan kolom-kolom matriks A yang bebas linear (mengapa?). Un-
tuk proses selanjutanya, kasus himpunan bebas linear dapat diter-
apkan.
JJ J N I II 22/29
Teorema dasar program linear...5
Diberikan masalah pemograman linear dalam bentuk baku dengan ma-
triks A berukuran m × n dengan Rank(A) = m.
JJ J N I II 23/29
Teorema dasar program linear...6
...cT (x − εy) = cT x − εcT y...
Andaikan cT y 6= 0. Kita dapat menentukan besar dan tanda ε yang
sesuai sedemikian sehingga vektor (x − εy) tetap feasibel tetapi kurang
dari cT x. Hal ini bertentangan bahwa x solusi feasibel optimal. Maka
haruslah cT y = 0.
Teorema di atas mereduksi cara pencarian solusi persamaan linear yaitu
melalui pencarian BFS, meskipun tampaknya cara ini belum efisien.
Untuk masalah pemograman dengan n variabel dan m kendala, maka
paling banyak terdapat n!/(m!(n − m)!) solusi basis (berhingga kemu-
ngkinan).
JJ J N I II 24/29
Keterkaitan titik ekstrim dengan BFS...1
Misalkan matriks A berukuran m × n dengan Rank(A) = m dan
vektor b berukuran m × 1. Misalkan K = {x : Ax = b, x ≥ 0}
suatu polytope konveks. Suatu vektor x ∈ K merupakan BFS
jika dan hanya jika vektor x adalah titik ekstrim dari K.
JJ J N I II 25/29
Keterkaitan titik ekstrim dengan BFS...2
...Karena 0 < λ < 1 dan semua komponen x, y, z tak negatif, maka
(n − m) komponen terakhir dari y dan z haruslah nol. Selanjutnya kita
peroleh (mengapa?)
y1a1 + · · · + ymam = b,
dan
z1a1 + · · · + zmam = b.
Karena a1, · · · , am bebas linear, maka x = y = z (mengapa?), atau
dengan kata lain x titik ekstrim dari K.
Sekarang, misalkan x merupakan titik ekstrim dari K. Misalkan pula k
komponen pertama dari x tak nol. Pandang
x1a1 + · · · + xk ak = b, xj > 0, j = 1, · · · , k.
Untuk memperlihatkan x merupakan BFS maka perlihatkan bahwa
vektor-vektor a1, · · · , ak bebas linear.
JJ J N I II 26/29
Keterkaitan titik ekstrim dengan BFS...3
Andaikan a1, · · · , ak bergantung linear. Maka terdapat konstanta tak
nol yj sehingga
y1a1 + · · · + yk ak = 0.
Definisikan vektor y = (y1, · · · , yk , 0, · · · , 0). Karena xj > 0, maka
dapat dipilih ε sehingga
x + εy ≥ 0, x − εy ≥ 0.
Selanjutnya x dapat dituliskan menjadi
1 1
x = (x + εy) + (x − εy),
2 2
yang menyatakan bahwa x dapat dituliskan sebagai kombinasi konveks
dari dua titik berbeda di K. Hal ini tidak mungkin karena x adalah titik
ekstrim. Oleh karenanya, haruslah a1, · · · , ak bebas linear. Dengan kata
lain x = (x1, · · · , xk , 0, · · · , 0) merupakan BFS (catatan: jika k < m,
maka x merupakan degenerate BFS).
JJ J N I II 27/29
Hal penting!
Beberapa hal penting:
JJ J N I II 28/29
Latihan
1. Cari titik ekstrim dan arah ekstrim
X = {(x1, x2, x3, x4) ≥ 0 : −x1 +x2 −2x3 ≤ 1, −2x1 −x3 +2x4 ≤ 2}.
JJ J N I II 29/29