Individual target failure probabilities for RBDO problems


I do not seem to find any option to specifiy a target failure probability for each individual limit state function.
The option RBDOOpts.TargetPf only takes scalar inputs instead of vector inputs as far as I can tell.

Is their such an option or do all limit state functions need to have the same target failure probability?


Hi @Cedric ,

You can specify different target Pf or Beta by using a row vector. You need to make sure then that the size is consistent with the number of limit-states. For example for a limit-state with two outputs, you can specify:
RBDOpts.TargetBeta = [2.5 3] ;
RBDOpts.TargetPf = [1e-3 1e-4];

I don’t think this feature was documented in UQLab, therefore it has not been properly tested/validated. I did try now though and it does work for all methods, except for:

  • PMA (or any inverse-FORM based method): This is due to the fact that this feature was not explicitely implemented in the inverse FORM algorithm. I have just fixed it and it will be available in the next release. In the meantime, if you would like to make this work in your installation, you will need to modifiy all occurences of:
    in the uq_inverseform.m file (which is located in \modules\uq_analysis\builtin\uq_rbdo).

  • SLA: I have just noticed that there is a bug in SLA that does not allow for limit-states with multiple outputs (not only related to the different target Pf/Betas). I need to check it more closely. I will come back to you asap.

Hope this helps.


Thank you so much, that helped!