Decision Optimization

Decision Optimization

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

 View Only
  • 1.  Network simplex and feasible solutions

    Posted Mon March 30, 2015 05:46 PM

    Originally posted by: jeanbg


    Hello,

    According to http://www-01.ibm.com/support/docview.wss?uid=swg21400089 there are two ways to stop an LP after an initial solution.  The first method fixes the objective to a scalar to other fixe the objective threshold very high (minimization).

    I want to apply this on a pure network problem.  

    __cplex.setParam(IloCplex::RootAlg, IloCplex::Algorithm::Primal);
    //__cplex.setParam(IloCplex::RootAlg, IloCplex::Algorithm::Network);
    __cplex.setParam(IloCplex::ObjLLim, 1e+75); // for min LP

    If I have the primal algorithm, the expected behavior happens and a feasible solution is identified.  If I use the network switch, the algorithm does not stop and goes to optimality.  According to IBM documentation, the network algorithm is also primal, why is it unable to stop?

    Furthermore, if I use the NetItLim switch to a number high enough to fetch a feasible solution, the solver halts with a userabort flag and the getStatus is unknown.  Considering all variables are bounded, there seems to be something quite odd going on.

    Thank you.


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Network simplex and feasible solutions

    Posted Fri April 17, 2015 03:32 AM

    Originally posted by: RWunderling


    Using the network optimizer from an LP (which is what you can do with the C++ API) involves a hybrid algorithm, whereby first a subnetwork is identified and extracted from the LP and then solved.  The resulting basis is then used as a starting basis for the subsequent optimization of the full LP.  Only in this latter step the objective limit is observed, since during the network algorithm, the full problem is typically unknown.

    To take full advantage of a pure network, I suggest to use the C API for your problem, in particular the functions starting with CPXNET...().

    Roland


    #CPLEXOptimizers
    #DecisionOptimization