Example-Based Learning in Computer-Aided STEM Education

Sumit Gulwani

Communications of the ACM | , Vol 57(8): pp. 70-80

View Publication | View Publication

Human learning and communication is often structured around examples, possibly a student trying to understand or master a certain concept through examples or a teacher trying to understand a student’s misconceptions or provide feedback through example behaviors. Example-based reasoning is also used in computer-aided programming to analyze programs, including to find bugs through test-input-generation techniques and prove correctness through inductive reasoning or random examples15 and synthesize programs through input/output examples or demonstrations.

Computer-Aided Education

New forms of education are emerging that offer the potential to amplify the reach of a single educator to embrace thousands of simultaneous learners. Organizations like Khan Academy and Coursera are exploring the opportunities and challenges offered by massively open online courseware. In a classroom of thousands, tasks like assignment grading, problem generation, and student analytics can become intractable. In this session of the 2013 Microsoft Research Faculty Summit, we explore approaches that seek to mitigate these challenges by applying machine learning, cloud computing, and other innovative technologies.