decision-matrix-mcda

Ranks options against weighted criteria using MCDA with AHP weights and sensitivity analysis.

4|1|Updated Jul 30, 2026
One-click install
npx skills add https://github.com/radarist/structured-analytic-skills --skill decision-matrix-mcda-radarist
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: decision-matrix-mcda
Source: https://github.com/radarist/structured-analytic-skills/tree/main/skills/decision-matrix-mcda
Command: npx skills add https://github.com/radarist/structured-analytic-skills --skill decision-matrix-mcda-radarist

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Multi-option decisions with competing criteria often get decided by the loudest stakeholder or by numbers arranged after the fact to justify a favourite. This Skill makes trade-offs explicit: it structures criteria, derives weights (including AHP pairwise comparisons with a consistency check), scores options on a common scale, and quantifies how robust the winner is to weight and score changes. ## Core Features & Use Cases - Weighted decision matrix: Scores 3+ options against 3-7 criteria with direction-aware normalisation (min-max or ratio), weighted totals, ranking, and the margin between the top two. - AHP weight derivation: Builds Saaty's reciprocal pairwise comparison matrix, computes the principal eigenvector as weights, and reports lambda_max, CI, RI, and CR with a consistency verdict (CR <= 0.10 gate). - Sensitivity analysis: Reports per-criterion break-even weights, the single score cell whose smallest change flips the leader, and a leave-one-out rank-reversal check. - Use Case: Choosing one of four R&D programmes for a budget: define criteria (strategic fit, NPV, time to revenue, risk), derive AHP weights, and get a ranking plus the finding that a EUR 2-3 m NPV error would flip the winner. ## Quick Start Ask the assistant to build a weighted decision matrix for your options and criteria, deriving the weights with AHP pairwise comparisons and reporting how robust the winner is.

Frequently Asked Questions about decision-matrix-mcda

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a weighted decision matrix for choosing between vendors?▼

List 3+ options including the status quo, define 3-7 non-overlapping criteria with directions and scales, assign weights summing to 1, score each option with sourced values, then compute weighted totals. The companion script mcda.py automates normalisation, ranking, and the margin between the top two.

How do I derive criteria weights with AHP pairwise comparisons?▼

Compare each criterion pair on Saaty's 1-9 scale to build a reciprocal matrix, then compute the principal eigenvector as the weight vector. The tool reports lambda_max, CI, RI, and CR; weights are usable only when CR <= 0.10, otherwise the most inconsistent judgement must be re-elicited.

What is the AHP consistency ratio and when is it acceptable?▼

The consistency ratio CR = CI/RI measures contradiction in pairwise judgements, where CI = (lambda_max - n)/(n - 1) and RI is Saaty's random index for the matrix order. CR <= 0.10 is acceptable per Saaty 1990; above that the judgements should be revised before using the weights.

How do I know if my decision matrix ranking is robust?▼

Run the sensitivity analysis: it reports the break-even weight per criterion at which the leader changes, the single score cell whose smallest change flips the winner, and a leave-one-out rank-reversal check. A ranking without this sensitivity block is unreliable.

When should I not use a weighted decision matrix?▼

Do not use it to rank rival explanations of a cause (use analysis of competing hypotheses), to find the smallest validating experiment, or when one option dominates every criterion or a hard constraint leaves only one standing. It also cannot fix correlated criteria or weights chosen after seeing scores.

Does the MCDA tool require any Python packages?▼

No. The companion script mcda.py uses only the Python standard library (argparse, json, math, sys) and runs on Python 3.9+. It is deterministic, with no randomness or clock dependence, and includes a self-test mode.