Skip to main content
QUICK REVIEW

[论文解读] ChatGPT, Can You Generate Solutions for my Coding Exercises? An Evaluation on its Effectiveness in an undergraduate Java Programming Course

Eng Lieh Ouh, Benjamin Kok Siew Gan|arXiv (Cornell University)|May 23, 2023
Artificial Intelligence in Healthcare and Education被引用 10
一句话总结

本论文评估 ChatGPT(3.5 和 4)在为 80 道本科生练习题生成 Java 编程解答方面的表现,考察各类别的准确性、可读性及局限性。

ABSTRACT

In this study, we assess the efficacy of employing the ChatGPT language model to generate solutions for coding exercises within an undergraduate Java programming course. ChatGPT, a large-scale, deep learning-driven natural language processing model, is capable of producing programming code based on textual input. Our evaluation involves analyzing ChatGPT-generated solutions for 80 diverse programming exercises and comparing them to the correct solutions. Our findings indicate that ChatGPT accurately generates Java programming solutions, which are characterized by high readability and well-structured organization. Additionally, the model can produce alternative, memory-efficient solutions. However, as a natural language processing model, ChatGPT struggles with coding exercises containing non-textual descriptions or class files, leading to invalid solutions. In conclusion, ChatGPT holds potential as a valuable tool for students seeking to overcome programming challenges and explore alternative approaches to solving coding problems. By understanding its limitations, educators can design coding exercises that minimize the potential for misuse as a cheating aid while maintaining their validity as assessment tools.

研究动机与目标

  • 评估 ChatGPT 在本科课程中为 Java 编程练习生成解答的有效程度。
  • 比较 ChatGPT 生成的解答在多个练习类别中的表现与预期结果。
  • 识别优点、局限性及教育意义,以在确保学习的前提下降低误用。

提出的方法

  • 将每周的 Java 编程练习指令输入给 ChatGPT(版本 3.5 与 4),并明确指示输出 Java 代码。
  • 在本地执行生成的 Java 代码,并将结果与预期输出进行比较。
  • 分析在以下练习类别中的表现:Java 基础、面向对象概念、Java 类与方法、Java 包装/打包、Java 异常与 I/O。
  • 记录文本输入与非文本输入(如 API 文档和 UML 图)之间的差异。
  • 讨论对教学、评估设计和异步学习支持的影响。

实验结果

研究问题

  • RQ1ChatGPT 在为 Java 编程练习生成编码解答方面的有效性如何?
  • RQ2ChatGPT 在不同 Java 编程主题上的优点与局限性有哪些?
  • RQ3在保持评估完整性的前提下,ChatGPT 是否能提供替代的、节省内存的解题方案和调试支持?

主要发现

  • ChatGPT 能在许多 Java 基础任务中生成符合练习要求的解答。
  • 在更复杂或基于图示的指令上,ChatGPT-4 的表现优于 ChatGPT-3.5。
  • 当练习依赖非文本输入(如 API 文档或 UML 图)时,表现下降。
  • ChatGPT 可以提供内存高效的替代方案(如使用 StringBuilder),但可能需要后续提示来进行优化比较。
  • ChatGPT 生成的解答可以帮助异步学习和调试,但初始可能存在不准确性,需要学生评估。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。