[Osi] Solving master problems using interior point method
Matthew Galati
matthew.galati at gmail.com
Wed Jan 5 08:18:00 EST 2011
This reminds me of an issue I found when I tried this a while back.
CC'ing OSI list.
OSI does not seem to support interior point solvers. For example, there is
no OsiDoInteriorInResolve option, or anything like that.
OSI folks - if I want to invoke an interior solver of Cpx or Clp, for
example, how do I do it?
Matt
On Wed, Jan 5, 2011 at 4:12 AM, Jonas Christoffer Villumsen <jcvi at man.dtu.dk
> wrote:
> Hi all,
>
>
>
> Does anyone have experience solving master problems with an interior point
> method?
>
>
>
> There is a parameter SolveMasterUpdateAlgo that can be set to 2 (barrier),
> but this doesn’t seem to have an effect.
>
>
>
> In DecompAlgo.cpp I tried to set DO_INTERIOR. I managed to get it to run,
> but it terminates with an assertion failure – saying that Barrier limit on
> dual objective exceeded.
>
> I have pasted some of the log below (full log attached). I guess the
> barrier algorithm doesn’t find a feasible solution (within the set limit),
> and the infeasible state is not set properly (as stated in the comments of
> the code). Is this the case? And if so any ideas how to come by that?
>
>
>
> Thanks,
>
> Jonas
>
>
>
> D-ALGO : 4.35 [CPU: 4.37 ] <--- solutionUpdate() --------
>
> Tried aggregator 1 time.
>
> CPX0000 Tried aggregator 1 time.
>
> LP Presolve eliminated 43 rows and 53 columns.
>
> CPX0000 LP Presolve eliminated 43 rows and 53 columns.
>
> Reduced LP has 36 rows, 44 columns, and 76 nonzeros.
>
> CPX0000 Reduced LP has 36 rows, 44 columns, and 76 nonzeros.
>
> Presolve time = 0.02 sec.
>
> CPX0000 Presolve time = 0.02 sec.
>
> Parallel mode: using up to 2 threads for barrier.
>
> CPX0000 Parallel mode: using up to 2 threads for barrier.
>
> Number of nonzeros in lower triangle of A*A'CPX0000 Number of nonzeros in
>
> lower triangle of
>
> = 144
>
> CPX0000 Number of nonzeros in lower triangle oCPX0000 A*A'
>
> Using Approximate Minimum Degree ordering
>
> CPX0000 Using Approximate Minimum Degree ordering
>
> Total time for automaticCPX0000 Total time for
>
> ordering = 0.00 sec.
>
> CPX0000 Total time foCPX0000 automatic
>
> Summary statistics for Cholesky factor:
>
> CPX0000 Summary statistics for Cholesky factor:
>
> Threads = 2
>
> CPX0000 Threads = 2
>
> Rows in Factor = 36
>
> CPX0000 Rows in Factor = 36
>
> Integer space required = 36
>
> CPX0000 Integer space required = 36
>
> Total non-zeros in factor = 180
>
> CPX0000 Total non-zeros in factor = 180
>
> Total FP ops to factor = 1140
>
> CPX0000 Total FP ops to factor = 1140
>
> Itn Primal Obj Dual Obj Prim Inf Upper Inf Dual Inf
>
> CPX0000 Itn Primal Obj Dual Obj Prim Inf Upper Inf Dual Inf
>
> 0 1.2727273e+021 4.0000000e+000 1.75e+021 0.00e+000 1.12e+002
>
> CPX0000 0 1.2727273e+021 4.0000000e+000 1.75e+021 0.00e+000 1.12e+002
>
> 1 5.9609448e+020 5.6913266e+020 3.93e+005 0.00e+000 1.99e+001
>
> CPX0000 1 5.9609448e+020 5.6913266e+020 3.93e+005 0.00e+000 1.99e+001
>
> Barrier limit on dual objective exceeded.
>
> CPX0000 Barrier limit on dual objective exceeded.
>
> Infeasible barrier solution (dependent on objective limit).
>
> CPX0000 Infeasible barrier solution (dependent on objective limit).
>
>
>
> Total real time on 2 threads = 0.09 sec.
>
> CPX0000
>
> CPX0000 Total real time on 2 threads = 0.09 sec.
>
> Solution update n_cols:97 n_rows: 79 n_iter: 0
> time:
>
> 0.109
>
> Iteration Count : 0
>
> isAbandoned() : 0
>
> isProvenOptimal() : 0
>
> isProvenPrimalInfeasible() : 0
>
> isProvenDualInfeasible() : 0
>
> isPrimalObjectiveLimitReached : 0
>
> isDualObjectiveLimitReached : 0
>
> isIterationLimitReached : 0
>
> Assertion failed: 0, file ..\..\..\..\src\DecompAlgo.cpp, line 2434
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/osi/attachments/20110105/0cdef489/attachment.html>
More information about the Osi
mailing list