# straussDesign: Designs based on Strauss process In DiceDesign: Designs of Computer Experiments

## Description

Space-Filling Designs based on Strauss process

## Usage

 1 2 straussDesign(n,dimension, RND, alpha=0.5, repulsion=0.001, NMC=1000, constraints1D=0, repulsion1D=0.0001, seed=NULL) 

## Arguments

 n  the number of experiments dimension the number of input variables RND  a real number which represents the radius of interaction alpha  the potential power (default, fixed at 0.5) repulsion the repulsion parameter in the unit cube (gamma) NMC  the number of McMC iterations (this number must be large to converge) constraints1D  1 to impose 1D projection constraints, 0 otherwise repulsion1D  the repulsion parameter in 1D seed  seed for the uniform generation of number

## Details

Strauss designs are Space-Filling designs initially defined from Strauss process:

π (X) = k gamma^s(X)

where s(X) is is the number of pairs of points (xi,xj) of the design X = ( x1, ..., xn \right) that are separated by a distance no greater than the radius of interaction RND, k is the normalizing constant and gamma is the repulsion parameter. This distribution corresponds to the particular case alpha=0.

For the general case, a stochastic simulation is used to construct a Markov chain which converges to a spatial density of points π(X) described by the Strauss-Gibbs potential. In practice, the Metropolis-Hastings algorithm is implemented to simulate a distribution of points which converges to the stationary law:

π(X) = k exp(-U(X))

with a potentiel U defined by:

beta Sum_{i<j} phi(|| xi-xj ||)

where beta = -ln(gamma), phi (h) = (1-h/RND)^{alpha} if h <= RND and 0 otherwise.

The input parameters of straussDesign function can be interpreted as follows:

- RND is used to compute the number of pairs of points of the design separated by a distance no more than RND. A point is said "in interaction" with another if the spheres of radius RND/2 centered on these points intersect.

- alpha is the potential power alpha. The case alpha=0 corresponds to Strauss process (0-1 potential).

- repulsion is equal to the gamma parameter of the Strauss process. Note that gamma belongs to ]0,1].

- constraints1D allows to specify some constraints into the margin. If constraints1D==1, two repulsion parameters are needed: one for the all space (repulsion) and the other for the 1D projection (repulsion1D). Default values are repulsion=0.001 and repulsion1D=0.001. Note that the value of the radius of interaction in the one-dimensional axis is not an input parameter and is automatically fixed at 0.75/n.

## Value

A list containing:

 n  the number of experiments dimension  the number d of variables design_init the initial distribution of n points [0,1]^{d} radius  the radius of interaction alpha  the potential power alpha repulsion  the repulsion parameter γ NMC  the number of iterations McMC constraints1D  an integer indicating if constraints on the factorial axis are imposed. If its value is different from zero, a component repulsion1D containing the value of the repulsion parameter gamma in dimension 1 is added at the list. design  the design of experiments in [0,1]^{d} seed  the seed corresponding to the design

J. Franco

## References

J. Franco, X. Bay, B. Corre and D. Dupuy (2008) Planification d'experiences numeriques a partir du processus ponctuel de Strauss, https://hal.archives-ouvertes.fr/hal-00260701/fr/.

## Examples

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ## Strauss-Gibbs designs in dimension 2 (n=20 points) S1 <- straussDesign(n=20, dimension=2, RND=0.2) plot(S1$design, xlim=c(0,1), ylim=c(0,1)) theta <- seq(0,2*pi, by=2*pi/(100 - 1)) for(i in 1:S1$n){ lines(S1$design[i,1]+S1$radius/2*cos(theta), S1$design[i,2]+S1$radius/2*sin(theta), col='red') } ## 2D-Strauss design S2 <- straussDesign(n=20, dimension=2, RND=0.2, NMC=200, constraints1D=0, alpha=0, repulsion=0.01) plot(S2$design,xlim=c(0,1),ylim=c(0,1)) ## 2D-Strauss designs with constraints on the axis S3 <- straussDesign(n=20, dimension=2, RND=0.18, NMC=200, constraints1D=1, alpha=0.5, repulsion=0.1, repulsion1D=0.01) plot(S3$design, xlim=c(0,1),ylim=c(0,1)) rug(S3$design[,1], side=1) rug(S3$design[,2], side=2) ## Change the dimnames, adjust to range (-10, 10) and round to 2 digits xDRDN(S3, letter="T", dgts=2, range=c(-10, 10)) 

### Example output

      T1     T2
1  -9.92  -6.04
2  -3.74 -10.00
3   8.68  -3.61
4   4.60   4.62
5  -8.73   7.32
6  -4.79  -4.54
7  -2.96  -1.91
8  -2.19   2.23
9   0.83  -2.80
10  6.95   9.69
11 -1.24   8.38
12  1.82  -5.51
13 -6.82  -9.16
14  3.15   3.54
15  7.78   1.35
16  5.40  -0.80
17 10.00  -7.28
18  6.16  -8.12
19 -7.86   0.01
20 -0.37  -8.90


DiceDesign documentation built on Feb. 13, 2021, 1:06 a.m.