METODE BIG-M
Metode Big-M merupakan metode simpleks dengan tambahan variabel bantuan (R)
yang mempunyai koefisien pada fungsi tujuan (M). Metode ini dapat digunakan untuk
menyelesaikan persoalan program linier dengan pembatasan atau kendala yang
mempunyai tanda pertidaksamaan yang berbeda-beda bahkan berupa persamaan.
Sering kita menemukan bahwa fungsi kendala tidak hanya dibentuk oleh
pertidaksamaan ≤ tapi juga oleh pertidaksamaan ≥ dan/atau persamaan (=). Fungsi
kendala dengan pertidaksamaan ≥ mempunyai surplus variable, tidak ada slack
variables. Surplus variable tidak bisa menjadi variabel basis awal. Dengan demikian
harus ditambahkan satu variabel baru yang dapat berfungsi sebagai variabel basis
awal. Variabel yang dapat berfungsi sebagai variabel basis awal hanya slack variables
san artificial variables (variabel buatan).
1. Jika semua fungsi kendala menggunakan pertidaksamaan ≤ maka variabel basis
awal semuanya adalah slack variables. Penyelesaian solusi optimal untuk kasus
seperti ini dilakukan dengan cara yang sudah diperkenalkan sebelumnya.
2. Jika fungsi kendala menggunakan pertidaksamaan ≥ dan/atau ≤ maka variabel
basis awal adalah slack variables dan/atau variabel buatan. Penyelesaian solusi
optimal untuk kasus seperti ini dilakukan dengan memilih antara metode Big M,
Dua Fase atau Dual Simpleks.
3. Jika fungsi kendala ada yang menggunakan persamaan maka variabel buatan
akan ditemukan pada variabel basis awal. Penyelesaian solusi optimal untuk
kasus seperti ini hanya dapat dilakukan dengan memilih antara metode Big M
atau Dua Fase.
Perbedaan metode big M dengan primal simpleks biasa terletak pada pembentukan
tabel awal. Jika fungsi kendala menggunakan bentuk pertidaksamaan ≥, perubahan
dari bentuk umum ke bentuk baku memerlukan satu variabel surplus. Variabel surplus
tidak dapat berfungsi sebagai variabel basis awal, karena koefisiennya bertanda
negatif. Sebagai variabel basis pada solusi awal, harus ditambahkan satu variabel
buatan. Variabel buatan pada solusi optimal harus bernilai 0, karena variabel ini
memang tidak ada.
Teknik yang digunakan untuk memaksa variabel buatan bernilai 0 pada solusi optimal
adalah dengan cara berikut:
Penambahan variabel buatan pada fungsi kendala yang tidak memiliki variabel
slack, menuntut penambahan variabel buatan pada fungsi tujuan
Jika fungsi tujuan adalah maksimisasi, maka variabel buatan pada fungsi tujuan
mempunyai koefisien +M; jika fungsi tujuan adalah minimisasi, maka variabel
buatan pada fungsi tujuan mempunyai koefisien M
Karena koefisien variabel basis pada tabel simpleks harus bernilai 0, maka
variabel buatan pada fungsi tujuan harus digantikan nilai dari fungsi kendala yang
memuat variabel buatan tersebut
Perhatikan contoh di bawah ini.
Bentuk Umum
Min.z = 4x1 + x2
Terhadap: 3x1 + x2 = 3
4x1 + 3x2 ≥ 6
x1 + 2x2 ≤ 4
x1, x2 ≥ 0
Bentuk Baku:
Min.z = 4x1 + x2
Terhadap: 3x1 + x2 = 3
4x1 + 3x2 - s1 = 6
x1 + 2x2 + s2 = 4
x1, x2. s1, s2 ≥ 0
Kendala 1 dan 2 tidak mempunyai slack variables, sehingga tidak ada variabel basis
awal. Untuk berfungsi sebagai variabel basis awal, pada kendala 1 dan 2 ditambahkan
masing-masing satu variabel buatan (artificial variable). Maka bentuk baku Big M-
nya adalah:
Min. z = 4x1 + x2 + MA1 +MA2
Terhadap: 3x1 + x2 + A1 = 3
4x1 + 3x2 - s1 + A2 = 6
x1 + 2x2 + s2 = 4
x1, x2. s1, s2 ≥ 0
1. Nilai A1 digantikan dari fungsi kendala pertama
A1 = 3 - 3x1 - x2
MA1 berubah menjadi M(3 - 3X1 - X2) → 3M - 3Mx1 - Mx2
2. Nilai A2 digantikan dari fungsi kendala ketiga
A2 = 6 - 4x1 - 3x2 + s1
MA2 berubah menjadi M(6 - 4x1 - 3x2 + s1)
6M - 4Mx1 - 3Mx2 + Ms1
3. Fungsi tujuan berubah menjadi
Min. z = 4x1 + x2 +3M - 3Mx1 - Mx2 + 6M - 3Mx2 + Ms1
= (4 - 7M)x1 + (1 - 4M)x2 + Ms1 + 9M
4. Tabel awal simpleks
VB X1 X2 S1 A1 A2 S2 Solusi
0 9M
z -4 + 7M -1 + 4M -M 0 0 0 3
0 6
A1 3 1 010 1 4
A2 4 3 -1 0 1
S2 1 2 000
5. Perhitungan iterasinya sama dengan simpleks sebelumnya
Iterasi-0
VB X1 X2 S1 A1 A2 S2 Solusi Rasio
z -4 + 7M -1 + 4M -M 0 0 0 9M -
A1 3 1 0 100 3 1
A2 4 3 -1 0 1 0 6 3/2
S2 1 2 0 001 4 2
Iterasi-1
VB X1 X2 S1 A1 A2 S2 Solusi Rasio
z0 (1 + 5M)/3
A1 1 -M (4-7M)/3 0 0 4 + 2M -
A2 0 1/3
S2 0 5/3 0 1/3 0 0 1 3
5/3
1 4/3 1 0 2 6/5
0 -1/3 0 1 3 9/5
Iterasi-2
VB X1 X2 S1 A1 A2 S2 Solusi Rasio
z 0 0 1/5 8/5 - M -1/5 - M 0 18/5 -
A1 1 0 1/5 3/5 -1/5 0 3/5 25/3
A2 0 1 -3/5 -4/5 3/5 0 6/5 -
S2 0 0 1 1 1 11 1
Iterasi-3→optimal
VB X1 X2 S1 A1 A2 S2 Solusi
17/5
z0 0 0 7/5 - M -M -1/5 2/5
9/5
A1 1 0 0 2/5 0 -1/5
1
A2 0 1 0 -1/5 0 3/5
S2 0 0 1 1 -1 1
METODE DUA FASE
Metode Dua Fase merupakan metode yang mempunyai fungsi yang sama dengan
metode big-M, yakni menentukan solusi optimum dari persoalan yang memiliki
pertidaksamaan berbeda-beda bahkan persamaan pada pembatasannya.
Aturan metode dua fase:
a. Metode dua fase digunakan pada variabel basis awal terdiri dari variabel buatan
(A)
b. Proses optimasi dilakukan dua tahap, yakni
- Tahap pertama, merupakan proses optimasi variabel buatan
- Tahap kedua, merupakan proses optimasi variabel keputusan
c. Variabel buatan sebenarnya tidak ada (hanya ada di atas kertas) sehingga tahap
pertama dilakukan untuk memaksa variabel buatan bernilai 0
Perhatikan kasus berikut:
Tahap 1
Min. A = A1 + A2
Terhadap: x1 + x2 + A1 = 90
0.001x1 + 0.002x2 + s1 = 0.9
0.09x1 + 0.6x2 - s2 + A2 = 27
0.02x1 + 0.06x2 + s3 = 4.5
x1, x2, s1, s2, s3 ≥ 0
Karena A1 dan A2 berfungsi sebagai variabel basis pada solusi awal, maka
koefisiennya pada fungsi tujuan harus sama dengan 0. Untuk mencapai itu, gantikan
nilai A1 dari fungsi kendala pertama (kendala yang memuat A1) dan nilai A2 dari
fungsi kendala ketiga (kendala yang memuat A2).
Dari kendala -1 diperoleh:
A1 = 90 - x1 - x2
Dari kendala -3 diperoleh:
A2 = 27 - 0.09x1 - 0.6x2 + s2
Maka fungsi tujuan tahap 1 menjadi:
Min A = (90 - x1 - x2) + (27 - 0.09x1 - 0.6x2 + s2)
= 117 - 1.09x1 - 1.6x2 + s2
Solusi awal
VB X1 X2 S1 S2 S3 A1 A2 NK Rasio
0 117 -
A 1.09 1.6 0 -1 0 0 0 90 90
0 0.9 450
A1 1 1 0 0 0 1 1 27 45
0 4.5 75
S1 0.0001 0.002 1 0 0 0
A2 0.09 0.6 0 -1 0 0
S3 0.02 0.06 0 0 1 0
Iterasi 1 X2 S1 S2 S3 A1 A2 NK Rasio
VB X1 0 0 -11/3 0
A 0.85 0 0 10/6 0 0 -8/3 45 -
A1 0.85 0 1 1/300 0
S1 0.0007 1 0 -10/6 0 1 -10/6 45 52.94
A2 0.15 0 0 0.1 1
S3 0.011 0 -1/300 0.81 1157.14
0 10/6 45 300
0 -0.1 1.8 163.634
Iterasi 2→ optimal S1 S2 S3 A1 A2 NK
VB X1 X2 0 -4.8708 0 -1 -1.4625 0
A 00 0 17/12 0 20/17 -17/12 52.94
A1 1 0 1 0.0023417 0 0.0008 -0.0023 0.772942
S1 0 0 0 -1.7542 0 -3/17 1.7542 37.059
A2 0 1 0 0.09358 1 0.01294 -0.084417 1.21766
S3 0 0
Tahap 2
Min. z = 2x1 + 5.5x2
Terhadap: tabel optimal tahap pertama
Dari tabel optimal tahap 1 diperoleh:
X1 = 52.94 - 17/12s2
X2 = 37.059 + 1.7542s2
Maka fungsi tujuan adalah:
Min. z = 2(52.94 - 17/12s2) + 5.5(37.059 + 1.7542s2)
= -17/6s2 + 9.6481s2 + 309.7045
= 6.814767s2 + 309.7045
Solusi awal→optimal
VB X1 X2 S1 S2 S3 NK
z0 0 0 -6.814767 0 309.7045
X1 1 0 0 17/12 0 52.94
S1 0 0 1 0.0023417 0 0.772942
X2 0 1 0 -1.7542 0 37.059
S3 0 0 0 0.09358 1 1.21766
Tabel di atas sudah optimal. Solusi optimalnya adalah:
x1 = 52.94; x2 = 37.059; dan z = 309.7045