#12736: More solver options for GLPK
---------------------------------------------+------------------------------
       Reporter:  john_perry                 |         Owner:  ncohen           
        
           Type:  enhancement                |        Status:  positive_review  
        
       Priority:  major                      |     Milestone:  sage-5.0         
        
      Component:  linear programming         |    Resolution:                   
        
       Keywords:  solver parameters          |   Work issues:                   
        
Report Upstream:  N/A                        |     Reviewers:  Nathann Cohen, 
John Perry
        Authors:  John Perry, Nathann Cohen  |     Merged in:                   
        
   Dependencies:  #12309                     |      Stopgaps:                   
        
---------------------------------------------+------------------------------
Changes (by {'newvalue': u'John Perry, Nathann Cohen', 'oldvalue': ''}):

  * reviewer:  => Nathann Cohen, John Perry
  * author:  => John Perry, Nathann Cohen


Old description:

> Several requests for solver options to use as parameters for GLPK prompt
> us to allow the user to set quite a few parameters.
>
> In addition, the name for the solver paramter in ticket #12309
> (`preprocessing`) isn't very accurate (we didn't think it through
> carefully enough at the time) so that option will change, too.
>
> I propose to change/enable the following solver options. See the GLPK
> documentation for details on each option, and note that most have two
> names: one to correspond to GLPK, one for legibility.
>
> * glpk's solver
>   * default is `glp_intopt`, as at present
>   * `simplex_first`: setting this to `True` makes the solver invoke
> `glp_simplex` before `glp_intopt`
>     * useful to avoid problems in glpk
>     * '''replaces''' current `preprocessing` parameter
>   * `simplex_only`: setting this to `True makes the solver invoke
> `glp_simplex` '''instead''' of `glp_intopt`
>
> * glpk's `intopt` solver
>   * `msg_level` or `verbosity`
>   * `br_tech` or `branching`
>   * `bt_tech` or `backtracking`
>   * `pp_tech` or `preprocessing`
>   * `fp_heur` or `feasibility_pump`
>   * `gmi_cuts` or `gomory_cuts`
>   * `mir_cuts` or `mixed_int_rounding_cuts`
>   * `cov_cuts` or `mixed_cover_cuts`
>   * `clq_cuts` or `clique_cuts`
>   * `tol_int` or `absolute_tolerance`
>   * `tol_obj` or `relative_tolerance`
>   * `mip_gap` or `mip_gap_tolerance`
>   * `tm_lim` or `time_limit`
>   * `out_freq` or `output_frequency`
>   * `presolve` or `mip_presolver`
>   * `binarize`
>
> * glpk's `simplex` solver
>   * `msg_level` or `verbosity`
>   * `meth` or `primal_v_dual`
>   * `pricing`
>   * `r_test` or `ratio_test`
>   * `tol_bnd` or `tolerance_primal`
>   * `tol_dj` or `tolerance_dual`
>   * `tol_piv` or `tolerance_pivot`
>   * `obj_ll` or `obj_lower_limit`
>   * `obj_ul` or `obj_upper_limit`
>   * `it_lim` or `iteration_limit`
>   * `tm_lim` or `time_limit`
>   * `out_frq` or `output_frequency`
>   * `out_dly` or `output_delay`
>   * `presolve`
>
> Feel free to suggest better names, or that we stick with only the GLPK
> names, etc.
>
> '''Apply''':
>   * [attachment:trac_12736_more_solver_options_for_glpk.patch]
>   * [attachment:trac_12736.patch]

New description:

 Several requests for solver options to use as parameters for GLPK prompt
 us to allow the user to set quite a few parameters.

 In addition, the name for the solver parameter in ticket #12309
 (`preprocessing`) isn't very accurate (we didn't think it through
 carefully enough at the time) so that option will change, too.

 I propose to change/enable the following solver options. See the GLPK
 documentation for details on each option, and note that most have two
 names: one to correspond to GLPK, one for legibility.

 * glpk's solver
   * default is `glp_intopt`, as at present
   * `simplex_first`: setting this to `True` makes the solver invoke
 `glp_simplex` before `glp_intopt`
     * useful to avoid problems in glpk
     * '''replaces''' current `preprocessing` parameter
   * `simplex_only`: setting this to `True makes the solver invoke
 `glp_simplex` '''instead''' of `glp_intopt`

 * glpk's `intopt` solver
   * `msg_level` or `verbosity`
   * `br_tech` or `branching`
   * `bt_tech` or `backtracking`
   * `pp_tech` or `preprocessing`
   * `fp_heur` or `feasibility_pump`
   * `gmi_cuts` or `gomory_cuts`
   * `mir_cuts` or `mixed_int_rounding_cuts`
   * `cov_cuts` or `mixed_cover_cuts`
   * `clq_cuts` or `clique_cuts`
   * `tol_int` or `absolute_tolerance`
   * `tol_obj` or `relative_tolerance`
   * `mip_gap` or `mip_gap_tolerance`
   * `tm_lim` or `time_limit`
   * `out_freq` or `output_frequency`
   * `presolve` or `mip_presolver`
   * `binarize`

 * glpk's `simplex` solver
   * `msg_level` or `verbosity`
   * `meth` or `primal_v_dual`
   * `pricing`
   * `r_test` or `ratio_test`
   * `tol_bnd` or `tolerance_primal`
   * `tol_dj` or `tolerance_dual`
   * `tol_piv` or `tolerance_pivot`
   * `obj_ll` or `obj_lower_limit`
   * `obj_ul` or `obj_upper_limit`
   * `it_lim` or `iteration_limit`
   * `tm_lim` or `time_limit`
   * `out_frq` or `output_frequency`
   * `out_dly` or `output_delay`
   * `presolve`

 Feel free to suggest better names, or that we stick with only the GLPK
 names, etc.

 '''Apply''':
   * [attachment:trac_12736_more_solver_options_for_glpk.patch]
   * [attachment:trac_12736.patch]

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12736#comment:35>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to