Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Кудрявтсев Методы оптимизатсии 2015

.pdf
Скачиваний:
11
Добавлен:
12.11.2022
Размер:
1.51 Mб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ЯДЕРНЫЙ УНИВЕРСИТЕТ «МИФИ»

К.Я. Кудрявцев, А.М. Прудников

МЕТОДЫ ОПТИМИЗАЦИИ

Рекомендовано к изданию УМО «Ядерные физика и технологии»

Москва 2015

УДК 004.738.5(075) ББК 32.973.202я7 К88

Кудрявцев К.Я., Прудников А.М. Методы оптимизации: Учебное пособие. — М.: НИЯУ МИФИ, 2015. — 140 с.

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

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

Приводятся варианты лабораторных работ и список контрольных вопросов.

Предназначено для студентов кафедры «Информационные системы и технологии», изучающих курс «Методы оптимизации», а также для всех кому приходится решать оптимизационные задачи.

Подготовлено в рамках Программы создания и развития НИЯУ МИФИ.

Рецензент канд. техн. наук, доц. каф. «Новые материалы

итехнологии» Международного университета природы общества

ичеловека «Дубна» Г.И. Давидсон.

ISBN 978-5-7262-2128-1

 

© Национальный исследовательский

 

 

ядерный университет «МИФИ», 2015

 

Редактор Шумакова Е.Е.

Подписано в печать 20.11.2015. Формат 60х84 1/16.

Печ. л. 8,75.

Уч.-изд. л. 8,75. Тираж 70 экз.

Изд. № 1/19.

Заказ № 15.

Национальный исследовательский ядерный университет «МИФИ». 115409, Москва, Каширское ш., 31.

ООО «Баркас», 115230, Москва, Каширское ш., 4.

 

Оглавление

 

ГЛАВА 1. ПОНЯТИЕ ОПТИМИЗАЦИИ.............................

6

1.1

Исследование операций и методы оптимизации ................

6

1.2

Понятие оптимизации............................................................

7

1.2.1 Задача коммивояжера .....................................................

7

1.2.2 Задача размещения производства..................................

8

1.2.3 Построение математической модели ............................

9

1.3

Общий вид оптимизационной задачи ................................

10

1.4Особенности задачи математического программирования………………………………………………...11

1.5Классификация задач математического

программирования ..........................................................................

12

1.6

Классификация методов решения задач оптимизации....

12

1.7

Условия окончания поиска .................................................

14

ГЛАВА 2. НЕЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ...

15

2.1

Безусловная оптимизация функций одной переменной..

15

2.1.1 Пассивные методы поиска ...........................................

16

2.1.2 Последовательные методы поиска ..............................

19

2.1.3 Сравнение эффективности методов, сокращающих

 

ТИН ..............................................................................................

32

2.1.4 Методы полиномиальной аппроксимации .................

34

2.1.5 Методы, использующие производные ........................

37

2.2

Безусловная оптимизация функций многих переменных40

2.2.1 Основные понятия и определения...............................

40

2.2.2 Простейшие поисковые методы ..................................

43

2.2.3 Симплексные методы ...................................................

45

 

3

 

2.2.4 Градиентные методы ....................................................

51

2.2.5 Пример использования .................................................

56

2.3

Условная оптимизация функций многих переменных....

61

2.3.1 Основные понятия и определения...............................

61

2.3.2 Метод множителей Лагранжа......................................

62

2.3.3 Пример использования метода неопределенных

 

множителей Лагранжа ................................................................

66

2.3.4 Поиск условного экстремума при ограничениях–

 

неравенствах. Теорема Куна-Такера .........................................

66

2.3.5 Метод штрафных функций ..........................................

72

ГЛАВА 3. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ..........

73

3.1

Постановка задачи и основные определения ....................

73

3.2

Переход от общей к основной задаче линейного

 

программирования ..........................................................................

73

3.3

Существование допустимых решений ОЗЛП ...................

74

3.4

Геометрическая интерпретация ОЗЛП ..............................

76

3.5

Пример решения ОЗЛП с помощью геометрической

 

интерпретации.................................................................................

78

3.6

Некоторые свойства решений ОЗЛП. Особые случаи

 

решения ОЗЛП ................................................................................

80

3.7

Признак оптимальности опорного решения......................

83

3.8

Симплекс-метод решения задач линейного

 

программирования ..........................................................................

84

3.8.1 Теоретические основы симплекс-метода....................

84

3.8.2 Табличный симплекс-метод.........................................

87

3.8.3 Пример решения задачи симплекс-методом ..............

92

3.8.4 Отыскание опорного решения .....................................

95

3.8.5 Отыскание оптимального решения ...........................

102

 

4

 

3.8.6 Общий алгоритм решения ОЗЛП ..............................

106

3.9 Метод искусственного базиса...........................................

107

3.10 Двойственная задача линейного программирования ..

109

3.10.1 Теорема двойственности ..........................................

111

3.10.2 Основная теорема двойственности .........................

112

3.10.3 Другие теоремы двойственности.............................

112

3.10.4 Двойственный симплекс-метод ...............................

114

3.10.5 Обобщенный алгоритм двойственного симплекс-

 

метода.........................................................................................

115

3.10.6 Табличный алгоритм двойственного симплекс-

 

метода.........................................................................................

117

3.10.7 Пример использования двойственного симплекс-

алгоритма ...................................................................................

119

ГЛАВА 4. ЦЕЛОЧИСЛЕННОЕ ПРОГРАММИРОВАНИЕ…………………………………122

4.1

Метод отсечения Гомори ..................................................

122

4.2

Метод ветвей и границ ......................................................

125

ГЛАВА 5. ГЕНЕТИЧЕСКИЙ АЛГОРИТМ.....................

128

5.1

Основные определения генетических алгоритмов ........

128

5.2

Этапы работы генетического алгоритма .........................

129

5.3

Решение задачи коммивояжера с помощью генетического

алгоритма .......................................................................................

131

Контрольные вопросы............................................................

134

Список литературы.................................................................

136

Приложение 1..........................................................................

137

Приложение 2..........................................................................

138

 

5

 

ГЛАВА 1. ПОНЯТИЕ ОПТИМИЗАЦИИ

1.1 Исследование операций и методы оптимизации

Исследование операций – математическая дисциплина, занимающаяся построением, разработкой и применением математических моделей принятия оптимальных решений во всех областях че-

ловеческой деятельности [1].

Операция – это всякое мероприятие (система действий), объединенное единым замыслом и направленное к достижению какойто цели.

Пусть необходимо выполнить какое-либо мероприятие для достижения определенной цели (операцию). Обычно существует свобода выбора в том, как это мероприятие организовать (например, выбор техники, распределение ресурсов и т.д.). «Решение» – это какой-то выбор из ряда допустимых возможностей.

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

Наиболее известными методами исследования операций (являющимися, зачастую, самостоятельными математическими дисциплинами) являются:

математическое программирование – теория и методы решения задач о нахождении экстремумов функций на множествах векторного пространства, определяемых линейными и нелинейными ограничениями (равенствами и неравенствами)

[2].Присутствие в названии термина «программирование» объясняется тем, что первые исследования оптимизационных задач были в сфере экономики, а в английском языке слово «programming» означает планирование, составление планов или программ;

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

6

марковские процессы – метод решения стохастических задач, где процесс принятия решений можно представить конечным числом состояний;

теория игр – методы изучения оптимальных стратегий в играх. Теория игр помогает выбрать лучшие стратегии с учетом представлений о других участниках, их ресурсах и их возможных поступках [3];

теория массового обслуживания (теория очередей) – раздел теории вероятностей, целью исследований которого является рациональный выбор структуры системы обслуживания и процесса обслуживания на основе изучения потоков требований на обслуживание, длительности ожидания и длины очередей;

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

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

1.2 Понятие оптимизации

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

1.2.1 Задача коммивояжера

Дано некоторое количество городов и расстояния между ними. Коммивояжер должен посетить каждый город и вернуться к месту отправления. Какой маршрут он должен выбрать? Зададим расстояния между городами (допустим, их пять) в виде следующей таблицы:

7

 

1

2

3

4

5

 

 

 

 

 

 

1

1

7

2

8

 

 

 

 

 

2

2

10

3

1

 

 

 

 

 

3

7

10

2

6

 

 

 

 

 

4

2

3

2

4

 

 

 

 

 

58 1 6 4

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

Маршрут 5→1→2→3→4→ 5, расстояние 8+1+10+2+4 = 25.

Маршрут 5→2→1→4→3→5, расстояние 1+1+2+2+6 = 12.

Каким же образом (исключая полный перебор) следует выбрать кратчайший маршрут?

1.2.2 Задача размещения производства

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

Существуют два крайних решения.

Можно разместить только один завод; в этом случае производственные затраты будут минимальны, но станут максимальными затраты на доставку продукции потребителям (транспортные затраты).

Можно разместить большое количество заводов (рядом с каждым потребителем); в этом случае транспортные затраты будут минимальны, но станут максимальными производственные затраты.

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

Cобщ = Cпроизв + Cтрансп → min.

8

.

1.2.3 Построение математической модели

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

1.Определение неизвестных параметров (элементов решения).

2.Выражение условий задачи через введенные на первом шаге неизвестные.

3.Выбор критерия оптимальности.

Попробуем выполнить описанные выше шаги для построения математической модели задачи размещения производства (см. раздел 1.2.2).

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

ство

 

1,

 

1,

 

менные

– объем перевозимой продукции с i-го завода j-му по-

требителю; здесь

 

– количество заводов,

 

– количе-

 

 

 

 

потребителей.

Теперь выразим условия задачи через эти переменные:

1.

Очевидно, что количество перевозимой продукции не мо-

2.

жет быть отрицательно:

.

 

 

 

 

Если обозначить

 

0

 

 

 

 

ния) продукции j-м потребителем через bj,

то на объем пе-

 

ревозок можно

наложить

ограничение

 

 

(не

 

следует везти к потребителю продукции

больше, чем он за-

 

 

 

 

казывает).

 

 

 

 

 

3.

Если обозначить известные нам удельные транспортные за-

 

траты на перевозку изделий от i-го завода j-му потребителю

через cij, то можно составить уравнение для транспортных затрат:

4.Если обозначить известную нам стоимость производства на i-ом заводе (которая, вообще говоря, зависит от объемов

9

производства) через fi(xi), то можно составить уравнение

для производственных затрат:

.

Осталось выбрать критерий оптимальности, однако это мы уже сделали в п. 1.2.2: суммарные затраты должны быть минимальны.

Таким образом, в результате формализации задачи мы построили ее математическую оптимизационную модель следующего вида:

min

 

 

 

при ограничениях

1,2 … ; 1,2 … .

0

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

1.3 Общий вид оптимизационной задачи

В общем виде задача математического программирования ста-

вится следующим образом [4]:

 

(1.1)

 

, , … ,

 

найти максимум (минимум) функции

 

 

 

, , … , 1,2 …

 

(1.2)

 

0 1,2 …

при ограничениях

 

 

 

 

 

10

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]