2629
.pdfМинистерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Пермский национальный исследовательский политехнический университет»
С.Ф. Тюрин
ИССЛЕДОВАНИЕ ОПЕРАЦИЙ
Утверждено Редакционно-издательским советом университета
в качестве учебного пособия
Издательство Пермского национального исследовательского
политехнического университета
2015
1
УДК 621.399 Т89
Рецензенты:
канд. техн. наук С.В. Березняков (ОАО «СТАР», г. Пермь);
д-р техн. наук, проф. Ю.Н. Хижняков (Пермский национальный исследовательский политехнический университет)
Тюрин, С.Ф.
Т89 Исследование операций: учеб. пособие / C.Ф. Тюрин. – Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2015. – 178 с.
ISBN 978-5-398-01509-6
Изложен материал по основным методам решения задач оптимизации и теории игр с использованием системы компьютерной математики «Маткад».
Предназначено для студентов специалитета и магистрантов, изучающих дисциплину «Исследование операций».
УДК 621.399
ISBN 978-5-398-01509-6 |
© ПНИПУ, 2015 |
2
ОГЛАВЛЕНИЕ |
|
Предисловие...................................................................................... |
5 |
Введение............................................................................................ |
6 |
1. Теоретико-множественные и автоматные модели |
|
исследования операций.................................................................... |
9 |
1.1. Множество Парето............................................................... |
9 |
1.2. Автоматные модели и их минимизация........................... |
10 |
1.3. Модель логического элемента ПЛИС FPGA ................... |
24 |
1.4. Моделирование и минимизация автомата |
|
в системе схемотехнического моделирования |
|
NI Multisim 10 фирмы National Instruments |
|
Electronics Workbench Group ............................................. |
28 |
2. Комбинаторные модели исследования операций.................... |
37 |
2.1. Комбинаторные вычисления. |
|
«Проклятие» размерности ................................................. |
37 |
2.2. Задача SAT, P и NP, NP – полные алгоритмы................. |
38 |
2.3. Комбинаторные модели контроля и диагностики. |
|
Минимизация контрольного и диагностического |
|
теста логического элемента ПЛИС FPGA........................ |
42 |
3. Линейное программирование.................................................... |
51 |
3.1. Задача линейного программирования.............................. |
51 |
3.2. Графическое решение задачи |
|
линейного программирования........................................... |
52 |
3.3. Симплекс-метод решения задачи |
|
линейного программирования........................................... |
55 |
3.4. Табличный симплекс-метод решения |
|
задачи линейного программирования .............................. |
60 |
3.5. Решение задачи линейного программирования |
|
в СКМ «Маткад»................................................................. |
66 |
3.6. Двойственная задача линейного программирования...... |
67 |
3.7. Решение транспортной задачи |
|
как задачи линейного программирования........................ |
71 |
3.8. Целочисленное линейное программирование................. |
73 |
3
4. Дискретная оптимизация........................................................... |
76 |
4.1. Метод ветвей и границ....................................................... |
79 |
4.2. Задача о рюкзаке или ранце (Knapsack problem)............. |
80 |
4.3. Венгерский метод............................................................... |
82 |
4.4. Алгоритм имитации отжига.............................................. |
83 |
4.5. Задача коммивояжёра ........................................................ |
85 |
4.6. Градиентный метод............................................................ |
86 |
4.7. Динамическое программирование.................................... |
87 |
5. Теория игр (Game theory). Решение игр................................... |
90 |
5.1. Понятие о теории игр......................................................... |
90 |
5.2. Игра «красные» и «синие» ................................................ |
94 |
5.3. Статистические игры....................................................... |
101 |
5.4. Равновесие Нэша.............................................................. |
103 |
5.5. Пари Паскаля.................................................................... |
106 |
5.6. Граф марковской цепи..................................................... |
108 |
5.7. Программный продукт Windchill Quality Solutions....... |
111 |
6. Элементы теории расписаний (Scheduling theory) |
|
и сетевого планирования ............................................................. |
125 |
6.1. Диаграммы Ганта (Gantt chart)........................................ |
128 |
6.2. Задачи «Машины-работы» .............................................. |
130 |
6.3. Сетевой график................................................................. |
134 |
6.4. Программный продукт Microsoft Project........................ |
138 |
6.5. Использование программного |
|
продукта GRaph INterface (GRIN)................................... |
140 |
6.6. Понятие о логистике........................................................ |
142 |
7. Общие сведения об экспертных системах ............................. |
144 |
8. Метод анализа иерархий.......................................................... |
146 |
8.1. Определение весовых коэффициентов........................... |
149 |
8.2. Согласованность и допустимая |
|
согласованность матрицы сравнений............................. |
152 |
9. Понятие о принятии решений в условиях неопределённости |
|
с помощью пакета «Fuzzy logic toolbox» СКМ «МАТЛАБ» .... |
156 |
10. Задача о разборчивой невесте............................................... |
163 |
Заключение ................................................................................... |
166 |
Список литературы....................................................................... |
167 |
Приложение .................................................................................. |
172 |
4
ПРЕДИСЛОВИЕ
Учебное пособие предназначено для студентов, обучающихся по по направлению 220400 «Управление в технических системах», магистерская программа 22040051.68 «Распределённые компьютерные информационно-управляющие системы ».
Данное учебное пособие предполагается использовать совместно с книгами: 1) Тюрин С.Ф., Аляев Ю.А. Дискретная математика: практическая дискретная математика и математическая логика. – М.: Финансы и статистика, 2010; 2) Тюрин С.Ф., Ланцов В.М. Дискретная математика & математическая логика.– Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2013; 3) Тюрин С.Ф. Надёжность систем автоматизации: учеб. пособие. – Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2012; 4) Надежность систем управления. Руководство к лабораторным ра-
ботам в системе Windchill Quality Solutions 10.0 / сост. C.Ф. Тю-
рин, М.С. Сторожев. – Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2014.
Возможно, пособие будет полезным и для аспирантов при проведении научных исследований, а также для студентов и магистров других направлений и специальностей.
5
ВВЕДЕНИЕ
Исследование операций (ИО, operations research – OR, management science, MS – наука управления) – дисциплина, занимающаяся разработкой и применением методов нахождения оптимальных решений [1].
Операция – мероприятие (система действий), объединённое единым замыслом и направленное к достижению какой-то цели. Операция всегда является управляемым мероприятием, т.е. зависит от человека, каким способом выбрать параметры, характеризующие её организацию (в широком смысле, включая набор технических средств, применяемых в операции).
В военной области, которая одна из первых в годы Второй мировой войны стала использовать методы исследования операций, операциитаки называются: например, операция«Багратион».
Решение – определённый набор зависящих от человека параметров.
Оптимальное решение – решение, которое по тем или другим признакам предпочтительнее других.
Цель исследования операций – предварительное количест-
венное обоснование оптимальных решений с опорой на некоторый показатель эффективности.
Само принятие решения выходит за рамки исследования операций и относится к компетенции ответственного лица – лица, принимающего решения (ЛПР).
Задачей оптимизации в математике является нахождение экстремума (минимума или максимума) действительной функции в некоторой области. Иногда такие задачи называют экстремальными [2].
Задача линейного программирования (linear programming problem) состоит в максимизации или минимизации некоторого линейного функционала (целевой функции) на многомерном пространстве при заданных линейных ограничениях. Причём переменные функционала должны быть неотрицательными.
6
В противоположность задачам оптимизации с непрерывными переменными переменные в задачах дискретного программирования принимают только дискретные значения, например, целочисленные или даже булевы (0,1).
Дискретное программирование (дискретная оптимиза-
ция) – раздел математического программирования, использующий, кроме прочего, и методы комбинаторики.
Оптимизационные задачи широко распространены не только в математике, но и в технике, информатике, экономике и в других сферах.
Оптимизация в технике – процесс нахождения наилучшего решения какой-либо технической задачи при заданных условиях, ограничениях и критериях. При этом необходимо применять системный подход. Любая такая задача должна рассматриваться не локально, а глобально – с точки зрения влияния на критерии функционирования технической системы в целом.
Критерий (гр. kriterion) – признак, основание, мерило оценки чего-либо. Например, критерий оптимальности [3,4].
Критерий оптимальности – характерный показатель решения задачи, по значению которого оценивается оптимальность найденного решения, т.е. максимальное удовлетворение поставленным требованиям.
Показатель – в нашем случае обобщённая характеристика какого-либо объекта или процесса, выраженная в численной форме.
Часто говорят о показателях эффективности. Эффектив-
ность – свойство систем, характеризующее ее способность выполнять задачи по назначению.
Широко используется показатель «эффективность/стоимость» – такой показатель учитывает и эффективность, и стоимость, чем выше эффективность при той же стоимости, тем выше показатель.
Примером технико-экономической оптимизационной задачи может быть обеспечение надёжности технической системы – оптимизируется показатель надёжности системы при ограниче-
7
нии на стоимость системы (один из соответствующих ГОСТ- 27.002–89 «Надежность в технике Основные понятия. Термины и определения») [4, 5].
При выборе более дешёвых технических средств и методов снижается стоимость затрат на обеспечение надёжности, но увеличивается ненадёжность – снижается вероятность безотказной работы.
Поэтому возможно:
1.Максимизировать показатель надёжности при непревышении заданной стоимости (затрат).
2.Достигать заданного значения показателя надёжности при минимизации затрат.
В годы Второй мировой войны исследование операций ши-
роко применялось для планирования боевых действий. Спе-
циалисты по исследованию операций работали в командовании бомбардировочной авиации США, дислоцированном в Великобритании. Были выработаны рекомендации, приведшие к четырёхкратному повышению эффективности бомбометания.
По окончании Второй мировой войны возникает тенденция
кприменению методов исследования операций в коммерческой деятельности в целях реорганизации производства, перевода промышленности на мирные рельсы. На развитие математических методов исследования операций в экономике ассигнуются миллионы долларов.
ИО активно используют армии и правительства многих так называемых развитых стран для решения комплексных задач снабжения армий, развития новых видов вооружений, стратегий войн, межгосударственных торговых механизмов, прогнозирования развития (например, климата) и т.д.
8
1.ТЕОРЕТИКО-МНОЖЕСТВЕННЫЕ
ИАВТОМАТНЫЕ МОДЕЛИ ИССЛЕДОВАНИЯ ОПЕРАЦИЙ
1.1. Множество Парето
Во многих задачах выбора наилучшего решения при проектировании распределенных компьютерных информационноуправляющих систем используются теоретико-множественные и автоматные модели.
При оценке системы по нескольким показателям (при так называемой многокритериальной оптимизации) часто нет возможности выбрать решение, которое превосходило бы остальные по всем показателям. В этом случае анализируется частичный порядок, заданный на множестве приемлемых вариантов A, и выбор ограничивается теми вариантами, для которых не существует доминирующего их варианта (остаются несравнимые варианты).
Итальянский экономист Вильфредо Парето (1848–1923 гг.) предложил использовать в таких задачах конструкцию, которая в его честь называется границей Парето (Pareto frontier) [6].
Подмножество PF множества A называется его границей Парето для частичного порядка U, если любые два элемента PF не сравнимы, а любому другому элементу из A предшествует какой-либо элемент из PF.
На рис. 1.1 множество A состоит из жирно выделенных точек на
плоскости. Одна точка предшествует другой, если обе ее координаты не меньше соответствующих координат другой, а хотя бы одна из координат строго больше. В этом случае граница Парето состоит из точек, выкрашенных в красный цвет.
9
Рис. 1.1. Пример множеств Парето и Парето-оптимизации
Оценка по Парето применяется и тогда, когда оценивают эффективность сложных и дорогостоящих систем по нескольким вариантам ориентировочного проектирования.
1.2.Автоматные модели и их минимизация
1.2.1.Эквивалентность автоматов. Теорема Мура
Висследовании операций применительно к системам управления широко используются автоматные модели и их минимизация. Рассмотрим основные понятия и теоретико-множественные модели, используемые в этом случае.
Цепочки входных символов
Пусть ∑ – алфавит, конечное множество входных символов Х автомата [7].
* – множество цепочек из алфавита ∑. Будем использо-
вать символ пустой цепочки , не содержащей символов. Введем операцию конкатенации (склеивания) цепочек: . Тогда
ааb bа=ааbаb. Знак конкатенации часто не указывают. Цепочки обычно обозначают малыми греческими буквами: α,β,ν…
10