I'm trying to find previous research on the dynamized version of the Generalized Assignment Problem. That is, how to efficiently maintain an optimal solution in the case where existing workers can be fired and new ones hired.
Some additional constraints from my specific problem are that each worker can only be feasibly assigned to some subset of tasks, all workers take up the same space on all tasks they can be feasibly assigned to, and individual workers have equal competencies at all tasks they can be assigned to.
The problem is to assign n workers to m tasks, maximizing the total competency of all assigned workers. Each worker j has a competency $s_j$ and a set of tasks $f_j \subseteq \{1, ..., m\}$ to which it can be assigned. The number of workers assigned to task i must be less than or equal to the capacity of the task $c_i$. $x_{ij}$ is 1 if worker j is assigned to task i and 0 otherwise. Formally, the following:
maximize $\sum_{j=1}^n s_{j} \sum_{i \in f_j} x_{ij}$
subject to $\sum_{j=1}^n \sum_{i' \in f_j} 1[i' == i] x_{ij} \le c_i, i=1, \ldots, m$;
$\sum_{i \in f_j} x_{ij} \leq 1, j=1, \ldots, n$;
$x_{ij} \in \{0,1\}, j=1, \ldots, n, \quad i \in f_j$
The problem is dynamic because the set of n workers can change over time, with new workers being fired or old ones fired. I want to efficiently maintain the optimal assignment as these changes happen.
If anyone can point me in the direction of some prior work on this, it'd be much appreciated (or at the very least a better search term for these types of dynamically-updating assignment problems than "dynamic", since that just turns up a lot of dynamic programming solutions to the static problem).