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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab6d97d72093184f36cff1bc1dfdae3b3c344382bf10050902b2edcbfbe3a7de |
|
MD5 | d0081fb2f7a98af6cc72a1c5f6867079 |
|
BLAKE2b-256 | 6e742064598ff3dab4be68a25e314203588d7f28317f94c9e9a72914213d20a3 |
File details
Details for the file pymcdm_reidentify-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: pymcdm_reidentify-1.0.2-py3-none-any.whl
- Upload date:
- Size: 28.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b55e633a06d7da7405605e13830cedbcc00ebb51ced9c1d6111f374ff4c82a6 |
|
MD5 | 4c740d49ad906ddbae49ca28a87b3f7e |
|
BLAKE2b-256 | d867f02d36f477b773f1c8152d6dbf692cb59ea44c052a8248e7c56d1eab1491 |