help-glpk
[Top][All Lists]
Advanced

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

[Help-glpk] lp/mip preprocessor api


From: Andrew Makhorin
Subject: [Help-glpk] lp/mip preprocessor api
Date: Sat, 02 Dec 2017 17:57:48 +0300

Currently the LP/MIP preprocessor is used internally by glp_simplex,
glp_interior, and glp_intopt. However, I think it would be reasonable
to make the LP/MIP preprocessor available to the user on API level.
Please see below the API routines I plan to include in the package.

Any comments/suggestions are appreciated.

Thank you,

Andrew Makhorin

------
A crude scheme of using the preprocessor routines on API level is the
following.

L1:   /* allocate preprocessor (PP) workspace */
      npp = glp_npp_alloc_wksp(...);

L2:   /* load original problem instance into PP workspace */
      glp_npp_load_prob(npp, P, ...);

L3:   /* perform preprocessing */
      call one or more specific preprocessor routines;

L4:   /* obtain resulting problem instance */
      Q = glp_npp_build_prob(npp, ...);

L5:   /* solve resulting problem instance */
      glp_simplex / glp_interior / glp_intopt (Q, ...);

L6:   /* load solution to resulting problem instance into PP wksp */
      glp_npp_load_sol(npp, Q, ...);

L7:   /* obtain solution to original problem instance from PP wksp */
      glp_npp_recover_sol(npp, P, ...);

L8:   /* free PP workspace */
      glp_npp_free_wksp(npp);

Steps L1, L2, and L8 are performed only once. Steps L3, ..., L7 can be
performed many times, if necessary.





reply via email to

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