Decision Optimization

Decision Optimization

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

 View Only
  • 1.  branch callback

    Posted Sat August 03, 2013 11:04 PM

    Originally posted by: amindehghanian


    Hi,

     

    I need to update so parameters in my branch callback and use them in my cutcallback function of the offsprings. However I let CPLEX use its default branching, then I am not able to use userhandle of CPXbranchcallbackbranchbds.

    How I can get over this issue efficiently?

     

    Thanks in advance!


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: branch callback

    Posted Sun August 04, 2013 11:41 AM

    Do you use CPXbranchcallbackbranchasCPLEX to implement CPLEX's branching choices? It has a 'userhandle' argument.

    Paul


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: branch callback

    Posted Sun August 04, 2013 12:24 PM

    Originally posted by: amindehghanian


    Thanks Paul for you quick answer!

    I could do it, however I prefer not to!

    I want to let CPLEX choose the branching variable. 

    Is there any possible way to find out the last variable being fixed in the search tree?

     

    Thanks again,


    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: branch callback

    Posted Sun August 04, 2013 01:33 PM

    "I want to let CPLEX choose the branching variable." Isn't that exactly what CPXbranchcallbackbranchasCPLEX does?


    #CPLEXOptimizers
    #DecisionOptimization


  • 5.  Re: branch callback

    Posted Sun August 04, 2013 01:52 PM

    Originally posted by: amindehghanian


    You mean I can put the arguments of variables  to be NULL in CPXbranchcallbackbranchbds?

     

    I did not know that!

     

    Thanks


    #CPLEXOptimizers
    #DecisionOptimization


  • 6.  Re: branch callback

    Posted Sun August 04, 2013 02:51 PM

    No, I mean you can use CPXbranchcallbackbranchasCPLEX instead of CPXbranchcallbackbranchbds. CPXbranchcallbackbranchasCPLEX tells CPLEX to create one of the branches it was planning to create in the absence of a branch callback. You will probably want to call it twice, once with num=0 (create the left child) and again with num=1 (create the right child). Please refer to the documentation for CPXbranchcallbackbranchasCPLEX.

    Paul


    #CPLEXOptimizers
    #DecisionOptimization


  • 7.  Re: branch callback

    Posted Sun August 04, 2013 05:47 PM

    Originally posted by: amindehghanian


    Yes, you are right!

     

    Thanks a lot,


    #CPLEXOptimizers
    #DecisionOptimization