interfaces

This module is used to gather core interfaces and encourage their use for a more coherent API.

class Assignator

Bases: ABC

Interface to implement assignment MCDA algorithms.

abstract assign(**kwargs)

Assign alternatives to categories.

Returns

assignment of each alternative

Return type

CommensurableValues

class Learner

Bases: Generic[T], ABC

This interface describes a generic learner.

abstract learn()

Learn and return an object.

Returns

Return type

T

class Ranker

Bases: ABC

Interface to implement ranking MCDA algorithms.

abstract rank(**kwargs)

Rank alternatives.

Returns

ranking

Return type

Union[PreferenceStructure, AdjacencyValueMatrix[DiscreteQuantitativeScale], CommensurableValues[OrdinalScale]]

class Selector

Bases: ABC

Interface to implement selection MCDA algorithms.

abstract select(**kwargs)

Select a subset of alternatives.

Returns

selected alternatives

Return type

Sequence

class Sorter

Bases: ABC

Interface to implement clustering/sorting MCDA algorithms.

abstract sort(**kwargs)

Sort alternatives in clusters.

Returns

cluster of each alternative

Return type

CommensurableValues