Python library for Multi-Criteria Decision-Making
Project description
PyMCDM
Python 3 library for solving multi-criteria decision-making (MCDM) problems.
Installation
You can download and install pymcdm
library using pip:
pip install pymcdm
Available methods
The library contains:
-
MCDA methods:
- TOPSIS
- VIKOR
- COPRAS
- PROMETHEE I and II
- COMET
- SPOTIS
-
Weighting methods:
- Equal weights
- Entropy method
- Std method
-
Normalization methods:
- Linear
- Max
- Sum
- Vector
- Logarithmic
-
Correlation coefficients:
- Spearman
- Pearson
- Weighted Spearman
- Rank Similarity Coefficient
- Kendall Tau
- Goodman and Kruskal Gamma
-
Helpers
- rankdata
- rrankdata
Usage example
Here's a small example of how use this library to solve MCDM problem. For more examples with explanation see examples.
import numpy as np
from pymcdm.methods import TOPSIS
from pymcdm.helpers import rrankdata
# Define decision matrix (2 criteria, 4 alternative)
alts = np.array([
[4, 4],
[1, 5],
[3, 2],
[4, 2]
], dtype='float')
# Define weights and types
weights = np.array([0.5, 0.5])
types = np.array([1, -1])
# Create object of the method
topsis = TOPSIS()
# Determine preferences and ranking for alternatives
pref = topsis(alts, weights, types)
ranking = rrankdata(pref)
for r, p in zip(ranking, pref):
print(r, p)
And the output of this example (numbers are rounded):
3 0.6126
4 0.0
2 0.7829
1 1.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pymcdm-1.0.3.post2.tar.gz
(119.7 kB
view hashes)
Built Distribution
Close
Hashes for pymcdm-1.0.3.post2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15a0e790fff3a9bc33dec4ea855df16cefd8ce3c6703df52fb3a1fb9e5fd9d53 |
|
MD5 | e24fbed7d4f44785b62a1c34bb04f23d |
|
BLAKE2b-256 | ae10c6f305892901eb85edc906132436388489539520ac16002d77a96d84f02b |