Skip to main content

Python Sensitivity Analysis Multi-Criteria Decision Analysis Package

Project description

github Version License: MIT

PySensMCDA

PySensMCDA is a comprehensive Python package tailored specifically for Multi-Criteria Decision Analysis (MCDA) sensitivity analysis. MCDA is a powerful tool used in decision-making processes to evaluate alternatives based on multiple conflicting criteria. PySensMCDA empowers users to delve deeper into the robustness and reliability of their decision models by exploring the sensitivity of results to variations in input parameters.

In essence, this package offers tools for:

  • Decision matrix sensitivity analysis
  • Weights sensitivity analysis
  • Ranking sensitivity analysis
  • Perturbation generation
  • Weights generation
  • Visualizations of sensitivity analysis

Installation

The package can be download using pip:

pip install pysensmcda

Testing

The modules performance can be verified with pytest library

pip install pytest
pytest tests

Modules and functionalities


  • Alternative:

Name Reference
Discrete modification -
Percentage modification [14]
Range modification -
Alternative removal [8]

  • Criteria:

Name Reference
Random distribution - weights generation -
     Chisquare distribution -
     Laplace distribution -
     Normal distribution -
     Random distribution -
     Triangular distribution -
     Uniform distribution -
Percentage modification [15]
Range modification -
Weights scenarios -
Criteria identification [6]
Criteria removal [13]

  • Probabilistic:

Name Reference
Monte carlo weights generation [10]
Perturbed matrix [12]
Perturbed weights [11]

  • Ranking:

Name Reference
Ranking alteration [7]
Demotion -
Promotion [9]
Fuzzy ranking -

  • Compromise:

Name Reference
Borda [3]
Improved Borda [4]
Dominance directed graph [2]
Half-quadratic compromise [5]
ICRA - Iterative Compromise Ranking Analysis [1]
Rank position method [3]

  • Graphs:

Name
Heatmap
Promotion-demotion ranking graph
Preference distribution
Rankings distribution
Values distribution
Weights barplot

Usage example

Related work

Don't forget to check out these other amazing software packages!

  • Make-Decision.it: Web application offering users a graphical interface for prototyping structural decision models
  • PyFDM: package with Fuzzy Decision Making (PyFDM) methods based on Triangular Fuzzy Numbers (TFN).
  • PyIFDM: package to perform Multi-Criteria Decision Analysis in the Intuitionistic Fuzzy environment.
  • PyMCDM: Python 3 library for solving multi-criteria decision-making (MCDM) problems.

References

[1] Paradowski, B., Kizielewicz, B., Shekhovtsov, A., & Sałabun, W. (2022, September). The Iterative Compromise Ranking Analysis (ICRA)-The New Approach to Make Reliable Decisions. In Special Sessions in the Advances in Information Systems and Technologies Track of the Conference on Computer Science and Intelligence Systems (pp. 151-170). Cham: Springer Nature Switzerland.

[2] Xiao, J., Xu, Z., & Wang, X. (2023). An improved MULTIMOORA with CRITIC weights based on new equivalent transformation functions of nested probabilistic linguistic term sets. Soft Computing, 1-18.

[3] Altuntas, S., Dereli, T., & Yilmaz, M. K. (2015). Evaluation of excavator technologies: application of data fusion based MULTIMOORA methods. Journal of Civil Engineering and Management, 21(8), 977-997.

[4] Wu, X., Liao, H., Xu, Z., Hafezalkotob, A., & Herrera, F. (2018). Probabilistic linguistic MULTIMOORA: A multicriteria decision making method based on the probabilistic linguistic expectation function and the improved Borda rule. IEEE transactions on Fuzzy Systems, 26(6), 3688-3702.

[5] Mohammadi, M., & Rezaei, J. (2020). Ensemble ranking: Aggregation of rankings produced by different multi-criteria decision-making methods. Omega, 96, 102254.

[6] Kizielewicz, B., Wątróbski, J., & Sałabun, W. (2020). Identification of relevant criteria set in the MCDA process—Wind farm location case study. Energies, 13(24), 6548.

[7] Maliene, V., Dixon-Gough, R., & Malys, N. (2018). Dispersion of relative importance values contributes to the ranking uncertainty: Sensitivity analysis of Multiple Criteria Decision-Making methods. Applied Soft Computing, 67, 286-298.

[8] Nabavi, S. R., Wang, Z., & Rangaiah, G. P. (2023). Sensitivity Analysis of Multi-Criteria Decision-Making Methods for Engineering Applications. Industrial & Engineering Chemistry Research, 62(17), 6707-6722.

[9] Wolters, W. T. M., & Mareschal, B. (1995). Novel types of sensitivity analysis for additive MCDM methods. European Journal of Operational Research, 81(2), 281-290.

[10] Baležentis, T., & Streimikiene, D. (2017). Multi-criteria ranking of energy generation scenarios with Monte Carlo simulation. Applied energy, 185, 862-871.

[11] Zhang, C., Wang, Q., Zeng, S., Baležentis, T., Štreimikienė, D., Ališauskaitė-Šeškienė, I., & Chen, X. (2019). Probabilistic multi-criteria assessment of renewable micro-generation technologies in households. Journal of Cleaner Production, 212, 582-592.

[12] Barker, K., & Haimes, Y. Y. (2009). Assessing uncertainty in extreme events: Applications to risk-based decision making in interdependent infrastructure sectors. Reliability Engineering & System Safety, 94(4), 819-829.

[13] Więckowski, J., Kizielewicz, B., Shekhovtsov, A., & Sałabun, W. (2023). How do the criteria affect sustainable supplier evaluation?-A case study using multi-criteria decision analysis methods in a fuzzy environment. Journal of Engineering Management and Systems Engineering, 2(1), 37-52.

[14] Kolbowicz, M., Nowak, M., & Więckowski, J. (2024). A multi-criteria system for performance assessment and support decision-making based on the example of Premier League top football strikers.

[15] Triantaphyllou, E., & Sánchez, A. (1997). A sensitivity analysis approach for some deterministic multi‐criteria decision‐making methods. Decision sciences, 28(1), 151-194.

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

pysensmcda-1.0.2.tar.gz (49.9 kB view hashes)

Uploaded Source

Supported by

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