Sensitivity analysis using Sobol’ indices from polynomial chaos expansion

In this page, we introduce the method to compute Sobol’ sensitivity indices from a polynomials chaos expansion. Sobol’ indices are introduced in Sensitivity analysis using Sobol’ indices and polynomial chaos expansion (PCE) is introduced in Functional Chaos Expansion.

Introduction

Sobol’-Hoeffding is the decomposition of a function on a basis made of orthogonal functions. Since the PCE expansion is also an orthogonal decomposition, the Sobol’ decomposition of a function can be expressed depending on its PCE (see [knio2010] page 139). As a result, Sobol’ indices can be obtained analytically from the coefficients of the PCE (see [sudret2006], [sudret2008]).

Consider the input random vector \inputRV = \left( X_1,\ldots,X_\inputDim \right) and the output random variable Y of the model:

Y =  \model(\inputRV).

Variance and part of variance of a PCE

Let d be the dimension of the input random vector. Let P \in \Nset be the number of coefficients in the functional basis. Let \mathcal{J}_P \subseteq \Nset^{\inputDim} the set of multi-indices up to the index P. Depending on the way the coefficients are computed, the set of multi-indices is the consequence of the choice of the polynomial degree, the enumeration rule, and, if necessary, the selection method (e.g. the LARS selection method). Let \metaModel(\standardRV) be the polynomial chaos expansion:

\tilde{h}(\standardRV)
&= \sum_{\idx \in \mathcal{J}_P} a_\idx \psi_\idx(\standardRV)

where \standardRV is the standardized input random vector, \{a_\idx\}_{\idx \in \mathcal{J}_P} are the coefficients and \{\psi_\idx\}_{\idx \in \mathcal{J}_P} are the functions in the functional basis.

The variance of the polynomial chaos expansion is:

\Var{\metaModel(\standardRV)} = \sum_{\idx \in \mathcal{J}_P} a_\idx^2 \|\psi_\idx\|^2.

In the previous expression, let us emphasise that the variance is a sum of squares, excepted the a_0 coefficient. If the polynomial basis is orthonormal, the expression is particularly simple (see [legratiet2017] eq. 38.43 page 1301):

\Var{\metaModel(\standardRV)} = \sum_{\idx \in \mathcal{J}_P} a_\idx^2.

The part of variance of the multi-index \idx is:

\operatorname{PoV}_\idx
= \frac{a_\idx^2 \|\psi_\idx\|^2}{\Var{\metaModel(\standardRV)}}.

The sum of the part of variances of all multi-indices is equal to 1:

\sum_{\idx \in \mathcal{J}_P} \operatorname{PoV}_\idx = 1.

Hence, we can identify the multi-indices which contribute more significantly to the variance of the output by sorting the multi-indices by decreasing order of their part of variance. This result is printed by the str representation of the FunctionalChaosSobolIndices class and is accessed by the print function: see an example of this below.

All the Sobol’ indices that we introduce in this section depend on a specific set of multi-indices which are presented in the next section.

Sets of multi-indices

Let \mathcal{J}^S \subseteq \mathcal{J}_P a subset of the multi-indices involved in the polynomial chaos expansion. Let \operatorname{S}^{PCE} be the function of the coefficients associated to the multi-indices \mathcal{J}^S, defined by:

\operatorname{S}^{PCE}\left(\mathcal{J}^S\right)
= \frac{\sum_{\idx \in \mathcal{J}^S} a_\idx^2 \|\psi_\idx\|^2}{\Var{\metaModel(\standardRV)}}.

Then any Sobol’ index S can be defined by the equation:

S = \operatorname{S}^{PCE}\left(\mathcal{J}^S\right).

If the polynomial basis is orthonormal, therefore:

\operatorname{S}^{PCE}\left(\mathcal{J}^S\right)
= \frac{\sum_{\idx \in \mathcal{J}^S} a_\idx^2}{\Var{\metaModel(\standardRV)}}.

Hence, in the methods presented below, each Sobol’ index is defined by its corresponding set of multi-indices.

First order Sobol’ index of a single variable

See First order Sobol’ sensitivity index of a variable for the mathematical definition of this sensitivity index. Let i \in \{0, ..., \inputDim - 1\} the index of an input variable. Let \mathcal{J}_i^S the set of multi-indices such that \alpha_i > 0 and the other components of the multi-indices are zero (see [legratiet2017] eq. 38.44 page 1301):

\mathcal{J}_i^S
=\left\{\idx=(0, ..., 0, \alpha_i, 0, ..., 0) \in \mathcal{J}_P, \quad
\alpha_i > 0 \right\}.

Therefore, the first order Sobol’ index S_i of the variable X_i is:

S_i = \operatorname{S}^{PCE}\left(\mathcal{J}_i^S\right).

Total Sobol’ index of a single variable

See Total sensitivity index of a variable for the mathematical definition of this sensitivity index. Let \mathcal{J}_i^T the set of multi-indices such that \alpha_i > 0 (see [legratiet2017] eq. 38.45 page 1301):

\mathcal{J}_i^T
=\left\{\idx = (\alpha_0,...,\alpha_i,...,\alpha_{\inputDim - 1}) \in \mathcal{J}_P, \quad
\alpha_i > 0 \right\}.

Therefore, the total Sobol’ index S^T_i is:

S^T_i = \operatorname{S}^{PCE}\left(\mathcal{J}_i^T\right).

Interaction Sobol’ index of a group of variables

See Interaction sensitivity index of a variable for the mathematical definition of this sensitivity index. Let \bdu \subseteq \{0, ..., \inputDim - 1\} the list of variable indices in the group. Let \mathcal{J}_\bdu the set of multi-indices:

\mathcal{J}_\bdu
=\left\{\idx \in \mathcal{J}_P,
\quad \idx \neq \boldsymbol{0}, \quad
\alpha_i > 0 \textrm{ if } i \in \bdu, \quad
\alpha_i = 0 \textrm{ if } i \not \in \bdu, \quad
i = 1, \ldots, \inputDim \right\}.

Therefore, the interaction (high order) Sobol’ index S_\bdu is:

S_\bdu = \operatorname{S}^{PCE}\left(\mathcal{J}_\bdu\right).

Total interaction Sobol’ index of a group of variables

See Total interaction sensitivity index of a group of variables for the mathematical definition of this sensitivity index. Let \mathcal{J}_\bdu the set of multi-indices:

\mathcal{J}_\bdu^{T, i}
= \left\{\boldsymbol{\alpha} \in \mathcal{J}_P, \quad \boldsymbol{\alpha} \neq \boldsymbol{0}, \quad
\alpha_i > 0 \textrm{ if } i \in \bdu, \quad
i = 1, \ldots, \inputDim \right\}.

Therefore, the total interaction (high order) Sobol’ index S_\bdu is:

S_\bdu^{T, i} = \operatorname{S}^{PCE}\left(\mathcal{J}_\bdu^{T, i}\right).

Closed first order Sobol’ index of a group of variables

See First order closed sensitivity index of a group of variables for the mathematical definition of this sensitivity index. Let \mathcal{J}_\bdu^{S, \operatorname{cl}} the set of multi-indices such that each component of \idx is contained in the group \bdu:

\mathcal{J}_\bdu^{S, \operatorname{cl}}
= \left\{\idx \in \mathcal{J}_P, \quad
  \idx \neq \boldsymbol{0}, \quad \alpha_i = 0 \quad \textrm{ if } \quad
  i \not \in \bdu, \quad
  i = 1, \ldots, \inputDim \right\}.

Therefore, the first order (closed) Sobol’ index S^{\operatorname{cl}}_\bdu is:

S^{\operatorname{cl}}_\bdu
= \operatorname{S}^{PCE}\left(\mathcal{J}_\bdu^{S, \operatorname{cl}}\right).

Total Sobol’ index of a group of variables

See Total sensitivity index of a group of variables for the mathematical definition of this sensitivity index. Let \mathcal{J}_\bdu^T the set of multi-indices:

\mathcal{J}_\bdu^T
= \left\{\idx \in\mathcal{J}_P, \quad \idx \neq \boldsymbol{0}, \quad
  \exists i \in \{1, \ldots, \inputDim\} \quad
  \textrm{s.t.}  \quad i \in \bdu \textrm{ and } \alpha_i > 0 \right\}.

Therefore, the total Sobol’ index S^T_\bdu is:

S^T_\bdu = \operatorname{S}^{PCE}\left(\mathcal{J}_\bdu^T\right).

Summary

The next table presents the multi-indices involved in each Sobol’ index.

Single variable or group

Sensitivity Index

Multi-indices

One single variable i

First order

\alpha_j > 0 \textrm{ if } j = i, \textrm{ and } \alpha_j = 0 \textrm{ if } j \neq i, \quad j=1, \ldots, \inputDim

Total

\alpha_i > 0

Interaction of a group \bdu

First order

\alpha_i > 0 \textrm{ if } i \in \bdu, \quad \alpha_i = 0 \textrm{ if } i \not \in \bdu

Total interaction

\alpha_i >0 \textrm{ if } i \in \bdu

Group (closed) \bdu

First order (closed)

\alpha_i = 0 \textrm{ if } i \not\in \bdu, \quad i = 1, \ldots, \inputDim

Total

\exists i\in\{1,\ldots, \inputDim\} \quad \textrm{s.t.} \quad i \in \bdu \textrm{ and } \alpha_i > 0

Table 1. Multi-indices involved in the first order and total Sobol’ indices of a single variable i or a group \bdu.