Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Different optimal values with CPLEX 12.5 (Java)

    Posted 12/12/13 08:18 AM

    Originally posted by: celia_PhDStu


    Hello,

    I use the concert technology of CPLEX 12.5 to solve a minimisation problem. In fact, it is a bin packing problem (I want to pack boxes in a container) with several hard constraints. I enclosed the SAV and the LP. 

    I use CPLEX with its default parameters (dynamic search).

    The problem is that for some instances, the optimal values given by CPLEX can be different, depending on the number of threads. I mean, for a set of 12 boxes, CPLEX will return an optimal solution of one container (which is correct) if it is using 4 threads and it will give two containers with 8 threads. I don't understand why the answer is sometimes wrong. Actually, I don't understand why the solutions can even be different. This is the same problem...

    I tried changing the parameters: removing the dynamic search for instance, but it doesn't change anything. I also tried removing the parallel mode, but for some other instances, there are still problems. Finally, I tried changing the numerical emphasis, but still it is not enough.

    Do you have any ideas to fix that problem?

    Thanks in advance.

    Regards

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Different optimal values with CPLEX 12.5 (Java)

    Posted 12/12/13 12:16 PM

    This could be just a numerical problem. I managed to reproduce the different results with 4 and 8 threads. Then I observed that your coefficient ranges from 1e-1 to 1e6. Also, your objective function coefficients are of order 1e8. That is not too bad but still could cause trouble down the road.

    So I enabled numerical emphasis and this fixed the issue: same solution no matter what thread count. Does this work for you as well?

    Since all your objective function coefficients are the same and are of order 1e8 it may also be an option to scale them so that they get into the same range as the matrix coefficients (for example divide them by 1e3). This reduces potential problems due to numerics.


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Different optimal values with CPLEX 12.5 (Java)

    Posted 01/16/14 03:55 AM

    Originally posted by: celia_PhDStu


    Thank you very much.

    By changing the coefficients in the objective function, the problem disappeared.

    Regards


    #CPLEXOptimizers
    #DecisionOptimization