Originally posted by: SystemAdmin
[jfk said:]
Hello Shadi,
well, it seems that you are pushing the approach to use a huge number of columns at once. I don't know how you create your columns but probably a dynamic approach would help you. Here I outline what I mean:
1. you create a small number of columns which definitely solve your problem (the initial number of columns) - that is cover all the necessary duties
2. compute reduced costs and when you create a new column put a constraint saying that the reduced cost of the new column can't be worse than the computed reduced costs. Then the newly created column can be added to your master problem
3/A. add the new column(s) to your master prb and solve it. Keep generating new columns
3/B. Keep track of the columns if they are chosen in your solution and when. If a column is not chosen for a solution for a long time probably you can delete it from the master prb.
if you take a look at CPLEX's sifting basically it does the same except that the columns are already generated and the aim is to improve performance reducing the size of the problem (reducing the number of columns).
I hope it helps
cheers
#ConstraintProgramming-General#DecisionOptimization