From Keyboard to Chatbot: An AI-powered Integration Platform with Large-Language Models for Teaching Computational Thinking for Young Children

Changjae Lee,Jinjun Xiong
2024-05-01
Abstract:Teaching programming in early childhood (4-9) to enhance computational thinking has gained popularity in the recent movement of computer science for all. However, current practices ignore some fundamental issues resulting from young children's developmental readiness, such as the sustained capability to keyboarding, the decomposition of complex tasks to small tasks, the need for intuitive mapping from abstract programming to tangible outcomes, and the limited amount of screen time exposure. To address these issues in this paper, we present a novel methodology with an AI-powered integration platform to effectively teach computational thinking for young children. The system features a hybrid pedagogy that supports both the top-down and bottom-up approach for teaching computational thinking. Young children can describe their desired task in natural language, while the system can respond with an easy-to-understand program consisting of the right level of decomposed sub-tasks. A tangible robot can immediately execute the decomposed program and demonstrate the program's outcomes to young children. The system is equipped with an intelligent chatbot that can interact with young children through natural languages, and children can speak to the chatbot to complete all the needed programming tasks, while the chatbot orchestrates the execution of the program onto the robot. This would completely eliminates the need of keyboards for young children to program. By developing such a system, we aim to make the concept of computational thinking more accessible to young children, fostering a natural understanding of programming concepts without the need of explicit programming skills. Through the interactive experience provided by the robotic agent, our system seeks to engage children in an effective manner, contributing to the field of educational technology for early childhood computer science education.
Human-Computer Interaction,Artificial Intelligence,Computers and Society
What problem does this paper attempt to address?
This paper presents a solution to some challenges in early childhood programming education. The current practices ignore some fundamental issues related to children's developmental readiness, such as sustained typing ability, complex task decomposition, mapping abstract programming to intuitive outcomes, and limited screen time. To address these problems, the paper introduces a new approach using an integrated artificial intelligence platform to effectively teach computational thinking to young children. The system adopts a blended teaching method, supporting both top-down and bottom-up approaches, allowing children to describe tasks in natural language while the system responds with easily understandable programs that include appropriately decomposed subtasks. A physical robot can immediately execute the decomposed programs and demonstrate the results to the children. The system is equipped with an intelligent chatbot that interacts with the children in natural language, enabling them to complete programming tasks through speaking, eliminating the need for keyboard-based programming. The core of the system is a domain-specific Spark programming language that provides appropriate abstractions for underlying hardware (such as the robot), acting as a bridge between the children's natural language interface and the programming constructs required for executing programs. In this way, children will learn programming concepts and computational thinking by reading or listening to programs expressed in the Spark programming language. Modern large language models (LLMs) are essential for decomposing high-level programming tasks expressed in children's natural language into a set of low-level tasks represented in the Spark programming language. By developing such a system, the paper aims to make the concept of computational thinking more accessible to young children, promoting a natural understanding of programming concepts without the need for explicit programming skills.