Kucherenko results from UQLab 2.1.0 dependent inputs example seems incorrect

After I download and install UQLab 2.1.0, I run uq_Example_Sensitivity_05_DependentInputs.m under examples of sensitivity. The first index of M and P are much higher than the total index, please see below for detail. In addition, the results are inconsistent with what list in Sensitivity Analysis User Manual (also list below), even I modify the sample number the same (1e4). Is there anything I made a mistake?

from running the example

Total Kucherenko indices for output component 1

Y M P
0.242795 0.030790 0.210269


First Order Kucherenko indices for output component 1

Y M P
0.213813 0.550109 0.718526

Total cost (model evaluations): 80000

from User Manual:

Total Kucherenko indices for output component 1

Y M P
0.884794 0.056842 0.001734


First Order Kucherenko indices for output component 1

Y M P
0.843087 0.048177 0.050116

Total cost (model evaluations): 80000

Dear @juntao_ma,

The example and the manual do have a slightly different problem setup. Note that in the manual the distributions of the random variables are defined using the Parameters field, while the example defines the Moments.

I hope this clarifies the questions.

Best regards,
Styfen

Hi Styfen,

Thank you for pointing out the root cause of results difference between running example and user manual. Since parameter “Y” is with Lognormal(mean=5, standard deviation=0.5), we should use Moments field rather than Parameters field when we define its marginal distribution, so the example code is correct at this point. However, as showed in my original question, the first order index of M and P are much higher than their total index (0.55 vs 0.03, 0.72 vs 0.21), is this expected? Could you please help explain further:

  1. Why calculated first-order index is much higher than total-index, is this reasonable? Based on my understanding, total-order index includes additional interaction effects with other parameters, which should always higher than first-order index.
  2. The sum of first-order indices (0.22+0.55+0.72) is much higher than 1.0, why and is it reasonable? Based on my understanding, sum of total-order indices could be greater than 1.0 because of duplicate interaction effect included, but the sum of first-order index should always less than or equal to 1.0.

Best Regards,
Juntao

As for your first question: it does indeed seem counterintuitive to have larger first order indices than total order indices. However, if the correlation effects are strong, this can be the case. This is mentioned for example in this thesis by a former master student of ours (see section 4.9):

Regarding your second question. This is also possible if the correlation is high. There is a good post on this by William Becker on Researchgate:

https://www.researchgate.net/post/Is-it-ever-possible-to-have-the-sum-of-first-order-Sobol-indices-greater-than-one

Hi Styfen,

Thank you very much for your answer, document and information! They are very helpful to learn details of Kucherenko method.

Now I understand strong correlation can cause the sum of first-order indices greater than 1.0, which makes sense because correlation effect is included multiple times.

I now also understand strong correlation can cause first-order index be greater than corresponding total index. However, I think the main reason is because of the definition or the calculation method of total index in Kucherenko. The total index of Xi is not calculated directly, instead it is calculated by 1.0 minus the contribution to the output variance from all other variables in the absence of Xi. This can cause strange total indices in strong correlation case. For example, in case 2 of section 4.2 in the attached document, K1T, K2T and K3T are all 0 when rho12=1.0 or -1.0. Personally I think this definition or calculation method for Kucherenko total index is not suitable for strong correlation senarios, and very possibly can not be applied practically. How do you think?

Best Regards,
Juntao