Summer Science Scholars Research Project: Creating an ITS for POGIL activities.

Collaborator information Link

GitHub Link

Goal

To create an Intelligent Tutoring System (ITS) that delivers POGOL (Process-Oriented Guided OnLine Learning) activities through an interactive web platform. The system supports group-based learning, structured activity progression, AI-guided feedback, and data tracking through Google Sheets and a robust backend database.

Key Features

  1. Activity Source:
    • Activities are authored in Google Sheets, with one sheet per activity.
    • Sheets include structured tags for metadata, content, questions, and AI interaction prompts.
  2. Group-Based Interaction:
    • Each activity instance is completed by a group of 3 or 4 students.
    • Students sign up for a course, and in class they are randomly assigned roles and groups at the beginning of class.
    • Students are assigned roles: Facilitator, Spokesperson, Quality Control, and Process Analyst.
    • Responses are submitted as a group and not tied to an individual student.

Team members

NameEmail Primary Role
James Skonskonjp@kenyon.eduProject Director
Noah Aydinaydinn@kenyon.edu Faculty Sponsor
POGIL Activity Supervisor
Godwin Idowuidowu1@kenyon.eduStudent Researcher
Software Developer
Calvin Dekadeka1@kenyon.eduStudent Researcher
Software Developer
Joey Liuliu17@kenyon.eduStudent Researcher
POGIL Creator/AI Adaptations/Tester

Week 1 – Project orientation and kickoff

WeekSkonAydinIdowuDekaLiuAkanwe
May 12-16Some
May 19-23
Some
May 26-30
June 2 – June 6
June 9-139-10
June 16-2019-20
June 23-27
June 30-July 4Some
July 7-11




July 14-18
July 21-25?
July 28-Aug 1
WorkPeopleStatusBranch
Translating select POGILsNoah, Joey
Creating a syntax description for authorsNoah, Joey
Get working VMs for everyoneJim
Create unified NAVBARGodwin
Verify Database OpsJim
Setup Bug trackerJim
Get first version of running POGILs
1. Save answers in database, allow all groups to view answers

We want for create an experience where students can collaborate on POGIL activities in groups of 2-4. parseSheet.jsx currently parses google document text to display a sample of the activity for the instruction using ActivityPreview.jsx.  This seems to work ok.  RunActivityPage.jsx is supposed to display the sheet a bit at a time, building it one questiongroup at a time.  The students are already put into groups of 1-4, and each group shares an activityinstance. When the activity starts one student is randomly selected as the active person, and then others are observers. The instructor may also observe.  The sheet starts by displaying all content up to and including the first question group with active input fields and a submit button at the bottom for the active student.  The other students in the group and instructor can see the page, just not enter text.  The heartbeat saves the current state of the inputs to the database, and reveals the latest answers for the observers.  When an active user hits the submit button, everything should be saved and that questiongroup considered complete, and it displays (for everyone) all the text up to this point in a finished form, and any content followed by the next question group, which can be interacted with by another randomly selected student from the group.  This continues until the activity is done.  At this point the student and instructor can view the finished POGIL anytime.
We need a way to keep track of whether a questiongroup has been finished. I believe we should add a special entry to the responses table that keeps sense.
Godwin/Calvin
Instructor monitoring running activites
Allow the submission of runnable code.
Login State management
Working on saving edited python code, and allowing code to be saved to database Wisdom
Fix newly added activity not displaying the first time (bug)Calvin
Test multiple students on activity
Use heartbeat to update obververs to what active user has typed
Build a test system to simulate a whole active class working on POGILsGodwin
Questiongroup cannot be submitted until all fields are entered. (Do we want to have fields that are optional to fill in for comments, notes?)
Convert POGILs to new format, test, and make suggestions for new tags and functions.Noah, Joey
RunActivity should save the inputs once a second for the active user, and the obversers should update once a second.
Fix python code blocks in questions. Not working right.
Add a logging function to log all activites for monitoring and error checking.
Autologoff after no heartbeat for a time.

Generate ssh key: ssh-keygen -t rsa -b 4096


Proposed Overall Time Line

  • Week of May 12:
    – Work on reviewing POGOL system code and Structure
    – Develop Compete Systems Specification and Design for POGIL-ITS
    – Develop and review goals for Intro POGILs
  • Week of May 19 (Skon abroad)
    – Work on developing out the POGIL-ITS System
    – Work on Developing several Intro to Python POGILS for testing the POGIL-ITS system
    – Test features as added to POGIL-ITS
    – Work on a regression test platform for POGIL
  • Week of July 2
    – Continue POGIL-ITS System Development and Testing
    – Development of more activities for COMP 118
    – Begin design of integrated programming with POGIL sheets
  • Week of July 9
    – Continue POGIL-ITS development and testing
    – Development of integrated python and C++ programming
    – POGIL activity development and testing
  • Week of July 14 (Skon Abroad)
    – Continuation of previous activities
  • Week of July 21
    – Coninued refinement and testing
    – Begin writing paper on system
  • Week of July 28
    – Complete system, review and considerations of new features
    – Code reviews
  • Week of August 4
    – Mock Classes with volunteer students
    – system refinement
    – development of activities for Data Structures
  • Week of August 11
    – System documentation
    – System hardening
    – load testing
    – development of activities for Data Structures
  • Week of August 18
    – Preparations for use in class
    – development of activities for Data Structures

Project Overview

During the 8-10 week project, the selected student(s) will:

  1. Set Up Local AI Models: Install and configure local large language models (LLMs) and generative AI systems on a GPU-enabled environment.
  2. eGPU
  3. Develop Learning Activities: Create engaging and effective educational activities for AI concepts to be integrated into the new AI course curriculum.
  4. Explore Cloud AI APIs: Design and implement learning activities and applications using general-purpose AI APIs from cloud platforms such as OpenAI, Google Cloud AI, or AWS AI Services.
  5. Build Applications: Use AI tools to prototype small applications, demonstrating real-world uses of generative AI in various domains.

Details

  • Duration: 8-10 weeks (exact dates to be determined with participants).
  • Location: Students will live on campus for the duration of the project.
  • Eligibility: Open to students in Kenyon’s Computing or related programs who have an interest in AI, programming, and educational technology, and a background in COMP courses such at COMP218, COMP318, and COMP348.
  • Skills Needed: Familiarity with Python and an interest in AI are recommended, but not strictly required. Training and support will be provided throughout the project.

Benefits

  • Gain hands-on experience with AI technologies.
  • Collaborate closely with a professor and contribute to a real course development project.
  • Explore practical and theoretical aspects of AI.
  • Build a strong foundation for future academic and career opportunities in AI and computing.

How to Apply

Scroll to Top