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.
_______________________________________________
Help-glpk mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/help-glpk