What version of CPLEX do you use? I could not reproduce your problem here.
Are you sure you are flipping the objective function correctly? In your logs you can see for "maximize"
Root relaxation solution time = 8.39 sec. (2695.54 ticks)
Nodes Cuts/
Node Left Objective IInf Best Integer Best Bound ItCnt Gap
0 0 37099.6949 1224 37099.6949 9901
and for "minimize"
Root relaxation solution time = 214.38 sec. (42780.70 ticks)
Nodes Cuts/
Node Left Objective IInf Best Integer Best Bound ItCnt Gap
0 0 2888.6639 6151 2888.6639 23431
If the objective was correctly flipped and everything else in the model was the same than the initial dual bound in the minimization case should be -37099.6949, right? And that is what I get when I flip your objective by hand here.
For your maximization model I get an optimal objective value of 37082 (i.e. the initial dual bound is tight). So the optimal solution for the minimization should be -37082. However, that solution is cut off by the initial dual bound in the minimization log.
Can you please double check how you are flipping the objective? Or can you even show us how you do that?
#CPLEXOptimizers#DecisionOptimization