Agent skill
electre-comparator
ELECTRE family methods skill for outranking-based decision support with concordance and discordance analysis
Install this agent skill to your Project
npx add-skill https://github.com/a5c-ai/babysitter/tree/main/library/specializations/domains/business/decision-intelligence/skills/electre-comparator
Metadata
Additional technical details for this skill
- domain
- business
- category
- quantitative-analysis
- priority
- lower
- specialization
- decision-intelligence
- tools libraries
-
[ "pyDecision", "pymcdm", "electre-py" ]
SKILL.md
ELECTRE Comparator
Overview
The ELECTRE Comparator skill implements the ELECTRE (ELimination Et Choix Traduisant la REalite) family of methods for multi-criteria decision analysis. It uses outranking relations based on concordance and discordance indices to handle complex decision problems with incomparability and threshold-based preferences.
Capabilities
- ELECTRE I, II, III, IV, TRI implementation
- Concordance matrix calculation
- Discordance matrix calculation
- Credibility degree computation
- Outranking relation determination
- Kernel and ranking extraction
- Threshold sensitivity analysis
- Classification into ordered categories (ELECTRE TRI)
Used By Processes
- Multi-Criteria Decision Analysis (MCDA)
- Portfolio Selection
- Project Prioritization
Usage
ELECTRE Method Selection
| Method | Purpose | Output |
|---|---|---|
| ELECTRE I | Selection | Kernel (best alternatives) |
| ELECTRE II | Ranking | Strong/weak rankings |
| ELECTRE III | Ranking | Credibility-based ranking |
| ELECTRE IV | Ranking | No weights required |
| ELECTRE TRI | Sorting | Category assignment |
Configuration Example
# Define ELECTRE III configuration
config = {
"alternatives": ["Project A", "Project B", "Project C", "Project D"],
"criteria": [
{
"name": "ROI",
"weight": 0.35,
"type": "benefit",
"thresholds": {"q": 2, "p": 5, "v": 15} # indifference, preference, veto
},
{
"name": "Risk",
"weight": 0.25,
"type": "cost",
"thresholds": {"q": 1, "p": 3, "v": 8}
},
{
"name": "Strategic Fit",
"weight": 0.40,
"type": "benefit",
"thresholds": {"q": 5, "p": 10, "v": 25}
}
],
"performance_matrix": [
[25, 4, 80], # Project A
[30, 6, 70], # Project B
[20, 3, 85], # Project C
[28, 5, 75] # Project D
]
}
Threshold Types
- Indifference threshold (q): Difference below which alternatives are indifferent
- Preference threshold (p): Difference above which strict preference exists
- Veto threshold (v): Difference that prohibits outranking regardless of other criteria
Concordance and Discordance
Concordance Index: Measures support for "a outranks b"
- C(a,b) = Sum of weights where a is at least as good as b
Discordance Index: Measures opposition to "a outranks b"
- D(a,b) = Maximum scaled difference where b is better than a
ELECTRE TRI Classification
Assigns alternatives to predefined categories:
- Define boundary profiles between categories
- Compare alternatives to boundaries
- Apply pessimistic or optimistic assignment rules
Input Schema
{
"method": "ELECTRE_I|ELECTRE_II|ELECTRE_III|ELECTRE_IV|ELECTRE_TRI",
"alternatives": ["string"],
"criteria": [
{
"name": "string",
"weight": "number",
"type": "benefit|cost",
"thresholds": {
"q": "number",
"p": "number",
"v": "number"
}
}
],
"performance_matrix": "2D array of numbers",
"options": {
"concordance_threshold": "number (for ELECTRE I)",
"boundary_profiles": "object (for ELECTRE TRI)",
"assignment_rule": "pessimistic|optimistic"
}
}
Output Schema
{
"method_used": "string",
"concordance_matrix": "2D array",
"discordance_matrix": "2D array",
"credibility_matrix": "2D array (ELECTRE III)",
"outranking_relations": [
{"from": "string", "to": "string", "credibility": "number"}
],
"kernel": ["string (ELECTRE I)"],
"ranking": {
"descending": ["string"],
"ascending": ["string"],
"final": ["string"]
},
"classifications": "object (ELECTRE TRI)",
"incomparabilities": ["object"]
}
Best Practices
- Select ELECTRE variant based on problem type (selection, ranking, sorting)
- Set thresholds based on criterion measurement precision
- Validate veto thresholds with stakeholders (they block outranking)
- Analyze incomparabilities - they may reveal important trade-offs
- Compare results across multiple threshold scenarios
- Use ELECTRE TRI for portfolio categorization problems
Integration Points
- Receives weights from AHP Calculator
- Connects with PROMETHEE Evaluator for method triangulation
- Feeds into Decision Visualization for outranking graphs
- Supports Sensitivity Analyzer for threshold robustness
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
gsd-tools
Central utility skill for GSD operations. Provides config parsing, slug generation, timestamps, path operations, and orchestrates calls to other specialized skills. Acts as the unified entry point that the original gsd-tools.cjs provided via its lib/ modules (commands, config, core, init).
model-profile-resolution
Resolve model profile (quality/balanced/budget) at orchestration start and map agents to specific models. Enables cost/quality tradeoffs by selecting appropriate AI models for each agent role.
verification-suite
Plan structure validation, phase completeness checks, reference integrity verification, and artifact existence confirmation. Provides the structured verification layer ensuring GSD artifacts are well-formed and complete.
state-management
STATE.md reading, writing, and field-level updates. Provides cross-session state persistence via .planning/STATE.md with structured fields for current task, completed phases, blockers, decisions, and quick tasks.
git-integration
Git commit patterns, formats, and conventions for GSD methodology. Provides atomic commits per task, structured commit messages, planning file commits, branch management, and milestone tag operations.
frontmatter-parsing
YAML frontmatter parsing and manipulation for .planning/ documents. Provides read, write, update, query, and validation operations on frontmatter blocks in GSD markdown artifacts.
Didn't find tool you were looking for?