LOPA dependencies change in 3.1.6

The problem

The way dependencies are processed during the LOPA calculation is changed. The change only impacts scenarios with three or more protection layers that have dependencies between them.

An example:

- LOC
  - Protection layer C: uses sensor 2, closes valve X
    - Protection layer B: uses sensor 1, closes valve Y
      - Protection layer A: uses sensor 1, closes valve X
        - Some initial event

The following dependencies are valid:

- PL A and PL B because they both use sensor 1 (dependency 1)

- PL A and PL C because they both use valve X (dependency 2)

Let’s assume all three PL’s have a PFD of 0.1:

- LOC
  - Protection layer C: uses sensor 2, closes valve X (PFD: 0.1) [2]
    - Protection layer B: uses sensor 1, closes valve Y (PFD: 0.1) [1]
      - Protection layer A: uses sensor 1, closes valve X (PFD: 0.1) [1,2]
        - Some initial event

The old calculation would process the protection layers in chronological order and remove dependent protection layers from the calculation in that order. It would have the following result:

- Some initial event                                      1/y
- PL A                                                    0.1
- PL B (not used because of dep 1)
- PL C (not used because of dep 2)
- LOC

So the LOPA calculation would result in 0.1/y.

The problem is that since protection layers B and C are not dependent, it would also be valid to ignore protection layer A and keep B and C in the calculation.

It was possible to force this by moving protection layer A higher in the cause tree for the scenario:

- LOC
  - Protection layer A: uses sensor 1, closes valve X (PFD: 0.1) [1,2]
    - Protection layer C: uses sensor 2, closes valve X (PFD: 0.1) [2]
      - Protection layer B: uses sensor 1, closes valve Y (PFD: 0.1) [1]
        - Some initial event

This would result in:

- Some initial event                                      1/y
- PL B                                                    0.1
- PL C                                                    0.1
- PL A (not used because of dep 1)
- LOC

which results in 0.01/y.

For more complex combinations, it was impossible to achieve the correct result with this trick, resulting in wrong LOPA calculations.

Furthermore, since the old calculation eliminated both B and C, this behaviour was sometimes used by analysts to not enter all necessary dependency combinations. For example, if in the example B and C were in fact not independent, this dependency could be forgotten, because the LOPA calculation seemed to suggest that if the dependencies A-B and A-C were entered, that B-C was implicitly also true, which is not always the case.

The solution

The new calculation will now determine first all possible combinations of dependencies and elimitations and determine which combination yields the best result.

For instance, if there are four protection layers (A to D) and the following dependencies have been defined: A-B, A-C and B-D then the following combinations are in fact possible:

- A-D
- B-C
- C-D

Depending on the PFD of the different protection layers, any of these combinations may yield the most favourable result.

Each of these combinations will be calculated and the most optimal solution will be used.