A comparison of Human, GPT-3.5, and GPT-4 Performance in a University-Level Coding Course

Will Yeadon, Alex Peach, Craig P. Testrow
3/25/2024
cs.CL

No official code found. Best implementation: WillYeadon/AI-Exam-Completion (3 stars, last commit 2024-09-28).

Abstract

This study evaluates the performance of ChatGPT variants, GPT-3.5 and GPT-4, both with and without prompt engineering, against solely student work and a mixed category containing both student and GPT-4 contributions in university-level physics coding assignments using the Python language. Comparing 50 student submissions to 50 AI-generated submissions across different categories, and marked blindly by three independent markers, we amassed $n = 300$ data points. Students averaged 91.9% (SE:0.4), surpassing the highest performing AI submission category, GPT-4 with prompt engineering, which scored 81.1% (SE:0.8) - a statistically significant difference (p = $2.482 \times 10^{-10}$). Prompt engineering significantly improved scores for both GPT-4 (p = $1.661 \times 10^{-4}$) and GPT-3.5 (p = $4.967 \times 10^{-9}$). Additionally, the blinded markers were tasked with guessing the authorship of the submissions on a four-point Likert scale from `Definitely AI' to `Definitely Human'. They accurately identified the authorship, with 92.1% of the work categorized as 'Definitely Human' being human-authored. Simplifying this to a binary `AI' or `Human' categorization resulted in an average accuracy rate of 85.3%. These findings suggest that while AI-generated work closely approaches the quality of university students' work, it often remains detectable by human evaluators.

View on arXivView PDF

Code Implementations(1)

Code used to automate exam completion with OpenAI's API

32TeX, PythonJun 17, 20232 years ago

Cite this paper

@article{yeadon2024comparison,
  title  = {A comparison of Human, GPT-3.5, and GPT-4 Performance in a University-Level Coding Course},
  author = {Will Yeadon and Alex Peach and Craig P. Testrow},
  year   = {2024},
  eprint = {2403.16977},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2403.16977v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2403.16977.svg)](https://codeofpaper.com/paper/2403.16977)

Discussion