Your problem has for sure to to with scaling/big values.
For example Using-6300000-BadResult when converted to lp-format I see:
/* Objective function */
min: -6300000 C2 -6300000 C3 -6300000 C4 -6300000 C5 +1e-05 C6 -6300000 C7 -6300000 C8;
/* Constraints */
R1: +C1 >= 1;
R2: +C1 <= 1;
R3: +C6 >= 0;
R4: +C6 <= 1;
R5: +C4 >= 0;
R6: +C4 <= 1;
R7: +C7 >= 0;
R8: +C7 <= 1;
R9: +C8 >= 0;
R10: +C8 <= 1;
R11: +C2 >= 0;
R12: +C2 <= 1;
R13: +C3 >= 0;
R14: +C3 <= 1;
R15: +C5 >= 0;
R16: +C5 <= 1;
R17: +C6 >= 0;
R18: +C6 <= 1;
R19: +C4 >= 0;
R20: +C4 <= 1;
R21: +C7 >= 0;
R22: +C7 <= 1;
R23: +C8 >= 0;
R24: +C8 <= 1;
R25: +C2 >= 0;
R26: +C2 <= 1;
R27: +C3 >= 0;
R28: +C3 <= 1;
R29: +C5 >= 0;
R30: +C5 <= 1;
R31: -6300000 C3 -6300000 C4 +6299995 C6 <= 0.1;
R32: -6300000 C3 -6300000 C4 +6299995 C6 >= 0;
R33: -6300000 C5 -6300000 C7 <= 0.1;
R34: -6300000 C5 -6300000 C7 >= 0;
R35: -3150000 C2 -3150000 C3 +3150000 C4 -3150000 C5 +3150000 C7 +3150000 C8 <= 0.25;
R36: -3150000 C2 -3150000 C3 +3150000 C4 -3150000 C5 +3150000 C7 +3150000 C8 >= -0.25;
R37: +100 C2 +100 C6 +100 C8 <= 100;
R38: +100 C2 +100 C6 +100 C8 >= 99.999;
These real big coefficients give numerical instabilities.
If I use a different scaling option (in this case no scaling) in lp_solve I do get the good result. for example:
lp_solve -mps d:\brol\Using-6300000-BadResult.mps -wlp d:\brol\Using-6300000-BadResult.lp -v4 -s0
gives:
Value of objective function: -6300000.00000000
Actual values of the variables:
C1 1
C2 0.5
C3 0
C4 0
C5 0
C6 0
C7 0
C8 0.5
The default scaling option of lpsolve may not well behave with your big coefficients. So I would try other scaling options with your models and see what this gives.
This has also to do with tolerances used by the solver. Because solving such a model results in alot of floating point operations, adding, substracting, multiply and diveding results in rounding errors and the solver must cope with that via tolerances.
Your big coefficients are also in the range of the default tolerances.
For example when I use the option -epsel 1e-13 I also get:
Value of objective function: -6300000.00000000
Actual values of the variables:
C1 1
C2 0.5
C3 0
C4 0
C5 0
C6 0
C7 0
C8 0.5
So you will have to either try to scale your model better or play with the lpsolve options.
Peter