PATH Changelog#

20260714#

  • Added keyword license to pass the license key from https://pages.cs.wisc.edu/~ferris/path/LICENSE without setting an environment variable

20250422#

  • Added new keywords (see path -= output)

  • Synced driver source code with https://pages.cs.wisc.edu/~ferris/path.html

20230318#

  • Linked with Path 5.0.5

20050625#

  • Fixed a problem with the licensing routines on computers with many MAC addresses.

  • Pass (new flags bit) ASL_no_linear_cc_rhs_adjust to fg_read.

20020503#

  • Omit version.c0; adjust path.c and makefile.* accordingly.

Thu Nov 2 20:08:38 EST 2000#

  • New keywords for $path_options:

          sideineq    handling of side inequalities:
      				0 = no warning
      				1 = warn (default)
      				2 = quit, permitting AMPL loops to test solve_result
      				3 = quit, terminating AMPL loops and scripts
      				4 = do not make Jacobian nonsingular (avoid nonuniqueness)
      				5 = warn and do not make Jacobian nonsingular
    
      		  sqwarn      whether to warn of nonsquare systems:
      				0 = no
      				1 = yes (default)
      				2 = quit, permitting AMPL loops to test solve_result
      	      3 = quit, terminating AMPL loops and scripts
    
  • Change the value of solve_result for “inconsistent bounds” from “failure” to “infeasible”, and change the corresponding value of solve_result_num from 502 to 200.

  • Recognize some new return codes from PATH: here are the new solve_result_num values:

      	      201     Infeasible
      	      403     User interrupt (such as control-C)
      	      500     Bug -- unexpected return code from PATH
      	      504     Nonsquare system (when "sqwarn" requires square)
      	      505     Problem has side inequalities (when "sideineq" allows none)
    
  • Under compilation with -DNEOS, omit keywords “logfile”, “optfile”, and “statusfile”. Permit specifying default values for these files with -DLOGFILE=‘“logfile_name”’, -DSTATUSFILE=‘“statusfile_name”’, and -DOPTFILE=‘“optfile_name”’.

  • Some modifications for PATH 4.4a and two array-allocation corrections provided by Todd Munson.

Thu Apr 13 21:39:21 EDT 2000#

  • path.c: update for PATH 4.4; better handling of range constraints (-Infinity < L <= f(x) <= U < Infinity with L < U) and variables with analogous bounds. For now, at least, path40.c is a variant of path.c for PATH 4.0.

Tue Mar 28 16:57:42 EST 2000#

  • path.c: remove an unnecessary restriction on matching equations to variables. (To come: better matching.) Now the simple example

      var x{1..3} := 1 >= -3 <= 7;
      		s.t. c{i in 1..3}: sum{j in 1..i} x[j]^2 == 2*i;
    

    solves easily.

Fri Apr 23 15:08:08 EDT 1999#

  • path.c, version.c0: update for PATH 4.0; the version number (e.g., 4.0) now comes from PATH’s Path_Version() function).

Tue Jul 28 22:35:11 EDT 1998#

  • README: add table of possible solve_result_num values.

Mon Mar 30 16:47:49 EST 1998#

  • path.c: updated to return solve_result_num to AMPL.

  • version.c changed to version.c0; the makefile now has a rule for constructing version.c from version.c0 (supplying machine details).

Thu Feb 12 23:18:49 EST 1998#

  • path.c updated to reflect changes in PATH header files.