Русский | English

Добро пожаловать в веб-сервисы для систем поддержки принятия решений!

На данном портале представлены методы поддержки принятия решений и исследования операций, включая методы многокритериального анализа альтернатив и оптимизации. Все методы доступны через пользовательский интерфейс и через RESTful API после регистрации.

Скачать описание RESTful API  Пример

Пример написания собственного метода

Учебные материалы

Видео с конференции

 

Основные доступные методы:

МетодОписание
aircraft_schedule Определение оптимального количества летательных аппаратов и составление расписания
ant_colony Решение задачи поиска кратчайшего пути в графе методом муравьиной колонии. Входные данные представлены в виде: { "from_vertex" : "<имя начальной вершины>", "to_vertex" : "<имя конечной вершины>", "graph":{ "имя исх вершины": { "имя вх вершины 1": <длина дуги>, "имя вх вершины 2": <длина дуги> }, ..... } } Метод разработан при финансовой поддержке РФФИ (проект № 18-00-00011 КОМФИ).
avg_fuzzy_ranking Агрегирование нечетких суждений экспертов, заданных треугольными функциями принадлежности. Метод разработан при финансовой поддержке РФФИ (проект № 19-01-00520 А).
bellman_ford Реализация алгоритма Беллмана-Форда. Алгоритм Беллмана-Форда предназначен для решения задачи поиска кратчайшего пути на графе. Для заданного взвешенного графа алгоритм находит кратчайшие расстояния от выделенной вершины-источника до всех остальных вершин графа. Его отличительной особенностью является применимость к графам с произвольными, в том числе отрицательными, весами. Входные данные содержат: массив рёбер “graph”, каждое из которых состоит из вершины “из“, вершины “в“ и веса ребра; номер начальной вершины “vertex“, для которой выполняется поиск; переменная “isDirect“, которая может принимать значения 1 и 0 в зависимости от того, ориентированный граф или нет. Программная реализация: Храпов Н.В.
concordance Расчет коэффициента конкордации. Является мерой согласованности мнений экспертов. Исходная матрица экспертных оценок в ранговой шкале (строки - оцениваемые альтернативы, столбцы - эксперты). p - уровень значимости - допустимая для данной задачи вероятность ошибки первого рода (ложноположительного решения, false positive). На выходе значение коэффициента конкордации - w, статистическая оценка - hi2 и табличное значение - hi2_tab и accepted - признак того, что мнение экспертов можно считать согласованным.
consistency_increase Повышение согласованности матрицы парных сравнений. На вход подается JSON c матрицей парных сравнений, требуемым уровнем согласованности и ограничением на число вариаций: { "matrix": [ [...],[...]...], "cnt": ...}. На выходе приводится набор изменений, которые рекомендуется применить к исходной матрице, чтобы повысить ее согласованность, и индекс согласованности матрицы после изменений. Метод разработан при финансовой поддержке РФФИ (проект № 18-01-00382 A).
eulerian_path Поиск эйлерова пути в неориентированном графе. Необходимо задать массив ребер. Необязательный параметр: номер начальной вершины. { "graf": [[1,2],[2,3]],"initial": 1 }
fuzzy_od_matrix Восстановление нечеткой матрицы корреспонденций. Работа выполнена при поддержке гранта РНФ 17-71-30014.
fuzzy_preferences Ранжирование альтернатив в нечетких областях предпочтений. Метод разработан при финансовой поддержке РФФИ (проект № 16-01-00571-а).
game_equilibrium Поиск равновесных состояний в матричной игре 2-х игроков. Во входном массиве 1-й индекс соответствует первому игроку, 2-й индекс - второму игроку. Элемент массива - это массив выигрышей первого и второго игрока соответственно. На выходе массив индексов элементов соответствующих равновесному состоянию (индексация элементов с нуля). Если равновесие в чистых стратегиях отсутствует выводится ключ: "error":"the equilibrium does not exist".
game_iter Решение антогонистической игры 2-х лиц с нулевой суммой в смешанных стратегиях приближенным итеративным методом. Входные данные платежная матрица выигрыша первого игрока. Строки - стратегии перого игрока, столбцы - стратегии второго игрока. На выходе - трассировка, цена игры и вероятности стратегий.
GFP Метод выявления предпочтений лица, принимающего решения. Заключается в разбиении пространства критериев на области и определении отношения предпочтения между ними с использованием качественных методов теории принятия решений. В случае если несколько недоминируемых альтернатив попадают в одну область, рекомендовано воспользоваться количественными методами сопоставления альтернатив внутри заданной области. Функция, с помощью которой вычисляют итоговую оценку альтернатив, названа гибридной функцией предпочтений. Она может быть использована в задачах выбора, ранжирования и оптимизации.
graph_connectivity Определение связности неориентированного графа. Исходные данные задаются в виде вершин и массива ребер: { "graf": { "1": ["2","4","6"], "4": [] } }.
hamiltonian_path Поиск гамильтонова пути в направленном графе. Исходные данные задаются в виде вершин и массива инцидентных им дуг: { "graf": { "1": ["2","4","6"], "4": [] }, "initial": "1" }. Может быть указан необязательный параметр - начальная вершина initial.
inconsistency_graph Поиск циклов в графе для обнаружения нетранзитивности предпочтений по матрице парных сравнений. Метод разработан при финансовой поддержке РФФИ (проект № 18-01-00382 A).
kernighan_lin Алгоритм Кернигана – Лина. Позволяет разбить граф на заданное количество частей с минимизацией отклонений весов частей от среднего и минимизацией связей между частями. Вх. параметры: Iterations - число итераций. Mode - режим работы программы (1-оптимизированный для задачи в которой происходит разбиение с учетом весов вершин и весов ребер, 2-классический). Numbers - на сколько частей делить. Vertex – массив весов вершин графа. Connections – связь вершин с указанием веса. Вых. параметры: trace - трассировка, result - результат, включает: Parts - группы. EdgesWeight – вес ребер. VertexWeight – вес вершин. Vertex-вершины, которые входят в группу. Программная реализация: В.Качнов
metis Разбиение графа на подграфы. Использует библиотеку: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview . Исходные данные: "has_vertices_size" = 1, если задан размер вершин, "number_of_vertices_weights" - число весов вершин, "has_edges_weights" = 1, если заданы веса ребер, "graph" - массив вершин, для каждой вершины в массиве могут быть заданы: размер вершины, веса вершины, смежные вершины (нумерация с 1) и веса ребер. "nparts" - число частей на которые следует разбить граф.
min_fal Минимизация функций алгебры логики. В качестве входных данных указывается изображающее число: {"output": "11010110"}
opt_bs_prj Решение комбинаторной задачи оптимизации для рационального распределения средств на инфраструктурые проекты.
opt_dynamic_prog Решение задач распределения ресурсов методом динамического программирования. Параметры входного JSON: а - коэффициенты в ограничении, max_res - суммарная величина выделенного ресурса, f - массив формул сепарабельных компонент целевой функции. В формулах f следует указывать переменную x - это аргумент функции. В формуле допустимо использовать функции библиотеки ruby math.
opt_rl_bs Поиск решения в задаче планирования спортивной инфраструктуры методом машинного обучения с подкреплением. Работа выполнена при финансовой поддержке ФГБОУ ВО «РЭУ им. Г.В. Плеханова»
opt_simplex Решение задачи линейного программирования симплекс-методом. Входные данные для работы программы вводятся следующим образом: { "traceEnabled" : Включена ли трассировка (false или true), "direction" : Направление оптимизации в кавычках ("min" или "max"), "mainFunction" : Коэффициенты при переменных в целевой функции в квадратных скобках через запятую (например, [1.0, 1.0, 1.0]) , "limitations" : { Номер ограничения, нумерация всегда должна идти с нуля, пишется только число в кавычках (например, "0") : { "numbers" : [Коэффициенты при переменных в ограничении, последнее число - правая часть ограничения (например, [1.0, 1.0, 1.0, 10.0])], "sign" : "Знак в ограничении ("<=", "=" или ">=")" }, ... } } } Программная реализация: Власов М.А.
opt_transport_task Решение траспортной задачи в матричной постановке (Т-задачи) специальным алгоритмом линейного программирования. Исходные данные задаются в формате JSON хэша с ключами: production - объёмы производства, consumption - объёмы потребления, cost - стоимость перевозки (строки - пункты производства, столбцы - пункты потребления), is_mup - использовать упорядочивание пар при поиске допустимого решения (если =1, то "Да"), is_trace - если равен 1, то выводить полную трассировочную печать, add_cost - потери от перепроизводств или от недопоставок. Работа выполнена при поддержке гранта РНФ 17-71-30014.
opt_vector_lattice Оптимизация методом неявного перебора по векторной решетке. Исходные данные - JSON с параметрами: "trace" - трассировка (1-да, 0- нет) , "kn" - флаг работы КН (1-работает, 0-нет), "kpia" - флаг работы КПИА (1-работает, 0-нет), "kpp" - флаг работы КПП (1-работает, 0-нет), "dir" - направление оптимизации (0-min, 1-max), "c"- вектор-строка коэффициентов целевой функции С, "h" - вектор-строка верхних ограничений переменных H, "asb" - двумерный массив, его строки должны содержать коэффициенты ограничений A, знаки ограничений (знак ограничения <= кодируется как 0, = как 1, >= как 2) и правые части ограничений В (по одному ограничению в строке). Метод разработан при финансовой поддержке РФФИ (проект № 18-00-00011 КОМФИ).
pairwise_comparison Определение весов критериев или рангов альтернатив методом парных сравнений. На вход подается JSON в матрицей парных сравнений: { "matrix": [ [...],[...]...] }. На выходе формируются веса и определяется согласованность.
pareto_optimality Определение парето-оптимальных (эффективных) решений
statistical_hypothesys Проверка стат. гипотез на нормальность для малых выборок (от 8 до 50 элементов). По ГОСТ Р ИСО 5479-2002 автоматически выбирается и рассчитывается критерий Шапиро-Уилка или Эппса-Палли. Далее осущетвляется проверка гипотезы равенства мат.ожидания по парам выборок по T-критерию Стьюдента или U-критерию Манна — Уитни.
tsp Решение задачи коммивояжёра (англ. Travelling salesman problem, сокращённо TSP) методом генетического программирования. Параметры: population_size - размер популяции, generations - число поколений, start - начальная вершина пути, end - конечная вершина пути, costs - матрица стоимостей перевозок (строки - источники, столбцы - приемники).
weighted_sum Взвешенная сумма. На вход подаются веса, направления улучшения критериев и значения критериев по всем альтернативам. На выходе вычисляются ранги альтернатив.

Основные доступные модели:

МодельОписание
BPR-model of transport network Модель описывает транспортную сеть. Функция затрат на проезд по дуге определяется классической BPR-функцией: travel_time( flow ) = free_flow_time * ( 1 + B * ( flow / capacity )^P ). На вход модели подается граф сети и набор корреспонденций. На выходе возвращается распределение потоков по дугам (равновесное состояние). Программная реализация модели: Аникин А.С. Исследование выполнено в рамках федеральной целевой программы «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2014 – 2020 годы», Соглашение № 14.604.21.0052 от 30.06.2014 г. с Минобрнауки. Уникальный идентификатор проекта RFMEFI60414X0052.
The model of choice based on the HPF Модель выбора на основе гибридной функции предпочтений. Модель позволяет определить ранги альтернатив на основе гибридной функции предпочтений. Исследование выполнено в рамках федеральной целевой программы «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2014 – 2020 годы», Соглашение № 14.604.21.0052 от 30.06.2014 г. с Минобрнауки. Уникальный идентификатор проекта RFMEFI60414X0052.
The Model of Pareto-Optimal Solutions Присваивает ранг 1 парето-оптимальным решениям и ранг 0 доминируемым
Weighted sum choice model Модель позволяет определить ранги альтернатив.
Ковид в агломерациях Тестирование