Reliability-based optimization of element-level bridge maintenance policies with a genetic algorithm (GA). Four reliability-index (β) thresholds are treated as decision variables and optimized with PyGAD to minimize the expected discounted life-cycle cost (LCC) of a deteriorating steel-girder element (National Bridge Element 107).
This repository is the reliability-based GA benchmark from the paper:
Interpretable Deep Reinforcement Learning for Element-level Bridge Life-cycle Optimization Seyyed Amirhossein Moayyedi and David Y. Yang, Portland State University. arXiv:2604.02528 · https://arxiv.org/abs/2604.02528
In the paper, the GA policy is compared against a dynamic-programming (DP) condition-based policy and the paper's main contribution — an interpretable soft-tree / oblique-decision-tree reinforcement-learning actor. All methods are evaluated on the same Gymnasium/TorchRL environment, so their life-cycle costs are directly comparable.
Each year, the element's condition is an array of condition-state (CS) proportions
s = [s₁, s₂, s₃, s₄]. This is mapped to a single reliability index
β(s) = Φ⁻¹(1 − pf(s)), pf(s) = pf_arrayᵀ · s
and a maintenance action is chosen by comparing β(s) against four optimized thresholds
β₁ ≥ β₂ ≥ β₃ ≥ β₄ (five actions: do-nothing, maintenance, repair, rehabilitation,
replacement):
action = 0 (do nothing) if β(s) > β₁
1 (maintenance) if β₂ ≤ β(s) < β₁
2 (repair) if β₃ ≤ β(s) < β₂
3 (rehabilitation) if β₄ ≤ β(s) < β₃
4 (replacement) if β(s) < β₄
The GA searches for the thresholds that minimize the expected discounted LCC over a finite horizon, propagating the CS distribution through action-dependent Markov transition matrices and accumulating direct maintenance cost plus discounted failure risk.
Optimized β-thresholds reproduced by this repository (pygad_beta_dp_report.json):
| Threshold | β₁ | β₂ | β₃ | β₄ |
|---|---|---|---|---|
| Value | 4.200 | 3.558 | 3.367 | 3.191 |
Because β₁ ≈ 4.200 sits at the upper bound of attainable reliability, the do-nothing option is effectively never selected — matching Eq. (18) of the paper.
Life-cycle cost comparison (paper, Table 8; 1,000 validation episodes):
| Policy | Mean LCC | Std |
|---|---|---|
| Oblique decision tree (RL) | 1590.86 | 740.31 |
| Oblique decision tree (RL + ad hoc rule) | 1560.96 | 672.09 |
| Condition-based policy (DP) | 2133.42 | 1178.30 |
| Reliability-based policy (GA — this repo) | 1758.91 | 918.04 |
Reproducing this repository yields a GA mean LCC of ≈ 1782 (over the fixed initial-state panel) / ≈ 1774 (1,000 evaluation episodes), within ~1% of the published 1758.91; the small difference comes from library and RNG versions. The optimized β-thresholds reproduce the paper exactly.
GA convergence: best expected discounted cost per generation.
Life-cycle cost of the optimized GA policy as a function of the element's initial
reliability index, over 1,000 evaluation episodes.
Released under the MIT License.