I am studying an assignment problem with batching costs, and I would like to know if there is a standard name or algorithm for this problem. I know this problem can be formulated as mixed-integer programming and be solved using the solvers, but I am looking for algorithms that are faster than the standard MILP methods. Both exact and approximated algorithms are appreciated, and polynomial-time methods are expected if exist.
The problem is: We have $i$ jobs that can be assigned to $j$ workers, $j>i$. Each job $i$ has a cost when assigned to worker $j$, namely, $w_{ij}$. Each worker $j$ can work with one or two job(s). When worker $j$ only works with one job, there is no additional cost. However, if worker $j$ works with two jobs, there is an additional cost. This additional cost can be regarded as a batching cost as it only exists when two jobs are assigned to the same worker. The additional cost for worker $j$ with job $i_1$ and $i_2$ is $c_{i_1i_2j}$, and it can be arbitrarily positive or negative. In this case, the total cost for worker $j$ with job $i_1$ and $i_2$ is $w_{i_1j}+w_{i_2j}+c_{i_1i_2j}$. Our objective is to assign all the jobs with a minimum total cost.