Title: Automatic Generation of Procedural Knowledge using Program Synthesis

Advisors: Zoran Popović (Co-Chair), Emina Torlak (Co-Chair), Andy Ko (GSR, iSchool), and Steve Tanimoto

Abstract: Educational technology that models the problem-solving process of a learning domain powers many promising and proven-effective applications such as generating problems, providing student feedback, or estimating student understanding. The creation of the formal domain models is an integral part of such applications and is a challenging and time-consuming process, requiring expertise in both the learning domain and artificial intelligence. To aid in this process, we can turn to computers to help automatically learn these domains. Unlike typical machine learning tasks, the primary goal of this endeavor is not to solve domain problems per se, but to get an interpretable description of how to solve problems. To support this goal, we turn towards program synthesis, using programs in a domain-specific language (DSL) to model procedural knowledge, and program synthesis to automatically generate these programs.

In this talk, I present the thesis that program synthesis can help automate modeling of procedural knowledge for learning domains. The goals of this work are to (1) understand common elements and approaches for building synthesis-aided systems for modeling various learning domains and (2) create a framework to aid in the implementation of these systems for new learning domains. I will discuss progress on building effective program synthesis systems to learn procedural knowledge in the domains of K12 algebra and logic puzzles. These systems center around 3 main components: automatically extracting specifications for potential rules from a model of the problem domain, using inductive program synthesis to automatically generate potentially useful problem-solving rules, and using optimization to select a subset of these rules as a domain model based on provided objective criteria. To aid in the iterative design of DSLs for these systems, I will propose a framework to provide analytic feedback to a DSL designer.

CSE 503
Thursday, December 8, 2016 - 15:00 to 17:00