Grouping
2.7. Penelitian Terdahulu
Penelitian mengenai rekomendasi soal-soal kompetisi pemrograman ini telah dilakukan sebelumnya oleh beberapa peneliti, diantaranya:
2.7.1. UVa toolkit
UVa toolkit Greeve, 2005, merupakan situs yang menyediakan rekomendasi soal-soal yang ada di platform UVa online judge. Soal-soal yang direkomendasikan
dikelompokkan berdasarkan teknik yang digunakan untuk menyelesaikan soal dan tingkat kesulitan soal. Rekomendasi soal-soal dilakukan secara manual dengan terlebih
dahulu menyelesaikan soal dan mempelajari satu soal itu termasuk dalam kategori teknik penyelesaian mana dan masuk pada tingkat level mana. Pembobotan terhadap
soal-soal ini masih subjektif terhadap pengembang situs dan opini dari forum.
2.7.2. UHunt - UVa hunting
Felix Halim, 2010 mengembangkan tools yang sangat menarik dan kompleks. Aplikasi ini merupakan complementary tool terbaik saat ini dalam merekomendasikan
soal-soal lomba di arsip UVa OJ. Soal-soal yang direkomendasikan berdasarkan analisis statistik data seluruh pengguna dan interaksi terhadap soal yang diselesaikan
pengguna. Dalam pengembangannya, Felix menyediakan API Application Programming Interface untuk mengakses seluruh data publik di platform UVa online
judge yang digunakan pada modul UHunt. API ini sangat membantu pengembang lain untuk mengembangkan fitur-fitur baru yang berguna untuk memudahkan competitive
programmer dalam berlatih. Dalam penelitian ini, peneliti juga menggunakan API yang dibangun sama persis seperti aplikasi UHunt.
Universitas Sumatera Utara
2.7.3. Bailian – openjudge
Bailian open judge yang berarti “hundreds of practices” yang oleh penelitinya Lin, et
al. 2013 dikembangkan untuk platform latihan untuk persiapan kompetisi pemrograman yang ditujukan untuk pelajar-pelajar di Tiongkok. Tetapi pada
pengembangannya, platform ini dirilis secara publik. Bailian online judge ini memiliki 4000+ arsip soal-soal dari berbagai kompetisi di dunia maupun soal-soal yang mereka
desain khusus. Bailian online judge ini merekomendasikan soal-soalnya kepada pengguna dengan mempelajari preferensi dan perilaku pengguna terhadap sistem
Bailian. Soal-soal yang direkomendasikan dibagi dalam grade 1 sampai 5, dimana grade menyatakan tingkat kesulitan soal-soal. Kemudian soal-soal dikategorikan berdasarkan
kategori topik penyelesaian. Menariknya sistem Bailian ini adalah pengguna diranking tidak hanya berdasarkan banyaknya soal-soal yang dapat diselesaikan, tetapi juga dari
poin yang didapat berdasarkan akumulasi soal-soal saat latihan, poin saat mengikuti satu virtual contest dan poin kontribusi seperti memberikan hint terhadap penyelesaian
soal tertentu, atau sebagai problemsetter yang membuat soal baru untuk virtual contest berikutnya.
2.7.4. uDebug
uDebug uDebug, 2014, merupakan situs yang menyediakan unique test case berupa inputouput soal-soal UVa online judge. Saat ini, platform uDebug sudah menyediakan
sekitar 3880+ test case. Test case ini berguna bagi pengguna untuk membandingkan hasil keluaran program yang dibuat dengan hasil keluaran yang benar menurut
autograding UVa sebelum melakukan submission ke sistem UVa online judge. Pengujian test case ini sangat penting karena hidden test case lomba sering sekali
bersifat tricky dengan banyaknya test case yang harus dilewati program yang dikumpulkan di webscoring sering kali test case berjumlah ratusan hingga ribuan.
Sistem kompetisi pemrograman biasanya bersifat graded by machine yang artinya dinilai oleh mesin yang berarti tidak mentolerir satu kesalahanpun. Sehingga sering kali
pengguna merasa frustasi saat program yang dikumpulkan tidak berhasil mendapatkan accepted verdict.
Universitas Sumatera Utara
BAB 1
PENDAHULUAN
1.1. Latar Belakang