When trying a decomposition technique such as column generation, most of the times my approach is to look at the problem and then:
- Decide what a column should represent
- Write the Master Problem
- Write the expression of the reduced cost, the subproblem, and use the duals of the Master Problem to generate a new column of minimum (or maximum) reduced cost to be added in the Master problem.
This process is hard to automate since it involves looking at the specific problem.
Also, for the same problem, decisions about what a column should represent can vary, and this may lead to different master and subproblems and to restart again the process and recode it from scratch.
Is there a generic procedure to automatically build a master and one or many subproblems according to how the 2 sets of constraints of the LP (Master and Subproblem constraints) are assigned?