------------------------------------------------------------------------ IMSL Name: UVMGS/DUVMGS (Single/Double precision version) Revised: May 31, 1991 Purpose: Find the minimum point of a nonsmooth function of a single variable. Usage: CALL UVMGS (F, A, B, TOL, XMIN) Arguments: F - User-supplied FUNCTION to compute the value of the function to be minimized. The form is F(X), where X - The point at which the function is evaluated. (Input) X should not be changed by F. F - The computed function value at the point X. (Output) F must be declared EXTERNAL in the calling program. A - On input, A is the lower endpoint of the interval in which the minimum of F is to be located. On output, A is the lower endpoint of the interval in which the minimum of F is located. (Input/Output) B - On input, B is the upper endpoint of the interval in which the minimum of F is to be located. On output, B is the upper endpoint of the interval in which the minimum of F is located. (Input/Output) TOL - The allowable length of the final subinterval containing the minimum point. (Input) XMIN - The approximate minimum point of the function F on the original interval (A,B). (Output) Remarks: 1. Informational errors Type Code 3 1 TOL is too small to be satisfied. 4 2 Due to rounding errors F does not appear to be unimodal. 2. On exit from UVMGS without any error messages, the following conditions hold: (B-A) .LE. TOL. A .LE. XMIN .AND. XMIN .LE. B F(XMIN) .LE. F(A) .AND. F(XMIN) .LE. F(B) 3. On exit from UVMGS with error code 2, the following conditions hold: A .LE. XMIN .AND. XMIN .LE. B F(XMIN) .GE. F(A) .AND. F(XMIN) .GE. F(B) (only one equality can hold). Further analysis of the function F is necessary in order to determine whether it is not unimodal in the mathematical sense or whether it appears to be not unimodal to the routine due to rounding errors in which case the A, B, and XMIN returned may be acceptable. Keywords: Golden Section; Unimodal; Optimization; Univariate function GAMS: G1a2 Chapter: MATH/LIBRARY Optimization Page No.: MATH/LIBRARY User's Manual page 978