I am trying to find the best algorithm for an assignment problem I am working on. Here is the situation:
- There are n number of agents that are each assigned some number s of tasks, where s is the number of sessions (1-4), so each agent has exactly one task for each session
- There are m number of total tasks that can be in any of the s number of sessions (1-4)
- Each task has some max number of agents that can assigned to it
- Each agent-task pair has some value that is the "happiness" of that pair
I need the algorithm to assign the agents and tasks in such a way that every agent has a task in each session and the total "happiness" is maximized for all the agents. I tried to use the Hungarian Algorithm to solve this problem; however, as it only is designed to work in a one-to-one situation, I ran into issues with that algorithm.