MentorMatch is a service designed to pair mentors to mentees. Each user can create a customizable profile, allowing them to select as many preferred partners as they like. When all of the profiles are complete, MentorMatch will generate a mapping that maximizes the happiness of all parties involved.
The designation of mentors and mentees naturally forms the structure of a bipartite graph. We generate our assignments via solving a max-weight bipartite matching problem. Our weights are defined as follows:
The full matching can be viewed via the "Getting Started" page. It can also be downloaded as a separate CSV file, which lists the mentor-mentee pairs as well as the matching score.
The full source code for MentorMatch, including sample datasets, can be found here.