Electrical Engineering
      and Computer Sciences

Electrical Engineering and Computer Sciences

COLLEGE OF ENGINEERING

UC Berkeley

   

Joint Colloquium Distinguished Lecture Series

End-User Programming and Intelligent Tutoring Systems

Sumit Gulwani

Wednesday, October 3, 2012
306 Soda Hall (HP Auditorium)
4:00 - 5:00 pm

Sumit Gulwani
Senior Researcher, RiSE Group, Microsoft Research

Downloadable pdf

Abstract:

Millions of end users today have access to programmable environments such as spreadsheets and smartphones, but lack the programming expertise to write even small scripts. These users can effectively communicate their intent using examples and natural language.  Our methodology involves designing a domain-specific language (DSL), developing a synthesis algorithm for learning programs in the DSL that match the user's (often under-specified) intent, and using machine learning to rank these programs. In this talk, I will demonstrate this methodology for various domains including spreadsheet macros, database queries, smartphone scripts, and even drawing programs.

In the second half of the talk, I will present surprising applications of this synthesis methodology in the area of intelligent tutoring systems including solution generation, problem generation, automated grading, and even structured content entry. I will demonstrate these applications for various domains including geometry, algebra, automata theory, and introductory programming. The underlying synthesizers leverage search techniques from various communities including use of SAT/SMT solvers (formal methods community), version space algebras (machine learning community), and A-style goal-directed heuristics (AI community).

Biography

Sumit Gulwani is a senior researcher at Microsoft Research, Redmond. His research interests are in the cross-disciplinary application areas of automating end-user programming (for a variety of systems such as spreadsheets, smartphones, robots), and in building intelligent tutoring systems (for K-14 math/programming/science/language subjects). He has expertise in automated programming (from examples, natural language and/or logic) and program analysis techniques. Sumit obtained his Phd in Computer Science from UC-Berkeley in 2005, and was awarded the C.V. Ramamoorthy Award (given for "outstanding contributions to a new research area in Computer Science") and the ACM SIGPLAN Outstanding Doctoral Dissertation Award. He obtained his BTech in Computer Science and Engineering from IIT Kanpur in 2000, and was awarded the President's Gold Medal.

  Return to EECS Joint Colloquium