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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pymcdm_reidentify-1.0.1.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.1.tar.gz
Algorithm Hash digest
SHA256 2bbb7393483883f71f067d44090c84e080d6b5fb8f200a70ef7b2a9a503775b3
MD5 c0ece212495dc420f760109da0a14d09
BLAKE2b-256 ab4db3b84f2ef03f211d13c24e41edbd00b06b68d99970a40995e5969e2a1326

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pymcdm_reidentify-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 357b95d228ff8197a47c15a942cfa6b207c5709dbb865b8f3c926c7cd0e3694b
MD5 2e3ab7a0ff1c31dbb0346a50ffb05b87
BLAKE2b-256 867c18549558c39fbee8cf599a7596b3c35c88c5756b120e23d24614b752aab6

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