Алгоритм распознавания плагиатов кодов программ

Gespeichert in:
Bibliographische Detailangaben
Titel: Алгоритм распознавания плагиатов кодов программ
Verlagsinformationen: БГТУ, 2018.
Publikationsjahr: 2018
Schlagwörter: копирайт, хэш, токенизация, кластеризация, распознавание плагиатов, теория алгоритмов
Beschreibung: В данной статье рассмотрен алгоритм распознавания плагиатов кодов программ. Предлагаемый алгоритм позволяет оценить схожесть программных текстов и построить соответствующие кластеры. Описан подход к разработке программного обеспечения, реализующего данный алгоритм, сформулированы задачи, решаемые таким программным обеспечением. Основой алгоритма распознавания плагиатов является алгоритм жадного строкового замощения, который дает хорошие результаты сравнения текстов. Кластеризация осуществляется над графом, в котором каждой вершине сопоставляется исследуемый код программы, а кластер представляет собой подмножество вершин, соответствующее подмножеству схожих программ. Граф является взвешенным: каждому ребру ставится в соответствие число от 0 до 1, выражающее степень схожести двух программ. Областью применения программного обеспечения, разработанного на основе подходов, описанных в статье, являются системы автоматизированного тестирования, применяемые при проведении соревнований по спортивному программированию.
Publikationsart: Article
Dateibeschreibung: application/pdf
Zugangs-URL: https://openrepository.ru/article?id=43825
Dokumentencode: edsair.httpsopenrep..c3c55113d61e0af3b44e7d5243d26a8d
Datenbank: OpenAIRE
Beschreibung
Abstract:В данной статье рассмотрен алгоритм распознавания плагиатов кодов программ. Предлагаемый алгоритм позволяет оценить схожесть программных текстов и построить соответствующие кластеры. Описан подход к разработке программного обеспечения, реализующего данный алгоритм, сформулированы задачи, решаемые таким программным обеспечением. Основой алгоритма распознавания плагиатов является алгоритм жадного строкового замощения, который дает хорошие результаты сравнения текстов. Кластеризация осуществляется над графом, в котором каждой вершине сопоставляется исследуемый код программы, а кластер представляет собой подмножество вершин, соответствующее подмножеству схожих программ. Граф является взвешенным: каждому ребру ставится в соответствие число от 0 до 1, выражающее степень схожести двух программ. Областью применения программного обеспечения, разработанного на основе подходов, описанных в статье, являются системы автоматизированного тестирования, применяемые при проведении соревнований по спортивному программированию.