Originally posted by: Timothy_Chow
I have an LP in standard form, i.e., all the constraints are equality constraints. I solved it with the simplex method and used CPXgetbase to get the basis. I was expecting all the basic variables to be associated with columns, but to my surprise, some of the basic variables were associated with rows (i.e., the rstat array was not all zero). This surprised me, and I am unsure what this means. I understand that for an inequality, there is an implicit slack variable that measures the difference between the two sides, and I understand what it would mean for this slack variable to be a basic variable, but what precisely is the definition of an artificial or slack variable for an equality? In particular, what does it mean for it to be a basic variable? Is it always possible to drive such variables out of the basis with CPXpivot?
I also have a related but slightly different question. Is there a way to find out the reduced cost associated to a slack or artificial variable? The CPXgetdj documentation seems to be unclear on this point.
#CPLEXOptimizers#DecisionOptimization