Jika vektor x dapat dinyatakan sebagai vektor
xB x
x N
= dengan x
B
adalah vektor variabel basis dan x
N
adalah vektor variabel nonbasis, maka Ax=b dapat dinyatakan
sebagai x
B Ax
B N
x N
Bx Nx
b B
N =
= +
= …2
Karena B adalah matriks tak singular, maka B
memiliki invers, sehingga dari 2 x
B
dapat dinyatakan sebagai
1 1
x B
b B
Nx N
b −
− =
− …3
Definisi 5 Solusi Basis
Vektor x disebut solusi basis jika : i. x memenuhi kendala persamaan Ax=b
dari LP. ii. Kolom-kolom dari matriks koefisien
yang berpadanan dengan komponen tak nol dari x adalah bebas linear.
[Nash Sofer, 1996]
Definisi 6 Solusi Fisibel Basis
Vektor x disebut solusi fisibel basis jika x
merupakan solusi basis dan
x ≥
. [Nash Sofer, 1996]
Ilustrasi solusi basis dan solusi fisibel basis dapat dilihat dalam contoh berikut :
Contoh 1
Misalkan diberikan LP berikut: Minimumkan
2 3
1 2
z x
x = −
− terhadap : 2
4 1
2 3
x x
x −
+ +
= 2
11 1
2 4
x x
x −
+ +
= 5
5 1
x x
+ =
, ,
, ,
5 1
2 3
4 x x
x x
x ≥ …4
Dari LP tersebut didapatkan : 2
1 1
4 1 2
1 0 ,
11 1
1 5
A b
− =
− =
Misalkan dipilih dan
5 3
4 1
2 T
T x
x x
x x
x x
B N
= =
maka matriks basisnya adalah 1
1 1
B = Dengan menggunakan matriks basis tersebut,
diperoleh ,
1 4 11 5
T xN
T x
B b
B =
− =
= …5
Solusi 5 merupakan solusi basis, karena solusi tersebut memenuhi kendala pada LP 4 dan
kolom-kolom pada matriks kendala yang berpadanan dengan komponen taknol dari 5
yaitu B adalah bebas linear kolom yang satu bukan merupakan kelipatan dari kolom yang
lain. Solusi 5 juga merupakan solusi fisibel basis, karena nilai-nilai variabelnya lebih dari
atau sama dengan nol. 2.2 Integer Linear Programming
Model ILP atau disebut juga Integer Programming IP
, adalah suatu model LP yang menggunakan bilangan bulat integer. Jika
semua variabel harus berupa integer, maka masalah
tersebut disebut
pure integer
programming. Jika hanya sebagian yang harus
integer ,
maka disebut
mixed integer
programming . IP dengan semua variabelnya
harus bernilai 0 atau 1 disebut 0-1 IP. [Garfinkel Nemhauser, 1972]
Definisi 5Linear Programming Relaksasi
LP-Relaksasi dari suatu IP merupakan LP yang diperoleh dari IP tersebut dengan
menghilangkan kendala integer atau kendala 0- 1 pada variabelnya.
[Winston, 1995]
2.3 Metode Branch
and Bound
untuk menyelesaikan
masalah Integer
Programming Dalam penulisan karya ilmiah ini, untuk
memperoleh solusi optimal dari masalah IP digunakan software Lingo 8.0 yaitu sebuah
program yang didesain untuk menentukan solusi model linear, nonlinear, dan optimisasi
integer
menjadi lebih cepat, mudah, dan lebih efisien.
Software Lingo 8.0 ini menggunakan
metode branch and bound untuk menyelesaikan masalah ILP.
Prinsip dasar metode branch and bound adalah memecah daerah fisibel dari masalah
LP-relaksasi dengan membuat subproblem- subproblem
.
x
2
x
1
Branch Membuat partisi daerah solusi ke dalam
subproblem . Tujuannya untuk menghapus
daerah solusi yang tidak fisibel. Hal ini dicapai dengan menentukan kendala yang
penting untuk menghasilkan solusi IP, secara tidak langsung titik integer yang tidak
fisibel terhapus. Dengan kata lain, hasil pengumpulan dari subproblem-subproblem
yang lengkap menunjukkan setiap titik integer
yang fisibel dari masalah asli. Karena sifat alami partisi itu, maka proses
tersebut dinamakan Branching. Bound
Misalkan masalahnya
diasumsikan merupakan tipe maksimisasi, nilai objektif
yang optimal untuk setiap subproblem dibuat dengan membatasi pencabangan
dengan batas atas dari nilai objektif yang dihubungkan
dengan sembarang
nilai integer
yang fisibel. Hal ini sangat penting untuk mengatur dan menempatkan solusi
optimum. Operasi ini yang menjadi alasan dinamakan Bounding.
[Taha, 1975] Aspek kunci dari metode branch and
bound adalah sebagai berikut:
Langkah 1 : Periksa apakah IP memenuhi kondisi berikut :
1 Subproblem tidak fisibel. 2 Subproblem menghasilkan solusi optimal
dengan semua variabel bernilai integer. 3 Nilai optimal untuk subproblem lebih
kecil dari
dalam masalah
memaksimumkan batas bawah lower boundLB
. Jika ketiga kondisi tersebut terpenuhi
maka cabang subproblem tidak diperlukan. Langkah 2 : Sebuah subproblem mungkin
dapat dihapuskan dari pertimbangan dengan kondisi sebagai berikut :
1 Subproblem tidak fisibel. 2 Batas bawah yang menunjukkan nilai
optimal dari kandidat terbaik setidaknya lebih
besar dari
nilai optimal
subproblem .
[Winston, 1995]
Contoh 2
Misalkan diberikan IP berikut: Maksimumkan
2 3
1 2
z x
x =
+ Terhadap :
2 10
1 2
x x
+ ≤
3 4
25 1
2 x
x +
≤ ,
1 2
x x ≥ dan integer
Daerah fisibel untuk masalah IP di atas diberikan pada gambar berikut :
2 4
6 8
10 x
1
-1 1
2 3
4 5
6 x
2
Gambar 1. Daerah Fisibel IP Metode branch and bound dimulai dengan
menentukan solusi LP-relaksasi subproblem 1. Solusi LP-relaksasi untuk masalah di atas
adalah x
1
= 5, x
2
= 2,5, dan z = 17,5. Solusi tersebut tidak memenuhi kendala integer. Oleh
karena itu, harus dibuat subproblem yang baru dengan memilih variabel yang tidak memenuhi
kendala integer. Dengan memilih x
2
= 2,5 secara sembarang, diketahui bahwa daerah
2x
2
3 dari daerah fisibel subproblem 1 tidak akan memuat solusi IP yang fisibel karena tidak
memenuhi kendala integer. Subproblem yang baru adalah sebagai berikut :
Subproblem 2 : Subproblem 1 + kendala
2
3 x
≥
Subproblem 3 : Subproblem 1 + kendala
2
2
x
≤
Daerah fisibel untuk subproblem 2 dan subproblem
3 diberikan pada gambar berikut :
2 4
6 8
10 -1
1 2
3 4
5 6
Gambar 2. Daerah Fisibel untuk Subproblem 2 dan Subproblem 3
Subproblem 2 dan subproblem 3 tidak dapat
diselesaikan secara bersamaan, sehingga harus diselesaikan dengan dua masalah linear
programming yang berbeda. Pada subproblem 2
diperoleh solusi x
1
= 4, x
2
= 3, dan z = 17. Karena
semua variabel
bernilai integer
x
1
= 5 x
2
= 2,5 Solusi Optimal Subproblem 1
solusinya memenuhi kendala integer, maka tidak perlu membuat subproblem baru. Pada
subproblem 3 diperoleh solusi x
1
= 5,667, x
2
= 2, dan z = 13,3333. Karena variabelnya tidak memenuhi kendala integer, maka harus
dibuat subproblem baru. Subproblem untuk masalah IP di atas diberikan pada gambar 3.
Pada Gambar 3, subproblem 2 dan subproblem
7 merupakan kandidat terbaik karena semua variabelnya bernilai integer.
Subproblem 2 dan subproblem 7 merupakan
solusi optimal untuk masalah IP di atas karena mempunyai nilai z sama besar. Solusi
lengkapnya dapat dilihat pada Lampiran 1.
Gambar 3. Metode branch and bound untuk menentukan solusi IP
III PEMODELAN
Langkah awal
membangun model
penjadwalan mata
kuliah adalah
mendeskripsikan masalah tersebut secara jelas dan lengkap. Selanjutnya masalah
tersebut diformulasikan dalam bentuk ILP yang siap diselesaikan dengan metode yang
sesuai..
Pemodelan masalah penjadwalan dibuat berdasarkan ketersediaan sejumlah ruangan
yang dapat digunakan untuk kegiatan perkuliahan, waktu yang diatur setiap
harinya dalam periode lima hari senin s.d. jum’at, serta sejumlah mata kuliah yang akan
dijadwalkan. Jadwal tersebut dibuat sedemikian rupa
sehingga memenuhi kendala utama dan kendala tambahan. Kendala utama dalam penjadwalan,
yaitu :
1. Semua mata kuliah terjadwalkan 2. Tidak ada overlapping mata kuliah wajib di
semester yang sama 3. Tidak ada overlapping mata kuliah pilihan
untuk bidang minat yang sama. Subproblem
1 x
1
= 5, x
2
= 2,5 dan z = 17,5
2
2
x
≤
2
3 x ≥
Subproblem 2
x
1
= 4, x
2
= 3 dan z = 17 Subproblem
3 x
1
=5,667, x
2
= 2 dan z = 13,333
1
6
x
≥
1
5 x
≤
Subproblem 4
Solusi tak fisibel Subproblem
5 x
1
= 6, x
2
= 1,75 dan z = 17,25
2
2 x ≥
2
1
x
≤
Subproblem 6
Solusi tak fisibel Subproblem
7 x
1
= 7, x
2
= 1 dan z = 17
sedangkan kendala tambahan, yaitu : 1. Mata
kuliah wajib
tidak boleh
dilaksanakan pada waktu sore hari. 2. Mata kuliah beresponsi, jadwal kuliah
dan jadwal
responsi harus
diselenggarakan pada hari yang berbeda. 3. Setiap mata kuliah diselenggarakan tepat
dalam satu ruangan. 4. Untuk mata kuliah yang terdiri dari
kuliah dan responsi, jadwal kuliah dilaksanakan
lebih dulu
dari jadwal
responsi. 5. Setiap mata kuliah diselenggarakan pada
periode waktu yang sesuai. Misalkan mata kuliah dengan waktu tatap muka 3 jam tidak
boleh diselenggarakan pada waktu tatap muka 2 jam.
Untuk memformulasikan masalah tersebut ke dalam ILP tentunya diperlukan beberapa
asumsi yang mendukung. Selain itu diperlukan pula pendefinisian suatu variabel keputusan:
{
, ,
1 ; jika mata kuliah diselenggarakan pada waktu dalam ruangan
0 ; selainnya
i j k
j i
k x
= untuk setiap periode waktu i, untuk setiap mata kuliah j, dan untuk setiap ruangan k.
Karena tujuan utama adalah menentukan penjadwalan
yang memuat
sebanyak mungkin mata kuliah yang ditawarkan,
maka fungsi objektif dari permasalahan ini dimodelkan sebagai berikut:
, ,
Maksimumkan
i j k i
j k
x dengan kendala-kendala sebagai berikut:
1. Mata kuliah wajib dalam semester yang sama tidak boleh dijadwalkan pada
periode waktu yang sama.
, ,
1
i j k k
j
x ≤
;
i ∀
= Mata kuliah wajib di semester yang sama
j 2. Mata kuliah beresponsi, jadwal kuliah
dan jadwal
responsi harus
diselenggarakan dalam
hari yang
berbeda.
ˆ , ,
ˆ
1
i j k k
i j
x
≤
ˆ = Mata kuliah beresponsi j
3. Mata kuliah wajib dan mata kuliah pilihan dalam semester yang sama tidak
boleh diselenggarakan pada periode waktu yang sama.
, , ˆ
1
i j k k
j
x ≤
;
i ∀
ˆ= Mata kuliah wajib dan mata kuliah pilihan pada semester yang sama.
j 4. Mata kuliah dalam bidang minat yang sama
tidak boleh diselenggarakan pada periode waktu yang sama.
, ,
1
i j k k
j
x ≤
;
i ∀
= Mata kuliah pilihan dalam bidang minat yang sama.
j
5. Mata kuliah
tertentu tidak
dapat diselenggarakan
pada periode
waktu tertentu. Misal : Mata kuliah wajib tidak
boleh diselenggarakan pada waktu sore hari.
ˆ , ,
ˆ i j k
k i
j
x =
Periode waktu sore hari ˆ
Mata kuliah wajib i
j =
= 6. Setiap mata kuliah diselenggarakan tepat
dalam satu ruangan pada suatu periode waktu.
, ,
1
i j k i k
x =
; j ∀
7. Paling banyak
satu mata
kuliah diselenggarakan dalam suatu ruangan dan
suatu periode waktu.
, ,
1
i j k j
x ≤
; ,
i k ∀
8. Mata kuliah dengan waktu tatap muka 3 jam tidak boleh diselenggarakan pada waktu
tatap muka 2 jam.
ˆ , ,
ˆ i j k
k i
j
x =
Waktu tatap muka 2 jam. ˆ= Mata kuliah dengan waktu tatap muka
3 jam. i
j =
9. Semua variabel keputusan adalah integer nol atau satu.
, ,
{0,1}
i j k
x ∈
; , ,
i j k ∀
IV. STUDI KASUS MASALAH PENJADWALAN DI DEPARTEMEN MATEMATIKA FMIPA IPB