Anda di halaman 1dari 24

Penjadwalan Mata Pelajaran Secara Otomatis Menggunakan

Algoritma Partial Swarm Optimization (PSO)


Studi Kasus SMA Al Azhar 7 Solo Baru

Disusun Oleh :

Farhan Sungkar (M0518015)

PROGRAM STUDI INFORMATIKA


FAKULTAS TEKNOLOGI INFORMASI DAN SAINS DATA
UNIVERSITAS SEBELAS MARET
2022
ABSTRAK

Jadwal mata pelajaran adalah salah satu komponen penting dalam suksesnya pelaksanaan
kegiatan belajar mengajar di sekolah, karena semua kegiatan guru dan siswa bergantung pada
jadwal yang ada, sehingga jadwal harus disusun dengan benar pada awal tahun pelajaran baru.
Penyusunan jadwal mata pelajaran secara manual seperti yang dilakukan di SMA Al Azhar 7
Solo Baru membutuhkan ketelitian yang tinggi, karena harus memperhatikan kendala-kendala
dalam penjadwalan (kelas, guru, mata pelajaran, hari dan jam) agar tidak saling bertumbukan.
Tujuan penelitian ini adalah untuk menerapkan algoritma Particle Swarm Optimization pada
optimasi pembuatan jadwal mata pelajaran dan untuk mengetahui efektifitas Algoritma
Particle Swarm Optimization (PSO) dalam penjadwalan mata pelajaran. Hasil dari penelitian
akan menghasilkan sistem penjadwalan yang efektif dan tidak ada bentrok jadwal.

Kata kunci : penjadwalan, fitness, algoritma particle swarm optimization, pso


BAB I
PENDAHULUAN
1.1 Latar Belakang

Penjadwalan merupakan sebuah proses pengambilan keputusan yang sering dilakukan di


industri manufaktur maupun di industri yang bergerak di bidang pelayanan atau jasa (Pinedo,
2012). Persoalan penjadwalan berkaitan dengan pengalokasian sumber daya ke dalam tugas-tugas
atau fungsi-fungsi tertentu. Tujuan penjadwalan adalah untuk mengoptimalkan satu atau beberapa
tujuan. Penjadwalan mata pelajaran merupakan kegiatan rutin yang dilakukan oleh setiap institusi
pendidikan pada setiap awal tahun.

Selama ini, penjadwalan yang dilakukan umumnya masih bersifat manual, dengan
mengakomodasi keterbatasan-keterbatasan tersebut, namun belum mempertimbangkan sisi
efisiensi jam pelajaran yang memungkinkan terjadinya bentrokan antara jam pelajaran satu dengan
lainya. Pada penelitian ini, didesain sebuah model penjadwalan mata pelajaran otomatis berbasis
algoritma Particle Swarm Optimization (PSO). Algoritma PSO merupakan sebuah teknik optimasi
stokastik berdasarkan populasi yang dikembangkan pada tahun 1995 oleh Dr. Eberhart dan Dr.
Kennedy, yang diinspirasi oleh perilaku sosial kawanan burung atau sekelompok ikan (Haupt,
R.L., Haupt, S.E., 2004). PSO memiliki kesamaan dengan teknik komputasi evolusioner seperti
algoritma genetik. Dibandingkan dengan algoritma genetik, PSO mempunyai beberapa kelebihan,
antara lain mudah diimplementasikan dan memiliki lebih sedikit fungsi operasi dan parameter
yang harus ditentukan (Haupt, R.L., Haupt, S.E., 2004).

1.2 Rumusan Masalah

Berdasarkan uraian diatas, maka masalah yang timbul dalam permasalahan tugas laporan
ini adalah :

a. Bagaimana Pemanfaatan Algoritma Particle Swarm Optimization (PSO) dalam pembuatan


penjadwalan?

b. Sejauh mana efektifitas Algoritma Particle Swarm Optimization (PSO) dalam penjadwalan
mata pelajaran
1.3 Manfaat Penelitian

Untuk mempermudah pembuatan jadwal mata pelajaran dengan menggunakan Algoritma


Particle Swarm Optimization (PSO) di SMA Al-Azhar 7 Solo Baru.
BAB II
LANDASAN TEORI

2.1 Penjadwalan

Penjadwalan adalah aktivitas perencanaan untuk menentukan kapan dan dimana setiap
operasi sebagai bagian dari suatu pekerjaan secara keseluruhan harus dilakukan pada sumber daya
yang terbatas, serta pengalokasian sumber daya pada suatu waktu tertentu dengan memperhatikan
kapasitas sumber daya yang ada.

2.2 Penjadwalan Mata Pelajaran

Penjadwalan mata pelajaran merupakan suatu kegiatan untuk mengalokasikan pelajaran


pada blok waktu tertentu dan pada ruang kelas yang tersedia dengan memperhatikan batasan-
batasan yang ada. Pembuatan jadwal pelajaran dapat dilakukan dengan menerapkan teori
himpunan pada sistem informasi untuk menghindari terjadinya tabrakan pada jadwal.

Masalah penjadwalan pada dasarnya merupakan masalah kombinasi yang cukup rumit
antara guru, mata pelajaran, waktu dan kelas. Masalah tersebut dapat diselesaikan dengan
mengkombinasikan secara manual untuk mendapatkan jadwal yang baik. Namun cara tersebut
membutuhkan waktu yang relatif lama dan harus dikerjakan secara cermat serta teliti agar tidak
terjadi konflik pada pembuatan jadwal.

2.3 Optimasi

Optimasi merupakan proses pencarian satu atau lebih penyelesaian yang berhubungan
dengan nilai-nilai dari satu atau lebih fungsi objektif pada suatu masalah sehingga diperoleh satu
nilai optimal. . Tujuan dari setiap keputusan adalah untuk meminimumkan usaha yang dilakukan
atau memaksimumkan keuntungan yang diperoleh. Usaha atau keuntungan tersebut secara praktek
dinyatakan sebagai fungsi dengan variabel keputusan yang akan dicari nilai optimumnya. Optimasi
sangat berguna di hampir segala bidang dalam rangka melakukan usaha secara efektif dan efisien
untuk mencapai target hasil yang ingin dicapai.
2.4 Particle Swarm Optimization (PSO)

Metode PSO merupakan teknik optimasi yang pencarian solusinya mengikuti perilaku
sosial yang terjadi pada kehidupan populasi burung (flock of bird) dan populasi ikan (school of
fish) dalam bertahan hidup. Setiap populasi memiliki individu yang dapat mempengaruhi individu
lainya. Masing-masing individu tersebut merupakan partikel yang diibaratkan seperti sebuah titik
pada suatu dimensi ruang waktu tertentu . Misal pada sekelompok burung yang bermigrasi dari
satu tempat ke tempat lain. Sekelompok burung cenderung akan membentuk sebuah formasi
karena tiap burung yang bertetangga memiliki informasi jarak antar satu sama lain. Hal yang sama
juga berlaku pada sekumpulan ikan yang bermigrasi. Ikan dapat mengetahui jarak antar satu sama
lain karena bantuan gelombang air. Hal ini mengakibatkan ikan dapat bergerak dengan cepat dan
jarak yang akurat dalam sebuah kelompok.

Algoritma PSO terdiri dari tiga tahap, yaitu pembangkitan posisi serta kecepatan partikel,
update velocity (update kecepatan), update position (update posisi).

Pertama posisi dan kecepatan dari kumpulan partikel dibangkitkan secara random
menggunakan batas atas (xmax) dan batas bawah (xmin) dari design variable, seperti yang
ditunjukkan pada persamaan (1) dan (2):

Xi0 = Xmin + rand (Xmax – Xmin).......................................................... (1)

Vi0 = Xmin + rand(Xmax - Xmin)...............................................................(2)

Dimana :

Xi0 = posisi awal


Vi0 = kecepatan awal

Xmin = batas bawah

Xmax = batas atas

Rand = nilai random antara 0 dan 1

Dalam proses random diperlukan slot untuk menampung dari random posisi dan random
kecepatan. Melalui proses pembangkitan partikel ini dapat maka kumpulan partikel dapat
terdistribusi secara acak. Posisi dan kecepatan dari partikel direpresentasikan melalui vector :
vik + 1 vik pgk
Langkah kedua adalah update velocity (kecepatan) untuk semua partikel pada waktu k+1
menggunakan fungsi objektif atau nilai fitness posisi partikel saat ini pada design space saat
waktu ke k. Dari nilai fitness dapat ditentukan partikel mana yang memiliki nilai global terbaik
(global best) pada swarm saat ini, dan juga dapat ditentukan posisi terbaik dari tiap partikel pada
semua waktu yang sekarang dan sebelumnya (pi). Perumusan update velocity menggunakan
dua informasi tersebut untuk semua partikel pada kumpulan dengan pengaruh perpindahan yang
sekarang untuk memberikan arah pencarian untuk generasi selanjutnya.

Perumusan update velocity mencakup beberapa parameter random (rand), untuk mendapatkan
cakupan yang baik pada design space, tiga parameter yang mempengaruhi arah pencarian, yaitu
inertia factor (w), self confidence (c1), swarm confidence (c2) akan digabungkan dalam satu
penyajian, seperti yang ditunjukkan persamaan berikut:

Vik+1 = w *Vik + cl * rnd * (pi - Xik) + c2 * (pgk - Xik).......................(3)

Dengan range w = 0.4-0.9, rnd=interval 0-1,

Dimana :

W = factor inersia (inertia weight)

Vik = kecepatan

Xik = posisi

rnd = parameter random range 0 – 1

c1, c2 = konstanta akselerasi (learning rate)

pi = local best

pgk = global best

I = partikel

Langkah terakhir dari setiap iterasi adalah update posisi tiap partikel dengan vektor velocity,
seperti yang ditunjukkan pada persamaan berikut:
Xik+1 = xik + vik+1....................................................................................................... (4)

Tiga tahapan di atas akan diulang sampai kriteria kekonvergenan terpenuhi, kriteria
kekonvergenan sangat penting dalam menghindari penambahan fungsi evaluasi setelah solusi
optimum didapatkan, namun kriteria kekonvergenan tidak selalu mutlak diperlukan, penetapan
jumlah iterasi maksimal juga dapat digunakan sebagai stopping condition dari algoritma.

Banyak cara untuk membangun kondisi berhenti, di antaranya adalah: iterasi dihentikan ketika
PSO telah mencapai iterasi maksimum, atau PSO telah menemukan nilai optimum tertentu atau
kesalahan minimum yang diinginkan

Algoritma PSO adalah sebagai berikut :


for setiap partikel
Inisialisasi partikel menggunakan persamaan (1) dan (2)
end
repeat
for setiap partikel
Hitung nilai fitness
if nilai fitness baru lebih baik daripada nilai fitness lama
Update nilai fitness dari partikel tersebut
End
Pilih partikel dengan nilai fitness terbaik diantara semua partikel tetangganya dan simpan nilai
fitness terbaik tersebut
for setiap partikel
Hitung velocity partikel menggunakan persamaan (3)
Update posisi partikel menggunakan persamaan (4)
End
until (KriteriaBerhenti == true)
BAB III
METODE PENELITIAN

3.1 Diagram Alir

Penelitian ini akan dilakukan berdasarkan diagram alir metode penelitian yang terdapat
pada gambar 3.1

Gambar 3.1 Diagram alir penelitian


1. Studi Pustaka
Pada tahap ini penulis akan melakukan penelitian secara langsung ke sekolah SMA Al-
Azhar 7 Solo Baru, sehingga akan didapatkan data yang valid tentang kondisi yang ada di
sekolah.

2. Analisis Kebutuhan
Pada tahap ini penulis melakukan analisa terhadap kebutuhan yang ada di sekolah SMA
Al-Azhar 7 Solo Baru, terkait dengan survey yang dilakukan, sehingga akan didapatkan data
kebutuhan yang nantinya akan dijadikan latar belakang dalam pembuatan program.

3. Perancangan Aplikasi
Pada tahapan ini penulis melakukan perancangan aplikasi penjadwalan yang akan dibuat,
mulai dari analisa algoritma yang digunakan, instalasi bahasa pemrograman sampai dengan
analisa kendala yang akan terjadi di SMA Al-Azhar 7 Solo Baru.

4. Implementasi dan Pengujian


Pada tahap ini penulis melakukan implementasi aplikasi yang telah dibuat, mulai dari
inisialisasi variabel yang ada (posisi dan kecepatan) sampai dengan analisis yang akan muncul,
setelah itu dilakukan pengujian terhadap aplikasi yang sudah dibuat, untuk mendapatkan hasil
yang optimal.

5. Analisis Hasil (Evaluasi)


Pada tahap ini penulis melakukan analisa hasil yang sudah didapat dari aplikasi yang
sudah jadi, apakah hasilnya sudah memenuhi kriteria optimal ataukah tidak, sehingga akan
didapatkan kesimpulan dari program yang sudah dibuat.
BAB IV
ANALISA DAN PEMBAHASAN

4.1 Analisis Kebutuhan Pengguna

Analisis pengguna dimaksudkan untuk mengetahui siapa saja pengguna yang terlibat
dalam proses penjadwalan mata pelajaran. Pengguna dari aplikasi ini hanya ada satu yakni User /
Staf Tata Usaha.
User merupakan orang yang memiliki hak dalam :
a. Memasukkan data guru, kelas, mata pelajaran dan data ajar.

b. Melihat informasi guru, kelas, mata pelajaran data ajar.

c. Melakukan proses penjadwalan mata pelajaran.

4.2 Analisis Perancangan Dataset

Dalam Perancangan sistem mata pelajaran ini, penulis membuat tabel dataset yang saling
berelasi. tabel-tabel tersebut terdiri dari data id, data kelas, data guru, dan data mata pelajaran.

Berikut merupakan tabel data set yang telah dikumpulkan :

ID guru pelajaran kelas


1 Rifqi Ihsan, S.Pd PAI dan BP E1
2 Rifqi Ihsan, S.Pd PAI dan BP E2
3 Rifqi Ihsan, S.Pd PAI dan BP E3
4 Rifqi Ihsan, S.Pd PAI dan BP E4
Muhammad Sidiq
6 Efendi, S.Pd PPKn E1
Muhammad Sidiq
7 Efendi, S.Pd PPKn E2
Muhammad Sidiq
8 Efendi, S.Pd PPKn E3
Muhammad Sidiq
9 Efendi, S.Pd PPKn E4
Muhammad Husain
10 Arifudin, S.Pd Bahasa Indonesia E1
Muhammad Husain
11 Arifudin, S.Pd Bahasa Indonesia E2
Muhammad Husain
12 Arifudin, S.Pd Bahasa Indonesia E3
Muhammad Husain
13 Arifudin, S.Pd Bahasa Indonesia E4
Muhammad Rizal Bahasa Indonesia (A), Sejarah Indonesia
14 Akbar Hapsoro, S.Pd (B) E3
Muhammad Rizal Bahasa Indonesia (A), Sejarah Indonesia
15 Akbar Hapsoro, S.Pd (B) E4
Fauzi Ratno Masruri,
16 S.Pd Bahasa Inggris E2
Fauzi Ratno Masruri,
17 S.Pd Bahasa Inggris E4
Endah Noor Santi,
20 S.Pd Matematika (A), Matematika IPA (B) E1
Endah Noor Santi,
21 S.Pd Matematika (A), Matematika IPA (B) E2
Endah Noor Santi,
22 S.Pd Matematika (A), Matematika IPA (B) E3
Endah Noor Santi,
23 S.Pd Matematika (A), Matematika IPA (B) E4
Dwi Wahyuningsih,
24 M.Sc Fisika E2
Dwi Wahyuningsih,
25 M.Sc Fisika E3
Dwi Wahyuningsih,
26 M.Sc Fisika E4
Yatim Hermawan,
28 SE., S.Kom Informatika E1
Yatim Hermawan,
29 SE., S.Kom Informatika E2
Yatim Hermawan,
30 SE., S.Kom Informatika E3
Yatim Hermawan,
31 SE., S.Kom Informatika E4
Novita Ariningtyas
32 Azis S, S.Pd Biologi E1
Novita Ariningtyas
33 Azis S, S.Pd Biologi E2
Novita Ariningtyas
34 Azis S, S.Pd Biologi E3
Ayu Meizy Azizah,
37 S.Pd Kimia E2
Ayu Meizy Azizah,
38 S.Pd Kimia E3
Ayu Meizy Azizah,
39 S.Pd Kimia E4
Gading Fitra Sanjaya,
40 S.Pd Geografi E1
Gading Fitra Sanjaya,
41 S.Pd Geografi E2
Gading Fitra Sanjaya,
42 S.Pd Geografi E3
Gading Fitra Sanjaya,
43 S.Pd Geografi E4
44 Fitria, S.Pd Sosiologi E1
45 Fitria, S.Pd Sosiologi E2
46 Fitria, S.Pd Sosiologi E3
47 Fitria, S.Pd Sosiologi E4
Muhammad Darobi,
48 S.Pd Ekonomi E1
Muhammad Darobi,
49 S.Pd Ekonomi E2
Muhammad Darobi,
50 S.Pd Ekonomi E3
Muhammad Darobi,
51 S.Pd Ekonomi E4
Halida Novi
52 Wibawati, S.Pd Sejarah (A), Sejarah Indonesia (B) E1
Halida Novi
53 Wibawati, S.Pd Sejarah (A), Sejarah Indonesia (B) E2
Halida Novi
54 Wibawati, S.Pd Sejarah (A), Sejarah Indonesia (B) E3
Halida Novi
55 Wibawati, S.Pd Sejarah (A), Sejarah Indonesia (B) E4
Mochammad Danang
56 Fitriawan, S.Pd Penjasorkes E1
Mochammad Danang
57 Fitriawan, S.Pd Penjasorkes E2
Mochammad Danang
58 Fitriawan, S.Pd Penjasorkes E3
Mochammad Danang
59 Fitriawan, S.Pd Penjasorkes E4
Ayu Tri Nurhidayati,
60 S.Pd Penjasorkes E1
Ayu Tri Nurhidayati,
61 S.Pd Penjasorkes E2
Ayu Tri Nurhidayati,
62 S.Pd Penjasorkes E3
Ayu Tri Nurhidayati,
63 S.Pd Penjasorkes E4
64 Nurul Hidayah, S.Sn Seni dan Budaya E1
65 Nurul Hidayah, S.Sn Seni dan Budaya E2
66 Nurul Hidayah, S.Sn Seni dan Budaya E4
Winda
67 Prasetyoningrum, S.S Bahasa Jawa E1
Winda
68 Prasetyoningrum, S.S Bahasa Jawa E2
Winda
69 Prasetyoningrum, S.S Bahasa Jawa E3
Winda
70 Prasetyoningrum, S.S Bahasa Jawa E4
Reni Purnaningsih,
71 S.Pd Bahasa & Sastra Inggris (A), B. Inggris (B) E1
Reni Purnaningsih,
72 S.Pd Bahasa & Sastra Inggris (A), B. Inggris (B) E3
Raning Fadillah
73 Candri, S.Pd Bahasa Arab E1
Raning Fadillah
74 Candri, S.Pd Bahasa Arab E2
Raning Fadillah
75 Candri, S.Pd Bahasa Arab E3
Raning Fadillah
76 Candri, S.Pd Bahasa Arab E4
77 Lutfi Izuddin, S.Pd Pend. Al Quran E1
78 Lutfi Izuddin, S.Pd Pend. Al Quran E2
79 Lutfi Izuddin, S.Pd Pend. Al Quran E4
80 Yasri Tahfiz E1
81 Yasri Tahfiz E2
82 Yasri Tahfiz E3
83 Yasri Tahfiz E4
Muhammad Fatahillah
84 Ismail Tahfiz E1
Muhammad Fatahillah
85 Ismail Tahfiz E2
Muhammad Fatahillah
86 Ismail Tahfiz E4
87 Aiji Nurokhman Tahfiz E3
Tsalist Mufidatul
88 Hasanah Tahfiz E1
Tsalist Mufidatul
89 Hasanah Tahfiz E2
Tsalist Mufidatul
90 Hasanah Tahfiz E4

4.3 Implementasi PSO dengan bahasa python

Disini penulis menerapkan algoritma PSO untuk penjadwalan mata pelajaran menggunakan
python

1. Pembangkitan posisi secara acak

Langkah pertama adalah pembangkitan posisi awal setiap partikel Menggunakan


Rumus x0 = xmin+rand(xmax-xmin), kecepatan awal (v0) didefinisikan sama dengan
posisi awal.

2. Menentukan Nilai fitness setiap partikel

Untuk mencari nilai fitness dalam kasus penjadwalan mata pelajaran ini, dimana
kita ingin meminimalkan jumlah pelanggaran terhadap constraint.

Semakin kecil jumlah pelanggaran yang terjadi, maka nilai fitness yang dihasilkan
semakin besar. Sebaliknya semakin besar jumlah pelanggaran yang terjadi, maka nilai
fitness yang dihasilkan semakin kecil. Partikel dengan nilai fitness terbesar merupakan
partikel yang terbaik.

3. Menentukan nilai Local best dan global best

hari-jam guru-pel-kelas local_best global_best


1, 4 1 E1 1 1
2, 3 1 E2 1 1
2, 4 1 E3 1 1

3, 3 1 E4 1 1

2, 4 2 E1 1 1
2, 1 2 E2 0,5 1

5, 1 1 E1 1 1

2, 3 1 E2 0,5 1
4, 2 1 E1 1 1

5, 4 1 E2 0,25 1
3, 3 1 E1 1 1
5, 1 1 E2 1 1
5, 1 1 E3 0,5 1

2, 4 1 E1 0,5 1
4, 3 1 E1 1 1
5, 3 1 E2 0,5 1

1, 2 1 E1 1 1
2, 4 1 E2 0,5 1
3, 1 1 E1 1 1

2, 4 1 E2 0,25 1
5, 4 1 E1 0,33 1

5, 3 1 E1 1 1
4, 4 1 E2 1 1
2, 1 1 E3 1 1

5, 1 1 E4 0,5 1
5, 2 1 E1 0,33 1

4. Proses update velocity atau kecepatan

Sebelum proses update velocity terlebih dahulu harus ditentukan parameter-


parameter yang akan digunakan pada saat proses update velocity(vik+1).
berikut merupakan parameter-parameter dalam proses update velocity :

c1 3,5

c2 0,5

W 0,7

Rumus : W*Vik + c1 *rand*(pi-Xik) + C2 * rand * (Pgk - Xik)

Berikut screenshot lengkap implementasi dari PSO :


5. Proses update posisi

Berikut adalah representasi dalam bentuk jadwal update nilai posisi partikel jam,
kelas, dan hari berdasarkan nilai velocity
Jam E1 E2 E3 E4
SENIN 1 2 6 3 21
2 13 22
3 6 10
4 18 1 3
SELASA 1 2
3 22 14 18
4 6 3 20
RABU 1 14 15 5
2 7
3 5 13 13
4 10 11
KAMIS 1 3 2
2 7 12 8
3 1 21 1
4 11 7
JUMAT 1 17 19 17
2 20 12
3 1 9 6
4 9 2

Berikut merupakan hasil screenshot dari hasil update yang dimunculkan di Google Chrome :
BAB V
KESIMPULAN

Setelah dilakukan uji coba dan analisa terhadap tugas akhir ini, maka kita dapatkan :
1. Algoritma Particle Swarm Optimization (PSO) dapat digunakan untuk
mengoptimasi permasalahan penjadwalan mata pelajaran di SMA Al-Azhar 7
Solo Baru
2. Hasil akhir dari penjadwalan mata pelajaran dengan PSO yang paling optimal
yaitu dengan menggunakan parameter C1=3.5, C2=0.5, W=0.7 dan jumlah
partikel sebanyak 10.
3. Pada percobaan menggunakan algoritma particle swarm optimization ini masih
didapatkan kemungkinan terjadinya perbenturan dalam jadwal.
DAFTAR PUSTAKA

Kusmarna, Irfrans, L. K. Wardhani, dan M. Safrizal. 2015. Aplikasi Penjadwalan Mata


Kuliah Menggunakan Algoritma Particle Swarm Optimization (PSO). Jurnal Teknik
Informatika Vol. 8 No. 2.

Ariani, Dian, 2011, Optimasi Penjadwalan Mata Kuliah di Jurusan Teknik Informatika
PENS Dengan Menggunakan Algoritma Particle Swarm Optimization (PSO), Surabaya,
Institut Teknologi Sepuluh Nopember.

Kusmarna, Irfrans. 2013. Rancang Bangun Aplikasi Penjadwalan Mata Kuliah


Menggunakan Particle Swarm Optimization (PSO). Skripsi. Universitas Islam Negeri Sultan
Syarif Kasim Riau. Pekanbaru.

Wati, Dwi Ana R. dan Yuli Agusti Rochman. 2013. Model Penjadwalan Matakuliah Secara
Otomatis. Berbasis Algoritma Particle Swarm Optimization (PSO). Jurnal Rekayasa Sistem
Industri Vol. 2, No.1.

Pinedo, M. L. 2012. Scheduling: Theory, Algorithms, and Systems. New York: Springer.

Haupt, R.L., Haupt, S.E. 2004. Practical Genetic Algorithms. New Jersey: John Wiley &
Sons, 253 p.

Anda mungkin juga menyukai