No solution in CPLEX with very small change in inputs
===

I'm using CPLEX in C++ to solve a hub location problem, and I've recently found a very precise set of inputs that returns no solution (i.e. CPXERR_NO_SOLN) even though the problem is certainly feasible.

I've found that making almost any slight adjustment in the input data can toggle CPLEX's ability to find a solution. For instance, changing 250.242566 to 250.242567, or even just rounding each input value to the nearest integer, will give me a perfectly valid solution.

Softening the two slack constraints I have will also allow a solution, but these constraints should not be broken given the input data. The value of these constraint variables after a solution is approximately 0 but slightly negative, e.g. -0.7e-10. (This is suspect since the values should be above 0.)

What is going on? I'm clueless. I've tried adjusting some of the CPLEX variables relating to precision (i.e. CPX_PARAM_NUMERICALEMPHASIS, CPX_PARAM_EPOPT, CPX_PARAM_EPMRK, CPX_PARAM_EPRHS) but nothing has helped. The input data itself does not require too much precision--the smallest value in the inputs is 1.412 and the largest is 1520.984907. 

I'd appreciate any advice or suggestions!
