Automata Theory Used to Detect Plagiarism

Loading...
Thumbnail Image

Date

Authors

Beňuš, Alexej

Mark

C

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta informačních technologií

ORCID

Abstract

{Bakalářská práce se zabývá hledáním a rozpoznáváním plagiátorství v programovacím jazyce C++. Jaké metody existují, které jsou nejefektivnější a zároveň ukazuje slabiny těchto metod. Samotný program je naprogramován v C++, s využitím nástroje Clang pro generaci abstraktních syntaktických stromů. Vygenerované stromy se nadále porovnávají různými metodami - statistickou, která počítá a porovnává počty programovacích konstrukcí, algoritmy pro řetězcové porovnávání jako Levenshteinova vzdálenost a nejdelší společný podřetězec a konečně porovnávání stromů, která se soustředí na metodu porovnávání pomocí hashování stromů. Hlavní zaměření práce bylo na strukturální porovnávání C++ programů. Je uvedeno a otestováno několik různých porovnávacích metod. Je také uvedeno nastavení dalších parametrů pro zpřesnění detekce. Po dokončení porovnání, je vypsáno skóre, které podle definované funkce rozhodne zda jsou soubory plagiátorství nebo nikoliv. Také jsou shrnuty některé problémy a slepé uličky v rámci implementace a detekce.
The bachelor's thesis addresses the detection and recognition of plagiarism in the C++ programming language. Which algorithms exist, which methods are the most effective and also showing their weaknesses. The program itself is coded in C++, utilizing Clang for the generation of abstract syntax trees. Generated trees are compared different techniques - statistic comparison utilizing counting and comparing number of coding constructs, string difference operations like Levenshtein distance and longest common substring and finally tree comparison operations which goes deep into comparison of trees using hashes. Main focus was on the structural comparison of C++ programs. Multiple comparison techniques are presented with testing and results. Additional parameters like minimum match size are also presented to make the comparison more precise. After comparison is done, score is presented and with defined functions it is shown if files are or are not plagiarism. Some problems with detection and implementation are also summarized in the text.

Description

Citation

BEŇUŠ, A. Automata Theory Used to Detect Plagiarism [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.

Document type

Document version

Date of access to the full text

Language of document

en

Study field

Informační technologie

Comittee

doc. Ing. Radek Burget, Ph.D. (předseda) doc. Ing. Petr Motlíček, Ph.D. (člen) doc. Ing. Petr Matoušek, Ph.D., M.A. (člen) Mgr. Kamil Malinka, Ph.D. (člen) Ing. Bohuslav Křena, Ph.D. (člen)

Date of acceptance

2024-08-21

Defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C.

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO