Skip to main content

Python library for reidnetification of multi-criteria models

Project description

PyMCDM - Re-identify

Python 3 library for re-identification of multi-criteria models.

Documentation is avaliable on readthedocs.


Installation

You can download and install pymcdm-reidentify library using pip:

pip install pymcdm-reidentify

You can run all tests with following command from the root of the project:

python -m unittest -v

Available methods

The library contains:

  • Re-identification methods:
Acronym Method Name Reference
SESP Stochastic Expected Solution Point [1]
SITCOM Stochastic IdenTifiCation Of Models [2]
SITW Stochastic IdenTification of Weights [3]
SITWLocal Stochastic IdenTification of Weights - Local weights approach [4]
STFN Stochastic Triangular Fuzzy Numbers [5]
STRFN Stochastic Trapezoidal Fuzzy Number --
  • Normalization methods:
Acronym Method Name Reference
FN Fuzzy Normalization [6]
  • COMET Tools
Acronym Method Name Reference
MLExpert Class which allows to evaluate CO in COMET using any Machine Learning method. [7]

Usage example

Below is a simple example of the re-identification of a decision-making model. For more examples with explanation see examples.

import numpy as np
from mealpy.swarm_based.PSO import OriginalPSO
from pymcdm.methods import TOPSIS
from pymcdm_reidentify.methods import SITW

# Define exemplary data
# Decision matrix
matrix = np.random.random((1000, 2)) 
# Types of critieria
types = np.array([-1, 1]) # 
# Unknown expert criteria weights 
# For purpose of re-identifiaction method
weights = np.random.random((2))
weights = weights / np.sum(weights) 

# Define exemplary unknown expert model
preference = TOPSIS()(matrix, weights, types)
rank = TOPSIS().rank(preference)

# Create re-identifiaction object
stoch = OriginalPSO(epoch=1000, pop_size=100)
model = SITW(stoch.solve, TOPSIS(), types)

# Fit model
model.fit(matrix, rank, log_to=None)

References

[1] Kizielewicz, B., Więckowski, J., & Sałabun, W. (2024, June). SESP-SPOTIS: Advancing Stochastic Approach for Re-identifying MCDA Models. In International Conference on Computational Science (pp. 281-295). Cham: Springer Nature Switzerland.

[2] Kizielewicz, B. (2022). Towards the identification of continuous decisional model: the accuracy testing in the SITCOM approach. Procedia Computer Science, 207, 4390-4400.

[3] Kizielewicz, B., Paradowski, B., Więckowski, J., & Sałabun, W. (2022). Identification of weights in multi-cteria decision problems based on stochastic optimization.

[4] Kizielewicz, B., Więckowski, J., Paradowski, B., Shekhovtsov, A., Wątróbski, J., & Sałabun, W. (2024, April). Stochastic Approaches for Criteria Weight Identification in Multi-criteria Decision Analysis. In Asian Conference on Intelligent Information and Database Systems (pp. 40-51). Singapore: Springer Nature Singapore.

[5] Kizielewicz, B., & Dobryakova, L. (2023). Stochastic Triangular Fuzzy Number (S-TFN) Normalization: A New Approach for Nonmonotonic Normalization. Procedia Computer Science, 225, 4901-4911.

[6] Kizielewicz, B., Więckowski, J., Paradowski, B., & Sałabun, W. (2022, July). Dealing with nonmonotonic criteria in decision-making problems using fuzzy normalization. In International conference on intelligent and fuzzy systems (pp. 27-35). Cham: Springer International Publishing.

[7] Kizielewicz, B., Więckowski, J., & Jankowski, J. (2023, September). Towards Re-identification of Expert Models: MLP-COMET in the Evaluation of Bitcoin Networks. In Special Sessions in the Information Technology for Business and Society Track of the Conference on Computer Science and Intelligence Systems (pp. 3-22). Cham: Springer Nature Switzerland.

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_reidentify-1.0.2.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

pymcdm_reidentify-1.0.2-py3-none-any.whl (28.6 kB view details)

Uploaded Python 3

File details

Details for the file pymcdm_reidentify-1.0.2.tar.gz.

File metadata

  • Download URL: pymcdm_reidentify-1.0.2.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.0

File hashes

Hashes for pymcdm_reidentify-1.0.2.tar.gz
Algorithm Hash digest
SHA256 ab6d97d72093184f36cff1bc1dfdae3b3c344382bf10050902b2edcbfbe3a7de
MD5 d0081fb2f7a98af6cc72a1c5f6867079
BLAKE2b-256 6e742064598ff3dab4be68a25e314203588d7f28317f94c9e9a72914213d20a3

See more details on using hashes here.

File details

Details for the file pymcdm_reidentify-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for pymcdm_reidentify-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3b55e633a06d7da7405605e13830cedbcc00ebb51ced9c1d6111f374ff4c82a6
MD5 4c740d49ad906ddbae49ca28a87b3f7e
BLAKE2b-256 d867f02d36f477b773f1c8152d6dbf692cb59ea44c052a8248e7c56d1eab1491

See more details on using hashes here.

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