Originally posted by: EdKlotz
CPLEX uses the revised simplex method, so it does not maintain (or calculate) a complete simplex tableau, even at optimality. CPLEX's C API has functions you can call (e.g CPXbinvarow, CPXbinvcol) that can generate any part of the simplex tableau relative to the basis at the end of the optimization (optimal or otherwise). But, this functionality is not available in the object oriented APIs. such as Java. However, you can have CPLEX calculate the reduced costs of the columns generated by your subproblem. First, add them to the RMP. Then set the simplex iteration limit to 0 and optimize. The basis remains unchanged, so you can now query the reduced costs from the RMP for your recently added columns, and throw an exception if you see a mismatch of significant size in their values. After that, be sure to reset the simplex iteration limit so that the subsequent optimization of the RMP can proceed.
#CPLEXOptimizers#DecisionOptimization