API

class src.WMSDTransformer.WMSDTransformer(agg_fn, max_std_calculator='scip')

A class used to calculate TOPSIS ranking, plot positions of alternatives in WMSD space, perform improvement actions on selected alternative.

Xdata-frame

Pandas data-frame provided by the user.

X_newdata-frame

Pandas data-frame, normalized X.

datadata-frame

A copy of self.X, on which all calculations are performed.

nint

Number of data-frame’s columns

mint

Number of data-frame’s rows

weightsnp.array of float

Array containing normalized weights.

objectivesnp.array of str

Numpy array informing which criteria are cost type and which are gain type.

expert_range2D list of floats

2D list containing normalized expert range.

src.WMSDTransformer.WMSDTransformer.__init__(self, agg_fn, max_std_calculator='scip')

Initialize self. See help(type(self)) for accurate signature.

src.WMSDTransformer.WMSDTransformer.fit(self, X, weights=None, objectives=None, expert_range=None)

Checks input data and normalizes it. :param none: :type none: none :param X: Pandas data-frame provided by the user.

Apart of column and row names all values must be numerical.

Parameters:
  • weights (np.array of float, optional) – Numpy array of criteria’ weights. Its length must be equal to self.n. (default: np.ones())

  • objectives (list or dict or str, optional) – Numpy array informing which criteria are cost type and which are gain type. It can be passed as: - list of length equal to self.n. in which each element describes type of one criterion: ‘cost’/’c’/’min’ for cost type criteria and ‘gain’/’g’/’max’ for gain type criteria. - dictionary of size equal to self.n in which each key is the criterion name and ech value takes one of the following values: ‘cost’/’c’/’min’ for cost type criteria and ‘gain’/’g’/’max’ for gain type criteria. - a string which describes type of all criteria: ‘cost’/’c’/’min’ if criteria are cost type and ‘gain’/’g’/’max’ if criteria are gain type. (default: list of ‘max’)

  • expert_range (2D list or dictionary, optional) – For each criterion must be provided minimal and maximal value. All criteria must fit in range [minimal, maximal] (default: 2D list of minimal and maximal values among provided criteria)

src.WMSDTransformer.WMSDTransformer.fit_transform(self, X, weights=None, objectives=None, expert_range=None)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.transform(self, X)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.transform_US_to_wmsd(self, X_US)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.inverse_transform(self, target_mean, target_std, std_type, sampling_density=None, epsilon=0.001)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.improvement(self, function_name, alternative_to_improve, alternative_to_overcome, improvement_ratio=1e-06, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.plot(self, heatmap_quality=500, show_names=False, plot_name=None, color='jet')

Plots positions of alternatives in WMSD space.

src.WMSDTransformer.WMSDTransformer.update_for_plot(self, id, changes, change_number)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.plot2(self, id, changes, show_names=False, change_number=0)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.WMSDTransformer.show_ranking(self, mode='standard', first=1, last=None)

Displays the TOPSIS ranking :param none: :type none: none :param mode: Way of display of the ranking. If mode=’minimal’, then only positions

of ranked alternatives will be displayed. If mode=’standard’ then additionally all criteria values will be showed. If mode=’full’, then apart of criteria values also values of mean, standard deviation and aggregation function will be displayed. (default ‘standard’)

Parameters:
  • first (int, optional) – Rank from which the ranking should be displayed. (default 1)

  • first – Rank to which the ranking should be displayed. (default None)

class src.WMSDTransformer.TOPSISAggregationFunction(wmsd_transformer)

Class description … .. attribute:: attribute

description

type:

type

src.WMSDTransformer.TOPSISAggregationFunction.TOPSIS_calculation(self, w, wm, wsd)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.TOPSISAggregationFunction.improvement_single_feature(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, feature_to_change, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.TOPSISAggregationFunction.improvement_mean(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, allow_std=False, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.TOPSISAggregationFunction.improvement_features(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, features_to_change, boundary_values=None, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.TOPSISAggregationFunction.improvement_genetic(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, features_to_change, boundary_values=None, allow_deterioration=False, popsize=None, n_generations=200)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.TOPSISAggregationFunction.solve_quadratic_equation(a, b, c)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.TOPSISAggregationFunction.choose_appropriate_solution(solution_1, solution_2, lower_bound, upper_bound, objective)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

class src.WMSDTransformer.PostFactumTopsisPymoo(topsis_model, modified_criteria_subset, current_performances, target_agg_value, upper_bounds, allow_deterioration=False)

Class description … .. attribute:: attribute

description

type:

type

class src.WMSDTransformer.ATOPSIS(wmsd_transformer)

Class description … .. attribute:: attribute

description

type:

type

src.WMSDTransformer.ATOPSIS.TOPSIS_calculation(self, w, wm, wsd)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.ATOPSIS.improvement_single_feature(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, feature_to_change, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.ATOPSIS.improvement_std(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

class src.WMSDTransformer.ITOPSIS(wmsd_transformer)

Class description … .. attribute:: attribute

description

type:

type

src.WMSDTransformer.ITOPSIS.TOPSIS_calculation(self, w, wm, wsd)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.ITOPSIS.improvement_single_feature(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, feature_to_change, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.ITOPSIS.improvement_std(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

class src.WMSDTransformer.RTOPSIS(wmsd_transformer)

Class description … .. attribute:: attribute

description

type:

type

src.WMSDTransformer.RTOPSIS.TOPSIS_calculation(self, w, wm, wsd)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.RTOPSIS.improvement_single_feature(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, feature_to_change, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO

src.WMSDTransformer.RTOPSIS.improvement_std(self, alternative_to_improve, alternative_to_overcome, improvement_ratio, **kwargs)

TO DO :param parameter: description :type parameter: type

Return type:

TO DO