1Blurb::
2Number of dimensions in which to perturb categorical variables.
3
4Description::
5The \c neighbor_order keyword allows the user to specify the number of
6categorical dimensions to perturb when determining neighboring points
7that will be used by the mesh adaptive direct search method to augment
8its search.  When greater than 1, the neighbors are defined from the
9tensor product of the admissible 1-dimensional perturbations.
10
11<b> Default Behavior </b>
12
13By default, the categorical neighbors will be defined by perturbing
14only one categorical variable at a time (according to the corresponding
15adjacency_matrix; see \ref variables-discrete_design_set-string-adjacency_matrix)
16while leaving the others fixed at their current values.
17
18<b> Usage Tips </b>
19
20The maximum meaningful value \c neighbor_order can take on is the
21number of categorical variables.
22
23Topics::
24
25Examples::
26
27In this example, suppose we have the following categorical variables
28and associated adjacency matrices.
29
30\verbatim
31variables
32  discrete_design_set
33    real = 2
34      categorical ‘yes’ ‘yes’
35      num_set_values = 3 5
36      set_values = 1.2 2.3 3.4
37                   1.2 3.3 4.4 5.5 7.7
38      adjacency_matrix = 1 1 0
39                         1 1 1
40                         0 1 1
41                         1 0 1 0 1
42                         0 1 0 1 0
43                         1 0 1 0 1
44                         0 1 0 1 0
45                         1 0 1 0 1
46\endverbatim
47
48Also suppose that we have the following method specification.
49
50\verbatim
51method
52  mesh_adaptive_search
53    seed = 1234
54\endverbatim
55
56If the mesh adaptive direct search is at the point (1.2, 1.2), then
57the neighbors will be defined by the default 1-dimensional
58perturbations and would be the following:
59
60\verbatim
61(2.3, 1.2)
62(1.2, 4.4)
63(1.2, 7.7)
64\endverbatim
65
66If, instead, the method specification is the following:
67
68\verbatim
69method
70  mesh_adaptive_search
71    seed = 1234
72    neighbor_order = 2
73\endverbatim
74
75The neighbors will be defined by 2-dimensional perturbations defined
76from the tensor product of the 1-dimensional perturbation and would be
77the following:
78
79\verbatim
80(2.3, 1.2)
81(2.3, 4.4)
82(2.3, 7.7)
83(1.2, 4.4)
84(1.2, 7.7)
85\endverbatim
86
87Theory::
88Faq::
89See_Also::
90variables-discrete_design_set-string-adjacency_matrix
91