alpar@9: Fri Sep 09 12:00:00 2011 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.47 (32:0:32) has been released
alpar@9: 
alpar@9:         * src/glpapi20.c
alpar@9:         New API routine glp_infeas1 to solve 0-1 feasibility problem
alpar@9:         was added and documented (see doc/cnfsat.pdf).
alpar@9: 
alpar@9:         * src/glpnpp06.c
alpar@9:         Some new preprocessor routines for SAT-CNF encoding, which are
alpar@9:         used by the routine glp_intfeas1, were added.
alpar@9: 
alpar@9:         * src/glpnpp.h
alpar@9:         The header was modified due to additions.
alpar@9: 
alpar@9:         * src/glpapi21.c
alpar@9:         The glpsol solver was modified to bypass model postprocessing
alpar@9:         if the solution reported is neither optimal nor feasible.
alpar@9: 
alpar@9:         * src/glpapi21.c
alpar@9:         New glpsol options (--minisat and --objbnd) were added.
alpar@9: 
alpar@9:         * examples/pbn/*.*
alpar@9:         The paint-by-numbers puzzle model (pbn.mod) was modified to
alpar@9:         print solution in PostScript format and to check for multiple
alpar@9:         solutions. Some benchmark examples from <webpbn.com> encoded
alpar@9:         in MathProg were included in the distribution. For more details
alpar@9:         see examples/pbn/README and examples/pbn/pbn.pdf.
alpar@9: 
alpar@9:         * examples/Makefile.am
alpar@9:         A minor bug was fixed to correctly build glpk in a separate
alpar@9:         directory. Thanks to Marco Atzeri <marco.atzeri@gmail.com> for
alpar@9:         bug report.
alpar@9: 
alpar@9: Tue Aug 09 12:00:00 2011 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.46 (31:0:31) has been released
alpar@9: 
alpar@9:         * src/glpk.h, src/Makefile
alpar@9:         glpk.h was relocated from 'include' to 'src', and 'include'
alpar@9:         subdir was removed; src/Makefile.am was changed appropriately.
alpar@9: 
alpar@9:         * src/zlib/*.*
alpar@9:         zlib general purpose compression library, version 1.2.5,
alpar@9:         was ANSIfied and modified according to GLPK requirements and
alpar@9:         included in the distribution as an external software module.
alpar@9: 
alpar@9:         For details see src/zlib/README.
alpar@9: 
alpar@9:         * src/glpdmx.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_read_cnfsat  - read CNF-SAT problem data in DIMACS format
alpar@9:         glp_check_cnfsat - check for CNF-SAT problem instance
alpar@9:         glp_write_cnfsat - write CNF-SAT problem data in DIMACS format
alpar@9: 
alpar@9:         * src/minisat/*.*
alpar@9:         MiniSat, a CNF-SAT solver, version 1.14.1, was ANSIfied and
alpar@9:         modified according to GLPK requirements and included in the
alpar@9:         distribution as an external software module.
alpar@9: 
alpar@9:         For details see minisat/README and minisat/LICENSE.
alpar@9: 
alpar@9:         * src/glpapi19.c
alpar@9:         The API routine glp_minisat1, which is a driver to the MiniSat
alpar@9:         solver, was included in the package.
alpar@9: 
alpar@9:         * doc/satcnf.*
alpar@9:         The document "CNF Satisfiability Problem" was included in the
alpar@9:         package. It is a supplement to the GLPK Reference Manual.
alpar@9: 
alpar@9:         * src/glpapi20.c
alpar@9:         New glpsol options (--cnf, --wcnf, and --minisat) was added.
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         Some bugs were fixed. Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9: Sun Dec 05 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.45 (30:0:30) has been released
alpar@9: 
alpar@9:         * glplpx01.c
alpar@9:         A bug (it_cnt) in routine reset_parms was fixed.
alpar@9:         Thanks to Ali Baharev <ali.baharev@gmail.com> for report.
alpar@9: 
alpar@9:         * glpmpl03.c
alpar@9:         A bug (print "text\") was fixed.
alpar@9:         Thanks to Xypron <xypron.glpk@gmx.de> for report.
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         A precision bug was fixed.
alpar@9:         Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * glpk.tex
alpar@9:         Some typos were corrected.
alpar@9:         Thanks to Robbie Morrison <robbie@actrix.co.nz>.
alpar@9: 
alpar@9: Thu Jun 03 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.44 (29:0:29) has been released
alpar@9: 
alpar@9:         * glpapi14.c glpmpl.h glpmpl01.c glpmpl03.c glpmpl04.c
alpar@9:         Implemented suffixes for variables and constraints.
alpar@9: 
alpar@9:         * glpmpl06.c
alpar@9:         Made changes to allow comment records in CSV files.
alpar@9: 
alpar@9:         * glpapi17.c
alpar@9:         Added and documented new API routine glp_cpp to solve Critical
alpar@9:         Path Problem.
alpar@9: 
alpar@9: Sat Feb 20 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.43 (28:0:28) has been released
alpar@9: 
alpar@9:         * glplib.h, glplib.c, glpenv.h, glpenv.c
alpar@9:         The module glpenv was split into two modules glpenv and glplib.
alpar@9: 
alpar@9:         * glpenv01.c, glpenv03.c, glpenv04.c, glpenv06.c
alpar@9:         The following new API routines were added and documented:
alpar@9:         glp_init_env, glp_free_env, glp_open_tee, glp_close_tee,
alpar@9:         glp_error (macro), glp_difftime.
alpar@9: 
alpar@9:         * glpapi16.c
alpar@9:         New API routine glp_top_sort (topological sorting of ayclic
alpar@9:         digraph) was added and documented.
alpar@9: 
alpar@9:         * glpapi17.c
alpar@9:         A serious bug was fixed in the routine glp_asn_prob_hall.
alpar@9: 
alpar@9:         * glpnpp05.c
alpar@9:         A bug was fixed in the LP/MIP preprocessor (hidden covering
alpar@9:         inequalities).
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         Some improvements were made in the table driver (NULL data).
alpar@9:         Thanks to Xypron <xypron.glpk@gmx.de> for contribution.
alpar@9: 
alpar@9:         * configure.ac
alpar@9:         Changes were made to use .dylib rather than .so under Mac OS.
alpar@9:         Thanks to Noli Sicad <nsicad@gmail.com> for testing
alpar@9: 
alpar@9: Wed Jan 13 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.42 (27:0:27) has been released
alpar@9: 
alpar@9:         * glpapi01.c, glpapi11.c, glpapi12.c, glpdmx.c
alpar@9:         The following new API routines were added and documented:
alpar@9:         glp_check_dup (check for duplicate elements in sparse matrix);
alpar@9:         glp_sort_matrix (sort elements of the constraint matrix);
alpar@9:         glp_read_prob (read problem data in GLPK format);
alpar@9:         glp_write_prob (write problem data in GLPK format);
alpar@9:         glp_analyze_bound (analyze active bound of non-basic variable);
alpar@9:         glp_analyze_coef (analyze obj. coefficient at basic variable);
alpar@9:         glp_print_ranges (print sensitivity analysis report; replaces
alpar@9:         lpx_print_sens_bnds).
alpar@9: 
alpar@9:         * glpapi20.c
alpar@9:         New command-line options were added to glpsol:
alpar@9:         --glp (read problem data in GLPK format);
alpar@9:         --wglp (write problem data in GLPK format);
alpar@9:         --lp (replaces --cpxlp);
alpar@9:         --wlp (replaces --wcpxlp);
alpar@9:         --ranges (print sensitivity analysis report).
alpar@9: 
alpar@9:         * glpapi06.c
alpar@9:         In the routine glp_init_smcp default value of the parameter
alpar@9:         out_frq was changed to 500 (it was 200).
alpar@9: 
alpar@9:         * glpipp.h, glpipp01.c, glpipp02.c
alpar@9:         The old MIP preprocessor module was removed.
alpar@9: 
alpar@9:         * glpapi09.c
alpar@9:         Now the MIP solver uses the new MIP preprocessor (NPP).
alpar@9: 
alpar@9:         * glplpx03.c
alpar@9:         lpx_write_opb was disabled due to replacing IPP with NPP.
alpar@9: 
alpar@9:         * glpnet09.c
alpar@9:         Kellerman's heuristic to cover edges by cliques was added.
alpar@9: 
alpar@9:         * glplib08.c
alpar@9:         Recognition of special filenames "/dev/stdin", "/dev/stdout",
alpar@9:         and "/dev/stderr" was added.
alpar@9: 
alpar@9:         * glpk.tex
alpar@9:         Chapter "Graph and network routines" was carried out from the
alpar@9:         reference manual as a separate document.
alpar@9: 
alpar@9: Mon Dec 21 12:00:00 2009 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.41 (26:0:26) has been released
alpar@9: 
alpar@9:         * glpapi12.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_transform_row (replaces lpx_transform_row);
alpar@9:         glp_transform_col (replaces lpx_transform_col);
alpar@9:         glp_prim_rtest (replaces lpx_prim_ratio_test);
alpar@9:         glp_dual_rtest (replaces lpx_dual_ratio_test).
alpar@9:         Note that values returned by glp_prim_rtest and glp_dual_rtest
alpar@9:         differ from the ones retutned by the deprecated routines.
alpar@9: 
alpar@9:         * glpnpp*.*
alpar@9:         The LP/MIP preprocessor was essentially re-implemented.
alpar@9: 
alpar@9:         * glpios03.c
alpar@9:         The feature to remove inactive cuts from the active subproblem
alpar@9:         was implemented.
alpar@9: 
alpar@9:         * glpios11.c
alpar@9:         The feature processing cuts stored in the cut pool was improved
alpar@9:         (now it uses estimation of objective degradation).
alpar@9: 
alpar@9:         * glpscg.*
alpar@9:         Obsolete implemetation of the conflict graph was removed.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl03.c, glpmpl04.c
alpar@9:         FILE was replaced by XFILE to allow using GLPK I/O routines.
alpar@9: 
alpar@9:         * glpsql.c, examples/sql, doc/tables.tex
alpar@9:         The SQL table driver was changed to allow multiple arguments
alpar@9:         separated by semicolon in SQL statements. Thanks to Xypron
alpar@9:         <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * glpk.h, glpapi14.c
alpar@9:         New API routine glp_time was added (not documented yet).
alpar@9: 
alpar@9:         * glpapi20.c
alpar@9:         Two new options were added to glpsol: --seed value (initialize
alpar@9:         pseudo-random number generator used in MathProg model with
alpar@9:         specified seed value), and --ini filename (use as initial basis
alpar@9:         previously saved with -w option).
alpar@9: 
alpar@9:         * examples/xyacfs.mod
alpar@9:         Thanks to Nigel Galloway <nigel_galloway@operamail.com> for
alpar@9:         contribution.
alpar@9: 
alpar@9:         * examples/dbf/*.*
alpar@9:         Thanks to Noli Sicad <nsicad@gmail.com> for contribution.
alpar@9: 
alpar@9:         * w32/*.*, w64/*.*
alpar@9:         Scripts to build GLPK with Microsoft Visual Studio 2010 were
alpar@9:         added. Thanks to Xypron <xypron.glpk@gmx.de> for contribution
alpar@9:         and testing.
alpar@9: 
alpar@9: Tue Nov 03 12:00:00 2009 Andrew Makhorin <mao@gnu.org>
alpar@9: 
alpar@9:         * GLPK 4.40 (25:0:25) has been released
alpar@9: 
alpar@9:         * glpdmx.c
alpar@9:         Two new API routines were added:
alpar@9:         glp_read_ccdata (read graph in DIMACS clique/coloring format);
alpar@9:         glp_write_ccdata (write graph in DIMACS clique/coloring format).
alpar@9:         Also an example file examples/sample.col was added.
alpar@9: 
alpar@9:         * glpapi19.c, glpnet08.c
alpar@9:         New API routine glp_wclique_exact was added. It is intended to
alpar@9:         find a maximum weight clique with the exact algorithm developed
alpar@9:         by Prof. P. Ostergard.
alpar@9: 
alpar@9:         * glpnpp02.c
alpar@9:         A bug was fixed in the LP preprocessor (routine npp_empty_col).
alpar@9:         Thanks to Stefan Vigerske <stefan@math.hu-berlin.de> for the
alpar@9:         bug report.
alpar@9: 
alpar@9:         * glpios10.c
alpar@9:         A bug was fixed and some improvements were made in the FPUMP
alpar@9:         heuristic module. Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * glpapi12.c
alpar@9:         A bug was fixed in the API routine glp_warm_up (dual
alpar@9:         feasibility test was incorrect in maximization case). Thanks to
alpar@9:         Uday Venkatadri <Uday.Venkatadri@dal.ca> for the bug report.
alpar@9: 
alpar@9:         * glpapi16.c
alpar@9:         Two new API routines were added:
alpar@9:         glp_del_vertices (remove vertices from graph);
alpar@9:         glp_del_arc (remove arc from graph).
alpar@9: 
alpar@9:         * glpios09.c
alpar@9:         The hybrid pseudocost branching heuristic was included in the
alpar@9:         MIP solver. It is available on API level (iocp.br_tech should
alpar@9:         be set to GLP_BR_PCH) and in the stand-alone solver glpsol
alpar@9:         (via the command-line option --pcost). This heuristic may be
alpar@9:         useful on solving hard MIP instances.
alpar@9: 
alpar@9:         * glpios03.c
alpar@9:         The branching heuristic by Driebeck and Tomlin (used in the
alpar@9:         MIP solver by default) was changed to switch to branching on
alpar@9:         most fractional variable if an lower bound of degradation of
alpar@9:         the objective is close to zero for all branching candidates.
alpar@9: 
alpar@9: Sun Jul 26 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.39 (24:0:24) has been released
alpar@9: 
alpar@9:         * glpsdf.c
alpar@9:         New API routines to read plain data files were added.
alpar@9: 
alpar@9:         * glpcpx.h, glpini.h, glpscl.h
alpar@9:         These headers were removed.
alpar@9: 
alpar@9:         * glpcpx.c
alpar@9:         API routines glp_read_lp and glp_write_lp to read/write files
alpar@9:         in CPLEX LP format were re-implemented. Now glp_write_lp
alpar@9:         correctly writes double-bounded (ranged) rows by introducing
alpar@9:         slack variables rather than by duplicating the rows. The data
alpar@9:         structure glp_cpxcp and routine glp_init_cpxcp were added.
alpar@9: 
alpar@9:         * amd/*
alpar@9:         The 'xfree(NULL)' bug was fixed in the AMD routines. Thanks to
alpar@9:         Niels Klitgord <niels@bu.edu> for the bug report.
alpar@9: 
alpar@9:         * glpapi16.c
alpar@9:         New API routines glp_set_vertex_name, glp_create_v_index,
alpar@9:         glp_find_vertex, and glp_delete_v_index were added.
alpar@9: 
alpar@9:         * glpdmx.c
alpar@9:         New API routines glp_read_asnprob, glp_write_asnprob,
alpar@9:         glp_read_ccformat, and glp_write_ccformat were added (the two
alpar@9:         latter routines are not documented yet).
alpar@9: 
alpar@9:         * glpapi18.c
alpar@9:         New API routines glp_check_asnprob, glp_asnprob_lp,
alpar@9:         glp_asnprob_okalg, and glp_asnprob_hall were added.
alpar@9: 
alpar@9:         * glpini01.c, glpini02.c
alpar@9:         The message "Crashing..." was changed to "Constructing initial
alpar@9:         basis..." due to suggestion by Thomas Kahle <tom111@gmx.de>.
alpar@9: 
alpar@9:         * glpapi14.c
alpar@9:         New API routines glp_printf, glp_vprintf, glp_malloc,
alpar@9:         glp_calloc, glp_free, and glp_assert were added.
alpar@9: 
alpar@9:         * glplpp.h, glplpp01.c, glplpp02.c
alpar@9:         Old LP presolver routines were removed. Now glp_simplex uses
alpar@9:         new preprocessing routines (see glpnpp).
alpar@9: 
alpar@9:         * glpapi12.c
alpar@9:         New API routine glp_warm_up was added; it replaces the routine
alpar@9:         lpx_warm_up.
alpar@9: 
alpar@9: Sat May 02 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.38 (23:0:23) has been released
alpar@9: 
alpar@9:         * glpmps.c
alpar@9:         API routines to read/write MPS files were re-implemented.
alpar@9: 
alpar@9:         * glpspx02.c
alpar@9:         Some improvements were made in the dual simplex routine.
alpar@9: 
alpar@9:         * glpk.h
alpar@9:         New structure glp_iptcp was added.
alpar@9: 
alpar@9:         * glpnpp.h, glpnpp01.c, glpnpp02.c
alpar@9:         New LP/MIP preprocessor. Currently it includes only some basic
alpar@9:         routines and used only in the interior-point solver.
alpar@9: 
alpar@9:         * glpapi08.c
alpar@9:         API routine glp_interior was replaced by an improved version
alpar@9:         (new LP/MIP preprocessor, new ordering algorithms).
alpar@9: 
alpar@9:         New API routine glp_init_iptcp was added.
alpar@9: 
alpar@9:         API routine glp_ipt_status may return two new statuses due to
alpar@9:         changes in glp_interior.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         New command-line options were added (ordering algorithm used in
alpar@9:         the interior-point solver).
alpar@9: 
alpar@9:         * amd/*.*, colamd/*.*
alpar@9:         Two external software modules AMD and COLAMD/SYMAMD used in the
alpar@9:         interior-point solver were included in the distribution.
alpar@9: 
alpar@9:         For details see amd/README and colamd/README.
alpar@9: 
alpar@9:         * glpnet03.c, glpnet04.c, glpnet05.c
alpar@9:         A minor bug was fixed (_G => G_). Thanks to Nelson H. F. Beebe
alpar@9:         <beebe@math.utah.edu> for bug report.
alpar@9: 
alpar@9: Sun Mar 29 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.37 (22:0:22) has been released
alpar@9: 
alpar@9:         * glpk.h
alpar@9:         iocp.fp_heur was added to enable/disable fpump heuristic.
alpar@9: 
alpar@9:         * glpios10.c
alpar@9:         ios_feas_pump was added (feasibility pump heuristic).
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         --fpump command-line option was added.
alpar@9: 
alpar@9:         * glpsds.c
alpar@9:         Plain data set routines were added to facilitate reading plain
alpar@9:         data in application programs. Currently these routines are not
alpar@9:         in API, though declared in glpk.h.
alpar@9: 
alpar@9:         * glpapi08.c
alpar@9:         A bug was fixed in the internal routine restore. (Due to this
alpar@9:         bug dual solution components were computed incorrectly if the
alpar@9:         problem was scaled.)
alpar@9: 
alpar@9:         * glpapi10.c, glpapi11.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_print_sol (replaces lpx_print_sol);
alpar@9:         glp_print_ipt (replaces lpx_print_ips);
alpar@9:         glp_print_mip (replaces lpx_print_mip);
alpar@9:         _glp_check_kkt (replaces lpx_check_kkt, lpx_check_int).
alpar@9:         Now the routine lpx_print_prob (deprecated) is equivalent to
alpar@9:         the routine glp_write_lp.
alpar@9: 
alpar@9:         * glpapi18.c, glpapi19.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_read_graph (read graph from plain text file);
alpar@9:         glp_write_graph (write graph to plain text file);
alpar@9:         glp_weak_comp (find all weakly connected components);
alpar@9:         glp_strong_comp (find all strongly connected components).
alpar@9: 
alpar@9:         * configure.ac, Makefile.am
alpar@9:         Changes were made: (a) to allow using autoreconf/autoheader;
alpar@9:         (b) to allow building glpk in a directory other than its source
alpar@9:         directory. Thanks to Marco Atzeri <marco_atzeri@yahoo.it> for
alpar@9:         bug report.
alpar@9: 
alpar@9:         * examples/shiftcover.mod
alpar@9:         An example model in MathProg was added.
alpar@9:         Thanks to Larry D'Agostino <Larry.D'Agostino@gmacrescap.com>
alpar@9:         for contribution.
alpar@9: 
alpar@9: Fri Feb 06 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.36 (21:0:21) has been released
alpar@9: 
alpar@9:         * glpnet06.c, glpnet07.c, glpapi19.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_mincost_okalg     find minimum-cost flow with out-of-kilter
alpar@9:                               algorithm
alpar@9:         glp_maxflow_ffalg     find maximal flow with Ford-Fulkerson
alpar@9:                               algorithm
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         Two new command-line options were added:
alpar@9:         --mincost             read min-cost flow data in DIMACS format
alpar@9:         --maxflow             read maximum flow data in DIMACS format
alpar@9: 
alpar@9:         * doc/glpk.*
alpar@9:         New edition of the reference manual was included.
alpar@9: 
alpar@9:         * glpk.h
alpar@9:         Duplicate symbols were removed to allow using swig.
alpar@9:         Thanks to Kelly Westbrooks <kellywestbrooks@yahoo.com> and
alpar@9:         Nigel Galloway <nigel_galloway@operamail.com> for suggestion.
alpar@9: 
alpar@9:         * glpcpx.c
alpar@9:         A minor defect was fixed in the routine glp_write_lp.
alpar@9:         Thanks to Sebastien Briais <sbriais@free.fr> for bug report.
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         A minor bug was fixed. Thanks to Xypron <xypron.glpk@gmx.de>
alpar@9:         for patch.
alpar@9: 
alpar@9:         * examples/hashi.mod, examples/shikaku.mod
alpar@9:         Two example models in MathProg were added. Thanks to Sebastian
alpar@9:         Nowozin <nowozin@gmail.com> for contribution.
alpar@9: 
alpar@9:         * examples/qfit.mod, examples/yacfs.mod
alpar@9:         Two example models in MathProg were added. Thanks to Nigel
alpar@9:         Galloway <nigel_galloway@operamail.com> for contribution.
alpar@9: 
alpar@9: Fri Jan 09 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.35 (20:0:20) has been released
alpar@9: 
alpar@9:         * glpk.h, glpapi.c, glpnet.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_create_graph      create graph
alpar@9:         glp_set_graph_name    assign (change) graph name
alpar@9:         glp_add_vertices      add new vertices to graph
alpar@9:         glp_add_arc           add new arc to graph
alpar@9:         glp_erase_graph       erase graph content
alpar@9:         glp_delete_graph      delete graph
alpar@9:         glp_read_mincost      read minimum cost flow problem data in
alpar@9:                               DIMACS format
alpar@9:         glp_write_mincost     write minimum cost flow problem data in
alpar@9:                               DIMACS format
alpar@9:         glp_mincost_lp        convert minimum cost flow problem to LP
alpar@9:         glp_netgen            Klingman's network problem generator
alpar@9:         glp_gridgen           grid-like network problem generator
alpar@9:         glp_read_maxflow      read maximum flow problem data in DIMACS
alpar@9:                               format
alpar@9:         glp_write_maxflow     write maximum flow problem data in DIMACS
alpar@9:                               format
alpar@9:         glp_maxflow_lp        convert maximum flow problem to LP
alpar@9:         glp_rmfgen            Goldfarb's maximum flow problem generator
alpar@9: 
alpar@9:         * doc/glpk.*
alpar@9:         New edition of the reference manual was included.
alpar@9: 
alpar@9:         * examples/sample.min, examples/sample.max
alpar@9:         Two example data files in DIMACS format were added.
alpar@9: 
alpar@9:         * glplib04.c
alpar@9:         The statement "if (c = '\n') fflush(stdout)" was added to the
alpar@9:         internal routine xputc to provide "real-time" terminal output.
alpar@9:         Thanks to Luiz Bettoni <bettoni@cpgei.ct.utfpr.edu.br> for
alpar@9:         suggestion.
alpar@9: 
alpar@9:         * glpmpl05.c
alpar@9:         A minor bug was fixed in the internal routine mpl_fn_time2str.
alpar@9:         Thanks to Stefan Vigerske <stefan@vigerske.de> for bug report.
alpar@9: 
alpar@9:         * w32/makefile, w64/makefile
alpar@9:         The flag -O2 (/O2) was added to some makefiles.
alpar@9: 
alpar@9: Thu Dec 04 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.34 (19:0:19) has been released
alpar@9: 
alpar@9:         * src/glpios03.c
alpar@9:         A bug was fixed in the internal routine branch_on. Thanks to
alpar@9:         Nigel Galloway <nigel_galloway@operamail.com> for bug report.
alpar@9: 
alpar@9:         * src/glpmpl05.c
alpar@9:         Three new MathProg functions were included:
alpar@9:         gmtime    obtaining current calendar time
alpar@9:         str2time  converting character string to calendar time
alpar@9:         time2str  converting calendar time to character string
alpar@9:         Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * doc/glpk.*, doc/gmpl.*
alpar@9:         A new edition of the GLPK reference manual and GNU MathProg
alpar@9:         language description were included.
alpar@9: 
alpar@9: Thu Oct 30 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.33 (18:0:18) has been released
alpar@9: 
alpar@9:         * glpapi*.*
alpar@9:         The following new API routines were added:
alpar@9:         glp_copy_prob         copy problem object content
alpar@9:         glp_exact             solve LP in exact arithmetic
alpar@9:                               (makes lpx_exact deprecated)
alpar@9:         glp_get_unbnd_ray     determine variable causing unboundedness
alpar@9:                               (makes lpx_get_ray_info deprecated)
alpar@9:         glp_interior          solve LP with interior-point method
alpar@9:                               (makes lpx_interior deprecated)
alpar@9: 
alpar@9:         * glpapi*.*
alpar@9:         The following new API routines for processing models written in
alpar@9:         the GNU Mathprog language were added to the package:
alpar@9:         glp_mpl_alloc_wksp    allocate the translator workspace
alpar@9:         glp_mpl_read_model    read and translate model section
alpar@9:         glp_mpl_read_data     read and translate data section
alpar@9:         glp_mpl_generate      generate the model
alpar@9:         glp_mpl_build_prob    build LP/MIP instance from the model
alpar@9:         glp_mpl_postsolve     postsolve the model
alpar@9:         glp_mpl_free_wksp     deallocate the translator workspace
alpar@9:         (These routines make lpx_read_model deprecated.)
alpar@9: 
alpar@9:         * src/glpapi17.c, examples/glpsol.c
alpar@9:         The stand-alone solver glpsol was re-implemented with new API
alpar@9:         routines.
alpar@9: 
alpar@9:         * src/glpsql.c
alpar@9:         Some bugs were fixed in the SQL table driver. Thanks to Xypron
alpar@9:         <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * examples/cplex/*.*
alpar@9:         A crude implementation of CPLEX-like interface to GLPK API was
alpar@9:         added to the package. See examples/cplex/README.
alpar@9: 
alpar@9: Fri Oct 03 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.32 (17:0:17) has been released
alpar@9: 
alpar@9:         * glpmpl01.c
alpar@9:         A bug was fixed. Due to this bug iterated expressions having
alpar@9:         an indexing expression whose dummy indices are bound to some
alpar@9:         values, i.e. like sum{(i+1,j,k-1) in E} x[i,j,k] are evaluated
alpar@9:         incorrectly. Namely, current value of such expressions is not
alpar@9:         invalidated when corresponding dummy indices (like i and k in
alpar@9:         the example above) are changed, that erroneously results in the
alpar@9:         same value evaluated for the first time.
alpar@9: 
alpar@9:         * glpios03.c
alpar@9:         Euclidean reduction of the local objective bound was added in
alpar@9:         the routine glpios03.c.
alpar@9: 
alpar@9:         * glpapi11.c
alpar@9:         The following new branch-and-cut API routines were added:
alpar@9:         glp_ios_row_attr      determine additional row attributes;
alpar@9:         glp_ios_pool_size     determine current size of the cut pool;
alpar@9:         glp_ios_add_row       add constraint to the cut pool;
alpar@9:         glp_ios_del_row       delete constraint from the cut pool;
alpar@9:         glp_ios_clear_pool    delete all constraints from the cut pool.
alpar@9: 
alpar@9:         * glpapi08.c
alpar@9:         The following new features were included in the branch-and-cut
alpar@9:         solver (the API routine glp_intopt):
alpar@9:         MIP presolver;
alpar@9:         mixed cover cut generator;
alpar@9:         clique cut generator.
alpar@9:         Due to the MIP presolver glp_intopt may additionally return
alpar@9:         GLP_ENOPFS and GLP_ENODFS, if primal or dual infeasibility of
alpar@9:         LP relaxation is detected by the presolver. Also the return
alpar@9:         code GLP_EMIPGAP was introduced to correctly indicate that the
alpar@9:         mip gap tolerance is reached.
alpar@9: 
alpar@9:         * glplpx01.c
alpar@9:         Now the obsolete API routines lpx_integer and lpx_intopt are
alpar@9:         completely superseded by the API routine glp_intopt that makes
alpar@9:         them deprecated.
alpar@9: 
alpar@9:         * glpmpl05.c
alpar@9:         Now the table driver name "iODBC" can be specified as "ODBC".
alpar@9: 
alpar@9:         * glpmpl03.c
alpar@9:         A bug fixed in the routine free_dca.
alpar@9:         Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         A bug was fixed in the SQL table driver.
alpar@9:         Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9: 
alpar@9:         * examples/glpsol.c
alpar@9:         Changes were made to allow multiple MathProg data files.
alpar@9: 
alpar@9:         * doc/glpk.*
alpar@9:         A new edition of the GLPK reference manual was included.
alpar@9: 
alpar@9:         * doc/tables.*
alpar@9:         A new edition of the supplement "Using data tables in the GNU
alpar@9:         MathProg language" was included.
alpar@9: 
alpar@9: Tue Sep 02 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.31 (16:0:16) has been released
alpar@9: 
alpar@9:         * glpspx.h, glpspx01.c, glpspx02.c, glpapi06.c
alpar@9:         The dual simplex solver (spx_dual_opt) was replaced by a new
alpar@9:         implementation of the two-phase dual simplex method (spx_dual).
alpar@9:         Old simplex method routines (spx_prim_opt, spx_prim_feas, and
alpar@9:         spx_dual_opt) were removed from the package.
alpar@9: 
alpar@9:         * glpk.h, glpscl.h, glpscl.c, glpapi04.c
alpar@9:         New API routine glp_scale_prob was added. It replaces routine
alpar@9:         lpx_scale_prob which is deprecated.
alpar@9: 
alpar@9:         * glpk.h, glpini.h, glpini01.c, glpini02.c, glpapi05.c
alpar@9:         New API routines glp_std_basis, glp_adv_basis, glp_cpx_basis
alpar@9:         were added. They replace routines lpx_std_basis, lpx_adv_basis,
alpar@9:         lpx_cpx_basis which are deprecated.
alpar@9: 
alpar@9:         * glpdmp.c
alpar@9:         8-byte data alignment was added to the module (sufficient for
alpar@9:         both ILP32 and LP64 environments).
alpar@9: 
alpar@9:         * glplib07.c
alpar@9:         16-byte data alignment was added to the module to provide
alpar@9:         compatibility with LP64 environment (8-byte is not sufficient
alpar@9:         due to jmp_buf; thanks to Xypron for investigation).
alpar@9: 
alpar@9:         * glplpx16.c
alpar@9:         New version of the routine lpx_write_pb was added. Thanks to
alpar@9:         Oscar Gustafsson <oscarg@isy.liu.se> for the contribution.
alpar@9: 
alpar@9:         * w32/VC9, w64/VC9
alpar@9:         Makefiles and batch files were added to build GLPK under 32-
alpar@9:         and 64-bit Windows with Microsoft Visual Studio Express 2008.
alpar@9:         Thanks to Heinrich Schuchardt <heinrich.schuchardt@gmx.de> for
alpar@9:         the contribution and testing.
alpar@9: 
alpar@9:         * w32/DM, w32/OWC
alpar@9:         Makefiles and batch files were added to build GLPK with Digital
alpar@9:         Mars C/C++ 8.50 and Open Watcom C/C++ 1.6 (32-bit Windows).
alpar@9: 
alpar@9: Wed Aug 13 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.30 (15:0:15) has been released
alpar@9: 
alpar@9:         * glpspx.h, glpspx03.c, glpapi06.c
alpar@9:         The primal simplex solver (spx_prim_opt, spx_prim_feas) was
alpar@9:         replaced by a new implementation (spx_primal), which currently
alpar@9:         provides the same features as the old version.
alpar@9: 
alpar@9:         * glpmpl01.c, glpmpl03.c
alpar@9:         Some changes were made in the MathProg translator to allow <,
alpar@9:         <=, >=, and > on comparing symbolic values. Thanks to Heinrich
alpar@9:         Schuchardt <heinrich.schuchardt@gmx.de> for patches.
alpar@9: 
alpar@9:         * glplpx10.c
alpar@9:         Internal routine set_d_eps in the exact LP solver was changed
alpar@9:         to prevent approximation errors in case of integral data.
alpar@9:         Thanks to Markus Pilz <pilz@cs.uni-bonn.de> for bug report.
alpar@9: 
alpar@9: XXX XXX XX 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.29 (14:0:14) has been released
alpar@9: 
alpar@9:         * configure.ac
alpar@9:         The configure script was changed to disable optional features
alpar@9:         by default. For details see file INSTALL.
alpar@9: 
alpar@9:         * glpipp02.c
alpar@9:         A bug was fixed in the internal routine reduce_bounds. Thanks
alpar@9:         to Anne-Laurence Putz <anne-laurence.putz@eurodecision.com> for
alpar@9:         the bug report.
alpar@9: 
alpar@9:         * glpapi01.c
alpar@9:         New API routine glp_erase_prob was added.
alpar@9: 
alpar@9:         * glpapi13.c
alpar@9:         New API routines glp_read_mps and glp_write_mps were added.
alpar@9:         They replace API routines lpx_read_mps, lpx_read_freemps,
alpar@9:         lpx_write_mps, and lpx_write_freemps, which are deprecated.
alpar@9: 
alpar@9:         * glpapi14.c
alpar@9:         New API routines glp_read_lp and glp_write_lp were added. They
alpar@9:         replace API routines lpx_read_cpxlp and lpx_write_cpxlp, which
alpar@9:         are deprecated.
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         Minor bug was fixed. Thanks to Xypron <xypron.glpk@gmx.de> for
alpar@9:         the bug report.
alpar@9: 
alpar@9: Tue Mar 25 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.28 (13:0:13) has been released
alpar@9: 
alpar@9:         * glplib.h, glplib.c
alpar@9:         Three wrapper routines xdlopen, xdlsym, and xdlclose, which
alpar@9:         provide the shared library support, were added. A particular
alpar@9:         version of these routines depends on the option --enable-dl
alpar@9:         passed to the configure script (see file INSTALL for details).
alpar@9:         Thanks to Rafael Laboissiere <rafael@debian.org> for useful
alpar@9:         advices concerning the shared library support.
alpar@9: 
alpar@9:         * glpsql.c
alpar@9:         A static linking to iODBC and MySQL libraries used in the
alpar@9:         MathProg table drivers was replaced by a dynamic linking to
alpar@9:         corresponding shared libraries.
alpar@9:         Many thanks to Heinrich Schuchardt <heinrich.schuchardt@gmx.de>
alpar@9:         for the contribution and to Vijay Patil <vijay.patil@gmail.com>
alpar@9:         for testing this feature under Windows XP.
alpar@9: 
alpar@9:         * glpgmp.h, glpgmp.c
alpar@9:         A bug (which appeared only on 64-bit platforms) was fixed.
alpar@9:         Thanks to Axel Simon <Axel.Simon@ens.fr> for the bug report.
alpar@9: 
alpar@9:         * glpapi.c
alpar@9:         A bug was fixed in the api routine glp_add_cols. (If the basis
alpar@9:         is valid, adding column keeps it valid, however, col->bind was
alpar@9:         set to -1 rather to 0.)
alpar@9:         Thanks to Cedric[FR] <fox2113@wanadoo.fr> for the bug report.
alpar@9: 
alpar@9:         * glplib.c
alpar@9:         64-bit unsigned int type glp_ulong and corresponding routines
alpar@9:         were replaced by 64-bit signed int type xlong_t.
alpar@9: 
alpar@9:         * glpk.h, glpapi.c
alpar@9:         The type glp_ulong was replaced by glp_long. This affects only
alpar@9:         the api routine glp_mem_usage.
alpar@9: 
alpar@9:         * glplib.c
alpar@9:         Compressed data file support was added. This feature requires
alpar@9:         the zlib data compression libraries and allows compressing and
alpar@9:         decompressing .gz files "on the fly".
alpar@9: 
alpar@9:         * glpcli.h, glpcli.c
alpar@9:         Command-line interface routines were added. (This feature is
alpar@9:         incomplete so far.)
alpar@9: 
alpar@9: Sun Mar 02 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.27 (12:0:12) has been released
alpar@9: 
alpar@9:         * glpsql.h, glpsql.c
alpar@9:         Two MathProg table drivers for iODBC and MySQL contributed by
alpar@9:         Heinrich Schuchardt <heinrich.schuchardt@gmx.de> were added to
alpar@9:         the package.
alpar@9: 
alpar@9:         * glpmpl05.c
alpar@9:         Mathprog table driver for xBASE was added to the package.
alpar@9: 
alpar@9:         * glpmpl03.c
alpar@9:         A minor was fixed in the MathProg translator (if some field
alpar@9:         specified in the table statement is missing in corresponding
alpar@9:         input table, the bug causes abnormal termination). Thanks to
alpar@9:         Heinrich Schuchardt <heinrich.schuchardt@gmx.de> for the bug
alpar@9:         report.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl.c
alpar@9:         STRING data type was replaced by plain character strings.
alpar@9: 
alpar@9: Sun Feb 17 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.26 (11:0:11) has been released
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl01.c, glpmpl03.c, glpmpl05.c
alpar@9:         The table statement was implemented. Description of this new
alpar@9:         feature is given in file doc/tables.txt.
alpar@9: 
alpar@9:         * glpios03.c
alpar@9:         A bug causing zero divide error on computing euclidean norm of
alpar@9:         the cut coefficient vector was fixed.
alpar@9: 
alpar@9: Wed Dec 19 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.25 (10:0:10) has been released
alpar@9: 
alpar@9:         * glpapi10.c
alpar@9:         Routines lpx_eval_tab_row and lpx_eval_tab_col were replaced by
alpar@9:         glp_eval_tab_row and glp_eval_tab_col.
alpar@9: 
alpar@9:         * glpios03.c, glpios05.c
alpar@9:         Gomory's mixed integer cuts were implemented.
alpar@9: 
alpar@9:         * glpscs.h, glpscs.c
alpar@9:         Segmented character string routines are no longer used and were
alpar@9:         removed from the package.
alpar@9: 
alpar@9: Wed Nov 21 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.24 (9:0:9) has been released
alpar@9: 
alpar@9:         * src/glplpx16.c
alpar@9:         A bug was fixed in the routine lpx_write_cpxlp. If a variable
alpar@9:         x has upper bound and no lower bound, it should appear in the
alpar@9:         bounds section as "-inf <= x <= u", not as "x <= u". Thanks to
alpar@9:         Enric Rodriguez <erodri@lsi.upc.edu> for the bug report.
alpar@9: 
alpar@9:         * src/glpios03.c, src/glpios04.c, src/glpios05.c
alpar@9:         MIR (mixed integer rounding) cuts were implemented.
alpar@9: 
alpar@9: Sun Oct 28 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.23 (8:0:8) has been released
alpar@9: 
alpar@9:         * src/glplib05.c, configure.ac
alpar@9:         Check for vsnprintf was added.
alpar@9: 
alpar@9:         * include/glppds.h, src/glppds.c
alpar@9:         A module to scan plain data was added.
alpar@9: 
alpar@9:         * src/glpapi09.c
alpar@9:         The following new API routines were added:
alpar@9:         glp_read_sol    read basic solution from text file;
alpar@9:         glp_write_sol   write basic solution to text file;
alpar@9:         glp_read_ipt    read interior-point solution from text file;
alpar@9:         glp_write_ipt   write interior-point solution to text file;
alpar@9:         glp_read_mip    read MIP solution from text file;
alpar@9:         glp_write_mip   write MIP solution to text file.
alpar@9: 
alpar@9:         * src/glpapi12.c
alpar@9:         Advanced API routine glp_free_env was added.
alpar@9: 
alpar@9:         * examples/glpsol.c
alpar@9:         The following three command-line options were added:
alpar@9:         --mipgap tol    set relative MIP gap tolerance
alpar@9:         -r filename     read solution from filename
alpar@9:         -w filename     write solution to filename
alpar@9: 
alpar@9: Wed Sep 19 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.22 (7:0:7) has been released
alpar@9: 
alpar@9:         * src/glpios02.c
alpar@9:         A bug was fixed in the MIP preprocessor (ios_preprocess_node).
alpar@9:         Thanks to Roberto Bagnara <bagnara@cs.unipr.it> (Department of
alpar@9:         Mathematics, University of Parma, Italy) for the bug report.
alpar@9: 
alpar@9:         * src/glpios02.c
alpar@9:         A bug was fixed in the MIP preprocessor (col_implied_bounds),
alpar@9:         due to which constraint coefficients with small magnitude could
alpar@9:         lead to wrong implied bounds of structural variables.
alpar@9: 
alpar@9:         * src/glpipp02.c
alpar@9:         A similar bug was fixed in the routine reduce_bounds.
alpar@9: 
alpar@9:         * src/glpapi01.c
alpar@9:         A bug was fixed in the routines glp_set_mat_row and
alpar@9:         glp_set_mat_col. (The bug appeared due to incorrect removing
alpar@9:         zero elements from the row/column lists.)
alpar@9: 
alpar@9:         * src/glplpx14.c
alpar@9:         A bug was fixed in the API routines lpx_read_mps and
alpar@9:         lpx_read_freemps, due to which bounds of type LI specified in
alpar@9:         BOUNDS section were incorrectly processed.
alpar@9: 
alpar@9:         * src/glplib05.c
alpar@9:         A call to standard function vsprintf was replaced by a call to
alpar@9:         vsnprintf for security reasons. Many thanks to Peter T. Breuer
alpar@9:         <ptb@inv.it.uc3m.es> and Rafael Laboissiere <rafael@debian.org>.
alpar@9: 
alpar@9: Tue Aug 28 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.21 (6:0:6) has been released
alpar@9: 
alpar@9:         * glpscg.h, glpscg.c
alpar@9:         Routines to maintain sparse cliqued graph were added.
alpar@9: 
alpar@9:         * glpios02.c
alpar@9:         MIP preprocessing routines were added.
alpar@9: 
alpar@9:         * glpk.h, glpios.h, glpios03.c
alpar@9:         New reasons for calling the callback routine were introduced
alpar@9:         in the MIP solver.
alpar@9: 
alpar@9:         * glpapi08.c
alpar@9:         Default backtracking strategy was changed to best local bound.
alpar@9: 
alpar@9:         * glpapi11.c
alpar@9:         New API routine glp_term_out to enable/disable terminal output
alpar@9:         was added.
alpar@9: 
alpar@9:         * glprng.h, glprng02.c
alpar@9:         Two routines to generate uniformly distributed pseudo-random
alpar@9:         floating-point numbers were added.
alpar@9: 
alpar@9: Thu Jul 26 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.20 (5:0:5) has been released
alpar@9: 
alpar@9:         * glpk.h, glpapi08.c
alpar@9:         The routine lpx_integer was replaced by an equivalent routine
alpar@9:         glp_intopt. Also new API routine glp_init_iocp was added.
alpar@9: 
alpar@9:         * glpiet.h, glpiet.c
alpar@9:         Routines implementing the implicit enumeration tree are
alpar@9:         no longer used and therefore were removed from the package.
alpar@9: 
alpar@9:         * glpios.h, glpios01.c, glpios02, glpios03
alpar@9:         Routines implementing the integer optimization suite being
alpar@9:         replaced by a new version were removed from the package.
alpar@9: 
alpar@9:         * glpmip.h, glpmip01.c, glpmip02.c
alpar@9: 
alpar@9:         Routines implementing the B&B method being replaced by a new
alpar@9:         version were removed from the package.
alpar@9: 
alpar@9:         * glpios.h, glpios01.c, glpios02.c
alpar@9: 
alpar@9:         Routines implementing a new version of the integer optimization
alpar@9:         suite (IOS) based on the B&B method were added to the package.
alpar@9: 
alpar@9:         * glpk.h, glpapi10.c
alpar@9:         Branch-and-bound interface routines were added to the package.
alpar@9: 
alpar@9:         * examples/tspsol.c
alpar@9:         The TSP solver based on old version of the integer optimization
alpar@9:         suite is no more supported and was removed from the package.
alpar@9: 
alpar@9:         * glpipp02.c
alpar@9:         An error in the routine reduce_bounds was fixed; thanks to
alpar@9:         Graham Rockwell <bionomicron@gmail.com> for the bug report.
alpar@9: 
alpar@9:         * glpk.latex
alpar@9:         A new edition of the reference manual was included.
alpar@9: 
alpar@9: Thu Jul 05 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.19 (4:0:4) has been released
alpar@9: 
alpar@9:         The principal change is upgrading to GPLv3.
alpar@9: 
alpar@9:         * glpapi01.c
alpar@9:         A serious bug in the routine glp_del_cols was fixed; thanks to
alpar@9:         Cedric[FR] <fox2113@wanadoo.fr> for the bug report. The bug
alpar@9:         appeared because on deleting non-basic columns the basis header
alpar@9:         remained valid, however, contained invalid (old) column ordinal
alpar@9:         numbers.
alpar@9: 
alpar@9:         * glpapi10.c
alpar@9:         A new advanced API routine glp_mem_limit was added.
alpar@9: 
alpar@9:         * glplpx01.c
alpar@9:         The case GLP_EBOUND was added to the routine lpx_simplex.
alpar@9:         Thanks to Cameron Kellough <Cameron.Kellough@sri.com> for the
alpar@9:         bug report.
alpar@9: 
alpar@9:         * glplpx19.c
alpar@9:         An API routine lpx_write_pb to write the problem instance in
alpar@9:         OPB (pseudo boolean) format format was added. Thanks to Oscar
alpar@9:         Gustafsson <oscarg@isy.liu.se> for the contribution.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         Two new options --wpb and --wnpb were added to glpsol to write
alpar@9:         the problem instance in OPB format.
alpar@9: 
alpar@9: Mon Jun 25 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.18 (3:0:3) has been released
alpar@9: 
alpar@9:         * glplib.h
alpar@9:         Type names ulong_t and uldiv_t were changed to glp_ulong and
alpar@9:         glp_uldiv to avoid conflicts with standard type names on some
alpar@9:         platforms. Thanks to Boris Wirtz <Boris.Wirtz@uni-oldenburg.de>
alpar@9:         for the bug report.
alpar@9: 
alpar@9:         * glpbfd.*, glpfhv.*, glplpf.*
alpar@9:         LP basis factorization routines were made tidy.
alpar@9: 
alpar@9:         * glpk.h, glpapi04.c
alpar@9:         The following API routines were added:
alpar@9:         glp_set_rii, glp_set_sjj, glp_get_rii, glp_get_sjj.
alpar@9: 
alpar@9:         * glpk.h, glpapi06.c
alpar@9:         The routine lpx_simplex was replaced by an equivalent routine
alpar@9:         glp_simplex. Also new API routine glp_init_smcp was added.
alpar@9: 
alpar@9:         * glpk.h, glpapi09.c
alpar@9:         The following advanced API routines were added:
alpar@9:         glp_bf_exists, glp_factorize, glp_bf_updated, glp_get_bfcp,
alpar@9:         glp_set_bfcp, glp_get_bhead, glp_get_row_bind, glp_get_col_bind,
alpar@9:         glp_ftran, glp_btran.
alpar@9: 
alpar@9:         * glpk.latex
alpar@9:         A new edition of the reference manual was included.
alpar@9: 
alpar@9:         * examples/dea.mod, examples/food.mod, examples/food2.mod
alpar@9:         Three examples in the MathProg language were added.
alpar@9:         Thanks to Sebastian Nowozin <nowozin@gmail.com>.
alpar@9: 
alpar@9: Sat May 26 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.17 (2:0:2) has been released
alpar@9: 
alpar@9:         * glpdmp.h, glpdmp.c
alpar@9:         Memory pool routines were replaced by a new version.
alpar@9: 
alpar@9:         * glpscs.h, glpscs.c
alpar@9:         Segmented string routines were replaced by a new version.
alpar@9: 
alpar@9:         * glplpx08.c, glplpx09.c
alpar@9:         Now the MIP problem may have no integer columns.
alpar@9: 
alpar@9:         * glpapi01.c
alpar@9:         The routines glp_set_mat_row, glp_set_mat_col, and glp_load_mat
alpar@9:         were modified to allow zero elements (which are not stored in
alpar@9:         the constraint matrix).
alpar@9: 
alpar@9:         * glpscf.h, glpscf.c
alpar@9:         Schur complement factorization routines were implemented.
alpar@9: 
alpar@9:         * glplpf.h, glplpf.c
alpar@9:         LP basis factorization routines based on LU-factorization and
alpar@9:         Schur complement were implemented.
alpar@9: 
alpar@9:         * glplpx02.c, glplpx03.c
alpar@9:         New control parameter LPX_K_BFTYPE was introduced to choose the
alpar@9:         basis factorization type used by the simplex method routines.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         Three new command-line options were added to choose the basis
alpar@9:         factorization type used by the simplex method routines: --luf,
alpar@9:         --cbg, and --cgr.
alpar@9: 
alpar@9:         * glpk.latex
alpar@9:         A new edition of the reference manual was included.
alpar@9: 
alpar@9: Sat May 05 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.16 (1:0:1) has been released
alpar@9: 
alpar@9:         * glpk.h, glpapi.c, glplpx01.c, glplpx02.c
alpar@9:         Names of a number basic api routines were changed and now have
alpar@9:         the prefix 'glp_'. To keep backward compatibility these routines
alpar@9:         are also available via their old names prefixed with 'lpx_'.
alpar@9: 
alpar@9:         * glplpx19.c
alpar@9:         Three new api routines were added: glp_version, glp_term_hook,
alpar@9:         and glp_mem_usage.
alpar@9: 
alpar@9:         * glpk.latex, gmpl.texi
alpar@9:         A new edition of the reference manuals was included.
alpar@9: 
alpar@9:         * lpglpk40.c
alpar@9:         This example program is no longer supported and therefore was
alpar@9:         removed from the package.
alpar@9: 
alpar@9: Sun Feb 18 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.15 (0:0:0) has been released
alpar@9: 
alpar@9:         * configure.ac, Makefile.am
alpar@9:         Autotools specification files were changed to use GNU Libtool
alpar@9:         that allows building the static as well as shared GLPK library.
alpar@9:         Thanks to Rafael Laboissiere <rafael@debian.org>.
alpar@9: 
alpar@9: Mon Feb 05 08:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.14 has been released
alpar@9:         Now GLPK conforms to ILP32, LLP64, and LP64 programming models
alpar@9:         (the latter seems to be the ultimate choice regarding 64-bit
alpar@9:         architectures). Note that GLPK itself is a 32-bit application,
alpar@9:         and the conformity only means that the package works correctly
alpar@9:         on all these arenae. Nevertheless, on 64-bit platforms it is
alpar@9:         possible to use more than 4GB of memory, if necessary.
alpar@9: 
alpar@9:         * Makefile
alpar@9:         Starting from this release only the header glpk.h is needed to
alpar@9:         be installed.
alpar@9: 
alpar@9:         * glplib01.c
alpar@9:         Two routines bigmul and bigdiv which performs multiplication
alpar@9:         and division of unsigned integers of arbitrary precision were
alpar@9:         added.
alpar@9: 
alpar@9:         * glplib02.c
alpar@9:         A set of 64-bit arithmetic routines were added.
alpar@9: 
alpar@9:         * glplib04.c
alpar@9:         Some low-level library routines were improved and renamed.
alpar@9: 
alpar@9:         * glpcfg.h
alpar@9:         The macro GLP_TM_SPEC were introduced to specify a version of
alpar@9:         the time routine depending on the host environment.
alpar@9: 
alpar@9: Mon Nov 13 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.13 has been released
alpar@9: 
alpar@9:         * configure.in
alpar@9:         '-lm' bug was fixed.
alpar@9: 
alpar@9:         * glpbfx.h, glpbfx.c
alpar@9:         Basis factorization interface routines based on exact (bignum)
alpar@9:         arithmetic were implemented.
alpar@9: 
alpar@9:         * glpssx.h, glpssx1.c, glpssx2.c
alpar@9:         Simplex method routines based on exact (bignum) arithmetic were
alpar@9:         implemented.
alpar@9: 
alpar@9:         * glplpx6e.c
alpar@9:         The routine lpx_exact, which is an easy-to-use driver to the
alpar@9:         exact simplex method, was added.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         Two command-line options were added: '--exact' and '--xcheck'.
alpar@9: 
alpar@9: Wed Nov 08 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.12 has been released
alpar@9: 
alpar@9:         * glpcfg.h
alpar@9:         The package configuration file was added.
alpar@9: 
alpar@9:         * glplib2.c
alpar@9:         Alternative version of the routines umalloc, ucalloc, and ufree
alpar@9:         was provided. It does not limit the amount of allocated memory
alpar@9:         to INT_MAX bytes and therefore can be used on platforms where
alpar@9:         sizeof(void *) > sizeof(int). To enable this version one should
alpar@9:         define the preprocessor variable GLP_HUGE_MEM.
alpar@9: 
alpar@9:         * glprng.c
alpar@9:         The routine rng_create_rand was changed to initialize the
alpar@9:         generator using seed = 1, not 0, to conform ISO C requirements.
alpar@9: 
alpar@9:         * glpgmp.h, glpgmp.c
alpar@9:         A set of bignum arithmetic routines implementing operations on
alpar@9:         integers and rationals was added. These routines are compatible
alpar@9:         with the GNU MP library.
alpar@9: 
alpar@9:         NOTE: To attain a much better performance it is recommended to
alpar@9:         use, if possible, the original GNU MP library rather than the
alpar@9:         GLPK version, by defining the preprocessor variable GLP_USE_GMP.
alpar@9: 
alpar@9:         * glplux.h, glplux.c
alpar@9:         A tentative implementation of sparse LU-factorization based on
alpar@9:         exact (bignum) arithmetic was added.
alpar@9: 
alpar@9:         * glpssx.h, glpssx.c
alpar@9:         A tentative implementation of some simplex method routines based
alpar@9:         on exact (bignum) arithmetic was added.
alpar@9: 
alpar@9:         * glplpx6f.c
alpar@9:         A preliminary implementation of the routine lpx_exact_check was
alpar@9:         added. This routine checks the current basis for primal and dual
alpar@9:         feasibility using exact (bignum) arithmetic.
alpar@9: 
alpar@9:         * examples/glpsol.c
alpar@9:         The command-line option '--xcheck' was introduced to check the
alpar@9:         current basis for feasibility using exact (bignum) arithmetic.
alpar@9: 
alpar@9: Tue Jul 25 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.11 has been released.
alpar@9: 
alpar@9:         * include/glpbfi.h, src/glpbfi.c
alpar@9:         Basis factorization interface routines were added.
alpar@9: 
alpar@9:         * include/glpluf.h, src/glpluf1.c
alpar@9:         Hypersparse solution routines were added.
alpar@9: 
alpar@9:         * include/glpinv.h, src/glpinv1.c
alpar@9:         Hypersparse solution routines (fake version) were added.
alpar@9: 
alpar@9:         * include/glpmpl.h, src/glpmpl.c
alpar@9:         Built-in functions card, length, and substr were implemented.
alpar@9:         Output redirection in the printf statement was implemented.
alpar@9: 
alpar@9:         * examples/graph.mod, examples/crypto.mod
alpar@9:         Two example models illustrating new features of the modeling
alpar@9:         language were included.
alpar@9: 
alpar@9: Thu May 11 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.10 has been released.
alpar@9: 
alpar@9:         * src/glplpx8a.c
alpar@9:         A fragment was added to the routines lpx_read_mps and
alpar@9:         lpx_read_freemps to accept LI bound type (it is similar to LO,
alpar@9:         however, additionally marks the column as integer).
alpar@9: 
alpar@9:         * include/glpbfi.h, src/glpbfi.c
alpar@9:         The module glpbfi which implements the basis factorization
alpar@9:         interface (BFI) was added.
alpar@9: 
alpar@9:         * src/glplpx7a.c
alpar@9:         The routine lpx_cover_cut to generate mixed cover cuts was
alpar@9:         added.
alpar@9: 
alpar@9:         * src/glplpx7b.c
alpar@9:         The routine lpx_clique_cut to generate clique cuts and related
alpar@9:         routines to maintain the conflict graph were added.
alpar@9: 
alpar@9:         * include/glplpx.h, src/glplpx5.c
alpar@9:         The routine lpx_cpx_basis implementing Bixby's algorithm to
alpar@9:         construct an initial LP basis was added.
alpar@9: 
alpar@9:         * examples/glpsol.c
alpar@9:         Command-line option '--bib' was added which allows building
alpar@9:         an initial LP basis using Bixby's algorithm.
alpar@9:         Default command-line option '--mps' was changed to '--freemps'.
alpar@9: 
alpar@9:         * examples/cf12a.mod, examples/cf12b.mod
alpar@9:         Two examples in MathProg (curve fitting problem) were added.
alpar@9:         Thanks to Dr. Harley Mackenzie <hjm@hardsoftware.com>.
alpar@9: 
alpar@9: Tue Jan 17 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.9 has been released.
alpar@9: 
alpar@9:         * glpipp.h, glpipp1.c, glpipp2.c
alpar@9:         A MIP presolver were implemented (currently incomplete). It is
alpar@9:         used internally in the routine lpx_intopt (see below).
alpar@9: 
alpar@9:         * glplpx6d.c, glplpx7a.c
alpar@9:         An advanced branch-and-bound solver (the routine lpx_intopt)
alpar@9:         were implemented.
alpar@9: 
alpar@9:         * glplpx6c.c
alpar@9:         The routine lpx_check_int to check MIP feasibility conditions
alpar@9:         was added.
alpar@9: 
alpar@9:         * glplpx8a.c
alpar@9:         The routine lpx_print_mip was changed to print MIP feasibility
alpar@9:         conditions.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl1.c, glpmpl3.c
alpar@9:         The built-in functions sin, cos, atan, and atan2 were added to
alpar@9:         the MathProg language.
alpar@9: 
alpar@9:         * doc/lang.*
alpar@9:         Some typos were fixed.
alpar@9:         Thanks to Minh Ha Duong <haduong@centre-cired.fr> (CIRED, CNRS).
alpar@9: 
alpar@9: Wed Jan 12 12:00:00 2005 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.8 has been released.
alpar@9: 
alpar@9:         * glpspx.h, glpspx1.c, glpspx2.c, glplpx6a.c
alpar@9:         Simplex method routines were changed due to a new format of the
alpar@9:         constraint matrix.
alpar@9: 
alpar@9:         * glpmat.h, glpmat.c
alpar@9:         Sparse matrix routines were re-implemented using storage-by-rows
alpar@9:         format.
alpar@9: 
alpar@9:         * glpipm.h, glpipm.c, glplpx6b.c
alpar@9:         Interior-point method routines were changed due to a new format
alpar@9:         of sparse matrices.
alpar@9: 
alpar@9:         * glpchol.h, glpchol.c
alpar@9:         Old version of Cholesky factorization routines being replaced by
alpar@9:         a new one (see glpmat.c) was removed from the package.
alpar@9: 
alpar@9:         * glplpx8c.c
alpar@9:         Minor bug was fixed in api routine lpx_read_cpxlp.
alpar@9: 
alpar@9: Mon Aug 23 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.7 has been released.
alpar@9: 
alpar@9:         * glplpx.h, glplpx1.c
alpar@9:         New core API routines were added (but not documented yet):
alpar@9:         lpx_order_matrix, lpx_create_index, lpx_find_row, lpx_find_col,
alpar@9:         lpx_delete_index.
alpar@9: 
alpar@9:         * glplpx8a.c
alpar@9:         API routine lpx_read_mps was re-implemented, and two new API
alpar@9:         routines lpx_read_freemps and lpx_write_freemps were added to
alpar@9:         support free MPS format.
alpar@9: 
alpar@9:         * glplpx8c.c
alpar@9:         Two API routines lpx_read_cpxlp and lpx_write_cpxlp (formerly
alpar@9:         named lpx_read_lpt and lpx_write_lpt) were re-implemented.
alpar@9: 
alpar@9:         * glpmps.h, glpmps.c
alpar@9:         This module formerly used in lpx_read_mps was removed from the
alpar@9:         package.
alpar@9: 
alpar@9:         * glplpt.h, glplpt.c
alpar@9:         This module formerly used in lpx_read_lpt was removed from the
alpar@9:         package.
alpar@9: 
alpar@9:         * glpmip.h, glpmip1.h, glpmip2.h
alpar@9:         New MIP routines mip_best_node and mip_relative_gap were added
alpar@9:         due to suggestion of Brady Hunsaker <hunsaker@engr.pitt.edu>.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         The following new command-options were added:
alpar@9:         --freemps  to read problem data in free MPS format
alpar@9:         --wfreemps to write problem data in free MPS format
alpar@9:         --cpxlp    to read problem data in CPLEX LP format
alpar@9:         --wcpxlp   to write problem data in CPLEX LP format
alpar@9:         --bas      to read LP basis from a text file in MPS format
alpar@9:         --wbas     to write LP basis to a text file in MPS format
alpar@9:         --mostf    to use "most fractional" branching heuristic
alpar@9:         --bestb    to use "best bound" backtracking heuristic
alpar@9: 
alpar@9:         * contrib/deli/*.*
alpar@9:         GLPK Delphi interface module was temporarily removed from the
alpar@9:         distribution due to licensing problems.
alpar@9: 
alpar@9:         * contrib/glpkmex/*.*
alpar@9:         GLPK Matlab interface module was temporarily removed from the
alpar@9:         distribution due to licensing problems.
alpar@9: 
alpar@9:         * contrib/jni/*.*
alpar@9:         GLPK Java interface module was temporarily removed from the
alpar@9:         distribution due to licensing problems.
alpar@9: 
alpar@9: Wed Aug 04 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.6 has been released.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl1.c, glpmpl2.c, glpmpl3.c, glpmpl4.c
alpar@9:         Three new statements were implemented in the GNU MathProg
alpar@9:         language: solve, printf, and for. Also some bugs were fixed.
alpar@9: 
alpar@9:         * glplpx.h, glplpx8e.c
alpar@9:         Two API routines were added: lpx_read_prob and lpx_write_prob,
alpar@9:         which allow reading and writing problem data in GNU LP format.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         Three new command-line options were added: --glp (to read
alpar@9:         problem data in GNU LP format), --wglp (to write problem data
alpar@9:         in GNU LP format), and --name (to change problem name).
alpar@9: 
alpar@9:         * glprng.h, glprng.c
alpar@9:         A portable pseudo-random number generator was implemented as a
alpar@9:         separate module.
alpar@9: 
alpar@9:         * glplib4.c
alpar@9:         The old implementation of a pseudo-random number generator was
alpar@9:         removed from the package.
alpar@9: 
alpar@9:         * doc/lang.*, doc/refman.*
alpar@9:         New edition of the GLPK documentation was included.
alpar@9: 
alpar@9:         * contrib/glpkmex/*.*
alpar@9:         A new version of GLPKMEX was included in the distribution. For
alpar@9:         more details see contrib/glpkmex/ChangeLog.
alpar@9: 
alpar@9: Mon Jul 19 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.5 has been released.
alpar@9: 
alpar@9:         * glpmip.h, glpmip1.c, glpmip2.c, glplpx6c.c
alpar@9:         New implementation of the branch-and-bound method was added.
alpar@9:         It replaces the old implementation, which was removed from the
alpar@9:         package.
alpar@9: 
alpar@9:         * glpies.h, glpies1.c, glpies2.c, glpies3.c
alpar@9:         Modules used in the old implementation of the branch-and-bound
alpar@9:         method were removed from the package.
alpar@9: 
alpar@9:         * glplib2.c
alpar@9:         Now if the preprocessor variable GLPHUGEMEM is defined, other
alpar@9:         version of the routines umalloc, ucalloc, and ufree is used on
alpar@9:         compiling the package. This allows avoiding memory allocation
alpar@9:         problems on platforms where sizeof(void *) > sizeof(int), for
alpar@9:         example, where addresses are 64-bit while integers are 32-bit.
alpar@9:         The modification was made due to a bug report provided by Karel
alpar@9:         Zimmermann <kzimm@diamant.jouy.inra.fr> and Christophe Caron
alpar@9:         <caron@diamant.jouy.inra.fr>.
alpar@9: 
alpar@9: Sat Jan 17 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.4 has been released.
alpar@9: 
alpar@9:         * glplpx.h, glplpx*.c
alpar@9:         All API routines were re-implemented using new data structures.
alpar@9:         Some new API routines were added and some existing API routines
alpar@9:         became obsolete as shown below:
alpar@9: 
alpar@9:         Obsolete API routine   Equivalent new API routine
alpar@9:         lpx_check_name         (no more supported)
alpar@9:         lpx_set_obj_c0         lpx_set_obj_coef
alpar@9:         lpx_set_row_coef       (no more supported)
alpar@9:         lpx_set_col_coef       lpx_set_obj_coef
alpar@9:         lpx_load_mat           (no more supported)
alpar@9:         lpx_load_mat3          lpx_load_matrix
alpar@9:         lpx_unmark_all         (no more supported)
alpar@9:         lpx_mark_row           (no more supported)
alpar@9:         lpx_mark_col           (no more supported)
alpar@9:         lpx_clear_mat          (no more supported)
alpar@9:         lpx_del_items          lpx_del_rows, lpx_del_cols
alpar@9:         lpx_get_row_bnds       lpx_get_row_type, lpx_get_row_lb,
alpar@9:                                lpx_get_row_ub
alpar@9:         lpx_get_col_bnds       lpx_get_col_type, lpx_get_col_lb,
alpar@9:                                lpx_get_col_ub
alpar@9:         lpx_get_obj_c0         lpx_get_obj_coef
alpar@9:         lpx_get_row_coef       (no more supported)
alpar@9:         lpx_get_col_coef       lpx_get_obj_coef
alpar@9:         lpx_get_row_mark       (no more supported)
alpar@9:         lpx_get_col_mark       (no more supported)
alpar@9:         lpx_get_row_info       lpx_get_row_stat, lpx_get_row_prim,
alpar@9:                                lpx_get_row_dual
alpar@9:         lpx_get_col_info       lpx_get_col_stat, lpx_get_col_prim,
alpar@9:                                lpx_get_col_dual
alpar@9:         lpx_get_ips_stat       lpx_ipt_status
alpar@9:         lpx_get_ips_row        lpx_ipt_row_prim, lpx_ipt_row_dual
alpar@9:         lpx_get_ips_col        lpx_ipt_col_prim, lpx_ipt_col_dual
alpar@9:         lpx_get_ips_obj        lpx_ipt_obj_val
alpar@9:         lpx_get_mip_stat       lpx_mip_status
alpar@9:         lpx_get_mip_row        lpx_mip_row_val
alpar@9:         lpx_get_mip_col        lpx_mip_col_val
alpar@9:         lpx_get_mip_obj        lpx_mip_obj_val
alpar@9: 
alpar@9:         Obsolete API routines were kept for backward compatibility,
alpar@9:         however, they will be removed in the future.
alpar@9: 
alpar@9:         * doc/refman.*
alpar@9:         New edition of the GLPK reference manual containing description
alpar@9:         of all new API routines was included.
alpar@9: 
alpar@9:         * contrib/glpkmex/*.*
alpar@9:         GLPKMEX, a Matlab MEX interface to GLPK package, contributed by
alpar@9:         Nicolo Giorgetti <giorgetti@dii.unisi.it> was included.
alpar@9: 
alpar@9:         * doc/GLPK_FAQ.txt
alpar@9:         GLPK FAQ contributed by Harley Mackenzie <hjm@bigpond.com> was
alpar@9:         included.
alpar@9: 
alpar@9: Fri Dec 12 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.3 has been released.
alpar@9: 
alpar@9:         * configure.in
alpar@9:         The bug, due to which the standard math library is not linked on
alpar@9:         some platforms, was fixed.
alpar@9: 
alpar@9:         * glpmpl3.c
alpar@9:         The bug (0 ** y) was fixed in the routine fp_power.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl1.c, glpmpl3.c
alpar@9:         Some new built-in functions (round, trunc, Irand224, Uniform01,
alpar@9:         Uniform, Normal01, Normal) were added to the MathProg language.
alpar@9: 
alpar@9:         * glpmpl1.c
alpar@9:         The MathProg syntax was changed to allow writing 'subj to'.
alpar@9: 
alpar@9:         * glplpx.h, glplpx1.c, glplpx2.c
alpar@9:         The new api routine lpx_get_ray_info was added.
alpar@9: 
alpar@9:         * glplpx8a.c
alpar@9:         The api routine lpx_print_sol was changed to print the number of
alpar@9:         non-basic variable, which causes primal unboundness.
alpar@9: 
alpar@9:         * glpmps.c
alpar@9:         The code was changed to avoid errors on compiling the package on
alpar@9:         Mac OS X. Thanks to Andre Girard <andre@inrs-emt.uquebec.ca> for
alpar@9:         the bug report.
alpar@9: 
alpar@9:         * doc/lang.*, doc/refman.*
alpar@9:         Several typos were fixed and some new material was added in the
alpar@9:         glpk documentation.
alpar@9: 
alpar@9: Fri Nov 14 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.2 has been released.
alpar@9: 
alpar@9:         * glpiet.h, glpiet.c, glpios.h, glpios1.c, glpios2.c, glpios3.c
alpar@9:         A preliminary implementation of the Integer Optimization Suite
alpar@9:         (IOS) was included in the package. Eventually IOS will replace
alpar@9:         the Implicit Enumeration Suite (IES).
alpar@9: 
alpar@9:         * glplpx.h, glplpx6d.c
alpar@9:         A dummy version of the integer optimization routine lpx_intopt
alpar@9:         was included in the package. Later this routine will replace the
alpar@9:         routine lpx_integer.
alpar@9: 
alpar@9:         * examples/glpsol.c
alpar@9:         A new command-line option --int-opt was added to the solver to
alpar@9:         call lpx_intopt rather than lpx_integer.
alpar@9: 
alpar@9:         * glpbcs.h, glpbcs1.c, glpbcs2.c
alpar@9:         Being replaced by IOS routines (see above) the Branch-and-Cut
alpar@9:         Framework (BCS) routines were removed from the package.
alpar@9: 
alpar@9:         * examples/tspsol.c
alpar@9:         Stand-alone Symmetric TSP solver was completely re-programmed
alpar@9:         using IOS routines.
alpar@9: 
alpar@9:         * glplib.h, glplib2.c, glplib4.c
alpar@9:         The random-number generator was implemented. It is based on the
alpar@9:         module GB_FLIB from the Stanford GraphBase originally developed
alpar@9:         by Donald Knuth.
alpar@9: 
alpar@9:         * glphbsm.c, glplpx8a.c, glpmps.c
alpar@9:         All calls to fopen/fclose were replaced by corresponding calls
alpar@9:         to ufopen/ufclose due to bug reports provided by Morten Welinder
alpar@9:         <terra@gnu.org> and <jpark@sfwmd.gov>.
alpar@9: 
alpar@9:         * glpmps.c
alpar@9:         The code was made re-entrant.
alpar@9: 
alpar@9:         * glplpx8b.c
alpar@9:         API routine lpx_print_sens_bnds for bounds sensitivity analysis
alpar@9:         contributed by Brady Hunsaker <hunsaker@engr.pitt.edu> was added
alpar@9:         to the package. This feature is also available in glpsol via the
alpar@9:         command-line option --bounds.
alpar@9: 
alpar@9:         * contrib/jni/*.*
alpar@9:         New version of GLPK JNI (Java Native Interface) contributed by
alpar@9:         Chris Rosebrugh <cpr@pobox.com> was added to the package.
alpar@9: 
alpar@9:         * contrib/deli/*.*
alpar@9:         GLPK DELI (Delphi Interface) contributed by Ivo van Baren
alpar@9:         <i.van.baren@freeler.nl> was added to the package.
alpar@9: 
alpar@9:         * glplpx3.c
alpar@9:         Default method to scale the problem was changed to equilibration
alpar@9:         scaling (lp->scale = 1 in lpx_reset_parms).
alpar@9: 
alpar@9:         * glplpx6a.c
alpar@9:         Two minor (non-critical) typos were fixed due to report provided
alpar@9:         by Andrew Hamilton-Wright <andrewhw@ieee.org>.
alpar@9: 
alpar@9:         * glplpp2.c
alpar@9:         An untested case (line 941) had been tested due to bug report
alpar@9:         provided by Jiri Spitz <jiri.spitz@telecom.cz>.
alpar@9: 
alpar@9:         * w32bc5.mak, w32vc6.mak, w32vc6d.mak, d32dmc.mak
alpar@9:         Several makefiles were added to allow building GLPK library for
alpar@9:         some non-GNU 32-bit platforms.
alpar@9: 
alpar@9: Sat Aug 23 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.1 has been released.
alpar@9: 
alpar@9:         * glpmpl1.c, glpmpl3.c
alpar@9:         Some bugs were fixed in the MathProg translator due to the bug
alpar@9:         reports provided by Giles Thompson <gwpt1@cus.cam.ac.uk>:
alpar@9:         conditional set expressions were incorrectly parsed;
alpar@9:         dimen attribute was not set by default when a set was used
alpar@9:         recursively in its own declaration;
alpar@9:         logical expressions ... in if ... then ... else ... did not
alpar@9:         work;
alpar@9:         displaying set expressions did not free memory allocated for
alpar@9:         temporary results.
alpar@9: 
alpar@9:         * glpmpl3.c (reduce_terms)
alpar@9:         Implementation of summation of linear forms over domain was
alpar@9:         improved to reduce complexity of that operation from O(n*n) to
alpar@9:         O(n*log n). The improvement was made due to a report provided
alpar@9:         by Sebastien de Menten <sdementen@hotmail.com>.
alpar@9: 
alpar@9:         * glplpx6a.c (line 1056), glpmip1.c (line 641)
alpar@9:         Two minor bugs were fixed due to the bug report provided by
alpar@9:         Kendall Demaree <kendal.demaree@verizon.net>.
alpar@9: 
alpar@9:         * glplpx.h, glplpx6a.c
alpar@9:         The method of one artificial variable implemented in the routine
alpar@9:         lpx_prim_art and used on the phase I in the glpk simplex solver
alpar@9:         has a serious defect: for some lp instances it erroneously
alpar@9:         reports that the problem has no primal feasible solution. This
alpar@9:         error appears when the column of the artificial variable, which
alpar@9:         enters the basis to make it primal feasible, has large
alpar@9:         constraint coefficients, that leads to small reduced costs of
alpar@9:         non-basic variables and premature termination of the search,
alpar@9:         i.e. to wrong conclusion that the problem has no primal feasible
alpar@9:         solution. To avoid this defect the routine lpx_prim_feas was
alpar@9:         included. It implements the method of implicit artifical
alpar@9:         variables (based on minimization of the sum of infeasibilities),
alpar@9:         which is a bit slower but much more robust. The routine
alpar@9:         lpx_prim_feas having the same functionality now is used instead
alpar@9:         the routine lpx_prim_art.
alpar@9: 
alpar@9:         * glpinv.h, glpinv.c
alpar@9:         The test used in the routine inv_update to detect low accuracy
alpar@9:         after updating LU-factorization of the basis matrix was replaced
alpar@9:         by a new, more robust test.
alpar@9: 
alpar@9:         * glplpx6c.c
alpar@9:         Selecting an active node to be solved next in the routine
alpar@9:         btrack_bestp was changed. Now, if any integer feasible solution
alpar@9:         has not been found yet, the routine chooses an active node which
alpar@9:         has the minimal sum of integer infeasibilities.
alpar@9: 
alpar@9:         * glpmip.h, glpmip1.c
alpar@9:         The additional flag int_obj was included in the structure
alpar@9:         MIPTREE used by the branch-and-bound. This flag is set in the
alpar@9:         routine mip_create_tree and used in the routine is_better. It
alpar@9:         means that the objective is integral, i.e. depends only on
alpar@9:         integer variables with integer objective coefficients. The test
alpar@9:         used in the routine check_integrality was also replaced by a
alpar@9:         new, more reasonable one.
alpar@9: 
alpar@9:         * glplpx1.c
alpar@9:         A minor bug was fixed in the routine lpx_check_name.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl4.c, glplpx8d.c
alpar@9:         The flag skip_data was added to the parameter list of the
alpar@9:         routine mpl_read_model. If this flag is set, the data section
alpar@9:         in the model file is ignored. Corresponding change was made in
alpar@9:         the routine lpx_read_model. Now, if both model and data files
alpar@9:         are specified, the data section in the model file is ignored.
alpar@9: 
alpar@9:         * glplpx8c.c
alpar@9:         A minor bug (wrong format used for writing free columns) in the
alpar@9:         routine lpx_write_lpt was fixed due to the bug report provided
alpar@9:         by Bernhard Schmidt <schmidt@math.uni-augsburg.de>
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         The command-line parameter --tmlim, which allows limiting the
alpar@9:         solution time, was added.
alpar@9: 
alpar@9:         * doc/lang.*, doc/refman.*
alpar@9:         New edition of the GLPK documentation was included.
alpar@9: 
alpar@9:         * java-binding/*.*
alpar@9:         New version of the GLPK JNI (Java Native Interface) package was
alpar@9:         included in the distribution.
alpar@9: 
alpar@9:         * sample/lpglpk40.c
alpar@9:         A non-trivial example was added. It allows using GLPK as a base
alpar@9:         LP solver for Concorde, a program for solving Traveling Salesman
alpar@9:         Problem (TSP). For details see comments in lpglpk40.c.
alpar@9: 
alpar@9:         * sample/*.mod
alpar@9:         Some examples of LP and MIP models written in GNU MathProg were
alpar@9:         added.
alpar@9: 
alpar@9: Tue May 06 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 4.0 has been released.
alpar@9: 
alpar@9:         * glpmpl.h, glpmpl1.c, glpmpl2.c, glpmpl3.c, glpmpl4.c
alpar@9:         The model translator for the GNU MathProg modeling language was
alpar@9:         implemented and included in the package.
alpar@9: 
alpar@9:         * glplpx.h, glplpx8d.c
alpar@9:         The api routine lpx_read_model, which is an interface to the
alpar@9:         MathProg translator, was included in the package.
alpar@9: 
alpar@9:         * glplpx.h, glplpx8a.c
alpar@9:         The api routine lpx_print_prob for writing LP/MIP problem data
alpar@9:         in plain text format was included in the package.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         New version of the GLPK stand-alone LP/MIP solver that supports
alpar@9:         the GNU MathProg modeling language was implemented.
alpar@9: 
alpar@9:         * doc/lang.latex, doc/lang.dvi, doc/lang.ps
alpar@9:         The document "GLPK: Modeling Language GNU MathProg" was included
alpar@9:         in the package.
alpar@9: 
alpar@9:         * doc/refman.latex, doc/refman.dvi, doc/refman.ps
alpar@9:         New edition of the GLPK Reference Manual was included in the
alpar@9:         package.
alpar@9: 
alpar@9:         * glplpx8c.c
alpar@9:         A bug in the api routine lpx_write_lpt was fixed. Due to that
alpar@9:         bug an addressing error occured in the routine if the objective
alpar@9:         function has the non-zero constant term.
alpar@9: 
alpar@9:         * glplan.h, glplan1.c, glplan2.c, glplan3.c, glplan4.c,
alpar@9:         * glplan5.c, glplan6.c, glplan7.c, glplan8.c, glplpx8b.c
alpar@9:         All modules of the translator for the GLPK/L modeling language
alpar@9:         were removed from the package, because GLPK/L being completely
alpar@9:         superseded by GNU MathProg is no more supported.
alpar@9: 
alpar@9: Tue Mar 25 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.3 has been released.
alpar@9: 
alpar@9:         * glplpp.h, glplpp1.c, glplpp2.c
alpar@9:         An implementation of the built-in LP presolver was added to the
alpar@9:         package.
alpar@9: 
alpar@9:         * glplpx.h
alpar@9:         The flag presol was added to the structure LPX. This flag tells
alpar@9:         the lpx_simplex whether the built-in LP presolver should be used
alpar@9:         or not. By default this flag is off. Also three macros (namely
alpar@9:         LPX_E_NOPFS, LPX_E_NODFS, and LPX_K_PRESOL) that concern using
alpar@9:         the LP presolver were introduced.
alpar@9: 
alpar@9:         * glplpx3.c, glplpx6a.c
alpar@9:         These modules was changed to use the built-in LP presolver.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         Command line options --presol and --nopresol that concern using
alpar@9:         the LP presolver were added to the stand-alone LP/MIP solver.
alpar@9: 
alpar@9:         * glplan1.c
alpar@9:         This module was changed to allow declaring sets like A[1:10] in
alpar@9:         the models written in the GLPK/L modeling language.
alpar@9: 
alpar@9:         * doc/refman.latex, doc/lang.latex
alpar@9:         New editions of the documents "GLPK User's Guide" and "GLPK/L
alpar@9:         Modeling Language" were included in the distribution.
alpar@9: 
alpar@9:         * java-binding/*.*
alpar@9:         The package GLPK JNI (Java Native Interface) implementing Java
alpar@9:         binding for GLPK was included in the distribution. This package
alpar@9:         was developed and programmed by Yuri Victorovich <yuri@gjt.org>.
alpar@9: 
alpar@9: Tue Feb 18 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.2.4 has been released.
alpar@9: 
alpar@9:         * glplpx6b.c
alpar@9:         The code was changed to allow auxiliary variables have non-zero
alpar@9:         objective coefficients.
alpar@9: 
alpar@9:         Also a minor bug was fixed (the constant term was not considered
alpar@9:         on displaying the objective function value).
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         The code was changed to fix a bug (the command-line option 'bfs'
alpar@9:         was not recognized). The bug was fixed due to report provided by
alpar@9:         Olivier <odwl@skynet.be>.
alpar@9: 
alpar@9:         * glplpt.c
alpar@9:         The code was changed to fix a bug (binary variables were treated
alpar@9:         erroneously as integer ones).
alpar@9: 
alpar@9:         * glplpx6b.c
alpar@9:         The code was changed to fix a bug (variables that have no lower
alpar@9:         bounds were incorrectly processed on converting to the standard
alpar@9:         formulation). The bug was fixed due to report kindly provided by
alpar@9:         Kjell Eikland <kjell.eikland@broadpark.no>.
alpar@9: 
alpar@9: Mon Nov 11 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.2.3 has been released.
alpar@9: 
alpar@9:         * glpmip.h, glpmip1.c
alpar@9:         A preliminary implementation of the branch-and-bound driver
alpar@9:         based on the implicit enumeration suite (glpies) was added to
alpar@9:         the package. This module is not documented yet.
alpar@9: 
alpar@9:         * glplpx6c.c
alpar@9:         A new implementation of the api routine lpx_integer which now
alpar@9:         is based on the b&b driver (see glpmip above) was included in
alpar@9:         the package. This new implementation has exactly the same
alpar@9:         functionality as the old version and therefore all changes are
alpar@9:         transparent to the api user.
alpar@9: 
alpar@9:         * glpbbm.h, glpbbm.c
alpar@9:         * glprsm.h, glprsm1.c, glprsm2.c
alpar@9:         * glplp.h, glplp.c
alpar@9:         These modules were removed from the package, because they were
alpar@9:         used only in the old version of the routine lpx_integer, which
alpar@9:         was replaced by the new version (see glplpx6c above).
alpar@9: 
alpar@9:         * glplpx.h, glplpx6a.c
alpar@9:         The api routine lpx_check_kkt was included in the package and
alpar@9:         its description was added in the reference manual. This routine
alpar@9:         allows checking Karush-Kuhn-Tucker optimality conditions for an
alpar@9:         LP solution.
alpar@9: 
alpar@9:         * glplpx.h, glplpx8a.c
alpar@9:         Now the api routine lpx_print_sol also prints information about
alpar@9:         "solution quality" obtained via the api routine lpx_check_kkt.
alpar@9: 
alpar@9:         * glplpx.h, glplpx8a.c
alpar@9:         New api routines lpx_read_bas and lpx_write_bas were included
alpar@9:         in the package and documented. The routine lpx_write_bas allows
alpar@9:         writing a current basis from an LP object to a text file in the
alpar@9:         MPS format. The routine lpx_read_bas allows reading a basis
alpar@9:         prepared in the MPS format from a text file into an LP object.
alpar@9: 
alpar@9:         * glplpt.c
alpar@9:         The parsing routine which reads LP problem data prepared in the
alpar@9:         CPLEX LP format was modified to allow specifying lower bounds
alpar@9:         of variables also in the form 'variable >= lower bound' (in the
alpar@9:         bounds section). This modification was made due to a notice
alpar@9:         provided by Ivan Luzzi <iluzzi@libero.it>.
alpar@9: 
alpar@9:         * glplpx.h, glplpx8c.c
alpar@9:         The api routine lpx_write_lpt which allows writing LP problem
alpar@9:         data from an LP object to a text file using the CPLEX LP format
alpar@9:         was included in the package and documented.
alpar@9: 
alpar@9:         * glplpx.h, glplpx3.c
alpar@9:         The control parameter LPX_K_LPTORIG that affects the behavior
alpar@9:         of the api routine lpx_write_lpt was introduced.
alpar@9: 
alpar@9:         * glplan6.c
alpar@9:         The semantics of the language GLPK/L was changed to allow
alpar@9:         selection in case when not all mute letters of a predicate (the
alpar@9:         operand that follows the keyword 'where') are presented in a
alpar@9:         parameter (the operand that precedes the keyword 'where'), i.e.
alpar@9:         to allow writing something like this:
alpar@9:             y[j] := sum(i, x[i] where p[i,j]);
alpar@9:         The paragraph "Selection" in the langauge description (page 25)
alpar@9:         was also correspondingly changed. This change of the language
alpar@9:         semantics was undertaken due to a notice provided by Peter Lee
alpar@9:         <plee@kinggee.com.au>.
alpar@9: 
alpar@9:         * sample/hwd.lpm
alpar@9:         A nice example of LP model written in GLPK/L and contributed by
alpar@9:         Peter Lee <plee@kinggee.com.au> was included in the package.
alpar@9: 
alpar@9:         * glplpx6b.c
alpar@9:         The api routine lpx_interior was modified: a) to compute dual
alpar@9:         values for all structural as well as auxiliary variables; b) to
alpar@9:         allow specifying non-zero objective coefficients at auxiliary
alpar@9:         variables.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         Three new command-line options were added to the solver, which
alpar@9:         are: --plain, --orig, and --wrlpt.
alpar@9: 
alpar@9: Mon Oct 14 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.2.2 has been released.
alpar@9: 
alpar@9:         * glplpt.h, glplpt.c
alpar@9:         A module that reads LP/MIP problem data in CPLEX LP format was
alpar@9:         implemented.
alpar@9: 
alpar@9:         * glplpx8c.c
alpar@9:         An api routine lpx_read_lpt that reads LP/MIP problem data in
alpar@9:         CPLEX LP format was implemented.
alpar@9: 
alpar@9:         * sample/glpsol.c, sample/plan.lpt
alpar@9:         A new command-line option '--lpt' that allows reading LP/MIP
alpar@9:         problem data in CPLEX LP format was added to the solver.
alpar@9: 
alpar@9:         * doc/refman.latex, doc/refman.dvi, doc/refman.ps
alpar@9:         A new edition of the Reference Manual was included.
alpar@9: 
alpar@9:         * source/*.c
alpar@9:         Casting to (unsigned char) was added in some calls to the
alpar@9:         classification functions (isalpha, etc.). The bug was fixed due
alpar@9:         to report provided by Morten Welinder <terra@diku.dk>.
alpar@9: 
alpar@9:         * glplpx8a.c
alpar@9:         The local routine mps_numb used in the routine lpx_write_mps
alpar@9:         was modified to correctly format floating-point numbers that
alpar@9:         have two digits in the decimal exponent. The bug was fixed due
alpar@9:         to report provided by Vlahos Kiriakos <Kiriakos.Vlahos@gs.com>.
alpar@9: 
alpar@9:         * glplan.h, glplan1.c, ..., glplan8.c
alpar@9:         Several serious bugs were fixed in the language processor due
alpar@9:         to reports provided by <NORBERT.PIOTROWSKI@LHSYSTEMS.COM>:
alpar@9:         (a) a static search tree used to find sparse array elements was
alpar@9:         sometimes overwritten that caused the message 'assertion failed'
alpar@9:         to appear; the bug was fixed by creating separate search trees
alpar@9:         in parsing routines; (b) a variable declared using the
alpar@9:         predicate-controlled variable declaration statement had wrong
alpar@9:         order of domain sets, because the variable array was built as
alpar@9:         a copy of the predicate array; the bug was fixed by using the
alpar@9:         internal routine transpose that coordinates mute letters (and
alpar@9:         therefore domain sets) on copying sparse arrays; (c) sometimes
alpar@9:         assignment statements like x[#a,#b,#c] := ... was incorrectly
alpar@9:         processed; the bug was fixed by including an appropriate check
alpar@9:         into the internal routine assign_stmt.
alpar@9: 
alpar@9:         * glp_simplex.c
alpar@9:         An additional check to see if all lower bounds are not greater
alpar@9:         than corresponding upper bounds was included in the routine to
alpar@9:         prevent wrong results to appear. Such incorrectness sometimes
alpar@9:         was not detected, namely, when variables with such bounds were
alpar@9:         non-basic and never entered the basis.
alpar@9: 
alpar@9:         * glpspx1.c
alpar@9:         Maximal number of simplex iterations before reinversion was
alpar@9:         decreased from 100 to 50. This allowed to improve accuracy and,
alpar@9:         that is more important, to reduce the solution time for many
alpar@9:         serial lp problems approximately 1.5--2 times.
alpar@9: 
alpar@9:         * glpspx2.c
alpar@9:         A check to see if all elements in the column chosen to enter
alpar@9:         the basis are close to zero in the routine spx_prim_chuzr was
alpar@9:         temporarily removed because this check gave wrong conclusion in
alpar@9:         case when the corresponding non-basic variable had zero column
alpar@9:         in the constraint matrix. An analogous check to see if all
alpar@9:         elements in the row chosen to leave the basis are close to zero
alpar@9:         in the routine spx_dual_chuzc was also temporarily removed on
alpar@9:         the same reason. The bug was fixed due to reports provided by
alpar@9:         Flavio Keidi Miyazawa <fkm@ic.unicamp.br> and Vlahos Kiriakos
alpar@9:         <Kiriakos.Vlahos@gs.com>.
alpar@9: 
alpar@9: Mon Aug 12 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.2.1 has been released.
alpar@9: 
alpar@9:         * glpbcs.h, glpbcs1.c, glpbcs2.c
alpar@9:         * glpies.h, glpies1.c, glpies2.c, glpies3.c
alpar@9:         A preliminary implementation of the branch-and-cut framework
alpar@9:         was included in the package.
alpar@9: 
alpar@9:         * doc/brcut.txt
alpar@9:         The document "GLPK: A Preliminary Implementation of the
alpar@9:         Branch-And-Cut Framework" was included in the distribution.
alpar@9: 
alpar@9:         * sample/tspsol.c
alpar@9:         An illustrative program for solving symmetric TSP based on the
alpar@9:         branch-and-cut method was included in the package.
alpar@9: 
alpar@9:         * glpdmp.h, glpdmp.c
alpar@9:         A new, re-enterable version of routines for managing dynamic
alpar@9:         memory pools was included in the package.
alpar@9: 
alpar@9:         * glpavl.h, glpavl.c
alpar@9:         A new, re-enterable version of routines for managing AVL search
alpar@9:         trees was included in the package.
alpar@9: 
alpar@9:         * glplib.h, glplib2.c
alpar@9:         Two new low-level routines ufopen and ufclose were included in
alpar@9:         the package.
alpar@9: 
alpar@9:         * glplpx.h, glplpx7.c
alpar@9:         The following new api routines were added: lpx_eval_activity,
alpar@9:         lpx_eval_red_cost, lpx_reduce_form, lpx_mixed_gomory.
alpar@9: 
alpar@9:         * glptsp.h, glptsp.c
alpar@9:         A module for reading TSP data using TSPLIB format was included
alpar@9:         in the package.
alpar@9: 
alpar@9: Mon Jul 15 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.2 has been released.
alpar@9: 
alpar@9:         * glplpx.h, glplpx1.c, glplpx2.c
alpar@9:         The identifier 'class' (used as a member name in the structure
alpar@9:         LPX and as an argument name in the routine lpx_set_class) was
alpar@9:         changed to 'clss' in order to avoid conflicts with C++ reserved
alpar@9:         words.
alpar@9: 
alpar@9:         * glpk.h, glplpx.h, glplpx1.c, glplpx2.c, glplpx6a.c,
alpar@9:         * glplpx6b.c, glplpx6c.c, glplpx7.c, glplpx8.c
alpar@9:         The following new api routines were added: lpx_set_obj_name,
alpar@9:         lpx_get_obj_name, lpx_get_row_mark, lpx_get_col_mark,
alpar@9:         lpx_transform_row, lpx_transform_col, lpx_prim_ratio_test,
alpar@9:         lpx_dual_ratio_test, lpx_interior, lpx_get_ips_stat,
alpar@9:         lpx_get_ips_row, lpx_get_ips_col, lpx_get_ips_obj, lpx_read_lpm,
alpar@9:         lpx_write_mps, lpx_print_ips.
alpar@9: 
alpar@9:         * glpsol.c
alpar@9:         The solver was completely re-programmed using new api routines.
alpar@9: 
alpar@9:         * lang.latex, lang.dvi, lang.ps
alpar@9:         New edition of the document "GLPK: Modeling Language GLPK/L"
alpar@9:         was included in the distribution.
alpar@9: 
alpar@9:         * refman.latex, refman.dvi, refman.ps
alpar@9:         New edition of the document "GLPK: Reference Manual" (which
alpar@9:         contains descriptions of all new api routines) was included in
alpar@9:         the distribution.
alpar@9: 
alpar@9:         * glpapi.h, glpapi1.c, glpapi2.c, glpapi3.c, glpapi4.c
alpar@9:         These files (which contain old api routines) were removed from
alpar@9:         the package.
alpar@9: 
alpar@9:         * glpipm1.c, glpipm2.c
alpar@9:         The file glpipm1.c was renamed to glpipm.c. The file glpipm2.c
alpar@9:         was used only by old api routines and therefore was removed from
alpar@9:         the package.
alpar@9: 
alpar@9:         * language.texinfo
alpar@9:         Old version of the document "GLPK: Modeling Language GLPK/L" was
alpar@9:         removed from the distribution.
alpar@9: 
alpar@9: Mon May 27 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.1 has been released.
alpar@9: 
alpar@9:         * glplpx.h, glplpx1.c, glplpx2.c, glplpx3.c, glplpx4.c,
alpar@9:         * glplpx5.c, glplpx6.c, glplpx7.c, glplpx8.c
alpar@9:         A preliminary implementation of new API routines was completed.
alpar@9: 
alpar@9:         * refman.latex, refman.dvi, refman.ps
alpar@9:         A draft edition of the document "GLPK Reference Manual", which
alpar@9:         describes new API routines, was included.
alpar@9: 
alpar@9:         * glplib3.c
alpar@9:         A bug in measuring long time intervals was fixed up.
alpar@9: 
alpar@9:         * glprsm3.c
alpar@9:         This module contains some obsolete routines not longer used and
alpar@9:         therefore it was removed from the package (into the subdirectory
alpar@9:         'oldsrc').
alpar@9: 
alpar@9:         * glprsm.h
alpar@9:         Some declarations related to the module 'glprsm3.c' (see above)
alpar@9:         were removed.
alpar@9: 
alpar@9:         * guide.texinfo
alpar@9:         The document "GLPK User's Guide" describing old API routines was
alpar@9:         removed from the package (into the subdirectory 'oldsrc').
alpar@9: 
alpar@9:         * newapi.txt
alpar@9:         The document "New GLPK API Routines" was removed at all, because
alpar@9:         it is superseded by the new reference manual (see above).
alpar@9: 
alpar@9: Mon May 13 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.8 has been released.
alpar@9: 
alpar@9:         * glplpx.h, glplpx1.c, glplpx2.c, glplpx3.c, glplpx4.c,
alpar@9:         * glplpx5.c, glplpx6.c, glplpx7.c
alpar@9:         A preliminary (currently incomplete) implementation of new api
alpar@9:         routines was included.
alpar@9: 
alpar@9:         * sample/newsamp.c
alpar@9:         A sample program for the new api routines was included.
alpar@9: 
alpar@9:         * newapi.txt
alpar@9:         A draft of the document "New GLPK API Routines" was included.
alpar@9: 
alpar@9:         * glpapi2.c, glpapi5.c, glpapi6.c
alpar@9:         These modules (which contain the api routines glp_call_rsm1,
alpar@9:         glp_simplex1, glp_pivot_in, glp_pivot_out) were removed from the
alpar@9:         package (to the subdirectory 'oldsrc') since these routines are
alpar@9:         functionally superseded by the new api routines.
alpar@9: 
alpar@9:         * glpk.h, glpapi2.c, glpapi3.c, glpapi4.c
alpar@9:         The api routines glp_simplex2, glp_call_ipm1, glp_call_bbm1 were
alpar@9:         renamed to glp_simplex, glp_interior, glp_integer, respectively.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         Some command-line options (which got obsolete due to the recent
alpar@9:         changes in api) were excluded.
alpar@9: 
alpar@9:         * doc/guide.texinfo
alpar@9:         New edition of the document "GLPK User's Guide" was included in
alpar@9:         the distribution to reflect the changes in some api routines.
alpar@9: 
alpar@9:         * doc/libref.texinfo
alpar@9:         This document was removed from the package (to the subdirectory
alpar@9:         'oldsrc') since it describes the library routines, most of which
alpar@9:         got obsolete and no longer used.
alpar@9: 
alpar@9:         * Makefile.in
alpar@9:         A minor bug was fixed up due to bug report from Hans Schwengeler
alpar@9:         <Hans.Schwengeler@unibas.ch>.
alpar@9: 
alpar@9: Mon Apr 22 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.7 has been released.
alpar@9: 
alpar@9:         * glpduff.h, glpduff.c, glpspx.h, glpspx1.c, glpspx2.c,
alpar@9:         * glpapi7.c
alpar@9:         These modules were replaced by a new implementation of the
alpar@9:         simplex method and therefore they were removed from the package
alpar@9:         (however they still can be found in the subdirectory 'oldsrc').
alpar@9: 
alpar@9:         * glprsm1.c
alpar@9:         The routine crash_aa was replaced by a new implementation and
alpar@9:         therefore it was removed from the file 'glprsm1.c'.
alpar@9: 
alpar@9:         * glplpx.h, glplpx.c, glpspx.h, glpspx1.c, glpspx2.c, glpspx3.c,
alpar@9:         * glpspx4.c, glpapi7.c
alpar@9:         New (currently incomplete) implementation of the simplex method
alpar@9:         components was included in the package.
alpar@9: 
alpar@9: Thu Mar 28 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.6 has been released.
alpar@9: 
alpar@9:         * glpluf.h, glpluf.c, glpinv.h, glpinv.c
alpar@9:         New version of LU-factorization and basis maintenance routines
alpar@9:         (based on Forrest-Tomlin updating technique) was implemented.
alpar@9: 
alpar@9:         * glpeta.h, glpeta.c, glpfhv.h, glpfhv.c, glpgel.h, glpgel.c,
alpar@9:         * glppfi.h, glppfi.c, glprfi.h, glprfi.c
alpar@9:         These routines implement some other forms of the basis matrix.
alpar@9:         Now they became obsolete being functionally superseded by the
alpar@9:         new version of basis maintenance routines (see above) and were
alpar@9:         removed from the package (however they still can be found in the
alpar@9:         subdirectory 'oldsrc').
alpar@9: 
alpar@9:         * glpbbm.c, glprsm.h, glprsm1.h, glprsm2.h, glpspx.h, glpspx2.c,
alpar@9:         * glprsm2.c, glpsol.c
alpar@9:         Necessary changes were made in order to use the new version of
alpar@9:         basis maintenance routines.
alpar@9: 
alpar@9: Tue Jan 29 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.5 has been released.
alpar@9:         Structure of the package was re-organized in order to simplify
alpar@9:         its maintenance.
alpar@9: 
alpar@9:         * doc/guide.texinfo
alpar@9:         New edition of the document "GLPK User's Guide" was included in
alpar@9:         the distribution. Now the document includes descriptions of some
alpar@9:         additional API routines recently added to the package.
alpar@9: 
alpar@9:         * doc/newapi.txt
alpar@9:         The document "Additional GLPK API Routines" was removed from the
alpar@9:         distribution, because the corresponding material was included in
alpar@9:         the user's guide (see above).
alpar@9: 
alpar@9: Mon Dec 10 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.4 has been released.
alpar@9: 
alpar@9:         * glpspx.h, glpspx1.c, glpspx2.c, glpapi/glp_simplex2.h
alpar@9:         A new, more efficient version of the two-phase primal simplex
alpar@9:         method was implemented (advanced initial basis, projected
alpar@9:         steepest edge, recursive computations of solution components).
alpar@9: 
alpar@9:         * glpapi/glp_call_bbm1.c
alpar@9:         Now LP relaxation can be solved either using rsm1_driver(), or
alpar@9:         using glp_simplex2(). The choice is controlled by the parameter
alpar@9:         'meth' (a member of struct bbm1).
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         The new implementation of the simplex method is now used by
alpar@9:         default. The old version is available via --old-sim option.
alpar@9: 
alpar@9:         * glpmat/gm_scaling.c
alpar@9:         Now this routine displays only two lines: an initial "quality"
alpar@9:         and a final "quality".
alpar@9: 
alpar@9:         * glplp/prepro_lp.c
alpar@9:         Identifiers 'fmin' and 'fmax' renamed to 'f_min' and 'f_max' in
alpar@9:         order to avoid conflict with <math.h>. The bug was fixed due to
alpar@9:         report provided by Sami Farin <sfarin@ratol.fi>.
alpar@9: 
alpar@9: Wed Oct 03 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.3 has been released.
alpar@9: 
alpar@9:         * glprsm/harris_row.c, glprsm/harris_col.c
alpar@9:         The relative tolerance used on the first pass of the two-pass
alpar@9:         ratio test was replaced by the absolute tolerance.
alpar@9: 
alpar@9:         * glprsm/rsm_primal.c, glprsm/rsm_feas.c, glprsm/rsm_dual.c
alpar@9:         The absolute tolerance passed to the two-pass ratio test routine
alpar@9:         was decaresed (for both primal and dual simplex).
alpar@9: 
alpar@9:         These changes were made in order to improve numerical stability
alpar@9:         of the simplex method.
alpar@9: 
alpar@9:         * glprsm/glp_call_rsm1.c, glprsm/glp_call_bbm1.c,
alpar@9:         * glprsm/glp_simplex1, glprsm/glp_pivoting.c
alpar@9:         Default form of the inverse was changed from RFI to AFI.
alpar@9: 
alpar@9: Mon Sep 24 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.2 has been released.
alpar@9: 
alpar@9:         * glpfhv.h, glpfhv.c
alpar@9:         New version of the basis maintaining routines was implemented.
alpar@9:         These routines, which are based on so called FHV-factorization
alpar@9:         (a variety of LU-factorization) and Gustavson's data structures,
alpar@9:         perform the main operations on the basis matrix faster at the
alpar@9:         expense of some worsening numerical accuracy.
alpar@9: 
alpar@9:         * glprsm.h, glprsm/afi.c
alpar@9:         The routines, which implement AFI (Advanced Form of the
alpar@9:         Inverse) based on FHV-factorization, were added to the package.
alpar@9:         This new form is available via the parameter form = 3 (on API
alpar@9:         level) or via the option --afi (in GLPSOL solver).
alpar@9: 
alpar@9:         * EFI was renamed to PFI
alpar@9:         In order to correct terminology the acronym EFI (Elimination
alpar@9:         Form of the Inverse) was replaced by PFI (Product Form of the
alpar@9:         Inverse) everywhere in the source code and the documentation.
alpar@9: 
alpar@9:         * glpset/umalloc.c, glpset/ucalloc.c
alpar@9:         * glpset/get_atom.c, glpset/get_atomv.c
alpar@9:         These memory management routines were changed in order *not* to
alpar@9:         clear allocated memory blocks by binary zeros.
alpar@9: 
alpar@9: Wed Aug 01 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0.1 has been released.
alpar@9: 
alpar@9:         * glpapi/old_api.c, glplp/extract_lp.c, store_lpsol.c
alpar@9:         Old API routines were deleted from the package.
alpar@9: 
alpar@9:         * include/glpk.h, include/glpapi.h, include/glplp.h
alpar@9:         Specifications of old API routines and data structures were
alpar@9:         removed from the headers.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         New version of the stand-alone solver GLPSOL that now uses new
alpar@9:         API routines was implemented.
alpar@9: 
alpar@9:         * glpapi/glp_set_row_fctr.c, glpapi/glp_set_col_fctr.c,
alpar@9:         * glpapi/glp_get_row_fctr.c, glpapi/glp_get_col_fctr.c,
alpar@9:         * glpapi/glp_scale_prob.c
alpar@9:         Scaling routines were added.
alpar@9: 
alpar@9:         * glpapi/glp_write_mps.c
alpar@9:         The routine for writing problem data in MPS format was added.
alpar@9: 
alpar@9:         * glpapi/glp_simplex1.c
alpar@9:         Comprehensive driver to the simplex method was added.
alpar@9: 
alpar@9:         * glpapi/glp_pivoting.c
alpar@9:         The routines glp_pivot_in() and glp_pivot_out() intended for
alpar@9:         basis maintaining were added.
alpar@9: 
alpar@9:         * glprsm/create_rsm.c, glprsm/delete_rsm.c, glprsm/scale_rsm.c,
alpar@9:         * glprsm/build_basis.c
alpar@9:         Additional low level routines related to the simplex method
alpar@9:         were added.
alpar@9: 
alpar@9:         * glpk.h, glpapi.h, glprsm.h
alpar@9:         Additional specifications for new routines and data structures
alpar@9:         were added.
alpar@9: 
alpar@9:         * sample/lpglpk30.c
alpar@9:         A non-trivial example was added. It allows using GLPK as a base
alpar@9:         LP solver for Concorde, a program for solving Traveling Salesman
alpar@9:         Problem (TSP). For details see comments in 'lpglpk30.c'.
alpar@9: 
alpar@9:         * doc/newapi.txt
alpar@9:         The document "Additional GLPK API Routines" that describes some
alpar@9:         new API routines was included.
alpar@9: 
alpar@9: Thu Jul 19 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 3.0 has been released.
alpar@9: 
alpar@9:         Now GLPK is provided with new API, which is intended for using
alpar@9:         the package in more complex algorithmic schemes.
alpar@9: 
alpar@9:         * glpapi/old_api.c
alpar@9:         All routines related to old API were gathered in one file named
alpar@9:         'old_api.c'.
alpar@9: 
alpar@9:         * glpapi/*.c
alpar@9:         These routines that implement new API were added to the package.
alpar@9: 
alpar@9:         * include/glpk.h, include/glpapi.h
alpar@9:         Specifications of new API routines and data structures were
alpar@9:         added to these headers. Specifications of old API routines and
alpar@9:         data structures were locked by #ifdef GLP_OLD_API directive.
alpar@9: 
alpar@9:         * doc/guide.texinfo
alpar@9:         New edition of the document "GLPK User's Guide" that correspond
alpar@9:         to new API was included.
alpar@9: 
alpar@9: Thu Jun 14 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 2.4.1 has been released.
alpar@9: 
alpar@9:         * doc/glpk_ml.texinfo
alpar@9:         The new document "Modeling Language GLPK/L" was included.
alpar@9: 
alpar@9:         * doc/glpk_ug.texinfo
alpar@9:         New edition of the document "GLPK User's Guide" was included.
alpar@9: 
alpar@9:         * doc/language.txt
alpar@9:         The preliminary document "GLPK/L Modeling Language: A Brief
alpar@9:         description" was removed from the distribution, because it has
alpar@9:         been replaced by the new document "Modeling Language GLPK/L".
alpar@9: 
alpar@9:         * glplang/l_spar.c
alpar@9:         The routine comparison() was re-programmed in order to
alpar@9:         implement the relation operation as specified in the language
alpar@9:         description.
alpar@9: 
alpar@9:         * glpmip.h, glpmip/*.c
alpar@9:         The partition 'glpmip' was renamed to 'glpbbm'.
alpar@9: 
alpar@9: Thu May 10 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 2.4 has been released.
alpar@9: 
alpar@9:         Now GLPK includes an implementation of a preliminary version of
alpar@9:         the GLPK/L modeling language.
alpar@9: 
alpar@9:         * glplang.h, glplang/*.c
alpar@9:         The header 'glplang.h' and a set of routines that implements
alpar@9:         the GLPK/L language processor (the partition 'glplang') were
alpar@9:         added to the package.
alpar@9: 
alpar@9:         * doc/language.txt
alpar@9:         The document "GLPK/L Modeling Language: A Brief Description
alpar@9:         (Supplement to GLPK User's Guide)" in plain text format was
alpar@9:         included in the package (see the file 'language.txt' in the
alpar@9:         subdirectory 'doc' of the distribution).
alpar@9: 
alpar@9:         * ex/model1.lpm, ex/model2.lpm
alpar@9:         Two examples of model descriptions written in GLPK/L were added
alpar@9:         to the package.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         This program was modified in order: a) to allow processing
alpar@9:         model description written in GLPK/L; b) to allow solving pure
alpar@9:         LP problem using the interior point method.
alpar@9: 
alpar@9:         * sample/glpipm.c
alpar@9:         This program was removed from the package, because its function
alpar@9:         was passed to the GLPSOL solver.
alpar@9: 
alpar@9:         * Makefile.in
alpar@9:         This file was changed in order to install the GLPSOL solver
alpar@9:         executable.
alpar@9: 
alpar@9: Mon Apr 09 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 2.3 has been released.
alpar@9: 
alpar@9:         * glpmip.h, glpmip/*.c
alpar@9:         These routines (that implement the branch-and-bound method) were
alpar@9:         re-programmed in order to improve robustness of implementation.
alpar@9:         In particular, heuristic routines were carried out from the main
alpar@9:         driver routine.
alpar@9: 
alpar@9:         Additional GLPK API routines were documented.
alpar@9: 
alpar@9:         New edition of the document "GLPK User's Guide" was included in
alpar@9:         the package.
alpar@9: 
alpar@9:         The preliminary document "Mixed Integer Programming Using GLPK
alpar@9:         Version 2.2 (Supplement to GLPK User's Guide)" was removed from
alpar@9:         the package, because this material was included in GLPK User's
alpar@9:         Guide.
alpar@9: 
alpar@9: Thu Mar 15 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 2.2 has been released.
alpar@9: 
alpar@9:         Now GLPK includes a tentative implementation of the
alpar@9:         branch-and-bound procedure based on the dual simplex method for
alpar@9:         mixed integer linear programming (MIP).
alpar@9: 
alpar@9:         The preliminary document "Mixed Integer Programming Using GLPK
alpar@9:         Version 2.2 (Supplement to GLPK User's Guide)" was included into
alpar@9:         the package in plain text format (see the file 'mip.txt' in the
alpar@9:         subdirectory 'doc' of the distribution).
alpar@9: 
alpar@9:         * glpmip.h, glpmip/*.c, glpapi/glp_integer.c
alpar@9:         These routines (that implement the branch-and-bound method) were
alpar@9:         added to the package.
alpar@9: 
alpar@9:         * sample/glpsol.c
alpar@9:         This program was modified in order to allow solving LP and MIP
alpar@9:         problems.
alpar@9: 
alpar@9:         * glprsm/rsm_primal.c, glprsm/rsm_dual.c, glprsm/rsm_feas.c,
alpar@9:         * glprsm/rsm1_driver.c
alpar@9:         These routines (which are drivers to basic components of the
alpar@9:         revised simplex method) were added to the package.
alpar@9: 
alpar@9: Mon Feb 19 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 2.1 has been released.
alpar@9: 
alpar@9:         * glprsm.h, glprsm/*.c
alpar@9:         These routines (that implement components of the revised simplex
alpar@9:         method) were re-programmed and documented.
alpar@9: 
alpar@9:         The document "GLPK Implementation of the Revised Simplex Method"
alpar@9:         was included into the package.
alpar@9: 
alpar@9: Thu Jan 25 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 2.0 has been released.
alpar@9: 
alpar@9:         Now GLPK includes a tentative implementation of the primal-dual
alpar@9:         interior point method for large-scale linear programming (for
alpar@9:         more details see the file `NEWS' in the distribution). A number
alpar@9:         of routines related to the interior point method were added to
alpar@9:         the package.
alpar@9: 
alpar@9:         * insist.c
alpar@9:         The routine `insist' and the macro of the same name were
alpar@9:         introduced into the package in order to replace the standard
alpar@9:         macro `assert'. Some routines require the expression specified
alpar@9:         in the `assert' macro to be evaluated, but compiling the package
alpar@9:         with NDEBUG option prevents from that. This bug was fixed due to
alpar@9:         bug report provided by Peter A. Huegler <phuegler@bsco.com>.
alpar@9: 
alpar@9:         * Makefile.in
alpar@9:         Minor bug was fixed due to a patch provided by Alexandre Oliva
alpar@9:         <oliva@lsd.ic.unicamp.br>.
alpar@9: 
alpar@9: Wed Jan 10 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 1.1.2 has been released.
alpar@9: 
alpar@9:         * umalloc.c, ufree.c, create_pool.c, get_atom.c, get_atomv.c
alpar@9:         These routines were changed in order to fix a bug due to
alpar@9:         report provided by Andrew Hood <ajhood@fl.net.au>. Because of
alpar@9:         this bug data alignment error occured on the Sparc computer.
alpar@9: 
alpar@9: Tue Dec 14 12:00:00 2000 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 1.1.1 has been released.
alpar@9: 
alpar@9:         Minor bug was fixed in `Makefile.in'.
alpar@9: 
alpar@9:         GLPK Library Reference was included.
alpar@9: 
alpar@9: Mon Nov 27 12:00:00 2000 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 1.1 has been released.
alpar@9: 
alpar@9:         Minor changes were made in order to co-ordinate GLPK routines
alpar@9:         and their descriptions.
alpar@9: 
alpar@9:         GLPK User's Guide was included.
alpar@9: 
alpar@9: Fri Oct 20 12:00:00 2000 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9: 
alpar@9:         * GLPK 1.0 has been released.