Главная страница

Многокритериальная оптимизация


Скачать 163.21 Kb.
НазваниеМногокритериальная оптимизация
Дата09.11.2022
Размер163.21 Kb.
Формат файлаrtf
Имя файлаbibliofond.ru_864672.rtf
ТипДокументы
#778049
страница2 из 4
1   2   3   4
LINQ, исключения, комментарии в формате XML.

Переняв многое от своих предшественников - языков C++, Pascal, Модула, Smalltalk и в особенности Java - С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов.

Microsoft Visual Studio - линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службыкак в родном, так и в управляемом кодах для всех платформ, поддерживаемых Microsoft Windows,Windows Mobile, Windows CE, .NET Framework, Xbox, Windows Phone .NET Compact Framework и Microsoft Silverlight.

Visual Studio включает в себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода. Встроенный отладчик может работать как отладчик уровня исходного кода, так и как отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных.

Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода (как например, Subversion и Visual SourceSafe), добавление новых наборов инструментов (например, для редактирования и визуального проектирования кода на предметно-ориентированных языках программирования или инструментов для прочих аспектов процесса разработки программного обеспечения.

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

2. АЛГОРИТМИЧЕСКИЙ АНАЛИЗ ЗАДАЧИ
.1 Постановка задачи
Предприятие планирует освоить выпуск нового изделия в количестве не менее 10 000 штук в год. Для этого ему необходимо приобрести станки двух типов. При этом, на изготовление изделия, предприятие может выделить не более 200 часов в месяц. Существует также ограничение по стоимости (не более 1000 млн. руб.) и по потребляемой мощности (не более 50000 кВт-ч в месяц).

Характеристика станков первого типа приведена в таблице 2.1.
Таблица 2.1 - Технические характеристики станков первого вида

Станок

ST11

ST12

ST13

ST14

ST15

Производительность, изд./час

14

5

12

15

11

Стоимость, млн. руб.

340,0

210,0

720,0

550,0

357,0

Энергоэффективность, кВт-ч/ изд.

17,8

35,5

27,0

23,8

11,9


Характеристика станков второго типа приведена в таблице 2.2.
Таблица 2.2 - Технические характеристики станков второго вида

Станок

ST21

ST22

ST23

ST24

ST25

Производительность, изд./час

18

9

17

19

15

Стоимость, млн. руб.

314,0

255,0

250,0

400,0

138,0

Энергоэффективность, кВт-ч/ изд.

17,0

25,0

25,5

19,0

13,3


Кроме того, при выборе станков необходимо учесть мнение экспертов в отношении этого оборудования (таблицы 2.3 и 2.4).
Таблица 2.3 - Эксплуатационные характеристики станков первого вида

Станок

ST11

ST12

ST13

ST14

ST15

Сервисное обслуживание

Да

Да

Нет

Нет

Да

Надежность, ч

130 000

170 000

110 000

120 000

110 000

Удобство в использовании

плохо

плохо

отлично

хорошо

отлично


Таблица 2.4 - Эксплуатационные характеристики станков второго вида

Станок

ST21

ST22

ST23

ST24

ST25

Сервисное обслуживание

Нет

Да

Нет

Нет

Да

Надежность, ч

170 000

180 000

170 000

200 000

150 000

Удобство в использовании

очень хорошо

отлично

хорошо

плохо

отлично


Задание представлено в таблице 2.5.
Таблица 2.5 - Вариант задания

Вариант

Однокритериальная оптимизация

Многокритериальная оптимизация




метод

параметр

Метод экспертного анализа

Число экспертов

Метод отбора

Выбор лучшего решения

7

перебор

произв.

Саати

1

Парето

МАИ


В курсовом проекте необходимо:

) Разработать программное средство однокритериальной оптимизации по заданному критерию в рамках существующих ограничений (критерий согласно варианту).

Предусмотреть проверку решения методом полного перебора.

Оценить эффективность работы при возрастании числа альтернатив до 50-100.

) Разработать программное средство многокритериальной оптимизации с учетом мнения одного или двух экспертов. Для этого необходимо:

реализовать перевод качественных оценок в числовую форму по шкале Харрингтона;

определить значимость (веса) критериев методом экспертного анализа (метод парных сравнений для группы экспертов);

- реализовать отбор бесперспективных альтернатив (Множество Парето);

определить лучшую альтернативу методом анализа иерархий.

Оценить эффективность работы при возрастании числа альтернатив до 50-100.
.2 Описание алгоритма решения задачи
Для однокритериальной оптимизации задача решается методом полного перебора.

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

Для решения задачи многокритериальной оптимизации необходимо выполнить несколько этапов. Рассмотрим их.

Изначально необходимо организовать обработку экспертных оценок по шкале Харрингтона. Диапазон значений приведён в таблице 2.6.
Таблица 2.6 - Шкала Харрингтона

Качественные оценки

Очень плохо

Плохо

Удовлетворительно

Хорошо

Отлично

Количественные оценки

0.0 - 0.2

0.2 - 0.36

0.36 - 0.63

0.63 - 0.8

0.8 - 1.0



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

Оценки «да» и «нет» так же переводятся в количественную форму оценки: 1 и 0, соответственно.

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

Оценки эксперта дают веса критериев и влияют на рассмотрение вариантов пары станков в дальнейшем.

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

Применение принципа Эджворта-Парето позволяет из множества всех возможных исключить заведомо неприемлемые решения, то есть те, которые никогда не могут оказаться выбранными, если выбор осуществляется достаточно «разумно». После такого исключения остается множество, которое называют множеством Парето или областью компромиссов. Данная операция осуществляется перед началом расчётов, сразу после ввода исходных данных.
.3 Графические схемы разработанного алгоритма
Рассмотрим одну из основных схем алгоритма созданного программного обеспечения - схему метода Саати, представленную в приложении В. Метод Саати предназначен для поиска весов критериев на основе оценок экспертов.

На рисунке 2.1 изображён алгоритм вычисления весов критерия.

Рисунок 2.1 - Схема алгоритма вычисления весов критериев
Данная схема состоит из трёх основных блоков: нахождение суммы оценок по каждому критерию, нахождение суммы всех оценок, нахождение веса критерия. В результате мы получаем массив весов критериев.

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

Рисунок 2.2 - Заполнение массива безразмерными оценками
После выполнения данного алгоритма мы получаем числовой массив безразмерных оценок для каждого критерия каждой альтернативной пары, необходимых для дальнейшего получения итоговой оценки каждой альтернативной пары станков. Алгоритм вычисления итоговых оценок представлен на рисунке 2.3.

Рисунок 2.3 - Алгоритм получения итоговых оценок

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

Наилучшее решение соответствует альтернативе, получившей наивысшую оценку.

3. РАЗРАБОТАННОЕ ПРИЛОЖЕНИЕ И РЕЗУЛЬТАТЫ ТЕСТОВЫХ ИСПЫТАНИЙ
.1 Интерфейс пользователя
Для работы с разработанной программой не нужно иметь специальных навыков, достаточно лишь ознакомиться данной инструкцией.

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

Пример стартового меню изображён на рисунке 3.1.

Рисунок 3.1 - Стартовое меню программы
При выборе однокритериальной оптимизации откроется окно с вводом исходных данных. Пример изображён на рисунке 3.2.

Рисунок 3.2 - Пример окна однокритериальной оптимизации
После нажатия кнопки «Принять» исходные данные принимаются и становится доступна кнопка «Посчитать». Результатом нажатия на эту кнопку является оптимизация по параметру производительность. Пример окна изображён на рисунке 3.3.

Рисунок 3.3 - Вид окна однокритериальной оптимизации
При выборе многокритериальной оптимизации открывается окно с вводом экспертных оценок и исходных данных. Так же в открывшемся окне содержится информация о станках. Вид окна представлен на рисунке 3.4.


Рисунок 3.4 - Вид окна ввода экспертных оценок и исходных данных
Ввод оценок осуществляется при помощи выпадающего списка. Данная операция представлена на рисунке 3.5.

Рисунок 3.5 - Ввод экспертных оценок
При неполном заполнении матрицы экспертных оценок выдаётся соответствующее предупреждение. Приложение не продолжит работу, пока все оценки не будут выставлены. Пример предупреждения приведён на рисунке 3.6.


Рисунок 3.6 - Пример предупреждения
После ввода экспертных оценок и исходных данных и прохождения процедуры верификации введённых данных заполняется таблица возможных альтернатив на вкладке Решение. Пример приведён на рисунке 3.7.

Рисунок 3.7 - Пример заполнения таблицы возможных альтернатив
После нажатия кнопки «Решить» появляется подходящая альтернатива в поле «Решение», а в таблице «Возможные альтернативы» данная пара станков подсвечивается красным цветом. Пример изображён на рисунке 3.8.

Рисунок 3.8 - Пример полученного решения
Так же после нахождения оптимальной пары станков появляется кнопка «Сформировать отчёт». После её нажатия в папке с программой формируется файл
1   2   3   4


написать администратору сайта