cplexibm-ilog-opl

CPLEX Studio long overhead time for network flow problems


I am trying to solve a network flow problem by writing it as a linear program using OPL and solving it with CPLEX Studio. It took CPLEX Studio 26 minutes to solve the problem. However, the Engine Log says that Network time = 0.21 sec:

CPXPARAM_LPMethod                                3
Tried aggregator 1 time.
LP Presolve eliminated 914361 rows and 916674 columns.
Aggregator did 5 substitutions.
Reduced LP has 4629 rows, 457853 columns, and 913392 nonzeros.
Presolve time = 1.28 sec. (955.67 ticks)
Extracted network with 4630 nodes and 457853 arcs.
Extraction time = 0.04 sec. (22.54 ticks)

Iteration log . . .
Iteration:     0   Infeasibility     =          3444.000000 (-1.21856e+06)
...
Iteration: 50000   Objective         =      -1158876.510000

Network - Optimal:  Objective =   -1.1643204900e+06
Network time = 0.21 sec. (53.14 ticks)  Iterations = 54799 (15500)

I'm not entirely sure if I read the log right.

Does it mean the presolve (or other overhead) took the 26 minutes to eliminate rows/columns etc. while the actual network solving only took 0.2 seconds?

If so, would bypassing the presolve be faster? (And if necessary, how can I bypass the presolve?)


Solution

  • You should have a look at the profiler tab in order to know where time is spent.

    Technote: http://www-01.ibm.com/support/docview.wss?uid=swg21401402

    OPL CPLEX forum: https://www.ibm.com/developerworks/community/forums/html/forum?id=11111111-0000-0000-0000-000000002053