Alternate Run Modes:Trajectory Repulsion

From Gsshawiki
Jump to: navigation, search

Trajectory Repulsion

This alternate GSSHA run mode incorporates a simple stochastic global optimization algorithm called Trajectory Repulsion (TR), which was designed to encourage maximal exploration of feasible parameter space. The TR method was developed in attempts to overcome the inefficiency of repeatedly locating the same local minima. Trajectory Repulsion begins by evaluating the objective function on a single uniform random sample of points and discarding those points for which the objective function is above the median. A local search is begun from the point with the lowest objective function value. Subsequent local searches are initiated at points in the reduced sample set that are furthest from previous search trajectories, in attempts at avoiding repeatedly locating the same local minima. A variety of user-specified stopping criteria are implemented, and can be used to balance local and global exploration in parameter space. To potentially increase efficiency, we have made a slight additional modification that terminates the current local search if the current trajectory is within a user-specified distance of any previous parameter trajectory, the presumption being that the current trajectory is headed toward an already found minimum. Prior to execution of this run mode, in addition to the activities that must be performed that uniformly apply to any of the four alternate GSSHA run modes (previously discussed in section 18.6), one must also prepare a file named tr.in (for “trajectory repulsion input”). The file named tr.in contains six entries, each specified on its own individual line. The six entries are (1) a character that is either ‘Y’ or ‘N’ to indicate whether the program will write (‘Y’) or read (‘N’) the file named “RandomNumberSeeds.prn” (more often than not this entry will by ‘Y’), (2) the initial seed that is an integer between 0 and 4,294,967,295, (3) an integer value specifying the number of initial function evaluations to perform, (4) an integer value specifying the maximum number of local searches to be performed, which must be less than half the number of initial function evaluations, (5) an integer value specifying the maximum number of local searches to perform with no objective function improvement, which must be less than the maximum number of local searches to be performed, and (6) a floating point value that specifies the objective function improvement fraction that is judged to be negligible. The required syntax to use this alternate GSSHA run mode for model calibration is:

gssha –tr case.pst

where case.pst is the modified control file. The name of the primary model output file associated with this alternate GSSHA run mode is “slm_chl_ms2.rec”. Its contents include (1) an echo of the contents of the input file named “tr.in” and the case name of the control file employed, (2) a summary of the global phase of the TR method consisting of a given row listing the names of the specified adjustable model parameters, the associated total objective function value named “Total”, and its various subcomponent names, followed by a set of rows, each one consisting of a sampled initial point, via uniform random sampling, and its related objective function value(s), (3) a summary of the local phase of the method consisting of, for each LM/SLM local search performed, the initial and final parameter set and their associated objective function values, respectively, and (4) a brief summary listing which local search identified the global minimum and its associated objective function value. Upon execution of this alternate GSSHA run mode, another output file of potential interest is the record file whose name will be “case.rec”. Contents of the file named “case.rec” include more information summarizing the global and local phases associated with execution of the TR method than what is provided in the primary output file previously described. Examples of these two output files are provided within the example problem files provided directly below.

Example problem files (both input and output) associated with a Trajectory Repulsion supervised GSSHA alternate run mode model calibration run, which are supplied for use as a go by


GSSHA User's Manual

18 Alternate Run Modes
18.1     MPI and OpenMP Parallelization
18.2     Simulation Setup for Alternate Run Modes
18.3     Batch Mode Runs
18.4     Automated Calibration with Shuffled Complex Evolution
18.5     Monte Carlo Runs
18.6     ERDC Automated Model Calibration Software
   18.6.1     Efficient Local Search
   18.6.2     Multistart
   18.6.3     Trajectory Repulsion
   18.6.4     Effective and Efficient Stochastic Global Optimization
18.7     Inset Models
18.8     Working with the GSSHA DLL Library
18.9     Working with the GSSHA Python Interface