Decision Overview
Compare recovery-equipment options using incident fit, availability, cost, equipment quality, and risk.
A qualified recovery professional must first confirm that every candidate meets load ratings, vehicle compatibility, site conditions, and operating requirements. Compare only eligible equipment packages for the same incident. Fit, availability, quality, and risk use 1–5 ratings; cost uses one currency and the same job scope. This demo does not prescribe recovery techniques, authorize unsafe equipment, or dispatch a unit.
Catalog decision: AUTO-TOW-005. Sector: Auto Towing. Samples are fictional, not operational advice or production observations.
5-Minute Quick Path
- Review the three candidates in the interactive showcase.
- Start with the first working Business Data request, or send Prepared Criteria when values are already calculated.
- Inspect the ranking and rerun with changed inputs or AHP priorities.
Criteria and Scales
Use raw values in the published units. The engine normalizes them. AHP changes importance, not the direction or scale of an input.
| ID | Meaning | Unit | Validation | Direction | Balanced weight |
|---|---|---|---|---|---|
fit_score | Fit Score | Rating | rating_1_to_5 | maximize | 25% |
availability | Availability | Rating | rating_1_to_5 | maximize | 25% |
cost | Cost | Currency | non_negative_currency | minimize | 20% |
quality_score | Quality Score | Rating | rating_1_to_5 | maximize | 20% |
risk | Risk | Rating | rating_1_to_5 | minimize | 10% |
Data Preparation Guide
Business records → input schema → mapping profile → canonical criteria → ranking.
Use mapping profile auto-towing-choose-recovery-equipment-auto-tow-005 version 1.0.0. These records contain business assessments as well as measurements; this profile renames and reshapes them, but does not infer scores from free text. Govern rating and scoring rubrics before production use.
The showcase collects Prepared Criteria directly. Its sample values match both downloadable request modes below.
Mapping profile · Input schema
| Business source | Canonical criterion | Transformation |
|---|---|---|
option.assessment.fitScore | fit_score | Direct value; no unit conversion |
option.vehicle.recovery.availability | availability | Direct value; no unit conversion |
option.financial.cost | cost | Direct value; no unit conversion |
option.assessment.qualityScore | quality_score | Direct value; no unit conversion |
option.risk.risk | risk | Direct value; no unit conversion |
Business Data Mode
Complete illustrative request with three candidates and an explicit decisionVersion. Send it to the decision execute endpoint; do not add an options array to this envelope.
option-1, option-2, and option-3 in input order, with fallback option names. Map these back to the source records by that order. Prepared Criteria retains the explicit source IDs and names. Preserving source identity in Business Data requires a reviewed profile update; this example does not modify the deployed profile.{
"decisionId": "AUTO-TOW-005",
"decisionVersion": "1.0.0",
"businessData": {
"requestContext": {
"sourceSystem": "automotive-profile-factory",
"correlationId": "factory-auto-tow-005"
},
"towRequests": [
{
"optionId": "EQUIP-A",
"name": "Qualified recovery package A",
"assessment": {
"fitScore": 4.8,
"qualityScore": 4.7
},
"vehicle": {
"recovery": {
"availability": 4.1
}
},
"financial": {
"cost": 380
},
"risk": {
"risk": 1.5
}
},
{
"optionId": "EQUIP-B",
"name": "Qualified recovery package B",
"assessment": {
"fitScore": 4.3,
"qualityScore": 4.4
},
"vehicle": {
"recovery": {
"availability": 4.8
}
},
"financial": {
"cost": 260
},
"risk": {
"risk": 2.0
}
},
{
"optionId": "EQUIP-C",
"name": "Qualified recovery package C",
"assessment": {
"fitScore": 4.6,
"qualityScore": 4.9
},
"vehicle": {
"recovery": {
"availability": 3.7
}
},
"financial": {
"cost": 470
},
"risk": {
"risk": 1.3
}
}
]
}
}Prepared Criteria Mode
The same candidates after direct mapping. This request uses the balanced profile with no named scenario. Do not add businessData to this envelope.
{
"decisionId": "AUTO-TOW-005",
"decisionName": "Choose Recovery Equipment",
"profileId": "balanced",
"scenarioId": null,
"options": [
{
"optionId": "EQUIP-A",
"name": "Qualified recovery package A",
"values": {
"fit_score": 4.8,
"availability": 4.1,
"cost": 380,
"quality_score": 4.7,
"risk": 1.5
}
},
{
"optionId": "EQUIP-B",
"name": "Qualified recovery package B",
"values": {
"fit_score": 4.3,
"availability": 4.8,
"cost": 260,
"quality_score": 4.4,
"risk": 2.0
}
},
{
"optionId": "EQUIP-C",
"name": "Qualified recovery package C",
"values": {
"fit_score": 4.6,
"availability": 3.7,
"cost": 470,
"quality_score": 4.9,
"risk": 1.3
}
}
]
}Understanding the Result
Verified local computation, not a hosted API response. The repository TOPSIS engine ranked these exact samples in-process. TOPSIS scores are relative closeness coefficients, not probabilities or confidence percentages.
| Rank | Candidate | Score |
|---|---|---|
| 1 | Qualified recovery package A | 0.594040 |
| 2 | Qualified recovery package B | 0.488366 |
| 3 | Qualified recovery package C | 0.445299 |
Winner: EQUIP-A. Download computation and AHP verification.
Check candidate eligibility and input evidence before acting. Adding or removing candidates can change normalization and the ranking. The showcase displays the actual service response, which may differ when the deployed catalog or configuration differs.
AHP Weights and Sensitivity
Open the paired showcase, choose “Help me generate weights (AHP)”, complete every comparison, and generate consistent weights before running. Option scores describe performance; weights express importance. Read the explanation.
Change one judgment or one measured input at a time, regenerate weights if needed, and compare the winner and score gap. A single unchanged winner is not a formal stability guarantee.
Profiles and Scenarios
The baseline uses balanced and scenarioId: null. Retrieve the deployed decision definition before selecting another profile or named scenario; never assume that “standard” exists. AHP does not override eligibility or safety requirements.
Run the Request
Use either JSON download with your existing authenticated API client. Endpoint and authentication details are in the API Guide. This browser-origin example calls the portal proxy, whose service connection must be configured:
const request = await fetch('/examples/auto-tow-005/business-data-request.json').then(r => r.json());
const response = await fetch('/decisioq-decision-api-proxy.ashx?operation=execute', {
method: 'POST', headers: {'Content-Type': 'application/json'},
body: JSON.stringify(request)
});
const result = await response.json();
if (!response.ok) throw new Error(JSON.stringify(result));
console.log(result);For validation errors, check canonical IDs, required values, units, and current catalog ranges. A transport error is not a decision rejection.
