Release history
Version 1.4.0
New MCDM methods, with test and documentation:
LMAW (Logarithmic Methodology of Additive Weights).
RAFSI (Ranking of Alternatives through Functional mapping of criterion sub-intervals into a Single Interval).
AROMAN (Alternative Ranking Order Method Accounting for Two-Step Normalization).
Balanced SPOTIS (SPOTIS method’s extension).
LOPCOW (LOgarithmic Percentage Change-driven Objective Weighting), weighting method.
Add gray-code CO order support to COMET, with tests
Add weighted ESP Expert for COMET evaluations.
Add
param_sensitivityhelper for method parameter sweeps.Add new distance module for different metrics (Kemeny, Frobenius, draWS) with docs and tests.
Fix zero-division issues in normalization functions.
Small fixes in correlations, helpers and validators; various documentation updates.
Update copyright year across the codebase.
Version 1.3.1
Add CSV and JSON export options to Table, MCDA_problem and MCDA_results classes.
Add centering command to latex output of MCDA_problem, add “tab:” prefix to its label.
Partially rewrite MCDA_results to be able to add new output format more easily.
Change the validation of matrix and weights. Now if matrix contains dominant od dominated alternatives, or weights does not sum up to 1, UserWarning will be shown, instead of exception. To obey validation use validation=False argument in the method’s call.
Version 1.3.0
This is fairly big update, which include various improvements in code and modules structure, documentation,
implementations and so on. Two main points of the update are: verbose argument for MCDM methods,
which allows for easily inspect computation process for different methods, and addition of AHP and RANCOM pairwise
comparison-based subjective weighting methods.
Most of the code written for previous versions of pymcdm should work, however small fixes can be required.
List of all changes:
New methods
Added pairwise weighting method: RANCOM, and AHP, including examples and tests for them.
Add RAM and LoPM methods, with documentation and tests for it.
New modules and changes in the structure
Now such methods as PROMETHEE I/II and PROBID/SPROBID are implemented in separate classes.
PROMETHEE I method is now implemented as
PROMETHEE_Iclass inpymcdm.methods.partialmodule.Classes
RANCOMandAHPare available underpymcdm.weights.subjective.New modules:
pymcdm.io- which includes classes that supports verbose output of the methods.pymcdm.validators- which includes functions which are used for the validation of the input.pymcdm.methods.partial- currently contains onlyPROMETHEE_Iclass, in future will include other partial ranking methods.pymcdm.weights.subjective- module for subjective weighting method. Currently, contains AHP and RANCOM implementations.
Other improvements
Rewritten validation system across most methods for improved reliability. To skip validation add
validation=Falseto the method call.Update for the documentation, including various fixes and improvements, as well as new examples. This includes changes in the subpage structure, API and User Guide improvements.
Improved normalization handling in
normalize_matrix. Now normalization type can be provided asstr.Add new arguments to
ranking_bar()function.Removed redundant files.
Version 1.2.1
Add examples for the
comet_toolsto the documentationAdd
comet_3d_esp_plotvisualization functionAdd
RAMmethod and documentation for itAdd
get_local_weightsfunctionImprove
normalize_matrixhelper functionImprove behaviour of
StructuralCOMETclassUpdate references in README.md
Rename
comet_esp_plottocomet_2d_esp_plotFix bug with file writing in
manual_expertandtriad_supported_expertFix calculation on final stage of the
COPRASmethod and improve tests accordinglyFix bug with
zavadsks_turkish_normalizationfunctionClean up documentation folder
Various fixes in the documentation and docstrings
Version 1.2.0
General changes
Add CONTRIBUTING.md
Add CHANGELOG.md
Functions
correlation_matrixandnormalize_matrixare moved to helpersAdd ESP to SPOTIS implementation
New methods
RIM
ERVD
PROBID
WSM
WPM
WASPAS
Visualization changes
Fix visuals import bug
Add
leave_one_out_rrhelper functionAdd
rankings_flow_correlationvisualizationAdd
correlation_plotvisualizationAdd
comet_tfnsvisualizationAll visualization function now returns ax or ax, cax if used
Add colors argument to
polar_plotImprove
promethee_I_graphvisualizationRefactor and improve
ranking_flowsfunction
COMET Tools module
Refactor evaluation of the characteristic objects in the COMET, now rate_function and expert_function are the same function
Add bunch of Expert functions for the COMET:
MethodExpert,ManualExpert,FunctionExpert,CompromiseExpert,TriadSupportExpert,ESPExpertAdd triads consistency coefficient
Add
StructuralCOMETclass which allows to build structural MCDA models in easy wayAdd example of the structural COMET usage
Add examples for the most of the new Expert functions