A Plagiarism Detection Method for Online Judge Systems Based on Student Behavior

Abstract


Plagiarism is a serious and growing problem in the academic environment, which interferes directly in the quality of teaching. This research is contextualized in the problem the detection of plagiarism in CS1 courses. In these courses, the codes developed by students tend to be simple and small, making it difficult for traditional methods based on code similarity to detect plagiarism. To overcome this difficulty, this work proposes a plagiarism detection method that uses evidences extracted from the logs of online judge systems and which are based on the student's behavior during their attempts to solve the programming exercises. As far as researched, this is the first method in the scientific literature that is based on student behavior, having reached 0.83 in the F-measure during the plagiarism detection process.

Keywords: Plagiarism Detection, Online Judge, Student Behavior

References

Araujo, A., Zordan Filho, D. L., Oliveira, E. H. T., Carvalho, L. S. G., Pereira, F. D., and Oliveira, D. B. F. (2021). Mapeamento e análise empı́rica de misconceptions comuns em avaliações de introdução à programação. In Anais do Simpósio Brasileiro de Educação em Computação, pages 123–131. SBC.

Charikar, M. S. (2002). Similarity estimation techniques from rounding algorithms. In Proceedings of the Thiry-Fourth Annual ACM Symposium on Theory of Computing, STOC ’02, page 380–388, New York, NY, USA. Association for Computing Machi- nery.

Chawla, N. V., Bowyer, K. W., Hall, L. O., and Kegelmeyer, W. P. (2002). Synthetic minority over-sampling technique. Journal of Artificial Intelligence Research, 16:321– 357.

Costa, T. L., de Oliveira, E. H. T., Passito, A., de Souza Pinto, M. A., de Carvalho, L. S. G., de Oliveira, D. B. F., and Pereira, F. D. (2021). Material didático interativo para a disciplina de introdução à programação de computadores. In Anais Estendidos do Simpósio Brasileiro de Educação em Computação, pages 41–42. SBC.

de Oliveira, J., Salem, F., de Oliveira, E. H. T., Oliveira, D. B. F., de Carvalho, L. S. G., and Pereira, F. D. (2020). Os estudantes leem as mensagens de feedback estendido exibidas em juı́zes online? In Anais do XXXI Simpósio Brasileiro de Informática na Educação, pages 1723–1732. SBC.

Dwan, F., Oliveira, E., and Fernandes, D. (2017). Predição de zona de aprendizagem de alunos de introdução à programação em ambientes de correção automática de código. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE), volume 28, page 1507.

Fonseca, S., Oliveira, E., Pereira, F., Fernandes, D., and Carvalho, L. S. G. (2019). Adaptação de um método preditivo para inferir o desempenho de alunos de programação. In Brazilian Symposium on Computers in Education (Simpósio Bra- sileiro de Informática na Educação-SBIE), volume 30, page 1651.

Freitas Júnior, H. B., Pereira, F. D., Oliveira, E. H. T., Oliveira, D. B. F., and Carvalho, L. S. G. (2020). Recomendação automática de problemas em juı́zes online usando processamento de linguagem natural e análise dirigida aos dados. In Anais do XXXI Simpósio Brasileiro de Informática na Educação, pages 1152–1161. SBC.

Galvão, L., Fernandes, D., and Gadelha, B. (2016). Juiz online como ferramenta de apoio a uma metodologia de ensino hı́brido em programação. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE), volume 27, page 140.

Gomes, K. and Matos, S. (2020). Detection of programming plagiarism in computing education: A systematic mapping study. In Anais do XXXI Simpósio Brasileiro de Informática na Educação, pages 1633–1642, Porto Alegre, RS, Brasil. SBC.

Lima, M., Carvalho, L. S. G., de Oliveira, E. H. T., Oliveira, D. B. F., and Pereira, F. D. (2020). Classificação de dificuldade de questões de programação com base em métricas de código. In Anais do XXXI Simpósio Brasileiro de Informática na Educação, pages 1323–1332. SBC.

Lima, M. A. P., Carvalho, L. S. G., de Oliveira, E. H. T., Oliveira, D. B. F., and Pereira, F. D. (2021). Uso de atributos de código para classificação da facilidade de questões de codificação. In Anais do Simpósio Brasileiro de Educação em Computação, pages 113–122. SBC.

Novak, M., Joy, M., and Kermek, D. (2019). Source-code similarity detection and detec- tion tools used in academia: A systematic review. ACM Trans. Comput. Educ., 19(3).

Oliveira, A. M. d. et al. (2016). Um método de detecção de plágio em códigos-fonte para disciplinas iniciais de programação.

Pereira, F. D., Fonseca, S. C., Oliveira, E. H., Cristea, A. I., Bellhäuser, H., Rodrigues, L., Oliveira, D. B., Isotani, S., and Carvalho, L. S. (2021a). Explaining individual and collective programming students’ behaviour by interpreting a black-box predictive model. IEEE Access.

Pereira, F. D., Fonseca, S. C., Oliveira, E. H., Oliveira, D. B., Cristea, A. I., and Carvalho, L. S. (2020a). Deep learning for early performance prediction of introductory program- ming students: a comparative and explanatory study. Brazilian journal of computers in education., 28:723–749.

Pereira, F. D., Oliveira, E., Cristea, A., Fernandes, D., Silva, L., Aguiar, G., Alamri, A., and Alshehri, M. (2019a). Early dropout prediction for programming courses suppor- ted by online judges. In International Conference on Artificial Intelligence in Educa- tion, pages 67–72. Springer.

Pereira, F. D., Oliveira, E. H., Oliveira, D. B., Cristea, A. I., Carvalho, L. S., Fonseca, S. C., Toda, A., and Isotani, S. (2020b). Using learning analytics in the amazonas: understanding students’ behaviour in introductory programming. British Journal of Educational Technology.

Pereira, F. D., Oliveira, E. H. T., Fernandes, D., and Cristea, A. (2019b). Early perfor- mance prediction for cs1 course students using a combination of machine learning and an evolutionary algorithm. In 2019 IEEE 19th International Conference on Advanced Learning Technologies (ICALT), volume 2161-377X, pages 183–184.

Pereira, F. D., Pires, F., Fonseca, S. C., Oliveira, E. H., Carvalho, L. S., Oliveira, D. B., and Cristea, A. I. (2021b). Towards a human-ai hybrid system for categorising program- ming problems. In Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, pages 94–100.

Pereira, F. D., Souza, L. M., Oliveira, E. H. T., Oliveira, D. B. F., and Carvalho, L. S. G. (2020c). Predição de desempenho em ambientes computacionais para turmas de programação: um mapeamento sistemático da literatura. In Anais do XXXI Simpósio Brasileiro de Informática na Educação, pages 1673–1682. SBC.

Ril Gil, Y., Toll Palma, Y. d. C., and Lahens, E. F. (2014). Determination of writing styles to detect similarities in digital documents. RUSC: Revista de Universidad y Sociedad del Conocimiento, 11(1).

Rossi, R. G. (2016). Classificaçao automática de textos por meio de aprendizado de máquina baseado em redes. PhD thesis, Universidade de São Paulo.

Santos, I. L., Oliveira, D. B. F., Carvalho, L. S. G., Pereira, F. D., and Oliveira, E. H. T. (2020). Tempos de transição em estados de corretude e erro como indicadores de desempenho em juı́zes online. In Anais do XXXI Simpósio Brasileiro de Informática na Educação, pages 1283–1292. SBC.

Schleimer, S., Wilkerson, D. S., and Aiken, A. (2003). Winnowing: Local algorithms for document fingerprinting. In Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, SIGMOD ’03, page 76–85, New York, NY, USA. Association for Computing Machinery.

Su, Z., Ahn, B.-R., Eom, K.-Y., Kang, M.-K., Kim, J.-P., and Kim, M.-K. (2008). Plagia- rism detection using the levenshtein distance and smith-waterman algorithm. In 2008 3rd International Conference on Innovative Computing Information and Control, pa- ges 569–569.

Tao, G., Guowei, D., Hu, Q., and Baojiang, C. (2013). Improved plagiarism detection algorithm based on abstract syntax tree. In Emerging Intelligent Data and Web Tech- nologies (EIDWT), 2013 Fourth International Conference on, pages 714–719.

Tian, Z., Zheng, Q., Liu, T., Fan, M., Zhuang, E., and Yang, Z. (2015). Software plagi- arism detection with birthmarks based on dynamic key instruction sequences. IEEE Transactions on Software Engineering, 41:1–1.

Wan, H., Liu, K., and Gao, X. (2018). Token-based approach for real-time plagiarism detection in digital designs. In 2018 IEEE Frontiers in Education Conference (FIE), pages 1–5.

Wasik, S., Antczak, M., Badura, J., Laskowski, A., and Sternal, T. (2018). A survey on online judge systems and their applications. ACM Comput. Surv., 51(1).

Watanobe, Y., Chowdhury, I., Cortez, R., and Vazhenin, A. (2020). Next-generation pro- gramming learning platform: Architecture and challenges. SHS Web of Conferences, 77:01004.

Yuan, B., Wang, J., Fang, Z., and Qi, L. (2018). A new software birthmark based on weight sequences of dynamic control flow graph for plagiarism detection. The Com- puter Journal, 61(8):1202–1215.

Yuan, Y. and Guo, Y. (2012). Boreas: An accurate and scalable token-based approach to code clone detection. In Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering, ASE 2012, pages 286–289, New York, NY, USA. ACM.
Published
2021-11-22
OLIVEIRA, David B. F. de; LAVAREDA FILHO, Ronem M.; OLIVEIRA, Elaine H. T.; CARVALHO, Leandro S. G.; PEREIRA, Filipe Dwan; COLONNA, Juan G.; MENEZES, Adria. A Plagiarism Detection Method for Online Judge Systems Based on Student Behavior. In: BRAZILIAN SYMPOSIUM ON COMPUTERS IN EDUCATION (SBIE), 32. , 2021, Online. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2021 . p. 836-848. DOI: https://doi.org/10.5753/sbie.2021.21839.