SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN...

14
1 SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN SECARA RANDOM DENGAN MENGGUNAKAN ALGORITMA SEMUT (STUDI KASUS : SMP MAITREYAWIRA TANJUNGPINANG) Fendy Mahasiswa Informatika, FT UMRAH, [email protected] ABSTRAK Ujian yang dilakukan pada sekolah biasa nya untuk mengukur kemampuan peserta didik dalam proses belajar. Tetapi dalam proses pembelajaran dalam kelas bagaimana siswa dapat menguasai dan memahami bahan ajar secara tuntas masih merupakan masalah yang sulit. Hal tersebut dikarenakan bahwa masih belum bisa terukur secara pasti bahwa ujian yang dikerjakan siswa tersebut secara jujur atau tidak, di karenakan banyak beragaman jenis siswa yang berbeda. Oleh karena itu seperti studi kasus di SMP Maitreyawira Tanjungpinang di lakukan pengacakan seluruh kelas agar tidak saling kenal dalam ruangan ujian tersebut. Akan tetapi proses pengacakan di SMP Maitreyawira Tanjungpinang masih dilakukan secara manual sehingga proses pengacakan tersebut membutuhkan proses yang lama. Skripsi ini akan membicarakan bagaimana membangun sebuah aplikasi pengacakan tempat duduk peserta ujian dengan menggunakan algoritma semut. Sistem yang ingin di bangun adalah sebuah aplikasi desktop dengan hasil akhir sebauh denah pengacakan tempat duduk ujian tanpa ada peserta ujian yang duduk bersebelahan dengan teman sekelas. Dari hasil penelitian dengan penerapan Algoritma Semut, dapat menghasilkan error terbaik 0,0% dengan rata rata siklus terbaik 4,687 % sedangkan pengacakan biasa menghasilkan error terbaik 6.25% dengan rata rata siklus terbaik 22.5%. akan tetapi, waktu proses pada pengacakan fisher-yates suffle lebih cepat dibandingkan dengan pengacakan algoritma semut. Semakin banyak siklus yang diproses semakin lama waktu prosesnya. Kata Kunci : Pengacakan tempat duduk, meta-heuristic, algoritma semut ABSTRACT The general purpose of conducting an examination at school is to measure the ability of the students in learning process. But how the students can understand and master the lesson completely is still hard to achieve. The main reason is because the students still haven’t done the examination honestly and the students themselves are various in honesty. Therefore,as a case study in Maitereyawira Secondary school, the school randomize the students by their classrooms, so that they will not meet with theirclassmates surround their seats. But the randomization process is still done manually so that it takes a long process and time to do. This final task will discuss how to build an application to randomize the seats of examinees using Ant Colony Optimizer (ACO) algorithm. The system that will be built is a desktop application with a final result of randomization sketch of student seat without examinees sitting around their classmates. At the research result with Ant Colony Optimizer, cam make a best error 0,0% with average 4.687% and with fisher-yates suffle can make a best error 6.25% with average 22.5%. but at fisher-yates suffle the prosses time is more faster than ant colony optimizer. The more iteration are prosessed, the application prosessed are more longer. Key Word: Randomization exam seat, meta-heuristic, ant colony optimizer

Transcript of SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN...

Page 1: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

1

SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN SECARA RANDOM

DENGAN MENGGUNAKAN ALGORITMA SEMUT

(STUDI KASUS : SMP MAITREYAWIRA TANJUNGPINANG)

Fendy

Mahasiswa Informatika, FT UMRAH, [email protected]

ABSTRAK

Ujian yang dilakukan pada sekolah biasa nya untuk mengukur kemampuan peserta

didik dalam proses belajar. Tetapi dalam proses pembelajaran dalam kelas bagaimana siswa

dapat menguasai dan memahami bahan ajar secara tuntas masih merupakan masalah yang

sulit. Hal tersebut dikarenakan bahwa masih belum bisa terukur secara pasti bahwa ujian

yang dikerjakan siswa tersebut secara jujur atau tidak, di karenakan banyak beragaman jenis

siswa yang berbeda. Oleh karena itu seperti studi kasus di SMP Maitreyawira Tanjungpinang

di lakukan pengacakan seluruh kelas agar tidak saling kenal dalam ruangan ujian tersebut.

Akan tetapi proses pengacakan di SMP Maitreyawira Tanjungpinang masih dilakukan secara

manual sehingga proses pengacakan tersebut membutuhkan proses yang lama.

Skripsi ini akan membicarakan bagaimana membangun sebuah aplikasi pengacakan

tempat duduk peserta ujian dengan menggunakan algoritma semut. Sistem yang ingin di

bangun adalah sebuah aplikasi desktop dengan hasil akhir sebauh denah pengacakan tempat

duduk ujian tanpa ada peserta ujian yang duduk bersebelahan dengan teman sekelas. Dari

hasil penelitian dengan penerapan Algoritma Semut, dapat menghasilkan error terbaik 0,0%

dengan rata – rata siklus terbaik 4,687 % sedangkan pengacakan biasa menghasilkan error

terbaik 6.25% dengan rata – rata siklus terbaik 22.5%. akan tetapi, waktu proses pada

pengacakan fisher-yates suffle lebih cepat dibandingkan dengan pengacakan algoritma semut.

Semakin banyak siklus yang diproses semakin lama waktu prosesnya.

Kata Kunci : Pengacakan tempat duduk, meta-heuristic, algoritma semut

ABSTRACT

The general purpose of conducting an examination at school is to measure the ability

of the students in learning process. But how the students can understand and master the

lesson completely is still hard to achieve. The main reason is because the students still

haven’t done the examination honestly and the students themselves are various in honesty.

Therefore,as a case study in Maitereyawira Secondary school, the school randomize the

students by their classrooms, so that they will not meet with theirclassmates surround their

seats. But the randomization process is still done manually so that it takes a long process

and time to do.

This final task will discuss how to build an application to randomize the seats of

examinees using Ant Colony Optimizer (ACO) algorithm. The system that will be built is a

desktop application with a final result of randomization sketch of student seat without

examinees sitting around their classmates. At the research result with Ant Colony Optimizer,

cam make a best error 0,0% with average 4.687% and with fisher-yates suffle can make a

best error 6.25% with average 22.5%. but at fisher-yates suffle the prosses time is more

faster than ant colony optimizer. The more iteration are prosessed, the application prosessed

are more longer.

Key Word: Randomization exam seat, meta-heuristic, ant colony optimizer

Page 2: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

2

I. PENDAHULUAN

1.1. Latar Belakang

Dalam proses pembelajaran bahwa

penguasaan pengetahuan dan keterampilan

hidup yang dibutuhkan siswa dalam

menghadapi kehidupan ril adalah merupakan

tujuan pendidikan. Tetapi dalam proses

pembelajaran dalam kelas bagaimana siswa

dapat menguasai dan memahami bahan ajar

secara tuntas masih merupakan masalah

yang sulit. Hal tersebut dikarenakan bahwa

masih belum bisa terukur secara pasti bahwa

ujian yang dikerjakan siswa tersebut secara

jujur atau tidak, di karenakan banyak

beragaman jenis siswa yang berbeda. Dari

perbedaan tersebut maka dapat

menimbulkan beragamnya sikap dan anak

didik di dalam ruang ujian. Menjadi tugas

guru bagaimana menjadikan ruang ujian

yang baik agar terhindari dari menyontek

pada jawaban ujian.

Seperti contohnya pada SMP

Maitreyawira Tanjungpinang saat ujian

semester semua kelas mulai dari kelas 7

sampai dengan kelas 9 di acak sehingga

dalam satu ruang agar tidak terjadi

menyontek pada jawaban ujian yang di

lakukan oleh siswa, akan tetapi di karenakan

pemetaan siswa yang dilakukan dengan

menggunakan manual sehingga

membutuhkan waktu yang lama dalam

penyusunan tempat duduk ujian. Sehingga

agar pemetaan tempat duduk ujian di susun

dengan cepat di perlu kan suatu sistem agar

susunan tempat duduk ujian yang dilakukan

dapat meminimalisir terjadinya menyontek

Algoritma semut adalah salah satu

jenis meta-heuristic yang sudah terbukti

dapat menyelesaikan banyak sekali

permasalahan kombinatorial yang sulit

(Fernandes, 2012). Seperti menyelesaikan

masalah Traveling Salesman Problem (TSP),

masalah penyusunan jadwal mata pelajaran,

dan masalah penjadwalan serta rute kereta

api. Pada penelitian yang dilakukan

Fernandes (2012) dalam penyelesaian

permasalahan penjadwalan kuliah dengan

menggunakan algoritma semut. Dalam

penelitiannya aplikasi penjadwalan mata

kuliah ini bertujuan untuk membangkitkan

sebuah jadwal perkuliahan yang sudah

terbebas dari masalah bentrok Berdasarkan

latar belakang masalah tersebut, penulis

memandang penting mengangkat kasus di

atas ke dalam Skripsi ini dengan mengambil

judul “Sistem Penataan Tempat Duduk

Peserta Ujian Secara Random Dengan

Menggunakan Algoritma Semut (Studi

Kasus: SMP Maitreyawira Tanjungpinang)”.

Sistem yang ingin dibangun adalah sebuah

aplikasi desktop dengan hasil akhir sebuah

denah pengacakan tempat duduk ujian tanpa

ada peserta ujian yang duduk bersebelahan

dengan teman sekelas.

II. TINJAUAN PUSTAKA

2.1. Penelitian Terdahulu

Penelitian yang dilakukan oleh

Socha dkk. (2003) dalam penyelesaian

penjadwalan (timetable) di universitas

menggunakan algoritma Ant. Dalam

penelitiannya mereka menggunakan

algoritma Ant dasar dan variasinya (Max

Min Ant System / MMAS). Kedua algoritma

tersebut diuji untuk tiga kasus penjadwalan

dan menyimpulkan bahwa variasi MMAS

lebih baik kinerjanya dibandingkan dengan

algoritma Ant dasar.

Penelitian yang dilakukan oleh

Mutakhiroh dkk. (2007) dalam penyelesaian

pencarian jalur terpendek dengan

menggunakan algortima semut. Dalam

penelitiannya mereka menggunakan model

matematis dalam penyelesaian pencarian

jalur terpendek. Dengan menggunakan graf

dan menentukan jarak antar kota dalam

pencarian jarak terpendek yang akan dilalui.

Penelitian yang dilakukan oleh

Fernandez (2012) dalam penyelesaian

permasalahan penjadwalan kuliah dengan

menggunakan algoritma semut. Dalam

penelitiannya aplikasi penjadwalan mata

kuliah ini bertujuan untuk membangkitkan

sebuah jadwal perkuliahan yang sudah

terbebas dari masalah bentrok dengan proses

Page 3: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

3

acak local search dan dipercepat oleh

algoritma semut.

Penelitian yang dilakukan Fitriyani

(2015) dalam analisa pencarian jalur

terpendek ke penginapan di kota Batam

dengan menggunakan algoritma Ant Colony,

dalam penelitiannya pencarian jalur

terpendek dengan menentukan jarak yang di

berikan kordinat x dan y dan di susun rute

dengan menggunakan algoritma semut untuk

mencari jalur alternatif untuk mencapai

penginapan dalam jalur pariwisata kota

Batam.

2.2. Algoritma Semut

Algoritma Semut (Ant Algorithm)

merupakan algoritma yang dimunculkan

sebagai suatu pendekatan multi-agen

terhadap optimasi berbagai permasalahan

yang berkaitan dengan graf (Paninalone,

2011). Sampai saat ini, berbagai upaya

pengembangan dilakukan untuk memperluas

pemanfaatan dari algoritma semut. Berbagai

pemanfaatan yang sudah umum digunakan

antara lain untuk menyelesaikan

permasalahan rute kendaraan, penyurutan

sekuensial, pewarnaan graf, permasalahan

routing pada jaringan dan berbagai

permanfaatan lainnya.

Munurut Fernandez (2012) cara kerja

algoritma semut sebagai berikut :

1. Pada Awalnya, semut keliling dengan

acak.

2. Ketika semut – semut menemukan jalur

yang berbeda misalnya sapai pada

persimpangan, mereka akan mulai

menentukan arah jalan secara acak

seperti Gambar 2.1.a

3. Sebagian semut memilih berjalan ke atas

dan sebagian lagi akan memilih berjalan

ke bawah seperti Gambar 2.1.b

4. Ketika menemukan makanan mereka

kembali ke koloninya sambil

memberikan tanda dengan jejak feromon.

5. Karena jalur yang ditempuh lewat jalur

bawah lebih pendek, maka semut yang

bawah akan tiba lebih dulu dengan

asumsi kecepatan semua semut adalah

sama seperti Gambar 2.1.c

6. Feromon yang ditinggalkan oleh semut

di jalur yang lebih pendek aromanya

akan lebih kuat dibandingkan feromon di

jalur yang lebih panjang seperti Gambar

2.1.d

7. Semut – semut lain akan lebih tertarik

menyikuti jalur bawah karena aroma

feromon lebih kuat.

Gambar 2.1. Tingkah laku semut

(Sumber : Fernandez, 2012)

Menurut Muttakhiroh dkk. (2007)

dalam algoritma semut diperlukan variable

dan langkah –langkah untuk menentukan

jarak terpendek, yaitu :

Langkah 1 :

a) Inisialisasi harga parameter – parameter

algoritma.

Parameter – parameter yang di

inisialisasikan adalah :

1) Intensitas jejak semut antar kota dan

perubahannya (𝜏𝑖𝑗)

2) Banyak kota (n) termasuk kordinat

(x,y) atau jarak antar kota (𝑑𝑖𝑗)

3) Kota berangkat dan kota tujuan

4) Tetapan siklus – semut (Q)

5) Tetapan pengendali intensitas jejak

semut (𝛼), nilai 𝛼 ≥ 0

6) Tetapan pengendali visibilitas ( 𝛽 ),

nilai 𝛽 ≥ 0

7) Visibilitas antar kota = 1

𝑑𝑖𝑗 (𝜂𝑖𝑗)

8) Banyak Semut (m)

9) Tetapan penguapan jejak semut (𝜌),

nilai 𝜌 harus > 0 dan < 1 untuk

mencegah jejak pheromone tak

terhingga.

Page 4: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

4

10) Jumlah siklus maksimum ( 𝑁𝐶𝑚𝑎𝑥 )

bersifat tetap selama algoritma

dijalankan, sedangkan 𝜏𝑖𝑗 akan selalu

diperbahrui harganya pada setiap

siklus algoritma mulai dari sklus

pertama ( 𝑁𝐶 = 1 ) sampai tercapai

jumlah siklus maksimum

(𝑁𝐶 = 𝑁𝐶𝑚𝑎𝑥 ) atau sampai terjadi

konvergensi.

b) Inisialisasi kota pertama setiap semut.

Setelah inisialisasi 𝜏𝑖𝑗 dilakukan,

kemudian m semut ditempatkan pada

kota pertama tertentu secara acak.

Langkah 2 :

Pengisian kota pertama ke dalam tabu list.

Hasil inisialisasi kota pertama setiap semut

dalam langkah 2 harus diisikan sebagai

elemen pertama tabu list. Hasil dari langkah

ini adalah terisinya elemen pertama tabu list

setiap semut dengan indeks kota tertentu,

yang berarti bahwa tabuk(1) bisa berisi

indeks kota antara 1 sampai n sebagaimana

hasil inisialisasi pada langkah 2.

Langkah 3 :

Penyusunan rute kunjungan setiap semut ke

setiap kota. Koloni semut sudah terdistribusi

ke sejumlah atau setiap kota, akan mulai

melakukan perjalanan dari kota pertama

masing – masing sebagai kota asal dan salah

satu kota – kota lainnya sebagai kota tujuan.

Kemudian dari kota kedua masing – masing,

koloni semut akan melanjutkan perjalanan

dengan memilih salah satu dari kota – kota

yang tidak terdapat pada tabuk Jika s

menyataka indeks urutan kunjungan, kota

asal dinyatakan sebagai tabuk(s) dan kota –

kota lainnya dinyatakan sebagai { N-tabuk },

maka untuk menentukan kota tujuan

digunakan persamaan probabilitas kota

untuk dikunjungi sebagai berikut :

𝑝𝑖𝑗𝑘 =

[𝑇𝑖𝑗]𝛼

.[𝑛𝑖𝑗]𝛽

∑ [𝑇𝑖𝑘′]𝛼

.[𝑛𝑖𝑘′]𝛽

𝑘′∈[𝑁−𝑡𝑎𝑏𝑢𝑘]

untuk 𝑗 ∈

{𝑁 − 𝑡𝑎𝑏𝑢𝑘} .....................................(2.1)

Dan

𝑝𝑖𝑗𝑘 = 0 untuk j lainnya .....................(2.2)

Dengan i sebagai indeks kota asal dan j

sebagai indeks kota tujuan. Stelah

mendapatkan nilai probalitas yang ingin

dikunjungi maka langkah selanjut nya

adalah mencari nilai kumulatid dengan

persamaan

𝑘𝑢𝑚𝑢𝑙𝑎𝑡𝑖𝑓𝑘 = 𝑝𝑖𝑗𝑘 + 𝑘𝑢𝑚𝑢𝑙𝑎𝑡𝑖𝑓𝑘−1

........................................................... (2.3)

Setalah mendapatkan nilai kumulatif

langkah selanjut nya adalah mengambil nilai

random dari kumulatif1 sampai dengan

kumulatifn untuk mencari kota tujuan yang

akan dikunjungi selanjutnya oleh semut.

Langkah 4 :

a) Perhitungan panjang rute setiap semut.

Perhitungan panjang rute tertutup (length

closed tour) atau Lk setiap semut

dilakukan setelah satu siklus

diselesaikan oleh semua semut.

Perhitungan ini dilakukan berdasarkan

tabuk masung – masing dengan

persamaan berikut :

𝐿𝑘

= 𝑑𝑡𝑎𝑏𝑢𝑘(𝑛),𝑡𝑎𝑏𝑢𝑘(𝑖)

+ ∑ 𝑑𝑡𝑎𝑏𝑢𝑘(𝑠),𝑡𝑎𝑏𝑢𝑘(𝑠+1)

𝑛−1

𝑠=1

… … … … . (2.4)

Dengan 𝑑𝑖𝑗 adalah jarak antara kota I ke

kota j yang dihitung berdasarkan persamaan :

𝑑𝑖𝑗 = √(𝑥𝑖 − 𝑥𝑗)2 + (𝑦𝑖 − 𝑦𝑗)2 ....... (2.5)

b) Pencarian rute terpendek.

Setelah Lk setiap semut dihitung, akan

didapat harga minimal panjang rute

tertutup setiap siklus atau LminNC dan

harga minimal panjang rute tertutup

secara keseluruhan adalah atau Lmin

c) Perhitungan perubahan harga intensitas

jejak kaki semut antar kota.

Koloni semut akan meninggalkan jejak –

jejak kaki pada lintasan antar kota yang

dilaluinya. Adanya penguapan dan

perbedaan jumlah semut yang

lewat,menyebabkan kemungkinan

terjadinya perubahan harga intensitas

jejak kaki semut antar kota. Persamaan

perubahan ini adalah :

Page 5: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

5

∆𝑇𝑖𝑗 = ∑ 𝑇𝑖𝑗𝑘

𝑚

𝑘=1

… … … … … … … … … … (2.6)

Dengan ∆𝜏𝑖𝑗𝑘 adalah perubahan harga

intensitas jejak kaki semut antar kota setiap

semut yang dihitung berdasarkan

persamaan :

∆𝑇𝑖𝑗𝑘 =

𝑄

𝐿𝑘 , untuk (𝑖, 𝑗) ∈ kota asal dan kota

tujuan dalam 𝑡𝑎𝑏𝑢𝑘 (2.7)

∆𝑇𝑖𝑗𝑘 = 0 , untuk (𝑖, 𝑗) lainnya ...........(2.8)

Langkah 5 :

a) Perhitungan harga intensitas jejak kaki

semut antar kota untuk siklus

selanjutnya. Harga intensitas jejak kaki

semut antar kota pada semua lintasan

antar kota ada kemungkinan berubah

karena adanya penguapan dan perbedaan

jumlah semut yang melewati. Untuk

siklus selanjutnya, semut yang akan

melewati lintasan tersebut harga

intensitasnya telah berubah. Harga

intensitas jejak kaki semut antar kota

untuk siklus selanjutnya dihitung dengan

persamaan :

𝑇𝑖𝑗 = 𝜌. 𝑇𝑖𝑗 + ∆Tij ...................................................................................(2.9)

b) Atur ulang harga perubahan intensitas

jejak kaki semut antar kota.

Untuk siklus selanjutnya perubahan

harga intensitas jejak semut antar kota

perlu diatur kembali agar memiliki nilai

sama dengan nol

Langkah 6 :

Pengosongan tabu list, dan ulangi langkah 2

jika diperlukan, Tabu list perlu dikosongkan

untuk diisi lagi dengan urutan kota yang

baru pada siklus selanjutnya, jika jumlah

siklus maksimum belum tercapai atau belum

terjadi konvergensi, Algoritma diulang lagi

dari langkah 2 dengan harga parameter

intensitas jejak kaki semut antar kota yang

sudah diperbaharui.

2.3. Perhitungan Kesalahan Peramalan

Menurut Savira (2014), ada beberapa

perhitungan yang biasa digunakan untuk

menghitung kesalahan peramalan total.

Perhitungan ini dapat digunakan untuk

membandingkan model peramalan yang

berbeda, mengawasi peramalan, dan

memastikan peramalan berjalam dengan

baik. Ukuran kesalahan yang digunakan,

menurut Savira (2014) ada 3 macam

perhitungan yaitu :

1. MAD

Ukuran pertama kesalahan peramalan

keseluruhan untuk sebuah model adalah

Mean Absolute Deviation (MAD). Nilai

ini di hitung dengan mengambil jumlah

nilai absolute dari setiap kesalahan

peramalah di bagi dengan jumlah

periode data (n), yaitu :

𝑀𝐴𝐷 = ∑ 𝑎𝑘𝑡𝑢𝑎𝑙 𝑝𝑒𝑟𝑎𝑚𝑎𝑙𝑎𝑛

𝑛 ........ (2.10)

2. MSE

Merupakan cara kedua untuk mengukur

kesalahan peramalan keseluruhan. Mean

Squared Error (MSE) merupakan rataan

selisih kuadrat antara nilai yang

diramalkan dan yang diamati. Rumusnya

adalah :

𝑀𝑆𝐸 = ∑(𝐾𝑒𝑠𝑎𝑙𝑎ℎ𝑎𝑛 𝑝𝑒𝑟𝑎𝑚𝑎𝑙𝑎𝑛)2

𝑛 . (2.11)

3. MAPE

Mean Absolute Percentage Error

(MAPE) dihitung rataan diferensisasi

absolute antara nilai yang diramal dan

actual, dinyatakan sebagai persentase

nilai actual. Jika memiliki nilai yang

diramal dan actual untuk n periode,

dihitung dengan persamaan :

𝑀𝐴𝑃𝐸 = ∑ 𝑘𝑒𝑠𝑎𝑙𝑎ℎ𝑎𝑛 𝑎𝑏𝑠𝑜𝑙𝑢𝑡

𝑛 𝑥 100

..................................................... (2.12)

2.4. Pengacakan Fisher-Yates Suffle

Diambil dari nama Ronald Fisher

dan Frank Yates atau juga dikenal dengan

nama Knuth shuffle (diambil dari nama

Donald Knuth) merupakan sebuah

algoritmauntuk menghasilkan suatu

permutasi acak dari suatu himpunan yang

terhingga, atau dengan kata lain untuk

mengacak suatu himpunan tertentu (Nugraha,

Page 6: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

6

2015). Apabila diimplementasikan secara

benar, maka akan mendapatkan hasil yang

tidak akan berat sebelah, sehingga setiap

permutasi akan memiliki kemungkinan yang

sama

Algoritma Fisher-Yates dipilih

karena algoritma ini merupakan metode

pangacakan yang lebih baik atau dapat

dikatakan sesuai untuk pengacakan angka,

dengan waktu eksekusi yang cepat serta

tidak memerlukan waktu yang lama untuk

melakukan suatu pengacakan. Algoritma

Fisher-Yates terdiri dari dua metode yakni,

metode orisinal dan metode modern. Metode

modern dipilih karena metode ini memang

khusus digunakan untuk pengacakan dengan

sistem komputerisasi, dikarenakan hasil

pengacakan bisa lebih variatif.

Menurut Nugraha (2015) metode

modern yang digunakan untuk menghasilkan

suatu permutasi acak untuk angka 1 sampai

N adalah sebagai berikut :

1. Tuliskan angka dari 1 sampai N.

2. Pilih sebuah angka acak K diantara 1

sampai dengan jumlah angka yang

belum dicoret.

3. Dihitung dari bawah, coret angka K

yang belum dicoret, dan tuliskan angka

tersebut di lain tempat.

4. Ulangi langkah 2 dan langkah 3 sampai

semua angka sudah tercoret.

5. Urutan angka yang dituliskan pada

langkah 3 adalah permutasi acak dari

angka awal.

III. METODE PENELITIAN

Penelitian yang dilakukan ini

mengggunakan model pengembangan

Waterfall. Proses pengembangan dilakukan

melalui beberapa tahap yaitu : Analisa

kebutuhan, Design, Koding, Pengujian, dan

Pemeliharaan, pada metodologi

pengembangan ini hanya sampai pengujian

(testing) saja.

Gambar 3.1. Model Waterfall

(Sumber : http://agusdar.wordpress.com/,

2013)

Berikut adalah penjelasan dari model

waterfall di atas:

1. Analisa Kebutuhan

Proses menganalisis dan pengumpulkan

kebutuhan system yang sesuai studi

kasus yang diperlukan.

2. Desain Sistem

Dalam tahap ini penulis akan merancang

desain dan model aplikasi yang

dikembangkan seperti Diagram Konteks,

Data Flow Diagram (DFD), Entitas

Relationship Diagram (ERD), dan

Perancangan Interface yang akan di

kembangkan berdasarkan hasil analisa

pada tahap sebelumnya.

3. Penulisan Kode Program

Penulisan Kode Program merupakan

proses menerjemahkan desain ke dalam

bahasa yang bisa dimengerti oleh

komputer.

4. Pengujian Program

Proses pengujian berfokus pada logika

internal software, memastikan bahwa

semua pernyataan sudah diuji, dan pada

eksternal fungsional, yaitu mengarah

pengujian untuk menemukan kesalahan

– kesalahan dan memastikan bahwa

input yang dibatasi akan memberikan

hasil actual yang sesuai dengan hasil

yang dibutuhkan. Pada penelitian ini

penulis menggunakan teknik black box

untuk menguji fitur – fitur system yang

telah dibangun.

Page 7: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

7

IV. PEMBAHASAN

4.1. Perhitungan Penataan Tempat

Duduk dengan Algoritma Semut

Algoritma Ant Colony Optimazation

atau algoritma semut pada dasarnya dapat

menemukan rute terpendek antar sarang dan

sumber makanan berdasarkan jejak feromon

pada lintasan yang telah dilalui. Semakin

besar jumlah semut dan siklusnya, maka

hasil dari algoritma tersebut akan semakin

besar pula kemungkinan untuk menemukan

jarak terpendek. Sedangkan siklus

perjalanan mempengaruhi banyaknya jalur

yang ditempuh oleh semut.

Study kasus pada penelitian ini

berlokasi di SMP Maitreyawira, Sekolah

yang berlokasi di kota tanjungpinang.

Berikut adalah salah satu contoh langkah-

langkah perhitungan penataan tempat duduk

ujian dengan menggunakan algoritma semut.

4.1.1. Inisial Parameter

Berikut adalah tabel data siswa pada

ruang 1 yang akan digunakan untuk proses

algoritma semut .

Tabel 5.1. Tabel Data Siswa Ruang 1

NO NAMA KELAS

1 Agnes Marethia Levana 7a

2 April Susanto 7a

3 Kurniawan 7a

4 Septavia 7a

5 Valeada 7a

6 Vivian 7a

7 Grace Agnes 7b

8 Ryan Kenidy 7c

9 Vannes Lee 7c

10 Dareck 7d

11 Desmond 7d

12 Maximilian 7d

13 Ratih Angelina 7d

14 Shinta Dewi 7d

15 Dessy 7e

16 Silvia 7e

17 Steven Irfando 7e

18 Moris 8b

19 Vivi 8b

20 Wu Vincent 8b

21 Calvin Kwok 8c

22 Elviria 8c

23 Fendy 8c

24 Evi Yulinda 8d

25 Lusi Ratnawati 8d

26 Megy Chang 8d

27 Novianti Augustina 9a

28 Veronica 9b

29 Ervina 9c

30 Febru Andy 9c

31 Hiroshi Everiil Jonathan

Masli 9c

32 Ricky Ardianto 9c

Pada Tahap Pertama Adalah

Menetukan Parameter – parameter pada

Algoritma Semut, Berikut adalah parameter

– parameter Algoritma Semut:

Alpha : 1.0

Beta : 1.0

Rho : 0.5

Q : 1.0

NCmax : 5

Jumlah Siswa : 32

Jumlah Semut : 32

Tij Awal : 0,01

4.1.2. Penyisian Siswa Pertama Dalam

Tabu List

Pada tahap pengisian siswa pertama

ke dalam tabu list. Hasil inisialisasi siswa

pertama setiap semut dalam langkah ini

harus diisikan sebagai elemen pertama tabu

list. Berikut penyisian siswa pertama dalam

tabu list :

Posisi Awal Semut 1 : 3

Posisi Awal Semut 2 : 2

Posisi Awal Semut 3 : 25

Page 8: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

8

Posisi Awal Semut 4 : 9

Posisi Awal Semut 5 : 12

Posisi Awal Semut 6 : 32

Posisi Awal Semut 7 : 30

Posisi Awal Semut 8 : 26

Posisi Awal Semut 9 : 15

Posisi Awal Semut 10 : 1

Posisi Awal Semut 11 : 22

Posisi Awal Semut 12 : 24

Posisi Awal Semut 13 : 20

Posisi Awal Semut 14 : 16

Posisi Awal Semut 15 : 4

Posisi Awal Semut 16 : 7

Posisi Awal Semut 17 : 13

Posisi Awal Semut 18 : 21

Posisi Awal Semut 19 : 27

Posisi Awal Semut 20 : 18

Posisi Awal Semut 21 : 5

Posisi Awal Semut 22 : 10

Posisi Awal Semut 23 : 31

Posisi Awal Semut 24 : 17

Posisi Awal Semut 25 : 8

Posisi Awal Semut 26 : 28

Posisi Awal Semut 27 : 11

Posisi Awal Semut 28 : 6

Posisi Awal Semut 29 : 23

Posisi Awal Semut 30 : 19

Posisi Awal Semut 31 : 14

Posisi Awal Semut 32 : 29

4.1.3. Menyusun Rute Kunjungan

Penyusunan rute kunjungan setiap

semut ke setiap siswa. Koloni semut sudah

terdistribusi ke sejumlah atau setiap siswa,

akan mulai melakukan perjalanan dari siswa

pertama masing – masing sebagai siswa asal

dan salah satu siswa – siswa lainnya sebagai

siswa tujuan.

Semut 1 giliran 2

∑ [𝑇𝑖𝑘′]𝛼. [𝑛𝑖𝑘′]𝛽𝑘′∈[𝑁−𝑡𝑎𝑏𝑢𝑘] = (0.011 . 11) +

(0.011 . 11) + (0.01 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) + (0.011 . 11) + (0.011 . 11) +

(0.011 . 11) = 0.3100000000000001

probalitas siswa 3 ke 1 = (0.011 . 11) /

0.3100000000000001 =

0.032258064516129024

probalitas siswa 3 ke 2 = (0.011 . 11) /

0.3100000000000001 =

0.032258064516129024

[….]

Nilai Komulatif Semut 1 :

0.032258064516129024;

0.06451612903225805;

0.06451612903225805;

0.09677419354838707;

0.1290322580645161;

0.16129032258064513;

0.19354838709677416;

0.2258064516129032;

0.2580645161290322;

0.2903225806451612;

0.3225806451612902;

0.3548387096774192;

0.3870967741935482;

0.4193548387096772;

0.4516129032258062;

0.4838709677419352;

0.5161290322580643;

0.5483870967741933;

0.5806451612903223;

0.6129032258064513;

0.6451612903225803 ;

0.6774193548387093;

0.7096774193548383;

0.7419354838709673;

0.7741935483870963;

0.8064516129032253;

0.8387096774193543;

0.8709677419354833;

0.9032258064516123;

0.9354838709677413;

0.9677419354838703;

0.9999999999999993;

Nilai Random : 0.5759948030019463

Jalur Selanjutnya : 19

Page 9: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

9

Sampai dengan semua semut telah

mengunjungi seluruh siswa – siswa langkah

berikut nya adalah menyisi jalur tersebut

kedalam tabu list. Berikut adalah tabu list

iterasi 1 :

Jalur Semut 1 : 3 - 19 - 5 - 13 - 25 - 30 - 31

- 14 - 22 - 2 - 16 - 17 - 9 - 6 - 21 - 32 - 20 -

18 - 15 - 12 - 7 - 26 - 28 - 29 - 24 - 1 - 11 -

23 - 4 - 27 - 8 – 10

4.1.4. Perhitungan Error

Sebelum melakukan perhitungan

telebih dahulu melakukan penataan tempat

duduk yang ada pada tabu list agar dapat

dihitung error nya, Berikut adalah gambar

denah sementara berdasarkan urutan siswa

yang ada pada tabel 5.1.

Gambar 5.1. Denah Sementara Semut 1

𝑒𝑟𝑟𝑜𝑟 = 6

32 𝑥 100 = 18,75 %

Jadi error pada semut 1 adalah 18.75 %

4.1.5. Perhitungan Harga Itensitas Jejak

Kaki Semut

Pada langkah berikut ini adalah

menghitung harga itensitas kaki semut pada

siswa yang telah dilewati semut. Berikut

adalah perhitung harga itensitas jejak kaki

semut pada semut 1:

Jalur 1 - 2 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 3 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 4 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 5 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 6 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 7 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 8 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 9 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 10 = (0.5 x 0,01) + 0 = 0.005,

dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij = 0.001

Jalur 1 - 11 = (0.5 x 0,01) + (1 / 18.75) =

0.0633, dimana 0,001 ≥ Tij ≤ 1.00, jadi Tij =

0.0633

[…..]

Sampai dengan semua jalur telah

dihitung. Dan mengisi berubahan Tij untuk

langkah berikutnya.

4.1.6. Pengosongan Tabulist

Kosongkan semua tabu list dan

ulangi ke langkah 4.1.2. sampai dengan

iterasi = NCmax baru mencari jalur terbaik

dari setiap iterasi, Berikut adalah hasil

seluruh Jalur Terbaik setelah iterasi =

NCmax :

Iterasi 1 : 27 - 29 - 3 - 22 - 30 - 9 - 5 - 17 - 6

- 25 - 13 - 23 - 4 - 10 - 31 - 20 - 11 - 15 - 7 -

14 - 32 - 1 - 12 - 24 - 26 - 18 - 21 - 16 - 2 -

28 - 19 - 8 - = 12.5%

Page 10: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

10

Iterasi 2 : 29 - 19 - 17 - 5 - 14 - 24 - 31 - 1

- 27 - 23 - 32 - 7 - 28 - 15 - 6 - 10 - 2 - 9 -

26 - 22 - 13 - 21 - 4 - 30 - 12 - 18 - 8 - 20 -

25 - 16 - 3 - 11 - = 6.25%

Iterasi 3 : 31 - 24 - 14 - 5 - 17 - 27 - 1 - 25

- 16 - 3 - 11 - 29 - 21 - 4 - 30 - 28 - 15 - 6 -

10 - 32 - 7 - 18 - 12 - 26 - 9 - 2 - 23 - 8 -

20 - 13 - 22 - 19 - = 6.25%

Iterasi 4 : 8 - 3 - 16 - 26 - 9 - 11 - 29 - 27 -

23 - 28 - 15 - 6 - 14 - 17 - 2 - 10 - 22 - 7 -

32 - 19 - 18 - 12 - 30 - 4 - 21 - 13 - 20 - 25

- 1 - 31 - 24 - 5 - = 6.25%

Iterasi 5 : 30 - 22 - 14 - 24 - 9 - 11 - 3 - 16

- 4 - 21 - 19 - 31 - 1 - 6 - 15 - 28 - 8 - 32 -

25 - 10 - 2 - 18 - 27 - 17 - 5 - 29 - 23 - 26 -

7 - 13 - 20 - 12 - = 9.375%

Jadi Jalur Terbaik Pada Iterasi ke 4

Adalah :

8 - 3 - 16 - 26 - 9 - 11 - 29 - 27 - 23 - 28 -

15 - 6 - 14 - 17 - 2 - 10 - 22 - 7 - 32 - 19 -

18 - 12 - 30 - 4 - 21 - 13 - 20 - 25 - 1 - 31 -

24 - 5 - dengan total error 6.25%

Gambar 5.2. Hasil Simulasi 1 Algoritma

Semut

Pada gambar di atas dapat di lihat

bahwa dengan penataan tempat duduk

ujian dengan mengganakan algoritma

semut dengan NCmax = 5 menghasilkan

error = 6.25 % dan memiliki siswa yang

duduk bersebelahan berjumlah 2 siswa.

4.2. Analisa Hasil Perbandingan

Pengacakan Algoritma Semut dan

Fisher-Yates Suffle

Pada tabel dibawah ini adalah hasil

simulasi yang dilakukan selama penelitian,

simulasi dilakukan sebanyak 4 kali dengan

jumlah iterasi yang berbeda untuk

membandingkan hasil terbaik, rata- rata

hasil siklus, dan waktu proses.

Tabel 5.2. Data Simulasi Pengacakan Algoritma Semut

Pengacakan Algoritma Semut

Simulasi 1 Simulasi 2 Simulasi 3 Simulasi 4

Iterasi Error Iterasi Error Iterasi Error Iterasi Error

1 12.5 % 1 0.0% 1 6.25% 1 6.25%

2 6.25 % 2 0.0% 2 6.25% 2 9.375%

3 6.25 % 3 6.25% 3 6.25% 3 12.5%

4 6.25 % 4 6.25% 4 6.25% 4 6.25%

5 9.375% 5 15.625% 5 12.5% 5 12.5%

6 9.375% 6 15.625% 6 6.25%

Page 11: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

11

7 3.125% 7 15.625% 7 12.5%

8 0.0% 8 6.25% 8 9.375%

9 6.25% 9 6.25% 9 12.5%

10 0.0% 10 6.25% 10 9.375%

11 0.0% 11 6.25%

12 6.25% 12 0.0%

13 6.25% 13 0.0%

14 6.25% 14 6.25%

15 6.25% 15 0.0%

16 0.0%

17 0.0%

18 0.0%

19 0.0%

20 0.0%

Hasil Terbaik

4 6.25% 10 0.0% 11 0.0% 20 0.0%

Rata – Rata Hasil Siklus

8.125 % 4.6875 % 7.5 % 5.46875 %

Waktu Proses

49 Detik 99 Detik 150 Detik 201 Detik

Pada tabel 5.2. data simulasi pengacakan algoritma semut dapat dilihat semakin besar siklus

error terbaik bisa hingga 0.0 % dengan rata – rata hasil siklus 5.47 % tetapi waktu proses

mencapai 201 detik

Tabel 5.3. Data Simulasi Pengacakan Fisher-Yates Suffle

Pengacakan Fisher-Yates Suffle

Simulasi 1 Simulasi 2 Simulasi 3 Simulasi 4

Iterasi Error Iterasi Error Iterasi Error Iterasi Error

1 25.0% 1 18.75% 1 37.5% 1 18.75%

2 34.375% 2 15.625% 2 18.75% 2 31.25%

3 12.5% 3 15.625% 3 18.75% 3 18.75%

4 6.25% 4 21.875% 4 12.5% 4 12.5%

Page 12: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

12

5 34.375% 5 21.875% 5 28.125% 5 25.0%

6 28.125% 6 31.25% 6 31.25%

7 43.75% 7 21.875% 7 18.75%

8 40.625% 8 37.5% 8 25.0%

9 31.25% 9 25.0% 9 21.875%

10 21.875% 10 25.0% 10 15.625%

11 50.0% 11 46.875%

12 25.0% 12 21.875%

13 25.0% 13 15.625%

14 34.375% 14 6.25%

15 25.0% 15 15.625%

16 28.125%

17 31.25%

18 40.625%

19 31.25%

20 31.25%

Hasil Terbaik

4 6.25% 3 15.625% 4 12.5% 14 6.25%

Rata – Rata Hasil Siklus

22.5% 23.75% 27.71% 24.375%

Waktu Proses

2 Detik 2 Detik 2 Detik 2 Detik

Pada tabel 5.3. data simulasi pengacakan algoritma fisher-yates suffle dapat dilihat error

terbaik hanya 6.25 % dengan rata – rata hasil siklus 24.375 % tetapi waktu proses hanya

membutuhkan 2 detik.

Page 13: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

13

Gambar 5.3. Grafik Perbandingan Hasil

Terbaik

Data pada gambar 5.3. dapat dilihat

pengacakan algoritma semut lebih baik di

bandingkan dengan pengacakan fisher-

yates suffle dengan error sebesar 0.0%

Gambar 5.4. Grafik Perbandingan Rata –

Rata Siklus

dan pada gambar 5.4. dapat dilihat bahwa

pengacakan algoritma semut dapat

menghasilkan rata – rata error paling

sedikit 5.46875 % sedangkan pada fisher-

yates suffle dapat mencapai 27.71%.

Gambar 5.5 Grafik Perbandingan Waktu

Proses

dan pada gambar 5.5. dapat dilihat bahwa

algoritma semut membutuhkan waktu

proses yang lama semakin tinggi siklis

semakin lama di proses dari gambar diatas

dapat dilihat bahwa pada simulasi 4

menggunakan 20 siklus membutuhkan

waktu 201 detik.

Dari hasil di atas dapat

disimpulkan bahwa pengacakan dengan

algoritma semut dapat menghasilkan error

terbaik 0,0% dengan rata – rata siklus

terbaik 4,687 % sedangkan pengacakan

fisher-yates suffle menghasilkan error

terbaik 6.25% dengan rata – rata siklus

terbaik 22.5%. akan tetapi, waktu proses

pada pengacakan fisher-yates suffle lebih

cepat dibandingkan dengan pengacakan

algoritma semut. Semakin banyak siklus

yang diproses semakin lama waktu

prosesnya.

V. KESIMPULAN DAN SARAN

Kesimpulan yang di dapat di ambil

dari penelitian ini yaitu bahwa dengan

penerapan Algoritma Semut, dapat

menghasilkan error terbaik 0,0% dengan

rata – rata siklus terbaik 4,687 %

sedangkan pengacakan fisher-yates suffle

menghasilkan error terbaik 6.25% dengan

rata – rata siklus terbaik 22.5%. akan tetapi,

waktu proses pada pengacakan fisher-yates

suffle lebih cepat dibandingkan dengan

pengacakan algoritma semut. Semakin

banyak siklus yang diproses semakin lama

waktu prosesnya.

Saran untuk penelitian selanjutnya

yaitu menggunakan dua perbandingan

algoritma dalam penataan tempat duduk

agar dapat mencapai hasil yang lebih

optimal.

Page 14: SISTEM PENATAAN TEMPAT DUDUK PESERTA UJIAN …jurnal.umrah.ac.id/wp-content/uploads/gravity_forms/1-ec... · 2016-05-07 · memandang penting mengangkat kasus di ... jalur terpendek.

14

DAFTAR PUSTAKA

Fernandez, A., 2012, Pembangunan Aplikasi Penyusunan Jadwal Kuliah Menggunakan

Algoritma Semut, Skripsi, Universitas Diponegoro, Semarang.

Fitriani, D. R., 2015, Analisa Pencarian Jalur Terpendek Ke Penginapan Di Kota Batam

Dengan Menggunakan Algoritma Semut, Skripsi, Universitas Maritim Raja ali Haji,

Kepulauan Riau.

Socha, K., Sampels, M., and Manfrin, M. , 2003, Ant Algorithms for the University Course

Timetabling Problem with Regard to the State-of-the-Art, Université Libre de

Bruxelles, Belgium

Mutakhiroh, I., Indrato, dan Hidayat, T., 2007, Pencarian Jalur Terpendek Menggunakan

Algoritma Semut, Skripsi, Universitas Islam Indonesia, Yogyakarta.

Nugraha, R., 2015, Penerapan Algoritma Fisher Yates Pada Aplikasi The Lost Insect Untuk

Pengenalan Jenis Serangga Berbasis Unity 3D, Skripsi, STMIK Global Informatika

MDP, Palembang.

Paninalone, (2011), Algoritma Semut (Ant Algorithm),

https://paninalone.wordpress.com/2011/11/11/algoritma-semut-ant-algorithm/, 1

October 2015

Savira, M., 2014, Analisis Peramalan Penjualan Obat Generik Berlogo (OGB) Pada PT.

Indonesia Farma, Skripsi, Universitas Telkom, Bandung

Sudrajat, A., (2008), Penataan Tempat Duduk Siswa sebagai Salah Satu Bentuk

Pengelolaan Kelas, https://akhmadsudrajat.wordpress.com/2008/07/28/penataan-

tempat-duduk-siswa-sebagai-bentuk-pengelolaan-kelas/, 1 October 2015