SmartUni - AI Support for Remote Learning Scenarios in Higher Education
SmartUni was a project to develop an AI tool or tools to assist students in remote learning scenarios like those that were prevalent during the Coronavirus pandemic.
|Supervisor||Dr Tobias Thelen|
|Participants||Raia Abu Ahmad, Hanna Algedri, Yesid Cano Castro, Nele Daske, Charlotte Demandt, Niklas Dettmer, Anna Jansen, Tallulah Jansen, Fabienne Kock, Carina König, Johanna Linkemeyer, Erik Nickel, Piper Powell, Lukas Schießer, Jan-Luca Schröder, Hind Shalfeh, Hermann Singer, Anita Wagner, Viktoria Wiebe, Liling Wu, Eunhye Yun, Qirui Zhu|
|Group size per semester||29-31 students|
|Timeframe||October 2021 - September 2022|
|Research areas||Remote Learning, Artificial Intelligence, Web and Mobile Application Development|
Aim and output of this study project:
SmartUni sought to identify key needs of remote students and provide a virtual, AI-backed tool to assist them. This ultimately took the form of a web and mobile platform offering two principle services – an AI-assisted study buddy matching service to pair up students who might study well together, and an AI-assisted calendar which helps students schedule all of their assignments, meetings, etc. in a way that best supports them meeting their goals.
Steps that brought us to our goal:
The first step of the project was to brainstorm what needs existed for remote students. Then we brainstormed how AI could be used to fill them. After identifying two areas out of this general list that we wanted to tackle (connecting with other students and time management), we split into teams to accomplish the work, with the Core team developing the basic web and mobile applications, the SmartPlanner team developing the calendar service, and the StudyBuddyMatch team developing the peer connection service. Regular meetings within the subteams and with the entire group assured milestones were being met and any challenges addressed. Two usability tests in the middle and at the end of the project work helped guide development to ensure the best user experience. At the end, all students helped contribute to the documentation of the site.
Skills that we acquired:
Students acquired a wide range of skills during this project, including but not limited to the following:
- project management
- scrum/agile workflows
- the use of git
- CSS coding
- HTML coding
- deployment with Django
- database management and design
- web and mobile design
Prerequisites and student backgrounds:
There were no formal background requirements for participating in the SmartUni project, though prior work with HTML, CSS, web development, and AI programming were all extremely valuable. Many students on the project already had at least a partial background in these areas, and many gained either additional or initial skills in these areas over the course of the project.
The larger SmartUni team was divided into 3 subteams – the Core team, the SmartPlanner team, and the StuddyBuddyMatch team. The project was lead by two project managers and each subteam additionally had a team manager. The subteams each developed a workflow that worked best for their members. As an example, the SmartPlanner team adapted a more formal scrum approach and the Core team remained in a more informal divide, conquer, and communicate format. The entire group met each Friday in a full group meeting directed in alternation by the two project managers. Additionally, each subteam had a team meeting at least once during the week. Within teams, individual tasks were often split up among the members or smaller groups thereof, and then progress was reported in the weekly meetings and generally overseen by the team leaders. Any issues that arose were brought to the attention of the project managers, who addressed those concerns and were also responsible for ensuring the project remained on-track and on-time on the global level. Dr. Thelen was present in the Friday meetings but remained largely in a background advisory versus hands-on role. Workload remained stable across the duration of the project, although peaks did occur ahead of the usability tests and at the end of the project, when all members put in extra hours to get the application to a checkpoint state. During each semester, the seminar and full project participants shared in the work equally, though seminar students in the second semester were not asked to contribute as many words to the final documentation.
Example Core Task: Programming the Notification Bell
The notification bell on the final version of the website has a numbered indicator telling a user how many notifications are available and when the bell is clicked, those notifications are displayed and can be additionally clicked to link to the relevant content. As simple as this sounds, in the background this required extensive trial and error with HTML programming and the creation of code that could check if a notification was available in the database behind the application and to provide the proper link to the relevant page for that content. CSS programming was also needed to adjust the general appearance of the bell.
Example SmartPlanner Task: Training a Decision Tree on Test Data
The SmartPlanner uses a decision tree to decide when events should be scheduled in a user’s calendar. This approach originally had to be tested out on training data, which involved collecting two weeks of data from the SmartPlanner team and then feeding it into a programmed binary decision tree model to allow it to learn what combination of events, priorities, scheduled times, etc. led to a task being successfully completed.
Example StuddyBuddyMatch Task: Creating Questionnaires
In order for two students to be matched as good potential study partners, information was needed about those students’ general profile, study habits, etc. This required the creation of questionnaires for each category of information the StuddyMatchTeam deemed most relevant for matching. Behind the scenes, this required coding the visual questionnaire interface and connecting it to the database so the data could be fed to the matching algorithm.