I'm working on a problem and am curious if there is already a known algorithm that solves it. Here is my problem:
- I have $n_t$ tasks where each task belongs to one of $n_c$ categories $c_1, c_2, ..., c_{n_c}$.
- I have $n_w$ workers where each worker, $w_i$, has $s^{tot}_i$ slots available for tasks with the constraint that it can't have more than $s^{c_j}_i$ tasks from category $c_j$, for each $1 \leq j \leq n_c$.
- It is known that the all of the $n_t$ tasks can be assigned to the workers in such a way that they satisfy the constraints from (2).
I'm looking for an algorithm that will find the correct task assignment. I'm also curious if this is a classical problem that is well known.