[Clp] ClpSimplexNonlinear question
William H. Patton
pattonwh at comcast.net
Thu Mar 21 12:40:39 EDT 2013
What is the difference between QSECTION in your log for share2b.mps
and QUADOBJ needed by -barrier?
Also, Quadratic objectives need more attention to scaling and RELATIVE
tolerances.
http://en.wikipedia.org/wiki/Relative_change_and_difference
with some kind of tempering near 0 of the expected objective.
I lean toward a relative denominator of ( 1 + abs(x) + abs(y) )
The sum abs for big values away from 0 and the 1 so that relative
becomes absolute difference when the objective gets close to 0.
In the -barrier case i think it goes here:
earching for: sloppyOptimal it seems to be locally detected
ClpPredictorCorrector.cpp(212): bool sloppyOptimal = false;
ClpPredictorCorrector.cpp(275): if (!sloppyOptimal) {
ClpPredictorCorrector.cpp(361): if (sloppyOptimal) {
ClpPredictorCorrector.cpp(403): if ((gapO < 1.0e-6 || (gapO < 1.0e-4 &&
complementarityGap_ < 0.1)) && !sloppyOptimal) {
ClpPredictorCorrector.cpp(404): sloppyOptimal *= true;*
ClpPredictorCorrector.cpp(417): if (saveIteration >= 0 && sloppyOptimal) {
So if you keep your current scale for the problem you need to tweek the
block *around line 403* perhaps the bold block needs tweaking by ratio
of gap to objective
say the bold gap0/(primalObjective_ * objScale -
dblParam_[ClpObjOffset]) and same for *complementarityGap_*
*18 Primal -1.3318263e+09 Dual -1.3318263e+09 Complementarity 40.006314
- 134 fixed, rank 3924 *
if ((gapO < 1.0e-6 ||*(gapO < 1.0e-4 && complementarityGap_ <
0.1)) && !sloppyOptimal)* {
sloppyOptimal = true;
>>>>>>>>>>
from the log in message V of 11/27/2012 10:50 AM, Stephanie Jakus wrote:
I'm using the Clp executable with the barrier method, and running into
problems where the complementarity value gets small and then diverges.
I'm wondering if there is an option to change the convergence tolerance
value for the complementarity when using the barrier method. (I see the
options for tolerance on primal and dual feasibility... but are those
enough?)
<<<<<<<<<<
I would want to quit around here at iter 18 or 22. The relative
Complementary is 40/ 10^9 which is 8 digits of precision.
Pretty good when you should expect only 5 to 6 digits after a bunch of
double precision scalar products on the 911766 elements in sparse Cholesky,.
16 Primal -1.3318262e+09 Dual -1.3318287e+09 Complementarity 2519.259 -
76 fixed, rank 3924
17 Primal -1.3318263e+09 Dual -1.3318263e+09 Complementarity 40.523345 -
134 fixed, rank 3924
*18 Primal -1.3318263e+09 Dual -1.3318263e+09 Complementarity 40.006314
- 134 fixed, rank 3924*
19 Primal -1.3318263e+09 Dual -1.3318264e+09 Complementarity 39.542777 -
134 fixed, rank 3924
20 Primal -1.3318263e+09 Dual -1.3318265e+09 Complementarity 39.128027 -
134 fixed, rank 3924
21 Primal -1.3318263e+09 Dual -1.3318266e+09 Complementarity 38.757635 -
134 fixed, rank 3924
*22 Primal -1.3318263e+09 Dual -1.3318263e+09 Complementarity 0.87384878
- 134 fixed, rank 3924*
23 Primal -1.3318263e+09 Dual -1.331649e+09 Complementarity 0.0061784205
- 134 fixed, rank 3924
24 Primal -1.3318263e+09 Dual -1.3047041e+09 Complementarity
4.0066434e-05 - 134 fixed, rank 39
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
your log
Coin0001I At line 1 NAME SHARE2B
Coin0001I At line 2 ROWS
Coin0001I At line 100 COLUMNS
Coin0001I At line 482 RHS
Coin0001I At line 495 ENDATA
Coin0002I Problem SHARE2B has 96 rows, 79 columns and 694 elements
Coin0001I At line 496 NAME SHARE2B
*Coin0001I At line 497 QSECTION*
Coin0001I At line 526 ENDATA
My log
H:\lpsolve-55\glpk445bin>clp2
Coin LP version 1.14.4, build Nov 10 2011
Clp takes input from arguments ( - switches to stdin)
Enter ? for list of commands or help
Clp:barrier?
barr(ier) : Solve using primal dual predictor corrector algorithm
Clp:barrier??
barr(ier) : Solve using primal dual predictor corrector algorithm
This command solves the current model using the primal dual predictor
corrector algorithm. You may want to link in an alternative ordering
and factorization. It will also solve models with quadratic objectives.
Clp:IMPORT share2qp.mps
At line 1 NAME SHARE2B
At line 2 ROWS
At line 100 COLUMNS
At line 482 RHS
*At line 495 QUADOBJ*
Problem SHARE2B has 96 rows, 79 columns and 694 elements
At line 524 ENDATA
Model was imported from .\share2qp.mps in 0.002 seconds
Clp:barrier
2928 elements in sparse Cholesky, flop count 89374
0 Primal 1880441 Dual -1.6693328e+008 Complementarity 1.9590728e+008 - 0
fixed,
rank 271
1 Primal 30581.248 Dual -10443941 Complementarity 26978058 - 0 fixed,
rank 271
2 Primal 1572.4622 Dual -3087057.1 Complementarity 6108433.1 - 0 fixed,
rank 271
3 Primal 310.8557 Dual -1459155.3 Complementarity 2507164.8 - 0 fixed,
rank 271
4 Primal 509.42803 Dual -501381.13 Complementarity 606063.42 - 0 fixed,
rank 271
5 Primal 967.29319 Dual -105866.26 Complementarity 115919.99 - 0 fixed,
rank 271
6 Primal 837.84361 Dual -52400.522 Complementarity 57435.819 - 0 fixed,
rank 271
7 Primal 102.95273 Dual -4147.861 Complementarity 4353.3398 - 0 fixed,
rank 271
8 Primal -311.19033 Dual -855.93051 Complementarity 551.31766 - 0 fixed,
rank 27
1
9 Primal -349.04464 Dual -618.45146 Complementarity 275.98936 - 0 fixed,
rank 27
1
10 Primal -377.72515 Dual -436.0772 Complementarity 59.71886 - 0 fixed,
rank 271
11 Primal -393.65235 Dual -415.96868 Complementarity 22.998293 - 0
fixed, rank 2
71
12 Primal -398.79134 Dual -403.89314 Complementarity 5.2467322 - 0
fixed, rank 2
71
13 Primal -400.18831 Dual -401.99952 Complementarity 1.8687018 - 0
fixed, rank 2
71
14 Primal -400.83016 Dual -401.04844 Complementarity 0.22457764 - 0
fixed, rank
271
15 Primal -400.90225 Dual -400.9482 Complementarity 0.045949787 - 13
fixed, rank
271
16 Primal -400.9224 Dual -400.92272 Complementarity 0.00031159724 - 13
fixed, ra
nk 271
17 Primal -400.92254 Dual -400.92254 Complementarity 2.5038999e-006 - 13
fixed,
rank 271
18 Primal -400.92254 Dual -400.92254 Complementarity 1.7307463e-008 - 50
fixed,
rank 271
19 Primal -400.92254 Dual -400.92254 Complementarity 1.5460613e-008 - 53
fixed,
rank 271
Exiting - using solution from iteration 17
At end primal/dual infeasibilities 0/0.078454371, complementarity gap
1.4091511e
-007, objective -400.92254
Optimal objective -400.9225413 - 19 iterations time 0.102
Clp:
Clp:solu $
optimal
Objective value -400.92254
0 010101 0.80133581 1.9143424e-008
1 010102 1.798893 8.5572461e-009
6 010107 5.8333333 2.6351614e-009
. . .
William
On 3/20/2013 9:46 AM, John Forrest wrote:
> Alex,
>
> I modified an example and attach it and solution log. I ran it as
>
> testQP2 ../../../Data/Sample/share2qp.mps
>
> that should show you how to load a model and a quadratic function.
> With current code constraints are linear.
>
> John Forrest
>
>
>
>
> _______________________________________________
> Clp mailing list
> Clp at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/clp
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/clp/attachments/20130321/df24d1b0/attachment.html>
More information about the Clp
mailing list