Сравнение и разработка методов многокритериального анализа принятия решений | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №18 (360) апрель 2021 г.

Дата публикации: 03.05.2021

Статья просмотрена: 1025 раз

Библиографическое описание:

Клоков, С. А. Сравнение и разработка методов многокритериального анализа принятия решений / С. А. Клоков. — Текст : непосредственный // Молодой ученый. — 2021. — № 18 (360). — С. 30-33. — URL: https://moluch.ru/archive/360/80477/ (дата обращения: 16.11.2024).



В данной статье рассматриваются методы многокритериального анализа принятия решения и их применение для конкретных данных. Разрабатывается библиотека на языке Python для сравнения методов анализа TOPSIS, ELECTRE I, SAW.

Ключевые слова: моделирование, SAW, TOPSIS, ELECTRE, Python, выбор альтернатив

В ходе данной работы будут изучены методы многокритериального анализа принятия решений и будет разработана библиотека на языке программирования Python, необходимая для принятия решения.

— SAW

— TOPSIS

— ELECTRE

В ходе решения задачи был написан программный пакет, состоящий из 4 файлов:

electre.py — многокритериальный метод анализа решений ELECTRE

saw_method.py — многокритериальный метод анализа решений SAW

topsis.py — многокритериальный метод анализа решений TOPSIS

DecisionHelper.py — класс для взаимодействия с методами сравнения знаками

SAW

__count__ — Метод подсчета суммы произведений матрицы на веса

saw_method — SAW метод для сравнения альтернатив по весам

TOPSIS

__normalize__ — Метод нормализации исходных данных

__get_worst_best__ — Метод поиска лучшей и худшей альтернативы

__get_worst_best_distanse__ — Метод поиска «дистанции» до худшего и лучшего элементов

__topsis__ — Внутренний TOPSIS метод для сравнения альтернатив по весам

topsis — TOPSIS метод для сравнения альтернатив по весам

ELECTRE .

__normalize__ — Метод нормализации исходных данных

__concordance_matrix__ — Метод составления матрицы согласия

__discordance_matrix__ — Метод составления матрицы несогласия

__dominance_matrix__ — Метод составления матрицы удовлетворения пороговым значения индексов согласия и несогласия

__lim_concordance_list__ — Метод поиска предельных значений индекса согласия

__lim_discordance_list__ — Метод поиска предельных значений индекса несогласия

electre — ELECTRE I метод для сравнения альтернатив по весам

Исходные данные

Рассмотрим IDE для разработки на языке Java. Для этого выберем характеристики, по которым будем их сравнивать. Стоимость не будем брать в качестве характеристики, так как выбранные IDE распространяются бесплатно. Важность характеристики измеряется числом от 1 до 4, где 4 — наиболее важная характеристика.

Таблица 1

Раскрытие выбранных характеристик

Характеристика

( Субхарактеристика )

Причина выбора

В чем измеряется

Важность

функциональная пригодность степень, в которой продукт или система обеспечивают выполнение функции в соответствии с заявленными потребностями при использовании в указанных условиях.

Необходима для того, чтобы данную IDE можно было использовать для прохождения всех практик, предусмотренных учебным планом

1: покрывает 0–50 % плана

2: покрывает 51–90 % плана

3: покрывает 90–100 % плана

0.18

временные характеристики — степень соответствия требованиям по времени отклика, времени обработки и показателей пропускной способности продукта или системы.

Необходима вследствие ограниченности занятия в вузе, чтобы тратить больше времени на разработку, меньше на запуск, компиляцию.

1: >2 минут

2: 1–2 минуты

3: 30–59 секунд

4: 15–30 секунд

5: 0–15 секунд

0.13

использование ресурсов — степень удовлетворения требований по потреблению объемов и видов ресурсов продуктом или системой при выполнении их функций.

Необходима, так как мощность аппаратного обеспечения в вузе достаточно низкая

1: загружает ресурсы на 100 % и этого недостаточно

2: загружает ресурсы на 90–100 %

3: загружает ресурсы на 50–89 %

4: загружает ресурсы <50 %

0.17

изучаемость — возможность использования продукта или системы определенными пользователями для достижения конкретных целей обучения для эксплуатации продукта или системы с эффективностью, результативностью, свободой от риска и в соответствии с требованиями в указанном контексте использования.

Необходима по причине недостаточной осведомленности студента обо всех возможностях, опциях, настройках IDE

1: отсутствие документации

2: есть сжатая документация

3: есть качественная документация

4: подсветка ошибок + № 3

5: контекстные подсказки + № 4

0.09

защищенность от ошибки пользователя — уровень системной защиты пользователей от ошибок.

Необходима по причине недостаточной осведомленности студента обо всех возможностях, опциях, настройках IDE

1: отсутствие предупреждений об ошибке

2: показ причины возникшей ошибки

3: предупреждение о возникновении ошибки

0.04

восстанавливаемость — способность продукта или системы восстановить данные и требуемое состояние системы в случае прерывания или сбоя.

Необходима из-за несовершенности аппаратного обеспечения и частых “вылетов”

1: отсутствие возможности восстановить данные

2: возможность автоматически сохранять изменения

3: возможность восстановить несохраненные изменения

0.13

отказоустойчивость — способность системы, продукта или компонента работать как предназначено, несмотря на наличие дефектов программного обеспечения или аппаратных средств.

Необходима вследствие ограниченности занятия в ВУЗе, чтобы не нужно было тратить время на настройку системы в случае возникновения ошибки

1: неспособность работать в случае дефектов

2: способность работать в случае отказа некоторых модулей

3: независимость от дефектов

0.09

взаимозаменяемость — способность продукта заменить другой конкретный программный продукт для достижения тех же целей в тех же условиях.

Необходима для того, чтобы открыть созданный код стандартными программами Windows и Linux и другими IDE

1: работает только в данной IDE

2: возможность запустить код в других IDE

3: возможность запустить код из других IDE + № 2

0.17

Таблица 2

ПО и выбранные характеристики

Характеристика/ Субхарактеристика

IntelliJ IDEA

Eclipse

NetBeans

DrJava

Android studio

функциональная пригодность

3

3

3

2

2

временные характеристики

3

3

2

5

1

использование ресурсов

3

3

3

4

2

изучаемость

5

4

3

2

5

защищенность от ошибки пользователя

3

3

3

2

3

восстанавливаемость

2

2

2

1

3

отказоустойчивость

2

1

2

2

2

взаимозаменяемость

3

3

3

3

2

Преобразуем в данные для приложения.

M — матрица, где строка — определенное ПО, столбец — критерий

Weights — веса

Signs — список, показывающий, отрицательный или положительный критерий

Данные, подготовленные для анализа

Рис. 1. Данные, подготовленные для анализа

Полученные результаты

Результаты представлены на рисунке 2.

Полученные результаты

Рис. 2. Полученные результаты

1-е место занимает ПО под номером 1 (IntelliJ Idea) во всех методах, использованных в данной практической работе.

Результаты различаются в методах SAW и TOPSIS лишь в относительно близких по уровню качества альтернативах. (№ 2 и № 4).

Вывод

Причинами того, что методы выдают не одинаковые результаты, являются:

— различие в силе учета весов

— формирование числовых значений разных способами

— различие в видах нормализации матрицы

— учет значений альтернативных вариантов при рассмотрении в TOPSIS и ELECTRE

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

Библиотека была загружена на репозиторий в веб-сервисе GitHub [3].

Литература:

  1. Лукичёва, Л. И. Управленческие решения: учебник по специальности «Менеджмент организации» / Л. И. Лукичёва, Д. Н. Егорычев, Ю. П. Анискина. — 4-е изд. — Москва: Омега-Л, 2009. — 383 c. — Текст: непосредственный.
  2. Лазарев, В. Н. Управленческие решения: текст лекций / В. Н. Лазарев. — 1-е изд. — Ульяновск: УлГТУ, 2011. — 56 c. — Текст: непосредственный.
  3. Клоков, С. А. MCDM_Methods / С. А. Клоков. — Текст: электронный // GitHub: [сайт]. — URL: https://github.com/R1k0523/MCDM_Methods (дата обращения: 26.04.2021).
Основные термины (генерируются автоматически): IDE, TOPSIS, ELECTRE, SAW, сравнение альтернатив, данные, Метод поиска, многокритериальный метод анализа решений, характеристика, аппаратное обеспечение.


Ключевые слова

моделирование, python, SAW, TOPSIS, ELECTRE, выбор альтернатив

Похожие статьи

Обзор пакета для анализа временных рядов forecast на языке программирования R

Данная статья рассматривает основные аспекты пакета «forecast», обращая внимание на его ключевые возможности и применение.

Применение векторизации слов для нечеткого поиска

В этой статье рассматриваются вопросы выполнения нечеткого поиска, извлечение семантики слов и применение векторной модели для расширения поиска. Изложены общие идеи при решении поставленной задачи, приводятся алгоритмы с их последующей реализацией и...

Использование программной системы MPRIORITY для принятия оптимального решения

Проведено исследование диалоговой системы «MPRIORITY 1.0» на предмет помощи в принятии решения, на рядовом примере покупки внешнего жёсткого диска. Также были проведены сравнения данных предложенных программой с собственными расчётами.

Современные программные продукты для анализа данных

В статье представлены особенности современного программного обеспечения для анализа данных и сравнительный анализ программных продуктов.

Разработка систем рекомендаций на основе Big Data

В данной статье рассмотрены основные подходы к разработке систем рекомендаций на основе Big Data, включая коллаборативную фильтрацию, контентную фильтрацию и гибридные методы, а также представлены примеры реализации алгоритмов на языке программирован...

Анализ средств для реализации нейронных сетей на языке программирования Java

В данной статье рассматриваются основные требования к реализации нейронных сетей, описываются возможности языка Java по созданию компонентов нейронных сетей. Так же приводится анализ и сравнение уже существующих решений для данного языка и производит...

Сравнительный анализ методов Наивного Байеса и SVM алгоритмов при классификации текстовых документов

В статье раскрывается понятие классификации текстовых документов для автоматического обнаружения категорий по текстам. Проводится сравнительный анализ двух самых главных алгоритмов, которыми являются методы наивного Байеса и SVM. Делается вывод, что ...

Реализация алгоритма поиска ближайших объектов с помощью K-D tree

В данной статье разработан алгоритм поиска ближайших объектов с помощью вспомогательной структуры, основанной на K-D tree, а также рассматривается приложение на языке Java, реализующее данный алгоритм.

Применение нечеткой логики и методов визуализации графических решений при анализе показателей финансового рынка

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

Обзор существующих инструментов для моделирования бизнес-процессов, использующих основные методологии

В статье авторы описывают и выявляют достоинства и недостатки программных средств для моделирования бизнес-процессов.

Похожие статьи

Обзор пакета для анализа временных рядов forecast на языке программирования R

Данная статья рассматривает основные аспекты пакета «forecast», обращая внимание на его ключевые возможности и применение.

Применение векторизации слов для нечеткого поиска

В этой статье рассматриваются вопросы выполнения нечеткого поиска, извлечение семантики слов и применение векторной модели для расширения поиска. Изложены общие идеи при решении поставленной задачи, приводятся алгоритмы с их последующей реализацией и...

Использование программной системы MPRIORITY для принятия оптимального решения

Проведено исследование диалоговой системы «MPRIORITY 1.0» на предмет помощи в принятии решения, на рядовом примере покупки внешнего жёсткого диска. Также были проведены сравнения данных предложенных программой с собственными расчётами.

Современные программные продукты для анализа данных

В статье представлены особенности современного программного обеспечения для анализа данных и сравнительный анализ программных продуктов.

Разработка систем рекомендаций на основе Big Data

В данной статье рассмотрены основные подходы к разработке систем рекомендаций на основе Big Data, включая коллаборативную фильтрацию, контентную фильтрацию и гибридные методы, а также представлены примеры реализации алгоритмов на языке программирован...

Анализ средств для реализации нейронных сетей на языке программирования Java

В данной статье рассматриваются основные требования к реализации нейронных сетей, описываются возможности языка Java по созданию компонентов нейронных сетей. Так же приводится анализ и сравнение уже существующих решений для данного языка и производит...

Сравнительный анализ методов Наивного Байеса и SVM алгоритмов при классификации текстовых документов

В статье раскрывается понятие классификации текстовых документов для автоматического обнаружения категорий по текстам. Проводится сравнительный анализ двух самых главных алгоритмов, которыми являются методы наивного Байеса и SVM. Делается вывод, что ...

Реализация алгоритма поиска ближайших объектов с помощью K-D tree

В данной статье разработан алгоритм поиска ближайших объектов с помощью вспомогательной структуры, основанной на K-D tree, а также рассматривается приложение на языке Java, реализующее данный алгоритм.

Применение нечеткой логики и методов визуализации графических решений при анализе показателей финансового рынка

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

Обзор существующих инструментов для моделирования бизнес-процессов, использующих основные методологии

В статье авторы описывают и выявляют достоинства и недостатки программных средств для моделирования бизнес-процессов.

Задать вопрос