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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pymcdm_reidentify-1.0.0.tar.gz
  • Upload date:
  • Size: 19.0 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.0.tar.gz
Algorithm Hash digest
SHA256 ed393ca630a38bc6055d169363dd945e46920584d1ad089661c62c46ab05ec18
MD5 98b7ddd627e52868d7ad53b3ddbe6193
BLAKE2b-256 4a108c97599808c47a8970ef74efc7018c90d574f7fb3596e50e2d1795c4fd7b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pymcdm_reidentify-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 21f8698a5425ad3b348c616f810535e0411d13fc37db0733e00703783a6b34d8
MD5 6652286b1c85bae53d47742055f72b66
BLAKE2b-256 e36472a443450f8ee936c127053c1c4c1f151dcd4ef97d83732bdb1e81edc272

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