Examples
Examples
Try the starting example
- JSON Suppliers [ID,normalized criterion scores; null means missing]
- [["A",[0.8,0.9,0.7]],["B",[0.9,null,0.8]]]
- Criterion weights
- 0.4,0.4,0.2
- Composite scores and weight coverage
- [["A",0.82,1],["B",0.866666666667,0.6]]
Try another scenario
- JSON Suppliers [ID,normalized criterion scores; null means missing]
- [["A",[0.8,0.9,0.7]],["B",[0.9,null,0.8]]]
- Criterion weights
- 0.2,0.3,0.5
- Composite scores and weight coverage
- [["A",0.78,1],["B",0.828571428571,0.7]]
Calculation method
Calculation method
Composite scores and weight coverage
J([[r[0],sum(v*w for v,w in zip(r[1],b) if v is not None)/sum(w for v,w in zip(r[1],b) if v is not None),sum(w for v,w in zip(r[1],b) if v is not None)/sum(b)] for r in a])
Symbols and units
- a
- JSON Suppliers [ID,normalized criterion scores; null means missing]
- b
- Criterion weights
Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.
Calculation steps and notation
sum(list) adds all entries in the list.
Assumptions & limits
Assumptions & limits
- Scores already normalized so larger is better; weights nonnegative and each supplier has positive observed weight. Missing scores excluded and weights renormalized; expose coverage. Supported limits: All numeric inputs must be finite. Only the explicitly described mathematical scenario is supported.
Are these inputs private?
These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.