Procedure: Generate a lattice design¶
Description and Background¶
A lattice design is one of a number of non-random space-filling designs suitable for defining a set of points in the simulator input space for creating a training sample.
The \(n\) point lattice in \(p\) dimensions is generated by a positive integer generator set \(g=(g_1,\ldots,g_p)\). See the “Additional Comments” below for discussion of the choice of generators.
Inputs¶
- Number of dimensions \(p\)
- Number of runs desired \(n\)
- Set of positive integer generators \(g_1,\ldots,g_p\)
Outputs¶
- Lattice design \(D = \{x_1, x_2, \ldots, x_n\}\)
Procedure¶
For \(j=0,\ldots,n-1\), generate lattice points as
Note that the operator “mod 1” here has the effect of returning the fractional part of each number. For instance, if \(j=7, n=50\) and \(g_1 = 13\), then
and so
Additional Comments¶
A potential problem with lattice designs is the difficulty in finding suitable generators for a lattice. A condition for generators is that \(g_1,\ldots,g_d\) and \(n\) should form a set of relatively prime numbers. However, this seems to be a necessary but not sufficient condition to obtain a lattice that fills the design space well.
References¶
Bates, R.A., Riccomagno, E., Schwabe, R., Wynn, H. (1998). The use of lattices in the design of high-dimensional experiments. IMS Lecture Notes, 34, 26-35.
Sloan, I.H., Joe, S. (1994). Lattice methods for multiple integration. Clarendon Press, Oxford.
Matlab code for generating lattice designs is available from Ron Bates (disclaimer).