Using Large Language Models to Generate Worked Examples of CS2-Level Programming Questions
2024 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE credits
Student thesisAlternative title
Användning av stora språkmodeller för att generera lösta exempel av CS2-nivå programmeringsfrågor (Swedish)
Abstract [en]
Worked examples (WEs) are step-by-step solutions that guide learners through a solution process. They have been proven effective at teaching problem-solving and are widely used in education. However, the production of WEs is time-consuming. Hence, instructors typically create few WEs for students to learn from. To address this production problem, Large Language Models (LLMs) have been proposed as a solution. A study from early 2024 claims to be the first to investigate the application of LLMs in generating WEs in computer science education. They found that the LLM they used could generate overall high-quality WEs of CS1 programming questions. Our study used a similar method to generate and evaluate WEs of CS2 programming questions. An LLM was used with three selected CS2-level questions and a designed prompt to generate fifteen WEs. A subjective evaluation by the authors revealed that most WEs were of high quality, often only needing minor modifications. Importantly, all generated WEs had code that compiled without compile-time errors and most solutions gave the correct output. All WEs also contained a step-by-step solution with code and written explanations that displayed high coherence and readability. Common weaknesses were a lack of commented code and that some steps were considered meaningless as separate steps. The LLM also had difficulties in including sufficient explanations related to time complexity. In conclusion, although conducted with limited scope, our results show the value of using LLMs to generate WEs. Proposed future work includes investigating how the results could be improved with iterative feedback to the LLM.
Abstract [sv]
Lösta exempel (eng. “worked examples”) är steg-för-steg-lösningar som vägleder läsaren genom en lösningsprocess. De har visat sig vara effektiva för att lära ut problemlösning och används ofta inom utbildning. Dock är produktionen av lösta exempel tidskrävande. Därför skapar lärare vanligtvis få lösta exempel som studenter kan lära sig från. För att hantera detta produktionsproblem har stora språkmodeller (“LLM:er” från eng. “large language models”) föreslagits som en lösning. En studie från början av 2024 påstår sig vara den första att undersöka tillämpningen av LLM:er för att generera lösta exempel för programmeringsfrågor inom datavetenskapsutbildning. De fann att LLM:er kunde generera övergripande högkvalitativa lösta exempel av programmeringsfrågor av CS1-nivå (CS1 motsvarar typiskt sett första programmeringskursen på en datavetenskapsutbildning). Denna studie använde en liknande metod för att generera och bedömma lösta exempel av CS2-nivå programmeringsfrågor (CS2 är typiskt sett efterföljande kurs till CS1). En LLM användes tillsammans med tre utvalda CS2-programmeringsfrågor och en designad “prompt” (instruktion till LLM för vad den ska generera) för att generera femton lösta exempel. En subjektiv bedömning av författarna visade att de flesta lösta exemplen var av hög kvalitet och behövde oftast endast mindre modifieringar. Noterbart var att alla lösta exempel hade kod som kompilerades utan fel och de flesta lösningar gav rätt utdata. Alla lösta exempel innehöll också en steg-för-steg-lösning med till stor del sammanhängande och läsbar kod och skriftliga förklaringar. Vanliga svagheter var brist på kommenterad kod och att vissa steg ansågs meningslösa som separata steg. LLM:en hade också svårigheter att inkludera tillräckliga förklaringar relaterade till tidskomplexitet. Sammanfattningsvis, vill vi belysa att även om studien genomfördes med begränsad omfattning, visar våra resultat värdet av att använda LLM:er för att generera lösta exempel. Föreslagna framtida studier inkluderar att undersöka hur resultaten kan förbättras genom iterativ feedback till LLM:en.
Place, publisher, year, edition, pages
2024. , p. 38
Series
TRITA-EECS-EX ; 2024:383
Keywords [en]
LLM, large language models, GPT-4, computing education, worked examples, CS2
Keywords [sv]
LLM, stora språkmodeller, GPT-4, datavetenskapsutbildning, lösta exempel, CS2
National Category
Computer and Information Sciences
Identifiers
URN: urn:nbn:se:kth:diva-351178OAI: oai:DiVA.org:kth-351178DiVA, id: diva2:1886538
Supervisors
Examiners
2024-08-302024-08-022024-08-30Bibliographically approved