System reliability#

System reliability concerns a structure whose failure is governed by more than one component event. If the component limit states are \(g_i(\mathbf{X})\), the component failure events are

\[F_i = \{g_i(\mathbf{X}) \leq 0\}.\]

For a series system the system failure event is the union of component failure events,

\[F_\mathrm{series} = \bigcup_{i=1}^{n} F_i,\]

and the equivalent scalar limit-state function can be written as

\[g_\mathrm{series}(\mathbf{X}) = \min_i g_i(\mathbf{X}).\]

For a parallel system the system failure event is the intersection of component failure events,

\[F_\mathrm{parallel} = \bigcap_{i=1}^{n} F_i,\]

with equivalent scalar limit-state function

\[g_\mathrm{parallel}(\mathbf{X}) = \max_i g_i(\mathbf{X}).\]

These min/max forms are useful because they preserve the standard PySTRA sign convention: positive means safe and non-positive means failed. They also allow the same system definition to be passed to simulation methods, active learning, and, when the envelope is sufficiently smooth near the controlling point, FORM/SORM.

k-of-n, cut-set, and tie-set systems#

More general topologies are often described in terms of events rather than a single analytic limit-state expression [Ditlevsen2007]. A k-of-n system fails when at least \(k\) component events have occurred:

\[F_{k|n} = \left\{\sum_{i=1}^{n} I(F_i) \geq k\right\},\]

where \(I(F_i)\) is one if event \(F_i\) occurs and zero otherwise. This representation is exact for Boolean enumeration and simulation, but it is not generally differentiable.

If the minimum cut sets \(C_m\) are known, the system failure event can be written as

\[F_\mathrm{sys} = \bigcup_{m=1}^{n_c} \left(\bigcap_{i \in C_m} F_i\right).\]

The dual path, or tie-set, representation writes the safe event as the union of working tie sets. For tie sets \(T_m\),

\[S_\mathrm{sys} = \bigcup_{m=1}^{n_t} \left(\bigcap_{i \in T_m} \bar{F}_i\right).\]

Cut-set and tie-set descriptions are common in structural system reliability because they let the engineer encode known collapse mechanisms or load paths without enumerating every possible Boolean state [Song2003].

Ditlevsen bounds#

For a series system, exact evaluation of \(P(\cup_i F_i)\) may require high-dimensional integration over a union of failure domains. If the component probabilities \(P(F_i)\) and pairwise intersections \(P(F_i \cap F_j)\) are available, Ditlevsen’s bounds give a second-order estimate of the union probability [Ditlevsen1979]. For a chosen event ordering, the lower bound is

\[P_L = P(F_1) + \sum_{i=2}^{n} \max\left[ P(F_i) - \sum_{j=1}^{i-1} P(F_i \cap F_j),\ 0 \right],\]

and the upper bound is

\[P_U = \sum_{i=1}^{n} P(F_i) - \sum_{i=2}^{n} \max_{1 \leq j < i} P(F_i \cap F_j).\]

The bounds depend on event ordering. For small systems the ordering can be checked exhaustively; for large systems, the ordering should be chosen using engineering judgement or a heuristic. Mainçon’s 100-element series-system benchmark is a useful validation case because it reports component and pairwise probabilities directly [Maincon2000].

Linear-programming bounds generalize this idea to arbitrary systems and arbitrary available event information. Song and Der Kiureghian showed that LP bounds can use component, pairwise, and higher-order event probabilities for general cut-set systems, including the rigid-plastic cantilever-bar benchmark [Song2003]. This is a natural extension beyond the current Ditlevsen bounds API.

Four-branch case#

The four-branch case is a widely used benchmark for reliability algorithms because it has multiple disconnected failure regions [Schueremans2005]. With independent standard normal variables \(X_1\) and \(X_2\), it is defined by

\[g_\mathrm{FBC}(\mathbf{X}) = \min(g_1, g_2, g_3, g_4),\]

where

\[\begin{split}\begin{aligned} g_1 &= 3 + 0.1(X_1 - X_2)^2 - \frac{X_1 + X_2}{\sqrt{2}}, \\ g_2 &= 3 + 0.1(X_1 - X_2)^2 + \frac{X_1 + X_2}{\sqrt{2}}, \\ g_3 &= (X_1 - X_2) + \frac{6}{\sqrt{2}}, \\ g_4 &= (X_2 - X_1) + \frac{6}{\sqrt{2}}. \end{aligned}\end{split}\]

The benchmark is a series system in event terms, but a single FORM analysis can find only one local design point. Simulation, subset simulation, and active-learning methods are therefore better suited to estimating the global failure probability unless a dedicated first-order system reliability method is used.

First-order system reliability#

First-order system reliability methods approximate each component failure surface near its design point and then integrate the resulting system event in standard normal space. This requires more information than a scalar topology: component design points, component normal vectors, dependence between linearized events, and a clear isoprobabilistic transformation. Rosenblatt transformations add an additional ordering issue because the transformed standard-space geometry can depend on the conditioning order [Meinen2025].

For this reason PySTRA currently separates three tasks:

  1. users encode the system topology using series, parallel, k-of-n, cut-set, or tie-set systems;

  2. existing simulation and active-learning methods estimate the resulting failure probability directly;

  3. analytical bounds such as Ditlevsen bounds are computed from event probabilities when those probabilities are available.

Use this method: System reliability · System reliability · Reliability algorithms and results

For coordinate conventions, see Notation and probability spaces.