Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  User cuts at root node and other nodes

    Posted 08/26/19 08:39 AM

    Originally posted by: sailingyang27


    Dear,

    I have a question about user cut:

    How many times could the user cuts be inserted at root node and other nodes?

    For other nodes (not root node), can I insert user cut many times as at root node?

     

    Many thanks,

    Fan

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: User cuts at root node and other nodes

    Posted 08/27/19 01:33 AM

    Are you talking about user cuts from the user cut pool or cuts separated from a callback?


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: User cuts at root node and other nodes

    Posted 08/27/19 03:24 AM

    Originally posted by: sailingyang27


    Hi Daniel,

     

    Thanks for your reply.  I have a function of user cut (not lazy cut) separation from callback,  and I would like to know how many times I could use it at root node and non-root node.

     

    Kind regards,

     

     

     

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: User cuts at root node and other nodes

    Posted 08/27/19 03:43 AM

    At each node (including the root node) cuts are separated in a loop: cuts are separated and the LP relaxation with cuts is resolved. This is repeated as long as new cuts are found.

    So your callback will be invoked as long as new cuts are found. This implies that it will be called repeatedly as long as it adds at least one cut.


    #CPLEXOptimizers
    #DecisionOptimization


  • 5.  Re: User cuts at root node and other nodes

    Posted 08/27/19 04:22 AM

    Originally posted by: sailingyang27


    Hi Daniel,

    Thanks for your answer. I got it. So when there is no new cut, CPLEX will begin branching?

     

    Best wishes,

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 6.  Re: User cuts at root node and other nodes

    Posted 08/27/19 05:27 AM

    CPLEX will stop separation of cuts when your callback does not create new cuts and CPLEX does not find any more cuts on its own.

    You can force CPLEX to stop separation of cuts by returning setting the useraction_p value to CPX_CALLBACK_ABORT_CUT_LOOP in a callable library application or by calling the callback's abortCutLoop() method in the other programming languages.


    #CPLEXOptimizers
    #DecisionOptimization


  • 7.  Re: User cuts at root node and other nodes

    Posted 08/27/19 05:59 AM

    Originally posted by: sailingyang27


    Got it! Thanks a lot!


    #CPLEXOptimizers
    #DecisionOptimization