Skip to main content

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


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 details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pymcdm-1.0.3.post2-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file pymcdm-1.0.3.post2.tar.gz.

File metadata

  • Download URL: pymcdm-1.0.3.post2.tar.gz
  • Upload date:
  • Size: 119.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0.post20201221 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.2

File hashes

Hashes for pymcdm-1.0.3.post2.tar.gz
Algorithm Hash digest
SHA256 4d079d42263a29d2f5659665dde7fd0ee9deaab26383544dea0bee497e1bca5c
MD5 40c49debf535caa3bb6a44c1304bcf51
BLAKE2b-256 9aa40f832d6b263a435a8ebfd34a6fd2ee6ffca8de7a00271387b4004093ee97

See more details on using hashes here.

File details

Details for the file pymcdm-1.0.3.post2-py3-none-any.whl.

File metadata

  • Download URL: pymcdm-1.0.3.post2-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0.post20201221 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.2

File hashes

Hashes for pymcdm-1.0.3.post2-py3-none-any.whl
Algorithm Hash digest
SHA256 15a0e790fff3a9bc33dec4ea855df16cefd8ce3c6703df52fb3a1fb9e5fd9d53
MD5 e24fbed7d4f44785b62a1c34bb04f23d
BLAKE2b-256 ae10c6f305892901eb85edc906132436388489539520ac16002d77a96d84f02b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page