Logic Based Learning in a Mobile Classroom:
The goal is to create an online classroom environment for learning logic through logic-grid puzzles. Usually solved by using a grid, these puzzles provide clues that are then used to draw certain conclusions. There will be separate interfaces for the students and the instructors. The instructors will be able to create and assign puzzles to their students. Students will then be able to view and solve the puzzles that have been assigned. The program will keep track of how many mistakes are made by the students in order to calculate a grade.
The algorithmic challenge will be creating the custom puzzles. The algorithm will have to take input from the instructor (example: the solved grid) and generate clues based on the level of difficulty. Part of the challenge is designing it so that the algorithm only generates clues such that the puzzle has exactly one solution. The algorithm will also have to determine, based on the level of difficulty, how many clues to generate. It will also determine how many of them are direct clues (such as “Bob owns the horse”) and how many are indirect clues (such as “the person that owns the dog lives next to the person that drinks milk”). Another challenge is to create English sentences from the input given by the instructor.
This project will take the form of a website. The website will have different views for instructors and students. The instructors will be able to assign puzzles to the students and view their performance.
Bio: I am a senior at George Washington University majoring in Computer Science. As a tutor for the Computer Science Department, I help students in the department with many of the intro-level and some upper-level courses. My technical interests include Theoretical Computer Science and Mathematics. I am working on an individually-designed Technical Track, which is made up the courses: Principles of Programming Languages, Software Foundations, and Open Source Software Development. In the fall, I will begin the MS/PhD program at UMass Amherst with a focus in Programming Languages.
Project Video:
Documentation: