Implementasi Metode Tournament Selection Pada Algoritma Genetika Untuk Menyelesaikan Masalah N-Queen

42

DAFTAR PUSTAKA
Akbar, M.A., 2011, Analisis Dan Implementasi Kecerdasan Buatan Pada
Permainan Checker Menggunakan Algoritma Minimax Dengan
Negascout, Tugas Akhir, Universitas Sumatera Utara
Blicke, T., Thiele, L., 1995, A Comparison of Selection Scheme Used in Genetic
Algorithm, TIK-Report, Vol.11, 2nd Edition.
Božikovic, M., Golub, M., Budin, L., 2003, Solving n-Queen Problem Using Global
Parallel Genetic Algorithm, EUROCON
Fathan A. S., Tareq W. Z., Awad F. H., 2015, Solving N-Queen Problem Using
Genetic Algorithm, International Journal of Computer Application, Vol. 112
No. 12.
Filipovic, V., 2003, Fine-Grained Tournament Selection Operator In Genetic
Algorithm, Computing and Informatic, Vol. 22.
Hammad A. W. & Thannon B. N., 2007, Genetic Algorithm Versus Particle Sarm
Optimization In N-Queen Problem,
Juniawati, 2003, Model Optimisasi Untuk Integrasi Alokasi Produksi, Penerbit
Informatika
Miller, B.L., Goldberg, D.E., 1995, Genetic Algorithm, Tournament Selection, and
the Effect of the Noise, Complex System, Vol. 9, 193-212

Prasetyo, R.M.K., 2012, Penyelesaian Permainan Checkers Pada Mobile Device
Berbasis Android Menggunakan Algoritma Iterative Deepening Search,
Tugas Akhir, Universitas Sumatera Utara
S. Pothumani, 2013, Solving N Queen Problem Using Various Algorithms – A
Survey, International Journal of Advanced Research in Computer Science and
Software Engineering Vol. 3 Issue 2.
Setiadi, D.R.I.M., 2012, Implementasi Algoritma Minimax Untuk Artificial
Intelligence Pada Permainan Catur Sederhana, Techno.COM, Vol. 11 No.2,
99-107

Universitas Sumatera Utara

BAB III
ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini, akan dibahas beberapa hal mengenai penerapan algoritma dan
analisa perancangan sistem dalam mengimplementasikan metode tournament
selection dalam seleksi parent pada algoritma genetika untuk menyelesaikan
masalah N-Queen.
3.1.


Analisis Sistem

Pada bagian ini, penulis melakukan analisis terhadap metode tournament selection
yang diimplementasikan ke dalam algoritma genetika untuk menyelesaikan nqueen problem. Analisa yang dilakukan meliputi pengamatan bagaimana proses
kerja metode tournament selection dalam melakukan pemilihan parent dalam
algoritma genetika, menganalisa kelebihan dan kekurangannya serta bagaimana
bentuk implementasinya dalam sebuah bahasa pemrograman.

3.1.1. Analisis Fasilitas Sistem
Analisis ini dilakukan untuk memperoleh fasilitas-fasilitas apa saja yang akan
ditawarkan pada sistem yang dirancang. Sesuai dengan kebutuhan awal, yaitu
untuk

melakukan

pemilihan

parent


dalam

algoritma

genetika

dalam

menyelesaikan n-queen problem, maka fasilitas yang ditawarkan dalam sistem
yang dirancang ini adalah sebagai berikut :

1. Fasilitas Konfigurasi Jumlah Queen
Fasilitas

konfigurasi

jumlah

queen


berfungsi

untuk

memberikan

kemudahan kepada pengguna dalam menentukan jumlah queen yang akan
dicari solusinya.
2. Fasilitas Konfigurasi Jumlah Individu
Fasilitas konfigurasi jumlah individu berfungsi untuk memberikan
kemudahan kepada pengguna dalam menentukan jumlah individu yang
akan dibentuk secara acak untuk menghasilkan solusi permasalahan.

Universitas Sumatera Utara

18

3. Fasilitas Konfigurasi Persentasi Mutasi
Fasilitas konfigurasi persentasi mutasi berfungsi untuk memberikan
kemudahan


kepada

pengguna

dalam

menentukan

berapa

besar

kemungkinan terjadinya mutasi individu di dalam setiap iterasi.
4. Fasilitas Konfigurasi Lokasi Selection Point
Fasilitas konfigurasi loksi selection point berfungsi untuk memberikan
kemudahan kepada pengguna dalam menentukan lokasi pemisahan parent
di dalam proses cross over.
5. Fasilitas Konfigurasi Jumlah Turnamen
Fasilitas konfigurasi jumlah turnamen berfungsi untuk memberikan

kemudahan kepada pengguna dalam menentukan berapa banyak jumlah
turnamen di dalam setiap pemilihan parent baru.

3.1.2. Analisis Kebutuhan
Kebutuhan merupakan suatu keinginan yang akan dicapai dalam melakukan
perancangan. Kebutuhan menggambarkan fungsi dan batasan untuk aplikasi.
Adapun analisis kebutuhan dibagi menjadi dua, antara lain adalah kebutuhan
fungsional dan kebutuhan nonfungsional.

3.1.2.1. Kebutuhan Fungsional
Kebutuhan fungsional merupakan kebutuhan yang fungsi-fungsinya harus
dipenuhi pada rancangan aplikasi. Kebutuhan fungsional yang harus dipenuhi
pada aplikasi yang akan dirancang adalah :

1. Aplikasi harus mampu menggambarkan proses pencarian solusi n-queen
problem berdasarkan langkah kerja algoritma genetika.
2. Aplikasi harus mampu menampilkan hasil solusi n-queen serta pada iterasi
keberapa solusi tersebut diperoleh.

3.1.2.2. Kebutuhan Nonfungsional

Kebutuhan nonfungsional terdiri dari beberapa macam karakteristik, antara lain :

Universitas Sumatera Utara

19

1. Performa
Aplikasi yang akan dibangun dapat menampilkan hasil dari fungsi sistem
untuk menghasilkan solusi pemecahan n-queen problem.
2. Efisiensi
Aplikasi yang akan dibangun diharuskan sederhana, agar memudahkan
pengguna untuk memakainya.
3. Ekonomis
Aplikasi yang akan dibangun tanpa mengeluarkan biaya tambahan dalam
penggunaannya.

3.1.3. Penerapan Metode Tournament Selection
Pada perancangan perangkat lunak pencarian solusi n-queen problem dengan
menggunakan algoritma genetika dengan seleksi parent menggunakan metode
tournament selection ini, yang menjadi permasalahan adalah bagaimana proses

pemilihan parent berdasarkan cara kerja metode tournament selection di dalam
algoritma genetika untuk menghasilkan solusi pemecahan n-queen problem.
Dalam penerapan metode tournament selection dalam metode seleksi parent pada
algoritma genetika untuk menyelesaikan masalah N-Queen ini, arsitektur umum
yang digunakan seperti terlihat pada Gambar 3.1.
Jumlah Individu

Jumlah Queen

Generasi Awal

Tournament Selection

Eliminasi Individu

Persentase Mutasi

Seleksi Parent

Generasi Baru


Solusi N-Queen

Gambar 3.1 Arsitektur Umum Sistem

Universitas Sumatera Utara

20

Dalam algoritma genetika, pemilihan parent dengan menggunakan metode
tournament selection bekerja dengan cara menandingkan individu-individu yang
dipilih secara acak. Sebagai contoh kasus, akan dicari solusi pemecahan untuk nqueen problem dengan jumlah queen sebanyak lima, dengan menggunakan
kapasitas delapan individu per populasi, persentase kemungkinan terjadinya
mutasi sebesar 10% dan jumlah turnamen sebanyak lima.

Berdasarkan langkah kerja algoritma genetika, langkah pertama adalah
membangkitkan delapan individu secara acak dengan jumlah kromosom sebanyak
lima. Adapun hasil dari pembangkitan individu tersebut sebagaimana terlihat pada
Tabel 3.1.


Tabel 3.1 Individu Awal
Individu Kromosom
P1
1,3,4,2,5
P2
4,1,3,2,5
P3
4,3,5,2,1
P4
3,2,5,1,4
P5
5,2,3,4,1
P6
5,1,2,3,4
P7
2,5,1,3,4
P8
2,1,4,3,5

Selanjutnya, dihitung fitness dari masing-masing individu dengan cara

menghitung jumlah queen pada posisi yang saling bertabrakan. Jumlah queen
yang saling bertabrakan ini kemudian dibagi dengan total queen per individu,
sehingga menghasilkan nilai seperti terlihat pada Tabel 3.2.

Tabel 3.2 Nilai Fitness Individu Awal
Individu
P1
P2
P3
P4
P5
P6
P7
P8

Jumlah
Tabrakan
4
3
4
3
5
4
3
4

Fitness
100% - (4/5 X 100) % = 20%
100% - (3/5 X 100) % = 40%
100% - (4/5 X 100) % = 20%
100% - (3/5 X 100) % = 20%
100% - (5/5 X 100) % = 0%
100% - (4/5 X 100) % = 20%
100% - (3/5 X 100) % = 40%
100% - (4/5 X 100) % = 20%

Universitas Sumatera Utara

21

Dari Tabel 3.2, terlihat bahwa individu yang memiliki fitness paling
rendah adalah P5, sehingga individu ini akan dieliminasi. Setelah melakukan
eliminasi terhadap individu P5, dilakukan pemilihan parent menggunakan metode
tournament selection untuk membentuk generasi baru yang akan menggantikan
P5.

Berdasarkan konfigurasi awal, turnamen diset dengan jumlah lima.
Berdasarkan jumlah turname ini, dilakukan pemilihan lima individu secara acak
yang kemudian akan ditandingkan. Sebagai contoh, individu yang terpilih di
dalam turnamen adalah P1, P2, P4, P7 dan P8. Kelima individu ini akan
ditandingkan satu sama lain dengan menggunakan jadwal sebagaimana terlihat
pada Tabel 3.3.

Tabel 3.3 Jadwal Turnamen Iterasi 1
Turnamen Individu 1 Individu 2
1
P1
P2
2
P1
P4
3
P1
P7
4
P1
P8
5
P2
P4
6
P2
P7
7
P2
P8
8
P4
P7
9
P4
P8
10
P7
P8
Dengan membandingkan nilai fitness masing-masing individu yang
ditandingkan, individu dengan nilai fitness paling tinggi akan keluar sebagai
pemenang. Jika di dalam turnamen terjadi draw, maka individu yang dipilih
sebagai pemenang adalah individu pertama. Adapun hasil dari turnamen pada
iterasi pertama seperti terlihat pada Tabel 3.4.

Universitas Sumatera Utara

22

Tabel 3.4 Hasil Turnamen Iterasi 1
Turnamen Individu 1 Individu 2 Pemenang
1
P1
P2
P2
2
P1
P4
P1
3
P1
P7
P7
4
P1
P8
P1
5
P2
P4
P2
6
P2
P7
P2
7
P2
P8
P2
8
P4
P7
P7
9
P4
P8
P4
10
P7
P8
P7
Dari Tabel 3.5, terlihat bahwa individu P4 dan P8 kalah dari individu P1,
sehingga dinyatakan gugur. Namun, individu P1 kalah dari individu P2 sehingga
dinyatakan gugur. Individu P7 juga berhasil memenangkan pertandingan pada saat
melawan P1, sehingga terpilih dua individu terkuat dari hasil turnamen tersebut,
yaitu P2 dan P7. Pada saat P2 ditandingkan dengan P7, terlihat bahwa P7 berhasil
keluar sebagai pemenang, sehingga nantinya P7 akan terpilih sebagai parent I dan
P2 sebagai parent II.

Setelah memperoleh parent yang akan dikawinkan secara silang untuk
menghasilkan individu baru, berdasarkan langkah kerja algoritma genetika,
dilakukan cross over antara individu P7 dengan P2. Pada contoh kasus ini, cross
over dilakukan menggunakan one point selection dengan posisi cross over pada
kromosom ke tiga. Adapun hasil dari proses cross over ini seperti terlihat pada
Gambar 3.2.
Parent I 2,5,1

3,4

4,1,3,3,4 (G2)

Parent II 4,1,3

2,5

2,5,1,2,5 (G1)

Gambar 3.2. Cross Over Iterasi I

Dari Gambar 3.1 di atas, diperoleh dua individu baru, yaitu individu G1
dengan kromosom 4,1,3,3,4 dan individu G2 dengan kromosom 2,5,1,2,5. Untuk
memilih individu mana yang akan menggantikan P5 yang telah dieliminasi
sebelumnya, fitness kedua individu ini ditandingkan untuk memilih salah satu

Universitas Sumatera Utara

23

individu sebagai pemenang. Dengan menggunakan cara yang sama pada
pemilihan fitness sebelumnya, diketahui bahwa individu G1 memiliki fitnesss
sebesar 20% dan individu G2 memiliki fitness sebesar 0%. Terlihat bahwa fitness
individu G1 lebih besar daripada fitness individu G2, sehingga jika ditandingkan
maka yang akan keluar sebagai pemenang adalah individu G1. Dari hasil ini,
maka individu baru yang dipilih sebagai pengganti individu P5 adalah individu
G1. Dengan menggunakan G1 sebagai pengganti individu P5, maka populasi awal
mengalami perubahan, sebagaimana terlihat pada Tabel 3.5.

Tabel 3.5 Populasi Setelah Iterasi 1
Individu Kromosom
P1
1,3,4,2,5
P2
4,1,3,2,5
P3
4,3,5,2,1
P4
3,2,5,1,4
P5
4,1,3,3,4
P6
5,1,2,3,4
P7
2,5,1,3,4
P8
2,1,4,3,5

Pada iterasi ini, tidak terjadi mutasi, sehingga iterasi dianggap selesai dan
dilakukan evaluasi untuk melihat apakah ada individu yang sudah mencapai
fitness 100%. Adapun hasil evaluasi fitness dari populasi setelah iterasi 1
sebagaimana terlihat pada Tabel 3.6.

Tabel 3.6 Evaluasi Fitness Pada Iterasi 1
Individu
P1
P2
P3
P4
P5
P6
P7
P8

Kromosom
1,3,4,2,5
4,1,3,2,5
4,3,5,2,1
3,2,5,1,4
4,1,3,3,4
5,1,2,3,4
2,5,1,3,4
2,1,4,3,5

Fitness
20%
40%
20%
20%
20%
20%
40%
20%

Karena belum ditemukan adanya individu yang memiliki fitness sebesar
100%, maka iterasi akan dilanjutkan dengan mengulang langkah eliminasi
terhadap individu dengan nilai fitness paling rendah, memilih parent dengan

Universitas Sumatera Utara

24

metode tournament selection, melakukan cross over pada parent yang terpilih
untuk menghasilkan indvidu baru, melakukan mutasi jika terjadi dan
mengevaluasi fitness masing-masing individu pada populasi yang baru. Iterasi
akan dihentikan jika pada populasi yang baru sudah ditemukan individu yang
memiliki fitness sebesar 100%, dan individu ini adalah solusi dari pemecahan nqueen problem untuk contoh kasus yang digunakan.

3.2.

Perancangan Sistem

Setelah melakukan analisis terhadap sistem perangkat lunak yang akan dirancang,
selanjutnya dilakukan perancangan terhadap perangkat lunak tersebut. Adapun
tahapan perancangan yang dilakukan meliputi flowchart sistem, perancangan
antarmuka program serta perancangan algoritma.

3.2.1. Flowchart Sistem
Berdasarkan hasil analisis masalah yang dilakukan sebelumnya, penulis
merancang proses kerja perangkat lunak solusi pemecahan n-queen problem
menggunakan algoritma genetika dengan metode pemilihan parent menggunakan
metode tournament selection, seperti terlihat pada Gambar 3.3.

Universitas Sumatera Utara

25

Start
Q ← Input Jumlah Queen
P ← Input jumlah populasi
K ← Input Jumlah Turnamen
For I =1 to P
Bangkitkan Populasi Awal
Hitung Fitness Individu (1-P)

Fitness = 1?

N

Eliminasi Individu
Dengan Fitness Terkecil

Y
Tampilkan Posisi
Akhir Queen

For I=1 to K
A ← Random (1-P)
B ← Random (1-P)
T(I) ← Turnamen (A,B)

End
Crossover T(1-K)
N

Mutasi?
Y
M ← Random (1-Q)
N ← Random (1-P)
Mutasi (N,M)

Gambar 3.3 Flowchart Proses Kerja Perangkat Lunak

Flowchart yang ditunjukkan pada Gambar 3.2 di atas dimulai dengan
menginputkan jumlah queen, jumlah populasi dan jumlah turnamen yang akan
digunakan pada proses penyelesaian masalah n-queen.

Selanjutnya akan dibangkitkan individu-individu secara acak, sesuai
dengan jumlah populasi yang diinputkan. Masing-masing individu yang

Universitas Sumatera Utara

26

dibangkitkan ini akan memiliki jumlah kromosom sesuai dengan jumlah queen
yang diinputkan sebelumnya.

Selanjutnya akan dihitung jumlah fitness dari masing-masing individu
dengan menghitung jumlah queen yang saling bertabrakan. Jika ada salah satu
individu yang memiliki fitness bernilai 1 (sama sekali tidak terjadi tabrakan antara
queen di dalam individu tersebut), maka akan ditampilkan hasil akhir posisi queen
sebagai solusi permasalah sesuai dengan posisi queen pada individu tersebut.

Jika tidak, maka akan dilakukan eliminasi terhadap individu dengan
jumlah fitness yang paling rendah. Setelah itu, akan dilakukan proses seleksi
parent menggunakan metode tournament selection dengan cara menandingkan
individu-individu yang akan diseleksi sebanyak jumlah turnamen yang diinputkan.
Selanjutnya akan dilakukan cross-over terhadap parent yang terpilih. Hasil
individu dengan nilai fitness tertinggi akan digunakan sebagai pengganti individu
yang dieleminasi sebelumnya. Selanjutnya akan dilihat apakah terjadi mutasi pada
proses ini. Jika mutasi terjadi, maka dilakukan proses mutasi secara acak
mengikuti proses kerja algoritma genetika. Sedangkan jika tidak, proses akan
dilanjutkan pada tahapan berikutnya.

Akan dihitung jumlah masing-masing individu setelah tahapan cross-over
terjadi. Jika sudah ada individu yang memiliki nilai fitness 1, maka iterasi akan
dihentikan dan ditampilkan posisi queen pada individu tersebut sebagai solusi
permasalahan. Sedangkan jika tidak, akan kembali dilakukan iterasi dimulai dari
melakukan eliminasi terhadap individu dengan nilai fitness yang paling rendah.

3.2.2. PerancanganAntarmuka Program
Setelah merancang proses kerja perangkat lunak yang akan dirancang, selanjutnya
dilakukan perancangan terhadap antarmuka perangkat lunak ini. Dalam
perancangan ini, penulis merancang tiga form yang dapat digunakan pengguna
untuk berinteraksi dengan perangkat lunak yang dirancang.

Universitas Sumatera Utara

27

1.

Rancangan Form Utama
Form Utama merupakan tampilan yang dirancang sebagai interface agar

user dapat berinteraksi dengan sistem. Dalam melakukan interaksi dengan user,
Form Utama menggunakan tombol-tombol yang dapat dipilih oleh user, seperti
tombol Proses, Info serta Tutup, seperti terlihat pada Gambar 3.4.

Tournament Selection Pada Algoritma Genetika Untuk Masalah N-Queen

X

Proses
Info
Tutup

Gambar 3.4 Rancangan Form Utama

Pada Gambar 3.4, rancangan Form Utama memiliki beberapa tombol yang
dapat digunakan oleh pengguna untuk berinteraksi dengan aplikasi. Tombol
Proses berfungsi untuk menampilkan form Proses, tombol Info berfungsi untuk
menampilkan form Info dan tombol Tutup berfungsi untuk menutup aplikasi.

2.

Rancangan Form Proses

Form Ramal merupakan tampilan yang dirancang untuk menerima inputan
koonfigurasi jumlah queen, jumlah individu, persentasi mutasi serta jumlah
turnamen yang akan digunakan dalam proses pencarian solusi, serta menampilkan
hasil pencarian solusi berdasarkan data konfigurasi yang diberikan pengguna.
Adapun rancangan Form Proses dapat dilihat pada Gambar 3.5.

Universitas Sumatera Utara

28

Algoritma Genetika Menggunakan Tournament Selection

X

Inisialisasi
Jumlah
Queen

Jumlah
Individu

Persentase
Mutasi (%)

Posisi
Selection

Jumlah
Turnamen

OK
Detail Populasi
Individu

Kromosom

Proses

Nilai Fitness

Reset

Kembali

Hasil Penyelesaian
Iterasi

Jumlah Mutasi

Solusi

Gambar 3.5 Rancangan Form Proses

Pada Gambar 3.5, form Proses memiliki beberapa tombol yang dapat
digunakan oleh pengguna untuk berinteraksi dengan aplikasi. Tombol Inisialisasi
berfungsi untuk mengkonfirmasikan data inputan konfigurasi yang akan
digunakan dalam proses pencarian solusi n-queen problem. Tombol Proses
berfungsi untuk memproses pencarian solusi berdasarkan langkah kerja algoritma
genetika menggunakan metode tournament selection pada proses pemilihan
parent. Tombol Kembali berfungsi untuk menutup form Proses dan tampilan
dikembalikan pada form Utama.

Universitas Sumatera Utara

29

3.

Rancangan Form About
Form About merupakan tampilan yang dirancang untuk menampilkan

informasi mengenai perancang aplikasi pencarian solusi n-queen problem
menggunakan algoritma genetika dengan proses seleksi parent menggnakan
metode tournament selection ini. Adapun rancangan form About dapat dilihat pada
Gambar 3.6.

Aplikasi Pencarian Solusi N-Queen Menggunakan Algoritma Genetika
Dengan Tournament Selection Sebagai Metode Seleksi Parent
Oleh :
M. Rizki Ramadhan Lubis
081402075
Program StudiTeknologi Informasi
FASIILKOM - USU
2011
Kembali

Gambar 3.6 Rancangan Form About

3.2.3. Pseudo-code Program
Dalam perancangan aplikasi pencarian solusi N-Queen menggunakan algoritma
genetika dengan tournament selection sebagai metode seleksi parent ini,
digunakan sebuah pseudo-code untuk membantu proses pembuatan program.
Adapun pseudo-code yang digunakan dalam perancangan aplikasi ini adalah
sebagai berikut:

Begin
Q ← Input jumlah queen
P ← Input jumlah populasi
K ← Input jumlah turnamen
For I = 1 to P
Individu (1-Q) ← Rand (1-Q)
Fitness (1-Q) ← Queen yang saling bertabrakan
Do
Eliminasi Min (Individu (1-Q))
For I = 1 to K

Universitas Sumatera Utara

30

A ← Rand (1-P)
B ← Rand (1-P)
If Fitness A > B Then
Parent (0) = A
Else
Parent (0) = B
For I = 1 to K
A ← Rand (1-P)
B ← Rand (1-P)
If Fitness A > B Then
Parent (1) = A
Else
Parent (1) = B
Crossover (Parent (0), Parent (1))
If Mutasi = True Then
M ← Rand (1-Q)
N ← Rand (1-P)
Mutasi (N, M)
While Fitness (1-Q) 1
End

Universitas Sumatera Utara

BAB 4
IMPLEMENTASI DAN PEMBAHASAN
Bab ini membahas hasil dari implementasi metode tournament selection dalam
seleksi parent pada algoritma genetika untuk menyelesaikan masalah N-Queen
sesuai dengan perancangan sistem yang dibahas pada bab 3. Bab ini juga
membahas hasil dari pengujian sistem yang dilakukan terhadap aplikasi.
4.1. Implementasi
Setelah melakukan implementasi terhadap rancangan yang diperoleh sebelumnya
ke dalam bahasa pemrograman, penulis memperoleh hasil berupa sebuah aplikasi
pencarian solusi n-queen problem menggunakan algoritma genetika dengan
metode pemilihan parent menggunakan tournament selection.

4.1.1 Tampilan Hasil
Hasil dari implementasi perangkat lunak yang penulis rancang adalah sebagai
berikut :

1. Tampilan Form Utama
Tampilan Form Utama merupakan form yang ditampilkan pertama kali pada
saat sistem dijalankan. Adapun tampilan Form Utama ini seperti ditunjukkan pada
Gambar 4.1.

Gambar 4.1 Tampilan Form Utama

Universitas Sumatera Utara

32

2.

Tampilan Form About
Tampilan Form About merupakan tampilan yang muncul jika pengguna

menekan tombol About pada form Utama. Form ini menampilkan sekilas
informasi mengenai perancang aplikasi. Adapun tampilan Form About seperti
ditunjukkan pada Gambar 4.2.

Gambar 4.2 Form About

4.1.2

Pengujian Sistem

Setelah mendapatkan hasil tampilan apliksi, selanjutnya dilakukan pengujian
terhadap sistem tersebut. Adapun metode pengujian sistem yang penulis lakukan
adalah metode statis (static technique) dimana pengujian dibagi dalam beberapa
tahapan, sebagai berikut :

1. Menetapkan Parameter Pengujian
Adapun paramaeter pengujian yang penulis gunakan dalam pengujian
sistem ini adalah sebagai berikut :

Universitas Sumatera Utara

33

a. Kestabilan Sistem
Parameter ini digunakan untuk menguji apakah sistem masih mengalami
error pada saat dieksekusi atau pada saat melakukan proses pencarian
solusi n-queen problem.
b. Ketepatan Hasil
Parameter ini digunakan untuk menguji apakah sistem telah dapat
menampilkan hasil solusi berupa posisi queen yang tidak saling
bertabrakan, berdasarkan data konfigurasi yang diinputkan.

2. Menyiapkan Perangkat Pengujian
Dalam tahap ini, penulis melakukan pengujian sebanyak 10 kali untuk
mencari solusi n-queen probelm dengan konfigurasi sebagaimana terlihat pada
Tabel 4.1.

Tabel 4.1 Konfigurasi Pengujian
Konfigurasi
Value
Jumlah Queen
5
Jumlah Individu
10
Persentase Mutasi 10%
Posisi Selection
3
Jumlah Turnamen
5
Pada Tabel 4.1, dapat dilihat bahwa pengujian akan dilakukan untuk
mencari solusi n-queen problem dengan jumlah queen sebanyak lima. Populasi
yang digunakan di dalam algoritma genetika menampung sebanyak 10 individu.
Dengan persentase kemungkinan terjadinya mutasi sebesar 10% dan posisi one
point selection yang digunakan berada pada kromosom ke tiga serta jumlah
turnamen sebanyak lima.

3. Melakukan Pengujian
Langkah pertama dalam pengujian ini adalah menginputkan data
konfigurasi pada Tabel 4.1 ke dalam inputan yang tersedia pada form Proses,
seperti terlihat pada Gambar 4.3.

Universitas Sumatera Utara

34

Gambar 4.3 Konfigurasi Pencarian Solusi
Setelah data konfigurasi diinputkan, selanjutnya dilakukan penekanan
tombol Inisialisasi. Sistem secara otomatis akan membangkitkan secara acak 10
individu yang masing-masing memiliki jumlah kromosom sebanyak lima sebagai
populasi awal, sebagaimana terlihat pada Gambar 4.4.

Universitas Sumatera Utara

35

Gambar 4.4 Inisialisasi Populasi Awal

Selanjutnya, dilakukan penekanan tombol Proses untuk memulai proses
pencarian solusi n-queen. Pada tahap ini, sistem akan secara otomatis melakukan
proses pencarian dengan menggunakan algoritma genetika dan metode
tournament selection sebagai metode pemilihan parent, dan menampilkan hasil
solusi n-queen setelah beberapa kali iterasi. Salah satu hasil pengujian yang
diperoleh adalah ditemukannya solusi pemecahan pada iterasi ke-6, dengan
munculnya pesan seperti terlihat pada Gambar 4.5.

Universitas Sumatera Utara

36

Gambar 4.5 Hasil Pencarian Solusi

Pengujian dilakukan sebanyak 10 kali untuk menguji apakah aplikasi dapat
menemukan solusi yang lain. Pada proses pengujian ini, beberapa kali muncul
pesan informasi mengenai terjadinya mutasi pada individu pada saat interasi
berlangsung. Salah satu contoh pesan yang muncul adalah terjadinya mutasi pada
individu P9 dengan posisi mutasi di kromosom ke dua. Pesan ini menampilkan
pula informasi kromosom individu tersebut sebelum terjadinya mutasi dan
sesudah terjadinya mutasi, sebagaimana terlihat pada Gambar 4.6.

Universitas Sumatera Utara

37

Gambar 4.6 Pesan Informasi Mutasi

Dari 10 pengujian yang dilakukan, diperoleh beberapa solusi posisi nqueen dengan data konfigurasi pada Tabel 4.1. Adapun hasil pengujian tersebut
penulis rangkum dalam bentuk tabel, sebagaimana terlihat pada Tabel 4.2.

Tabel 4.2 Hasil Pengujian
Pengujian
1
2
3
4
5
6
7
8
9
10

Solusi Jumlah Iterasi Jumlah Mutasi
1,3,5,2,4
6
0
4,2,5,3,1
5
0
1,4,2,5,3
1
0
2,4,1,3,5
31
4
3,1,4,2,5
2
0
5,3,1,4,2
0
0
3,5,2,4,1
5
1
2,4,1,3,5
7
1
2,4,1,3,5
5
0
4,1,3,5,2
9
1

Universitas Sumatera Utara

38

Dari Tabel 4.2, terlihat bahwa ada tujuh solusi posisi n-queen yang
ditemukan dari 10 kali pengujian. Terilhat pula, bahwa ada beberapa solusi yang
langsung ditemukan pada saat pembangkitan populasi awal, yaitu pada pengujian
ke empat dan pengujian ke enam. Dari 10 kali pengujian yang dilakukan, rata-rata
iterasi yang dibutuhkan untuk memperoleh solusi penyelsaian n-queen problem
dengan jumlah queen sebanyak lima adalah sebagai berikut:

RI

=

Jumlah Iterasi / Jumlah Pengujian

=

71/10

=

7,1

Sedangkan rata-rata mutasi yang dibutuhkan untuk memperoleh solusi
penyelsaian n-queen problem dengan jumlah queen sebanyak lima adalah sebagai
berikut:
RM =

Jumlah Mutasi / Jumlah Pengujian

=

7/10

=

0,7

Berdasarkan pengujian yang dilakukan, dapat disimpulkan bahwa aplikasi
pencarian solusi n-queen problem menggunakan algoritma genetika dengan
tournament selection sebagai metode pemilihan parent ini sudah berfungsi dengan
baik, sesuai dengan analisa perancangan sistem sebelumnya. Hal ini terlihat dari
hasil variasi solusi posisi N-Queen yang dihasilkan serta variasi mutasi yang
dibutuhkan untuk setiap solusi yang diperoleh.

4.2. Pembahasan
Dari pengujian sistem yang dilakukan, terlihat bahwa semakin kecil persentase
mutasi yang digunakan, maka semakin jarang terjadi mutasi di dalam setiap
iterasi. Selain itu, metode tournament selection yang digunakan mampu mencari
solusi posisi n-queen dengan kecepatan yang cukup tinggi. Hal ini terlihat dari
rata-rata iterasi yang dibutuhkan pada setiap pengujian, dengan total iterasi
sebanyak 39 dari 10 kali pengujian sistem.

Universitas Sumatera Utara

39

Algoritma genetika yang digunakan untuk mencari solusi penyelesaian nqueen problem dengan jumlah queen sebanyak lima, mampu menemukan
beberapa solusi yang berbeda. Variasi solusi yang ditemukan cukup baik, hal ini
terlihat dari ada tujuh solusi yang diperoleh dari 10 kali pengujian sistem yang
dilakukan.

4.2.1

Kelebihan Sistem

Adapun kelebihan dari sistem yang dihasilkan ini adalah sebagai berikut :
a.

Sistem dapat menunjukkan langkah demi langkah proses pencarian solusi
n-queen problem, dimulai dari inisialisasi populasi awal, penghitungan
fitness, proses eliminasi individu, terjadinya mutasi serta solusi posisi
akhir queen yang tidak saling bertabrakan.

b.

Sistem mampu menghasilkan solusi posisi n-queen yang berbeda setiap
kali inisialisasi pencari dilakukan. Hal ini terlihat dari hasil pengujian
sistem yang menhasilkan tujuh solusi posisi n-queen yang berbeda dari
10 kali pengujian sistem.

4.2.2

Kelemahan Sistem

Adapun kelemahan dari sistem yang ditemukan adalah sebagai berikut :
a.

Karena menampilkan informasi langkah-langkah proses pencarian solusi nqueen problem secara bertahap, sistem membutuhkan waktu yang cukup
lama jika iterasi yang dibutuhkan untuk menghasilkan satu solusi berjumlah
ratusan. Karena menggunakan timer dalam proses menampilkan langkah
pencarian solusi tersebut, waktu yang dibutuhkan akan semakin bertambah
seiring dengan bertambahnya iterasi yang dibutuhkan dalam proses
pencarian solusi.

b.

Metode penentuan posisi cross over di dalam sistem terbatas hanya pada
satu metode, yaitu one point selection. Hal ini menyebabkan sering
munculnya individu dengan komposisi kromosom yang sama jika individu
yang menjadi pemenang pada setiap proses turnamen terpilih lebih dari satu
kali.

Universitas Sumatera Utara

BAB 5
PENUTUP

Bab ini membahas kesimpulan dari hasil penelitian, khususnya mengenai
implementasi metode tournament selection dalam seleksi parent pada algoritma
genetika untuk menyelesaikan masalah N-Queen berdasarkan hasil pengujian
yang dibahas pada bab 4. Bab ini juga membahas mengenai saran-saran untuk
pengembangan penelitian selanjutnya.
5.1

Kesimpulan

Berdasarkan hasil penelitian terhadap aplikasi pencarian solusi n-queen problem
menggunakan algoritma genetika dengan metode tournament selection sebagai
metode seleksi parent ini, penulis dapat menyimpulkan beberapa hal sebagai
berikut :

1.

Dengan menggunakan metode tournament selection, individu yang
memiliki nilai fitness yang rendah memiliki kesempatan untuk terpilih
menjadi kandidat parent dengan kemungkinan yang sama besarnya dengan
individu yang memiliki nilai fitness yang jauh lebih tinggi. Hal ini mungkin
terjadi jika individu tersebut terpilih dan ditandingkan dengan individu lain
yang memiliki nilai fitness lebih rendah.

2.

Semakin besar jumlah turnamen yang digunakan di dalam proses pencarian
solusi, semakin besar pula kemungkinan individu yang memiliki nilai
fitness yang rendah terpilih sebagai kandidat parent.

3.

Mutasi dengan cara mengubah posisi kromosom pada kelompok solusi
dapat membantu mengatasi masalah dimana terjadinya lebih dari satu
individu yang memiliki komposisi kromosom yang sama.

4.

Dengan mengeliminasi kemungkinan adanya kromosom yang memiliki
nilai yang sama di dalam satu kelompok solusi, dapat mempercepat proses
pencarian solusi karena iterasi yang dibutuhkan akan lebih sedikit.
Eliminasi ini meminimalisir kemungkinan rendahnya nilai fitness kelompok

Universitas Sumatera Utara

41

solusi yang diakibatkan oleh terjadinya tabrakan antara posisi queen secara
horizontal, sehingga pencarian solusi dapat difokuskan pada kemungkinan
terjadinya tabrakan antara posisi queen secara diagonal.
5.2

Saran

Adapun saran yang ingin penulis berikan sehubungan dengan hasil penelitian ini
adalah sebagai berikut :

1. Sistem ini dapat dikembangkan lebih lanjut sehingga dapat menggunakan
lebih dari satu metode cross over selain one point selection, untuk melihat
perbedaan hasil yang diperoleh dengan metode yang digunakan di dalam
penelitian ini.
2. Dapat ditambahkan metode seleksi parent yang lain seperti stochastic
sampling, deterministic sampling atau mixed sampling, untuk melihat
perbedaan hasil solusi pencarian dengan metode seleksi tournament
selection yang digunakan.

Universitas Sumatera Utara

BAB 2
TINJAUAN PUSTAKA

Bab ini membahas tentang teori penunjang serta penelitian sebelumnya yang
berhubungan dengan penerapan metode tournament selection pada metode seleksi
parent dalam algoritma genetika untuk menyelesaikan masalah N-Queen.
2.1

Kecerdasan Buatan

Kecerdasan Buatan (Artificial Intelligence) adalah kecerdasan mesin dan cabang
ilmu komputer yang bertujuan untuk menciptakan suatu sistem yang dapat
merasakan

lingkungannya

dan

dapat

mengambiil

tindakan

dengan

memaksimalkan peluang yang dianggap sukses (Setiadi : 2012).
Kecerdasan buatan juga dapat diartikan sebagai sebuah studi tentang
bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat
dilakukan lebih baik oleh manusia. Beberapa bidang perkembangan pada
kecerdasan buatan adalah sebagai berikut (Prasetyo : 2012):
1.

Sistem Pakar (Expert System)
Sistem pakar adalah program penasehat berbasis komputer yang mencoba
meniru proses berpikir dan pengetahuan dari seorang pakar dalam
menyelesaikan masalah-masalah spesifik. Contohnya adalah sistem pakar
menentukan suatu jenis penyakit, sistem pakar untuk bisnis dan
sebagainya.

2.

Bahasa Alamiah (Natural Languange)
Suatu teknologi yang memberikan kemampuan kepada komputer untuk
memahami

bahasa

manusia

sehingga

pengguna

komputer

dapat

berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari.
3.

Robotik dan Sistem Sensor
Sistem sensor, seperti sistem vision, sistem tactile, dan sistem pemrosesan
sinyal jika dikombinasikan dengan AI, dapat dikategorikan kedalam suatu
sistem yang luas yang disebut sistem robotik.

Universitas Sumatera Utara

7

4.

Computer Vision
Computer Vision merupakan suatu sarana untuk dapat menginterpretasikan
gambar atau objek-objek yang tampak melalui komputer.

5.

Permainan (Games)
Permainan merupakan suatu bidang AI yang sangat populer berupa
permainan antara manusia melawan mesin yang memiliki intelektual untuk
berpikir.
Dalam pengaplikasiannya, ada sembilan tujuan akhir yang diharapkan

dalam penerapan kecerdasan buatan, yaitu (Akbar : 2011):
1.

Memahami pola pikir manusia, mencoba untuk mendapatkan pengetahuan
ingatan manusia yang mendalam, kemampuan dalam memecahkan
masalah, belajar, dan mengambil keputusan.

2.

Otomatisasi, menciptakan sistem yang dapat menggantikan manusia dalam
tugas-tugas intelegensi. Menggunakan sistem yang performanya sebaik
manusia dalam melakukan pekerjaan.

3.

Penguatan intelegensi, membangun sistem untuk membantu manusia agar
mampu berpikir lebih baik dan lebih cepat.

4.

Intelegensi manusia super, membangun sistem yang mempunyai
kemampuan untuk melebihi intelegensi manusia.

5.

Menyelesaikan permasalahan, sistem mampu menyelesaikan berbagai
masalah yang luas.

6.

Wacana koheren, mampu berkomunikasi dengan manusia menggunakan
bahasa alami.

7.

Belajar, mampu memperoleh data sendiri dan mengetahui bagaimana cara
memperoleh data. Sistem mampu membuat hipotesis, penerapan atau
pembelajaran secara heuristik dan membuat alasan dengan analogi.

8.

Otonomi, mempunyai sistem intelegensi yang beraksi atas inisiatif sendiri.
Informasi, mampu menyimpan informasi dan mengetahui cara mengambil
informasi.

Universitas Sumatera Utara

8

2.2

Algoritma Genetika

Algoritma genetika adalah suatu algoritma pencarian yang meniru mekanisme
dari genetika alam. Algoritma Genetika banyak dipakai pada aplikasi bisnis,
teknik maupun pada bidang keilmuan lainnya. Algoritma ini dimulai dengan
kumpulan solusi yang disebut dengan populasi. Solusi-solusi dari sebuah populasi
diambil dan digunakan untuk membentuk populasi yang baru. Hal ini dimotivasi
dengan harapan bahwa populasi yang baru dibentuk tersebut akan lebih baik
daripada yang lama. Solusi-solusi yang dipilih untuk membentuk solusisolusi
yang baru dipilih sesuai dengan fitness mereka masing-masing (Juniawati : 2003).

Algoritma genetika digunakan untuk penyelesaian masalah optimasi yang
kompleks

dan

sukar

diselesaikan

dengan

menggunakan

metode

yang

konvensional. Sebagaimana halnya proses evolusi di alam, suatu algoritma
genetika yang sederhana umumnya terdiri dari tiga operator yaitu: operator
reproduksi, operator crossover (persilangan) dan operator mutasi. Struktur umum
dari suatu algoritma genetika dapat didefinisikan dengan langkah-langkah sebagai
berikut (Juniawati : 2003):

1.

Membangkitkan populasi awal, Populasi awal ini dibangkitkan secara
random sehingga didapatkan solusi awal. Populasi itu sendiri terdiri dari
sejumlah kromosom yang merepresentasikan solusi yang diinginkan

2.

Membentuk generasi baru, Dalam membentuk digunakan tiga operator
yang telah disebut di atas yaitu operator reproduksi/seleksi, crossover dan
mutasi. Proses ini dilakukan berulang-ulang sehingga didapatkan jumlah
kromosom yang cukup untuk membentuk generasi baru dimana generasi
baru ini merupakan representasi dari solusi baru.

3.

Evaluasi solusi, Proses ini akan mengevaluasi setiap populasi dengan
menghitung nilai fitness setiap kromosom dan mengevaluasinya sampai
terpenuhi kriteria berhenti. Bila kriteria berhenti belum terpenuhi maka
akan dibentuk lagi generasi baru dengan mengulangi langkah 2.

Universitas Sumatera Utara

9

Dalam algoritma genetika pengkodean (encoding) solusi problem kedalam
suatu kromosom merupakan isu penting. Populasi awal yang berisi N kromosom
dibangkitkan secara random yang menjangkau keseluruhan ruang solusi. Proses
evolusi dilakukan dengan melakukan operasi genetik (cross-over dan mutasi) dan
melakukan seleksi kromosom untuk generasi berikutnya sampai sejumlah generasi
yang dikehendaki dengan panduan fungsi fitness (Miller : 1995).

Fungsi fitness adalah fungsi yang digunakan untuk menentukan apakah
suatu kromosom layak bertahan. Pada setiap generasi dipilih kromosom yang
mendekati solusi dengan mengevaluasi fungsi kecocokan dari kromosom tersebut.
Fungsi ini didefinisikan sedemikian sehingga semakin besar nilai fitness semakin
besar probabilitas untuk terseleksi pada generasi berikutnya. Untuk maksimasi
maka fungsi tujuan dapat dijadikan sebagai fungsi fitness, sehingga kromosom
yang mewakili nilai fungsi besar akan memiliki probabilitas terseleksi yang besar
juga. Untuk minimasi dapat dirumuskan sedemikian sehingga fungsi tujuan yang
semakin kecil maka memiliki fungsi fitness yang besar (Miller : 1995).

Setiap anggota populasi diwakili deretan string (disebut kromosom)
dengan panjang tertentu. Elemen string tersebut dapat berupa digit 0,1 (untuk
binary encoding), bilangan real (untuk real encoding), atau elemen lain. Untuk
ukuran populasi N yang biasanya dipertahankan tetap prosedur seleksi diperlukan
untuk memilih anggota populasi yang mana yang akan tetap eksis pada generasi
berikutnya (Akbar : 2011).

Fungsi fitness digunakan untuk menentukan apakah kromosom layak
dipertahankan atau tidak dalam generasi berikutnya. Sebelum dilakukan seleksi
jumlah anggota populasi ditambah dengan hasil offspring dari proses operasi
genetik yang dapat berupa cross over dan mutasi. Hasil operasi genetik dan
populasi semula selanjutnya diseleksi dengan metode tertentu untuk diambil n
anggota populasi yang terbaik. Untuk kasus minimasi maka yang terpilih adalah n
anggota populasi dengan nilai fitness yang terkecil (Akbar : 2011).

Universitas Sumatera Utara

10

Proses operasi crossover dirancang untuk mencari kemungkinan yang
lebih baik dari anggota populasi yang telah ada. Dari pasangan induk yang terpilih
berdasarkan seleksi fungsi fitness diambil sejumlah pasangan dengan probabilitas
Pc untuk dikenakan operasi crossover (Blicke & Thiele : 1995).

Mutasi dalam konteks binary encoding adalah perubahan pada bit tunggal
(bit 0 jadi 1 dan sebaliknya) anggota populasi yang terpilih. Banyaknya bit yang
mengalami mutasi pada setiap generasi diatur oleh probabilitas mutasi (Pm) yang
nilainya merupakan cacah bit mutasi dibagi cacah bit total dalam populasi (Blicke
& Thiele : 1995).

2.3

Metode Tournament Selection

Tournament selection merupakan salah satu mekanisme seleksi parent pada
algoritma genetika yang baik dan berguna. Hasil seleksi pada tournament
selection sangat dipengaruhi pada

pemilihan jumlah turnamen serta jumlah

competitor (individu yang akan diikut sertakan di dalam turnamen). Semakin
banyak jumlah turnamen dan jumlah kompetitor di dalam tournament selection,
persaingan akan semakin ketat yang pada akhirnya akan menghasilkan hasil
seleksi yang lebih baik (Filipovic : 2003).

Beberapa alasan mengapa tournament selection sangat berguna di dalam
proses seleksi pada algoritma genetika adalah kesederhanaan bentuk algoritmanya
serta kefisiensiannya jika digunakan baik pada arsitektur paralel maupun nonparalel. Demikian pula dengan fleksibilitas yang dimiliki metode ini terhadap
perubahan input dan output yang diinginkan (Filipovic : 2003).

Tournament selection dimulai dengan memilih jumlah turnamen yang akan
dilakukan. Pemilihan jumlah turnamen ini sebaiknya disesuaikan dengan jumlah
parent yang diinginkan pada proses crossover berikutnya. Selanjutnya, untuk
setiap turnamen, akan dipilih secara acak dua individu dari populasi awal untuk
ditandingkan. Pemenang pada pertandingan ini ditentukan dengan melihat nilai
fitness masing-masing individu, dimana individu dengan nilai fitness paling besar

Universitas Sumatera Utara

11

akan keluar sebagai pemenang. Setiap individu yang menjadi pemenang pada
masing-masing turnamen kemudian dipilih menjadi parent yang akan digunakan
pada proses crossover berikutnya (Filipovic : 2003).

2.4

N-Queen Problem

N-Queens Problem adalah salah satu permasalahan yang paling umum digunakan
dalam berbagai buku pegangan untuk menjelaskan algoritma backtracking. Inti
permasalahan yang diajukan adalah bagaimana menempatkan N buah bidak ratu
dalam suatu papan catur berukuran N x N sedemikian rupa sehingga tidak satupun
dari bidak ratu tersebut dapat memakan bidak ratu yang lain dalam satu gerakan.
Sesuai dengan gerakan bidak ratu standar, suatu bidak ratu hanya dapat bergerak
lurus dalam satu kolom, baris, atau diagonal. Untuk itu sebuah solusi harus dapat
mengatur penempatan bidak ratu sehingga tidak ada dua bidak yang terletak
dalam suatu kolom, baris, atau diagonal yang sama (Božikovic et. al : 2003).

N-Queens problem pertama kali diusulkan sebagai 8 Queens Problem,
sesuai dengan ukuran papan catur sebenarnya yaitu 8 x 8, pada tahun 1848 oleh
seorang pecatur Max Bezzel. Banyak matematikawan, termasuk Gauss dan Georg
Cantor, telah berusaha mencari solusi permasalahan ini. Solusi pertama
dipublikasikan

oleh

Franz

Nauck

pada

tahun

1850—termasuk

solusi

permasalahan umumnya, yaitu ketika jumlah bidak ratu dimisalkan sebagai N
(Božikovic et. al : 2003).
Masalah ini dapat digeneralisasikan dengan cara meletakkan queen
sejumlah n yang tidak saling bertabrakan di dalam sebuah papan catur. Karena
setiap queen harus berada pada baris dan kolom yang berbeda, maka dapat
diasumsikan bahwa queen pada posisi ke-i adalah queen yang diletakkan pada
kolom ke-i. Solusi dari masalah ini dapat direpresentasikan sebagai q1, q2, … qn
yang merupakan permutasi dari jumlah queen itu sendiri. Posisi dari queen pada
kelompok solusi merupakan representasi dari posisi kolom queen, sedangkan nilai
dari posisi queen tersebut merepresentasikan baris dari queen tersebut pada papan
catur. Sebagai contoh, jika sebuah kelompok solusi bernilai 1,3,5,2,4 maka dapat

Universitas Sumatera Utara

12

diartikan bahwa pada kolom pertama posisi queen berada di baris pertama, pada
kolom kedua posisi queen berada di baris ketiga, pada kolom ketiga posisi queen
berada di baris kelima, pada kolom keempat posisi queen berada di baris kedua
dan pada kolom kelima posisi queen berada di baris keempat. Sebagai ilustrasi,
formasi queen dari kelompok 1,3,5,2,4 tersebut seperti digambarkan pada Gambar
2.1 (Pothumani : 2013).

Q
Q
Q
Q
Q
Gambar 2.1 Ilustrasi Solusi 1,3,5,2,4 (Pothumani, 2013)
Dalam mencari solusi posisi dalam permasalahan n-queen, sebagai acuan
dari seberapa akurat kelompok solusi yang dihasilkan, digunakan fungsi fitness.
Fungsi fitness dari masalah n-queen merupakan jumlah dari posisi queen yang
mengalami tabrakan dibandingkan dengan total jumlah posisi queen dalam
kelompok solusi tersebut. Sebagai contoh, jika dalam sebuah kelompok solusi
dihasilkan nilai 3,2,5,1,4, maka langkah pertama dalam menghitung fungsi fitness
kelompok solusi ini adalah menggambarkan posisi queen dari kelompok solusi
tersebut ke dalam papan catur, sebagaimana terlihat pada Gambar 2.2 (Pothumani
: 2013).

Q
Q
Q
Q
Q
Gambar 2.2 Posisi Queen Dalam Papan Catur (Pothumani, 2013)
Selanjutnya, setiap posisi akan diperiksa apakah mengalami tabrakan
dengan posisi queen yang lain secara horizontal maupun diagonal. Untuk posisi
queen pertama (kolom 1 baris 3), terlihat bahwa posisi ini mengalami tabrakan

Universitas Sumatera Utara

13

dengan posisi queen kedua (kolom 2 baris 2) secara diagonal, seperti terlihat pada
ilustrasi di Gambar 2.3, dimana queen yang bertabrakan diberi warna merah
(Pothumani : 2013).

Q
Q
Q
Q
Q
Gambar 2.3 Contoh Queen Yang Saling Bertabrakan (Pothumani, 2013)
Untuk posisi queen kedua, terlihat bahwa posisi ini mengalami tabrakan
dengan posisi queen pertama secara diagonal. Untuk posisi queen ketiga (kolom 3
baris 5), terlihat bahwa posisi ini mengalami tabrakan dengan posisi queen
pertama secara diagonal. Untuk posisi queen keempat (kolom 4 baris 1), terlihat
bahwa posisi ini tidak mengalami tabrakan dengan posisi queen manapun, baik
secara horizontal maupun diagonal. Untuk posisi queen kelima (kolom 5 baris 4) ,
terlihat bahwa posisi ini tidak mengalami tabrakan dengan posisi queen manapun
(Pothumani : 2013).

Dari contoh kelompok solusi 3,2,5,1,4 di atas, terlihat bahwa dari lima
posisi queen di dalam kelompok solusi tersebut, terdapat tiga posisi yang saling
bertabrakan. Sehingga, dapat dihitung nilai fitness kelompok solusi tersebut, yaitu
3/5 atau 0,6. Dengan melihat contoh perhitungan nilai fitness kelompok solusi
dari masalah n-queen ini, dapat disimpulkan bahwa nilai fitness yang semakin
mendekati angka satu adalah nilai fitness yang paling jelek, karena di dalam
kelompok solusi tersebut terdapat posisi queen yang banyak mengalami tabrakan.
Sebaliknya, semakin mendekati angka nol, maka nilai fitness dari kelompok solusi
tersebut akan semakin baik, dengan nilai nol adalah solusi yang paling sempurna
(dimana tidak terdapat satupun posisi queen yang saling bertabrakan) (Pothumani
: 2013).

Universitas Sumatera Utara

14

2.5

Penelitian Sebelumnya

Dalam masalah seleksi parent pada algoritma genetika menggunakan metode
tournament selection, ada dua penelitian yang dapat dijadikan sebagai referensi
mengenai cara kerja metode tersebut.

Penelitian pertama adalah penelitian yang dilakukan oleh Vladimir
Filiponic pada tahun 2003. Penelitian yang diterbitkan pada jurnal Computing and
Informatic Vol. 22 ini berjudul Fine-Grained Tournament Selection Operator In
Genetic Algorithm. Penelitian ini mengangkat masalah pengembangan dari
metode tournament selection, yang mana kemudian dinamakan sebagai finegrained tournament selection. Dalam jurnal yang diterbitan pada computing and
informatic Vol. 22 tersebut, Filiponic menjelaskan bagaimana metode tournament
selection sangat efektif digunakan dalam menyelesaikan masalah Simple Plant
Location Problem (SPLP) dalam skala besar. Pengembangan metode tournament
selection ini mampu menyelesaikan masalah SPLP dengan lebih dari 1000 lokasi
produksi dan customer.

Penelitian kedua adalah penelitian yang dilakukan oleh Brad L. Miller dan
David E. Goldberg pada tahun 1995. Penelitian yang diterbitkan pada jurnal
Complex System Vol. 9 ini mengangkat masalah noise yang sering terjadi dalam
penghitungan fungsi fitness di dalam algoritma genetika. Dalam penelitian ini,
Brad L. Miller dan David E. Goldberg menjelaskan bagaimana metode
tournament selection memiliki ketahanan yang sangat baik terhadap noise yang
mungkin terjadi pada tahap penghitungan fungsi fitness di dalam algoritma
genetika. Brad L. Miller dan David E. Goldberg juga menyimpulkan bahwa
metode

tournament

selction

merupakan

metode

yang

gampang

untuk

diimplementasikan pada masalah-masalah yang bersifat paralel maupun nonparalel, sekaligus juga sangat fleksibel terhadap perubahan individu yang terjadi
di dalam proses seleksi.

Universitas Sumatera Utara

15

Dari kedua penelitian tersebut, dapat disimpulkan beberapa kelebihan dari
metode tournament selection dalam pemilihan parent di dalam algoritma genetika
sebagai berikut :

1. Sangat efektif untuk menyelesaikan masalah dalam skala besar.
2. Memiliki ketahanan yang baik terhadap noise pada tahap penghitungan
fungsi fitness.
3. Mudah untuk diimplementasikan pada masalah-masalah yang bersifat
paralel maupun non-paralel.
4. Fleksibel terhadap perubahan yang terjadi pada individu di dalam
proses seleksi parent.
5.
Adapun inti dari kedua penelitian yang digunakan sebagai referensi
terhadap metode tournament selection dalam proses seleksi parent pada algoritma
genetika ini dapat ditunjukkan pada Tabel 2.1.

Tabel 2.1 Penelitian Sebelumnya
Peneliti

Tahun

Vladimir

2003

Filipovic

Judul

Hasil

Fine-Grained Tournament

Tournament selection

Selection Operator In

merupakan metode yang

Genetic Algoritm

efektif digunakan dalam
menyelesaikan masalah
dalam skala besar.

Brad L.

Genetic Algoritm,

Tournament selection

Miller &

Tournament Selection and

merupakan metode yang

David E.

the Effevt of the Noise

memiliki ketahanan yang

Goldberg

1995

baik terhadap noise pada
tahapan penghitungan
fungsi fitness, mudah untuk
diimplementasikan pada
masalah yang bersifat
paralal maupun non-paralel

Universitas Sumatera Utara

16

dan fleksibel terhadap
perubahan individu yang
terjadi pada proses seleksi
parent.
S.

2013

Pothumani

Solving N-Queen Problem

Variasi hasil solusi

Using Various Algorithm –

pemecahan masalah N-

A Survey

Queen dengan
menggunakan berbagai
algoritma.

Marko

2003

Bozikovic,
Marin

Solving N-Queen Problem

Membuktikan bahwa

Using Global Parallel

algoritma genetika cocok

Genetic Algorithm

digunakan untuk

Golub &

memecahkan masalah N-

Leo Budin

Ahmed S.

Queen.

2015

Farhan,

Solving N-Queen Problem

Solusi-solusi yang

Using Genetic Algorithm

memungkinkan dari

Wadhah Z.

masalah N-Queen dengan

Tareq &

jumlah queen = 8.

Foiuad H.
Awad
Azwar W.

2007

Genetic Algorithm Versus

Algoritma genetika lebih

Hammad &

Particle Swarm

stabil dibandingkan Particle

Dr. Ban N.

Optimization In N-Queen

Swarm Optimization untuk

Thannoon

Problem

masalah non-linier.

Universitas Sumatera Utara

BAB 1
PENDAHULUAN

Pada bab ini akan dibahas hal-hal yang menjadi latar belakang pembuatan tugas
akhir, rumusan masalah, tujuan penelitian, batasan masalah, manfaat, metodologi
penelitian, serta sistematika penulisan.
1.1.

Latar Belakang

Dalam bidang kecerdasan buatan (artificial intelligent), algoritma genetika
(genetic algorithm) merupakan algoritma yang sering digunakan untuk
memecahkan masalah, seperti masalah N-Queen. Dalam memecahkan masalah NQueen dengan menggunakan algoritma genetika, proses pemilihan parent
biasanya dilakukan dengan menggunakan teknik roulette wheel selection, dimana
individuyang memiliki nilai fitness yang lebih tinggi akan memiliki kesempatan
yang lebih besar untuk dipilih sebagai parent jika dibandingkan dengan individu
dengan nilai fitness yang lebih rendah. Proses seleksi dilakukan dengan
membangkitkan bilangan acak yang berada pada range nilai fitness masingmasing individu sehingga individu yang berada pada range nilai yang dihasilkan
oleh bilangan acak tersebut akan terpilih sebagai parent untuk proses selanjutnya.
Dalam melakukan seleksi terhadap parent yang akan digunakan untuk
menghasilkan generasi baru pada algoritma genetika, ada beberapa metode yang
dapat digunakan seperti rank based fitness assignment, roulette wheel selection,
local selection, truncation selection dan tournament selection. Tournament
selection menggunakan prinsip kompetisi antara individu yang akan dise