Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Performance Issue with 12.7.1

    Posted 06/18/17 12:27 PM

    Originally posted by: Ibrahim_Capar


    Hi all,

    I encountered solution time performance deterioration with CPLEX 12.7.1 compare to CPLEX 12.5.1. The problem has 234 binary variables. CPLEX 12.5.1 solves the problem in 116 seconds  while CPLEX 12.7.1 could not find the optimal solution after running for 1 day. I solve both problem on the same machine and I use C++ to model the problem. I attached some related files for your investigation. 

    Thanks,

    Ibrahim


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Performance Issue with 12.7.1

    Posted 06/20/17 05:19 AM

    I am afraid you are suffering from performance variability. I ran the 12.5.1 and 12.7.1 models here, each with CPLEX 12.5.1 and CPLEX 12.7.1. I used a time limit of 300 seconds and tried 15 random seeds for each of the four combinations. In no run did CPLEX complete with a proof of optimality.

    I guess your 12.5.1 run is just super lucky to find the feasible solution with objective 56 in the first 300 seconds. Can you try your 12.5.1 run with different random seeds? My guess is that usually CPLEX will not prove optimality that quickly.


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Performance Issue with 12.7.1

    Posted 09/21/17 10:00 AM

    Originally posted by: PingLiu


    Excuse me,

     

    I have a problem with unstable solution time too. I wonder what is random seed used for? what is the default value in CPLEX 12.7.1?How should I set the value of random seed each time? how would it affect the computational performance?

     

    Thanks,

    Ping

     

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: Performance Issue with 12.7.1

    Posted 06/20/17 01:43 PM

    Originally posted by: Ibrahim_Capar


    For CPLEX 12.7.1, I think I can use interactive optimizer to try different seeds by tools->runseeds option to generate random replications.

    Is there similar function in CPLEX 12.5.1 or I have to use "set ->randomseed -> a random number" to replicate the process?

    Ibrahim


    #CPLEXOptimizers
    #DecisionOptimization


  • 5.  Re: Performance Issue with 12.7.1

    Posted 07/03/17 12:35 PM

    Sorry for the late reply. You are right, in 12.5.1 you have to do things by hand and repeatedly change the random seed and then solve again.


    #CPLEXOptimizers
    #DecisionOptimization


  • 6.  Re: Performance Issue with 12.7.1

    Posted 06/21/17 02:02 PM

    Originally posted by: Ibrahim_Capar


    When I change the seed, CPLEX 12.5.1 was not able to find the optimal solution in 300seconds.
     


    #CPLEXOptimizers
    #DecisionOptimization


  • 7.  Re: Performance Issue with 12.7.1

    Posted 09/21/17 12:02 PM

    The random seed is used internally to make some decisions when there is no obvious choice. For example, if a number of variables could be chosen to branch on, and according to all previous criterion there is not one that's better than the others, CPLEX will pick one randomly.  Setting the random seed will initialize the sequence of random numbers.  So changing the random seed will change these random decisions.

    You should not choose a random seed. If you try several, and pick the one for which CPLEX is the fastest, the chance that this random seed is the best for any other model that is ever so slightly different are extremely low.  You should instead focus on more meaningful parameters.

    On the other hand, you can use the random seeds to evaluate the variability of your model(s). The slides at https://developer.ibm.com/docloud/docs/roadef-2017/ will give you more details about a feature that was designed for exactly this purpose.


    #CPLEXOptimizers
    #DecisionOptimization