← Últimos artigos
💬 NLP

Simulating Students' Java Programming Errors with Large Language Models

Este artigo demonstra que grandes modelos de linguagem, particularmente o Claude Sonnet 4, podem simular eficazmente erros de programação Java diversos e realistas de estudantes, oferecendo uma alternativa escalável à coleta de submissões autênticas para pesquisa educacional e sistemas de tutoria inteligente.

Autores originais: Ali Keramati, Jie Cao, Iman Mohammadi, Mark Warschauer, Yang Shi

Publicado 2026-06-15
📖 5 min de leitura🧠 Leitura aprofundada

Autores originais: Ali Keramati, Jie Cao, Iman Mohammadi, Mark Warschauer, Yang Shi

Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

Imagine que você é um professor tentando se preparar para uma grande aula de programação. Você sabe que seus alunos cometerão erros, mas não consegue prever exatamente quais serão esses erros até que você realmente dê a aula e colete os deveres de casa. Este é um processo lento e caro.

Este artigo faz uma pergunta simples: Podemos usar uma IA superinteligente (um Grande Modelo de Linguagem, ou LLM) para fingir ser um aluno confuso e gerar esses erros para nós antecipadamente?

Aqui está o detalhamento do experimento deles, explicado com analogias do cotidiano.

O Objetivo: O Teste do "Aluno Falso"

Os pesquisadores queriam ver se uma IA conseguiria escrever código Java que parecesse ter sido escrito por um aluno iniciante — especificamente, código que contenha erros lógicos.

  • Erros lógicos são como escrever uma receita que diz "adicione sal a gosto", mas esquecer de realmente adicionar o sal. O computador executa o código, mas o resultado está errado porque o raciocínio estava falho.
  • O Desafio: Se você apenas pedir para uma IA "escrever um código", ela geralmente escreve um código perfeito. Se você pedir para ela "quebrar o código", ela frequentemente comete erros aleatórios e bobos (como colocar uma vírgula onde deveria haver um ponto final) que alunos reais não cometem de fato. O objetivo era fazer a IA cometer erros realistas.

O Experimento: O "Teste de Sabor"

Os pesquisadores pegaram 30 problemas de programação diferentes de uma sala de aula real (CodeWorkout). Eles fizeram cinco modelos de IA diferentes tentarem resolver esses problemas, mas utilizaram três "estilos de instrução" (prompts) diferentes para tentar forçar a IA a cometer erros:

  1. Ordem Direta (IO): "Aqui está o problema, dê uma resposta errada."
  2. Pensar em Voz Alta (CoT): "Pense através dos passos, decida onde você pode escorregar e então escreva o código errado."
  3. Ciclo de Autocorreção (Self-Refine): "Escreva uma resposta errada, depois critique-a, depois corrija-a levemente para torná-la um tipo diferente de resposta errada."

Eles então compararam os "erros falsos" da IA contra 74.000 erros reais cometidos por alunos de verdade.

As Duas Regras Principais para um Falso Bom

Para ser útil, os erros falsos da IA tinham que passar por dois testes:

  1. Diversidade (O Teste da Variedade): A IA cometeu muitos tipos diferentes de erros, ou ela apenas repetiu o mesmo erro repetidamente? (Imagine um chef tentando fazer 10 tipos diferentes de biscoitos queimados. Se todos parecerem exatamente iguais, isso não é muito diverso).
  2. Alinhamento (O Teste da "Realidade"): Os erros da IA pareciam algo que um humano realmente faria? (Se a IA escrever um código que está errado de uma forma que um humano nunca pensaria, não é um bom simulador).

O Que Eles Descobriram

1. A IA Pode Cometer Erros, Mas Nem Todas as IAs São Iguais
Todos os modelos de IA conseguiram gerar uma variedade de erros. No entanto, alguns eram melhores que outros.

  • Gemini 2.5 Pro era como um artista caótico: ele gerou uma enorme variedade de erros (alta diversidade), mas muitos deles eram estranhos e não pareciam erros de alunos reais.
  • GPT-4o era como um aluno cauteloso: ele cometeu erros muito semelhantes repetidamente (baixa diversidade).
  • Claude Sonnet 4 foi o "Ponto de Equilíbrio" do grupo. Ele encontrou o melhor equilíbrio. Ele cometeu erros suficientes e diferentes, mas eles também eram muito próximos do que os alunos reais realmente escrevem.

2. O Truque de "Pensar em Voz Alta" Ajudou
Quando os pesquisadores disseram à IA para "pensar passo a passo" antes de escrever o código (Chain-of-Thought), os erros tornaram-se mais realistas. Era como se a IA estivesse simulando o processo de um aluno ficando confuso, em vez de apenas quebrar o código aleatoriamente.

3. O Fator "Dificuldade"
Os pesquisadores observaram o quão "difícil" era um problema (com base em quantas vezes os alunos tentaram resolvê-lo).

  • Problemas Fáceis: A IA fez um ótimo trabalho imitando os alunos.
  • Problemas Difíceis: À medida que os problemas ficavam mais difíceis, os erros da IA tornavam-se mais diversos (ela tentava muitos caminhos errados diferentes), mas tornavam-se menos parecidos com os de alunos reais. É como um ator novato tentando interpretar uma cena complexa; eles podem tentar várias interpretações diferentes, mas nenhuma delas captura totalmente a nuance de uma performance humana real.

4. O "Teste Cego" (Especialistas Humanos)
Os pesquisadores contrataram especialistas humanos para analisar uma mistura de código de alunos reais e código gerado por IA. Eles não sabiam qual era qual.

  • O Resultado: Os especialistas foram enganados 83,7% das vezes. Eles acharam que o código da IA tinha sido escrito por um humano.
  • A Reviravolta: Os especialistas na verdade classificaram os erros da IA como mais plausíveis (mais realistas) do que os erros dos alunos reais. Por quê? Porque a IA cometeu erros "limpos" (como um erro clássico de livro didático), enquanto os alunos reais costumam cometer erros bagunçados e complicados com múltiplos erros ao mesmo tempo. A IA era como um aluno confuso "idealizado", enquanto os alunos reais são mais desorganizados.

A Conclusão Final

Este artigo prova que a IA pode atuar como um "substituto" para alunos para gerar erros de programação realistas.

  • Claude Sonnet 4 é atualmente o melhor "simulador de aluno".
  • Problemas mais difíceis tornam a IA mais criativa, mas menos precisa em relação ao comportamento humano real.
  • O Trade-off: Você pode ter uma IA que comete uma enorme variedade de erros, ou uma que comete erros muito realistas, mas é difícil conseguir ambas as coisas perfeitamente ao mesmo tempo.

Os pesquisadores sugerem que isso é uma ferramenta poderosa para professores e desenvolvedores de softwares educacionais. Em vez de esperar anos para coletar milhares de erros reais de alunos para treinar seus sistemas, eles podem usar esses erros "falsos" para construir melhores ferramentas de tutoria e ajudar professores a antecipar onde os alunos podem travar.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →