* El programa desarrollado por el alumno, en colaboración con la maestra Gabriela Ramírez de la Rosa, está orientado a la detección de plagio en código fuente
*El trabajo del alumno se encuentra en un marco experimental y de análisis y no hay aún una aplicación como tal, “pero el modelo ya funciona” con un grado de confianza de 80 por ciento
![]() |
Con el desarrollo de un programa orientado a la detección de plagio en código fuente, el alumno Aarón Ramírez de la Cruz, obtuvo el primer lugar en el concurso SOCO (Source Code Reuse) en Bangalore, India, que reúne a grupos de todo el mundo interesados en evaluar sus propuestas de sistemas.
El programa desarrollado por el alumno, en colaboración con la maestra Gabriela Ramírez de la Rosa, investigadora del Departamento de Tecnologías de la Información, consistió en analizar diferentes aspectos, como las similitudes estructural, léxica y de estilo, que pudieran dar evidencia de un posible plagio entre un programa o lenguaje de programación y otro.
El doctor Esaú Villatoro Tello señaló en entrevista que una de las líneas de investigación del grupo de investigación Lenguaje y Razonamiento, es la que denominan Análisis de Autoría, para poder responder a preguntas como quién escribe un texto, a partir solamente de lo que se tiene escrito.
Al hacer una similitud de la tarea que desarrollan especialistas para determinar si hay plagio en una famosa novela de determinado escritor, donde se analiza el estilo del autor, por ejemplo, el doctor Villatoro dijo que la pregunta es si una computadora puede realizar dicha función, “y hasta cierto punto la respuesta es sí lo puede hacer”.
Agregó que en un contexto donde se tienen cada vez mayores facilidades para acceder a distintas fuentes de información “es cierto que es una tentación muy grande tomar cosas de la web y hacerlas pasar como propias” y el ambiente académico, por ejemplo, no es la excepción.
Nuestro propósito en ese sentido, sostuvo, es proporcionar herramientas que apoyen la toma de decisiones por parte del usuario; es decir, el programa desarrollado por el alumno “no dice si algo es plagiado o no”; es decir “a partir de una aplicación, yo como usuario decido si algo está plagiado o no; son herramientas que deben apoyar la toma de decisiones”.
En relación con el evento en el que se participó en diciembre pasado, comentó que más que concurso se trató de un marco de referencia con el objetivo de estructurar una evaluación y proporcionar datos para que estos grupos interesados en esta problemática evalúen sus sistemas y los comparen a nivel mundial con otros grupos.
El alumno Aarón de la Cruz, quien cursa el octavo trimestre de la licenciatura en Tecnologías y Sistemas de Información de la Unidad Cuajimalpa, y la maestra Gabriela Ramírez explicaron que el lenguaje de programación que analizaron fue Java y “la idea principal fue ver diferentes aspectos que podrían darnos evidencias de que dos programas fueron o no plagiados”.
Se analizó la estructura, pues los lenguajes de programación tienen propiedades muy particulares, por ejemplo, la sintaxis. Otro aspecto analizado fue el léxico; es decir, qué palabras y qué combinaciones se utilizaron para escribir en este lenguaje, ya que los programadores tienen cierta libertad de elegir nombres de variables, identificadores, funciones, entre otros, para ver similitudes o coincidencias.
Una tercera medida fue la estilística, relevante porque existen en el texto características que permiten identificar si un autor escribió o no ese texto, basado en el estilo de su escritura, por ejemplo, si escribe sentencias largas, la puntuación, letras mayúsculas y minúsculas. En los lenguajes de programación es posible recuperar este tipo de características estilísticas, explicó la investigadora.
Con este análisis “obtuvimos tres diferentes vistas del código fuente y basándonos en ellas tratamos de identificar una similitud que nos dijera en qué medida estos dos códigos se parecen”.
Al final lo que hicimos fue calcular diferentes tipos de similitudes para todos los pares de códigos que teníamos y establecer un modelo automático basado en un algoritmo de aprendizaje, a través del cual la máquina aprende qué características son importantes, cuáles no y cuáles tienen mayor relevancia en un lenguaje u otro para determinar si un documento es plagio o no”.
El doctor Villatoro Tello refirió que se trata “al final de una técnica de inteligencia artificial; es decir, un sistema que aprende o es capaz de aprender y de alguna forma modelar en qué grado un par de documentos pueden o no ser plagiados” y mientras cada vez se le provea de mayor información va a tener un mejor modelo que diga qué es y qué no es plagio.
Finalmente señalaron que el trabajo del alumno se encuentra en un marco experimental y de análisis y no hay aún una aplicación como tal, “pero el modelo ya funciona” con un grado de confianza de 80 por ciento.
Otra contribución de este trabajo, dijo el doctor Villatoro Tello, es que marca “por dónde puede dirigirse la investigación; es decir tomar diferentes vistas que traten de capturar el comportamiento de alguien que está plagiando, podría ser una muy buena línea de investigación”. |