ChattyG toma un examen de programación uni C/C++ de primer año

ChattyG toma un examen de programación uni C/C++ de primer año

ChattyG toma un examen de programación uni C/C++ de primer año PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

ChatGPT fue puesto a prueba a través de una serie de aburridas tareas de programación C/C++ para estudiantes de primer año y pasó, aunque no con honores.

Según un equipo de investigación croata, si bien los estudiantes de primer año pueden tener dificultades con algunas de las tareas, los resultados [PDF] mostró que ChatGPT alcanzó objetivos de competencia que oscilaban entre el promedio y el de programadores experimentados. Y, naturalmente, como ocurre con todos los exámenes universitarios, los resultados pueden determinarse por la forma en que se redactan las preguntas.

El equipo de University North diseñó un conjunto de desafíos de programación para estudiantes universitarios de primer año, primero escritos en inglés y luego, para ver si los matices entre idiomas afectarían los resultados, en croata. Querían ver no sólo cómo codifica ChatGPT, sino también si podía adaptarse a diferentes idiomas.

La primera prueba se centró en una tarea básica de programación: calcular el máximo común divisor (MCD) de dos números. Al principio, el robot mostró algunas limitaciones en la forma en que decidió abordar el problema, y ​​los investigadores dijeron que carecía de la delicadeza que se esperaba de un programador experimentado. Pero como todo alumno, aprende y en intentos posteriores, especialmente en la versión croata, demostró algunas mejoras, mostrando una notable adaptabilidad.

Por ejemplo, en una tarea particular se le retó a programar una función estadística básica en C++. Inicialmente, cometió un descuido, utilizando una función que no producía la desviación estándar “corregida” como se requería. Pero, cuando se presentó la misma tarea en croata, el chatbot no sólo reconoció su error anterior sino que encontró una solución refinada.

Los investigadores señalan que esta adaptabilidad refleja el viaje de un estudiante de primer año: comienza con errores pero muestra capacidad para aprender y mejorar sus habilidades con práctica y retroalimentación repetidas. Awww.

Otra tarea implicó un problema más matizado: identificar números dentro de un rango basado en reglas de divisibilidad específicas. Aquí fue donde el talón de Aquiles de ChatGPT se hizo evidente. Independientemente del idioma (inglés o croata), ChattyG tuvo problemas con números negativos. Cada intento de ChatGPT condujo a resultados similares, lo que apunta a un problema consistente en su lógica de programación para esta tarea.

Una pregunta adicional exigía precisión. Se requirió ChatGPT para crear un filtro de entrada, específicamente para un rango definido de números decimales. La solución inicial de la IA, cuando se presentó en inglés, fue acertada, pero los siguientes intentos, especialmente cuando la tarea se asignó en croata, revelaron algunas inconsistencias y, en algunos casos, ChatGPT utilizó construcciones de programación innecesarias. Si bien esto no obstaculizó la funcionalidad del programa, sí indicó una falta de optimización. Era como si ChatGPT a veces tomara la ruta más larga hacia un destino, incluso cuando había un atajo disponible.

Las cosas se volvieron más complejas con una tarea relacionada con matrices. Aquí, se pidió a ChatGPT que almacenara números y luego calculara ciertas estadísticas como el valor medio, la desviación estándar e identificara los valores mínimos y máximos. El desempeño de ChattyG en este desafío fue particularmente interesante. En diferentes pruebas, mostró diferentes estrategias. A veces, resolvía el problema con elegancia y ofrecía soluciones sencillas. En otros intentos, se inclinó hacia métodos más complicados, incluso agrupando múltiples operaciones en una sola función.

Todo esto plantea una pregunta importante: ¿ChatGPT siempre elige la mejor estrategia o a veces recurre a métodos aprendidos pero ineficientes?

El último obstáculo para ChatGPT involucró el procesamiento de texto básico. Tenía la tarea de eliminar espacios adicionales de la entrada del usuario. En su prueba inicial de inglés, la solución de ChatGPT fue acertada. Sin embargo, la prueba croata fue una bola curva. En lugar de adherirse a su eficaz solución de entrada única, la IA, por alguna razón, optó por un enfoque más complejo, que exige múltiples entradas. Sin embargo, cuando los investigadores revisaron este desafío en inglés, ChatGPT parecía haber aprendido de su paso en falso anterior y volvió al método más simple.

En general, los investigadores encontraron que las respuestas tenían mucho en común con las de los estudiantes humanos de primer año de programación. Sus soluciones a menudo se hacían eco de las estrategias de programadores experimentados pero, como cualquier estudiante, ChatGPT no era infalible. Hubo momentos brillantes, pero también casos en los que pareció fallar por completo.

La verdadera conclusión aquí es su adaptabilidad humana, similar a la de un estudiante de primer año: no se trataba sólo de encontrar la solución adecuada; se trataba de refinar, aprender e iterar.

Entonces, ¿cuál es la nota final de ChattyG?

De los investigadores:

“ChatGPT aprueba el examen con muy buenas calificaciones, superando a la mayoría de nuestros estudiantes en la calidad de las soluciones. Además, resuelve cada tarea en 20 a 30 segundos y muestra la capacidad general de adaptar o cambiar sus soluciones según demandas adicionales. Sin embargo, en algunas tareas, a menudo simples, mostró la incapacidad de comprender la esencia lógica y matemática del problema, incluso después de que se le preguntara varias veces sobre sus errores”. ®

Sello de tiempo:

Mas de El registro