Algorithms - DDS Uncertainty Approximation

The OSTRICH dynamically dimensioned search uncertainty algorithm

Initial Publication:

Modified:

This algorithm seeks to identify behavioral parameters set by repeatedly applying a DDS search from alternative starting points in the parameter space. The following optional group will configure the DDS for Approximation of Uncertainty (DDS-AU) algorithm and will be processed if [ProgramType] is set to “DDSAU”.

Begin_DDSAU_Alg
PerturbationValue      [r_val]
NumSearches            [nsols]
MinItersPerSearch      [imin]
MaxItersPerSearch      [imax]
ParallelSearches       yes|no
Threshold              [fmax]
Randomize              yes|no
ReviseAU               yes|no
End_DDSAU_Alg
Begin_DDSAU_Alg
PerturbationValue      0.2
NumSearches            25
MinItersPerSearch      30
MaxItersPerSearch      70
ParallelSearches       no
Threshold              1000
Randomize              no
ReviseAU               yes
End_DDSAU_Alg

Figure 1: General Format (left) and Example (right) of the DDS-AU Group

Where Begin_DDSAU_Alg and End_DDSAU_Alg are parsing tags that wrap a set of algorithm configuration variables. These variables are described below:

  • PerturbationValue: This parameter defines the standard deviation of the decision variable perturbations as follows: PerturbationValue = StdDev / DV_Range. The allowable range is 0 to 1. As the value increases, the sampling becomes more and more spread out from the current best value of the decision variable. The default and recommended value is 0.2.
  • NumSearches: The number of independent DDS searches to perform as part of the overall DDS-AU uncertainty approximation algorithm. The default value is 25. Each search will be run using either the DDS algorithm or the asynchronous parallel DDS algorithm depending on the value assigned to the ParallelSearches variable. Results for each search will be stored in output files named OstModel[N]_DDS[M].txt and OstOutput[N]_DDS[M].txt, where [N] is the processor number and [M] is the DDS search number. A DDS-AU summary file named OstOutputDDSAU.txt will be created when all DDS searches are complete. This file will contain results of the various optimization trials as well as a summary of the behavioral parameter sets that were discovered.
  • MinItersPerSearch, MaxItersPerSearch: The minimum and maximum computational budget for each independent DDS search. If the same budget is desired for each search, assign the desired value to both MinItersPerSearch and MaxItersPerSearch. If different values are assigned to these variables, the DDS-AU algorithm will randomly generate a different budget for each search. The randomly generated budget will fall within the range specified by MinItersPerSearch and MaxItersPerSearch. The default value for MinItersPerSearch is 30. The default value for MaxItersPerSearch is 70.
  • ParallelSearches: Each independent search will be run using the asynchronous parallel DDS algorithm if this variable is set to “yes”. Otherwise, each independent search will be run using a serial implementation of the DDS algorithm. The default value is “no”.
  • Threshold: The behavioral threshold for approximating uncertainty. Parameter sets with corresponding objective function values less than the threshold will be considered behavioral. The default value is 1000.
  • Randomize: The DDS-AU algorithm will randomly select a behavioral parameter set from each independent trial if this variable is set to “yes”. Otherwise, the DDS-AU algorithm will select the best behavioral parameter set from each independent trial. Random selection can help prevent clustering problems in the approximation of uncertainty. The default value is “no”.
  • ReviseAU: Set this variable to “yes” to re-run a DDS-AU analysis without re-running previously completed independent DDS searches. This allows for DDS-AU to consider a different threshold value or randomization setting without repeating the required independent DDS searches. Results from previous searches will be read from corresponding “OstModel[N]_DDS[M].txt” output files. A given independent search will be re-run if corresponding output files are missing or unreadable. All existing “OstModel[N]_DDS[M].txt” and “OstOutput[N]_DDS[M].txt” files found in the OSTRICH launch directory will be deleted as part of DDS-AU initialization if this variable is set to “no”. The default value for this variable is “no”.

References

Tolson, B. A.,Shoemaker, C. A. 2008. Efficient prediction uncertainty approximation in the calibration of environmental simulation models. Water Resources Research 44, W04411.