Anda di halaman 1dari 5

Pelita Informatika Budi Darma, Volume : VII, Nomor: 2,

Agustus 2014

ISSN : 23019425

IMPLEMENTASI LINIER CONGRUENT METHOD (LCM) PADA


APLIKASI TRYOUT SNMPTN
(Studi Kasus : Bimbingan Dan Pemantapan Belajar Quin Medan)
Daniel Munthe (0911637)
Mahasiswa Jurusan Teknik Informatika STMIK Budi Darma Medan
Jl. Sisingamangaraja No. 338 Simpang Limun Medan
www.stmik-budidarma.ac.id // Email : Daniel_munthe@ymail.com
ABSTRAK
Tryout merupakan kegiatan yang sangat lazim dilakukan oleh masyarakat apabila akan mengadakan
ujian, terutama pada kalangan siswa-siswi yang akan menghadapi Seleksi Nasional Masuk Perguruan Tinggi
Negeri (SNMPTN).
Linear Congruent Method (LCM) adalah sebuah metode yang membangkitkan bilangan acak yang
banyak dipergunakan dalam program komputer. Pada metode ini, perulangan pada periode waktu tertentu atau
setelah sekian kali pembangkitan. Hal ini adalah salah satu sifat utama daripada metode ini. Penentuan
konstanta pada Linear Congruent Method (LCM) sangat menentukan baik tidaknya bilangan acak yang
diperoleh dalam arti memperoleh bilangan acak yang seakan-akan tidak akan terjadi pengulangan. Pemakaian
metode Linear Congruent Method (LCM) dalam kasus ini adalah hanya untuk pengacakan nomor soal agar
tiap-tiap siswa yang melakukan tryout berjalan dengan
efektif.
Kata Kunci : Tryout, snmptn, Linear Congruent
Method
1. Pendahuluan
1.1 Latar Belakang Masalah
Evaluasi hasil belajar dalam konteks
pembelajaran sering kali disebut juga dengan
evaluasi keluaran (output). Pelaksanaannya selalu
dikaitkan dengan keberhasilan pencapaian tujuan
pendidikan oleh peserta didik, baik tujuan yang
bersifat nasional, tingkat satuan pendidikan, tingkat
mata pelajaran maupun tingkat pokok bahasan dalam
suatu mata pelajaran. Evaluasi dilakukan dalam
rangka pengendalian mutu pendidikan secara
nasional sebagai bentuk akuntabilitas penyelenggara
pendidikan kepada pihak-pihak yang berkepentingan.
Linear Congruent Method (LCM) adalah
sebuah metode yang membangkitkan bilangan acak
yang banyak dipergunakan dalam program komputer.
Pada metode ini, perulangan pada periode waktu
tertentu atau setelah sekian kali pembangkitan. Hal
ini adalah salah satu sifat utama daripada metode ini.
Penentuan konstanta pada Linear Congruent Method
(LCM) sangat menentukan baik tidaknya bilangan
acak yang diperoleh dalam arti memperoleh bilangan
acak yang seakan-akan tidak akan terjadi
pengulangan. Pemakaian metode Linear Congruent
Method (LCM) dalam kasus ini adalah hanya untuk
pengacakan nomor soal agar tiap-tiap siswa yang
melakukan tryout berjalan dengan efektif.
1.2 Perumusan Masalah
Adapun perumusan masalahnya adalah :
1. Bagaimana mempersiapkan soal tryout yang
lebih efektif dan efisien ?

2.
3.

Bagaimana
mengimplementasikan Linear
Congruent Method (LCM) pada aplikasi tryout
SNMPTN ?
Bagaimana merancang aplikasi tryout dengan
menggunakan bahasa pemograman ?

1.3 Batasan Masalah


Adapun batasan masalahnya adalah :
1. Penerapan Linear Congruent Method (LCM)
dipergunakan untuk memastikan tidak terjadi
kemungkinan soal yang akan berulang.
2. Bahasa pemrograman yang dipergunakan
adalah Visual Basic 6.0.
3. Pengacakan soal tryout hanya terdiri dari 1
(satu) jurusan saja, yaitu jurusan Ilmu
Pengetahuan Alam (IPA).
4. Dalam jurusan terdapat mata pelajaran
Matematika Dasar, Bahasa Indonesia, Bahasa
Inggris, Matematika IPA, Sains Biologi, Sains
Fisika, Sains Kimia.
5. Jumlah soal tryout yang akan diacak adalah 15
soal per mata pelajaran.
6. Sumber soal tryout diambil dari arsip soal
Bimbingan & Pemantapan Belajar Quin yang
telah diprediksikan akan persis ataupun sama ke
soal yang akan dihadapi di Seleksi Nasional
Masuk Perguruan Tinggi Negeri atau SNMPTN
yang akan datang.
1.4 Tujuan dan Manfaat Penelitian
Adapun yang menjadi tujuan penulisan skripsi
ini adalah :
1. Untuk mengetahui bagaimana cara mengacak
soal tryout agar lebih efektif dan lebih efisien.

Implementasi Linier Congruent Method (LCM) Pada Aplikasi Tryout SNMPTN


(Studi Kasus : Bimbingan Dan Pemantapan Belajar Quin Medan). Oleh : Daniel
Munthe

1111
11

2.
Untuk mengimplementasikan Linear
Congruent
Method (LCM) pada pengacakan soal tryout.
3. Untuk merancang sebuah aplikasi pengacakan
soal tryout sebagai interface bagi para siswasiswi bimbingan dan pemantapan belajar Quin.
Adapun yang menjadi manfaat penulisan skripsi
ini adalah :
1. Untuk membuat suatu aplikasi bagi siswa-siswi
yang mengadakan tryout di Bimbingan &
Pemantapan Belajar Quin.
2.
Agar dalam pengadaan tryout lebih menarik
dan lebih efektif dari teknik sebelumnya, guna
mendapatkan hasil yang lebih baik lagi.
2. Landasan Teori
2.1 Perancangan
Defenisi perancangan menurut George M.
Scott, yaitu perancangan merupakan desain sistem
menentukan bagaimana suatu sistem akan
menyelesaikan apa yang mesti diselesaikan, tahap ini
menyangkut konfigurasi dari komponen-komponen
perangkat lunak dan perangkat keras dari suatu
sistem sehingga setelah instalasi dari sistem akan
benar-benar memuaskan rancang bangun yang telah
ditetapkan pada akhir tahap sistem. (Jogiyanto H.M,
2005:196)
Perancangan adalah langkah pertama dalam
fase pengembangan rekayasa produk atau sistem.
Perancangan itu adalah sebuah proses, cara ataupun
desain dalam penerapan berbagai teknik dan prinsip
yang bertujuan untuk mendefenisikan sebuah
peralatan, satu proses atau satu sistem secara detail
yang membolehkan dilakukannya realisasi fisik. Fase
ini adalah inti teknis dari proses rekayasa perangkat
lunak. Pada fase ini, elemen-elemen dari model
analisa dikonversikan dengan menggunakan satu dari
metode perancangan, fase perancangan akan
menghasilkan perancangan data, perancangan
antarmuka, perancangan arsitektur dan perancangan
prosedur.
2.2 Bilangan Acak
Random Number atau bilangan acak adalah
sebuah bilangan yang dihasilkan dari sebuah proses,
yang keluarannya tidak dapat diprediksi dan secara
berurutan tidak bisa dihasilkan bilangan yang sama.
Proses pembangkitan bilangan random menggunakan
komputer
disebut
Pseudorandom
number
generator
(PRNG). Pengujian kerandoman dilakukan bertujuan
untuk menentukan apakah bilangan dihasilkan oleh
sebuah generator termasuk bilangan tersebut random
atau bukan.
Bilangan acak semula dihasilkan secara
manual atau mekanis, dengan menggunakan teknik
seperti pemintal atau melempar dadu atau mengocok
kartu. Sementara pendekatan modern menggunakan
komputer agar berhasil menghasilkan bilangan
pseudo-acak. (Soepono Soeparlin, 1995:44). Tugas
akhir ini menggunakan Linear Congruent Method
(LCM) yang merupakan salah satu jenis

Pseudorandon Generator sebagai pembangkit


bilangan random. Hasil pengujian menunjukkan
bahwa kualitas dari Linear Congruential Generator
(LCG) berbeda-beda, tergantung pada nilai
parameter nilai awal a, c dan m. Oleh karena itu,
pemilihan dari tiap nilai parameter tersebut harus
diperhatikan. Tidak ada algoritma yang bisa
menghasilkan bilangan yang benar-benar random.
2.3
Pseudorandom Number Generator
(PRNG)
Pseudorandom Number Generator (PRNG)
atau dalam bahasa Indonesia pembangkit bilangan
acak semu adalah sebuah algoritma yang
membangkitkan sebuah deret bilangan yang tidak
benar-benar acak. Keluaran dari pembangkit
bilangan acak semu hanya mendekati beberapa dari
sifat-sifat yang dimiliki bilangan acak. Walaupun
bilangan yang benar-benar acak hanya dapat
dibangkitkan oleh perangkat keras pembangkit
bilangan acak, bukannya oleh perangkat lunak
komputer, akan tetapi bilangan acak semu banyak
digunakan, seperti untuk simulasi dalam ilmu Fisika,
Matematika, Biologi dan sebagainya, dan juga
merupakan hal yang sangat penting dalam dunia
kriptografi.
Beberapa algoritma enkripsi baik yang
simetris maupun nirsimetris memerlukan bilangan
acak sebagai parameter masukannya seperti
parameter kunci pada algoritma kunci publik dan
pembangkitan intialization vektor (IV) pada
algoritma kunci simetris. Walaupun terlihat
sederhana untuk mendapatkan bilangan acak, tetapi
diperlukan analisis matematika yang teliti untuk
membangkitkan bilangan seacak mungkin.
Berikut ini beberapa pembangkit bilangan
acak semu :
1.
Linear Congruent Generators
(LCG)
2.
Lagged
Fibonacci
Generators
3.
Linear Feedback shift
Registers
4.
Generalised Feedback shift
Registers
5. Mersenne Twister
2.4
Linear Congruent
Method
Jenis Pseudorandom Number Generator
(PRNG) yang dibahas adalah Linear Congruential
Generator (LCG). Linear Congruential Generator
(LCG) merupakan jenis Pseudorandom Number
Generator (PRNG) yang banyak dipergunakan
dalam
aplikasi
komputer modern. Linear
Congruential Generator (LCG) ditemukan oleh D.H
Lehmer. Tak lama sesudah itu, banyak programmer
yang menggunakan metode Linear Congruential
Generator (LCG) tersebut untuk menghasilkan
bilangan yang tampak random (Pseudorandom
number) dalam jumlah besar dan waktu yang cepat.
Programmer pada saat itu hanya membutuhkan
kecepatan pembangkitan bilangan random saja tanpa
memperhatikan kerandoman bilangan tersebut secara
statistika. Karena itu ada banyak generator Linear

Congruential Generator (LCG) yang gagal melalui


pengujian kerandoman statistika.
Bilangan acak yang dibangkitkan oleh
komputer merupakan bilangan acak semu, karena
pembangkitannya menggunakan operasi-operasi
aritmatika. Banyak algoritma atau metode yang dapat
digunakan untuk membangkitkan bilangan acak.
Dalam buku teks statistik klasik, angka-angka acak
diciptakan dengan mengambil bola yang dinomori
keluar dari suatu kotak yang berisi sejumlah bola
bernomor yang diketahui jumlahnya. Jika jumlah
bola yang ada didalam kotak jumlahnya sedikit,
maka hal tersebut masih mungkin dilakukan. Tetapi
jika jumlah bolanya dalam jumlah yang sangat besar,
maka hal tersebut akan susah dan tidak efektif
dilakukan. Terlepas dari hal itu, ada issue yang lain
yang meragukan bahwa mengambil bola bernomor
dari suatu kotak besar merupakan suatu proses acak
dengan kesempatan sama untuk semua bola. Karena
hal tersebut dan pertimbangan lainnya, maka
dilakukan komputerisasi generator bilangan random.
Sesungguhnya, bahasa pemrograman tingkat tinggi
menawarkan sedikitnya satu format dari generator
bilangan random. Pembuatan angka-angka yang acak
bukan merupakan hal yang mudah, karena komputer
adalah suatu mesin deterministik. Karena itulah
mustahil untuk membuat angka-angka acak yang
benar-benar random tanpa adanya perangkat keras
tambahan.
True random number generator atau TRNG
secara defenisi tidak dapat terprediksi. True random
number generator atau TRNG dilakukan dengan
melakukan sampling entropi sumber dari alam dan
memprosesnya melalui komputer. Misalnya adalah
bilangan random yang dihasilakan oleh Random.org
dan Lavarand.sgi.com menggunakan Lava lite
lamps sebagai entropi sumber. Entropi sumber
yang lain yang cukup bagus adalah radioaktivitas
yang juga digunakan oleh Fourmilab di
Swiss untuk membangkitkan true random number.
(http://digilib.ittelkom.ac.id/index.php?option=com_
content&view=article&id=109.linear-congruentmethod&catid=20:informatika&ltemid=14/04/07/20
1
3).
Linear Congruent Method (LCM) merupakan
metode pembangkitan bilangan acak yang banyak
digunakan dalam program komputer. Linear
Congruent Method (LCM) memanfaatkan model
linear untuk membangkitkan bilangan acakn yang
didefenisikan dengan :
Xn = ((a(Xn-1)+c)) mod m . . . . . . . . (3.1)
Dimana :
Xn
= Bilangan acak ke-n dari deretannya
Xn1 = Bilangan acak sebelumnya
a
= Faktor pengalih
c
= Increment (penambah)
m
= Modulus (batas maksimum bilangan acak
a, c, m adalah semua konstanta Linear Congruent
Method (LCM)

Ciri khas dari Linear Congruent Method


(LCM) adalah terjadi pengulangan pada periode
waktu tertentu atau setelah sekian kali pembangkitan,
hal ini adalah salah satu sifat dari metode ini dan
pseudorandom generator pada umumnya. Penentuan
konstanta Linear Congruent Method (LCM) (a, c dan
m) sangat menentukan baik tidaknya bilangan acak
yang diperoleh dalam arti memperoleh bilangan acak
yang yang seakan-akan tidak terjadi perulangan.
Dapat dilihat dalam konteks contoh seperti
dibawah ini :
Membangkitkan bilangan acak sebanyak 8 kali
dengan ketentuan a=4,c=7, m= 15 dan X1= 3.
Penyelesaian :
X1 = ( 4 (3) + 7 ) mod 15 = 4
X2 = ( 4 (4) + 7 ) mod 15 = 8
X3 = ( 4 (8) + 7 ) mod 15 = 5
X4 = ( 4 (5) + 7 ) mod 26 = 12
X5 = ( 4 (12) + 7 ) mod 15 = 10
X6 = ( 4 (10) + 7 ) mod 15 = 2
X7 = ( 4 (2) + 7 ) mod 15 = 0
X8 = ( 4 (0) + 7 ) mod 15 = 7
Bilangan acak yang dibangkitkan adalah : 4, 8, 5, 12,
10, 2, 0, 7 dan tidak terlihat perulangan secara
periodik.
3. Analisa Dan Perancangan
3.1 Analisa Tryout
Menurut kamus besar Bahasa Indonesia,
Analisis adalah penguraian suatu pokok atas
berbagai
bagiannya dan penelaahan bagian itu sendiri serta
hubungan antar bagian untuk memperoleh pengertian
yang tepat dan pemahaman arti. Tryout merupakan
kegiatan yang sangat lazim dilakukan oleh
masyarakat apabila akan mengadakan ujian, terutama
pada kalangan siswa-siswi yang akan menghadapi
Seleksi Nasional Masuk Perguruan Tinggi Negeri
(SNMPTN).
Beberapa hal yang sering menjadi masalah
pada saat melakukan tryout adalah sering
dijumpainya soal yang cacat ataupun soal yang tidak
jelas, misalnya kode soal, pilihan jawaban, print out
soal dan juga nomor soal yang
sama.
Pada apliksai ini akan mengajukan berbagai
pertanyaan ataupun soal kepada pengguna. Tryout
terdiri dari 2 kategori, yaitu IPA dan IPS.
Aplikasi ini hanya pada kategori IPA saja,
dimana ada 7 materi. Yaitu Matematika Dasar,
Bahasa Indonesia, Bahasa Inggris, Matematika IPA,
Sains Biologi, Sains Fisika dan Sains Kimia.
Aplikasi ini akan mengajukan beberapa pertanyaan
kepada user, dan dari beberapa pertanyaan yang ada
akan dilakukan pengacakan pertanyaan, agar tidak
ada soal yang sama.
3.2 Algoritma
Algoritma adalah langkah-langkah logika
penyelesaian masalah yang disusun secara sistematis
dan
algoritma
merupakan
upaya
dalam
mempermudah proses penulisan coding dengan

bahasa pemograman yang telah ditetapkan


sebelumnya, maka penulis merancang algoritma
program yang akan digunakan sebagai bahan acuan.
Pada aplikasi ini, algoritma soal berfungsi untuk
menghitung nilai benar dari soal-soal yang dijawab
oleh user. adapun algoritmanya adalah sebagai
berikut :
Mulai
Input :
Soal, No_Urutan
a, c, m, X0
Output : No_Penyajian
Proses : Ulang n = 1 sampai dengan m - 1
xn = ((a(xn-1) + b)) mod m
No_Penyajian xn
If Jumlah benar >= 60 then
h.a = LULUS
else if Jumlah benar < 60 then
h.a = TIDAK LULUS
end.
3.3

Implementasi Program
Implementasi perancangan Aplikasi Tryout
SNMPTN mencakup beberapa spesifikasi kebutuhan
perangkat keras (hardware) dan perangkat lunak
(software).
3.3.1 Spesifikasi Perangkat Keras (hardware)
dan Perangkat Lunak (software)
Perangkat
keras
(hardware)
yang
direkomendasikan untuk menjalankan aplikasi ini
memiliki spesifikasi sebagai berikut :
1. Processor Intel (R) core (TM) i3-2320M
CPU@2.10GHz
2. Memory (RAM) 2GB
3. System type 32-bit Operating System
4. VGA card 1 GB atau lebih tinggi lagi
5. Monitor dengan resolusi 1366 x 768 pixel
6. Keyboard dan Mouse
Perangkat lunak (Software) yang digunakan
dalam perancangan aplikasi ini adalah Microsoft
Visual Basic 6.0 dan Microsoft MySQL sebagai
interfacenya.
Sebelum menjalankan aplikasi ini, maka user harus
terlebih dahulu harus menginstall Microsoft Visual
Basic 6.0 dan Microsoft MySQL sebagai softwarenya. Setelah program terinstall, secara otomatis
database akan terkoneksikan.

3.4 Tampilan hasil Implementasi


Sesuai dengan perancangan form sebagai
interface pengguna dalam mengimplementasikan
aplikasi tryout, maka dihasilkan tampilan hasil
implementasi sesuai dengan yang dilakukan pada
tahap perancangan sebelumnya, seperti gambar
berikut :

Gambar 1 : Menu Login


Tampilan form aplikasi tryout SNMPTN
dapat dilihat sebagai berikut :

Gambar 2 : Menu Tryout


Tampilan form penginputan nomor soal, soal
dan jawaban dapat dilihat sebagai berikut :

Gambar 3 : Menu Bimbingan


4.
Kesimpulan
dan
Saran
4.1 Kesimpulan
Berdasarkan uraian yang telah penulis uraikan
tentang Implementasi Linear Congruent Method
(LCM) pada Aplikasi Tryout SNMPTN, maka
penulis dapat menarik beberapa kesimpulan yang
diperoleh dari pembahasan tersebut, antara lain
sebagai berikut :
1. Linear Congruent Method (LCM) dapat
digunakan sebagai dasar acuan pada berbagai
aplikasi untuk menyelesaikan masalah yang
mempunyai nilai acak dan Linear Congruent
Method (LCM) juga dapat diimplementasikan
pada Aplikasi Tryout SNMPTN
2. Pengacakan dengan Linear Congruent Method
(LCM) menghasilkan nilai acak yang periodik,
sehingga pemberian variabel yang selalu
berubah-ubah dapat mengatasi keperiodikan
nilai acak yang terjadi
3. Penggunaan Microsoft Visual Basic 6.0 dat
digunakan sebagai bahasa pemograman untuk
membangun suatu aplikasi dan aplikasi Tryout

SNMPTN ini tidak dapat dikategorikan sebagai


aplikasi portable karena untuk menjalankannya
diperlukan juga Microsoft MySQL yang telah
terinstall.
4.2 Saran
Adapun saran penulis berdasarkan hasil
rancangan dan kesimpulan yang telah penulis
rangkum adalah sebagai berikut :
1. Diharapkan, aplikasi ini dapat dikembangkan
lagi menjasi suatu aplikasi yang lebih sempurna
pada masa-masa yang akan datang dalam
bentuk online ataupun multi user.
2. Penulis
juga
mengharapkan
bahwa
pengembangan yang dilakukan oleh setiap
pembaca
nantinya
tidak
hanya
pengimplementasian Linear Congruent Method
(LCM) pada bidang ilmu komputer saja, tetapi
juga dapat dikembangkan dan diterapkan pada
ilmu lainnya
3. Aplikasi ini memang masih jauh dari sempurna.
Apanila terdapat kesalahan baik dalam
penyampaian, penyajian maupun penulisan,
maka penulis berharap agar setiap pembaca
berkenan untuk memperbaiki agar menjadi
lebih baik lagi dan lebih sempurna.
DAFTAR PUSTAKA
1. Djoko Santoso, Buku Panduan Peserta
SNMPTN 2009, Jakarta, 2008.
2. Krisna D. Octovhiana, Visual Basic 6.0.
3. Soepono Soeparlin, Pengantar Simulasi,
Universitas Gunadarma.
4. Stendy B. Sakar, PHP 5 PBO konsep dan
Implementasi, Penerbit Andy, 2010.
5. Tanti Kristanti, Pembuatan Aplikasi Tryout
Simulasi SNMPTN, Yogyakarta, 2012.
6. Wahana Komputer, Tip dan Trik Pemrograman
Visual Basic 6.0, Semarang, 2006.
7. (http://digilib.ittelkom.ac.id/index.php?option=co
m_content&view=article&id=109.linearcongruentmethod&catid=20:informatika&ltemid=14/04/07
/
2013).

Anda mungkin juga menyukai