ВВЕДЕНИЕ
При автоматизированном проектировании новых объектов на современном этапе возникают задачи получения оптимального проектного решения с точки зрения некоторого заданного критерия.
Выбор наилучшего решения предполагает наличие двух основных элементов: параметров, варьированием которых проектировщик получает различные варианты проектируемого изделия, и критерия сравнения, позволяющего указать лучший среди них.
Решение оптимизационной задачи ищется в зависимости от вида критерия, варьируемых параметров, уравнений связи, ограничений и является достаточно трудоемким процессом, требующим больших вычислительных мощностей.
В современном обществе процессы принятия решений являются основой любой целенаправленной деятельности человека. Они позволяют достичь цели при минимальных материальных и трудовых затратах. А значит, науке о принятии оптимальных решений следовало уделить особое внимание. Важные решения принимаются опытными людьми, экспертами в данной области, для отсеивания вариантов, не удовлетворяющих нашим критериям
Так как будущее никогда неизвестно, все решения связаны с риском. Риск может заключаться во влиянии на рентабельность, доходы, затраты, оборот и ликвидность. Для того чтобы процент риска при принятии решения был максимально приближен к нулю, нужно подойти к его изучению со всех возможных сторон. Необходимо построение модели оптимизации решений одновременно по нескольким критериям, что усложняет задачу оптимизации, тем более, если проводить её вручную: число альтернатив может достигать очень большого значения. Поэтому появляется необходимость оптимизировать процесс принятия решения, который позволит сузить число предполагаемых альтернатив и облегчит задачу выбора оптимальной альтернативы лицу, принимаемому решение.
В данном курсовом проекте стоит задача о написании приложения для выбора оптимальной электронной книги. В приложении необходимо реализовать однокритериальную и многокритериальную оптимизацию.
Эта курсовая работа описывает задачи оптимизации и методы их решения необходимые для тех или иных видов деятельности, в частности в выборе оптимальной электронной книги.
1 АНАЛИЗ МЕТОДОВ ОДНОКРИТЕРИАЛЬНОЙ И МНОГОКРИТЕРИАЛЬНОЙ ОПТИМИЗАЦИИ
1.1 Основные понятия оптимизации проектных решений
Оптимизация в широком смысле слова находит применение в науке, технике и в любой другой области человеческой деятельности.
Термин «оптимизация» понимает под собой процесс улучшения характеристик схемы или системы, выполняемый с помощью аналитических, численных или экспериментальных средств до тех пор, пока дальнейшее улучшение окажется невозможным. С точки зрения инженерных расчетов методы оптимизации позволяют выбирать наилучший вариант конструкции, наилучшее распределение ресурсов.
В процессе решения задачи оптимизации обычно необходимо найти оптимальные значения некоторых параметров, определяющих данную задачу. При решении инженерных задач их принято называть проектными параметрами, а в экономических задачах их обычно называют параметрами плана.
Оптимизация осуществляется при помощи алгоритмов математического программирования и бывает структурной, параметрической и структурно-параметрической. В процессе структурной оптимизации оптимизируется структура объекта, в процессе же параметрической – оптимизируются параметры элементов, входящих в состав структуры. Эти задачи решаются при помощи алгоритмов дискретного, непрерывного и дискретно-непрерывного математического программирования, соответственно.
В зависимости от числа критериев, по которым выполняется оптимизация объекта, различают однокритериальную и многокритериальную оптимизацию.
По наличию ограничений на целевую функцию и рабочие параметры различают оптимизацию без ограничений и при наличии ограничений.
В случае параметрического синтеза при известной структуре объекта подбираются параметры элементов таким образом, чтобы минимизировать (максимизировать) целевую функцию.
Следует заметить, что существующие оптимизационные алгоритмы обычно не гарантируют нахождение глобального оптимума, но это не является критическим. Например, для увеличения вероятности нахождения глобального оптимума можно значительно увеличить число итераций, использовать несколько алгоритмов, многократно запускать соответствующие алгоритмы. Современные продвинутые системы автоматизированного проектирования имеют в своем составе модули параметрического синтеза и оптимизации, что, в свою очередь, оказывает немалую помощь человеку в процессе выбора решений.
2 РАЗРАБОТКА МАТЕМАТИЧЕСКОЙ МОДЕЛИ ЗАДАЧИ
2.1 Постановка задачи
Чтение до сих пор является одним из основных способов получения информации. Однако бумажные книги постепенно уступают место электронным, своим более технологичным аналогам. Поэтому задачей данной курсовой работы стало подобрать наиболее лучший, оптимальный вариант электронной книги. Отбор электронных книг производится по следующим параметрам: стоимость, число градаций серого, частота процессора, размер экрана, объем встроенной памяти, частота процессора и поддерживаемые форматы. В соответствии с вариантом задания на курсовой проект необходимо:
- разработать программное средство однокритериальной оптимизации выбора лучшего варианта электронной книги. В качестве параметра используется стоимость электронной книги, а оптимизация производится методом полного перебора;
- разработать программное средство многокритериальной оптимизации с учетом мнения двух экспертов. Для этого необходимо реализовать перевод качественных оценок в числовую форму по шкале Харрингтона, определить лучшую альтернативу методом экспертного анализа (метод Ранга), реализовать отбор бесперспективных альтернатив (множество Парето), определить лучшую альтернативу методом анализа иерархий.
2.2 Описание алгоритма решения задачи
Согласно варианту, поставленная задача должна решаться методом полного перебора для одномерной оптимизации. Рассмотрим основную суть данного алгоритма.
Метод перебора или равномерного поиска является простейшим из прямых методов минимизации. В сущности, перебор - это решение задач, возникающих из заданной, когда значение некоторого искомого параметра фиксируется различным образом, и производится выбор того из рассмотренных значений, которое дает наиболее подходящее решение.
Основная задача при реализации переборных методов заключается в нахождении такого порядка элементов перебора, при котором искомый элемент встретится как можно раньше.
Необходимо учесть, что сложность полного перебора зависит от количества всех возможных решений задачи. Если пространство решений очень велико, то полный перебор может не дать результатов в течение нескольких лет или даже столетий.
Для получения оптимального решения поставленной задачи при многокритериальной оптимизации необходимо реализовать ряд этапов.
3 РАЗРАБОТКА ПРОГРАММЫХ СРЕДСТВ ДЛЯ РЕШЕНИЯ ЗАДАЧИ
3.1 Реализация задачи на языке программирования
Разработка приложения выбора оптимальной электронной книги для студентов осуществлялась на языке программирования C#.
В результате было разработано оконное Windows-приложение, в состав которого входят пять Windows-форм и классов.
Каждый из классов имеет свой набор полей и методов. Рассмотрим основные из них поподробнее.
Класс Ebook – данный класс содержит данные о конкретных электронных книгах.
В состав этого класса входят поля:
- поле id_book – описывает id конкретной электронной книги;
- поле name – описывает название электронной книги;
- поле price_book – содержит данные о стоимости электронной книги;
- поле the_number_of_shade – содержит информацию о числе градаций серого;
- поле frequency – содержит информацию о частоте процессора заданной электронной книги;
- поле screen_size – содержит данные о размере экрана в пикселях;
- поле storage – содержит информацию об объеме встроенной памяти;
- поле format – содержит данные о поддерживаемых форматах.
Класс Sort – данный класс реализует обобщенный интерфейс Comparer<Ebook> и используется для метода сортировки по стоимости.
В состав этого класса входит метод:
- метод Compare – метод для сравнения двух объектов по стоимости.
Класс SortStorage – данный класс реализует обобщенный интерфейс Comparer<Ebook> и используется для метода сортировки по объему встроенной памяти.
В состав этого класса входит метод:
- метод Compare – метод для сравнения двух объектов по стоимости.
Класс MultiCriterial – класс, реализующий метод многокритериальной оптимизации.
В состав этого класса входят поля и методы:
- поле rang – матрица, хранящая оценки экспертов;
- поле price – матрица оценок стоимости;
- поле count – матрица оценок числа градаций серого;
- поле frequency – матрица оценок частоты процессора;
- поле sizescreen – матрица оценок размера экрана;
- поле storage – матрица оценок объема встроенной памяти;
- поле matrix – матрица, содержащая оценки по всем критериям;
- поле matrixPareto – матрица, содержащая оценки наиболее подходящих по всем критериям электронных книг;
- поле matrixResult – итоговая матрица результатов;
- поле ebook – содержит список всех электронных книг;
- метод matricaExperta – перевод оценок в безразмерный вид;
- метод transferList–дублирование списка книг;
- метод translate– получение оценок по каждому критерию;
- метод Pareto– реализация метода Парето;
- метод Finish – реализация метода анализа иерархий;
- метод Solve– реализация решения.
Класс Form1 – описывает пользовательский интерфейс и содержит методы для записи и чтения данных:
- метод Read_table – реализует чтение данных из источника данных;
- метод WriteTodataGridView – реализует запись данных в таблицу;
- метод button2_Click – реализует добавление новой записи в таблицу;
- метод button3_Click – реализует удаление записи из таблицы.
Таким образом, разработанные классы и windows-формы обеспечивают оптимальную работу приложения.
4 ВЕРИФИКАЦИЯ ПРОГРАММНЫХ СРЕДСТВ
Для проверки правильности работы приложения решим задачу многокритериальной оптимизации вручную. Для упрощения расчетов выберем четыре вида электронной книги. В таблице 4.1 представлены их характеристики.
ЗАКЛЮЧЕНИЕ
В заключение, к данному курсовому проекту можно сказать, что все поставленные задачи по одномерной и многомерной оптимизации в соответствии с заданием успешно решены.
Разработанное приложение позволит осуществить оптимальный выбор электронной книги для. Следует отметить, что выбранная электронная книга будет соответствовать всем параметрам, которые определены потребителем, в нашем случае заданием, и в случае необходимости параметры оптимизации можно отредактировать.
Приложение проверено на тестах, то есть, вручную проведена верификация результатов. Приложение может применяться для решения реальных практических задач.
В ходе выполнения курсового проекта более детально изучены и реализованы методы однокритериальной и многокритериальной оптимизации, такие как метод полного перебора, метод Ранга, метод анализа иерархий, метод выбора множества по Парето. Данная курсовая работа значительно расширила обзор в области принятия решения и показала, что даже в этой области может успешно применяться автоматизация, что немаловажно в нашем мире полном технологий, которые «должны» оправдывать затраты на них, тем самым делать жизнь, создавшего их человека, проще и качественнее.
Полученное приложение является широконаправленным, так как выбор оптимальной электронной книги может производиться для любого пользователя.
СКРИНШОТЫ РАБОТЫ


