Synthesizing a Progression of Subtasks for Block-Based Visual Programming Tasks

05/27/2023
by   Alperen Tercan, et al.
0

Block-based visual programming environments play an increasingly important role in introducing computing concepts to K-12 students. In recent years, they have also gained popularity in neuro-symbolic AI, serving as a benchmark to evaluate general problem-solving and logical reasoning skills. The open-ended and conceptual nature of these visual programming tasks make them challenging, both for state-of-the-art AI agents as well as for novice programmers. A natural approach to providing assistance for problem-solving is breaking down a complex task into a progression of simpler subtasks; however, this is not trivial given that the solution codes are typically nested and have non-linear execution behavior. In this paper, we formalize the problem of synthesizing such a progression for a given reference block-based visual programming task. We propose a novel synthesis algorithm that generates a progression of subtasks that are high-quality, well-spaced in terms of their complexity, and solving this progression leads to solving the reference task. We show the utility of our synthesis algorithm in improving the efficacy of AI agents (in this case, neural program synthesizers) for solving tasks in the Karel programming environment. Then, we conduct a user study to demonstrate that our synthesized progression of subtasks can assist a novice programmer in solving tasks in the Hour of Code: Maze Challenge by Code-dot-org.

READ FULL TEXT

page 14

page 15

research
06/17/2020

Synthesizing Tasks for Block-based Programming

Block-based visual programming environments play a critical role in intr...
research
03/28/2023

Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzes

Block-based programming environments are increasingly used to introduce ...
research
05/26/2023

Neural Task Synthesis for Visual Programming

Generative neural models hold great promise in enhancing programming edu...
research
05/03/2022

From Solution Synthesis to Student Attempt Synthesis for Block-Based Visual Programming Tasks

Block-based visual programming environments are increasingly used to int...
research
06/02/2019

Comparison of block-based and hybrid-based programming environments in transferring programming skills to text-based environment

Teachers face several challenges when presenting the fundamental concept...
research
09/19/2023

How Do Analysts Understand and Verify AI-Assisted Data Analyses?

Data analysis is challenging as it requires synthesizing domain knowledg...
research
08/26/2023

ORES: Open-vocabulary Responsible Visual Synthesis

Avoiding synthesizing specific visual concepts is an essential challenge...

Please sign up or login with your details

Forgot password? Click here to reset