Skip to content

Latest commit

 

History

History
49 lines (38 loc) · 950 Bytes

File metadata and controls

49 lines (38 loc) · 950 Bytes

Quick start

Install

pip install decisionkit

Code API

from decisionkit import DecisionModel, Criterion

model = DecisionModel(
    criteria=[
        Criterion("quality", weight=0.6, direction="max"),
        Criterion("cost", weight=0.4, direction="min"),
    ],
    method="weighted_sum",
)

result = model.rank([
    {"id": "a", "quality": 8, "cost": 120},
    {"id": "b", "quality": 7, "cost": 80},
])

print(result.best.id)
print(result.explain())

Config API

from decisionkit import DecisionModel

model = DecisionModel.from_dict({
    "method": "weighted_sum",
    "criteria": [
        {"name": "quality", "weight": 0.6, "direction": "max"},
        {"name": "cost", "weight": 0.4, "direction": "min"},
    ],
})

result = model.rank([
    {"id": "a", "quality": 8, "cost": 120},
    {"id": "b", "quality": 7, "cost": 80},
])
print(result.to_audit_dict(include_hash=True)["audit_hash"])