Algorithms - Exhaustive Grid Search

The OSTRICH grid search optimization algorithm

Initial Publication:

Modified:

p align="justify"> The following optional group will configure the Grid-based exhaustive search algorithm and will be processed if [ProgramType] is set to “GridAlgorithm”.

BeginGridAlg
Dimensions    [d1 d2 ... dn]
EvalsPerIter  [eval_per_itr]
EndGridAlg
BeginGridAlg
Dimensions    100 100 100
EvalsPerIter  1000
EndGridAlg

Figure 1: General Format (left) and Example (right) of the Grid-based Search Group

Where BeginGridAlg and EndGridAlg are parsing tags that wrap the following set of algorithm configuration variables:

  • Dimensions: This variable describes a full-factorial sampling grid over which the exhaustive search will be applied. The sequence should contain a space-separated list of “dimension” values for each parameter. The order of the values should correspond to the order in which parameters are listed in the Parameters group. The values represent the number of equally spaced samples that will be evaluated for each parameter. For example, consider if there were two parameters of interest: p1, with limits of -10 and +10, and p2, with limits of 0 and 100. A Dimensions entry of “Dimensions 5 3” would result in the evaluation of the [p1, p2] parameter combinations shown in Table 1.

    Table 1: Example parameter combinations

    p1 -10 -10 -10 -5 -5 -5 0 0 0 +5 +5 +5 +10 +10 +10
    p2 0 50 100 0 50 100 0 50 100 0 50 100 0 50 100
  • EvalsPerIter: This variable controls the frequency of output within the OSTRICH run record. The current best solution will be reported after every EvalsPerIter model evaluations.