Project Group Assignment System
Teams/groups are used for conducting work in industry, government, and academia,
and the formation of appropriate teams/groups is important for the work to be successful.
In academia, although the easiest method of forming student groups is simply to let students form the
groups, there are significant problems with this approach,
especially the tendency to choose group members based on friendship rather than more appropriate reasons.
Another method is random assignment but this also is far from optimal.
The problem is to find the assignment of students to projects that optimizes an objective function.
The objective function might gives points to each student as follows.
For a student's project choices, for example, a student could get 5 points for getting his/her first choice,
4 points for second choice, down to 1 point for fifth choice.
Other attributes could be weighted appropriately.
Ideally, the system will assign students (or company employees) to project teams where each student (or employee) lists his/her
- preferences for projects
- computer-related job skill experience
- preferences for the location of team meetings based on where the team member lives or works
- preferences for the day/time scheduling of weekly team meetings
A paper from 2000 used a Greedy Search Approach
as did a project from last semester 2016 Project Paper
and 2016 Group Assign Users Manual.
Last semester's group assignment system focused on matching project-desired skills against student skills.
The project this semester will extend last semester's system to include other information
such as student location (NYC regions, NJ, outside the NYC area, etc.) and major (CS versus IT),
and also improve, if possible, the ease of using the system.
The first step is to review and understand last semester's system.
This project is a continuation of last semester's project, see
2016 Fall Project Paper