help-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-glpk] Interpretation of 'glp_scale_prob' output


From: glpk xypron
Subject: Re: [Help-glpk] Interpretation of 'glp_scale_prob' output
Date: Tue, 12 Oct 2010 19:22:13 +0200

Hello Robbie,

the relevant coding is in glpscl.c.

Scaling/output sequence is
* fmt = "%s: min|aij| = %10.3e  max|aij| = %10.3e  ratio = %10.3e\n";
* xprintf("Scaling...\n")
* unscale
* report original scaling "quality" - xprintf(fmt, " A", min_aij, max_aij, 
ratio);
* check if problem is well scaled - xprintf("Problem data seem to be well 
scaled\n");
* iterative geometric mean scaling - xprintf(fmt, "GM", min_aij, max_aij, ratio)
* equilibration scaling - xprintf(fmt, "EQ", min_aij, max_aij, ratio)
* round scale factors to nearest power of two - xprintf(fmt, "2N", min_aij, 
max_aij, ratio)

Which scaling is executed depends on the flags passed to 
glp_scale_prob(glp_prob *lp, int flags)

*  GLP_SF_GM      perform geometric mean scaling;
*  GLP_SF_EQ      perform equilibration scaling;
*  GLP_SF_2N      round scale factors to nearest power of two;
*  GLP_SF_SKIP    skip scaling, if the problem is well scaled.
*  GLP_SV_AUTO    choose scaling options automatically
                  i.e. GLP_SF_GM + GLP_SF_EQ + GLP_SF_SKIP

> SKIP indicates skip scaling if the problem is well scaled.
A line beginning with SKIP will never be written.

I guess additionally to documenting the output we should add an extra page on 
scaling, to describe how scaling is influenced by modelling, especially the 
negative effect of excessive big Ms.

Best regards

Xypron


-------- Original-Nachricht --------
> Datum: Wed, 13 Oct 2010 02:29:52 +1300 (NZDT)
> Betreff: [Help-glpk] Interpretation of \'glp_scale_prob\' output

> 
> Hello all
> 
> Calling 'glp_scale_prob' on a tiny MIP problem results
> in the following terminal output:
> 
> <output>
> 
> Scaling...
>  A: min|aij| =  1.000e+00  max|aij| =  8.000e+05  ratio =  8.000e+05
> GM: min|aij| =  5.494e-01  max|aij| =  1.820e+00  ratio =  3.312e+00
> EQ: min|aij| =  3.096e-01  max|aij| =  1.000e+00  ratio =  3.230e+00
> 
> </output>
> 
> I would like to describe this output (or a similar
> example) on the GLPK wikibook page:
> 
>   http://en.wikibooks.org/wiki/GLPK/Terminal_output
> 
> However I didn't see the output format explained in
> much detail in the GLPK API manual.  So my first cut
> is as follows:
> 
> <wikibook>
> 
> where:
> 
> A  indicates the original constraint matrix, A = (a_ij)
> GM indicates geometric mean scaling
> EQ indicates equilibration scaling
> 2N indicates round scale factors to nearest power of two
> SKIP indicates skip scaling if the problem is well scaled
> 
> In the above example, GM and EQ scaling have been applied in that order.
> 
> The min and max indicate ... and the ratio is determined by simple
> division.
> 
> Scaling is on by default under GLPSOL, but can be disabled
> using the <tt>--noscale</tt> option.
> 
> </wikibook>
> 
> Can anybody add/correct/comment on this text please.
> 
> many thanks
> Robbie
> ---
> Robbie Morrison
> PhD student -- policy-oriented energy system simulation
> Technical University of Berlin (TU-Berlin), Germany
> University email (redirected) : address@hidden
> Webmail (preferred)           : address@hidden
> [from Webmail client]
> 
> 
> 
> _______________________________________________
> Help-glpk mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/help-glpk

-- 
Neu: GMX De-Mail - Einfach wie E-Mail, sicher wie ein Brief!  
Jetzt De-Mail-Adresse reservieren: http://portal.gmx.net/de/go/demail



reply via email to

[Prev in Thread] Current Thread [Next in Thread]