{
  "modelVersion": "1.1.0",
  "illustrative": true,
  "weights": {
    "cost": 0.25,
    "impact": 0.35,
    "readiness": 0.25,
    "risk": 0.15
  },
  "ranges": {
    "cost": {
      "min": 30,
      "max": 48
    },
    "impact": {
      "min": 65,
      "max": 87
    },
    "readiness": {
      "min": 75,
      "max": 90
    },
    "risk": {
      "min": 15,
      "max": 20
    }
  },
  "normalised": [
    {
      "name": "Logistics digital twin",
      "cost": 48,
      "impact": 87,
      "readiness": 85,
      "risk": 20,
      "values": {
        "cost": 0,
        "impact": 1,
        "readiness": 0.6666666666666666,
        "risk": 0
      }
    },
    {
      "name": "Metering retrofit",
      "cost": 42,
      "impact": 76,
      "readiness": 90,
      "risk": 15,
      "values": {
        "cost": 0.3333333333333333,
        "impact": 0.5,
        "readiness": 1,
        "risk": 1
      }
    },
    {
      "name": "Inspection service",
      "cost": 30,
      "impact": 65,
      "readiness": 75,
      "risk": 20,
      "values": {
        "cost": 1,
        "impact": 0,
        "readiness": 0,
        "risk": 0
      }
    }
  ],
  "ranking": [
    {
      "name": "Metering retrofit",
      "score": 65.83333333333333,
      "costContribution": 8.333333333333334,
      "impactContribution": 17.5,
      "readinessContribution": 25,
      "riskContribution": 15,
      "rank": 1
    },
    {
      "name": "Logistics digital twin",
      "score": 51.666666666666664,
      "costContribution": 0,
      "impactContribution": 35,
      "readinessContribution": 16.666666666666668,
      "riskContribution": 0,
      "rank": 2
    },
    {
      "name": "Inspection service",
      "score": 25,
      "costContribution": 25,
      "impactContribution": 0,
      "readinessContribution": 0,
      "riskContribution": 0,
      "rank": 3
    }
  ],
  "pareto": [
    "Logistics digital twin",
    "Metering retrofit",
    "Inspection service"
  ],
  "sensitivity": [
    {
      "criterion": "Capital cost",
      "shift": -20,
      "testedWeight": 5,
      "leader": "Metering retrofit",
      "leaderScore": 74.5,
      "originalLeaderRank": 1,
      "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
      "tiedLeaders": [
        "Metering retrofit"
      ]
    },
    {
      "criterion": "Capital cost",
      "shift": 20,
      "testedWeight": 45,
      "leader": "Metering retrofit",
      "leaderScore": 57.166666666666664,
      "originalLeaderRank": 1,
      "ranking": "Metering retrofit → Inspection service → Logistics digital twin",
      "tiedLeaders": [
        "Metering retrofit"
      ]
    },
    {
      "criterion": "Strategic impact",
      "shift": -20,
      "testedWeight": 15,
      "leader": "Metering retrofit",
      "leaderScore": 70.7051282051282,
      "originalLeaderRank": 1,
      "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
      "tiedLeaders": [
        "Metering retrofit"
      ]
    },
    {
      "criterion": "Strategic impact",
      "shift": 20,
      "testedWeight": 55,
      "leader": "Logistics digital twin",
      "leaderScore": 66.53846153846153,
      "originalLeaderRank": 2,
      "ranking": "Logistics digital twin → Metering retrofit → Inspection service",
      "tiedLeaders": [
        "Logistics digital twin"
      ]
    },
    {
      "criterion": "Readiness",
      "shift": -20,
      "testedWeight": 5,
      "leader": "Metering retrofit",
      "leaderScore": 56.72222222222222,
      "originalLeaderRank": 1,
      "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
      "tiedLeaders": [
        "Metering retrofit"
      ]
    },
    {
      "criterion": "Readiness",
      "shift": 20,
      "testedWeight": 45,
      "leader": "Metering retrofit",
      "leaderScore": 74.94444444444444,
      "originalLeaderRank": 1,
      "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
      "tiedLeaders": [
        "Metering retrofit"
      ]
    },
    {
      "criterion": "Execution risk",
      "shift": -20,
      "testedWeight": 0,
      "leader": "Logistics digital twin",
      "leaderScore": 60.78431372549019,
      "originalLeaderRank": 2,
      "ranking": "Logistics digital twin → Metering retrofit → Inspection service",
      "tiedLeaders": [
        "Logistics digital twin"
      ]
    },
    {
      "criterion": "Execution risk",
      "shift": 20,
      "testedWeight": 35,
      "leader": "Metering retrofit",
      "leaderScore": 73.87254901960785,
      "originalLeaderRank": 1,
      "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
      "tiedLeaders": [
        "Metering retrofit"
      ]
    }
  ],
  "stability": 75,
  "preferenceEvaluation": {
    "policy": "Exact rational decimal normalisation, weight redistribution, scores and rankings for canonical JSON-number inputs. Equal redistribution applies only when every other supplied weight is exactly zero. Chart coordinates and numeric displays approximate these fractions; preferences and measurements remain user assumptions.",
    "weights": {
      "cost": {
        "numerator": "1",
        "denominator": "4",
        "decimal": "2.500000000000000000000000000000000000000e-1"
      },
      "impact": {
        "numerator": "7",
        "denominator": "20",
        "decimal": "3.500000000000000000000000000000000000000e-1"
      },
      "readiness": {
        "numerator": "1",
        "denominator": "4",
        "decimal": "2.500000000000000000000000000000000000000e-1"
      },
      "risk": {
        "numerator": "3",
        "denominator": "20",
        "decimal": "1.500000000000000000000000000000000000000e-1"
      }
    },
    "normalised": [
      {
        "name": "Logistics digital twin",
        "values": {
          "cost": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          },
          "impact": {
            "numerator": "1",
            "denominator": "1",
            "decimal": "1.000000000000000000000000000000000000000e0"
          },
          "readiness": {
            "numerator": "2",
            "denominator": "3",
            "decimal": "6.666666666666666666666666666666666666667e-1"
          },
          "risk": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          }
        }
      },
      {
        "name": "Metering retrofit",
        "values": {
          "cost": {
            "numerator": "1",
            "denominator": "3",
            "decimal": "3.333333333333333333333333333333333333333e-1"
          },
          "impact": {
            "numerator": "1",
            "denominator": "2",
            "decimal": "5.000000000000000000000000000000000000000e-1"
          },
          "readiness": {
            "numerator": "1",
            "denominator": "1",
            "decimal": "1.000000000000000000000000000000000000000e0"
          },
          "risk": {
            "numerator": "1",
            "denominator": "1",
            "decimal": "1.000000000000000000000000000000000000000e0"
          }
        }
      },
      {
        "name": "Inspection service",
        "values": {
          "cost": {
            "numerator": "1",
            "denominator": "1",
            "decimal": "1.000000000000000000000000000000000000000e0"
          },
          "impact": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          },
          "readiness": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          },
          "risk": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          }
        }
      }
    ],
    "ranking": [
      {
        "name": "Metering retrofit",
        "rank": 1,
        "score": {
          "numerator": "395",
          "denominator": "6",
          "decimal": "6.583333333333333333333333333333333333333e1"
        },
        "contributions": {
          "cost": {
            "numerator": "25",
            "denominator": "3",
            "decimal": "8.333333333333333333333333333333333333333e0"
          },
          "impact": {
            "numerator": "35",
            "denominator": "2",
            "decimal": "1.750000000000000000000000000000000000000e1"
          },
          "readiness": {
            "numerator": "25",
            "denominator": "1",
            "decimal": "2.500000000000000000000000000000000000000e1"
          },
          "risk": {
            "numerator": "15",
            "denominator": "1",
            "decimal": "1.500000000000000000000000000000000000000e1"
          }
        }
      },
      {
        "name": "Logistics digital twin",
        "rank": 2,
        "score": {
          "numerator": "155",
          "denominator": "3",
          "decimal": "5.166666666666666666666666666666666666667e1"
        },
        "contributions": {
          "cost": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          },
          "impact": {
            "numerator": "35",
            "denominator": "1",
            "decimal": "3.500000000000000000000000000000000000000e1"
          },
          "readiness": {
            "numerator": "50",
            "denominator": "3",
            "decimal": "1.666666666666666666666666666666666666667e1"
          },
          "risk": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          }
        }
      },
      {
        "name": "Inspection service",
        "rank": 3,
        "score": {
          "numerator": "25",
          "denominator": "1",
          "decimal": "2.500000000000000000000000000000000000000e1"
        },
        "contributions": {
          "cost": {
            "numerator": "25",
            "denominator": "1",
            "decimal": "2.500000000000000000000000000000000000000e1"
          },
          "impact": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          },
          "readiness": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          },
          "risk": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          }
        }
      }
    ],
    "sensitivity": [
      {
        "criterion": "cost",
        "shift": -20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "1",
            "denominator": "20",
            "decimal": "5.000000000000000000000000000000000000000e-2"
          },
          "impact": {
            "numerator": "133",
            "denominator": "300",
            "decimal": "4.433333333333333333333333333333333333333e-1"
          },
          "readiness": {
            "numerator": "19",
            "denominator": "60",
            "decimal": "3.166666666666666666666666666666666666667e-1"
          },
          "risk": {
            "numerator": "19",
            "denominator": "100",
            "decimal": "1.900000000000000000000000000000000000000e-1"
          }
        },
        "ranking": [
          {
            "name": "Metering retrofit",
            "rank": 1,
            "score": {
              "numerator": "149",
              "denominator": "2",
              "decimal": "7.450000000000000000000000000000000000000e1"
            }
          },
          {
            "name": "Logistics digital twin",
            "rank": 2,
            "score": {
              "numerator": "589",
              "denominator": "9",
              "decimal": "6.544444444444444444444444444444444444444e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "5",
              "denominator": "1",
              "decimal": "5.000000000000000000000000000000000000000e0"
            }
          }
        ]
      },
      {
        "criterion": "cost",
        "shift": 20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "9",
            "denominator": "20",
            "decimal": "4.500000000000000000000000000000000000000e-1"
          },
          "impact": {
            "numerator": "77",
            "denominator": "300",
            "decimal": "2.566666666666666666666666666666666666667e-1"
          },
          "readiness": {
            "numerator": "11",
            "denominator": "60",
            "decimal": "1.833333333333333333333333333333333333333e-1"
          },
          "risk": {
            "numerator": "11",
            "denominator": "100",
            "decimal": "1.100000000000000000000000000000000000000e-1"
          }
        },
        "ranking": [
          {
            "name": "Metering retrofit",
            "rank": 1,
            "score": {
              "numerator": "343",
              "denominator": "6",
              "decimal": "5.716666666666666666666666666666666666667e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 2,
            "score": {
              "numerator": "45",
              "denominator": "1",
              "decimal": "4.500000000000000000000000000000000000000e1"
            }
          },
          {
            "name": "Logistics digital twin",
            "rank": 3,
            "score": {
              "numerator": "341",
              "denominator": "9",
              "decimal": "3.788888888888888888888888888888888888889e1"
            }
          }
        ]
      },
      {
        "criterion": "impact",
        "shift": -20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "17",
            "denominator": "52",
            "decimal": "3.269230769230769230769230769230769230769e-1"
          },
          "impact": {
            "numerator": "3",
            "denominator": "20",
            "decimal": "1.500000000000000000000000000000000000000e-1"
          },
          "readiness": {
            "numerator": "17",
            "denominator": "52",
            "decimal": "3.269230769230769230769230769230769230769e-1"
          },
          "risk": {
            "numerator": "51",
            "denominator": "260",
            "decimal": "1.961538461538461538461538461538461538462e-1"
          }
        },
        "ranking": [
          {
            "name": "Metering retrofit",
            "rank": 1,
            "score": {
              "numerator": "5515",
              "denominator": "78",
              "decimal": "7.070512820512820512820512820512820512821e1"
            }
          },
          {
            "name": "Logistics digital twin",
            "rank": 2,
            "score": {
              "numerator": "1435",
              "denominator": "39",
              "decimal": "3.679487179487179487179487179487179487179e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "425",
              "denominator": "13",
              "decimal": "3.269230769230769230769230769230769230769e1"
            }
          }
        ]
      },
      {
        "criterion": "impact",
        "shift": 20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "9",
            "denominator": "52",
            "decimal": "1.730769230769230769230769230769230769231e-1"
          },
          "impact": {
            "numerator": "11",
            "denominator": "20",
            "decimal": "5.500000000000000000000000000000000000000e-1"
          },
          "readiness": {
            "numerator": "9",
            "denominator": "52",
            "decimal": "1.730769230769230769230769230769230769231e-1"
          },
          "risk": {
            "numerator": "27",
            "denominator": "260",
            "decimal": "1.038461538461538461538461538461538461538e-1"
          }
        },
        "ranking": [
          {
            "name": "Logistics digital twin",
            "rank": 1,
            "score": {
              "numerator": "865",
              "denominator": "13",
              "decimal": "6.653846153846153846153846153846153846154e1"
            }
          },
          {
            "name": "Metering retrofit",
            "rank": 2,
            "score": {
              "numerator": "1585",
              "denominator": "26",
              "decimal": "6.096153846153846153846153846153846153846e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "225",
              "denominator": "13",
              "decimal": "1.730769230769230769230769230769230769231e1"
            }
          }
        ]
      },
      {
        "criterion": "readiness",
        "shift": -20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "19",
            "denominator": "60",
            "decimal": "3.166666666666666666666666666666666666667e-1"
          },
          "impact": {
            "numerator": "133",
            "denominator": "300",
            "decimal": "4.433333333333333333333333333333333333333e-1"
          },
          "readiness": {
            "numerator": "1",
            "denominator": "20",
            "decimal": "5.000000000000000000000000000000000000000e-2"
          },
          "risk": {
            "numerator": "19",
            "denominator": "100",
            "decimal": "1.900000000000000000000000000000000000000e-1"
          }
        },
        "ranking": [
          {
            "name": "Metering retrofit",
            "rank": 1,
            "score": {
              "numerator": "1021",
              "denominator": "18",
              "decimal": "5.672222222222222222222222222222222222222e1"
            }
          },
          {
            "name": "Logistics digital twin",
            "rank": 2,
            "score": {
              "numerator": "143",
              "denominator": "3",
              "decimal": "4.766666666666666666666666666666666666667e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "95",
              "denominator": "3",
              "decimal": "3.166666666666666666666666666666666666667e1"
            }
          }
        ]
      },
      {
        "criterion": "readiness",
        "shift": 20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "11",
            "denominator": "60",
            "decimal": "1.833333333333333333333333333333333333333e-1"
          },
          "impact": {
            "numerator": "77",
            "denominator": "300",
            "decimal": "2.566666666666666666666666666666666666667e-1"
          },
          "readiness": {
            "numerator": "9",
            "denominator": "20",
            "decimal": "4.500000000000000000000000000000000000000e-1"
          },
          "risk": {
            "numerator": "11",
            "denominator": "100",
            "decimal": "1.100000000000000000000000000000000000000e-1"
          }
        },
        "ranking": [
          {
            "name": "Metering retrofit",
            "rank": 1,
            "score": {
              "numerator": "1349",
              "denominator": "18",
              "decimal": "7.494444444444444444444444444444444444444e1"
            }
          },
          {
            "name": "Logistics digital twin",
            "rank": 2,
            "score": {
              "numerator": "167",
              "denominator": "3",
              "decimal": "5.566666666666666666666666666666666666667e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "55",
              "denominator": "3",
              "decimal": "1.833333333333333333333333333333333333333e1"
            }
          }
        ]
      },
      {
        "criterion": "risk",
        "shift": -20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "5",
            "denominator": "17",
            "decimal": "2.941176470588235294117647058823529411765e-1"
          },
          "impact": {
            "numerator": "7",
            "denominator": "17",
            "decimal": "4.117647058823529411764705882352941176471e-1"
          },
          "readiness": {
            "numerator": "5",
            "denominator": "17",
            "decimal": "2.941176470588235294117647058823529411765e-1"
          },
          "risk": {
            "numerator": "0",
            "denominator": "1",
            "decimal": "0"
          }
        },
        "ranking": [
          {
            "name": "Logistics digital twin",
            "rank": 1,
            "score": {
              "numerator": "3100",
              "denominator": "51",
              "decimal": "6.078431372549019607843137254901960784314e1"
            }
          },
          {
            "name": "Metering retrofit",
            "rank": 2,
            "score": {
              "numerator": "3050",
              "denominator": "51",
              "decimal": "5.980392156862745098039215686274509803922e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "500",
              "denominator": "17",
              "decimal": "2.941176470588235294117647058823529411765e1"
            }
          }
        ]
      },
      {
        "criterion": "risk",
        "shift": 20,
        "equalOtherWeightFallback": false,
        "weights": {
          "cost": {
            "numerator": "13",
            "denominator": "68",
            "decimal": "1.911764705882352941176470588235294117647e-1"
          },
          "impact": {
            "numerator": "91",
            "denominator": "340",
            "decimal": "2.676470588235294117647058823529411764706e-1"
          },
          "readiness": {
            "numerator": "13",
            "denominator": "68",
            "decimal": "1.911764705882352941176470588235294117647e-1"
          },
          "risk": {
            "numerator": "7",
            "denominator": "20",
            "decimal": "3.500000000000000000000000000000000000000e-1"
          }
        },
        "ranking": [
          {
            "name": "Metering retrofit",
            "rank": 1,
            "score": {
              "numerator": "7535",
              "denominator": "102",
              "decimal": "7.387254901960784313725490196078431372549e1"
            }
          },
          {
            "name": "Logistics digital twin",
            "rank": 2,
            "score": {
              "numerator": "2015",
              "denominator": "51",
              "decimal": "3.950980392156862745098039215686274509804e1"
            }
          },
          {
            "name": "Inspection service",
            "rank": 3,
            "score": {
              "numerator": "325",
              "denominator": "17",
              "decimal": "1.911764705882352941176470588235294117647e1"
            }
          }
        ]
      }
    ]
  },
  "tiedLeaders": [
    "Metering retrofit"
  ],
  "metrics": [
    {
      "key": "leader",
      "label": "Preferred by supplied weights",
      "value": "Metering retrofit",
      "unit": "",
      "detail": ""
    },
    {
      "key": "score",
      "label": "Leading preference score",
      "value": 65.83333333333333,
      "unit": "/100",
      "detail": ""
    },
    {
      "key": "pareto",
      "label": "Non-dominated alternatives",
      "value": 3,
      "unit": "",
      "detail": ""
    },
    {
      "key": "stability",
      "label": "Leader under tested shifts",
      "value": 75,
      "unit": "%",
      "detail": "Eight individual weight shifts for the first display name, not a probability or strict dominance."
    }
  ],
  "tables": [
    {
      "title": "Transparent ranking and raw criteria",
      "columns": [
        {
          "key": "rank",
          "label": "Rank",
          "unit": ""
        },
        {
          "key": "name",
          "label": "Alternative",
          "unit": ""
        },
        {
          "key": "score",
          "label": "Preference score",
          "unit": "/100"
        },
        {
          "key": "cost",
          "label": "Capital cost",
          "unit": "USDm"
        },
        {
          "key": "impact",
          "label": "Impact",
          "unit": "/100"
        },
        {
          "key": "readiness",
          "label": "Readiness",
          "unit": "/100"
        },
        {
          "key": "risk",
          "label": "Execution risk",
          "unit": "/100"
        },
        {
          "key": "pareto",
          "label": "Pareto status",
          "unit": ""
        }
      ],
      "rows": [
        {
          "name": "Metering retrofit",
          "cost": 42,
          "impact": 76,
          "readiness": 90,
          "risk": 15,
          "score": 65.83333333333333,
          "costContribution": 8.333333333333334,
          "impactContribution": 17.5,
          "readinessContribution": 25,
          "riskContribution": 15,
          "rank": 1,
          "pareto": "Non-dominated"
        },
        {
          "name": "Logistics digital twin",
          "cost": 48,
          "impact": 87,
          "readiness": 85,
          "risk": 20,
          "score": 51.666666666666664,
          "costContribution": 0,
          "impactContribution": 35,
          "readinessContribution": 16.666666666666668,
          "riskContribution": 0,
          "rank": 2,
          "pareto": "Non-dominated"
        },
        {
          "name": "Inspection service",
          "cost": 30,
          "impact": 65,
          "readiness": 75,
          "risk": 20,
          "score": 25,
          "costContribution": 25,
          "impactContribution": 0,
          "readinessContribution": 0,
          "riskContribution": 0,
          "rank": 3,
          "pareto": "Non-dominated"
        }
      ]
    },
    {
      "title": "Contribution to the weighted score",
      "columns": [
        {
          "key": "name",
          "label": "Alternative",
          "unit": ""
        },
        {
          "key": "costContribution",
          "label": "Capital cost",
          "unit": "points"
        },
        {
          "key": "impactContribution",
          "label": "Strategic impact",
          "unit": "points"
        },
        {
          "key": "readinessContribution",
          "label": "Readiness",
          "unit": "points"
        },
        {
          "key": "riskContribution",
          "label": "Execution risk",
          "unit": "points"
        },
        {
          "key": "score",
          "label": "Total score",
          "unit": "points"
        }
      ],
      "rows": [
        {
          "name": "Metering retrofit",
          "score": 65.83333333333333,
          "costContribution": 8.333333333333334,
          "impactContribution": 17.5,
          "readinessContribution": 25,
          "riskContribution": 15,
          "rank": 1
        },
        {
          "name": "Logistics digital twin",
          "score": 51.666666666666664,
          "costContribution": 0,
          "impactContribution": 35,
          "readinessContribution": 16.666666666666668,
          "riskContribution": 0,
          "rank": 2
        },
        {
          "name": "Inspection service",
          "score": 25,
          "costContribution": 25,
          "impactContribution": 0,
          "readinessContribution": 0,
          "riskContribution": 0,
          "rank": 3
        }
      ]
    },
    {
      "title": "Preference-weight sensitivity",
      "columns": [
        {
          "key": "criterion",
          "label": "Changed criterion",
          "unit": ""
        },
        {
          "key": "shift",
          "label": "Weight shift",
          "unit": "percentage points"
        },
        {
          "key": "testedWeight",
          "label": "Tested weight",
          "unit": "%"
        },
        {
          "key": "tiedLeaders",
          "label": "Leading alternatives",
          "unit": ""
        },
        {
          "key": "leaderScore",
          "label": "Score",
          "unit": "/100"
        },
        {
          "key": "originalLeaderRank",
          "label": "Base leader rank",
          "unit": ""
        },
        {
          "key": "ranking",
          "label": "Complete ordering",
          "unit": ""
        }
      ],
      "rows": [
        {
          "criterion": "Capital cost",
          "shift": -20,
          "testedWeight": 5,
          "leader": "Metering retrofit",
          "leaderScore": 74.5,
          "originalLeaderRank": 1,
          "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
          "tiedLeaders": [
            "Metering retrofit"
          ]
        },
        {
          "criterion": "Capital cost",
          "shift": 20,
          "testedWeight": 45,
          "leader": "Metering retrofit",
          "leaderScore": 57.166666666666664,
          "originalLeaderRank": 1,
          "ranking": "Metering retrofit → Inspection service → Logistics digital twin",
          "tiedLeaders": [
            "Metering retrofit"
          ]
        },
        {
          "criterion": "Strategic impact",
          "shift": -20,
          "testedWeight": 15,
          "leader": "Metering retrofit",
          "leaderScore": 70.7051282051282,
          "originalLeaderRank": 1,
          "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
          "tiedLeaders": [
            "Metering retrofit"
          ]
        },
        {
          "criterion": "Strategic impact",
          "shift": 20,
          "testedWeight": 55,
          "leader": "Logistics digital twin",
          "leaderScore": 66.53846153846153,
          "originalLeaderRank": 2,
          "ranking": "Logistics digital twin → Metering retrofit → Inspection service",
          "tiedLeaders": [
            "Logistics digital twin"
          ]
        },
        {
          "criterion": "Readiness",
          "shift": -20,
          "testedWeight": 5,
          "leader": "Metering retrofit",
          "leaderScore": 56.72222222222222,
          "originalLeaderRank": 1,
          "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
          "tiedLeaders": [
            "Metering retrofit"
          ]
        },
        {
          "criterion": "Readiness",
          "shift": 20,
          "testedWeight": 45,
          "leader": "Metering retrofit",
          "leaderScore": 74.94444444444444,
          "originalLeaderRank": 1,
          "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
          "tiedLeaders": [
            "Metering retrofit"
          ]
        },
        {
          "criterion": "Execution risk",
          "shift": -20,
          "testedWeight": 0,
          "leader": "Logistics digital twin",
          "leaderScore": 60.78431372549019,
          "originalLeaderRank": 2,
          "ranking": "Logistics digital twin → Metering retrofit → Inspection service",
          "tiedLeaders": [
            "Logistics digital twin"
          ]
        },
        {
          "criterion": "Execution risk",
          "shift": 20,
          "testedWeight": 35,
          "leader": "Metering retrofit",
          "leaderScore": 73.87254901960785,
          "originalLeaderRank": 1,
          "ranking": "Metering retrofit → Logistics digital twin → Inspection service",
          "tiedLeaders": [
            "Metering retrofit"
          ]
        }
      ]
    },
    {
      "title": "Criterion range and normalised weight",
      "columns": [
        {
          "key": "criterion",
          "label": "Criterion",
          "unit": ""
        },
        {
          "key": "direction",
          "label": "Preference",
          "unit": ""
        },
        {
          "key": "weight",
          "label": "Weight",
          "unit": "%"
        },
        {
          "key": "min",
          "label": "Minimum",
          "unit": ""
        },
        {
          "key": "max",
          "label": "Maximum",
          "unit": ""
        }
      ],
      "rows": [
        {
          "criterion": "Capital cost",
          "direction": "Lower is preferred",
          "weight": 25,
          "min": 30,
          "max": 48
        },
        {
          "criterion": "Strategic impact",
          "direction": "Higher is preferred",
          "weight": 35,
          "min": 65,
          "max": 87
        },
        {
          "criterion": "Readiness",
          "direction": "Higher is preferred",
          "weight": 25,
          "min": 75,
          "max": 90
        },
        {
          "criterion": "Execution risk",
          "direction": "Lower is preferred",
          "weight": 15,
          "min": 15,
          "max": 20
        }
      ]
    }
  ],
  "warnings": [
    "The preferred alternative changes in a tested weight case. Treat the base ranking as a preference-dependent result."
  ],
  "summary": "Metering retrofit leads with 65.83 preference points. The first display name remains first in 6 of eight tested weight shifts. 3 alternatives are non-dominated on all four raw criteria. Scores reflect stated preferences and this alternative set.",
  "methods": [
    "Weights are normalised to sum to one. Cost and risk are minimised, impact and readiness maximised.",
    "Each raw criterion maps linearly to 0 to 1 over the current alternative set; equal values receive 0.5.",
    "Weighted score = 100 × sum of normalised weight × normalised criterion value.",
    "A Pareto alternative is not weakly dominated on all four raw criteria with strict dominance on at least one.",
    "Sensitivity shifts each normalised weight by ±20 percentage points, capped at 0 or 100%, and scales other weights proportionally.",
    "Canonical decimal normalisation, contributions, ranking and sensitivity redistribution use exact rational arithmetic. Released weight follows positive supplied weights; equal-thirds redistribution is used only when every other weight is exactly zero.",
    "Tied exact scores use literal name order independent of browser language for consistent display; the model displays every equal leading alternative and implies no strict preference."
  ],
  "limitations": [
    "Compensatory preferences. Scores are not probabilities, returns or forecasts.",
    "Normalisation changes with the alternative set. Scores cannot be compared across changed sets.",
    "No portfolio allocation optimiser, synergy effects or binding budget constraints.",
    "Exact arithmetic concerns the supplied decimal values and preference rule. Numeric chart displays are approximations, and neither measured criteria nor accepted preferences become certain through the computation.",
    "Numerical input precision: use zero or absolute values of at least 0.000000001. Smaller nonzero inputs are rejected explicitly."
  ]
}
