Добавил заготовки для метода многокритериального анализа:
1. Построекние отношений предпочтения для данного пользователя
2. Перестройка множества кластеров вузов по формуле

Работоспособность не проверялась. Необходимо дописать/выделить в классы и написать нормальные тесты.
Дорабатываю...
Merge branch 'feature/MulticriterialAnalysis' into develop
Продолжаю разработку алгоритма.
Переписал свои идеи по построению множества паррето - взял прошлую версию(с WPF проекта) и адаптировал под текущую версию
+ добавил старые тесты на построение мн-ва паретто. Проходят.
Дописал основную логику работы многокритериального анализа.
Разбил основную логику на 3 класса + 4-й агрегатор.
Написал тесты для основной части логики.
Merge branch 'feature/MulticriterialAnalysis' into develop
Merge branch 'develop' of https://github.com/Label1-Cool/OptimalEducation into feature/test_Label1-Cool
Merge branch 'feature/test_Label1-Cool' into develop
Добавлены дополнительные методы для вычисления растояний:
        /// Квадрат евклидова расстояния
        /// Расстояние городских кварталов (манхэттенское расстояние)
        /// Расстояние Чебышева
        /// Расстояние Чебышева
        /// Степенное расстояние
Поменял наименования методов, классов и namespaces Clusterizer->Characterizer и тп.(т.к. тут нет никаких кластеризаторов(и по идее даже классификаторов))
Вынес логику вычисления расстояний в отдельный класс.
Переименовал поля и названия методов в классах
тесты переименование
Переименовал название модели + таблицы + миграция
Merge branch 'feature/DistanceMethods' into develop
refactoring
Добавил основные тесты для класса,вычисляющего разные метрики.
Возможно потребуется в дальнейшем добавить тесты, проверяющие эти методы для пользователей и направлений с разным набором характеристик.

ps
внимание! помнить про то что double не дает 100% точности при вычислениях
no message
Merge branch 'feature/Tests' into develop
fix
Переименовал cluster->characterisitc  в оставшихся частях проекта(кроме артемовских)
+ Измененяи в модели(тоже переименовал)