My primary research interest is Digital Education, which is the process of designing a complete electronic textbook (etextbook) or tutorials which comprises a detailed discussion of the course like paper books but augmented with some embedded interactive visualizations and exercises. OpenDSA is an etextbook that is used in several CS courses in Virginia Tech. It contains tutorials to help students to gain better understanding to some hard topics like recursion and algorithm analysis. OpenDSA stores records that contain large amount of useful information about students interactions. To have the best achievement from this data we need to build some Machine learning tools to help analyzing and better understanding to the students and their studying behaviors. Also, we can predict their final results and create a checkerboard that alerts the professor about students that may fail in the exam to enable the professor to make any step that may help these students.
My main goal is to enhance the learning of pointers by producing a pointer tutorial and integrate it inside OpenDSA to help students understand and practice pointers. On one side, the pointer tutorial aims to enhance student learning of this topic through addressing the main misconceptions and through allowing student to do enough practice. On the other side, the pointer concept inventory assesses independently student learning of pointers regardless of the instructions used in teaching.
In 2014, I started a research team with Dr. Mahmoud Owais. We were focusing in solving some hard problems in Transportation using machine learning techniques. We were able to produce two papers, one of them was submitted in IEEE Transactions on Intelligent Transportation Systems and the other is submitted to Transportation science and it is now under review.
During my Master degree, I was focusing in developing machine learning tools based on Meta-Heuristics programming. I was able to develop two tools called, Scatter Programming (SP) and Variable Neighborhood Programming (VNP). These tools are considered alternatives to Genetic Programming (GP). VNP and SP have promising performance and results in solving several machine learning problems. VNP and SP performance are tested using four types of benchmark problems and some experiments were conducted to analyze the main components of VNP and SP methods. VNP and SP methods are also applied on Data Classification problems and they were tested on some datasets. For more details you read my thesis