Library for ULOWA operations, given fuzzy numbers
Project description
ULOWA MODULE
Please, read carefully before using this library.
This module has been made for academic purposes. If you want to use it, cite the author.
1. Installation
First, you can simpy install it by using the pip comand: pip install ulowa
2. Usage
2.1. ULOWA
It is necessary to define a fuzzy set, each one with 4 points, e.g:
fuzzyNumbers = [[0.0, 0.0, 1.0, 2.0], [1.0, 2.0, 4.0, 5.0], [4.0, 5.0, 5.0, 6.0], [5.0, 6.0, 6.0, 7.0], [6.0, 7.0, 8.0, 8.5], [8.0, 8.5, 9.0, 9.5], [9.0, 9.5, 10.0, 10.0]]
Note that the scale may vary, it isn't compulsory to be from 0 to 10
Then, you must define the weights and the labels for the scale, e.g:
weights = [0.6, 0.2, 0.2, 0.0, 0.0]
labels = ["VL", "L", "M", "AH", "H", "VH", "P"]
Note that the weights must sum up to 1, and the scale must be ordered from worst to best tag
Now, we should define the labels for our specific problem, e.g:
problem_labels = ["VL", "VL", "L", "M", "L"]
Eventually, we call the ULOWA function:
ulowaOperation(problem_labels, weights, fuzzyNumbers, labels)
In case you need to analyze more alternatives, you may need to establish a performance table e.g: performance_table in which you will include several problem labels, such as:
performance_table = [["VL", "VL", "P", "H", "VL"], ["VL", "VL", "H", "P", "P"], ["VL", "VL", "L", "M", "L"], ["VH", "L", "H", "H", "AH"], ["P", "L", "H", "L", "AH"]]
Note that the tags doesn't need to be sorted, since a specific method will do so
Now, in order to get a table with all the results, you should execute a code like the following:
performance_table = [["VL", "VL", "P", "H", "VL"], ["VL", "VL", "H", "P", "P"], ["VL", "VL", "L", "M", "L"],
["VH", "L", "H", "H", "AH"], ["P", "L", "H", "L", "AH"]]
results = []
for alternative in performance_table:
weights = [0.6, 0.2, 0.2, 0.0, 0.0]
results.append(ulowaOperation(alternative, weights, fuzzyNumbers, labels))
print(results)
It is really important to redefine the weights inside the loop, since the vector will be modified by the ULOWA function
2.2. Specificity and Fuzziness
This module also allows you to calculate the specificity and fuzziness of a given fuzzy set. In this case, a code like the shown below must be executed:
a = fuzzyNumbers[0][0]
b = fuzzyNumbers[len(fuzzyNumbers) - 1][3]
order=1
for i in fuzzyNumbers:
print(f"\nThe specificity of the {order} fuzzy set is: {specificity(i, a, b)}")
print(f"\nThe fuzziness of the {order} fuzzy set is: {fuzziness(i, a, b)}")
order = order + 1
Author: Ignacio Miguel Rodríguez
Contact: Send e-mail
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ulowa-0.0.5.tar.gz.
File metadata
- Download URL: ulowa-0.0.5.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f541a593cacdf94b5a272023d2d9220f58867e76dd189948323784784957e0a
|
|
| MD5 |
7958435223009e2f59a95f2ddad30ee7
|
|
| BLAKE2b-256 |
ccd8d14c07348aef7667600258e7172655edccb462a1b1e77f2d4837511a8c01
|
File details
Details for the file ulowa-0.0.5-py3-none-any.whl.
File metadata
- Download URL: ulowa-0.0.5-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d110d64cfac3b908f0edd1c69a4cc4bfe3508e2a1ea25bdadee2a61a7f4d5ec4
|
|
| MD5 |
58ee52718d47dd4ecaac87c612f97877
|
|
| BLAKE2b-256 |
86cc6c20da035bab126042af572ace25817a0ab346d8c3cc2dc08302255961d0
|