Dakota Reference Manual  Version 6.2
Large-Scale Engineering Optimization and Uncertainty Analysis
 All Pages

Specifies the parameter set to be iterated by a particular method.


This keyword is related to the topics:


Alias: none

Argument(s): none

Required/Optional Description of Group Dakota Keyword Dakota Keyword Description
Optional id_variables

Name the variables block; helpful when there are multiple

Optional active

Set the active variables view a method will see

(Choose One)
Group 1 mixed

Maintain continuous/discrete variable distinction


Allow treatment of discrete variables as continuous

Optional continuous_design

Continuous design variables; each defined by a real interval

Optional discrete_design_range

Discrete design variables; each defined by an integer interval

Optional discrete_design_set

Set-valued discrete design variables

Optional normal_uncertain Aleatory uncertain variable - normal (Gaussian)
Optional lognormal_uncertain Aleatory uncertain variable - lognormal
Optional uniform_uncertain Aleatory uncertain variable - uniform
Optional loguniform_uncertain Aleatory uncertain variable - loguniform
Optional triangular_uncertain Aleatory uncertain variable - triangular
Optional exponential_uncertain Aleatory uncertain variable - exponential
Optional beta_uncertain Aleatory uncertain variable - beta
Optional gamma_uncertain Aleatory uncertain variable - gamma
Optional gumbel_uncertain Aleatory uncertain variable - gumbel
Optional frechet_uncertain Aleatory uncertain variable - Frechet
Optional weibull_uncertain Aleatory uncertain variable - Weibull
Optional histogram_bin_uncertain

Aleatory uncertain variable - continuous histogram

Optional poisson_uncertain Aleatory uncertain discrete variable - Poisson
Optional binomial_uncertain Aleatory uncertain discrete variable - binomial
Optional negative_binomial_uncertain Aleatory uncertain discrete variable - negative binomial
Optional geometric_uncertain Aleatory uncertain discrete variable - geometric
Optional hypergeometric_uncertain Aleatory uncertain discrete variable - hypergeometric
Optional histogram_point_uncertain

Aleatory uncertain variable - discrete histogram

Optional uncertain_correlation_matrix

Correlation among aleatory uncertain variables

Optional continuous_interval_uncertain

Epistemic uncertain variable - values from one or more continuous intervals

Optional discrete_interval_uncertain

Epistemic uncertain variable - values from one or more discrete intervals

Optional discrete_uncertain_set

Set-valued discrete uncertain variables

Optional continuous_state Continuous state variables
Optional discrete_state_range

Discrete state variables; each defined by an integer interval

Optional discrete_state_set

Set-valued discrete state variables


The variables specification in a Dakota input file specifies the parameter set to be iterated by a particular method.

In the case of

  • An optimization study:
    • These variables are adjusted in order to locate an optimal design.
  • Parameter studies/sensitivity analysis/design of experiments:
    • These parameters are perturbed to explore the parameter space.
  • Uncertainty analysis:
    • The variables are associated with distribution/interval characterizations which are used to compute corresponding distribution/interval characterizations for response functions.

To accommodate these different studies, Dakota supports different:

  • Variable types
    • design
    • aleatory uncertain
    • epistemic uncertain
    • state
  • Variable domains
    • continuous
    • discrete
      • discrete range
      • discrete integer set
      • discrete string set
      • discrete real set

Use the variables page to browse the available variables by type and domain.

Variable Types

  • Design Variables
    • Design variables are those variables which are modified for the purposes of computing an optimal design.
    • The most common type of design variables encountered in engineering applications are of the continuous type. These variables may assume any real value within their bounds.
    • All but a handful of the optimization algorithms in Dakota support continuous design variables exclusively.
  • Aleatory Uncertain Variables
    • Aleatory uncertainty is also known as inherent variability, irreducible uncertainty, or randomness.
    • Aleatory uncertainty is predominantly characterized using probability theory. This is the only option implemented in Dakota.
  • Epistemic Uncertain Variables
    • Epistemic uncertainty is uncertainty due to lack of knowledge.
    • In Dakota, epistemic uncertainty is characterized by interval analysis or the Dempster-Shafer theory of evidence.
    • Note that epistemic uncertainty can also be modeled with probability density functions (as done with aleatory uncertainty). Dakota does not support this capability.
  • State Variables
    • State variables consist of "other" variables which are to be mapped through the simulation interface, in that they are not to be used for design and they are not modeled as being uncertain.
    • State variables provide a convenient mechanism for managing additional model parameterizations such as mesh density, simulation convergence tolerances, and time step controls.
    • Only parameter studies and design of experiments methods will iterate on state variables.
    • The initial_value is used as the only value for the state variable for all other methods, unless active state is invoked.
    • See more details on the state_variables page.

Variable Domains

Continuous variables are defined by bounds. Discrete variables can be defined in one of three ways, which are discussed on the page discrete_variables.

Ordering of Variables

The ordering of variables is important, and a consistent ordering is employed throughout the Dakota software. The ordering is shown in dakota.input.summary and can be summarized as:

  1. design
    1. continuous
    2. discrete integer
    3. discrete string
    4. discrete real
  2. aleatory uncertain
    1. continuous
    2. discrete integer
    3. discrete string
    4. discrete real
  3. epistemic uncertain
    1. continuous
    2. discrete integer
    3. discrete string
    4. discrete real
  4. state
    1. continuous
    2. discrete integer
    3. discrete string
    4. discrete real

Ordering of variable types below this granularity (e.g., from normal to histogram bin within aleatory uncertain - continuous ) is defined somewhat arbitrarily, but is enforced consistently throughout the code.

Active Variables

The reason variable types exist is that methods have the capability to treat variable types differently. All methods have default behavior that determines which variable types are "active" and will be assigned values by the method. For example, optimization methods will only vary the design variables - by default.

The default behavior should be described on each method page, or on topics pages that relate to classes of methods. In addition, the default behavior can be modified using the active keyword.


Several examples follow. In the first example, two continuous design variables are specified:

    continuous_design = 2
      initial_point    0.9    1.1
      upper_bounds     5.8    2.9
      lower_bounds     0.5   -2.9
      descriptors   'radius' 'location'

In the next example, defaults are employed. In this case, initial_point will default to a vector of 0. values, upper_bounds will default to vector values of DBL_MAX (the maximum number representable in double precision for a particular platform, as defined in the platform's float.h C header file), lower_bounds will default to a vector of -DBL_MAX values, and descriptors will default to a vector of 'cdv_i' strings, where i ranges from one to two:

    continuous_design = 2

In the following example, the syntax for a normal-lognormal distribution is shown. One normal and one lognormal uncertain variable are completely specified by their means and standard deviations. In addition, the dependence structure between the two variables is specified using the uncertain_correlation_matrix.

        normal_uncertain    =  1
          means             =  1.0
          std_deviations    =  1.0
          descriptors       =  'TF1n'
        lognormal_uncertain =  1
          means             =  2.0
          std_deviations    =  0.5
          descriptors       =  'TF2ln'
        uncertain_correlation_matrix =  1.0 0.2
                                        0.2 1.0

An example of the syntax for a state variables specification follows:

        continuous_state = 1
          initial_state       4.0
          lower_bounds        0.0
          upper_bounds        8.0
          descriptors        'CS1'
        discrete_state_range = 1
          initial_state       104
          lower_bounds        100
          upper_bounds        110
          descriptors        'DS1'

And in a more advanced example, a variables specification containing a set identifier, continuous and discrete design variables, normal and uniform uncertain variables, and continuous and discrete state variables is shown:

    id_variables = 'V1'
    continuous_design = 2
      initial_point    0.9    1.1
      upper_bounds     5.8    2.9
      lower_bounds     0.5   -2.9
      descriptors   'radius' 'location'
    discrete_design_range = 1
      initial_point    2
      upper_bounds     1
      lower_bounds     3
      descriptors   'material'
    normal_uncertain = 2
      means          =  248.89, 593.33
      std_deviations =   12.4,   29.7
      descriptors    =  'TF1n'   'TF2n'
    uniform_uncertain = 2
      lower_bounds =  199.3,  474.63
      upper_bounds =  298.5,  712.
      descriptors  =  'TF1u'   'TF2u'
    continuous_state = 2
      initial_state = 1.e-4  1.e-6
      descriptors   = 'EPSIT1' 'EPSIT2'
    discrete_state_set_int = 1
      initial_state = 100
      set_values    = 100 212 375
      descriptors   = 'load_case'