Combining Functional and Automata Synthesis to Learn Causal Reactive Programs
Author(s)
Das, Ria A.
DownloadThesis PDF (6.202Mb)
Advisor
Solar-Lezama, Armando
Tenenbaum, Joshua B.
Tavares, Zenna
Terms of use
Metadata
Show full item recordAbstract
Despite impressive advances that have made it the mainstream route towards building human-like AI, deep learning suffers from key limitations that make it unlikely to replicate human intelligence on its own. Specifically, it is very data-hungry, often generalizes poorly to new scenarios, and is not very interpretable, lacking features like compositionality that characterize human knowledge. Given these shortcomings, we explore a different approach to engineering human-like AI called program synthesis, in which learned knowledge is represented in the form of a symbolic program. Programs can be learned from limited data and can interpretably capture a wide variety of structured knowledge. However, existing synthesis methods do not scale to long programs that model very complex datasets. In this thesis, we expand the horizon of programs that can be realistically synthesized by bridging methods from two orthogonal communities within programming languages: the functional synthesis and automata synthesis communities. We focus on the particular domain of causal mechanism discovery in Atari-style grid worlds, and develop a synthesis algorithm that infers a program describing the causal rules of the world from a sequence of observations. We evaluate our algorithm on two benchmark datasets, including one that we constructed using a new programming language called Autumn. Our ongoing results signal the promise of our method, both for modeling efficient, human-like causal discovery and in synthesis and learning contexts more broadly.
Date issued
2022-05Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology