lemon-project-template-glpk

annotate deps/glpk/ChangeLog @ 9:33de93886c88

Import GLPK 4.47
author Alpar Juttner <alpar@cs.elte.hu>
date Sun, 06 Nov 2011 20:59:10 +0100
parents
children
rev   line source
alpar@9 1 Fri Sep 09 12:00:00 2011 Andrew Makhorin <mao@gnu.org>
alpar@9 2
alpar@9 3 * GLPK 4.47 (32:0:32) has been released
alpar@9 4
alpar@9 5 * src/glpapi20.c
alpar@9 6 New API routine glp_infeas1 to solve 0-1 feasibility problem
alpar@9 7 was added and documented (see doc/cnfsat.pdf).
alpar@9 8
alpar@9 9 * src/glpnpp06.c
alpar@9 10 Some new preprocessor routines for SAT-CNF encoding, which are
alpar@9 11 used by the routine glp_intfeas1, were added.
alpar@9 12
alpar@9 13 * src/glpnpp.h
alpar@9 14 The header was modified due to additions.
alpar@9 15
alpar@9 16 * src/glpapi21.c
alpar@9 17 The glpsol solver was modified to bypass model postprocessing
alpar@9 18 if the solution reported is neither optimal nor feasible.
alpar@9 19
alpar@9 20 * src/glpapi21.c
alpar@9 21 New glpsol options (--minisat and --objbnd) were added.
alpar@9 22
alpar@9 23 * examples/pbn/*.*
alpar@9 24 The paint-by-numbers puzzle model (pbn.mod) was modified to
alpar@9 25 print solution in PostScript format and to check for multiple
alpar@9 26 solutions. Some benchmark examples from <webpbn.com> encoded
alpar@9 27 in MathProg were included in the distribution. For more details
alpar@9 28 see examples/pbn/README and examples/pbn/pbn.pdf.
alpar@9 29
alpar@9 30 * examples/Makefile.am
alpar@9 31 A minor bug was fixed to correctly build glpk in a separate
alpar@9 32 directory. Thanks to Marco Atzeri <marco.atzeri@gmail.com> for
alpar@9 33 bug report.
alpar@9 34
alpar@9 35 Tue Aug 09 12:00:00 2011 Andrew Makhorin <mao@gnu.org>
alpar@9 36
alpar@9 37 * GLPK 4.46 (31:0:31) has been released
alpar@9 38
alpar@9 39 * src/glpk.h, src/Makefile
alpar@9 40 glpk.h was relocated from 'include' to 'src', and 'include'
alpar@9 41 subdir was removed; src/Makefile.am was changed appropriately.
alpar@9 42
alpar@9 43 * src/zlib/*.*
alpar@9 44 zlib general purpose compression library, version 1.2.5,
alpar@9 45 was ANSIfied and modified according to GLPK requirements and
alpar@9 46 included in the distribution as an external software module.
alpar@9 47
alpar@9 48 For details see src/zlib/README.
alpar@9 49
alpar@9 50 * src/glpdmx.c
alpar@9 51 The following new API routines were added:
alpar@9 52 glp_read_cnfsat - read CNF-SAT problem data in DIMACS format
alpar@9 53 glp_check_cnfsat - check for CNF-SAT problem instance
alpar@9 54 glp_write_cnfsat - write CNF-SAT problem data in DIMACS format
alpar@9 55
alpar@9 56 * src/minisat/*.*
alpar@9 57 MiniSat, a CNF-SAT solver, version 1.14.1, was ANSIfied and
alpar@9 58 modified according to GLPK requirements and included in the
alpar@9 59 distribution as an external software module.
alpar@9 60
alpar@9 61 For details see minisat/README and minisat/LICENSE.
alpar@9 62
alpar@9 63 * src/glpapi19.c
alpar@9 64 The API routine glp_minisat1, which is a driver to the MiniSat
alpar@9 65 solver, was included in the package.
alpar@9 66
alpar@9 67 * doc/satcnf.*
alpar@9 68 The document "CNF Satisfiability Problem" was included in the
alpar@9 69 package. It is a supplement to the GLPK Reference Manual.
alpar@9 70
alpar@9 71 * src/glpapi20.c
alpar@9 72 New glpsol options (--cnf, --wcnf, and --minisat) was added.
alpar@9 73
alpar@9 74 * glpsql.c
alpar@9 75 Some bugs were fixed. Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9 76
alpar@9 77 Sun Dec 05 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9 78
alpar@9 79 * GLPK 4.45 (30:0:30) has been released
alpar@9 80
alpar@9 81 * glplpx01.c
alpar@9 82 A bug (it_cnt) in routine reset_parms was fixed.
alpar@9 83 Thanks to Ali Baharev <ali.baharev@gmail.com> for report.
alpar@9 84
alpar@9 85 * glpmpl03.c
alpar@9 86 A bug (print "text\") was fixed.
alpar@9 87 Thanks to Xypron <xypron.glpk@gmx.de> for report.
alpar@9 88
alpar@9 89 * glpsql.c
alpar@9 90 A precision bug was fixed.
alpar@9 91 Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9 92
alpar@9 93 * glpk.tex
alpar@9 94 Some typos were corrected.
alpar@9 95 Thanks to Robbie Morrison <robbie@actrix.co.nz>.
alpar@9 96
alpar@9 97 Thu Jun 03 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9 98
alpar@9 99 * GLPK 4.44 (29:0:29) has been released
alpar@9 100
alpar@9 101 * glpapi14.c glpmpl.h glpmpl01.c glpmpl03.c glpmpl04.c
alpar@9 102 Implemented suffixes for variables and constraints.
alpar@9 103
alpar@9 104 * glpmpl06.c
alpar@9 105 Made changes to allow comment records in CSV files.
alpar@9 106
alpar@9 107 * glpapi17.c
alpar@9 108 Added and documented new API routine glp_cpp to solve Critical
alpar@9 109 Path Problem.
alpar@9 110
alpar@9 111 Sat Feb 20 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9 112
alpar@9 113 * GLPK 4.43 (28:0:28) has been released
alpar@9 114
alpar@9 115 * glplib.h, glplib.c, glpenv.h, glpenv.c
alpar@9 116 The module glpenv was split into two modules glpenv and glplib.
alpar@9 117
alpar@9 118 * glpenv01.c, glpenv03.c, glpenv04.c, glpenv06.c
alpar@9 119 The following new API routines were added and documented:
alpar@9 120 glp_init_env, glp_free_env, glp_open_tee, glp_close_tee,
alpar@9 121 glp_error (macro), glp_difftime.
alpar@9 122
alpar@9 123 * glpapi16.c
alpar@9 124 New API routine glp_top_sort (topological sorting of ayclic
alpar@9 125 digraph) was added and documented.
alpar@9 126
alpar@9 127 * glpapi17.c
alpar@9 128 A serious bug was fixed in the routine glp_asn_prob_hall.
alpar@9 129
alpar@9 130 * glpnpp05.c
alpar@9 131 A bug was fixed in the LP/MIP preprocessor (hidden covering
alpar@9 132 inequalities).
alpar@9 133
alpar@9 134 * glpsql.c
alpar@9 135 Some improvements were made in the table driver (NULL data).
alpar@9 136 Thanks to Xypron <xypron.glpk@gmx.de> for contribution.
alpar@9 137
alpar@9 138 * configure.ac
alpar@9 139 Changes were made to use .dylib rather than .so under Mac OS.
alpar@9 140 Thanks to Noli Sicad <nsicad@gmail.com> for testing
alpar@9 141
alpar@9 142 Wed Jan 13 12:00:00 2010 Andrew Makhorin <mao@gnu.org>
alpar@9 143
alpar@9 144 * GLPK 4.42 (27:0:27) has been released
alpar@9 145
alpar@9 146 * glpapi01.c, glpapi11.c, glpapi12.c, glpdmx.c
alpar@9 147 The following new API routines were added and documented:
alpar@9 148 glp_check_dup (check for duplicate elements in sparse matrix);
alpar@9 149 glp_sort_matrix (sort elements of the constraint matrix);
alpar@9 150 glp_read_prob (read problem data in GLPK format);
alpar@9 151 glp_write_prob (write problem data in GLPK format);
alpar@9 152 glp_analyze_bound (analyze active bound of non-basic variable);
alpar@9 153 glp_analyze_coef (analyze obj. coefficient at basic variable);
alpar@9 154 glp_print_ranges (print sensitivity analysis report; replaces
alpar@9 155 lpx_print_sens_bnds).
alpar@9 156
alpar@9 157 * glpapi20.c
alpar@9 158 New command-line options were added to glpsol:
alpar@9 159 --glp (read problem data in GLPK format);
alpar@9 160 --wglp (write problem data in GLPK format);
alpar@9 161 --lp (replaces --cpxlp);
alpar@9 162 --wlp (replaces --wcpxlp);
alpar@9 163 --ranges (print sensitivity analysis report).
alpar@9 164
alpar@9 165 * glpapi06.c
alpar@9 166 In the routine glp_init_smcp default value of the parameter
alpar@9 167 out_frq was changed to 500 (it was 200).
alpar@9 168
alpar@9 169 * glpipp.h, glpipp01.c, glpipp02.c
alpar@9 170 The old MIP preprocessor module was removed.
alpar@9 171
alpar@9 172 * glpapi09.c
alpar@9 173 Now the MIP solver uses the new MIP preprocessor (NPP).
alpar@9 174
alpar@9 175 * glplpx03.c
alpar@9 176 lpx_write_opb was disabled due to replacing IPP with NPP.
alpar@9 177
alpar@9 178 * glpnet09.c
alpar@9 179 Kellerman's heuristic to cover edges by cliques was added.
alpar@9 180
alpar@9 181 * glplib08.c
alpar@9 182 Recognition of special filenames "/dev/stdin", "/dev/stdout",
alpar@9 183 and "/dev/stderr" was added.
alpar@9 184
alpar@9 185 * glpk.tex
alpar@9 186 Chapter "Graph and network routines" was carried out from the
alpar@9 187 reference manual as a separate document.
alpar@9 188
alpar@9 189 Mon Dec 21 12:00:00 2009 Andrew Makhorin <mao@gnu.org>
alpar@9 190
alpar@9 191 * GLPK 4.41 (26:0:26) has been released
alpar@9 192
alpar@9 193 * glpapi12.c
alpar@9 194 The following new API routines were added:
alpar@9 195 glp_transform_row (replaces lpx_transform_row);
alpar@9 196 glp_transform_col (replaces lpx_transform_col);
alpar@9 197 glp_prim_rtest (replaces lpx_prim_ratio_test);
alpar@9 198 glp_dual_rtest (replaces lpx_dual_ratio_test).
alpar@9 199 Note that values returned by glp_prim_rtest and glp_dual_rtest
alpar@9 200 differ from the ones retutned by the deprecated routines.
alpar@9 201
alpar@9 202 * glpnpp*.*
alpar@9 203 The LP/MIP preprocessor was essentially re-implemented.
alpar@9 204
alpar@9 205 * glpios03.c
alpar@9 206 The feature to remove inactive cuts from the active subproblem
alpar@9 207 was implemented.
alpar@9 208
alpar@9 209 * glpios11.c
alpar@9 210 The feature processing cuts stored in the cut pool was improved
alpar@9 211 (now it uses estimation of objective degradation).
alpar@9 212
alpar@9 213 * glpscg.*
alpar@9 214 Obsolete implemetation of the conflict graph was removed.
alpar@9 215
alpar@9 216 * glpmpl.h, glpmpl03.c, glpmpl04.c
alpar@9 217 FILE was replaced by XFILE to allow using GLPK I/O routines.
alpar@9 218
alpar@9 219 * glpsql.c, examples/sql, doc/tables.tex
alpar@9 220 The SQL table driver was changed to allow multiple arguments
alpar@9 221 separated by semicolon in SQL statements. Thanks to Xypron
alpar@9 222 <xypron.glpk@gmx.de>.
alpar@9 223
alpar@9 224 * glpk.h, glpapi14.c
alpar@9 225 New API routine glp_time was added (not documented yet).
alpar@9 226
alpar@9 227 * glpapi20.c
alpar@9 228 Two new options were added to glpsol: --seed value (initialize
alpar@9 229 pseudo-random number generator used in MathProg model with
alpar@9 230 specified seed value), and --ini filename (use as initial basis
alpar@9 231 previously saved with -w option).
alpar@9 232
alpar@9 233 * examples/xyacfs.mod
alpar@9 234 Thanks to Nigel Galloway <nigel_galloway@operamail.com> for
alpar@9 235 contribution.
alpar@9 236
alpar@9 237 * examples/dbf/*.*
alpar@9 238 Thanks to Noli Sicad <nsicad@gmail.com> for contribution.
alpar@9 239
alpar@9 240 * w32/*.*, w64/*.*
alpar@9 241 Scripts to build GLPK with Microsoft Visual Studio 2010 were
alpar@9 242 added. Thanks to Xypron <xypron.glpk@gmx.de> for contribution
alpar@9 243 and testing.
alpar@9 244
alpar@9 245 Tue Nov 03 12:00:00 2009 Andrew Makhorin <mao@gnu.org>
alpar@9 246
alpar@9 247 * GLPK 4.40 (25:0:25) has been released
alpar@9 248
alpar@9 249 * glpdmx.c
alpar@9 250 Two new API routines were added:
alpar@9 251 glp_read_ccdata (read graph in DIMACS clique/coloring format);
alpar@9 252 glp_write_ccdata (write graph in DIMACS clique/coloring format).
alpar@9 253 Also an example file examples/sample.col was added.
alpar@9 254
alpar@9 255 * glpapi19.c, glpnet08.c
alpar@9 256 New API routine glp_wclique_exact was added. It is intended to
alpar@9 257 find a maximum weight clique with the exact algorithm developed
alpar@9 258 by Prof. P. Ostergard.
alpar@9 259
alpar@9 260 * glpnpp02.c
alpar@9 261 A bug was fixed in the LP preprocessor (routine npp_empty_col).
alpar@9 262 Thanks to Stefan Vigerske <stefan@math.hu-berlin.de> for the
alpar@9 263 bug report.
alpar@9 264
alpar@9 265 * glpios10.c
alpar@9 266 A bug was fixed and some improvements were made in the FPUMP
alpar@9 267 heuristic module. Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9 268
alpar@9 269 * glpapi12.c
alpar@9 270 A bug was fixed in the API routine glp_warm_up (dual
alpar@9 271 feasibility test was incorrect in maximization case). Thanks to
alpar@9 272 Uday Venkatadri <Uday.Venkatadri@dal.ca> for the bug report.
alpar@9 273
alpar@9 274 * glpapi16.c
alpar@9 275 Two new API routines were added:
alpar@9 276 glp_del_vertices (remove vertices from graph);
alpar@9 277 glp_del_arc (remove arc from graph).
alpar@9 278
alpar@9 279 * glpios09.c
alpar@9 280 The hybrid pseudocost branching heuristic was included in the
alpar@9 281 MIP solver. It is available on API level (iocp.br_tech should
alpar@9 282 be set to GLP_BR_PCH) and in the stand-alone solver glpsol
alpar@9 283 (via the command-line option --pcost). This heuristic may be
alpar@9 284 useful on solving hard MIP instances.
alpar@9 285
alpar@9 286 * glpios03.c
alpar@9 287 The branching heuristic by Driebeck and Tomlin (used in the
alpar@9 288 MIP solver by default) was changed to switch to branching on
alpar@9 289 most fractional variable if an lower bound of degradation of
alpar@9 290 the objective is close to zero for all branching candidates.
alpar@9 291
alpar@9 292 Sun Jul 26 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 293
alpar@9 294 * GLPK 4.39 (24:0:24) has been released
alpar@9 295
alpar@9 296 * glpsdf.c
alpar@9 297 New API routines to read plain data files were added.
alpar@9 298
alpar@9 299 * glpcpx.h, glpini.h, glpscl.h
alpar@9 300 These headers were removed.
alpar@9 301
alpar@9 302 * glpcpx.c
alpar@9 303 API routines glp_read_lp and glp_write_lp to read/write files
alpar@9 304 in CPLEX LP format were re-implemented. Now glp_write_lp
alpar@9 305 correctly writes double-bounded (ranged) rows by introducing
alpar@9 306 slack variables rather than by duplicating the rows. The data
alpar@9 307 structure glp_cpxcp and routine glp_init_cpxcp were added.
alpar@9 308
alpar@9 309 * amd/*
alpar@9 310 The 'xfree(NULL)' bug was fixed in the AMD routines. Thanks to
alpar@9 311 Niels Klitgord <niels@bu.edu> for the bug report.
alpar@9 312
alpar@9 313 * glpapi16.c
alpar@9 314 New API routines glp_set_vertex_name, glp_create_v_index,
alpar@9 315 glp_find_vertex, and glp_delete_v_index were added.
alpar@9 316
alpar@9 317 * glpdmx.c
alpar@9 318 New API routines glp_read_asnprob, glp_write_asnprob,
alpar@9 319 glp_read_ccformat, and glp_write_ccformat were added (the two
alpar@9 320 latter routines are not documented yet).
alpar@9 321
alpar@9 322 * glpapi18.c
alpar@9 323 New API routines glp_check_asnprob, glp_asnprob_lp,
alpar@9 324 glp_asnprob_okalg, and glp_asnprob_hall were added.
alpar@9 325
alpar@9 326 * glpini01.c, glpini02.c
alpar@9 327 The message "Crashing..." was changed to "Constructing initial
alpar@9 328 basis..." due to suggestion by Thomas Kahle <tom111@gmx.de>.
alpar@9 329
alpar@9 330 * glpapi14.c
alpar@9 331 New API routines glp_printf, glp_vprintf, glp_malloc,
alpar@9 332 glp_calloc, glp_free, and glp_assert were added.
alpar@9 333
alpar@9 334 * glplpp.h, glplpp01.c, glplpp02.c
alpar@9 335 Old LP presolver routines were removed. Now glp_simplex uses
alpar@9 336 new preprocessing routines (see glpnpp).
alpar@9 337
alpar@9 338 * glpapi12.c
alpar@9 339 New API routine glp_warm_up was added; it replaces the routine
alpar@9 340 lpx_warm_up.
alpar@9 341
alpar@9 342 Sat May 02 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 343
alpar@9 344 * GLPK 4.38 (23:0:23) has been released
alpar@9 345
alpar@9 346 * glpmps.c
alpar@9 347 API routines to read/write MPS files were re-implemented.
alpar@9 348
alpar@9 349 * glpspx02.c
alpar@9 350 Some improvements were made in the dual simplex routine.
alpar@9 351
alpar@9 352 * glpk.h
alpar@9 353 New structure glp_iptcp was added.
alpar@9 354
alpar@9 355 * glpnpp.h, glpnpp01.c, glpnpp02.c
alpar@9 356 New LP/MIP preprocessor. Currently it includes only some basic
alpar@9 357 routines and used only in the interior-point solver.
alpar@9 358
alpar@9 359 * glpapi08.c
alpar@9 360 API routine glp_interior was replaced by an improved version
alpar@9 361 (new LP/MIP preprocessor, new ordering algorithms).
alpar@9 362
alpar@9 363 New API routine glp_init_iptcp was added.
alpar@9 364
alpar@9 365 API routine glp_ipt_status may return two new statuses due to
alpar@9 366 changes in glp_interior.
alpar@9 367
alpar@9 368 * glpsol.c
alpar@9 369 New command-line options were added (ordering algorithm used in
alpar@9 370 the interior-point solver).
alpar@9 371
alpar@9 372 * amd/*.*, colamd/*.*
alpar@9 373 Two external software modules AMD and COLAMD/SYMAMD used in the
alpar@9 374 interior-point solver were included in the distribution.
alpar@9 375
alpar@9 376 For details see amd/README and colamd/README.
alpar@9 377
alpar@9 378 * glpnet03.c, glpnet04.c, glpnet05.c
alpar@9 379 A minor bug was fixed (_G => G_). Thanks to Nelson H. F. Beebe
alpar@9 380 <beebe@math.utah.edu> for bug report.
alpar@9 381
alpar@9 382 Sun Mar 29 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 383
alpar@9 384 * GLPK 4.37 (22:0:22) has been released
alpar@9 385
alpar@9 386 * glpk.h
alpar@9 387 iocp.fp_heur was added to enable/disable fpump heuristic.
alpar@9 388
alpar@9 389 * glpios10.c
alpar@9 390 ios_feas_pump was added (feasibility pump heuristic).
alpar@9 391
alpar@9 392 * glpsol.c
alpar@9 393 --fpump command-line option was added.
alpar@9 394
alpar@9 395 * glpsds.c
alpar@9 396 Plain data set routines were added to facilitate reading plain
alpar@9 397 data in application programs. Currently these routines are not
alpar@9 398 in API, though declared in glpk.h.
alpar@9 399
alpar@9 400 * glpapi08.c
alpar@9 401 A bug was fixed in the internal routine restore. (Due to this
alpar@9 402 bug dual solution components were computed incorrectly if the
alpar@9 403 problem was scaled.)
alpar@9 404
alpar@9 405 * glpapi10.c, glpapi11.c
alpar@9 406 The following new API routines were added:
alpar@9 407 glp_print_sol (replaces lpx_print_sol);
alpar@9 408 glp_print_ipt (replaces lpx_print_ips);
alpar@9 409 glp_print_mip (replaces lpx_print_mip);
alpar@9 410 _glp_check_kkt (replaces lpx_check_kkt, lpx_check_int).
alpar@9 411 Now the routine lpx_print_prob (deprecated) is equivalent to
alpar@9 412 the routine glp_write_lp.
alpar@9 413
alpar@9 414 * glpapi18.c, glpapi19.c
alpar@9 415 The following new API routines were added:
alpar@9 416 glp_read_graph (read graph from plain text file);
alpar@9 417 glp_write_graph (write graph to plain text file);
alpar@9 418 glp_weak_comp (find all weakly connected components);
alpar@9 419 glp_strong_comp (find all strongly connected components).
alpar@9 420
alpar@9 421 * configure.ac, Makefile.am
alpar@9 422 Changes were made: (a) to allow using autoreconf/autoheader;
alpar@9 423 (b) to allow building glpk in a directory other than its source
alpar@9 424 directory. Thanks to Marco Atzeri <marco_atzeri@yahoo.it> for
alpar@9 425 bug report.
alpar@9 426
alpar@9 427 * examples/shiftcover.mod
alpar@9 428 An example model in MathProg was added.
alpar@9 429 Thanks to Larry D'Agostino <Larry.D'Agostino@gmacrescap.com>
alpar@9 430 for contribution.
alpar@9 431
alpar@9 432 Fri Feb 06 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 433
alpar@9 434 * GLPK 4.36 (21:0:21) has been released
alpar@9 435
alpar@9 436 * glpnet06.c, glpnet07.c, glpapi19.c
alpar@9 437 The following new API routines were added:
alpar@9 438 glp_mincost_okalg find minimum-cost flow with out-of-kilter
alpar@9 439 algorithm
alpar@9 440 glp_maxflow_ffalg find maximal flow with Ford-Fulkerson
alpar@9 441 algorithm
alpar@9 442
alpar@9 443 * glpsol.c
alpar@9 444 Two new command-line options were added:
alpar@9 445 --mincost read min-cost flow data in DIMACS format
alpar@9 446 --maxflow read maximum flow data in DIMACS format
alpar@9 447
alpar@9 448 * doc/glpk.*
alpar@9 449 New edition of the reference manual was included.
alpar@9 450
alpar@9 451 * glpk.h
alpar@9 452 Duplicate symbols were removed to allow using swig.
alpar@9 453 Thanks to Kelly Westbrooks <kellywestbrooks@yahoo.com> and
alpar@9 454 Nigel Galloway <nigel_galloway@operamail.com> for suggestion.
alpar@9 455
alpar@9 456 * glpcpx.c
alpar@9 457 A minor defect was fixed in the routine glp_write_lp.
alpar@9 458 Thanks to Sebastien Briais <sbriais@free.fr> for bug report.
alpar@9 459
alpar@9 460 * glpsql.c
alpar@9 461 A minor bug was fixed. Thanks to Xypron <xypron.glpk@gmx.de>
alpar@9 462 for patch.
alpar@9 463
alpar@9 464 * examples/hashi.mod, examples/shikaku.mod
alpar@9 465 Two example models in MathProg were added. Thanks to Sebastian
alpar@9 466 Nowozin <nowozin@gmail.com> for contribution.
alpar@9 467
alpar@9 468 * examples/qfit.mod, examples/yacfs.mod
alpar@9 469 Two example models in MathProg were added. Thanks to Nigel
alpar@9 470 Galloway <nigel_galloway@operamail.com> for contribution.
alpar@9 471
alpar@9 472 Fri Jan 09 12:00:00 2009 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 473
alpar@9 474 * GLPK 4.35 (20:0:20) has been released
alpar@9 475
alpar@9 476 * glpk.h, glpapi.c, glpnet.c
alpar@9 477 The following new API routines were added:
alpar@9 478 glp_create_graph create graph
alpar@9 479 glp_set_graph_name assign (change) graph name
alpar@9 480 glp_add_vertices add new vertices to graph
alpar@9 481 glp_add_arc add new arc to graph
alpar@9 482 glp_erase_graph erase graph content
alpar@9 483 glp_delete_graph delete graph
alpar@9 484 glp_read_mincost read minimum cost flow problem data in
alpar@9 485 DIMACS format
alpar@9 486 glp_write_mincost write minimum cost flow problem data in
alpar@9 487 DIMACS format
alpar@9 488 glp_mincost_lp convert minimum cost flow problem to LP
alpar@9 489 glp_netgen Klingman's network problem generator
alpar@9 490 glp_gridgen grid-like network problem generator
alpar@9 491 glp_read_maxflow read maximum flow problem data in DIMACS
alpar@9 492 format
alpar@9 493 glp_write_maxflow write maximum flow problem data in DIMACS
alpar@9 494 format
alpar@9 495 glp_maxflow_lp convert maximum flow problem to LP
alpar@9 496 glp_rmfgen Goldfarb's maximum flow problem generator
alpar@9 497
alpar@9 498 * doc/glpk.*
alpar@9 499 New edition of the reference manual was included.
alpar@9 500
alpar@9 501 * examples/sample.min, examples/sample.max
alpar@9 502 Two example data files in DIMACS format were added.
alpar@9 503
alpar@9 504 * glplib04.c
alpar@9 505 The statement "if (c = '\n') fflush(stdout)" was added to the
alpar@9 506 internal routine xputc to provide "real-time" terminal output.
alpar@9 507 Thanks to Luiz Bettoni <bettoni@cpgei.ct.utfpr.edu.br> for
alpar@9 508 suggestion.
alpar@9 509
alpar@9 510 * glpmpl05.c
alpar@9 511 A minor bug was fixed in the internal routine mpl_fn_time2str.
alpar@9 512 Thanks to Stefan Vigerske <stefan@vigerske.de> for bug report.
alpar@9 513
alpar@9 514 * w32/makefile, w64/makefile
alpar@9 515 The flag -O2 (/O2) was added to some makefiles.
alpar@9 516
alpar@9 517 Thu Dec 04 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 518
alpar@9 519 * GLPK 4.34 (19:0:19) has been released
alpar@9 520
alpar@9 521 * src/glpios03.c
alpar@9 522 A bug was fixed in the internal routine branch_on. Thanks to
alpar@9 523 Nigel Galloway <nigel_galloway@operamail.com> for bug report.
alpar@9 524
alpar@9 525 * src/glpmpl05.c
alpar@9 526 Three new MathProg functions were included:
alpar@9 527 gmtime obtaining current calendar time
alpar@9 528 str2time converting character string to calendar time
alpar@9 529 time2str converting calendar time to character string
alpar@9 530 Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9 531
alpar@9 532 * doc/glpk.*, doc/gmpl.*
alpar@9 533 A new edition of the GLPK reference manual and GNU MathProg
alpar@9 534 language description were included.
alpar@9 535
alpar@9 536 Thu Oct 30 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 537
alpar@9 538 * GLPK 4.33 (18:0:18) has been released
alpar@9 539
alpar@9 540 * glpapi*.*
alpar@9 541 The following new API routines were added:
alpar@9 542 glp_copy_prob copy problem object content
alpar@9 543 glp_exact solve LP in exact arithmetic
alpar@9 544 (makes lpx_exact deprecated)
alpar@9 545 glp_get_unbnd_ray determine variable causing unboundedness
alpar@9 546 (makes lpx_get_ray_info deprecated)
alpar@9 547 glp_interior solve LP with interior-point method
alpar@9 548 (makes lpx_interior deprecated)
alpar@9 549
alpar@9 550 * glpapi*.*
alpar@9 551 The following new API routines for processing models written in
alpar@9 552 the GNU Mathprog language were added to the package:
alpar@9 553 glp_mpl_alloc_wksp allocate the translator workspace
alpar@9 554 glp_mpl_read_model read and translate model section
alpar@9 555 glp_mpl_read_data read and translate data section
alpar@9 556 glp_mpl_generate generate the model
alpar@9 557 glp_mpl_build_prob build LP/MIP instance from the model
alpar@9 558 glp_mpl_postsolve postsolve the model
alpar@9 559 glp_mpl_free_wksp deallocate the translator workspace
alpar@9 560 (These routines make lpx_read_model deprecated.)
alpar@9 561
alpar@9 562 * src/glpapi17.c, examples/glpsol.c
alpar@9 563 The stand-alone solver glpsol was re-implemented with new API
alpar@9 564 routines.
alpar@9 565
alpar@9 566 * src/glpsql.c
alpar@9 567 Some bugs were fixed in the SQL table driver. Thanks to Xypron
alpar@9 568 <xypron.glpk@gmx.de>.
alpar@9 569
alpar@9 570 * examples/cplex/*.*
alpar@9 571 A crude implementation of CPLEX-like interface to GLPK API was
alpar@9 572 added to the package. See examples/cplex/README.
alpar@9 573
alpar@9 574 Fri Oct 03 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 575
alpar@9 576 * GLPK 4.32 (17:0:17) has been released
alpar@9 577
alpar@9 578 * glpmpl01.c
alpar@9 579 A bug was fixed. Due to this bug iterated expressions having
alpar@9 580 an indexing expression whose dummy indices are bound to some
alpar@9 581 values, i.e. like sum{(i+1,j,k-1) in E} x[i,j,k] are evaluated
alpar@9 582 incorrectly. Namely, current value of such expressions is not
alpar@9 583 invalidated when corresponding dummy indices (like i and k in
alpar@9 584 the example above) are changed, that erroneously results in the
alpar@9 585 same value evaluated for the first time.
alpar@9 586
alpar@9 587 * glpios03.c
alpar@9 588 Euclidean reduction of the local objective bound was added in
alpar@9 589 the routine glpios03.c.
alpar@9 590
alpar@9 591 * glpapi11.c
alpar@9 592 The following new branch-and-cut API routines were added:
alpar@9 593 glp_ios_row_attr determine additional row attributes;
alpar@9 594 glp_ios_pool_size determine current size of the cut pool;
alpar@9 595 glp_ios_add_row add constraint to the cut pool;
alpar@9 596 glp_ios_del_row delete constraint from the cut pool;
alpar@9 597 glp_ios_clear_pool delete all constraints from the cut pool.
alpar@9 598
alpar@9 599 * glpapi08.c
alpar@9 600 The following new features were included in the branch-and-cut
alpar@9 601 solver (the API routine glp_intopt):
alpar@9 602 MIP presolver;
alpar@9 603 mixed cover cut generator;
alpar@9 604 clique cut generator.
alpar@9 605 Due to the MIP presolver glp_intopt may additionally return
alpar@9 606 GLP_ENOPFS and GLP_ENODFS, if primal or dual infeasibility of
alpar@9 607 LP relaxation is detected by the presolver. Also the return
alpar@9 608 code GLP_EMIPGAP was introduced to correctly indicate that the
alpar@9 609 mip gap tolerance is reached.
alpar@9 610
alpar@9 611 * glplpx01.c
alpar@9 612 Now the obsolete API routines lpx_integer and lpx_intopt are
alpar@9 613 completely superseded by the API routine glp_intopt that makes
alpar@9 614 them deprecated.
alpar@9 615
alpar@9 616 * glpmpl05.c
alpar@9 617 Now the table driver name "iODBC" can be specified as "ODBC".
alpar@9 618
alpar@9 619 * glpmpl03.c
alpar@9 620 A bug fixed in the routine free_dca.
alpar@9 621 Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9 622
alpar@9 623 * glpsql.c
alpar@9 624 A bug was fixed in the SQL table driver.
alpar@9 625 Thanks to Xypron <xypron.glpk@gmx.de>.
alpar@9 626
alpar@9 627 * examples/glpsol.c
alpar@9 628 Changes were made to allow multiple MathProg data files.
alpar@9 629
alpar@9 630 * doc/glpk.*
alpar@9 631 A new edition of the GLPK reference manual was included.
alpar@9 632
alpar@9 633 * doc/tables.*
alpar@9 634 A new edition of the supplement "Using data tables in the GNU
alpar@9 635 MathProg language" was included.
alpar@9 636
alpar@9 637 Tue Sep 02 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 638
alpar@9 639 * GLPK 4.31 (16:0:16) has been released
alpar@9 640
alpar@9 641 * glpspx.h, glpspx01.c, glpspx02.c, glpapi06.c
alpar@9 642 The dual simplex solver (spx_dual_opt) was replaced by a new
alpar@9 643 implementation of the two-phase dual simplex method (spx_dual).
alpar@9 644 Old simplex method routines (spx_prim_opt, spx_prim_feas, and
alpar@9 645 spx_dual_opt) were removed from the package.
alpar@9 646
alpar@9 647 * glpk.h, glpscl.h, glpscl.c, glpapi04.c
alpar@9 648 New API routine glp_scale_prob was added. It replaces routine
alpar@9 649 lpx_scale_prob which is deprecated.
alpar@9 650
alpar@9 651 * glpk.h, glpini.h, glpini01.c, glpini02.c, glpapi05.c
alpar@9 652 New API routines glp_std_basis, glp_adv_basis, glp_cpx_basis
alpar@9 653 were added. They replace routines lpx_std_basis, lpx_adv_basis,
alpar@9 654 lpx_cpx_basis which are deprecated.
alpar@9 655
alpar@9 656 * glpdmp.c
alpar@9 657 8-byte data alignment was added to the module (sufficient for
alpar@9 658 both ILP32 and LP64 environments).
alpar@9 659
alpar@9 660 * glplib07.c
alpar@9 661 16-byte data alignment was added to the module to provide
alpar@9 662 compatibility with LP64 environment (8-byte is not sufficient
alpar@9 663 due to jmp_buf; thanks to Xypron for investigation).
alpar@9 664
alpar@9 665 * glplpx16.c
alpar@9 666 New version of the routine lpx_write_pb was added. Thanks to
alpar@9 667 Oscar Gustafsson <oscarg@isy.liu.se> for the contribution.
alpar@9 668
alpar@9 669 * w32/VC9, w64/VC9
alpar@9 670 Makefiles and batch files were added to build GLPK under 32-
alpar@9 671 and 64-bit Windows with Microsoft Visual Studio Express 2008.
alpar@9 672 Thanks to Heinrich Schuchardt <heinrich.schuchardt@gmx.de> for
alpar@9 673 the contribution and testing.
alpar@9 674
alpar@9 675 * w32/DM, w32/OWC
alpar@9 676 Makefiles and batch files were added to build GLPK with Digital
alpar@9 677 Mars C/C++ 8.50 and Open Watcom C/C++ 1.6 (32-bit Windows).
alpar@9 678
alpar@9 679 Wed Aug 13 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 680
alpar@9 681 * GLPK 4.30 (15:0:15) has been released
alpar@9 682
alpar@9 683 * glpspx.h, glpspx03.c, glpapi06.c
alpar@9 684 The primal simplex solver (spx_prim_opt, spx_prim_feas) was
alpar@9 685 replaced by a new implementation (spx_primal), which currently
alpar@9 686 provides the same features as the old version.
alpar@9 687
alpar@9 688 * glpmpl01.c, glpmpl03.c
alpar@9 689 Some changes were made in the MathProg translator to allow <,
alpar@9 690 <=, >=, and > on comparing symbolic values. Thanks to Heinrich
alpar@9 691 Schuchardt <heinrich.schuchardt@gmx.de> for patches.
alpar@9 692
alpar@9 693 * glplpx10.c
alpar@9 694 Internal routine set_d_eps in the exact LP solver was changed
alpar@9 695 to prevent approximation errors in case of integral data.
alpar@9 696 Thanks to Markus Pilz <pilz@cs.uni-bonn.de> for bug report.
alpar@9 697
alpar@9 698 XXX XXX XX 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 699
alpar@9 700 * GLPK 4.29 (14:0:14) has been released
alpar@9 701
alpar@9 702 * configure.ac
alpar@9 703 The configure script was changed to disable optional features
alpar@9 704 by default. For details see file INSTALL.
alpar@9 705
alpar@9 706 * glpipp02.c
alpar@9 707 A bug was fixed in the internal routine reduce_bounds. Thanks
alpar@9 708 to Anne-Laurence Putz <anne-laurence.putz@eurodecision.com> for
alpar@9 709 the bug report.
alpar@9 710
alpar@9 711 * glpapi01.c
alpar@9 712 New API routine glp_erase_prob was added.
alpar@9 713
alpar@9 714 * glpapi13.c
alpar@9 715 New API routines glp_read_mps and glp_write_mps were added.
alpar@9 716 They replace API routines lpx_read_mps, lpx_read_freemps,
alpar@9 717 lpx_write_mps, and lpx_write_freemps, which are deprecated.
alpar@9 718
alpar@9 719 * glpapi14.c
alpar@9 720 New API routines glp_read_lp and glp_write_lp were added. They
alpar@9 721 replace API routines lpx_read_cpxlp and lpx_write_cpxlp, which
alpar@9 722 are deprecated.
alpar@9 723
alpar@9 724 * glpsql.c
alpar@9 725 Minor bug was fixed. Thanks to Xypron <xypron.glpk@gmx.de> for
alpar@9 726 the bug report.
alpar@9 727
alpar@9 728 Tue Mar 25 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 729
alpar@9 730 * GLPK 4.28 (13:0:13) has been released
alpar@9 731
alpar@9 732 * glplib.h, glplib.c
alpar@9 733 Three wrapper routines xdlopen, xdlsym, and xdlclose, which
alpar@9 734 provide the shared library support, were added. A particular
alpar@9 735 version of these routines depends on the option --enable-dl
alpar@9 736 passed to the configure script (see file INSTALL for details).
alpar@9 737 Thanks to Rafael Laboissiere <rafael@debian.org> for useful
alpar@9 738 advices concerning the shared library support.
alpar@9 739
alpar@9 740 * glpsql.c
alpar@9 741 A static linking to iODBC and MySQL libraries used in the
alpar@9 742 MathProg table drivers was replaced by a dynamic linking to
alpar@9 743 corresponding shared libraries.
alpar@9 744 Many thanks to Heinrich Schuchardt <heinrich.schuchardt@gmx.de>
alpar@9 745 for the contribution and to Vijay Patil <vijay.patil@gmail.com>
alpar@9 746 for testing this feature under Windows XP.
alpar@9 747
alpar@9 748 * glpgmp.h, glpgmp.c
alpar@9 749 A bug (which appeared only on 64-bit platforms) was fixed.
alpar@9 750 Thanks to Axel Simon <Axel.Simon@ens.fr> for the bug report.
alpar@9 751
alpar@9 752 * glpapi.c
alpar@9 753 A bug was fixed in the api routine glp_add_cols. (If the basis
alpar@9 754 is valid, adding column keeps it valid, however, col->bind was
alpar@9 755 set to -1 rather to 0.)
alpar@9 756 Thanks to Cedric[FR] <fox2113@wanadoo.fr> for the bug report.
alpar@9 757
alpar@9 758 * glplib.c
alpar@9 759 64-bit unsigned int type glp_ulong and corresponding routines
alpar@9 760 were replaced by 64-bit signed int type xlong_t.
alpar@9 761
alpar@9 762 * glpk.h, glpapi.c
alpar@9 763 The type glp_ulong was replaced by glp_long. This affects only
alpar@9 764 the api routine glp_mem_usage.
alpar@9 765
alpar@9 766 * glplib.c
alpar@9 767 Compressed data file support was added. This feature requires
alpar@9 768 the zlib data compression libraries and allows compressing and
alpar@9 769 decompressing .gz files "on the fly".
alpar@9 770
alpar@9 771 * glpcli.h, glpcli.c
alpar@9 772 Command-line interface routines were added. (This feature is
alpar@9 773 incomplete so far.)
alpar@9 774
alpar@9 775 Sun Mar 02 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 776
alpar@9 777 * GLPK 4.27 (12:0:12) has been released
alpar@9 778
alpar@9 779 * glpsql.h, glpsql.c
alpar@9 780 Two MathProg table drivers for iODBC and MySQL contributed by
alpar@9 781 Heinrich Schuchardt <heinrich.schuchardt@gmx.de> were added to
alpar@9 782 the package.
alpar@9 783
alpar@9 784 * glpmpl05.c
alpar@9 785 Mathprog table driver for xBASE was added to the package.
alpar@9 786
alpar@9 787 * glpmpl03.c
alpar@9 788 A minor was fixed in the MathProg translator (if some field
alpar@9 789 specified in the table statement is missing in corresponding
alpar@9 790 input table, the bug causes abnormal termination). Thanks to
alpar@9 791 Heinrich Schuchardt <heinrich.schuchardt@gmx.de> for the bug
alpar@9 792 report.
alpar@9 793
alpar@9 794 * glpmpl.h, glpmpl.c
alpar@9 795 STRING data type was replaced by plain character strings.
alpar@9 796
alpar@9 797 Sun Feb 17 12:00:00 2008 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 798
alpar@9 799 * GLPK 4.26 (11:0:11) has been released
alpar@9 800
alpar@9 801 * glpmpl.h, glpmpl01.c, glpmpl03.c, glpmpl05.c
alpar@9 802 The table statement was implemented. Description of this new
alpar@9 803 feature is given in file doc/tables.txt.
alpar@9 804
alpar@9 805 * glpios03.c
alpar@9 806 A bug causing zero divide error on computing euclidean norm of
alpar@9 807 the cut coefficient vector was fixed.
alpar@9 808
alpar@9 809 Wed Dec 19 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 810
alpar@9 811 * GLPK 4.25 (10:0:10) has been released
alpar@9 812
alpar@9 813 * glpapi10.c
alpar@9 814 Routines lpx_eval_tab_row and lpx_eval_tab_col were replaced by
alpar@9 815 glp_eval_tab_row and glp_eval_tab_col.
alpar@9 816
alpar@9 817 * glpios03.c, glpios05.c
alpar@9 818 Gomory's mixed integer cuts were implemented.
alpar@9 819
alpar@9 820 * glpscs.h, glpscs.c
alpar@9 821 Segmented character string routines are no longer used and were
alpar@9 822 removed from the package.
alpar@9 823
alpar@9 824 Wed Nov 21 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 825
alpar@9 826 * GLPK 4.24 (9:0:9) has been released
alpar@9 827
alpar@9 828 * src/glplpx16.c
alpar@9 829 A bug was fixed in the routine lpx_write_cpxlp. If a variable
alpar@9 830 x has upper bound and no lower bound, it should appear in the
alpar@9 831 bounds section as "-inf <= x <= u", not as "x <= u". Thanks to
alpar@9 832 Enric Rodriguez <erodri@lsi.upc.edu> for the bug report.
alpar@9 833
alpar@9 834 * src/glpios03.c, src/glpios04.c, src/glpios05.c
alpar@9 835 MIR (mixed integer rounding) cuts were implemented.
alpar@9 836
alpar@9 837 Sun Oct 28 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 838
alpar@9 839 * GLPK 4.23 (8:0:8) has been released
alpar@9 840
alpar@9 841 * src/glplib05.c, configure.ac
alpar@9 842 Check for vsnprintf was added.
alpar@9 843
alpar@9 844 * include/glppds.h, src/glppds.c
alpar@9 845 A module to scan plain data was added.
alpar@9 846
alpar@9 847 * src/glpapi09.c
alpar@9 848 The following new API routines were added:
alpar@9 849 glp_read_sol read basic solution from text file;
alpar@9 850 glp_write_sol write basic solution to text file;
alpar@9 851 glp_read_ipt read interior-point solution from text file;
alpar@9 852 glp_write_ipt write interior-point solution to text file;
alpar@9 853 glp_read_mip read MIP solution from text file;
alpar@9 854 glp_write_mip write MIP solution to text file.
alpar@9 855
alpar@9 856 * src/glpapi12.c
alpar@9 857 Advanced API routine glp_free_env was added.
alpar@9 858
alpar@9 859 * examples/glpsol.c
alpar@9 860 The following three command-line options were added:
alpar@9 861 --mipgap tol set relative MIP gap tolerance
alpar@9 862 -r filename read solution from filename
alpar@9 863 -w filename write solution to filename
alpar@9 864
alpar@9 865 Wed Sep 19 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 866
alpar@9 867 * GLPK 4.22 (7:0:7) has been released
alpar@9 868
alpar@9 869 * src/glpios02.c
alpar@9 870 A bug was fixed in the MIP preprocessor (ios_preprocess_node).
alpar@9 871 Thanks to Roberto Bagnara <bagnara@cs.unipr.it> (Department of
alpar@9 872 Mathematics, University of Parma, Italy) for the bug report.
alpar@9 873
alpar@9 874 * src/glpios02.c
alpar@9 875 A bug was fixed in the MIP preprocessor (col_implied_bounds),
alpar@9 876 due to which constraint coefficients with small magnitude could
alpar@9 877 lead to wrong implied bounds of structural variables.
alpar@9 878
alpar@9 879 * src/glpipp02.c
alpar@9 880 A similar bug was fixed in the routine reduce_bounds.
alpar@9 881
alpar@9 882 * src/glpapi01.c
alpar@9 883 A bug was fixed in the routines glp_set_mat_row and
alpar@9 884 glp_set_mat_col. (The bug appeared due to incorrect removing
alpar@9 885 zero elements from the row/column lists.)
alpar@9 886
alpar@9 887 * src/glplpx14.c
alpar@9 888 A bug was fixed in the API routines lpx_read_mps and
alpar@9 889 lpx_read_freemps, due to which bounds of type LI specified in
alpar@9 890 BOUNDS section were incorrectly processed.
alpar@9 891
alpar@9 892 * src/glplib05.c
alpar@9 893 A call to standard function vsprintf was replaced by a call to
alpar@9 894 vsnprintf for security reasons. Many thanks to Peter T. Breuer
alpar@9 895 <ptb@inv.it.uc3m.es> and Rafael Laboissiere <rafael@debian.org>.
alpar@9 896
alpar@9 897 Tue Aug 28 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 898
alpar@9 899 * GLPK 4.21 (6:0:6) has been released
alpar@9 900
alpar@9 901 * glpscg.h, glpscg.c
alpar@9 902 Routines to maintain sparse cliqued graph were added.
alpar@9 903
alpar@9 904 * glpios02.c
alpar@9 905 MIP preprocessing routines were added.
alpar@9 906
alpar@9 907 * glpk.h, glpios.h, glpios03.c
alpar@9 908 New reasons for calling the callback routine were introduced
alpar@9 909 in the MIP solver.
alpar@9 910
alpar@9 911 * glpapi08.c
alpar@9 912 Default backtracking strategy was changed to best local bound.
alpar@9 913
alpar@9 914 * glpapi11.c
alpar@9 915 New API routine glp_term_out to enable/disable terminal output
alpar@9 916 was added.
alpar@9 917
alpar@9 918 * glprng.h, glprng02.c
alpar@9 919 Two routines to generate uniformly distributed pseudo-random
alpar@9 920 floating-point numbers were added.
alpar@9 921
alpar@9 922 Thu Jul 26 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 923
alpar@9 924 * GLPK 4.20 (5:0:5) has been released
alpar@9 925
alpar@9 926 * glpk.h, glpapi08.c
alpar@9 927 The routine lpx_integer was replaced by an equivalent routine
alpar@9 928 glp_intopt. Also new API routine glp_init_iocp was added.
alpar@9 929
alpar@9 930 * glpiet.h, glpiet.c
alpar@9 931 Routines implementing the implicit enumeration tree are
alpar@9 932 no longer used and therefore were removed from the package.
alpar@9 933
alpar@9 934 * glpios.h, glpios01.c, glpios02, glpios03
alpar@9 935 Routines implementing the integer optimization suite being
alpar@9 936 replaced by a new version were removed from the package.
alpar@9 937
alpar@9 938 * glpmip.h, glpmip01.c, glpmip02.c
alpar@9 939
alpar@9 940 Routines implementing the B&B method being replaced by a new
alpar@9 941 version were removed from the package.
alpar@9 942
alpar@9 943 * glpios.h, glpios01.c, glpios02.c
alpar@9 944
alpar@9 945 Routines implementing a new version of the integer optimization
alpar@9 946 suite (IOS) based on the B&B method were added to the package.
alpar@9 947
alpar@9 948 * glpk.h, glpapi10.c
alpar@9 949 Branch-and-bound interface routines were added to the package.
alpar@9 950
alpar@9 951 * examples/tspsol.c
alpar@9 952 The TSP solver based on old version of the integer optimization
alpar@9 953 suite is no more supported and was removed from the package.
alpar@9 954
alpar@9 955 * glpipp02.c
alpar@9 956 An error in the routine reduce_bounds was fixed; thanks to
alpar@9 957 Graham Rockwell <bionomicron@gmail.com> for the bug report.
alpar@9 958
alpar@9 959 * glpk.latex
alpar@9 960 A new edition of the reference manual was included.
alpar@9 961
alpar@9 962 Thu Jul 05 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 963
alpar@9 964 * GLPK 4.19 (4:0:4) has been released
alpar@9 965
alpar@9 966 The principal change is upgrading to GPLv3.
alpar@9 967
alpar@9 968 * glpapi01.c
alpar@9 969 A serious bug in the routine glp_del_cols was fixed; thanks to
alpar@9 970 Cedric[FR] <fox2113@wanadoo.fr> for the bug report. The bug
alpar@9 971 appeared because on deleting non-basic columns the basis header
alpar@9 972 remained valid, however, contained invalid (old) column ordinal
alpar@9 973 numbers.
alpar@9 974
alpar@9 975 * glpapi10.c
alpar@9 976 A new advanced API routine glp_mem_limit was added.
alpar@9 977
alpar@9 978 * glplpx01.c
alpar@9 979 The case GLP_EBOUND was added to the routine lpx_simplex.
alpar@9 980 Thanks to Cameron Kellough <Cameron.Kellough@sri.com> for the
alpar@9 981 bug report.
alpar@9 982
alpar@9 983 * glplpx19.c
alpar@9 984 An API routine lpx_write_pb to write the problem instance in
alpar@9 985 OPB (pseudo boolean) format format was added. Thanks to Oscar
alpar@9 986 Gustafsson <oscarg@isy.liu.se> for the contribution.
alpar@9 987
alpar@9 988 * glpsol.c
alpar@9 989 Two new options --wpb and --wnpb were added to glpsol to write
alpar@9 990 the problem instance in OPB format.
alpar@9 991
alpar@9 992 Mon Jun 25 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 993
alpar@9 994 * GLPK 4.18 (3:0:3) has been released
alpar@9 995
alpar@9 996 * glplib.h
alpar@9 997 Type names ulong_t and uldiv_t were changed to glp_ulong and
alpar@9 998 glp_uldiv to avoid conflicts with standard type names on some
alpar@9 999 platforms. Thanks to Boris Wirtz <Boris.Wirtz@uni-oldenburg.de>
alpar@9 1000 for the bug report.
alpar@9 1001
alpar@9 1002 * glpbfd.*, glpfhv.*, glplpf.*
alpar@9 1003 LP basis factorization routines were made tidy.
alpar@9 1004
alpar@9 1005 * glpk.h, glpapi04.c
alpar@9 1006 The following API routines were added:
alpar@9 1007 glp_set_rii, glp_set_sjj, glp_get_rii, glp_get_sjj.
alpar@9 1008
alpar@9 1009 * glpk.h, glpapi06.c
alpar@9 1010 The routine lpx_simplex was replaced by an equivalent routine
alpar@9 1011 glp_simplex. Also new API routine glp_init_smcp was added.
alpar@9 1012
alpar@9 1013 * glpk.h, glpapi09.c
alpar@9 1014 The following advanced API routines were added:
alpar@9 1015 glp_bf_exists, glp_factorize, glp_bf_updated, glp_get_bfcp,
alpar@9 1016 glp_set_bfcp, glp_get_bhead, glp_get_row_bind, glp_get_col_bind,
alpar@9 1017 glp_ftran, glp_btran.
alpar@9 1018
alpar@9 1019 * glpk.latex
alpar@9 1020 A new edition of the reference manual was included.
alpar@9 1021
alpar@9 1022 * examples/dea.mod, examples/food.mod, examples/food2.mod
alpar@9 1023 Three examples in the MathProg language were added.
alpar@9 1024 Thanks to Sebastian Nowozin <nowozin@gmail.com>.
alpar@9 1025
alpar@9 1026 Sat May 26 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1027
alpar@9 1028 * GLPK 4.17 (2:0:2) has been released
alpar@9 1029
alpar@9 1030 * glpdmp.h, glpdmp.c
alpar@9 1031 Memory pool routines were replaced by a new version.
alpar@9 1032
alpar@9 1033 * glpscs.h, glpscs.c
alpar@9 1034 Segmented string routines were replaced by a new version.
alpar@9 1035
alpar@9 1036 * glplpx08.c, glplpx09.c
alpar@9 1037 Now the MIP problem may have no integer columns.
alpar@9 1038
alpar@9 1039 * glpapi01.c
alpar@9 1040 The routines glp_set_mat_row, glp_set_mat_col, and glp_load_mat
alpar@9 1041 were modified to allow zero elements (which are not stored in
alpar@9 1042 the constraint matrix).
alpar@9 1043
alpar@9 1044 * glpscf.h, glpscf.c
alpar@9 1045 Schur complement factorization routines were implemented.
alpar@9 1046
alpar@9 1047 * glplpf.h, glplpf.c
alpar@9 1048 LP basis factorization routines based on LU-factorization and
alpar@9 1049 Schur complement were implemented.
alpar@9 1050
alpar@9 1051 * glplpx02.c, glplpx03.c
alpar@9 1052 New control parameter LPX_K_BFTYPE was introduced to choose the
alpar@9 1053 basis factorization type used by the simplex method routines.
alpar@9 1054
alpar@9 1055 * glpsol.c
alpar@9 1056 Three new command-line options were added to choose the basis
alpar@9 1057 factorization type used by the simplex method routines: --luf,
alpar@9 1058 --cbg, and --cgr.
alpar@9 1059
alpar@9 1060 * glpk.latex
alpar@9 1061 A new edition of the reference manual was included.
alpar@9 1062
alpar@9 1063 Sat May 05 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1064
alpar@9 1065 * GLPK 4.16 (1:0:1) has been released
alpar@9 1066
alpar@9 1067 * glpk.h, glpapi.c, glplpx01.c, glplpx02.c
alpar@9 1068 Names of a number basic api routines were changed and now have
alpar@9 1069 the prefix 'glp_'. To keep backward compatibility these routines
alpar@9 1070 are also available via their old names prefixed with 'lpx_'.
alpar@9 1071
alpar@9 1072 * glplpx19.c
alpar@9 1073 Three new api routines were added: glp_version, glp_term_hook,
alpar@9 1074 and glp_mem_usage.
alpar@9 1075
alpar@9 1076 * glpk.latex, gmpl.texi
alpar@9 1077 A new edition of the reference manuals was included.
alpar@9 1078
alpar@9 1079 * lpglpk40.c
alpar@9 1080 This example program is no longer supported and therefore was
alpar@9 1081 removed from the package.
alpar@9 1082
alpar@9 1083 Sun Feb 18 12:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1084
alpar@9 1085 * GLPK 4.15 (0:0:0) has been released
alpar@9 1086
alpar@9 1087 * configure.ac, Makefile.am
alpar@9 1088 Autotools specification files were changed to use GNU Libtool
alpar@9 1089 that allows building the static as well as shared GLPK library.
alpar@9 1090 Thanks to Rafael Laboissiere <rafael@debian.org>.
alpar@9 1091
alpar@9 1092 Mon Feb 05 08:00:00 2007 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1093
alpar@9 1094 * GLPK 4.14 has been released
alpar@9 1095 Now GLPK conforms to ILP32, LLP64, and LP64 programming models
alpar@9 1096 (the latter seems to be the ultimate choice regarding 64-bit
alpar@9 1097 architectures). Note that GLPK itself is a 32-bit application,
alpar@9 1098 and the conformity only means that the package works correctly
alpar@9 1099 on all these arenae. Nevertheless, on 64-bit platforms it is
alpar@9 1100 possible to use more than 4GB of memory, if necessary.
alpar@9 1101
alpar@9 1102 * Makefile
alpar@9 1103 Starting from this release only the header glpk.h is needed to
alpar@9 1104 be installed.
alpar@9 1105
alpar@9 1106 * glplib01.c
alpar@9 1107 Two routines bigmul and bigdiv which performs multiplication
alpar@9 1108 and division of unsigned integers of arbitrary precision were
alpar@9 1109 added.
alpar@9 1110
alpar@9 1111 * glplib02.c
alpar@9 1112 A set of 64-bit arithmetic routines were added.
alpar@9 1113
alpar@9 1114 * glplib04.c
alpar@9 1115 Some low-level library routines were improved and renamed.
alpar@9 1116
alpar@9 1117 * glpcfg.h
alpar@9 1118 The macro GLP_TM_SPEC were introduced to specify a version of
alpar@9 1119 the time routine depending on the host environment.
alpar@9 1120
alpar@9 1121 Mon Nov 13 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1122
alpar@9 1123 * GLPK 4.13 has been released
alpar@9 1124
alpar@9 1125 * configure.in
alpar@9 1126 '-lm' bug was fixed.
alpar@9 1127
alpar@9 1128 * glpbfx.h, glpbfx.c
alpar@9 1129 Basis factorization interface routines based on exact (bignum)
alpar@9 1130 arithmetic were implemented.
alpar@9 1131
alpar@9 1132 * glpssx.h, glpssx1.c, glpssx2.c
alpar@9 1133 Simplex method routines based on exact (bignum) arithmetic were
alpar@9 1134 implemented.
alpar@9 1135
alpar@9 1136 * glplpx6e.c
alpar@9 1137 The routine lpx_exact, which is an easy-to-use driver to the
alpar@9 1138 exact simplex method, was added.
alpar@9 1139
alpar@9 1140 * glpsol.c
alpar@9 1141 Two command-line options were added: '--exact' and '--xcheck'.
alpar@9 1142
alpar@9 1143 Wed Nov 08 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1144
alpar@9 1145 * GLPK 4.12 has been released
alpar@9 1146
alpar@9 1147 * glpcfg.h
alpar@9 1148 The package configuration file was added.
alpar@9 1149
alpar@9 1150 * glplib2.c
alpar@9 1151 Alternative version of the routines umalloc, ucalloc, and ufree
alpar@9 1152 was provided. It does not limit the amount of allocated memory
alpar@9 1153 to INT_MAX bytes and therefore can be used on platforms where
alpar@9 1154 sizeof(void *) > sizeof(int). To enable this version one should
alpar@9 1155 define the preprocessor variable GLP_HUGE_MEM.
alpar@9 1156
alpar@9 1157 * glprng.c
alpar@9 1158 The routine rng_create_rand was changed to initialize the
alpar@9 1159 generator using seed = 1, not 0, to conform ISO C requirements.
alpar@9 1160
alpar@9 1161 * glpgmp.h, glpgmp.c
alpar@9 1162 A set of bignum arithmetic routines implementing operations on
alpar@9 1163 integers and rationals was added. These routines are compatible
alpar@9 1164 with the GNU MP library.
alpar@9 1165
alpar@9 1166 NOTE: To attain a much better performance it is recommended to
alpar@9 1167 use, if possible, the original GNU MP library rather than the
alpar@9 1168 GLPK version, by defining the preprocessor variable GLP_USE_GMP.
alpar@9 1169
alpar@9 1170 * glplux.h, glplux.c
alpar@9 1171 A tentative implementation of sparse LU-factorization based on
alpar@9 1172 exact (bignum) arithmetic was added.
alpar@9 1173
alpar@9 1174 * glpssx.h, glpssx.c
alpar@9 1175 A tentative implementation of some simplex method routines based
alpar@9 1176 on exact (bignum) arithmetic was added.
alpar@9 1177
alpar@9 1178 * glplpx6f.c
alpar@9 1179 A preliminary implementation of the routine lpx_exact_check was
alpar@9 1180 added. This routine checks the current basis for primal and dual
alpar@9 1181 feasibility using exact (bignum) arithmetic.
alpar@9 1182
alpar@9 1183 * examples/glpsol.c
alpar@9 1184 The command-line option '--xcheck' was introduced to check the
alpar@9 1185 current basis for feasibility using exact (bignum) arithmetic.
alpar@9 1186
alpar@9 1187 Tue Jul 25 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1188
alpar@9 1189 * GLPK 4.11 has been released.
alpar@9 1190
alpar@9 1191 * include/glpbfi.h, src/glpbfi.c
alpar@9 1192 Basis factorization interface routines were added.
alpar@9 1193
alpar@9 1194 * include/glpluf.h, src/glpluf1.c
alpar@9 1195 Hypersparse solution routines were added.
alpar@9 1196
alpar@9 1197 * include/glpinv.h, src/glpinv1.c
alpar@9 1198 Hypersparse solution routines (fake version) were added.
alpar@9 1199
alpar@9 1200 * include/glpmpl.h, src/glpmpl.c
alpar@9 1201 Built-in functions card, length, and substr were implemented.
alpar@9 1202 Output redirection in the printf statement was implemented.
alpar@9 1203
alpar@9 1204 * examples/graph.mod, examples/crypto.mod
alpar@9 1205 Two example models illustrating new features of the modeling
alpar@9 1206 language were included.
alpar@9 1207
alpar@9 1208 Thu May 11 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1209
alpar@9 1210 * GLPK 4.10 has been released.
alpar@9 1211
alpar@9 1212 * src/glplpx8a.c
alpar@9 1213 A fragment was added to the routines lpx_read_mps and
alpar@9 1214 lpx_read_freemps to accept LI bound type (it is similar to LO,
alpar@9 1215 however, additionally marks the column as integer).
alpar@9 1216
alpar@9 1217 * include/glpbfi.h, src/glpbfi.c
alpar@9 1218 The module glpbfi which implements the basis factorization
alpar@9 1219 interface (BFI) was added.
alpar@9 1220
alpar@9 1221 * src/glplpx7a.c
alpar@9 1222 The routine lpx_cover_cut to generate mixed cover cuts was
alpar@9 1223 added.
alpar@9 1224
alpar@9 1225 * src/glplpx7b.c
alpar@9 1226 The routine lpx_clique_cut to generate clique cuts and related
alpar@9 1227 routines to maintain the conflict graph were added.
alpar@9 1228
alpar@9 1229 * include/glplpx.h, src/glplpx5.c
alpar@9 1230 The routine lpx_cpx_basis implementing Bixby's algorithm to
alpar@9 1231 construct an initial LP basis was added.
alpar@9 1232
alpar@9 1233 * examples/glpsol.c
alpar@9 1234 Command-line option '--bib' was added which allows building
alpar@9 1235 an initial LP basis using Bixby's algorithm.
alpar@9 1236 Default command-line option '--mps' was changed to '--freemps'.
alpar@9 1237
alpar@9 1238 * examples/cf12a.mod, examples/cf12b.mod
alpar@9 1239 Two examples in MathProg (curve fitting problem) were added.
alpar@9 1240 Thanks to Dr. Harley Mackenzie <hjm@hardsoftware.com>.
alpar@9 1241
alpar@9 1242 Tue Jan 17 12:00:00 2006 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1243
alpar@9 1244 * GLPK 4.9 has been released.
alpar@9 1245
alpar@9 1246 * glpipp.h, glpipp1.c, glpipp2.c
alpar@9 1247 A MIP presolver were implemented (currently incomplete). It is
alpar@9 1248 used internally in the routine lpx_intopt (see below).
alpar@9 1249
alpar@9 1250 * glplpx6d.c, glplpx7a.c
alpar@9 1251 An advanced branch-and-bound solver (the routine lpx_intopt)
alpar@9 1252 were implemented.
alpar@9 1253
alpar@9 1254 * glplpx6c.c
alpar@9 1255 The routine lpx_check_int to check MIP feasibility conditions
alpar@9 1256 was added.
alpar@9 1257
alpar@9 1258 * glplpx8a.c
alpar@9 1259 The routine lpx_print_mip was changed to print MIP feasibility
alpar@9 1260 conditions.
alpar@9 1261
alpar@9 1262 * glpmpl.h, glpmpl1.c, glpmpl3.c
alpar@9 1263 The built-in functions sin, cos, atan, and atan2 were added to
alpar@9 1264 the MathProg language.
alpar@9 1265
alpar@9 1266 * doc/lang.*
alpar@9 1267 Some typos were fixed.
alpar@9 1268 Thanks to Minh Ha Duong <haduong@centre-cired.fr> (CIRED, CNRS).
alpar@9 1269
alpar@9 1270 Wed Jan 12 12:00:00 2005 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1271
alpar@9 1272 * GLPK 4.8 has been released.
alpar@9 1273
alpar@9 1274 * glpspx.h, glpspx1.c, glpspx2.c, glplpx6a.c
alpar@9 1275 Simplex method routines were changed due to a new format of the
alpar@9 1276 constraint matrix.
alpar@9 1277
alpar@9 1278 * glpmat.h, glpmat.c
alpar@9 1279 Sparse matrix routines were re-implemented using storage-by-rows
alpar@9 1280 format.
alpar@9 1281
alpar@9 1282 * glpipm.h, glpipm.c, glplpx6b.c
alpar@9 1283 Interior-point method routines were changed due to a new format
alpar@9 1284 of sparse matrices.
alpar@9 1285
alpar@9 1286 * glpchol.h, glpchol.c
alpar@9 1287 Old version of Cholesky factorization routines being replaced by
alpar@9 1288 a new one (see glpmat.c) was removed from the package.
alpar@9 1289
alpar@9 1290 * glplpx8c.c
alpar@9 1291 Minor bug was fixed in api routine lpx_read_cpxlp.
alpar@9 1292
alpar@9 1293 Mon Aug 23 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1294
alpar@9 1295 * GLPK 4.7 has been released.
alpar@9 1296
alpar@9 1297 * glplpx.h, glplpx1.c
alpar@9 1298 New core API routines were added (but not documented yet):
alpar@9 1299 lpx_order_matrix, lpx_create_index, lpx_find_row, lpx_find_col,
alpar@9 1300 lpx_delete_index.
alpar@9 1301
alpar@9 1302 * glplpx8a.c
alpar@9 1303 API routine lpx_read_mps was re-implemented, and two new API
alpar@9 1304 routines lpx_read_freemps and lpx_write_freemps were added to
alpar@9 1305 support free MPS format.
alpar@9 1306
alpar@9 1307 * glplpx8c.c
alpar@9 1308 Two API routines lpx_read_cpxlp and lpx_write_cpxlp (formerly
alpar@9 1309 named lpx_read_lpt and lpx_write_lpt) were re-implemented.
alpar@9 1310
alpar@9 1311 * glpmps.h, glpmps.c
alpar@9 1312 This module formerly used in lpx_read_mps was removed from the
alpar@9 1313 package.
alpar@9 1314
alpar@9 1315 * glplpt.h, glplpt.c
alpar@9 1316 This module formerly used in lpx_read_lpt was removed from the
alpar@9 1317 package.
alpar@9 1318
alpar@9 1319 * glpmip.h, glpmip1.h, glpmip2.h
alpar@9 1320 New MIP routines mip_best_node and mip_relative_gap were added
alpar@9 1321 due to suggestion of Brady Hunsaker <hunsaker@engr.pitt.edu>.
alpar@9 1322
alpar@9 1323 * glpsol.c
alpar@9 1324 The following new command-options were added:
alpar@9 1325 --freemps to read problem data in free MPS format
alpar@9 1326 --wfreemps to write problem data in free MPS format
alpar@9 1327 --cpxlp to read problem data in CPLEX LP format
alpar@9 1328 --wcpxlp to write problem data in CPLEX LP format
alpar@9 1329 --bas to read LP basis from a text file in MPS format
alpar@9 1330 --wbas to write LP basis to a text file in MPS format
alpar@9 1331 --mostf to use "most fractional" branching heuristic
alpar@9 1332 --bestb to use "best bound" backtracking heuristic
alpar@9 1333
alpar@9 1334 * contrib/deli/*.*
alpar@9 1335 GLPK Delphi interface module was temporarily removed from the
alpar@9 1336 distribution due to licensing problems.
alpar@9 1337
alpar@9 1338 * contrib/glpkmex/*.*
alpar@9 1339 GLPK Matlab interface module was temporarily removed from the
alpar@9 1340 distribution due to licensing problems.
alpar@9 1341
alpar@9 1342 * contrib/jni/*.*
alpar@9 1343 GLPK Java interface module was temporarily removed from the
alpar@9 1344 distribution due to licensing problems.
alpar@9 1345
alpar@9 1346 Wed Aug 04 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1347
alpar@9 1348 * GLPK 4.6 has been released.
alpar@9 1349
alpar@9 1350 * glpmpl.h, glpmpl1.c, glpmpl2.c, glpmpl3.c, glpmpl4.c
alpar@9 1351 Three new statements were implemented in the GNU MathProg
alpar@9 1352 language: solve, printf, and for. Also some bugs were fixed.
alpar@9 1353
alpar@9 1354 * glplpx.h, glplpx8e.c
alpar@9 1355 Two API routines were added: lpx_read_prob and lpx_write_prob,
alpar@9 1356 which allow reading and writing problem data in GNU LP format.
alpar@9 1357
alpar@9 1358 * glpsol.c
alpar@9 1359 Three new command-line options were added: --glp (to read
alpar@9 1360 problem data in GNU LP format), --wglp (to write problem data
alpar@9 1361 in GNU LP format), and --name (to change problem name).
alpar@9 1362
alpar@9 1363 * glprng.h, glprng.c
alpar@9 1364 A portable pseudo-random number generator was implemented as a
alpar@9 1365 separate module.
alpar@9 1366
alpar@9 1367 * glplib4.c
alpar@9 1368 The old implementation of a pseudo-random number generator was
alpar@9 1369 removed from the package.
alpar@9 1370
alpar@9 1371 * doc/lang.*, doc/refman.*
alpar@9 1372 New edition of the GLPK documentation was included.
alpar@9 1373
alpar@9 1374 * contrib/glpkmex/*.*
alpar@9 1375 A new version of GLPKMEX was included in the distribution. For
alpar@9 1376 more details see contrib/glpkmex/ChangeLog.
alpar@9 1377
alpar@9 1378 Mon Jul 19 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1379
alpar@9 1380 * GLPK 4.5 has been released.
alpar@9 1381
alpar@9 1382 * glpmip.h, glpmip1.c, glpmip2.c, glplpx6c.c
alpar@9 1383 New implementation of the branch-and-bound method was added.
alpar@9 1384 It replaces the old implementation, which was removed from the
alpar@9 1385 package.
alpar@9 1386
alpar@9 1387 * glpies.h, glpies1.c, glpies2.c, glpies3.c
alpar@9 1388 Modules used in the old implementation of the branch-and-bound
alpar@9 1389 method were removed from the package.
alpar@9 1390
alpar@9 1391 * glplib2.c
alpar@9 1392 Now if the preprocessor variable GLPHUGEMEM is defined, other
alpar@9 1393 version of the routines umalloc, ucalloc, and ufree is used on
alpar@9 1394 compiling the package. This allows avoiding memory allocation
alpar@9 1395 problems on platforms where sizeof(void *) > sizeof(int), for
alpar@9 1396 example, where addresses are 64-bit while integers are 32-bit.
alpar@9 1397 The modification was made due to a bug report provided by Karel
alpar@9 1398 Zimmermann <kzimm@diamant.jouy.inra.fr> and Christophe Caron
alpar@9 1399 <caron@diamant.jouy.inra.fr>.
alpar@9 1400
alpar@9 1401 Sat Jan 17 12:00:00 2004 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1402
alpar@9 1403 * GLPK 4.4 has been released.
alpar@9 1404
alpar@9 1405 * glplpx.h, glplpx*.c
alpar@9 1406 All API routines were re-implemented using new data structures.
alpar@9 1407 Some new API routines were added and some existing API routines
alpar@9 1408 became obsolete as shown below:
alpar@9 1409
alpar@9 1410 Obsolete API routine Equivalent new API routine
alpar@9 1411 lpx_check_name (no more supported)
alpar@9 1412 lpx_set_obj_c0 lpx_set_obj_coef
alpar@9 1413 lpx_set_row_coef (no more supported)
alpar@9 1414 lpx_set_col_coef lpx_set_obj_coef
alpar@9 1415 lpx_load_mat (no more supported)
alpar@9 1416 lpx_load_mat3 lpx_load_matrix
alpar@9 1417 lpx_unmark_all (no more supported)
alpar@9 1418 lpx_mark_row (no more supported)
alpar@9 1419 lpx_mark_col (no more supported)
alpar@9 1420 lpx_clear_mat (no more supported)
alpar@9 1421 lpx_del_items lpx_del_rows, lpx_del_cols
alpar@9 1422 lpx_get_row_bnds lpx_get_row_type, lpx_get_row_lb,
alpar@9 1423 lpx_get_row_ub
alpar@9 1424 lpx_get_col_bnds lpx_get_col_type, lpx_get_col_lb,
alpar@9 1425 lpx_get_col_ub
alpar@9 1426 lpx_get_obj_c0 lpx_get_obj_coef
alpar@9 1427 lpx_get_row_coef (no more supported)
alpar@9 1428 lpx_get_col_coef lpx_get_obj_coef
alpar@9 1429 lpx_get_row_mark (no more supported)
alpar@9 1430 lpx_get_col_mark (no more supported)
alpar@9 1431 lpx_get_row_info lpx_get_row_stat, lpx_get_row_prim,
alpar@9 1432 lpx_get_row_dual
alpar@9 1433 lpx_get_col_info lpx_get_col_stat, lpx_get_col_prim,
alpar@9 1434 lpx_get_col_dual
alpar@9 1435 lpx_get_ips_stat lpx_ipt_status
alpar@9 1436 lpx_get_ips_row lpx_ipt_row_prim, lpx_ipt_row_dual
alpar@9 1437 lpx_get_ips_col lpx_ipt_col_prim, lpx_ipt_col_dual
alpar@9 1438 lpx_get_ips_obj lpx_ipt_obj_val
alpar@9 1439 lpx_get_mip_stat lpx_mip_status
alpar@9 1440 lpx_get_mip_row lpx_mip_row_val
alpar@9 1441 lpx_get_mip_col lpx_mip_col_val
alpar@9 1442 lpx_get_mip_obj lpx_mip_obj_val
alpar@9 1443
alpar@9 1444 Obsolete API routines were kept for backward compatibility,
alpar@9 1445 however, they will be removed in the future.
alpar@9 1446
alpar@9 1447 * doc/refman.*
alpar@9 1448 New edition of the GLPK reference manual containing description
alpar@9 1449 of all new API routines was included.
alpar@9 1450
alpar@9 1451 * contrib/glpkmex/*.*
alpar@9 1452 GLPKMEX, a Matlab MEX interface to GLPK package, contributed by
alpar@9 1453 Nicolo Giorgetti <giorgetti@dii.unisi.it> was included.
alpar@9 1454
alpar@9 1455 * doc/GLPK_FAQ.txt
alpar@9 1456 GLPK FAQ contributed by Harley Mackenzie <hjm@bigpond.com> was
alpar@9 1457 included.
alpar@9 1458
alpar@9 1459 Fri Dec 12 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1460
alpar@9 1461 * GLPK 4.3 has been released.
alpar@9 1462
alpar@9 1463 * configure.in
alpar@9 1464 The bug, due to which the standard math library is not linked on
alpar@9 1465 some platforms, was fixed.
alpar@9 1466
alpar@9 1467 * glpmpl3.c
alpar@9 1468 The bug (0 ** y) was fixed in the routine fp_power.
alpar@9 1469
alpar@9 1470 * glpmpl.h, glpmpl1.c, glpmpl3.c
alpar@9 1471 Some new built-in functions (round, trunc, Irand224, Uniform01,
alpar@9 1472 Uniform, Normal01, Normal) were added to the MathProg language.
alpar@9 1473
alpar@9 1474 * glpmpl1.c
alpar@9 1475 The MathProg syntax was changed to allow writing 'subj to'.
alpar@9 1476
alpar@9 1477 * glplpx.h, glplpx1.c, glplpx2.c
alpar@9 1478 The new api routine lpx_get_ray_info was added.
alpar@9 1479
alpar@9 1480 * glplpx8a.c
alpar@9 1481 The api routine lpx_print_sol was changed to print the number of
alpar@9 1482 non-basic variable, which causes primal unboundness.
alpar@9 1483
alpar@9 1484 * glpmps.c
alpar@9 1485 The code was changed to avoid errors on compiling the package on
alpar@9 1486 Mac OS X. Thanks to Andre Girard <andre@inrs-emt.uquebec.ca> for
alpar@9 1487 the bug report.
alpar@9 1488
alpar@9 1489 * doc/lang.*, doc/refman.*
alpar@9 1490 Several typos were fixed and some new material was added in the
alpar@9 1491 glpk documentation.
alpar@9 1492
alpar@9 1493 Fri Nov 14 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1494
alpar@9 1495 * GLPK 4.2 has been released.
alpar@9 1496
alpar@9 1497 * glpiet.h, glpiet.c, glpios.h, glpios1.c, glpios2.c, glpios3.c
alpar@9 1498 A preliminary implementation of the Integer Optimization Suite
alpar@9 1499 (IOS) was included in the package. Eventually IOS will replace
alpar@9 1500 the Implicit Enumeration Suite (IES).
alpar@9 1501
alpar@9 1502 * glplpx.h, glplpx6d.c
alpar@9 1503 A dummy version of the integer optimization routine lpx_intopt
alpar@9 1504 was included in the package. Later this routine will replace the
alpar@9 1505 routine lpx_integer.
alpar@9 1506
alpar@9 1507 * examples/glpsol.c
alpar@9 1508 A new command-line option --int-opt was added to the solver to
alpar@9 1509 call lpx_intopt rather than lpx_integer.
alpar@9 1510
alpar@9 1511 * glpbcs.h, glpbcs1.c, glpbcs2.c
alpar@9 1512 Being replaced by IOS routines (see above) the Branch-and-Cut
alpar@9 1513 Framework (BCS) routines were removed from the package.
alpar@9 1514
alpar@9 1515 * examples/tspsol.c
alpar@9 1516 Stand-alone Symmetric TSP solver was completely re-programmed
alpar@9 1517 using IOS routines.
alpar@9 1518
alpar@9 1519 * glplib.h, glplib2.c, glplib4.c
alpar@9 1520 The random-number generator was implemented. It is based on the
alpar@9 1521 module GB_FLIB from the Stanford GraphBase originally developed
alpar@9 1522 by Donald Knuth.
alpar@9 1523
alpar@9 1524 * glphbsm.c, glplpx8a.c, glpmps.c
alpar@9 1525 All calls to fopen/fclose were replaced by corresponding calls
alpar@9 1526 to ufopen/ufclose due to bug reports provided by Morten Welinder
alpar@9 1527 <terra@gnu.org> and <jpark@sfwmd.gov>.
alpar@9 1528
alpar@9 1529 * glpmps.c
alpar@9 1530 The code was made re-entrant.
alpar@9 1531
alpar@9 1532 * glplpx8b.c
alpar@9 1533 API routine lpx_print_sens_bnds for bounds sensitivity analysis
alpar@9 1534 contributed by Brady Hunsaker <hunsaker@engr.pitt.edu> was added
alpar@9 1535 to the package. This feature is also available in glpsol via the
alpar@9 1536 command-line option --bounds.
alpar@9 1537
alpar@9 1538 * contrib/jni/*.*
alpar@9 1539 New version of GLPK JNI (Java Native Interface) contributed by
alpar@9 1540 Chris Rosebrugh <cpr@pobox.com> was added to the package.
alpar@9 1541
alpar@9 1542 * contrib/deli/*.*
alpar@9 1543 GLPK DELI (Delphi Interface) contributed by Ivo van Baren
alpar@9 1544 <i.van.baren@freeler.nl> was added to the package.
alpar@9 1545
alpar@9 1546 * glplpx3.c
alpar@9 1547 Default method to scale the problem was changed to equilibration
alpar@9 1548 scaling (lp->scale = 1 in lpx_reset_parms).
alpar@9 1549
alpar@9 1550 * glplpx6a.c
alpar@9 1551 Two minor (non-critical) typos were fixed due to report provided
alpar@9 1552 by Andrew Hamilton-Wright <andrewhw@ieee.org>.
alpar@9 1553
alpar@9 1554 * glplpp2.c
alpar@9 1555 An untested case (line 941) had been tested due to bug report
alpar@9 1556 provided by Jiri Spitz <jiri.spitz@telecom.cz>.
alpar@9 1557
alpar@9 1558 * w32bc5.mak, w32vc6.mak, w32vc6d.mak, d32dmc.mak
alpar@9 1559 Several makefiles were added to allow building GLPK library for
alpar@9 1560 some non-GNU 32-bit platforms.
alpar@9 1561
alpar@9 1562 Sat Aug 23 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1563
alpar@9 1564 * GLPK 4.1 has been released.
alpar@9 1565
alpar@9 1566 * glpmpl1.c, glpmpl3.c
alpar@9 1567 Some bugs were fixed in the MathProg translator due to the bug
alpar@9 1568 reports provided by Giles Thompson <gwpt1@cus.cam.ac.uk>:
alpar@9 1569 conditional set expressions were incorrectly parsed;
alpar@9 1570 dimen attribute was not set by default when a set was used
alpar@9 1571 recursively in its own declaration;
alpar@9 1572 logical expressions ... in if ... then ... else ... did not
alpar@9 1573 work;
alpar@9 1574 displaying set expressions did not free memory allocated for
alpar@9 1575 temporary results.
alpar@9 1576
alpar@9 1577 * glpmpl3.c (reduce_terms)
alpar@9 1578 Implementation of summation of linear forms over domain was
alpar@9 1579 improved to reduce complexity of that operation from O(n*n) to
alpar@9 1580 O(n*log n). The improvement was made due to a report provided
alpar@9 1581 by Sebastien de Menten <sdementen@hotmail.com>.
alpar@9 1582
alpar@9 1583 * glplpx6a.c (line 1056), glpmip1.c (line 641)
alpar@9 1584 Two minor bugs were fixed due to the bug report provided by
alpar@9 1585 Kendall Demaree <kendal.demaree@verizon.net>.
alpar@9 1586
alpar@9 1587 * glplpx.h, glplpx6a.c
alpar@9 1588 The method of one artificial variable implemented in the routine
alpar@9 1589 lpx_prim_art and used on the phase I in the glpk simplex solver
alpar@9 1590 has a serious defect: for some lp instances it erroneously
alpar@9 1591 reports that the problem has no primal feasible solution. This
alpar@9 1592 error appears when the column of the artificial variable, which
alpar@9 1593 enters the basis to make it primal feasible, has large
alpar@9 1594 constraint coefficients, that leads to small reduced costs of
alpar@9 1595 non-basic variables and premature termination of the search,
alpar@9 1596 i.e. to wrong conclusion that the problem has no primal feasible
alpar@9 1597 solution. To avoid this defect the routine lpx_prim_feas was
alpar@9 1598 included. It implements the method of implicit artifical
alpar@9 1599 variables (based on minimization of the sum of infeasibilities),
alpar@9 1600 which is a bit slower but much more robust. The routine
alpar@9 1601 lpx_prim_feas having the same functionality now is used instead
alpar@9 1602 the routine lpx_prim_art.
alpar@9 1603
alpar@9 1604 * glpinv.h, glpinv.c
alpar@9 1605 The test used in the routine inv_update to detect low accuracy
alpar@9 1606 after updating LU-factorization of the basis matrix was replaced
alpar@9 1607 by a new, more robust test.
alpar@9 1608
alpar@9 1609 * glplpx6c.c
alpar@9 1610 Selecting an active node to be solved next in the routine
alpar@9 1611 btrack_bestp was changed. Now, if any integer feasible solution
alpar@9 1612 has not been found yet, the routine chooses an active node which
alpar@9 1613 has the minimal sum of integer infeasibilities.
alpar@9 1614
alpar@9 1615 * glpmip.h, glpmip1.c
alpar@9 1616 The additional flag int_obj was included in the structure
alpar@9 1617 MIPTREE used by the branch-and-bound. This flag is set in the
alpar@9 1618 routine mip_create_tree and used in the routine is_better. It
alpar@9 1619 means that the objective is integral, i.e. depends only on
alpar@9 1620 integer variables with integer objective coefficients. The test
alpar@9 1621 used in the routine check_integrality was also replaced by a
alpar@9 1622 new, more reasonable one.
alpar@9 1623
alpar@9 1624 * glplpx1.c
alpar@9 1625 A minor bug was fixed in the routine lpx_check_name.
alpar@9 1626
alpar@9 1627 * glpmpl.h, glpmpl4.c, glplpx8d.c
alpar@9 1628 The flag skip_data was added to the parameter list of the
alpar@9 1629 routine mpl_read_model. If this flag is set, the data section
alpar@9 1630 in the model file is ignored. Corresponding change was made in
alpar@9 1631 the routine lpx_read_model. Now, if both model and data files
alpar@9 1632 are specified, the data section in the model file is ignored.
alpar@9 1633
alpar@9 1634 * glplpx8c.c
alpar@9 1635 A minor bug (wrong format used for writing free columns) in the
alpar@9 1636 routine lpx_write_lpt was fixed due to the bug report provided
alpar@9 1637 by Bernhard Schmidt <schmidt@math.uni-augsburg.de>
alpar@9 1638
alpar@9 1639 * sample/glpsol.c
alpar@9 1640 The command-line parameter --tmlim, which allows limiting the
alpar@9 1641 solution time, was added.
alpar@9 1642
alpar@9 1643 * doc/lang.*, doc/refman.*
alpar@9 1644 New edition of the GLPK documentation was included.
alpar@9 1645
alpar@9 1646 * java-binding/*.*
alpar@9 1647 New version of the GLPK JNI (Java Native Interface) package was
alpar@9 1648 included in the distribution.
alpar@9 1649
alpar@9 1650 * sample/lpglpk40.c
alpar@9 1651 A non-trivial example was added. It allows using GLPK as a base
alpar@9 1652 LP solver for Concorde, a program for solving Traveling Salesman
alpar@9 1653 Problem (TSP). For details see comments in lpglpk40.c.
alpar@9 1654
alpar@9 1655 * sample/*.mod
alpar@9 1656 Some examples of LP and MIP models written in GNU MathProg were
alpar@9 1657 added.
alpar@9 1658
alpar@9 1659 Tue May 06 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1660
alpar@9 1661 * GLPK 4.0 has been released.
alpar@9 1662
alpar@9 1663 * glpmpl.h, glpmpl1.c, glpmpl2.c, glpmpl3.c, glpmpl4.c
alpar@9 1664 The model translator for the GNU MathProg modeling language was
alpar@9 1665 implemented and included in the package.
alpar@9 1666
alpar@9 1667 * glplpx.h, glplpx8d.c
alpar@9 1668 The api routine lpx_read_model, which is an interface to the
alpar@9 1669 MathProg translator, was included in the package.
alpar@9 1670
alpar@9 1671 * glplpx.h, glplpx8a.c
alpar@9 1672 The api routine lpx_print_prob for writing LP/MIP problem data
alpar@9 1673 in plain text format was included in the package.
alpar@9 1674
alpar@9 1675 * sample/glpsol.c
alpar@9 1676 New version of the GLPK stand-alone LP/MIP solver that supports
alpar@9 1677 the GNU MathProg modeling language was implemented.
alpar@9 1678
alpar@9 1679 * doc/lang.latex, doc/lang.dvi, doc/lang.ps
alpar@9 1680 The document "GLPK: Modeling Language GNU MathProg" was included
alpar@9 1681 in the package.
alpar@9 1682
alpar@9 1683 * doc/refman.latex, doc/refman.dvi, doc/refman.ps
alpar@9 1684 New edition of the GLPK Reference Manual was included in the
alpar@9 1685 package.
alpar@9 1686
alpar@9 1687 * glplpx8c.c
alpar@9 1688 A bug in the api routine lpx_write_lpt was fixed. Due to that
alpar@9 1689 bug an addressing error occured in the routine if the objective
alpar@9 1690 function has the non-zero constant term.
alpar@9 1691
alpar@9 1692 * glplan.h, glplan1.c, glplan2.c, glplan3.c, glplan4.c,
alpar@9 1693 * glplan5.c, glplan6.c, glplan7.c, glplan8.c, glplpx8b.c
alpar@9 1694 All modules of the translator for the GLPK/L modeling language
alpar@9 1695 were removed from the package, because GLPK/L being completely
alpar@9 1696 superseded by GNU MathProg is no more supported.
alpar@9 1697
alpar@9 1698 Tue Mar 25 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1699
alpar@9 1700 * GLPK 3.3 has been released.
alpar@9 1701
alpar@9 1702 * glplpp.h, glplpp1.c, glplpp2.c
alpar@9 1703 An implementation of the built-in LP presolver was added to the
alpar@9 1704 package.
alpar@9 1705
alpar@9 1706 * glplpx.h
alpar@9 1707 The flag presol was added to the structure LPX. This flag tells
alpar@9 1708 the lpx_simplex whether the built-in LP presolver should be used
alpar@9 1709 or not. By default this flag is off. Also three macros (namely
alpar@9 1710 LPX_E_NOPFS, LPX_E_NODFS, and LPX_K_PRESOL) that concern using
alpar@9 1711 the LP presolver were introduced.
alpar@9 1712
alpar@9 1713 * glplpx3.c, glplpx6a.c
alpar@9 1714 These modules was changed to use the built-in LP presolver.
alpar@9 1715
alpar@9 1716 * sample/glpsol.c
alpar@9 1717 Command line options --presol and --nopresol that concern using
alpar@9 1718 the LP presolver were added to the stand-alone LP/MIP solver.
alpar@9 1719
alpar@9 1720 * glplan1.c
alpar@9 1721 This module was changed to allow declaring sets like A[1:10] in
alpar@9 1722 the models written in the GLPK/L modeling language.
alpar@9 1723
alpar@9 1724 * doc/refman.latex, doc/lang.latex
alpar@9 1725 New editions of the documents "GLPK User's Guide" and "GLPK/L
alpar@9 1726 Modeling Language" were included in the distribution.
alpar@9 1727
alpar@9 1728 * java-binding/*.*
alpar@9 1729 The package GLPK JNI (Java Native Interface) implementing Java
alpar@9 1730 binding for GLPK was included in the distribution. This package
alpar@9 1731 was developed and programmed by Yuri Victorovich <yuri@gjt.org>.
alpar@9 1732
alpar@9 1733 Tue Feb 18 12:00:00 2003 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1734
alpar@9 1735 * GLPK 3.2.4 has been released.
alpar@9 1736
alpar@9 1737 * glplpx6b.c
alpar@9 1738 The code was changed to allow auxiliary variables have non-zero
alpar@9 1739 objective coefficients.
alpar@9 1740
alpar@9 1741 Also a minor bug was fixed (the constant term was not considered
alpar@9 1742 on displaying the objective function value).
alpar@9 1743
alpar@9 1744 * sample/glpsol.c
alpar@9 1745 The code was changed to fix a bug (the command-line option 'bfs'
alpar@9 1746 was not recognized). The bug was fixed due to report provided by
alpar@9 1747 Olivier <odwl@skynet.be>.
alpar@9 1748
alpar@9 1749 * glplpt.c
alpar@9 1750 The code was changed to fix a bug (binary variables were treated
alpar@9 1751 erroneously as integer ones).
alpar@9 1752
alpar@9 1753 * glplpx6b.c
alpar@9 1754 The code was changed to fix a bug (variables that have no lower
alpar@9 1755 bounds were incorrectly processed on converting to the standard
alpar@9 1756 formulation). The bug was fixed due to report kindly provided by
alpar@9 1757 Kjell Eikland <kjell.eikland@broadpark.no>.
alpar@9 1758
alpar@9 1759 Mon Nov 11 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1760
alpar@9 1761 * GLPK 3.2.3 has been released.
alpar@9 1762
alpar@9 1763 * glpmip.h, glpmip1.c
alpar@9 1764 A preliminary implementation of the branch-and-bound driver
alpar@9 1765 based on the implicit enumeration suite (glpies) was added to
alpar@9 1766 the package. This module is not documented yet.
alpar@9 1767
alpar@9 1768 * glplpx6c.c
alpar@9 1769 A new implementation of the api routine lpx_integer which now
alpar@9 1770 is based on the b&b driver (see glpmip above) was included in
alpar@9 1771 the package. This new implementation has exactly the same
alpar@9 1772 functionality as the old version and therefore all changes are
alpar@9 1773 transparent to the api user.
alpar@9 1774
alpar@9 1775 * glpbbm.h, glpbbm.c
alpar@9 1776 * glprsm.h, glprsm1.c, glprsm2.c
alpar@9 1777 * glplp.h, glplp.c
alpar@9 1778 These modules were removed from the package, because they were
alpar@9 1779 used only in the old version of the routine lpx_integer, which
alpar@9 1780 was replaced by the new version (see glplpx6c above).
alpar@9 1781
alpar@9 1782 * glplpx.h, glplpx6a.c
alpar@9 1783 The api routine lpx_check_kkt was included in the package and
alpar@9 1784 its description was added in the reference manual. This routine
alpar@9 1785 allows checking Karush-Kuhn-Tucker optimality conditions for an
alpar@9 1786 LP solution.
alpar@9 1787
alpar@9 1788 * glplpx.h, glplpx8a.c
alpar@9 1789 Now the api routine lpx_print_sol also prints information about
alpar@9 1790 "solution quality" obtained via the api routine lpx_check_kkt.
alpar@9 1791
alpar@9 1792 * glplpx.h, glplpx8a.c
alpar@9 1793 New api routines lpx_read_bas and lpx_write_bas were included
alpar@9 1794 in the package and documented. The routine lpx_write_bas allows
alpar@9 1795 writing a current basis from an LP object to a text file in the
alpar@9 1796 MPS format. The routine lpx_read_bas allows reading a basis
alpar@9 1797 prepared in the MPS format from a text file into an LP object.
alpar@9 1798
alpar@9 1799 * glplpt.c
alpar@9 1800 The parsing routine which reads LP problem data prepared in the
alpar@9 1801 CPLEX LP format was modified to allow specifying lower bounds
alpar@9 1802 of variables also in the form 'variable >= lower bound' (in the
alpar@9 1803 bounds section). This modification was made due to a notice
alpar@9 1804 provided by Ivan Luzzi <iluzzi@libero.it>.
alpar@9 1805
alpar@9 1806 * glplpx.h, glplpx8c.c
alpar@9 1807 The api routine lpx_write_lpt which allows writing LP problem
alpar@9 1808 data from an LP object to a text file using the CPLEX LP format
alpar@9 1809 was included in the package and documented.
alpar@9 1810
alpar@9 1811 * glplpx.h, glplpx3.c
alpar@9 1812 The control parameter LPX_K_LPTORIG that affects the behavior
alpar@9 1813 of the api routine lpx_write_lpt was introduced.
alpar@9 1814
alpar@9 1815 * glplan6.c
alpar@9 1816 The semantics of the language GLPK/L was changed to allow
alpar@9 1817 selection in case when not all mute letters of a predicate (the
alpar@9 1818 operand that follows the keyword 'where') are presented in a
alpar@9 1819 parameter (the operand that precedes the keyword 'where'), i.e.
alpar@9 1820 to allow writing something like this:
alpar@9 1821 y[j] := sum(i, x[i] where p[i,j]);
alpar@9 1822 The paragraph "Selection" in the langauge description (page 25)
alpar@9 1823 was also correspondingly changed. This change of the language
alpar@9 1824 semantics was undertaken due to a notice provided by Peter Lee
alpar@9 1825 <plee@kinggee.com.au>.
alpar@9 1826
alpar@9 1827 * sample/hwd.lpm
alpar@9 1828 A nice example of LP model written in GLPK/L and contributed by
alpar@9 1829 Peter Lee <plee@kinggee.com.au> was included in the package.
alpar@9 1830
alpar@9 1831 * glplpx6b.c
alpar@9 1832 The api routine lpx_interior was modified: a) to compute dual
alpar@9 1833 values for all structural as well as auxiliary variables; b) to
alpar@9 1834 allow specifying non-zero objective coefficients at auxiliary
alpar@9 1835 variables.
alpar@9 1836
alpar@9 1837 * sample/glpsol.c
alpar@9 1838 Three new command-line options were added to the solver, which
alpar@9 1839 are: --plain, --orig, and --wrlpt.
alpar@9 1840
alpar@9 1841 Mon Oct 14 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1842
alpar@9 1843 * GLPK 3.2.2 has been released.
alpar@9 1844
alpar@9 1845 * glplpt.h, glplpt.c
alpar@9 1846 A module that reads LP/MIP problem data in CPLEX LP format was
alpar@9 1847 implemented.
alpar@9 1848
alpar@9 1849 * glplpx8c.c
alpar@9 1850 An api routine lpx_read_lpt that reads LP/MIP problem data in
alpar@9 1851 CPLEX LP format was implemented.
alpar@9 1852
alpar@9 1853 * sample/glpsol.c, sample/plan.lpt
alpar@9 1854 A new command-line option '--lpt' that allows reading LP/MIP
alpar@9 1855 problem data in CPLEX LP format was added to the solver.
alpar@9 1856
alpar@9 1857 * doc/refman.latex, doc/refman.dvi, doc/refman.ps
alpar@9 1858 A new edition of the Reference Manual was included.
alpar@9 1859
alpar@9 1860 * source/*.c
alpar@9 1861 Casting to (unsigned char) was added in some calls to the
alpar@9 1862 classification functions (isalpha, etc.). The bug was fixed due
alpar@9 1863 to report provided by Morten Welinder <terra@diku.dk>.
alpar@9 1864
alpar@9 1865 * glplpx8a.c
alpar@9 1866 The local routine mps_numb used in the routine lpx_write_mps
alpar@9 1867 was modified to correctly format floating-point numbers that
alpar@9 1868 have two digits in the decimal exponent. The bug was fixed due
alpar@9 1869 to report provided by Vlahos Kiriakos <Kiriakos.Vlahos@gs.com>.
alpar@9 1870
alpar@9 1871 * glplan.h, glplan1.c, ..., glplan8.c
alpar@9 1872 Several serious bugs were fixed in the language processor due
alpar@9 1873 to reports provided by <NORBERT.PIOTROWSKI@LHSYSTEMS.COM>:
alpar@9 1874 (a) a static search tree used to find sparse array elements was
alpar@9 1875 sometimes overwritten that caused the message 'assertion failed'
alpar@9 1876 to appear; the bug was fixed by creating separate search trees
alpar@9 1877 in parsing routines; (b) a variable declared using the
alpar@9 1878 predicate-controlled variable declaration statement had wrong
alpar@9 1879 order of domain sets, because the variable array was built as
alpar@9 1880 a copy of the predicate array; the bug was fixed by using the
alpar@9 1881 internal routine transpose that coordinates mute letters (and
alpar@9 1882 therefore domain sets) on copying sparse arrays; (c) sometimes
alpar@9 1883 assignment statements like x[#a,#b,#c] := ... was incorrectly
alpar@9 1884 processed; the bug was fixed by including an appropriate check
alpar@9 1885 into the internal routine assign_stmt.
alpar@9 1886
alpar@9 1887 * glp_simplex.c
alpar@9 1888 An additional check to see if all lower bounds are not greater
alpar@9 1889 than corresponding upper bounds was included in the routine to
alpar@9 1890 prevent wrong results to appear. Such incorrectness sometimes
alpar@9 1891 was not detected, namely, when variables with such bounds were
alpar@9 1892 non-basic and never entered the basis.
alpar@9 1893
alpar@9 1894 * glpspx1.c
alpar@9 1895 Maximal number of simplex iterations before reinversion was
alpar@9 1896 decreased from 100 to 50. This allowed to improve accuracy and,
alpar@9 1897 that is more important, to reduce the solution time for many
alpar@9 1898 serial lp problems approximately 1.5--2 times.
alpar@9 1899
alpar@9 1900 * glpspx2.c
alpar@9 1901 A check to see if all elements in the column chosen to enter
alpar@9 1902 the basis are close to zero in the routine spx_prim_chuzr was
alpar@9 1903 temporarily removed because this check gave wrong conclusion in
alpar@9 1904 case when the corresponding non-basic variable had zero column
alpar@9 1905 in the constraint matrix. An analogous check to see if all
alpar@9 1906 elements in the row chosen to leave the basis are close to zero
alpar@9 1907 in the routine spx_dual_chuzc was also temporarily removed on
alpar@9 1908 the same reason. The bug was fixed due to reports provided by
alpar@9 1909 Flavio Keidi Miyazawa <fkm@ic.unicamp.br> and Vlahos Kiriakos
alpar@9 1910 <Kiriakos.Vlahos@gs.com>.
alpar@9 1911
alpar@9 1912 Mon Aug 12 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1913
alpar@9 1914 * GLPK 3.2.1 has been released.
alpar@9 1915
alpar@9 1916 * glpbcs.h, glpbcs1.c, glpbcs2.c
alpar@9 1917 * glpies.h, glpies1.c, glpies2.c, glpies3.c
alpar@9 1918 A preliminary implementation of the branch-and-cut framework
alpar@9 1919 was included in the package.
alpar@9 1920
alpar@9 1921 * doc/brcut.txt
alpar@9 1922 The document "GLPK: A Preliminary Implementation of the
alpar@9 1923 Branch-And-Cut Framework" was included in the distribution.
alpar@9 1924
alpar@9 1925 * sample/tspsol.c
alpar@9 1926 An illustrative program for solving symmetric TSP based on the
alpar@9 1927 branch-and-cut method was included in the package.
alpar@9 1928
alpar@9 1929 * glpdmp.h, glpdmp.c
alpar@9 1930 A new, re-enterable version of routines for managing dynamic
alpar@9 1931 memory pools was included in the package.
alpar@9 1932
alpar@9 1933 * glpavl.h, glpavl.c
alpar@9 1934 A new, re-enterable version of routines for managing AVL search
alpar@9 1935 trees was included in the package.
alpar@9 1936
alpar@9 1937 * glplib.h, glplib2.c
alpar@9 1938 Two new low-level routines ufopen and ufclose were included in
alpar@9 1939 the package.
alpar@9 1940
alpar@9 1941 * glplpx.h, glplpx7.c
alpar@9 1942 The following new api routines were added: lpx_eval_activity,
alpar@9 1943 lpx_eval_red_cost, lpx_reduce_form, lpx_mixed_gomory.
alpar@9 1944
alpar@9 1945 * glptsp.h, glptsp.c
alpar@9 1946 A module for reading TSP data using TSPLIB format was included
alpar@9 1947 in the package.
alpar@9 1948
alpar@9 1949 Mon Jul 15 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1950
alpar@9 1951 * GLPK 3.2 has been released.
alpar@9 1952
alpar@9 1953 * glplpx.h, glplpx1.c, glplpx2.c
alpar@9 1954 The identifier 'class' (used as a member name in the structure
alpar@9 1955 LPX and as an argument name in the routine lpx_set_class) was
alpar@9 1956 changed to 'clss' in order to avoid conflicts with C++ reserved
alpar@9 1957 words.
alpar@9 1958
alpar@9 1959 * glpk.h, glplpx.h, glplpx1.c, glplpx2.c, glplpx6a.c,
alpar@9 1960 * glplpx6b.c, glplpx6c.c, glplpx7.c, glplpx8.c
alpar@9 1961 The following new api routines were added: lpx_set_obj_name,
alpar@9 1962 lpx_get_obj_name, lpx_get_row_mark, lpx_get_col_mark,
alpar@9 1963 lpx_transform_row, lpx_transform_col, lpx_prim_ratio_test,
alpar@9 1964 lpx_dual_ratio_test, lpx_interior, lpx_get_ips_stat,
alpar@9 1965 lpx_get_ips_row, lpx_get_ips_col, lpx_get_ips_obj, lpx_read_lpm,
alpar@9 1966 lpx_write_mps, lpx_print_ips.
alpar@9 1967
alpar@9 1968 * glpsol.c
alpar@9 1969 The solver was completely re-programmed using new api routines.
alpar@9 1970
alpar@9 1971 * lang.latex, lang.dvi, lang.ps
alpar@9 1972 New edition of the document "GLPK: Modeling Language GLPK/L"
alpar@9 1973 was included in the distribution.
alpar@9 1974
alpar@9 1975 * refman.latex, refman.dvi, refman.ps
alpar@9 1976 New edition of the document "GLPK: Reference Manual" (which
alpar@9 1977 contains descriptions of all new api routines) was included in
alpar@9 1978 the distribution.
alpar@9 1979
alpar@9 1980 * glpapi.h, glpapi1.c, glpapi2.c, glpapi3.c, glpapi4.c
alpar@9 1981 These files (which contain old api routines) were removed from
alpar@9 1982 the package.
alpar@9 1983
alpar@9 1984 * glpipm1.c, glpipm2.c
alpar@9 1985 The file glpipm1.c was renamed to glpipm.c. The file glpipm2.c
alpar@9 1986 was used only by old api routines and therefore was removed from
alpar@9 1987 the package.
alpar@9 1988
alpar@9 1989 * language.texinfo
alpar@9 1990 Old version of the document "GLPK: Modeling Language GLPK/L" was
alpar@9 1991 removed from the distribution.
alpar@9 1992
alpar@9 1993 Mon May 27 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 1994
alpar@9 1995 * GLPK 3.1 has been released.
alpar@9 1996
alpar@9 1997 * glplpx.h, glplpx1.c, glplpx2.c, glplpx3.c, glplpx4.c,
alpar@9 1998 * glplpx5.c, glplpx6.c, glplpx7.c, glplpx8.c
alpar@9 1999 A preliminary implementation of new API routines was completed.
alpar@9 2000
alpar@9 2001 * refman.latex, refman.dvi, refman.ps
alpar@9 2002 A draft edition of the document "GLPK Reference Manual", which
alpar@9 2003 describes new API routines, was included.
alpar@9 2004
alpar@9 2005 * glplib3.c
alpar@9 2006 A bug in measuring long time intervals was fixed up.
alpar@9 2007
alpar@9 2008 * glprsm3.c
alpar@9 2009 This module contains some obsolete routines not longer used and
alpar@9 2010 therefore it was removed from the package (into the subdirectory
alpar@9 2011 'oldsrc').
alpar@9 2012
alpar@9 2013 * glprsm.h
alpar@9 2014 Some declarations related to the module 'glprsm3.c' (see above)
alpar@9 2015 were removed.
alpar@9 2016
alpar@9 2017 * guide.texinfo
alpar@9 2018 The document "GLPK User's Guide" describing old API routines was
alpar@9 2019 removed from the package (into the subdirectory 'oldsrc').
alpar@9 2020
alpar@9 2021 * newapi.txt
alpar@9 2022 The document "New GLPK API Routines" was removed at all, because
alpar@9 2023 it is superseded by the new reference manual (see above).
alpar@9 2024
alpar@9 2025 Mon May 13 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2026
alpar@9 2027 * GLPK 3.0.8 has been released.
alpar@9 2028
alpar@9 2029 * glplpx.h, glplpx1.c, glplpx2.c, glplpx3.c, glplpx4.c,
alpar@9 2030 * glplpx5.c, glplpx6.c, glplpx7.c
alpar@9 2031 A preliminary (currently incomplete) implementation of new api
alpar@9 2032 routines was included.
alpar@9 2033
alpar@9 2034 * sample/newsamp.c
alpar@9 2035 A sample program for the new api routines was included.
alpar@9 2036
alpar@9 2037 * newapi.txt
alpar@9 2038 A draft of the document "New GLPK API Routines" was included.
alpar@9 2039
alpar@9 2040 * glpapi2.c, glpapi5.c, glpapi6.c
alpar@9 2041 These modules (which contain the api routines glp_call_rsm1,
alpar@9 2042 glp_simplex1, glp_pivot_in, glp_pivot_out) were removed from the
alpar@9 2043 package (to the subdirectory 'oldsrc') since these routines are
alpar@9 2044 functionally superseded by the new api routines.
alpar@9 2045
alpar@9 2046 * glpk.h, glpapi2.c, glpapi3.c, glpapi4.c
alpar@9 2047 The api routines glp_simplex2, glp_call_ipm1, glp_call_bbm1 were
alpar@9 2048 renamed to glp_simplex, glp_interior, glp_integer, respectively.
alpar@9 2049
alpar@9 2050 * sample/glpsol.c
alpar@9 2051 Some command-line options (which got obsolete due to the recent
alpar@9 2052 changes in api) were excluded.
alpar@9 2053
alpar@9 2054 * doc/guide.texinfo
alpar@9 2055 New edition of the document "GLPK User's Guide" was included in
alpar@9 2056 the distribution to reflect the changes in some api routines.
alpar@9 2057
alpar@9 2058 * doc/libref.texinfo
alpar@9 2059 This document was removed from the package (to the subdirectory
alpar@9 2060 'oldsrc') since it describes the library routines, most of which
alpar@9 2061 got obsolete and no longer used.
alpar@9 2062
alpar@9 2063 * Makefile.in
alpar@9 2064 A minor bug was fixed up due to bug report from Hans Schwengeler
alpar@9 2065 <Hans.Schwengeler@unibas.ch>.
alpar@9 2066
alpar@9 2067 Mon Apr 22 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2068
alpar@9 2069 * GLPK 3.0.7 has been released.
alpar@9 2070
alpar@9 2071 * glpduff.h, glpduff.c, glpspx.h, glpspx1.c, glpspx2.c,
alpar@9 2072 * glpapi7.c
alpar@9 2073 These modules were replaced by a new implementation of the
alpar@9 2074 simplex method and therefore they were removed from the package
alpar@9 2075 (however they still can be found in the subdirectory 'oldsrc').
alpar@9 2076
alpar@9 2077 * glprsm1.c
alpar@9 2078 The routine crash_aa was replaced by a new implementation and
alpar@9 2079 therefore it was removed from the file 'glprsm1.c'.
alpar@9 2080
alpar@9 2081 * glplpx.h, glplpx.c, glpspx.h, glpspx1.c, glpspx2.c, glpspx3.c,
alpar@9 2082 * glpspx4.c, glpapi7.c
alpar@9 2083 New (currently incomplete) implementation of the simplex method
alpar@9 2084 components was included in the package.
alpar@9 2085
alpar@9 2086 Thu Mar 28 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2087
alpar@9 2088 * GLPK 3.0.6 has been released.
alpar@9 2089
alpar@9 2090 * glpluf.h, glpluf.c, glpinv.h, glpinv.c
alpar@9 2091 New version of LU-factorization and basis maintenance routines
alpar@9 2092 (based on Forrest-Tomlin updating technique) was implemented.
alpar@9 2093
alpar@9 2094 * glpeta.h, glpeta.c, glpfhv.h, glpfhv.c, glpgel.h, glpgel.c,
alpar@9 2095 * glppfi.h, glppfi.c, glprfi.h, glprfi.c
alpar@9 2096 These routines implement some other forms of the basis matrix.
alpar@9 2097 Now they became obsolete being functionally superseded by the
alpar@9 2098 new version of basis maintenance routines (see above) and were
alpar@9 2099 removed from the package (however they still can be found in the
alpar@9 2100 subdirectory 'oldsrc').
alpar@9 2101
alpar@9 2102 * glpbbm.c, glprsm.h, glprsm1.h, glprsm2.h, glpspx.h, glpspx2.c,
alpar@9 2103 * glprsm2.c, glpsol.c
alpar@9 2104 Necessary changes were made in order to use the new version of
alpar@9 2105 basis maintenance routines.
alpar@9 2106
alpar@9 2107 Tue Jan 29 12:00:00 2002 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2108
alpar@9 2109 * GLPK 3.0.5 has been released.
alpar@9 2110 Structure of the package was re-organized in order to simplify
alpar@9 2111 its maintenance.
alpar@9 2112
alpar@9 2113 * doc/guide.texinfo
alpar@9 2114 New edition of the document "GLPK User's Guide" was included in
alpar@9 2115 the distribution. Now the document includes descriptions of some
alpar@9 2116 additional API routines recently added to the package.
alpar@9 2117
alpar@9 2118 * doc/newapi.txt
alpar@9 2119 The document "Additional GLPK API Routines" was removed from the
alpar@9 2120 distribution, because the corresponding material was included in
alpar@9 2121 the user's guide (see above).
alpar@9 2122
alpar@9 2123 Mon Dec 10 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2124
alpar@9 2125 * GLPK 3.0.4 has been released.
alpar@9 2126
alpar@9 2127 * glpspx.h, glpspx1.c, glpspx2.c, glpapi/glp_simplex2.h
alpar@9 2128 A new, more efficient version of the two-phase primal simplex
alpar@9 2129 method was implemented (advanced initial basis, projected
alpar@9 2130 steepest edge, recursive computations of solution components).
alpar@9 2131
alpar@9 2132 * glpapi/glp_call_bbm1.c
alpar@9 2133 Now LP relaxation can be solved either using rsm1_driver(), or
alpar@9 2134 using glp_simplex2(). The choice is controlled by the parameter
alpar@9 2135 'meth' (a member of struct bbm1).
alpar@9 2136
alpar@9 2137 * sample/glpsol.c
alpar@9 2138 The new implementation of the simplex method is now used by
alpar@9 2139 default. The old version is available via --old-sim option.
alpar@9 2140
alpar@9 2141 * glpmat/gm_scaling.c
alpar@9 2142 Now this routine displays only two lines: an initial "quality"
alpar@9 2143 and a final "quality".
alpar@9 2144
alpar@9 2145 * glplp/prepro_lp.c
alpar@9 2146 Identifiers 'fmin' and 'fmax' renamed to 'f_min' and 'f_max' in
alpar@9 2147 order to avoid conflict with <math.h>. The bug was fixed due to
alpar@9 2148 report provided by Sami Farin <sfarin@ratol.fi>.
alpar@9 2149
alpar@9 2150 Wed Oct 03 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2151
alpar@9 2152 * GLPK 3.0.3 has been released.
alpar@9 2153
alpar@9 2154 * glprsm/harris_row.c, glprsm/harris_col.c
alpar@9 2155 The relative tolerance used on the first pass of the two-pass
alpar@9 2156 ratio test was replaced by the absolute tolerance.
alpar@9 2157
alpar@9 2158 * glprsm/rsm_primal.c, glprsm/rsm_feas.c, glprsm/rsm_dual.c
alpar@9 2159 The absolute tolerance passed to the two-pass ratio test routine
alpar@9 2160 was decaresed (for both primal and dual simplex).
alpar@9 2161
alpar@9 2162 These changes were made in order to improve numerical stability
alpar@9 2163 of the simplex method.
alpar@9 2164
alpar@9 2165 * glprsm/glp_call_rsm1.c, glprsm/glp_call_bbm1.c,
alpar@9 2166 * glprsm/glp_simplex1, glprsm/glp_pivoting.c
alpar@9 2167 Default form of the inverse was changed from RFI to AFI.
alpar@9 2168
alpar@9 2169 Mon Sep 24 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2170
alpar@9 2171 * GLPK 3.0.2 has been released.
alpar@9 2172
alpar@9 2173 * glpfhv.h, glpfhv.c
alpar@9 2174 New version of the basis maintaining routines was implemented.
alpar@9 2175 These routines, which are based on so called FHV-factorization
alpar@9 2176 (a variety of LU-factorization) and Gustavson's data structures,
alpar@9 2177 perform the main operations on the basis matrix faster at the
alpar@9 2178 expense of some worsening numerical accuracy.
alpar@9 2179
alpar@9 2180 * glprsm.h, glprsm/afi.c
alpar@9 2181 The routines, which implement AFI (Advanced Form of the
alpar@9 2182 Inverse) based on FHV-factorization, were added to the package.
alpar@9 2183 This new form is available via the parameter form = 3 (on API
alpar@9 2184 level) or via the option --afi (in GLPSOL solver).
alpar@9 2185
alpar@9 2186 * EFI was renamed to PFI
alpar@9 2187 In order to correct terminology the acronym EFI (Elimination
alpar@9 2188 Form of the Inverse) was replaced by PFI (Product Form of the
alpar@9 2189 Inverse) everywhere in the source code and the documentation.
alpar@9 2190
alpar@9 2191 * glpset/umalloc.c, glpset/ucalloc.c
alpar@9 2192 * glpset/get_atom.c, glpset/get_atomv.c
alpar@9 2193 These memory management routines were changed in order *not* to
alpar@9 2194 clear allocated memory blocks by binary zeros.
alpar@9 2195
alpar@9 2196 Wed Aug 01 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2197
alpar@9 2198 * GLPK 3.0.1 has been released.
alpar@9 2199
alpar@9 2200 * glpapi/old_api.c, glplp/extract_lp.c, store_lpsol.c
alpar@9 2201 Old API routines were deleted from the package.
alpar@9 2202
alpar@9 2203 * include/glpk.h, include/glpapi.h, include/glplp.h
alpar@9 2204 Specifications of old API routines and data structures were
alpar@9 2205 removed from the headers.
alpar@9 2206
alpar@9 2207 * sample/glpsol.c
alpar@9 2208 New version of the stand-alone solver GLPSOL that now uses new
alpar@9 2209 API routines was implemented.
alpar@9 2210
alpar@9 2211 * glpapi/glp_set_row_fctr.c, glpapi/glp_set_col_fctr.c,
alpar@9 2212 * glpapi/glp_get_row_fctr.c, glpapi/glp_get_col_fctr.c,
alpar@9 2213 * glpapi/glp_scale_prob.c
alpar@9 2214 Scaling routines were added.
alpar@9 2215
alpar@9 2216 * glpapi/glp_write_mps.c
alpar@9 2217 The routine for writing problem data in MPS format was added.
alpar@9 2218
alpar@9 2219 * glpapi/glp_simplex1.c
alpar@9 2220 Comprehensive driver to the simplex method was added.
alpar@9 2221
alpar@9 2222 * glpapi/glp_pivoting.c
alpar@9 2223 The routines glp_pivot_in() and glp_pivot_out() intended for
alpar@9 2224 basis maintaining were added.
alpar@9 2225
alpar@9 2226 * glprsm/create_rsm.c, glprsm/delete_rsm.c, glprsm/scale_rsm.c,
alpar@9 2227 * glprsm/build_basis.c
alpar@9 2228 Additional low level routines related to the simplex method
alpar@9 2229 were added.
alpar@9 2230
alpar@9 2231 * glpk.h, glpapi.h, glprsm.h
alpar@9 2232 Additional specifications for new routines and data structures
alpar@9 2233 were added.
alpar@9 2234
alpar@9 2235 * sample/lpglpk30.c
alpar@9 2236 A non-trivial example was added. It allows using GLPK as a base
alpar@9 2237 LP solver for Concorde, a program for solving Traveling Salesman
alpar@9 2238 Problem (TSP). For details see comments in 'lpglpk30.c'.
alpar@9 2239
alpar@9 2240 * doc/newapi.txt
alpar@9 2241 The document "Additional GLPK API Routines" that describes some
alpar@9 2242 new API routines was included.
alpar@9 2243
alpar@9 2244 Thu Jul 19 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2245
alpar@9 2246 * GLPK 3.0 has been released.
alpar@9 2247
alpar@9 2248 Now GLPK is provided with new API, which is intended for using
alpar@9 2249 the package in more complex algorithmic schemes.
alpar@9 2250
alpar@9 2251 * glpapi/old_api.c
alpar@9 2252 All routines related to old API were gathered in one file named
alpar@9 2253 'old_api.c'.
alpar@9 2254
alpar@9 2255 * glpapi/*.c
alpar@9 2256 These routines that implement new API were added to the package.
alpar@9 2257
alpar@9 2258 * include/glpk.h, include/glpapi.h
alpar@9 2259 Specifications of new API routines and data structures were
alpar@9 2260 added to these headers. Specifications of old API routines and
alpar@9 2261 data structures were locked by #ifdef GLP_OLD_API directive.
alpar@9 2262
alpar@9 2263 * doc/guide.texinfo
alpar@9 2264 New edition of the document "GLPK User's Guide" that correspond
alpar@9 2265 to new API was included.
alpar@9 2266
alpar@9 2267 Thu Jun 14 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2268
alpar@9 2269 * GLPK 2.4.1 has been released.
alpar@9 2270
alpar@9 2271 * doc/glpk_ml.texinfo
alpar@9 2272 The new document "Modeling Language GLPK/L" was included.
alpar@9 2273
alpar@9 2274 * doc/glpk_ug.texinfo
alpar@9 2275 New edition of the document "GLPK User's Guide" was included.
alpar@9 2276
alpar@9 2277 * doc/language.txt
alpar@9 2278 The preliminary document "GLPK/L Modeling Language: A Brief
alpar@9 2279 description" was removed from the distribution, because it has
alpar@9 2280 been replaced by the new document "Modeling Language GLPK/L".
alpar@9 2281
alpar@9 2282 * glplang/l_spar.c
alpar@9 2283 The routine comparison() was re-programmed in order to
alpar@9 2284 implement the relation operation as specified in the language
alpar@9 2285 description.
alpar@9 2286
alpar@9 2287 * glpmip.h, glpmip/*.c
alpar@9 2288 The partition 'glpmip' was renamed to 'glpbbm'.
alpar@9 2289
alpar@9 2290 Thu May 10 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2291
alpar@9 2292 * GLPK 2.4 has been released.
alpar@9 2293
alpar@9 2294 Now GLPK includes an implementation of a preliminary version of
alpar@9 2295 the GLPK/L modeling language.
alpar@9 2296
alpar@9 2297 * glplang.h, glplang/*.c
alpar@9 2298 The header 'glplang.h' and a set of routines that implements
alpar@9 2299 the GLPK/L language processor (the partition 'glplang') were
alpar@9 2300 added to the package.
alpar@9 2301
alpar@9 2302 * doc/language.txt
alpar@9 2303 The document "GLPK/L Modeling Language: A Brief Description
alpar@9 2304 (Supplement to GLPK User's Guide)" in plain text format was
alpar@9 2305 included in the package (see the file 'language.txt' in the
alpar@9 2306 subdirectory 'doc' of the distribution).
alpar@9 2307
alpar@9 2308 * ex/model1.lpm, ex/model2.lpm
alpar@9 2309 Two examples of model descriptions written in GLPK/L were added
alpar@9 2310 to the package.
alpar@9 2311
alpar@9 2312 * sample/glpsol.c
alpar@9 2313 This program was modified in order: a) to allow processing
alpar@9 2314 model description written in GLPK/L; b) to allow solving pure
alpar@9 2315 LP problem using the interior point method.
alpar@9 2316
alpar@9 2317 * sample/glpipm.c
alpar@9 2318 This program was removed from the package, because its function
alpar@9 2319 was passed to the GLPSOL solver.
alpar@9 2320
alpar@9 2321 * Makefile.in
alpar@9 2322 This file was changed in order to install the GLPSOL solver
alpar@9 2323 executable.
alpar@9 2324
alpar@9 2325 Mon Apr 09 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2326
alpar@9 2327 * GLPK 2.3 has been released.
alpar@9 2328
alpar@9 2329 * glpmip.h, glpmip/*.c
alpar@9 2330 These routines (that implement the branch-and-bound method) were
alpar@9 2331 re-programmed in order to improve robustness of implementation.
alpar@9 2332 In particular, heuristic routines were carried out from the main
alpar@9 2333 driver routine.
alpar@9 2334
alpar@9 2335 Additional GLPK API routines were documented.
alpar@9 2336
alpar@9 2337 New edition of the document "GLPK User's Guide" was included in
alpar@9 2338 the package.
alpar@9 2339
alpar@9 2340 The preliminary document "Mixed Integer Programming Using GLPK
alpar@9 2341 Version 2.2 (Supplement to GLPK User's Guide)" was removed from
alpar@9 2342 the package, because this material was included in GLPK User's
alpar@9 2343 Guide.
alpar@9 2344
alpar@9 2345 Thu Mar 15 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2346
alpar@9 2347 * GLPK 2.2 has been released.
alpar@9 2348
alpar@9 2349 Now GLPK includes a tentative implementation of the
alpar@9 2350 branch-and-bound procedure based on the dual simplex method for
alpar@9 2351 mixed integer linear programming (MIP).
alpar@9 2352
alpar@9 2353 The preliminary document "Mixed Integer Programming Using GLPK
alpar@9 2354 Version 2.2 (Supplement to GLPK User's Guide)" was included into
alpar@9 2355 the package in plain text format (see the file 'mip.txt' in the
alpar@9 2356 subdirectory 'doc' of the distribution).
alpar@9 2357
alpar@9 2358 * glpmip.h, glpmip/*.c, glpapi/glp_integer.c
alpar@9 2359 These routines (that implement the branch-and-bound method) were
alpar@9 2360 added to the package.
alpar@9 2361
alpar@9 2362 * sample/glpsol.c
alpar@9 2363 This program was modified in order to allow solving LP and MIP
alpar@9 2364 problems.
alpar@9 2365
alpar@9 2366 * glprsm/rsm_primal.c, glprsm/rsm_dual.c, glprsm/rsm_feas.c,
alpar@9 2367 * glprsm/rsm1_driver.c
alpar@9 2368 These routines (which are drivers to basic components of the
alpar@9 2369 revised simplex method) were added to the package.
alpar@9 2370
alpar@9 2371 Mon Feb 19 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2372
alpar@9 2373 * GLPK 2.1 has been released.
alpar@9 2374
alpar@9 2375 * glprsm.h, glprsm/*.c
alpar@9 2376 These routines (that implement components of the revised simplex
alpar@9 2377 method) were re-programmed and documented.
alpar@9 2378
alpar@9 2379 The document "GLPK Implementation of the Revised Simplex Method"
alpar@9 2380 was included into the package.
alpar@9 2381
alpar@9 2382 Thu Jan 25 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2383
alpar@9 2384 * GLPK 2.0 has been released.
alpar@9 2385
alpar@9 2386 Now GLPK includes a tentative implementation of the primal-dual
alpar@9 2387 interior point method for large-scale linear programming (for
alpar@9 2388 more details see the file `NEWS' in the distribution). A number
alpar@9 2389 of routines related to the interior point method were added to
alpar@9 2390 the package.
alpar@9 2391
alpar@9 2392 * insist.c
alpar@9 2393 The routine `insist' and the macro of the same name were
alpar@9 2394 introduced into the package in order to replace the standard
alpar@9 2395 macro `assert'. Some routines require the expression specified
alpar@9 2396 in the `assert' macro to be evaluated, but compiling the package
alpar@9 2397 with NDEBUG option prevents from that. This bug was fixed due to
alpar@9 2398 bug report provided by Peter A. Huegler <phuegler@bsco.com>.
alpar@9 2399
alpar@9 2400 * Makefile.in
alpar@9 2401 Minor bug was fixed due to a patch provided by Alexandre Oliva
alpar@9 2402 <oliva@lsd.ic.unicamp.br>.
alpar@9 2403
alpar@9 2404 Wed Jan 10 12:00:00 2001 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2405
alpar@9 2406 * GLPK 1.1.2 has been released.
alpar@9 2407
alpar@9 2408 * umalloc.c, ufree.c, create_pool.c, get_atom.c, get_atomv.c
alpar@9 2409 These routines were changed in order to fix a bug due to
alpar@9 2410 report provided by Andrew Hood <ajhood@fl.net.au>. Because of
alpar@9 2411 this bug data alignment error occured on the Sparc computer.
alpar@9 2412
alpar@9 2413 Tue Dec 14 12:00:00 2000 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2414
alpar@9 2415 * GLPK 1.1.1 has been released.
alpar@9 2416
alpar@9 2417 Minor bug was fixed in `Makefile.in'.
alpar@9 2418
alpar@9 2419 GLPK Library Reference was included.
alpar@9 2420
alpar@9 2421 Mon Nov 27 12:00:00 2000 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2422
alpar@9 2423 * GLPK 1.1 has been released.
alpar@9 2424
alpar@9 2425 Minor changes were made in order to co-ordinate GLPK routines
alpar@9 2426 and their descriptions.
alpar@9 2427
alpar@9 2428 GLPK User's Guide was included.
alpar@9 2429
alpar@9 2430 Fri Oct 20 12:00:00 2000 Andrew Makhorin <mao@mai2.rcnet.ru>
alpar@9 2431
alpar@9 2432 * GLPK 1.0 has been released.