  The Majority Rule Sorting (MR-Sort) method assigns alternatives evaluated on
multiple criteria to one of the predefined ordered categories. The Inverse
MR-Sort problem (Inv-MR-Sort) computes MR-Sort parameters that match a dataset.
Existing learning algorithms for Inv-MR-Sort consider monotone preferences on
criteria. We extend this problem to the case where the preferences on criteria
are not necessarily monotone, but possibly single-peaked (or single-valley). We
propose a mixed-integer programming based algorithm that learns the preferences
on criteria together with the other MR-Sort parameters from the training data.
We investigate the performance of the algorithm using numerical experiments and
we illustrate its use on a real-world case study.
