МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

204
2007 Б.А. ЕСИПОВ МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ. КОНСПЕКТ ЛЕКЦИЙ САМАРА

Transcript of МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Page 1: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

2007

Б.А. ЕСИПОВ

МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ.

КОНСПЕКТ ЛЕКЦИЙ

САМАРА

Page 2: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА»

Б. А. ЕСИПОВ

МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ.

Конспект лекций.

Утверждено Редакционно-издательским советом университета в качестве учебного пособия

С А М А Р А Издательство СГАУ

2007

УДК 681.3.07 ББК 32.973.26-018.2.75 ?К218

Инновационная образовательная программа "Развитие центра компетенции и подготовка специалистов мирового уровня в области аэрокосмических и геоинформационных технологий”

Рецензенты: докт. техн. наук, профессор А.Н.Коварцев канд. физ-мат. наук, доцент Е.Я.Горелова

?К218 Есипов Б.А. Методы оптимизации и исследование операций.

Конспект лекций: учеб. пособие / Б.А.Есипов,. –Самара: Изд-во Самар. гос. аэрокосм. ун-та, 2007. – 90 с. : ил. ???ISBN 5-94774-0003-6 В учебном пособии дано краткое изложение основных методов

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

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

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

Подготовлено на кафедре «Информационные системы и технологии» Самарского государственного аэрокосмического университета.

УДК 681.3.07 ББК 32.973.26-018.2.75

?ISBN 5-94774-0003-6 © Есипов Б.А., 2007

© Самарский государственный аэрокосмический университет, 2007

ПРИО

РИТЕТНЫЕ

Н

АЦИ ОНА Л ЬНЫ

Е ПРОЕКТЫ

Page 3: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Учебное издание

Есипов Борис Алексеевич

МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ.

КОНСПЕКТ ЛЕКЦИЙ

Учебное пособие

Редактор а Компьютерная верстка Доверстка

Подписано в печать _________г. Формат 60х84 1/16. Бумага офсетная. Печать офсетная.

Усл. печ. л. ____. Усл. кр.-отт. ____. Уч.-изд.л. ____ . Тираж ____ экз. Заказ _______ . Арт. С- ____/2007

Самарский государственный аэрокосмический университет.

443086 Самара, Московское шоссе, 34.

Изд-во Самарского государственного аэрокосмического университета.

443086 Самара, Московское шоссе, 34.

Page 4: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА»

Б. А. ЕСИПОВ

МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Конспект лекций

Утверждено Редакционно-издательским советом университета в качестве учебного пособия

С А М А Р А Издательство СГАУ

2007

ОпределеЗаголовок Перед: 12

Page 5: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

2

УДК 681.3.07 ББК 32.973.26-018.2.75 К218

Инновационная образовательная программа «Развитие центра компетенции и подготовка специалистов мирового уровня в области аэрокосмических и геоинформационных технологий»

Рецензенты: докт. техн. наук, профессор А.Н. Коварцев

докт. физ-мат. наук, профессор С.Я. Шатских

К218 Есипов Б.А. Методы оптимизации и исследование операций. Конспект лекций: учеб. пособие / Б.А.Есипов. – Самара: Изд-во Самар. гос. аэрокосм. ун-та, 2007. – 180с., 68 рис., 57 табл.

ISBN 5-94774-0003-6

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

Предназначено для студентов специальностей «Прикладная матема-тика и информатика», «Автоматизированные системы обработки инфор-мации и управления», а также аспирантов и специалистов, интересующих-ся методами оптимизации и исследования операций.

Подготовлено на кафедре «Информационные системы и технологии» Самарского государственного аэрокосмического университета.

УДК 681.3.07 ББК 32.973.26-018.2.75

ISBN 5-94774-0003-6 © Есипов Б.А., 2007

© Самарский государственный аэрокосмический университет, 2007

ПРИО

РИТЕТНЫЕ

Н

АЦИО НА Л ЬНЫ

Е ПРОЕКТЫ

Page 6: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

3

Оглавление

Введение ..............................................................................................................6 1. Методология системного анализа и исследование операций........................7

1.1. Системный анализ, система, оптимизация ..........................................7 1.2. Схема операционного проекта .............................................................8 1.3. Особенности математического моделирования операций ............... 11 1.4. Постановка задачи исследования операций в детерминированном

случае и в условиях неопределенности............................................ 12 1.5. Пример математического моделирования операции (задача о

краске)................................................................................................ 13 2. Линейное программирование (ЛП)............................................................... 16

2.1. Общая и основная задачи ЛП............................................................. 17 2.2. Геометрическая интерпретация задачи ЛП ....................................... 19 2.3. Идея симплекс-метода решения задачи ЛП ...................................... 21 2.4. Симплекс-таблица, стандартный алгоритм симплекс-

преобразования .................................................................................. 23 2.5. Алгоритм отыскания опорного решения задачи ЛП......................... 25 2.6. Алгоритм отыскания оптимального решения задачи ЛП ................. 26 2.7. Алгоритм получения первого базисного решения с

использованием симплекс – процедуры (метод искусственного базиса) ................................................................................................ 29

2.8. Вырожденная задача ЛП .................................................................... 31 2.9. Двойственная задача ЛП .................................................................... 32

3. Транспортные задачи (ТЗ)............................................................................. 35 3.1. Математическая модель ТЗ по критерию стоимости........................ 35 3.2. Нахождение опорного плана транспортной задачи .......................... 36 3.3. Оптимизация плана ТЗ, распределительный метод .......................... 38 3.4. Метод потенциалов решения ТЗ ........................................................ 40 3.5. Решение ТЗ с неправильным балансом ............................................. 43 3.6. ТЗ по критерию времени, типы критериев ........................................ 45

4. Дискретное программирование .................................................................... 48 Особенности задач дискретного программирования............................... 49 4.2. Примеры моделей задач дискретного программирования ............... 50

4.2.1. Задача о покрытии ..................................................................... 54 4.2.2. Задача о коммивояжёре ............................................................. 54 4.2.3. Задача о раскрое материала....................................................... 55 4.2.4. Задача о ранце ............................................................................ 58

4.3. Алгоритм решения задачи о ранце .................................................... 58 4.4. Решение задач ЛЦП методом отсечений Гомори ............................. 61 4.5. Метод ветвей и границ (МВГ) ........................................................... 66

Page 7: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

4

4.6. Алгоритм МВГ для задачи ЛЦП........................................................ 68 4.7. Алгоритмы решения задач булевского программирования ............. 72

5. Динамическое программирование (ДП)....................................................... 78 5.1 Принцип оптимальности Р.Беллмана ................................................. 79 5.2. Решение графовых задач на основе принципа Беллмана ................. 81 5.3. Функциональное уравнение Беллмана .............................................. 82 5.4. Задачи распределения ресурсов......................................................... 84

5.4.1. Классическая задача распределения ресурсов ......................... 84 5.4.2. Неоднородные этапы и распределение ресурсов по n

отраслям..................................................................................... 85 5.4.3. Распределение ресурсов с резервированием ............................ 85 5.4.4. Распределение ресурсов с «вложением доходов».................... 87

5.5. Расширение модели задач динамического программирования........ 89 5.6. Пример решения задачи распределения ресурсов ............................ 91 5.7. Эффективность динамического программирования......................... 94

6. Нелинейное программирование.................................................................... 95 6.1. Особенности задач нелинейного программирования ....................... 95 6.2. Прямые методы одномерной оптимизации нелинейных функций

без ограничений ................................................................................ 97 6.3. Градиентные методы многомерной оптимизации ............................ 99

6.3.1. Классический градиентный метод .......................................... 100 6.3.2. Покоординатный метод ........................................................... 101 6.3.3. Метод наискорейшего спуска и его модификации ................ 101

6.4. Метод деформируемого многогранника Нелдера-Мида ................ 101 6.5. Задача НЛП с ограничениями-равенствами .................................... 103 6.6. Выпуклое НЛП ................................................................................. 106 6.7. Теорема Куна-Таккера для выпуклого НЛП ................................... 108 6.8. Квадратичное программирование.................................................... 109 6.9. Методы возможных направлений.................................................... 114 6.10. Метод проекции градиента ............................................................ 118 6.11. Методы штрафных и барьерных функций .................................... 121 6.12. Метод скользящего допуска .......................................................... 127

7. Особенности современной теории принятия оптимальных решений ...... 130 7.1. Общая постановка задачи принятия решения................................. 131 7.2.Классификация задач принятия решений ........................................ 133 7.3. Многокритериальная оптимизация ................................................. 135 7.4. Определение множества Парето ...................................................... 138 7.5. Методы условной многокритериальной оптимизации ................... 140

8. Игровые модели принятия решений........................................................... 144 8.1. Основные понятия теории игр ......................................................... 144 8.2. Платежная матрица антагонистической игры, принцип

минимакса........................................................................................ 145 8.3. Решение игр в смешанных стратегиях ............................................ 147

Page 8: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

5

8.4. Упрощение игр и аналитическое решение игр 2×2......................... 148 8.5. Геометрическое решение игр ........................................................... 150 8.6. Решение игр со многими стратегиями на основе метода

линейного программирования ........................................................ 153 8.7. Биматричные игры............................................................................ 155 8.8.Кооперативные игры ......................................................................... 156

9. Элементы теории статистических оптимальных решений ....................... 159 9.1. Принятие решений при известных априорных вероятностях ........ 160 9.2. Методы принятия решений в условиях априорной

неопределенности............................................................................ 162 9.3. Планирование эксперимента при принятии решений .................... 163 9.4. Многоэтапное принятие решений.................................................... 165

10. Экспертные процедуры для принятия решений....................................... 169 10.1. Общая схема экспертизы................................................................ 169 10.2. Задача оценивания .......................................................................... 170 10.3. Подготовка экспертизы .................................................................. 170 10.4. Методы обработки экспертной информации ................................ 171 10.5. Метод Делфи для численной оценки ............................................. 173 10.6. Строгое ранжирование ................................................................... 174 10.7. Нестрогое ранжирование................................................................ 175 10.8. Метод попарных сравнений ........................................................... 176

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

Page 9: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

6

ВВЕДЕНИЕ Одним из главных направлений деятельности специалиста в любой сфере

является совершенствование существующих и создание новых изделий, сис-тем или технологий: создание лучших машин, экономное расходование ре-сурсов, сокращение сроков строительства и т.д.

Обычно та или иная цель может быть достигнута разными путями, но всегда важно знать наилучший из них, так как в реальных условиях прихо-дится считаться с ограниченностью материальных ресурсов и времени, рас-ходуемых на достижение цели. Понятие «лучший» начинает что-либо озна-чать тогда, когда назван количественный показатель или критерий качества принимаемого решения. Например, изделие А лучше изделия В с точки зре-ния затрат материала; система С лучше системы D по показателю надежно-сти и т.п.. Вот почему получение наилучших вариантов возможно только при количественном описании предметной области, т.е. на основе математиче-ской модели.

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

Большой вклад в развитие методологии исследования операций и мето-дов оптимизации внесли российские и зарубежные ученые: Л.В.Канторович, Л.С.Понтрягин, Н.Н.Моисеев, Дж. Данциг, Г.Кун и А.Таккер, Р.Беллман, Р.Гомори и многие другие.

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

Page 10: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

7

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

1.1. Системный анализ, система, оптимизация

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

Оказалось: 1) в сложных системах взаимосвязь между элементами играет большую

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

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

были образованы группы по исследованию военных операций в армии США и Англии во время второй мировой войны.

К этому времени, во-первых, был накоплен опыт применения математи-ческих методов для моделирования и решения некоторых задач экономики (В.Леонтьев, Л.В.Канторович), была теоретически обоснована возможность решения задач большой размерности на ЭВМ. Позже были созданы первые образцы таких машин. Совпали необходимость и возможность. Возникли но-вые идеи совершенствования организационных систем на основе математи-ческой теории игр (Нейман – Моргенштерн). Методология, сформулирован-ная тогда и вобравшая в себя все научные достижения в области изучения сложных систем, оказалась применимой не только к боевым операциям, но и к другим сферам. Но термин «исследование операций» остался. Системный (операционный) подход – основа для изучения и совершенствования слож-ных систем. Применительно к специалистам - инженерам в области приме-нения математики и информационных технологий в промышленности иссле-дование операций формирует определенную технологию совершенствования существующих и создания новых систем как технических, так и организаци-онных.

Система – множество элементов с определенными способами взаимодей-ствия между ними, которые все вместе выполняют цель системы.

Процесс – все, что происходит в системе. Система работает, значит в ней происходит процесс.

Операция – часть процесса, которая наделена свойствами всей системы. Операция – это управляемое мероприятие, выполняющее определенную цель, сопоставимую с целью всей системы. Например, операция составле-

Page 11: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

8

ния расписания учебных занятий для учебного процесса в системе «уни-верситет».

При исследовании сложных организационных систем: 1) невозможен экспериментальный метод исследования; 2) невозможно описание поведения систем только на основе какой–

либо естественнонаучной теории; 3) при описании таких систем количество факторов, которые необ-

ходимо учитывать, велико. Поэтому очевидно, что такие системы невозможно моделировать, изу-

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

1.2. Схема операционного проекта

Весь комплекс работ по изучению и совершенствованию системы (опе-рации) проводит операционная группа системных аналитиков. Этот проект проводится в интересах лица, принимающего решения (ЛПР). ЛПР может отвергнуть проект, а может принять. На рис.1 изображена примерная схема этапов операционного проекта.

Рис. 1

1. Фикса-ция сим-птомов

проблемы

2. Опре-деление тенден-ции

3. Формулировка проблемы

4. Качественный системный анализ

5. Количест-венный

системный анализ

6. Матема-тическое

моделирование

7. Решение на модели

8. Проверка решения на корректность

9. Подготовка документов

удовл.

не удовл.

ЭВМ

Методы оптимизации

ЛПР

Page 12: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

9

Дадим краткую характеристику этапов операционного исследования. 1. В самом общем случае поводом для изучения и совершенствования

системы служат зафиксированные симптомы, обнаруживающие проблемные вопросы в работе системы.

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

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

4.Качественный системный анализ – это расщепление целостной систе-мы (операции) на отдельные элементы (сущности). Для этого нужно:

- выделить изучаемую систему (операцию) из вышестоящей системы (операции);

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

шенствовать систему (операцию). 5.Количественный системный анализ предполагает описать все перечис-

ленные факторы, которые участвуют в операции на количественном уровне, т.е. на основе измеримых параметров. Для этого:

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

- вводятся количественные внутренние параметры системы, которые из-меряют факторы, участвующие в описании системы (операции);

- все множество этих параметров необходимо разбить на две части: а) неуправляемые параметры (константы), которые мы в данной кон-

кретной системе (операции) менять не можем (производитель-ность, нормы расхода материалов и т.п.), их обозначают как коэф-фициенты А = (а1, а2, …, ак);

б) управляемые параметры (переменные) – величины, которые мы мо-жем менять Х = (х1, х2, …, x n).

6. Суть математического моделирования – установление количественных связей между введенными величинами К, А, и X в виде так называемой опе-рационной модели.

Первая часть операционной модели - это модель целевой функции, она устанавливает функциональную зависимость критерия К от неуправляемых параметров А и управляемых величин X в виде K = f(X, A). f – может быть функция, заданная аналитически, таблично или алгоритмом. В ряде практи-ческих задач в качестве элементов множества X выступают функции. В этом случае f - функционал. Задачи такого рода называются вариационными и в данном пособии не рассматриваются. Для целевой функции указывается на-правление улучшения критерия

Page 13: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

10

K = f(X, A) → min(max). (1.1)

Этим выражением и определяется смысл оптимизации системы (операции). Вторая часть операционной модели – математическое описание ограни-

чений на выбор переменных Х. Все ограничения в общем виде можно запи-сать в виде неравенств (равенств):

φi(X, A) ≤ 0, 1,i m= . (1.2)

Каждая функция φi(X, A) называется функцией ограничения. В некото-рых задачах имеются требования на сам вид переменных Х или К.

.X DK M∈ ⎫

⎬∈ ⎭ (1.3)

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

Модель в виде 1.1, 1.2, 1.3 – модель операционного вида или оптимиза-ционная модель (неоптимизационная – без целевой функции).

Модель 1.1, 1.2, 1.3 позволяет поставить задачу оптимизации системы (операции) как математическую задачу: найти такие управляемые перемен-ные Х, которые удовлетворяли бы системе ограничений 1.2, 1.3 и обеспечи-вали бы наилучшее значение критерия К.

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

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

9.Найденное оптимальное решение X* позволяет подготовить управ-ляющее решение в форме документа для ЛПР.

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

Page 14: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

11

анализа и исследования операций как науки. Исследование операций (ИСО) - это наука о количественном обосновании оптимальных решений на основе по-строения и использования математической модели. К сожалению, процесс пере-вода на количественное описание сложных систем и операций не является тех-нологией. Математическая модель может получиться удачной или неудачной для получения практических решений. Вот почему знаменитый операционист Томас Саати иронично определил науку «Исследование операций» как « искус-ство давать плохие советы в тех практических случаях, в которых другие науки ничего не могут посоветовать».

1.3. Особенности математического моделирования операций

Математическое моделирование – самый сложный этап ИСО. Математи-ческая модель – это такое описание системы, которое позволяет специалисту выполнить цель исследования и оптимизации системы. Для одной и той же системы можно построить различные модели, чтобы выявить различные свойства: например аэродинамическая модель, прочностная модель и т.д. Модель должна быть адекватной реальной задаче, т.е. решения, полученные в рамках построенной модели, должны обладать такими же свойствами, что и реальная система.

К сожалению, не существует какого-либо алгоритма, по которому необ-ходимо создать модель. Можно руководствоваться лишь принципами моде-лирования:

1. Необходимо решить вопрос размерности модели. Если число парамет-ров увеличить, то мы более точно отобразим реальное событие, но в модели будет трудно выявить основные свойства (наиболее значимые). Задача ста-новится необозримой и может не иметь решения. Поэтому число перемен-ных по возможности стараются уменьшать, оставляя главные, существенные. Но уменьшая число переменных, мы можем опустить существенные, и мо-дель становится неадекватной.

2. Модель зависит от точности, с которой нужно получить решение. 3. Модель зависит от того, насколько мы знаем исходные данные. 4. Подход к построению модели может быть двояким: 4.1.Создание оригинальной модели (не учитывая предыдущей модели в

этой области), т.е. разработка «с чистого листа». Это может дать, а может не дать хороший результат. Преимущество: «свежий взгляд на вещи», нет чу-жих ошибок. Но это может быть дороже и потребует большого времени.

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

- модель линейного программирования (ЛП); - модель динамического программирования; - игровые модели;

Page 15: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

12

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

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

1.4. Постановка задачи исследования операций в детерминированном случае и в условиях неопределенности

Если в операционной модели

( , ) min(max)K f X A= → (1.4)

( , ) 0, 1,i X A i mϕ ≤ = (1.5)

все неуправляемые переменные А – заранее точно известные величины (const), а f – детерминированная функция, то такая модель называется детер-минированной.

В некоторых задачах это не выполняется. Среди неуправляемых перемен-ных есть такие

Z=(z1, z2, …, zl),

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

K=f(X, A, Z).

K меняется не только с изменением Х и задача на максимум K становится некорректной.

В этом случае ставится задача выбора такой критериальной величины, которая менялась бы только от Х.

В простейшем случае, когда f – линейная функция, можно искусственно свести задачу к детерминированной, заменив Z на M[Z], т.к. в этом случае

M[K] = f(X, A, M[Z]).

Это же можно сделать, если f слабо меняется от Z. Но в общем случае это не так. В общем случае усреднение проводят по всем правилам:

1 1[ ] .. ( .. ) ( , , ) ..l ll ø ò óê

M K z z f X A Z dz dzθ= ⋅∫∫ ∫ max,

где функция θ - плотность распределения вероятностей величин Z. Вид целевой функции после такого преобразования существенно услож-

няется. Поэтому усложняется задача отыскания решения.

Page 16: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

13

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

Для демонстрации существа операционного подхода рассмотрим простой пример.

Содержательное описание задачи Для окраски помещения необходимо купить 15 кг краски. Эту краску

можно купить в банках двух типов: по 1,5 кг, стоимостью 10 рублей каждая, или банках весом 0,9 кг, стоимостью 8,5 рублей. Для перевозки используется ящик, в который может уместиться 8 банок первого типа или 25 банок второ-го типа.

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

Необходимо дать графическую интерпретацию решения. Сравнить с ре-шением, которое получится, если банка краски первого типа будет стоить 17 рублей.

Решение Обозначим x1 - количество банок первого типа, x2 - количество банок

второго типа. Так как количество купленной краски не должно быть меньше 15 кг, то 1 21,5 0,9 15x x+ ≥ .

Каждая банка первого типа занимает 1/8 объема ящика, а второго 1/25 часть, поэтому ограничение на объем ящика можно выразить следующим

образом: 1 21 1 18 25

x x+ ≤ .

Стоимость покупки обозначим L, она равна 1 210 8,5 minL x x= + → . Получаем задачу, принадлежащую к классу задач линейного программи-

рования (ЛП):

1 2

1 2

1 2

10 8,5 min;1,5 0,9 15;1 1 1.8 25

L x xx x

x x

⎧ = + →⎪⎪ + ≥⎨⎪

+ ≤⎪⎩

(1.6)(1.7)(1.8)

Если банки вскрывать нельзя, то необходимо добавить ограничения:

1x и 2x - целые (1.9)

Задача 1.6, 1.7, 1.8, 1.9 – это задача линейного целочисленного програм-мирования (ЛЦП).

Если количество переменных в задачах ЛП и ЛЦП большое, то их необ-ходимо решать с использованием специальных алгоритмов (которые мы изу-

Page 17: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

14

чим) и компьютерных программ. В нашем случае – две переменные, следо-вательно, можно использовать простое геометрическое решение.

Рассмотрим равенства (1.7) и (1.8). 1 21,5 0,9 15x x+ = - уравнение прямой линии.

Делим на 15 правую и левую части уравнения: 1 2 110 16,6x x+ = .

Это каноническое уравнение прямой. Построим его (рис.2).

Рис. 2.

Уравнение (1.8) имеет вид 1 21 1 18 25

x x+ = .

Проверяя допустимость какой-нибудь точки для неравенств (1.7) и (1.8), например, точки (0; 0), определяем область допустимых решений, удовле-творяющих (1.7) и (1.8).

Изобразим линию постоянного уровня целевой функции L=const. возь-мем, например, L=170, получим уравнение прямой 1 2170 10 8,5x x= + .

Приведем его к канонической форме и построим 1 2 117 20x x+ = .

Убеждаемся, что если L → min, то эта прямая движется параллельно са-мой себе к началу координат. Оптимальной точкой будет точка выхода этой прямой из области допустимых решений.

.

.

.

. .

. . .

25

17

10

8 4 10

Х2

Х1

С

В А

L=170

Область допустимых решений

Целое оптимальное решение

Оптимальное решение

Отформширине,строка:

Отформвыделен

Page 18: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

15

Очевидно, что точка А является оптимальной для случая, когда банки можно вскрывать (x1 и x2 могут быть нецелыми), а точка В – оптимальная точка для целого решения.

Найдем координаты точки А, решив совместно уравнения (1.7) и (1.8):

1 2

1 2

1,5 0,9 15;1/ 8 1/ 25 1.

x xx x+ =⎧

⎨ + =⎩

Получим * * *1 25,8; 7,1; 118,35.x x L= = =

Заметим, что «округленное» решение x1=6; x2=7 не является допустимым. Оптимальное решение, которое является последним при выходе прямой

L, находим из целых допустимых. Это точка В с координатами x1=4; x2=10; L=125.

Если стоимость банки краски первого типа повысится до 17 рублей, то целевая функция будет 1 217 8,5 minL x x= + → .

Построим прямую для L=170. 1 2 110 20x x+ = .

Очевидно, что оптимальная точка будет в точке С: x1=0; x2=16,6. Целое оптимальное решение будет x1=0; x2=17; L’=144,5.

Ответ: 1) Если банки можно вскрывать, то необходимо взять − 5,8 банок первого типа; − 7,1 банок второго типа, стоимость L*=118,35. 2) Если банки вскрывать нельзя, то необходимо взять − 4 банки первого типа; − 10 банок второго типа, стоимость L=125. 3) Если стоимость банки первого типа станет 17 рублей, то оптималь-

ное решение изменится: x1=0; x2=17; L’=144,5.

Page 19: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

16

2. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ (ЛП) ЛП - наиболее распространенный и хорошо изученный раздел исследования

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

применил математическую модель задачи ЛП для экономики (1939 г.). Впо-следствии, в 1947 г. американец Джон Данциг разработал алгоритм решения этой задачи. С этого момента ЛП стало основным методом в системном ана-лизе и в первую очередь в задачах экономики. В 1975г. Л.В. Канторович по-лучил Нобелевскую премию как основоположник ЛП.

Задача ЛП – такая задача исследования операций, когда целевая функция и все функции ограничений линейны, а все переменные – действительные числа:

max)(min1∑=

→=n

jjj xcL ,

mibxan

jijjij ,1,

1=≤∑

=

,

njRx j ,1, =∀∈ .

Пример: Задача о диете. Имеются четыре вида продуктов П1, П2, П3, П4. Известна стоимость каж-

дого продукта с1, с2, с3, с4. В рационе должно быть белков не менее b1; жиров не менее b2; углеводов не менее b3 . Известно удельное содержание каждого вещества в единице продукта. Необходимо рассчитать рацион, содержащий необходимое количество полезных веществ и при этом, чтобы стоимость всего рациона была минимальной. Построим математическую модель:

j – номер продукта ; i – номер вещества; aij – удельное количество в j – м продукте i – го вещества (например, а23 =30г/кг). Введем величину хj – количество j-го продукта в рационе (управляемая

переменная), величины сj, аij, bi неуправляемые параметры – константы. Вы-берем критерий L – общая стоимость рациона.

Тогда целевая функция и ограничения имеют вид

L=с1х1+с2 х2+с3 х3+с4 х4 → min, (2.1)

Page 20: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

17

а11 х1+а12 х2+а13 х3+а14 х4 ≥ b1 ,

а21 х1+а22 х2+а23 х3+а24 х4 ≥ b2, (2.2)

а31 х1+а32 х2+а33 х3+а34 х4 ≥ b3.

Математически эту задачу можно сформулировать так: найти такие зна-чения х1, х2, х3, х4, чтобы они удовлетворяли системе линейных неравенств и при этом линейная функция L была бы минимальной. В компактном виде это можно записать:

4

1minj j

jL c x

=

= →∑ , (2.3)

, 1, ( 1,3)ij j jj

a x b i m i≥ = =∑ , (2.4)

0≥jx . (2.5)

Термин ЛП буквально означает линейное планирование.

2.1. Общая и основная задачи ЛП

Моделируя реальную задачу, мы можем получить задачу ЛП с некото-рыми особенностями:

1) в одном случае L → min , в другом- L → max; 2) в ограничениях могут быть знаки: ≥ , ≤ , = , > , < ; 3) переменные могут быть любыми (как положительными, так и отрица-

тельными). Рассмотрим стандартную (основную) форму задачи ЛП, будем сокра-

щенно называть ее ОЗЛП. В ней: 1) целевая функция минимизируется: L → min; 2) ограничения только равенства; 3) все переменные неотрицательны: jjx ∀≥ ,0 . Любую задачу ЛП в общем виде можно привести к ОЗЛП, для чего необ-

ходимо выполнить следующие действия: 1. Если L → max, необходимо ввести L׀ = – L , тогда если L → max, то

L ׀ → min, и при этом arg min L ׀ = arg max L. 2. Чтобы привести неравенство к равенству, необходимо

- перенести все части неравенства в одну сторону (ту, которая ≥ 0); - полученную функцию обозначить новой дополнительной перемен-ной, которая ≥ 0;

Это обозначение является равенством, эквивалентным неравенству.

Удалено:

Удалено:

Удалено:

Page 21: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

18

Пример:

1 2 3

1 2 3

2 4,3 .

x x xx x x

− + ≥≤ +

.

Введем дополнительные переменные 0,0 21 ≥≥ yу :

1 1 2 3

2 2 3 1

2 4,3 ,

y x x xy x x x= − + −= + −

1

2

0,0.

yy≥≥ У

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

3. Пусть xk – переменная с любым знаком. Представим ее разностью двух положительных переменных. Тогда, если вместо xk подставить разность

///ккk ххх −= , то остаются только неотрицательные переменные:

Пример: 1 2 3

1 2 3

3 max,2 3,

L õ õ õõ õ õ= − + →+ − ≤

1 2

1 2 3

,0; 0,

x xx x x ëþ áî å≥≥ ≥ −

1. 1 2 3' 3 minL L õ õ õ= − = − + − → ,

2. 1 1 2 3

2 1 2

3 2 ,,

y х х хy х х= − − +

= −

3. 3 4 5х х х= − . Получили ОЗЛП: 1 2 4 5' 3 minL õ õ õ õ= − + − + → ,

1 1 2 4 5

2 1 2

3 2 ,,

y х х х хy х х= − − + −

= −

0),,,,,( 215421 ≥yyхххх .

Таким образом, ОЗЛП в общем виде можно записать так:

minj jL c х= →∑ , (2.6)

, 1,i j j iа х b i m= =∑ , (2.7)

0, 1,jх j n≥ ∀ = . (2.8)

Page 22: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

19

В матричном виде: СX min , AX=B, X>=0. Известно, что система линейных уравнений (СЛУ) (2.7) совместна, когда

ранг матрицы А равен рангу АВ; A = aij, B = bi. Но допустимыми реше-ниями задачи ЛП являются не все, а только ≥ 0 решения, т.к. должно выпол-няться (2.8). Если m = n, то может быть только одно решение; если m < n, то может быть бесчисленное множество решений, но таких, которые удовле-творяют системе (2.7). Эти точки образуют так называемую область допус-тимых решений (ОДР).

2.2. Геометрическая интерпретация задачи ЛП

Рассмотрим частный случай n-m=2. Тогда m переменных выбираются базисными, а (n – m) – свободными. Рассмотрим такую систему, где

1 2

3 4

,, ,..., n

х х свободныех х x базисные

3 31 1 32 2 3

4 41 1 42 2 4

1 1 2 2n n n n

õ õ õõ õ õ

õ õ õ

α α βα α β

α α β

= + + ⎫⎪= + + ⎪⎬⎪⎪= + + ⎭

K (2.9)

1 1 2 2 0 minL х хγ γ γ= + + →

Рассмотрим (2.9).

Пусть x3=0,

03232131 =++ βαα хх – уравне-ние прямой. Значит для x3>0 точки лежат по одну сторону от этой пря-мой. Покажем это штриховкой. Аналогично для других равенств (2.9). Очевидно, точки, где все штриховки пересекаются, и есть ОДР (рис. 3).

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

Рис 3.

Рассмотрим теперь целевую функцию L:

Пусть 1 1 1 2 2 1 0:L C õ õ Cγ γ γ= + = − - уравнение прямой,

Page 23: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

20

Точки на прямой L = C2 лучше, чем L = C1 (в области), т.к. они дают меньшее значение целевой функции.

Оптимальное решение получается в точке выхода линии уровня целевой функции L (точка А) из ОДР. Отсюда ясно, что в задаче ЛП внутри ОДР не может быть оптимальной точки.

Выводы из геометрической интерпретации ОЗЛП. 1) ОЗЛП не обязательно имеет

решение (рис. 4). Нет допустимого решения.

Рис. 4

2) ОДР всегда выпуклый много-угольник (рис. 5):

Рис. 5

3) Если есть допустимое реше-

ние, то не обязательно есть опти-мальное решение. ОДР может быть открытой, в этом случае оптималь-ной точки может не быть, если це-левая функция изменяется, как по-казано в I (движемся в открытую область). Но если область открыта, то это не значит, что нет оптималь-ного решения. Для целевой функ-ции II оптимальное решение нахо-дится в точке А (рис. 6).

Рис. 6

4) В задаче может быть бес-

численное множество оптималь-ных решений. Оптимальное реше-ние будет в любой точке АВ (рис. 7).

Рис. 7

Page 24: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

21

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

6) Если n-m=2, т.е. в ОЗЛП две свободные переменные. Тогда, чтобы по-пасть в вершину, можно приравнять к нулю две свободные переменные.

7) Если взять две переменные

равными нулю (рис. 8), то мы мо-жем попасть в недопустимую вер-шину (точка 1).

Точка 1: ((х3=0) и (х5=0)). Чтобы перейти в соседнюю вер-шину (точка 2), нужно вместо x5 =0 взять x4=0, а x5 не равно нулю. Получаем точку 2 ((х3=0) и (х4=0)). Допустимую вершину на-зовем опорной.

Рис. 8

Рассмотрим случай, когда n – m = 3.

4 41 1 42 2 43 3 4х х х хα α α β= + + + …

4

4

0 ,0 .

х плоскостьх полупространство= −≥ −

Тогда ОДР – выпуклый многогранник. 0 1 1 2 2 3 3L х х xγ γ γ γ= + + + –> min - целевая функция (при L= const – плос-

кость). Допустимые решения находятся во внутренних точках многогранника, а

оптимальное, очевидно, может находиться только в вершине многогранника в точке «последнего» касания плоскости – целевой функции и многогранни-ка, где пересекаются 3 плоскости, т.е. 3 переменных равны нулю.

Если в общем случае n – m = k, то у задачи k свободных переменных. Следовательно, нужно искать оптимальное решение там, где k переменных равны нулю. Т.к. в вершине в особом случае может пересекаться и большее число плоскостей, то в оптимальной точке ≥ k переменных должны быть равны нулю. Заметим, что это является необходимым условием оптимально-го решения для задачи ЛП.

2.3. Идея симплекс-метода решения задачи ЛП Рассмотрим ОЗЛП, где базисные переменные xk+1,…,xn разрешены отно-

сительно свободных x1,x2,…,xk . Например:

Отформатвыделение

Отформатвыделение

Отформат

Отформат

Отформатвыделение

Отформатвыделение

Отформат

Отформат

Page 25: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

22

1 2

1 1 2 3

2 1 2 3

1 2 3

2 3 ... 5 6 min,2 3 ... 6 4,

... 7 7,.....

2 2 3 ... 2.

k

k k

k k

n k

L x x xx x x x xx x x x x

x x x x x

+

+

= + + + + →= + − + + +

= − + + + −

= + − + + +

(х1=х2=…хk=0) – вершина, при этом базисные переменные хk+1=4, хk+2= - 7, хn= 2. В ОЗЛП все переменные должны быть ≥0, следовательно, эта вершина

недопустима. Признаком недопустимости вершины является наличие отри-цательных свободных членов в ограничениях равенствах. Если отрицатель-ный свободный член есть, то надо перейти в другую вершину, для чего одну базисную переменную сделать свободной и приравнять к нулю, а какую-то свободную превратить в базисную. Следовательно, переход из одной верши-ны в другую осуществляется путем замены базисной переменной на свобод-ную. Это называется симплекс-преобразованием. Если мы будем переходить из вершины в вершину «в сторону ОДР», то за конечное число таких перехо-дов попадем в допустимую вершину. Назовем ее опорной вершиной, а соот-ветствующее решение опорным решением.

Пусть получено опорное решение, например, для следующей задачи. Проверим, оптимально оно или нет.

3 1 2

4 1 2

1 2

1 2 3 4

2 ,4 ,

3 2 min,0; 2; 4; 3.

x x xx x xL x xx x x x L

= + −

= − += + − →= = = = =

Видно, что если все коэффициенты при свободных переменных в целе-вой функции положительны, то никакие увеличения свободных переменных от 0 вверх не уменьшают L, следовательно, это L является оптимальным зна-чением. Если же есть отрицательные коэффициенты при свободных пере-менных (в нашем примере при x2), то ее надо сделать базисной, т.к. если она будет положительной, то L будет меньше. Но х2 может увеличиваться не бесконечно, так как в ограничениях есть отрицательный коэффициент при x2. Видно, что увеличивать x2 можно только до х2=2, так как в противном случае х3 будет отрицательным, а это невозможно. Так мы нашли базисную пере-менную x3 , которую надо поменять со свободной x2. Поиск этой пары для симплекс-преобразования и является основным элементом симплекс-метода.

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

Page 26: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

23

1) Алгоритм перехода из одной вершины в другую, когда известна пара пре-образования. Он пересчитывает коэффициенты системы уравнений для нового базиса. Назовем его алгоритмом симплекс-преобразования.

2) Алгоритм нахождения такой пары преобразования, чтобы при переходе в новую вершину мы приближались к ОДР. Это алгоритм отыскания опорного решения.

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

стандартной вершины (все свобод-ные переменные равны нулю), т.е. с точки 1 (это недопустимая вершина, смотри рисунок 9). Дальше последо-вательно переходим из одной вер-шины в другую (2,3) и попадаем в опорную вершину 4.

Рис. 9

Найдя опорное решение, мы движемся по вершинам ОДР так, чтобы це-левая функция улучшалась, и при этом эти вершины были опорными (5 и 6 –оптимальная).

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

2.4. Симплекс-таблица, стандартный алгоритм симплекс-преобразования

Существует много форм симплекс–таблиц (СТ). Мы рассмотрим наибо-лее компактную форму, в которой строки – базисные переменные, а столбцы свободные переменные. Каждая СТ содержит коэффициенты модели задачи ЛП.. Для записи СТ необходимо представить ОЗЛП в стандартной форме:

0 1 1 2 2( ... )k kL х х хγ γ γ γ= − + + + ,

1 1 11 1 12 2 1( ... )k ky b х х a хα α= − + + + ,

2 2 21 1 22 2 2( ... )k ky b х х a хα α= − + + + , …

1 1 2 2( ... )n n n n nk ky b х х a хα α= − + + + . т.е. на первом месте свободный член, а коэффициенты при свободных пере-менных меняют знак.

Page 27: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

24

Пример: 1 32 4L x x= − + ,

1 1 2 3

2 1 2 3

2 ,3 1,

y x x xy x x x= + += + − +

3 1 22 2y x x= − − . Стандартная форма:

1 2 34 ( 2 0 1 )L x x x= − − + + ,

1 1 2 3

2 1 2 3

0 ( 2 1 1 )1 ( 3 1 1 )

y x x xy x x x= − − − −

= − − − +,

3 1 2 32 ( 2 1 0 )y x x x= − − − + − . Записываем коэффици-

енты этой формы в левый верхний угол соответст-вующей клетки СТ. В ниж-ней части будем писать про-межуточные результаты вы-числений (табл. 1).

Каждое решение, соот-ветствующее CТ выглядит так: свободные = 0, базис-ные = свободным членам.

Таблица 1

1 x1 x2 x3 4 -2 0 1 L 0 0 0 0 0 -2 -1 -1 y1 -1 3 -1 -1 1 -3 -1 1 y2 -1 3 -1 -1

-2 -2 1 0 y3 1 -3 1 1

1 2 3

1 2 3

0;0; 1; 2;

x x xy y y= = =

= = = −

L=4.

Рассмотрим порядок вычислений для перехода в новую вершину. Пусть нам необходимо выполнить симплекс-преобразование xi ↔ xj.

Тогда нужно получить новую симплекс-таблицу. Для этого выполним ал-горитм.

Алгоритм 1:

1. Отыскиваем в СТ элемент αij и объявляем его генеральным. Тогда i-я строка и j-й столбец – генеральные.

2. Вычисляем величину, обратную генеральному элементу, и записываем ее в нижней части генеральной клетки:

Page 28: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

25

1

ijaλ = .

3. Все элементы генеральной строки умножаем на λ. Результат записываем в нижней части соответствующих клеток.

4. Все элементы генерального столбца умножаем на -λ. Результат записы-ваем в нижней части клеток.

5. Отмечаем верхние элементы генеральной строки и нижние элементы генерального столбца.

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

7. Переписываем СТ, заменяя в соответствии с табл. 2:

Таблица 2

1 x1 x2 x3 L 4 -2 0 1 y1 -1 1 -1 -2 y2 -1 3 -1 -1 y3 -1 -5 1 1

• обозначение базисной переменной xi обозна-чением свободной переменной xj и наоборот;

• элементы генеральной строки и генерального столбца нижними элементами;

• все оставшиеся элементы суммой нижнего и верхнего числа. В приведенных СТ показано преобразование

y2 ↔ x2.

2.5. Алгоритм отыскания опорного решения задачи ЛП

Этот алгоритм выполняется сразу после записи симплекс-таблицы. Алгоритм 2:

1. Просматриваем столбец свободных членов (не смотря на свободный член строки L). Если все свободные члены ≥0, то данная таблица уже соответ-ствует опорному решению, иначе переходим к п. 2.

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

3. Столбец с найденным отрицательным элементом объявляем генеральным. 4. В генеральном столбце фиксируем элементы, имеющие такой же знак,

что и знак соответствующих свободных членов, и среди них в качестве генерального элемента выбираем тот, отношение к которому соответст-вующего свободного члена минимально:

ОтформатОтступ: Сл 14,2 пт, инпт, маркирУровень: 10 пт + Табупт + ОтстуПоз.табуляВыровнятьтабуляции

ОтформатОтступ: Пепт, без нумПоз.табуля

Page 29: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

26

min ,i

iij

ba

⎛ ⎞⎜ ⎟⎜ ⎟⎝ ⎠

знак bi = знак αij.

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

бодных членов должно уменьшаться или должна уменьшаться их абсолют-ная величина.

Примечание к пункту 2: Задача ЛП не имеет решения, когда соответствующая строка СТ имеет,

например, вид: 4 1 2 31 (2 4 )y x x x= − − + + , которая не удовлетворяется ни при каких неотрицательных переменных.

2.6. Алгоритм отыскания оптимального решения задачи ЛП

Этот алгоритм выполняется после того, как найдено опорное решение, то есть когда в симплекс-таблице все свободные члены ≥ 0.

Алгоритм 3: 1) Просматриваем элементы строки L (несмотря на свободный член). Если

все элементы ≤0, то данная симплекс-таблица уже соответствует опти-мальному решению, иначе переходим к п. 2.

2) В строке L выбираем наибольший положительный элемент и соответст-вующий столбец объявляем генеральным.

3) В генеральном столбце находим положительные элементы. Если таких нет, то задача не имеет оптимального решения, иначе переходим к п. 4.

4) Среди положительных элементов генерального столбца выбирается тот, отношение к которому соответствующего свободного члена минимально:

min ,i

iij

ba

⎛ ⎞⎜ ⎟⎜ ⎟⎝ ⎠

bi≥0, αij >0.

5) По выбранному генеральному элементу осуществляем симплекс-преобразование (алгоритм 1) и переходим к п. 1. Примечание к пункту 2: Если в генеральном столбце нет положительных элементов, то задача не

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

Схема алгоритмов решения задач ЛП показана на рис. 10:

Page 30: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

27

Рис. 10

Пример:

Решить задачу ЛП L= х1+х2→max; х2≤х1+2; х2≥1; х1≤4; (х1,х2)≥0. Решение: Приведем задачу к ОЗЛП:

L’= -х1-х2→min; L’= 0 - (х1 + х2);

у1= х1-х2+2; у1= 2 - (- х1 + х2);

у2= х2-1; у2= -1 - (0х1 - х2);

у3= 4-х1; у3= 4 - (х1 + 0х2).

ОЗЛП

Симплекс- таблица

Алгоритм отыскания

опорного решения

Алгоритм симплекс-

преобразования

Нет допустимого решения

Получено опорное решение

Алгоритм отыскания

оптимального решения

Алгоритм симплекс-

преобразования

Нет оптимального решения

Получено решение

Page 31: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

28

Таблица 3

1 Х1 Х2

0 1 1 L’ -1 0 12 -1 1 У1 -1 0 1-1 0 -1 У2 1 0 -14 1 0 У3 0 0 0

Таблица 4

1 Х1 У2

-1 1 1 L’ -4 -1 0 1 -1 1 У1 4 1 0 1 0 -1 Х2 0 0 0 4 1 0 У3 4 1 0

2/1=2; -1/-1=1(min)

В таблице 4 получено опорное решение: х1=у2=0,

y1=1, х2=1, y3=4, L’= -1.

В таблице 4 выполняем алгоритм отыскания оптимального решения:

Таблица 5

1 У3 У2

-5 -1 1 L’ -5 -1 -15 1 1 У1 5 1 11 0 -1 Х2 5 1 14 1 0 Х1 0 0 0

Таблица 6

1 У3 У1

-10 -2 -1 L’ 5 1 1 У2 6 1 1 Х2 4 1 0 Х1

В таблице 6 получено оптимальное решение:

у3 = у1= 0, у2= 5, х2= 6, х1= 4, L’= -10, Lmax= 10.

Так как в данной задаче всего две свободных переменных, то можно рас-смотреть ее геометрически на плоскости (рис. 11).

Page 32: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

29

Так как у1=0, у3=0, то решение находится в точке, в которой вы-полняются равенства: х1-х2+2=0 и 4 -х1 = 0.

На рисунке 11 показана по-следовательность перехода от вершины к вершине в соответст-вии с работой алгоритма сим-плекс-метода. Цифрами обозначе-ны соответствующие симплекс-таблицы.

Рис. 11

2.7. Алгоритм получения первого базисного решения с использованием симплекс – процедуры

(метод искусственного базиса)

Выше было показано, что алгоритмы симплекс-метода требуют, чтобы исходная система ограничений-равенств была приведена к базису, т.е. какие-нибудь базисные переменные должны быть выражены через свободные. Ока-зывается, что первый базис можно так же получить, используя алгоритм сим-плекс-метода. Для этого для каждого ограничения-равенства вводится искус-ственная переменная zi (i=1,m). Каждое ограничение-равенство

βi - (gi1⋅ x1 + ... + gin⋅ xn) = 0

формально записывается так:

zi =βi - (gi1⋅ x1 + ... + gin⋅ xn), i=1,m ,

т.е. переменные zi тождественно равны нулю. Последнее равенство опреде-ляет так называемый искусственный базис.

Вводим в рассмотрение дополнительную целевую функцию

Lo = z1 + z2 + ... + zm → min ,

для чего суммируем коэффициенты при переменных xj всех равенств zi и по-лучаем ОЗЛП, готовую для решения симплекс-методом.

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

Пример. Пусть исходную задачу ЛП мы привели к форме ОЗЛП и полу-

чили систему ограничений-равенств

Page 33: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

30

x1 + 2 x2 = 4

x1 - x2 + 2 x3 = 2

Найдем первый базис, т.е. разрешим базисные переменные (их всего бу-дет 2) относительно свободных (n-m=3-2=1). Для этого запишем

z1 = 4 - (x1 + 2 x2),

z2 = 2 - (x1 - x2 + 2 x3), (2.10)

Lo = z1 + z2 = 6 - (2 x1 + x2 + 2 x3) → min.

Запишем симплекс-таблицу

Таблица 7

1 X1 X2 X3 6 2 1 2 L0 -4 -2 2 -4 4 1 2 0 Z1 -2 -1 1 -2 2 (1) -1 2 Z2 2 1 -1 2

В таблице 7 находим генеральный элемент по алгоритму нахождения оп-

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

Таблица 8

1 X2 X3 2 3 -2 L0 -2 -1 2 2 (3) -2 Z1 2/3 1/3 -2/3 2 -1 2 Х1 2/3 1/3 -2/3

В таблице 8 находим генеральный элемент и пару z1 ↔ x2, переходим к

таблице 9.

Отформпольский

Отформпольский

Отформпольский

Отформпольский

Отформпольский

Отформпольский

Отформпольский

Отформпольский

Page 34: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

31

Таблица 9

1 X3

0 0 L 2/3 -2/3 X2 8/3 4/3 X1

Таблица 9 соответствует оптимальному решению вспомогательной зада-

чи (2.10) и дает выражение базисных переменных x1, x2 относительно сво-бодной переменной x3, а именно:

x2 = 2/3 + 2/3x3;

x1 = 8/3 - 4/3x3.

Теперь можно приступать к выполнению симплекс-алгоритма, записав вместо строки Lo целевую функцию задачи, выраженную через свободные переменные. Чтобы такая запись получалась автоматически можно в таблицу 7 кроме строки Lo записать строку целевой функции исходной ОЗЛП и вы-полнять описанный выше алгоритм, помня, что генеральный элемент не мо-жет быть ни в строке Lo, ни в строке ЦФ.

2.8. Вырожденная задача ЛП При использовании симплекс-метода некоторые свободные члены могут

быть равны нулю. Это значит, что в вершине, которой соответствует CТ, равны нулю не k переменных, а больше (равна нулю и базисная). В этом слу-чае при выборе генерального элемента отношение bi/aij будет минимальным именно для этой строки. Ясно, что соответствующую свободную перемен-ную увеличить никак нельзя и целевая функция при переходе в новую вер-шину не меняется, т.к. мы остаемся фактически в этой же вершине, хотя формально перешли в новую.

Такая задача называется вырожденной задачей. Вырождение отрица-тельно сказывается на эффективности вычисления. Признаком вырожденно-сти является равенство 0 некоторых свободных членов. В этом случае может произойти 2 отрицательных явления: 1. «Пробуксовка». Переходим в новую вершину, где равна нулю другая со-

вокупность переменных, а на самом деле остаемся в той же точке. Зна-чение ЦФ не меняется.

Page 35: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

32

2. «Зацикливание» алгоритма. Через некоторое количество операций мы можем прийти к первоначальной таблице, следовательно, если алгоритм не менять, то зацикливаемся. Существует несколько способов борьбы с зацикливанием:

• Использование степени свободы алгоритма. Например, если в алгоритме сказано: «берем первый по порядку…» - то, если обнаруживается зацик-ливание, можно взять «второй по порядку». Аналогично, если сказано «берем любой…».

• «Зашумление» коэффициентов задачи ЛП. Прибавляем матрицу малых случайных величин к матрице А. Получаем А + ξ, где А – матрица коэф-фициентов; ξ – матрица очень малых случайных величин. Тогда матрица коэффициентов СТ не будет содержать одинаковых чисел и после вы-числений появление нулей будет маловероятным. Подробнее этот слож-ный вопрос освещен в специальной литературе.

2.9. Двойственная задача ЛП

Важным вопросом анализа полученного решения ЛП является анализ чувствительности решения к параметрам модели (коэффициентам целевой функции, свободным членам ограничений, коэффициентам аij). Теория этого вопроса тесно связана с так называемой двойственной задачей ЛП. Двойст-венная задача ЛП получается из прямой и она имеет физический смысл, ко-гда прямая задача – задача об использовании ресурсов. Имеются ресурсы m типов в количестве b1, … bm. Для изготовления одного изделия j – го типа расходуется aij сырья i-го типа. Каждое j – е изделие продается по цене сj. Ставится задача максимизации стоимости проданных изделий.

1max,

n

j jj

L c x=

= →∑ (2.11)

1, 1,

n

ij j jj

a x b i m−

≤ =∑ , (2.12)

0,jx j≥ ∀

Можно рассмотреть эту проблему по-другому. Пусть некоторые величи-ны ∆i – стоимости единицы i – го ресурса. Нужно определить эти стоимости так, чтобы выполнялись неравенства, выражающие то, что стоимость затра-ченного ресурса на j – е изделие была бы не меньше стоимости изделия и при этом общие затраты на ресурсы были минимальны.

1

* min,m

i ii

L b=

= Δ →∑ (2.13)

Page 36: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

33

1, 1,...,

m

ij i ji

c j nα=

Δ ≥ =∑ (2.14)

Задача (2.13), (2.14) называется двойственной по отношению к задаче (2.11), (2.12) Она получается из прямой (2.11), (2.12) так: коэффициенты це-левой функции двойственной задачи – это правые части прямой задачи и на-оборот; а коэффициенты aij – суммируются по другому индексу (матрица ко-эффициентов двойственной задачи это транспонированная матрица прямой задачи). Направление оптимизации целевой функции меняется на противо-положное.

Основное свойство задачи ЛП: оптимальные значения целевой функции прямой и двойственной задачи ЛП совпадают:

∑ ∑= =

Δ==n

j iiijjопт bxcL

1 1

***

Оптимальное решение задачи ЛП находится в седловой точке:

max L по хj = min *L по ∆i.

Существует и двойственный симплекс–метод решения задачи ЛП, кото-рый в ряде случаев эффективнее прямого [1, 10].

Экономический смысл двойственной задачи: какова цена единицы каж-дого ресурса ∆i, чтобы при заданных количествах ресурсов bi и стоимости единицы продукции сj обеспечить минимум общей стоимости затрат.

∆i называется двойственной оценкой или теневой ценой. Если решение прямой задачи найдено, то ∆i – есть коэффициенты, стоящие в строке L в по-следней оптимальной CТ.

Если ∆i > 0, то она показывает, насколько увеличивается значение целе-вой функции прямой задачи, если соответствующие запасы сырья i – го типа увеличиваются на единицу.

Соответствующая дополнительная переменная yi при этом равна нулю. Это означает, что i – е ограничение выполняется точно (как равенство) и весь ресурс bi тратится полностью.

При малом изменении коэффи-циентов модели оптимальное реше-ние задачи ЛП не меняется, такое свойство называется устойчивостью. На рисунке 12 показано, что для ЦФ1 решением является точка А, для ЦФ3 *(при малом изменении ко-эффициентов cj) также точка А, а для ЦФ2 решением уже будет точка В.

Рис. 12

Page 37: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

34

Существуют специальные программы, которые позволяют проанализи-ровать пределы изменения коэффициентов cj , при которых оптимальное ре-шение не изменяется, а значение целевой функции меняется. Аналогично проводится анализ по правым частям bi.

Современные алгоритмы ЛП способны с использованием современных компьютеров решать задачи ЛП очень большой размерности. Многие из них учитывают архитектуру компьютера.

Наиболее широко известны блочные методы ЛП. При большой размер-ности матрица А будет содержать много нулей. В этом случае задачу мож-но решать по блокам. Вот почему параметрами сложности решаемой зада-чи ЛП являются: число переменных, число ограничений и число ненулевых коэффициентов ограничений. Число итераций симплекс- метода, за которое находится решение в большей степени зависит от числа ограничений. Со-временные программы ЛП имеют удобный интерфейс, позволяющий моде-лировать и решать небольшие задачи в удобной «математической» или табличной форме. Для решения задач ЛП большой размерности использу-ются режимы работы с крупными базами исходных данных. Например, программа LINDO, а также приложение «Поиск решения» (SOLVER) про-граммы Microsoft EXCEL.

Page 38: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

35

3. ТРАНСПОРТНЫЕ ЗАДАЧИ (ТЗ)

3.1. Математическая модель ТЗ по критерию стоимости

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

Постановка транспортной задачи: Имеется m пунктов А1…Аm отправления, в каждом из которых сосредо-

точено определенное количество груза (a1…am). Груз однородный, величина ai называется запасом. Имеются n пунктов назначения B1…Bn, где требуется количество груза (b1…bn); величина bi - заявка. Известна стоимость перевоз-ки cij - из i – го пункта в j – й пункт.

Требуется так перевезти грузы, чтобы запасы не были превышены, заяв-ки выполнены, и общая стоимость перевозки была бы минимальной.

Введем дополнительное требование – так называемое условие правиль-ного баланса: ∑∑

==

=n

jj

m

ii ba

11

Модель:

ijx - количество груза, перевозимого из i – го в j – й.

∑∑= =

→=m

i

n

jijij xcL

1 1

min , (3.1)

⎪⎪⎭

⎪⎪⎬

==

==

=

=

njbx

miax

j

m

iij

i

n

jij

,1,

,1,

1

1 , (3.2)

jixij ,,0 ∀>

∑∑==

=n

jj

m

ii ba

11 . (3.3)

Особенности модели ТЗ: 1. Наличие условия баланса (3.3) приводит к тому, что задача ТЗ всегда

имеет решение. 2. Просуммировав левые части (3.2), получим (3.3), следовательно, одно урав-

нение в (3.2) линейно зависимо, значит ранг системы (3.2) будет (n+m – 1).

ОтформатОтступ: Сл 17,85 пт, нУровень: 1нумерацииНачать с: 1слева + Вы+ ТабуляциОтступ: 18

Page 39: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

36

3. Коэффициенты при переменных в (3.2) все равны единице. 4. Подсчитаем число свободных и базисных переменных. Всего переменных

m×n. Базисных (m+n -1). Свободных переменных будет m×n- m-n+1 =k, … k=(m-1)×(n-1). Т.е. практически все переменные свободные. Т.к. ТЗ явля-ется задачей ЛП, то в оптимальном решении все свободные переменные должны быть равны нулю, т.е. большинство маршрутов не будут задейст-вованы. Если m=100 и n=100, всего маршрутов (переменных) 10 000, но не более 199 будут задействованы.

3.2. Нахождение опорного плана транспортной задачи

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

В ней выполняются и все необходимые вычисления. Пример:

Таблица 10

I B1 B2 B3 ai 4 1 3 11 A1 5 6 2 5 2 A2 7

7

3 7 4 A3 3 5

8

2 4 5 A4 4

4

bj 5 16 9 30 Назовем ijx «перевозкой». Решение ТЗ, также как и ЛП состоит из 2 этапов:

1. Находится опорный план, т.е. допустимый план, соответствующий условию «вершины». В нем отличных от нуля перевозок не более (m+n-1).

2. Путем последовательного перехода от одного опорного плана к другому по-лучаем оптимальный план.

Метод «северо-западного угла» (СЗУ) для нахождения опорного плана ТЗ Он заключается в заполнении плана перевозок, начиная с самих верхних

(северных) пунктов отправления за счет самых левых (западных) пунктов на-значения. Величина перевозки определяется выражением:

,min jiij bax ′′= , (3.4)

Стоимость перевозки

Перевозка (кол-во единиц в маршруте)

Page 40: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

37

где ia ' и ib' - остатки запаса и заявки после предыдущей итерации. Этот способ обеспечивает линейную независимость столбцов. Свойство допусти-мого плана: сумма перевозок по строке равна запасу, а по столбцу – заявке. План называется невырожденным, если отличных от нуля перевозок ровно m+n -1. В вышеприведенном примере m + n – 1 = 4 +4 – 1 = 7=7, т.е. план не-вырожденный.

Выполненные действия показаны в таблице 10 Определим стоимость плана:

L=4×5+5×4+1×4+2×2+3×1+5×3+5×2=76.

Часто бывают такие транспортные задачи, где количество ненулевых пе-ревозок (базисных клеток) меньше, чем m + n – 1.

Пример:

Таблица 11

B1 B2 B3 ai A1 3 4 (0) 7 +0 A2 1 1 A3 2 2 bj 3 4 3

Базисных клеток 4, а должно быть 5. Задача вырожденная. Будем дополнять план до невырожденного: в опреде-ленных местах проставим символиче-скую бесконечно малую величину (0), чтобы выполнялась линейная незави-симость столбцов и условие невырож-денности.

Чтобы автоматически определять место для дополнения плана будем из-бавляться от вырожденности в процессе заполнения плана в соответствии с выражением (3.4). Вырожденность появляется тогда, когда в формуле (3.4) будет ai

\=bj\ . В этом случае будем считать, что в строке ai

\=ai\ + (0).

Метод минимального элемента

В методе СЗУ мы не использовали стоимость перевозок. Существуют методы, которые позволяют получить первый план сразу близким к опти-мальному (т.е. с достаточно малой общей стоимостью перевозок).

Метод минимального элемента состоит в том, что порядок заполнения плана соответствует возрастанию стоимости. Но при этом запас исчерпыва-ется полностью, т.е. перевозка ставится в соответствии с формулой (3.4) в клетке с минимальной стоимостью в строке, если не исчерпали запас, или в столбце, если не выполнили заявку.

Метод не обязательно гарантирует лучшее решение, чем метод С ЗУ, но, как правило, дает лучшие результаты.

Способ борьбы с вырождением такой же, как и в предыдущем методе. Пример: Начинаем с самого дешевого маршрута (А1В4), далее в столбце

В4 ищем самый дешевый (А4В4), затем в строке А4 минимальная стоимость 2 в маршруте (А4В2) и т.д.

Page 41: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

38

Таблица 12

B1 B2 B3 B4 ai 5 4 3 1 A1 9 9

2 4 2 9 A2 1 2 3

8 7 1 3 A3 3 5 8

4 2 3 2 A4 4 1 5

bj 4 6 5 10 25

L=9×1+1×2+2×4+3×8+5×1+4×2+1×2=58.

3.3. Оптимизация плана ТЗ, распределительный метод Если в плане есть свободные клетки, для которых стоимость меньше, чем в

базисных клетках, то можно передвинуть какую – либо перевозку в эту сво-бодную клетку, но чтобы баланс не нарушался, нужно из строки или столбца, где будет новая базисная клетка, убрать такое же количество груза. Будем ста-вить (+) там, где перевозка увеличивается и (-) там, где уменьшается.

Пример:

Таблица 13

10 1 5 3 5 4 6

Таблица 14

- 10 + 1 5 + 3 - 5 4 6

Т.е. необходим перенос по циклу. Назовем циклом замкнутый маршрут,

который показывает перенос груза по некоторым клеткам таблицы. В цикле всегда четное число вершин. Назовем ценой цикла алгебраическую сумму стоимостей перевозок cij, стоящих в вершинах цикла с соответствующими знаками. Цена показывает, насколько увеличится стоимость перевозок в плане, если по данному циклу переносится единица груза. Если γ<0, то стоимость уменьшается. При пере-носе по циклу величины груза k стоимость уменьшается на ΔL=k⋅γ.

Будем рассматривать только правильные циклы: одна вершина в сво-бодной клетке, а все остальные в базисных. В свободной клетке, знак всегда «+», в остальных вершинах цикла знаки чередуются.

Page 42: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

39

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

Таким образом, для любой свободной клетки можно построить правиль-ный цикл и вычислить его цену. Если она больше нуля, то переходим к дру-гой свободной клетке. Если γ<0, то строим цикл.

Очевидно, по циклу нужно перенести наибольшее количество груза. Эта величина k определяется как наименьшая из перевозок, стоящих в вершинах цикла со знаком «-».

Для нижеприведенного примера цена цикла 1-5+3-10 = -11. Величина k=5. Значит перенеся 5 единиц, мы уменьшаем общую стоимость на величи-ну 5(-11)= -55 единиц.

Таблица 15

- 10 + 1 5 + 3 - 5 4 6

Таблица 16

10 1 5 3 5 9 1

Перенос груза по циклу соответствует симплекс–преобразованию. Метод

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

Пример:

Таблица 17

Т1 B1 B2 B3 B4 ai 4 2 1 1 A1 2 - 1 + 3

5 4 3 2 A2 3 - 2 + 5

1 2 1 4 A3 + 1 - 5 6

bj 2 4 3 5

Таблица 18 Т2 B1 B2 B3 B4 ai

- 4 2 1 1 A1 1 2 + 3

5 4 3 2 A2 2 3 5

+ 1 2 1 4 A3 1 5 - 6

bj 2 4 3 5

Для таблицы 17 m + n - 1 = 3 + 4 – 1 = 6;

L=2×4+1×2+3×4+2×3+1×1+5×4=49.

Строим правильный цикл для свободной клетки (3,1).

Page 43: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

40

γ31=1-4+2-4+3-1= -3; k31=1; ΔL = -3. Для таблицы 18: L=4+4+8+9+1+20=46. Строим цикл для (1,4) получа-

ем таблицу 19, далее строим цикл для клетки (3,3) и переходим к таблице 4. В таблице 4 строим цикл для клетки (2,4).

γ24=2-4+1-3= -4; k24=1; ΔL = -4; L = 34.

Таблица 19

B1 B2 B3 B4 ai 4 2 1 1 A1 2 - 1 + 3

5 4 3 2 A2 2 + 3 - 5

1 2 1 4 A3 2 + 4 - 6

bj 2 4 3 5

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

все свободные клетки и убедиться, что цена циклов для каждой такой клетки больше нуля или равна нулю. С учетом того, что количество свободных кле-ток равно (m-1)(n-1), этот процесс очень трудоемок.

Таблица 20

B1 B2 B3 B4 ai 4 2 1 1 A1 3 3

5 4 - 3 2 A2 4 1 + 5

1 2 + 1 4 A3 2 2 2 - 6

bj 2 4 3 5

Недостатком распределитель-ного метода является необходи-мость перебирать циклы до встре-чи цикла с отрицательной ценой. Для доказательства оптимальности нужно перебрать и построить пра-вильные циклы для всех свобод-ных клеток. Если n=100, m=100, то свободных клеток будет 9801.

Рассмотрим метод, в котором автоматически находятся циклы с отрицательной ценой.

3.4. Метод потенциалов решения ТЗ

Пусть каждый пункт отправления Ai платит за вывоз единицы груза пла-теж αi. И каждый пункт назначения Вj платит за привоз единицы груза βj. Эти платежи передаются посреднику. Таким образом, на маршруте ij он получает αi+βj = ijc% . Назовем эту величину псевдостоимостью. Оказывается, что сум-марная псевдостоимость плана перевозок есть величина постоянная (не ме-няется с изменением плана). В этом заключается теорема о платежах.

Для доказательства запишем формулу псевдостоимости и перегруппиру-ем слагаемые:

1 1 1 1( )

m n m n

ij ij i j iji j i j

L c x xα β= = = =

= = + ⋅ =∑∑ ∑∑% %

Page 44: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

41

1 1 1 1 1 1 ij

m n n m m n

i ij j ij i i j j xi j j i i jx x a b constα β α β

= = = = = =

= + = + =∑ ∑ ∑ ∑ ∑ ∑

Теорема о потенциальном плане ТЗ. Пусть в базисных клетках стоимость перевозок равна псевдостоимости

перевозок ij ijc c= % , xij ≥0, а в свободных клетках ij ijc c≤% , xij = ≥0. Тогда такой план является оптимальным и улучшен быть не может.

⎪⎭

⎪⎬⎫

=≤

≥=

0,~0,~

ijijij

ijijij

xcc

xcc (*)

Доказательство: * *

1 1

m n

ij iji j

L c x= =

= ∑∑ . Знак (*) означает, что выполняется условие (*).

Т.е. необходимо показать, что стоимость плана X* является нижней гра-ницей и определяется только исходными данными задачи.

* *

const

ijij ij x

L c x= =∑∑ % (т.к. в базисной ij ijc c= % , а в пустой равно нулю).

Перейдем к другому произвольному плану *

1 1 :

m n

ij ij ij iji j

x x L c x= =

′ ′ ′→ =∑∑ .

В этом плане перевозка из базисной клетки попала в свободную, где * *

1 1

const .m n

ij ij ij iji j

c c L L c x= =

′ ′≥ ⇒ ≥ = =∑∑ %

Т.е. любое изменение плана от *

ijx приводит к увеличению стоимости, следовательно план x*

ij является оптимальным. Идея метода потенциалов основывается на этой теореме и заключается в

следующем: 1) Составим любой опорный план и, если это необходимо, то дополним

до невырожденного. 2) Потребуем в базисной клетке ij ijc c= % . Запишем в левом верхнем углу

базисной клетки величины псевдостоимостей, равные стоимостям, стоящим в правом верхнем углу. Таких клеток m + n – 1.

3) Находим неизвестные нам платежи αi и βj из условий, что их сумма известна для каждой базисной клетки.

. . 1i j ijñ

èçâ í åèçâ m n

α β+ = ⎫⎪

− + −⎬⎪⎭K

Page 45: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

42

В такой системе в каждой строке две неизвестных, а всего их (m + n). Т.к. равенств всего (m + n -1), то решений бесконечное множество. Поэтому будем брать произвольное α1 и полагать, например, α1=0. Тогда можно на-чать решение со строки, где содержится α1, и так, последовательно переходя в строки с известным платежом, найти все платежи.

4) Найдя все платежи, подсчитываем i j ijñα β+ = для свободных клеток. 5) Проверяем условие (*) для свободных клеток. Там, где ij ijc c>% , сво-

бодная клетка дает цикл с отрицательной ценой, т.к. ij ij ijc cγ = − % . 6) Выбираем цикл с наименьшим (наиболее отрицательным) ijγ и со-

ставляем цикл. По циклу переносим k единиц груза и т.д. до выполнения ус-ловия (*).

Пример: Опорный план построим

по методу минимального элемента, вычисляем плате-жи и определяем псевдо-стоимости в свободных клетках (таблица 21). Ви-дим, что в клетке (3,2) цена цикла отрицательная. Стро-им цикл, переходим в таб-лицу 22.

3 2

3 2

4 ,1; 3 .k L

γ = −= Δ = −

Таблица 21

B1 B2 B3 B4 ai αi A1 -2 4 3 2 -2 1 1 1 3 3 0

A2 -1 5 4 4 -1 3 2 2 4 - 1 + 5 1

A3 1 1 6 2 1 1 4 4 2 + 3 1 - 6 2

bj 2 4 3 5

βj -2 3 -2 1

Таблица 22

B1 B2 B3 B4 ai αi 2 4 3 2 2 1 1 1 A1 3 +0 3 0

3 5 4 4 3 3 2 2 A2 3 2 5 1

1 1 2 2 1 1 0 4 A3 2 1 3 6 -1

bj 2 4 3 5

βj 2 3 2 1

Заметим, что если при вычислении k минималь-ных перевозок две и более, то при переносе по циклу появятся дополнительные свободные клетки, т.е. план вырождается. Поэто-му в этом случае считаем, что в одной такой клетке k, а в других k +(0) ((0) – лучше поставить там, где дешевле маршрут).

Page 46: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

43

Таблица 23

B1 B2 B3 B4 ai αi 1 4 2 2 1 1 1 1 A1 3 0 3 0

2 5 3 4 2 3 2 2 A2 5 5 1

1 1 2 2 1 1 1 4 A3 2 1 3 6 0

bj 2 4 3 5

βj 1 2 1 1

План таблицы 23 оптимальный, т.к. выполняется условие (*).

3.5. Решение ТЗ с неправильным балансом

До сих пор мы считали, что в ТЗ выполняется условие правильного ба-

ланса, то есть ∑ ∑= =

=m

i

n

jji ba

1 1

. На практике это никогда не выполняется. Но

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

Рассмотрим 2 случая:

1. ТЗ с избытком запаса: ∑ ∑= =

>m

i

n

jji ba

1 1.

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

Чтобы учесть фиктивность перевозки, достаточно считать, что стоимость перевозки в фиктивный пункт Вф равна нулю, сiф=0. Тогда, если какие-то пе-ревозки хiф>0, то 0.iô iôc õ =∑

Таким образом, чтобы решать ТЗ с избытком запаса, нужно к таблице прибавить дополнительный столбец Вф, заявка которого ô i jb a b= −∑ , а

сiф=0, mi ,1= . Тогда для новой таблицы будет выполняться условие пра-вильного баланса. После этого задача решается любым способом.

2. ТЗ с избытком заявок: ∑ ∑= =

<m

i

n

jji ba

1 1

.

Page 47: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

44

Необходимо ввести фиктивный пункт отправления (Аф), в котором якобы есть недостающий запас ô j ia b a= −∑ , при этом сфj=0, 1,j n= . После этого задача решается обычным способом.

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

Иногда задача решается по-другому. Пусть 1 1

m n

i ji j

a b= =

<∑ ∑ Тогда можно

вычислить коэффициент дефицита:

1

1

m

iin

jj

ak

b

=

=

=∑

∑.

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

,

.

j j

j i

b b k

b a

′ =

′ =∑ ∑

При этом можно решать задачу с учетом приоритетов на заявку. Величи-на приоритетов j-го пункта назначения (dj) может быть от 0 до 1 (0≤dj≤1).

11

n

jj

d=

=∑ .

Чем меньше dj, тем выше приоритет. j ib aΔ = −∑ ∑ ,

Δ – величина дефицита.

j j jb b d′ = − Δ . Пример: Рассмотрим ТЗ с избытком запасов (58<68), поэтому введем фиктивный

столбец, находим опорный план методом минимального элемента, а далее находим цикл с отрицательной ценой (2,1).

Таблица 24

Т1 B1 B2 B3 ai Bф 6 5 1 0 A1 11 14 35 10 4 3 2 0 A2 + 21 - 21 7 3 4 0 A3 8 - 4 + 12

bj 8 36 14 10

Page 48: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

45

Если цикл с отрицательной ценой видно сразу, то не обязательно приме-нять метод потенциалов.

k=8, γ=-3

Для таблицы 24 применим метод потенциалов:

Таблица 25

Т2 B1 B2 B3 Bф Ai αi 6 6 5 5 1 1 0 0 0 A1 11 14 10

35

4 4 3 3 -1 2 -2 0 A2 8 13

21 -2

4 7 3 3 -1 4 -2 0 A3 12

12 -2

bj 8 36 14 10 βj 6 5 1 0

Видно, что во всех свободных клетках псевдостоимости ≤ сij, следова-

тельно, нет цикла с отрицательной ценой. План - оптимальный.

3.6. ТЗ по критерию времени, типы критериев

Пусть в ТЗ задано время tij, за которое груз можно перевезти из i – го в j-ый пункт. Оно не зависит от количества перевозимого груза. Заданы запасы аi, заявки bj и необходимо составить такой план перевозок, чтобы общее время окончания перевозок было бы минимальным.

Т.к. перевозки осуществляются параллельно, окончание всех перевозок определяется длительностью маршрута с самой большой величиной tij среди занятых маршрутов (базисных клеток).

Таким образом, критерий в нашей задаче

0

(max ) minij

ijx

T t≥

= → . (3.5)

Ограничения те же:

⎪⎪⎭

⎪⎪⎬

==

==

=

=

miax

njbx

i

n

jij

j

m

iij

,1,

,1,

1

1 (3.6)

Page 49: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

46

1 1

m n

i ji j

a b= =

=∑ ∑ . (3.7)

(3.5) – (3.7) – математическая модель ТЗ по критерию времени. Видно, что целевая функция ( )ijT x имеет нелинейный вид. При изменении плана xij критерий T может не меняться. Критерии такого рода называют гаранти-рующими или максиминными (минимаксными). Они требуют оптимизации по так называемому «узкому месту». В этом смысле рассмотренный в пре-дыдущих параграфах критерий общей суммарной стоимости перевозок яв-ляется интегральным критерием.

Т.к. целевая функция ( )ijT x имеет нелинейный вид, то для решения ТЗ

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

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

Метод запрещенных клеток

1. Находим любой опорный план (необязательно невырожденный). 2. Вычисляем величину критерия для полученного плана

11

maxij

ijx

T t= .

3. Запрещаем все маршруты в свободных клетках, у которых время

1Ttij ≥ .

4. Зафиксируем в плане занятую клетку с максимальным ijt (узкое место).

5. Ищем цикл, при помощи которого можно «разгрузить» эту клетку и переносим по этому циклу перевозку величиной k. Циклы не обязательно должны быть правильными. Причем может быть, что освободить такую клетку можно только за несколько циклов .

6. Получаем план с новым значением 2

2

maxij

ijx

T t= . Запрещаем свободные

клетки, для которых 2ijt T≥ и переходим к п.4. Повторяем до тех пор, пока будет невозможно составить ни одного цик-

ла, разгружающего занятую клетку с максимальным временем.

Page 50: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

47

Пример. Для нижеприведенной ТЗ по критерию времени составляем первый опор-

ный план, получаем Т1=3. Запрещаем все свободные клетки, у которых 3ijt ≥ . Используем неправильный цикл, получаем новый план, в котором Т2=2 .

Таблица 26

Т1 B1 B2 B3 ai

- 3 1 0 A1 19 1 + 20

2 1 2 A2 + 10 30 - 40

3 2 1 A3 15 15

bj 19 11 45

Т1 = 3

Таблица 26

Т2 B1 B2 B3 ai 3 1 0 A1 1 19 20

2 1 2 A2 19 10 11 40

3 2 1 A3 15 15

bj 19 11 45

Т2 = 2

Видно, что перевозку со временем tij=2 уже нельзя перенести ни в одну стро-

ку, ни в один столбец, поэтому последняя таблица является оптимальной.

Page 51: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

48

4. ДИСКРЕТНОЕ ПРОГРАММИРОВАНИЕ При моделировании различных задач возникает требование, чтобы ка-

кие-то управляемые переменные принадлежали специальному множеству. 1) Множество целых чисел – число людей, число датчиков, число само-

летов и т.д. 2) Множество дискретных значений – это стандартные значения в произ-

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

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

Такого рода задачи принадлежат классу задач дискретного программиро-вания:

min),( →= axfk (4.1)

miaxi ,1,0),( =≤ϕ (4.2)

Dx∈ (4.3)

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

1) Универсальные методы решения задач линейного целочисленного программирования на основе «классических» алгоритмов.

2) Специальные методы (модели) дискретной оптимизации, которые имеют особое практическое значение.

Задачей линейного целочисленного программирования (ЛЦП) называют задачу вида:

minj jL c x= →∑ , (4.4)

, 1,ij j ia x b i m≤ =∑ , (4.5)

, 1,jx Z j n∈ = . (4.6)

Если только часть переменных должны быть целыми, то задача называ-ется частично целочисленной. Тогда в (4.6) вместо n будет n1<n.

Во многих задачах дискретность проявляется при моделировании задачи. Это относится к так называемым булевским переменным. В этом случае пе-ременные принадлежат множеству B= 0,1. Ограничения также будут иметь

Page 52: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

49

логический характер. Но при этом все действия с этими переменными, опре-деляемые математической моделью, подчиняются обычным правилам ариф-метики (т.е., например, 1+1=2, а не 0 как в булевой алгебре). Т.о. вместо (4.6) или в дополнение к нему в модели может присутствовать требование

0,1jx ∈ . (4.7)

Если все переменные булевские, то задача (4.4), (4.5), (4.7) – задача ли-нейного булевского программирования (ЛБП).

К этим задачам иногда сводят задачи целочисленного и дискретного про-граммирования, т.к. для ЛБП разработаны эффективные быстродействующие алгоритмы (в том числе и с «аппаратной поддержкой»).

Чтобы привести задачу ЛЦП к ЛБП, достаточно каждую переменную представить в виде:

0 1 21 2 3 12 2 2 ... 2k

j j j j jkx x x x x += + + + + 0,1ijx ∈

Если xi ограничено, то можно найти k, т.е. количество двоичных пере-менных, которыми можно описать исходные целочисленные переменные.

Задачу дискретного программирования можно привести к задаче булев-ского программирования так. Пусть

jnjjjj kkkkx ,...,,, 321∈ Тогда можно ввести булевские переменные y и заменить

1,0,...2211 ∈+++= rjnnjjj ykykykyx , 11

=∑=

n

rry .

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

Рассмотрим геометрический образ задачи ЛЦП для двух переменных (рис. 13).

Рис. 13

ОДР этой задачи представляет собой только целочисленные точки внутри ОДР соответствующей зада-чи ЛП.

Решение задачи ЛП без требова-ния целочисленности будет нахо-диться в точке А (см. главу 2).

Возникает вопрос, нельзя ли ре-шать так: найти решение задачи ЛП (назовем его «непрерывным» реше-нием), а затем округлить до бли-

Отформатнумерации

Page 53: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

50

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

недопустимое решение. 2) Даже, если при округлении решение является допустимым, может ока-

заться, что существует другое допустимое целочисленное решение , которое лучше округленного. Из рисунка видно, что ближе к непрерывному решению А целочисленная допустимая точка В, а лучше С. Оптимальное решение: x*=(3,3). Иногда кроме целочисленности переменной, требуется, чтобы це-лой была L. Тогда тем более округление не дает правильного результата.

Пример: 1 21 max6

z x x= + → ,

1 21 22

x x− + ≤ , 1 21 35

x x+ ≤ , 1 21 43

x x− ≤ .

Ответ: 752,

731 21 == xx .

Округлив: 1 21, 3x x= = - это не удовлетворяет решению! Ответ (целочисленный): 1 24, 2x x= = . Чтобы Z было целым: 1 20, 0x x= = . Таким образом, для нахождения целочисленных, оптимальных решений,

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

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

Заметим, что обычная ТЗ при целых коэффициентах ai, bi дает целочис-ленное решение. Рассмотрим некоторые наиболее распространенные задачи дискретного программирования.

1. Задача о назначениях (о выборе). Имеется n работ и n кандидатов на эти работы. Известен эффект того, что

i – ая работа будет занята j – м работником cij. Необходимо распределить ра-боты по работникам так, чтобы суммарный эффект был максимальным.

Управляемые переменные:

1,0,ij

i jx

i j→⎧

= ⎨ →/⎩, (4.8)

1 1

maxm n

ij iji j

z c x= =

= →∑∑ . (4.9)

Page 54: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

51

Т.к. каждая работа может быть занята только одним работником и каж-дый работник может занимать только одну работу, то

1

1

1, 1,

1, 1,

n

ijj

n

iji

x i n

x i n

=

=

⎫= = ⎪⎪⎬⎪= = ⎪⎭

∑. (4.10)

Это частный вид ТЗ. Любой опорный план будет сильно вырожден, в нем будет только n базисных переменных (должно быть 2n–1).

Эту задачу можно свести к выбору n нулевых элементов, по одному в каждом столбце и каждой строке («правильному выбору»), в некоторой мат-рице с неотрицательными элементами, у которой в каждой строке и каждом столбце есть нули.

Нам удобно будет предварительно перейти от данной задачи выбора на максимум к задаче выбора с теми же условиями, но на минимум, т. е. от мат-рицы C=(cij) перейти к матрице -C=(cij) и искать выбор, дающий минималь-ную сумму элементов.

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

Итак, проделываем следующие два последовательных преобразования матрицы –C:

(1) (2)1( ) ( ) (max ) ( ) ( min )ij ij ij ij ij ij ijji

C c C c c c D d c c′ ′ ′= ⎯⎯→ = = − ⎯⎯→ = = − 2.17

Назовем эти преобразования предварительными преобразованиями. Если в каждой строке матрицы C=(c’ij), полученной после первого преобразования матрицы C, есть хотя бы один нуль, то второе, преобразование, конечно, не изменит матрицу C и практически не производится.

Наименьшее возможное значение суммы n элементов неотрицательной матрицы равно, очевидно, нулю. Таким образом, наша задача сводится те-перь к выбору в матрице D, или в эквивалентной ей матрице с неотрицатель-ными элементами, n нулевых элементов, по одному в каждой строке и каж-

Page 55: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

52

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

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

1. Отмечаем (например, звездочкой) какой-нибудь нуль в первом столб-це матрицы D (0*); отмечаем звездочкой какой-нибудь нуль во втором столбце, не лежащий в той строке, в которой находится 0* из первого столб-ца (если такой нуль во втором столбце найдется); отмечаем звездочкой один из нулей третьего столбца, лежащий в строке, где нет еще нулей со звездоч-кой (если такой нуль в третьем столбце найдется); и так далее, пока не прой-дем все столбцы матрицы.

Если число отмеченных звездочкой нулей равно n, то процесс окончен: места, занимаемые нулями со звездочкой, соответствуют n переменным xij, равным 1, в оптимальном решении исходной задачи.

Если нулей со звездочкой меньше n, то переходим к п.5. 2. Помечаем (например, знаком «+» сверху) столбцы матрицы, в кото-

рых есть 0*, и считаем эти столбцы занятыми. В ходе процесса будут появляться и занятые строки. Элементы, стоящие

на пересечении незанятого столбца и незанятой строки будем считать неза-нятыми; остальные элементы — занятыми.

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

поочерёдно строки матрицы слева направо). Отмечаем его каким-нибудь промежуточным значком (например, штрихом — 0'). Если в его строке нет нуля со звездочкой, то переходим к п. 4; если в его строке 0* есть, то перехо-дим к п. 3.

3. Освобождаем (снимаем знак «+» и считаем снова незанятым) столбец, в котором находится 0*, лежащий в той же строке, что и отмеченный только что штрихом нуль. Помечаем (например, знаком «+» справа) строку, в кото-рой находится наш 0', и считаем ее занятой. Возвращаемся ко второй части п. 2 (третий абзац п. 2).

4. Начиная с только что отмеченного 0', строим цепочку из нулей: от этого 0' по столбцу к 0*, от него по строке к 0', и т. д., пока это возможно. Цепочка оборвется (возможно, на первом же 0') на некотором 0'. Снимаем звездочки у нулей из цепочки и заменяем звездочками штрихи у нулей из цепочки. Новый набор нулей со звездочками содержит на один больше, чем предыдущий, и является также правильным.

Page 56: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

53

Снимаем все пометки, кроме звездочек, и возвращаемся ко второй части п. 1 (второй абзац п. 1).

5. Отыскиваем минимальный элемент среди незанятых элементов мат-рицы (пусть он равен h) и вычитаем его из всех незанятых строк, а затем прибавляем ко всем занятым столбцам. Никакие пометки при этом не сни-маются. Получается матрица, эквивалентная предыдущей и содержащая не-занятые нули. Возвращаемся к третьей части п. 2 (четвертый абзац п. 2).

Рассмотрим пример использования алгоритма. Пример. Найти оптимальный вариант назначений, если матрица эффек-

тивностей такова:

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

0201053434342222642445332

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

Процесс окончен, так как получилось n = 5 нулей со звездочкой. Опти-

мальный вариант назначений: x15=x24=x31=x43=x52=1, остальные xij=0, т. е. первый механизм назначается на пятую работу, второй - на четвертую, тре-тий - на первую, четвертый - на третью, пятый - на вторую.

Изложенный алгоритм получил в литературе название венгерского алго-ритма (венгерского метода) решения задачи о назначениях. Если в исходной

Page 57: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

54

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

4.2.1. Задача о покрытии Примером такой задачи является задача об определении минимального

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

Классическая задача о покрытии формулируется так: Задан граф с ребрами и узлами. Найти такое подмножество ребер, кото-

рое инцидентно любой вершине этого графа и при этом, чтобы количество ребер в этом подмножестве (называемым покрытием) было бы минималь-ным. Тогда если j - номер ребра, а П - множество ребер покрытия, то

1,0,j

j Ïx

j Ï∈⎧

= ⎨ ∉⎩.

Построим математическую модель. Целевая функция имеет вид

minjz x= →∑ . (4.11)

A - матрица инцидентности исходного графа, элементы которой.

1,0,ij

i ja

i j≈⎧

= ⎨ ≈/⎩.

Каждая вершина должна быть инцидентна хотя бы одному ребру покрытия

1

1, 1,n

ij jj

a x i m=

≥ =∑ (4.12)

Таким образом, мы получили задачу линейного булевского программи-рования (4.11), (4.12). Решение такой задачи рассмотрим ниже.

4.2.2. Задача о коммивояжёре Задана сеть городов с расстояниями между ними. Торговец должен обой-

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

Одна из математических моделей этой задачи имеет вид

Page 58: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

55

⎩⎨⎧

→/

→=

jiji

xij ,0,1

(4.13)

cij – расстояние между городами i и j.

∑∑ →= .minijij xcz (4.14)

Из каждого города торговец должен выти один раз и лишь один раз войти, поэтому

⎪⎪⎭

⎪⎪⎬

==

==

=

=

n

iij

n

jij

njx

nix

1

1

,1,1

,1,1

, (4.15)

1, (1 ),i j ij iu u nx n i j n u R− + ≤ − ≤ ≠ ≤ ∈ ,

где ui и uj произвольные целые и неотрицательные числа. Последнее ограничение – это условие цикличности маршрута, именно

оно приводит к тому, что эта задача принадлежит к классу чрезвычайно сложных «переборных» задач. При некоторых коэффициентах решение при-водит к полному перебору вариантов. Ниже мы рассмотрим общий метод решения подобных задач, а в [10] можно найти алгоритм и пример решения этой задачи.

4.2.3. Задача о раскрое материала Эта задача впервые была поставлена и изучена нобелевским лауреатом

Л.В.Канторовичем. Задачу о раскрое материалов необходимо рассматривать для производства комплектов продукции.

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

Из заготовок необходимо выкроить детали (рис. 14). Всего деталей n. 1,j n= .

Page 59: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

56

1a⎭⎬⎫

2a⎭⎬⎫

3a⎭⎬⎫

12 .

jj äåò àëè= ⎫

⎪= ⎬⎪⎭K

Рис. 14

Из деталей делается комплект. Известно количество деталей j типа, вхо-дящих в комплект lj.

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

Существует несколько способов моделирования такой задачи (2-индексная и 3-индексная).

2 - индексная модель предполагает, что мы сначала рассматриваем раз-личные способы раскроя (при этом можно рассматривать раскрой деталей сложной формы) Для фиксированного способа можно подсчитать количество деталей j – го типа для каждой i – й заготовки при k – м способе раскрое: aijk. Например,

a111=2, a121=0.

a112=0, a122=1.

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

Интересно, что при помощи предварительного вычисления величин aijk можно решать не только «стержневые» задачи, но и «плоскостные», для это-го достаточно перечислить различные способы раскроя плоской заготовки i-го типа на множество плоских деталей из j типов. Далее сама задача опти-мального раскроя решается универсальным способом.

Рассмотрим величину xik - количество заготовок i - го типа, раскраивае-мых k – м способом – это управляемые переменные.

Page 60: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

57

Обозначим zi - количество деталей j – го типа, полученных из всех типов заготовок при всех способах раскроя .

1 1

n m

ijk ik jk i

a x z= =

⋅ =∑∑ ,

где [ j jz l ] - число комплектов, которое можно изготовить из деталей j-го типа. Знак [.] обозначает ближайшее целое с недостатком.

Выберем тип детали, которых меньше всего входит в комплект, в качест-ве основного, тогда можно максимизировать общее их количество

arg min jj

r l= ,

maxp irk ikz a x= ⋅ →∑∑ , при выполнении условия комплектности:

1 2

1 2

32

2 3

m n

m n

z zl l

zzl l

z zl l

⎫= ⎪⎪⎪

= ⎪⎬⎪⎪⎪= ⎪⎭

K

.

Кроме этого количество заготовок ограничено:

1

, 1,n

ik ik

x a i m=

≤ =∑ .

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

Пусть z – число комплектов.

maxz → , (4.16)

1 1 , 1,

m n

ijk iki j

j

a xz j n

l= =

⋅≤ =

∑∑, (4.17)

Page 61: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

58

1

, 1,n

ik ik

x a i m=

≤ =∑ . (4.18)

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

4.2.4. Задача о ранце В ранец объема b необходимо упаковать предметы из имеющегося мно-

жества предметов разного типа так, чтобы суммарный вес ранца был макси-мальным. Пусть j – тип предмета, который занимает объем aj и весит cj.

Введем управляемые переменные xj - количество предметов j – го типа, которые будут в ранце. Общий вес ранца

1

maxn

j jj

z c x=

= →∑ . (4.19)

Ограничение по объему ранца

1

n

j jj

a x b=

≤∑ , (4.20)

xj - целое (4.21)

Это задача ЛЦП при единственном ограничении.

4.3. Алгоритм решения задачи о ранце

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

Любое решение задачи о ранце это вектор, например: (6, 0, 2, 4)x . Возь-мем предметы с большим удельным весом в качестве приоритетных. Упоря-дочим компоненты по удельному весу.

1 2

1 2

j n

j n

ñ ññ ña a a a

> >K .

Page 62: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

59

Старшая компонента – с большим удельным весом. Определим лексикографический порядок таких векторов, это упорядоче-

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

ется так: 0 0 0 0

1 2

01

1

00 1 12

2

10

10

( , ,..., ),

,

,

...

.

n

k

j jj

kk

x x x x

bxa

b a xxa

b a xx

a

=

=

⎡ ⎤= ⎢ ⎥⎣ ⎦⎡ ⎤− ⋅

= ⎢ ⎥⎣ ⎦

⎡ ⎤− ⋅⎢ ⎥

⎢ ⎥=⎢ ⎥⎢ ⎥⎣ ⎦

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

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

Если пройти все лексикографически упорядоченные векторы , то можно найти лучшее значение z.

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

Оценка подмножества вариантов – это величина, имеющая размерность целевой функции, такая, что ни один вариант этого подмножества не даст значения целевой функции лучше, чем данная оценка (δ).

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

Page 63: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

60

Рассмотрим в лексикографическом ряду вектор, стоящий на i – м месте. ix . Его последняя ненулевая компонента i

sx . Рассмотрим вектор yi, который получается из вектора xi так: последняя ненулевая компонента уменьшается на единицу 1i i

s sy x= − , все дальнейшие – нули. Сравним yi и xi+1. Пример:

( )6, 0, 5, 3, 0, 0ix = ,

( )1 6, 0, 5, 2, 9, 8ix + = , …

( )6, 0, 5, 2, 0, 0iy = . Дадим оценку всех вариантов, находящихся от xi до yi. Для этого опреде-

лим оценку i – го множества в виде: 1

1 11

( )i

n ni is

j j j jj js

cc y b a ya

δ +

= =+

= + −∑ ∑ .

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

Теперь, если для всех векторов от 0x до ix получено некоторое наи-большее, т.н. рекордное значение целевой функции z* и *i zδ ≤ , это означа-ет, что не надо рассматривать векторы от ix до iy и нужно взять сразу для анализа вектор iy . Если *i zδ > , то ничего сказать нельзя, и берем для ана-лиза следующий вектор 1ix + , хотя в сохраненном подмножестве может и не быть лучшего значения целевой функции.

Пример:

1 2 3 42 7 4,5 maxZ x x x x′ ′ ′ ′= + + + → ,

1 2 3 46 3 2 19x x x x′ ′ ′ ′+ + + ≤ .

Проверим соотношения s

s

ac

и переобозначим переменные.

7 4,5 1 23 2 1 6> > > ,

1 2 3 4

1 2 4 1

7 4,5 2 max3 2 6 19

x x x xx x x x+ + + →⎧

⎨ + + + ≤⎩.

Page 64: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

61

0 * 0 *1 1(6, 0,1, 0); 6 7 1 1 43 ; 3; 42 (19 18) 42 ;3 3

x z z s zδ= = ⋅ + ⋅ = = = = + − = <

1 0 1 1 *

2 **

2 2 *

3 2 3 3 **

4 3

4,5(6, 0, 0, 0) ; (5,0,0,0); 1; 35 (19 15) 35 9 44 ;2

(5, 2, 0, 0); 5 7 2 4,5 44 ;(5,1, 0, 0); 2; 39,5 1(19 17) 41,5 ;

(5,1, 0, 0); (5, 0, 0, 0); 2; 35 1(19 15) 39 ;(5,

x y y s z

x z zy s zx y y s zx y

δ

δ

δ

= = = = = + − = + = >

= = ⋅ + ⋅ = =

= = = + − = <

= = = = = + − = <

= = 4

4 **

0, 0, 0); (4, 0, 0, 0); 1;4,5 4,5 7 3 328 (19 12) 28 28 15 43 ;2 2 4 4

y s

= =⋅

= + − = + = + = <

5 4 5

5 **

6 5 6 6 **

7 6 7 7 **

8 7

(4, 0, 0, 0); (3, 0, 0, 0); 1;4,5 90 1 121 (19 9) 21 21 22 43 ;2 4 2 2

4,5 1(3, 0, 0, 0); (2, 0, 0, 0); 1; 14 (19 6) 43 ;2 4

4,5 1(2, 0, 0, 0); (1, 0, 0, 0); 1; 7 (19 3) 38 ;2 2

(1,

x y y s

z

x y y s z

x y y s z

x y

δ

δ

δ

= = = =

= + − = + = + = <

= = = = = + − = <

= = = = = + − = <

= = 8 8 **

9

4,5 30, 0, 0); (0, 0, 0, 0); 1; 0 19 42 ;2 4

(0, 0, 0, 0).

y s z

x

δ= = = + ⋅ = <

=

Ответ: (5, 2, 0, 0), с учетом переобозначения х’ = (0, 5 ,2, 0). Примечание: Если коэффициенты целевой функции целые, то истинное

значение z может быть только целым, поэтому если оценка получилась дроб-ной, то ее можно усилить (приблизить к истинной величине Z: для Z max уменьшить до ближайшего целого, а для Z min увеличить до ближайшего целого).

4.4. Решение задач ЛЦП методом отсечений Гомори

Алгоритмы решения задач ЛЦП используют в качестве подалгоритма симплекс – метод решения задач ЛП. Рассмотрим идею методов отсечения. Пусть дана задача ЛЦП (Рис. 15). Отбросим требование целочисленности и решаем обычную задачу ЛП. Если решение получается целым, то оно явля-ется оптимальным. Если решение не удовлетворяет требованиям целочис-ленности, то применяют условие правильного отсечения. Для этого форми-руют новое ограничение, которое отсекает только что полученное оптималь-ное «непрерывное» решение, оставляя допустимым и все целочисленные ре-шения.

Page 65: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

62

Рис. 15

Точка А – оптимальное «непре-рывное» решение. Если его не отсечь, то оно появится на следующем этапе. Первое отсечение оставляет все це-лочисленные решения и отсекает точку А. Точка B – оптимальное це-лочисленное решение.

Как получить отсечение, чтобы получить такое решение?

Решая задачу ЛП, мы получаем в симплекс – таблице выражение базис-ных переменных через свободные.

, 1,i i ij ji S

x b x i mα∈

= − =∑ . (4.22)

Пусть , 1,jx Z j n∈ = . S – множество свободных переменных. Коэффициенты aij - любые (целые, дробные). Обозначим a – дробная часть числа [a] – целая часть числа (с недостатком). a = a – [a] > 0 – всегда!

[ ] [ ] [ ] [ ] i i i ij j ij j i ij j i ij jj S j S j S j S

x b b x x b x b xα α α α∈ ∈ ∈ ∈

= + − − = − + −∑ ∑ ∑ ∑ (4.23)

Покажем, что если решение целое, то

[ ] 0i ij jj S

b xα∈

− ≤∑ . (4.24)

(4.22) представляет собой запись симплекс-таблицы для оптимального решения, но решение не целое. Рассмотрим строку с нецелым ib .

10,0 <≤≠ ii bb . Т.к. 0, 0ij jxα > > ⇒ , то величина (4.24) может быть только отрица-

тельным целым числом. Это необходимый признак целочисленности xi. Это условие можно счи-

тать правильным отсечением. Неравенство (4.24) приведем к равенству, вве-дя дополнительную переменную yn+1:

1 n i ij jj S

y b xα+∈

= − +∑ . (4.25)

A B

Первое отсечение

Второе отсечение

Page 66: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

63

Если это ограничение добавить к предыдущим ограничениям , то оно от-секает полученное непрерывное решение. Т.к. в симплекс – таблице появля-ется отрицательный свободный член, то надо искать новое опорное и новое оптимальное решения.

Алгоритм Гомори: 1. Решаем задачу ЛП. Находим оптимальное решение. Если в оптималь-

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

2. Находим строку с наибольшей дробной частью bi для этой строки по (4.25) составляем правильное сечение и записываем дополнительной строкой в симплекс-таблицу; переходим к п.1.

При целых коэффициентах задача ЛП сходится за конечное число шагов к точному решению.

Если в исходной задаче коэффициенты дробные и есть ограничения не-равенства, то дополнительные переменные yi могут быть дробными и задача не является полностью целочисленной. В этом случае может получиться, что, если потребовать y∈Z и построить отсечение (4.25), то целых решений может не быть. Тогда ограничения можно ослабить, считая x∈Z, y∈R.

1 n i ij j ij lj S l S

y b x yα α+∈ ∈

′ = − + +∑ ∑ . (4.26)

(4.26) – ослабленное условие. Если требуется, чтобы значение целевой функции было целым, то строим

условие правильного отсечения по строке L. Пример: Решить задачу

1 2

1 2

1 2

1 2

3 min,2 4,4 3 2,

3 2 3,

L x xx xx x

x x

= − + →+ ≤− ≤

− + ≤

x1, x2≥0 и целые числа. Сначала решим данную задачу без требования целочисленности сим-

плекс-методом. Для этого запишем задачу в виде основной задачи линейного программирования (ОЗЛП) в стандартной форме:

1 2

1 1 2

2 1 2

3 1 2

0 ( 3 ) min,4 (2 ),2 (4 3 ),3 ( 3 2 ).

L x xy x xy x xy x x

= − − →= − += − −= − − +

Page 67: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

64

Далее заполним симплекс-таблицу (табл. 27). Таблица 27

1 1x 2x 0 1 -3

L 21

− 41

− 43

4 2 1 1y -1

21

− 23

2 4 -3 2y

21

41 -

43

3 -3 2 3y

23

43 -

49

Это опорное решение,

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

Делаем все необхо-димые преобразования в симплекс-таблице для за-мены y2 на x1, и перехо-дим к табл.28.

Это оптимальное решение задачи без требования целочисленности, так

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

Таким образом, .21;0;

21

21 −=== Lxx оптопт

Но это решение не удовлетворяет требованию целочисленности. Для по-строения правильного отсечения и ввода нового ограничения берется первое по номеру нецелочисленная переменная. В данном случае это x1.

Выпишем x1 из табл.2: Таблица 28

1 2y 2x

L 21

− 41

− 49

1y 3 2

1−

25

1x 21

41

43

3y 29

43

41

,43

41

21

221 ⎟⎠⎞

⎜⎝⎛ −−= xyx

,210

21

21

21

21

=−=⎥⎦⎤

⎢⎣⎡−=

⎭⎬⎫

⎩⎨⎧

,410

41

41

41

41

=−=⎥⎦⎤

⎢⎣⎡−=

⎭⎬⎫

⎩⎨⎧

( ) .411

43

43

43

43

=−−−=⎥⎦⎤

⎢⎣⎡−−−=

⎭⎬⎫

⎩⎨⎧−

Page 68: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

65

Применяя формулу (4.25) , получим 4 2 21 1 12 4 4

y y x⎡ ⎤= − + +⎢ ⎥⎣ ⎦ - это новое

ограничение, которое определяет правильное отсечение. Перепишем это ог-

раничение в стандартном виде 4 2 21 1 12 4 4

y y x⎛ ⎞= − − − −⎜ ⎟⎝ ⎠

и допишем его в сим-

плекс-таблицу 29.

Таблица 29

1 2y 2x

21

− 41

− 49

− L

21 -1

41

3 21

− 25

1y 4 -2

21

21

41

43

− 1x

21

− 1 41

29

43

41

− 3y

23

− 3 43

21

− 41

− 41

− 4y

2 -4 1 Для решения этой расширенной задачи без требования целочисленности

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

Решение оптимально и целочисленно: 1 20; 0; 0î ï ò î ï òx x L= = = . Геометрическая интерпретация данного примера приведена на рисунке 16.

Page 69: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

66

Таблица 30

1 4y 2x L 0 -1 -2

1y 4 -2 3

1x 0 1 -1

3y 3 3 -1

2y 2 -4 1

Рис. 16

4.5. Метод ветвей и границ (МВГ)

Метод ветвей и границ (МВГ) – это наиболее широко применяемый ме-тод дискретного программирования. Он относится к комбинаторным мето-дам. МВГ – метод последовательного анализа вариантов (1960 г. – Лэнд и Дойг).

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

Название МВГ раскрывает основное содержание метода, он состоит из двух процедур:

1. ветвление вариантов решения; 2. установление границ возможного для каждого анализируемого под-

множества решений. В любой задаче все множество решений представляется в виде дерева

вариантов, т.е. вводится принцип разбиения множества вариантов на под-множества вариантов.

В каждой задаче может быть свой принцип разбиения. Для МВГ необхо-димо, чтобы, во-первых, был удобный способ перехода от множества к под-множеству, во-вторых, чтобы варианты не повторялись и чтобы ни один ва-риант не был упущен.

Переход от одного варианта к другому осуществляется в соответствии с некоторым порядком (например, в лексикографическом порядке).

Исходя из свойств задачи физического смысла целевой функции уста-навливаются границы возможного (иногда называемого «обещанием») для каждого подмножества, т.е. придумывается формула оценки для заданного подмножества.

Page 70: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

67

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

Оценка должна быть как можно более точной, т.е. приближаться к ис-тинным значениям как можно ближе. Чем точнее оценка, тем чаще отсеива-ются варианты. Действительно, если получено некоторое рекордное значе-ние ЦФ z*, а наилучшая из оценок оставшихся для проверки подмножеств хуже z*, то очевидно процесс дальнейшего улучшения z можно прекратить. Чтобы это произошло как можно раньше, во-первых, надо чтобы первый ре-корд был достаточно «хорошим», а во-вторых, оценки были как можно бо-лее точными.

Рассмотрим МВГ применительно к любой задаче дискретного програм-мирования:

( ) minz f x= → , (4.27)

x G∈ . (4.28)

G – некоторая область, которая определяется системой ограничений не-равенств, а также типом переменных.

На первом этапе вычисляют нижнюю границу целевой функции. Для этого снимают ограничение на тип переменных. Целевая функция может быть при этом только лучше (или равной), поэтому ее можно принять за оценку.

Если ( )Gξ - оценка множества G, то для задачи на min ( ) ( )f x Gξ≥ . На втором этапе производится разбиение (ветвление) множества G. Само

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

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

Если 1 0 1 0, òî ( ) ( )G G G Gξ ξ⊂ ≥ . Как только на каком-то подмножестве вариантов, получено решение,

удовлетворяющее всем ограничениям (в том числе специальному требова-нию на тип переменной) проверяется условие оптимальности МВГ.

Условие оптимальности МВГ. Если на каком–либо подмножестве ( )kGυ на k – ой итерации получено некоторое решение *x такое, что значение целевой функции равно оценке этого подмножества * ( ) ( )( ) ( ),k k

if x G x Gυξ= ∈ и при этом сама оценка является наилучшей среди всех оценок ещё не разбитых

Page 71: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

68

подмножеств на этой итерации ( ) ( )( ) min k kiG Gυξ = , при этом ( )

0k

iG Gυ =U , то

решение *x является оптимальным и улучшено быть не может (Рис. 17). Действительно, в самом множестве Gυ лучшего решения быть не может,

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

приближённым решением с точностью до ε. Пусть получено некоторое решение 'x и за-

дана некоторая абсолютная точность решения ε: *( ) ( )f x f x ε′ − < , где *x - неизвестное нам

точное решение. Если ( )( ) min ( )k

if x Gξ ε′Δ = − < , то разница между точным оптимальным значением и при-ближённым тем более меньше ε.

Если εΔ < , то δ ε< . Рис. 17

4.6. Алгоритм МВГ для задачи ЛЦП

1min

n

j jj

z c x=

= →∑ , (4.29)

1, 1,

n

j j ij

a x b i m=

≤ =∑ , (4.30)

xj - целое, 1 11, ,j n n n= ≤ . (4.31)

Для задачи ЛЦП (4.29), (4.30), (4.31) оценкой множества реше-ний, определяемых (4.30), (4.31), является оптимальное значение для задачи ЛП (4.29), (4.30). На рисунке 18 точка А – решение за-дачи ЛП, а точка В – решение за-дачи ЛЦП. Кроме этого, для ЛЦП можно использовать простое пра-вило ветвления вариантов. Полу-чаем следующий алгоритм:

Рис. 18

Page 72: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

69

1. Отбросим (4.31) и найдем решение задачи ЛП. Если решение автома-тически удовлетворяет (4.31), то оно является оптимальным. Иначе перехо-дим ко второму пункту.

2. Рассмотрим какую-нибудь нецелочисленную переменную полученного решения 1, 1, l lx d l n= ∈ . По этой переменной производится ветвление, все множество решений разбивается на два:

(1)1 : [ ] 1l lG x d≥ + ,

(1)2 : [ ]l lG x d≤ .

Пример:

55

5

44457

xx

x≤⎧

= → ⎨ ≥⎩.

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

1. Если решения задачи ЛП нет, то соответствующее ее множество lG = Θ пустое. Ему необходимо приписать оценку +∞ (для minz → ).

2. Если все коэффициенты целевой функции целые, то оценку множества можно заменить на более сильную. Для задачи на min – на величину ] [( )lGξ

- ближайшее целое с избытком. Для maxz → на [ ]( )iGξ . Пример:

1 2 minz x x= − − → , 4.32

1 2

1 2

1 2

2 11 387

4 5 5

x xx x

x x

+ ≤ ⎫⎪+ ≤ ⎬⎪− ≤ ⎭

, 4.33

1 2,x x - целое. 4.34

Page 73: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

70

Решим задачу (4.32, 4.33). Получим

0 0 040 23( , ); ( ) ( ) 79 9

x G f xξ= = = − ,

(1)1 1(1)2 1

4,

5.

G x

G x

= ≤

= ≥

Решив эти задачи, получим:

(1) (1)1 2 1 2 2

8 84; 2 ; ( ) 6 6; ; ( )11 11

x x G G O Gξ ξ⎤ ⎡= = = − = − = = +∞⎥ ⎢⎦ ⎣.

(1)1G⇒ - перспективное множество. Разбив его на два подмножества по

x2, получаем:

)2(: 2)1(

1,1 ≤xG & (1), (2) …

)3(: 2)2(

2,1 ≥xG & (1), (2) …

Переобозначим:

(1) (2) (1) (2) (1) (2)1,1 1 1,2 (2) 2 (3); ;G G G G G G= = = .

Решим задачу на (2)1G . Получим

2 (2)1 1

3 3(3 ;2); 5 54 4

x Gξ ⎤ ⎡= = − = −⎥ ⎢⎦ ⎣

А на (2)2G получим :

(2) 2 (2)2 2 2

1 1: (2 ;3), ( ) 5 52 2

G x Gξ ⎤ ⎡= = − = −⎥ ⎢⎦ ⎣,

(2)3 ;G O ξ= = +∞ .

Берем оценку первую по порядку, т.к. одинаковые:

Page 74: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

71

(2)1,1 1

(2)1,2 1

: ( 3),

: ( 4).

G x

G x

Переобозначим (получим 4 подмножества). Решив задачу на (3) (3) (3)

1 1 1(3;2); ( ) 5G x Gξ→ = = − ,

(3) (3)2 2; ( )G O Gξ= = +∞

(3) (3) (3)3 3 3

(3) (3)4 4

1 1(2 ;3); ( ) 5 5,2 2

; ( ) .

G x G

G O G

ξ

ξ

⎤ ⎡→ = = − = −⎥ ⎢⎦ ⎣= = +∞

Получено целочисленное решение ( )2,3)3(1 =x . Применим условие опти-

мальности.

f(3, 2) = -5 = min-5, +∞, -5, +∞ = -5.

Условие оптимальности выполняется. Решение (3)1 (3;2)x = является оп-

тимальным * 5z = − . Изобразим дерево решений (Рис. 19).

Рис. 19

0G

)1(2G)1(

1G

)2(1G )2(

2G

)3(1G )3(

2G

7−=ξ

∞=ξ

∞=ξ5−=ξ

5−=ξ 5−=ξ

6−=ξ

41 ≤x

21 ≤x

41 ≥x

31 ≥x

51 ≥x

2;3 21 == xx

31 ≤x

Page 75: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

72

4.7. Алгоритмы решения задач булевского программирования

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

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

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

Рассмотрим задачу линейного булевского программирования

1

max(1) ,i ii

L c x=

= →∑ (4.34)

1

, 1, (2) ,n

ij j ii

a x b i m=

≤ =∑ (4.35)

0,1 (3) .jx ∈ (4.36)

Существует 2n вариантов решения, часть из которых допустима. При большом n придётся проверять все m ограничений, а проверка каж-

дого ограничения – это трудоемкая операция. Рассмотрим процедуру пере-бора, положенную в основу аддитивного алгоритма Балаша [8].

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

ncccc ≤≤≤≤ ...321 .

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

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

ОтформEquation

Page 76: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

73

подсчитывается величина целевой функции и она объявляется рекордом. По-сле этого процедура меняется.

Балаш предложил добавить некоторое фильтрующее ограничение. Идея его в том, что незачем проверять вектор на допустимость, если он не превос-ходит рекорда Z* :

*

1.ij j

jc x Z

=

>∑ (4.37)

Если ограничение (4.37) не выполняется, то переходим к следующему вектору, в противном случае – к ограничению (4.35). Если новый вектор удовлетворяет всем ограничениям, то, подставляя его в (4.34), получим но-вый рекорд Z* и формируем новое фильтрующее ограничение, заменяя Z* на Z**. Если пройден весь список, то последний рекорд даёт решение. При этом мы экономим на проверке ограничений.

Пример: 1 2 3 43 2 maxz x x x x= − + + → ,

1 2 3 42 4 10x x x x− − + ≤ ,

1 2 3 43 2 2 1x x x x− + + + ≥ ,

1 2 34 2 4,0,1,j

x x xx

− − ≤∈

2 4 3 12 3 maxz x x x x= − + + + → ,

2 4 3 14 2 10x x x x− + − + ≤ , (1)

2 4 3 12 2 3 1x x x x+ + − ≥ , (2)

2 4 3 10 2 4 4x x x x− + ⋅ − + ≤ . (3)

Составим таблицу и получим первый допустимый вектор (0010); z=2. Со-ставляем фильтрующее ограничение:

2 4 3 1(0) 2 3 2x x x x− + + + > .

ОтформатEquation

ОтформатEquation

Удалено:

Удалено:

Удалено:

Page 77: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

74

Находим новый рекордный вектор (0110); z=3, новое фильтрующее огра-ничение

2 4 3 1(0) 2 3 3x x x x− + + + > .

Наконец находим новое рекордное значение (1111); z=5. Т.к. список ис-черпан, то последний рекорд – это оптимальное решение.

max 5z = .

Эффективность процесса можно оценить количеством значков в таблице. В современных алгоритмах (например, в алгоритме Лемке-Шпильберга) поря-док перехода от одного вектора к другому меняется в соответствии с анализом коэффициентов модели задачи:

1. Критерий недопустимости – запрещает двигаться к некоторым векто-рам, которые заведомо недопустимы.

2. Проверяются целевые функции – множеству дается оценка (подробнее см.[7,10,23]).

Таблица 31

x 1 2 3 (0) z 0 0 0 0 + - 0 0 0 1 + - 0 0 1 0 + + + 0 0 1 1 + - +

2

0 1 0 0 - 0 1 0 1 + - + 0 1 1 0 + + + + 0 1 1 1 + - +

3

1 0 0 0 - 1 0 0 1 - 1 0 1 0 - 1 0 1 1 + - +

1 1 0 0 - 1 1 0 1 - 1 1 1 0 - 1 1 1 1 + + + +

5

В алгоритме Балаша исполь-зуются и другие ограничения, по-зволяющие отсечь некоторые ре-шения (см. [7]). Рассмотрим неко-торые из них.

Рассмотрим правило, по кото-рому можно отсеивать варианты. Пусть N - множество индексов всех двоичных векторов. Под-множество множества N, состоя-щее из таких элементов j, что ка-ждому j поставлено в соответст-вие 0,1jx ∈ , называется частич-ным решением, а множество ин-дексов обозначим V.

Переменные xj, номера кото-рых не принадлежат этому под-множеству, называются свобод-ными, множество индексов сво-бодных переменных обозначим S.

Пример: Вектор переменных (x1, x2, x3, x4, x5) N=(1, 2, 3, 4, 5), (x1, 0, 1, x4, x5) - частичное решение, V=(2, 3),

ОтформEquation

ОтформEquation

Отформрусский

Page 78: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

75

S = N/V,

S= (1, 4, 5) - номера свободных переменных.

Если частичное решение содержит k переменных, то существует 2n-k раз-личных дополнений частичного решения.

Пусть каким – то образом выбрано частичное решение, содержащее k пе-

ременных, тогда проверка 2n-k его дополнений на допустимость по условию (4.35) называется зондированием.

Если до этого получен рекорд Z* и если удаётся установить, что для ка-кого – то частичного решения не существует допустимого дополнения, при-водящего к лучшему рекорду, то говорят, что частичное решение прозонди-ровано, т.е. что это подмножество можно отсеять.

Балаш установил, что если V определяет переменные зондированного решения, а Z* - ранее достигнутый рекорд, то зондируемое решение x не имеет допустимого дополнения, улучшающего Z*, если выполняется ус-ловие:

min( ,0) ,ij i ij jj S j

a b a x∈ ∈Ω

> −∑ ∑ при любом 1, (5)i m= , (4.38)

Например, пусть задача содержит ограничения:

1 2 3 4 52 6 4 0x x x x x− + + + − ≤ ,

1 2 41, 1, 0x x x= = = ,

(1,3,4), (1,2,3,4,5), 2,5N SΩ = = = .

Проверим наличие допустимых дополнений для выбранного частичного решения.

1 1 1min( ,0) 1; 5; 5; 1 5.ij j j j jj S j v j v

a a x b a x∈ ∈ ∈

= − = − = − − > −∑ ∑ ∑

Рассмотрим другое правило отсеивания вариантов. Если для некоторой свободной переменной xk имеет место соотношение

1min( ,0) , , 1,ij ik i j jj S j v

a a b a x i m∈ ∈

+ > − ∀ =∑ ∑ ,

то

Отформатинтервал ППосле: 6 п

Отформатрусский (Ро

Отформатрусский (Ро

Код поля

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Page 79: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

76

0, 0,1, 0.

ikk

ik

åñëè ax

åñëè a− ≥⎧

= ⎨ − <⎩ (4.39)

Кроме этих двух правил можно использовать, так называемый, признак составных ограничений, позволяющий установить факт наличия или отсут-ствия допустимых дополнений некоторого частичного решения, путём ана-лиза составного ограничения.

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

ний. Пример: Пусть задача состоит из такого решения x1, x2, …, x5, которое имеет огра-

ничения:

-x1 -x2 – x3 <= -1,

2x2 - 2x4+ 2x5 <=0,

xj=0,1.

Максимизируется функция

Z=2x1+x2+x3 max.

Пусть при некотором частичном решении рекорд составлял Z=2. Опреде-лить, имеет ли частичное решение x1=0 допустимое дополнение, улучшаю-щее достигнутый рекорд.

Прибавим к ограничениям фильтрующее ограничение, то есть

2x1 + x2 + x3 ≥ 3, получим новую систему ограничений:

- x1 – x2 – x3 ≤ -1,

2x2 – 2x4 +2x5 ≤ 0,

- 2x1 – x2 – x3 ≤ -3.

Сформируем составное ограничение

- 3x1 – 2x3 – 2x4 + 2x5 ≤ -4.

Отформрусский

Отформрусский

Отформрусский

Отформрусский

Отформрусский

Отформрусский

Page 80: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

77

и применим к нему признак (4.38)

min( ,0) 4, , 0, 4 4ij ij jj S j

a a x∈ ∈Ω

= − = − = −∑ ∑

Получаем - 4= - 4, следовательно, ограничение выполняется, то есть при x1=0 не существует дополнения, улучшающего рекорд Z=2.

На основе полученных правил запишем алгоритм. 1. Пуст ли основной список задач? Если «да», то вычисления окончены и

переходим к п.5. Если «нет» - присвоим счетчику числа задач основного списка α значение α := α -1, т.е. вычеркиваем одну задачу. Счётчику чис-ла итераций k := k +1 (в начале, очевидно, k = 1).

2. Существует ли допустимое дополнение при выбранном частичном реше-нии, улучшающее значение рекорда Z*? Проверим условие (4.38). Если «да», то определяем эти значения по формуле (4.39) и переходим к п.3. Если «нет» - положим Z(k+1) = Zk и переходим к п.1.

3. Содержат ли допустимое дополнение частичного решения и зондируемое решение n переменных? Если «да» - запоминаем решение, значение рекорда Z* и переходим к п.1. Если «нет» - переходим к п.4.

4. Выбираем любую свободную переменную xi, не входящую в число до-пустимых переменных. Вводим две задачи в основной список (в одной xi=0, в другой xi=1). Положим Zk = Z(k-1) и переходим к п.1. Печать результата решения: рекорд и значения переменных либо «задача

решения не имеет». Конец алгоритма.

ОтформатОтступ: Сл 17 пт, нумУровень: 1нумерацииНачать с: 1слева + Вы+ ТабуляциОтступ: 0Поз.табулялевому краВыровнять

ОтформатОтступ: Сл 17 пт, нумУровень: 1нумерацииНачать с: 1слева + Вы+ ТабуляциОтступ: 0Поз.табулялевому краВыровнятьтабуляцииОтформатОтступ: Сл 17 пт, нумУровень: 1нумерацииНачать с: 1слева + Вы+ ТабуляциОтступ: 0Поз.табулялевому краВыровнятьтабуляции

Page 81: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

78

5. ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ (ДП) Это особый метод, который специально приспособлен для оптимизации

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

Рис. 20

Рассмотрим экономическую задачу распределения ресурсов: пусть есть начальный капитал k0. Его можно потратить на несколько предприятий Р1, Р2, …, Рn (Рис. 20). Xij, - количество средств вкладываемых в i - м году в j - е предприятие. В результате получается эффект:

( )ij ijW f X= .

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

( ) maxijW f X= →∑ ,

0ijX k≤∑ .

Так как функция W нелинейная, то получаем задачу нелинейного про-граммирования при очень большом числе переменных (см. главу 6). Решать её сложно, кроме того, часто Xij - дискретные значения. Возникает вопрос : нельзя ли решить задачу последовательно, т. е. найти оптимальное вложение для первого года, второго и т. д., т. е. провести последовательную оптимиза-цию? В большинстве задач так делать нельзя, т. к. решение, принимаемое на

ОтформEquation

ОтформEquation

Отформниже на

ОтформШрифт:

Удалено

Удалено

УдаленоНач

Удалено

Удалено

Page 82: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

79

одном шаге, оказывает влияние на последующие шаги. Рассмотрим простой пример.

Проанализируем процесс забега стайеров на 800 метров (рис. 21).

Рис. 21

Каждый бегун имеет запас энергии x0, который он тратит на каждые 100 метров - величина затрат энергии xi :

ti – время бега стайера на отдельном участке i; T – общее время забега на 800м.

8

1

minii

T t=

= →∑ .

Если уменьшать каждое ti отдельно, то за 800 м время стайера будет ху-же, так как у него не будет сил продолжать бег.

Значит нужно бежать так, чтобы оставались силы на всю дистанцию. Очевидно, каждый бегун решает задачу: Σti(хi) → min; при условии Σхi

≤ х0. Казалось бы, чтобы сумма времен ti была минимальной нужно ми-нимизировать каждое ti, т.е. бежать как можно быстрее первую стомет-ровку, затем как можно быстрее вторую и т.д. Читатель, вспомнив свой опыт бега, конечно, понял, что такой способ оптимизации не верен. Ока-зывается, оптимальной величиной xi и, соответственно ti, будет такая, ко-торая обеспечит минимальное общее время бега за все 800 метров. Т.о. мы сформулировали принцип «действуй с прицелом на будущее». Други-ми словами оптимальность «в малом» необходимо понимать через опти-мальность «в большом». Это чрезвычайно важный принцип системного подхода к оптимизации систем.

5.1 Принцип оптимальности Р.Беллмана

Метод ДП является наиболее общим методом решения задач оптималь-ного управления. Он применим как для задач с линейной ЦФ, так и с нели-нейной , а также в случае, когда управляемые переменные целые числа, при этом сама ЦФ может быть задана таблицей, что наиболее распространено в практических задачах.

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

ОтформатШрифт: ку

ОтформатШрифт: ку

Отформат

Отформат

Отформатразреженн

Отформат

Отформат

Отформат

Отформат

Отформат

Удалено: ¶Рис. 20¶

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Page 83: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

80

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

Возникает вопрос: как нужно управлять отдельными элементами систе-мы, чтобы показатель эффективности всей системы был максимальным?

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

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

Назовем состоянием системы S один или несколько параметров систе-мы. Например, деньги на лицевом счете предприятия. Обозначим управление на i-м шаге Ui – это некоторое воздействие, которое испытывает система и изменяет свое состояние S.

Если перед i-м шагом состояние системы S и мы принимаем управление Ui, то за i-й шаг мы можем получить некоторый выигрыш, который обозна-чается ωi(Si, Ui), при этом состояние S переходит в S’:

S →S’=ϕi(S, Ui).

Рис. 22

Считается, что функции ωi(Si, Ui), и ϕi(S, Ui) известны. Беллман ввел понятие условного оптимального выигрыша Wi(S). Эта

функция показывает оптимальный выигрыш (наилучший результат), полу-ченный за все шаги от i-го и до конца, если i-й шаг начинается с состояния S. Тогда согласно принципу оптимальности Беллмана, принимая решение на i шаге, мы должны выбрать Ui так, чтобы выигрыш был максимальным от i-шага и до конца.

ωi(Si, Ui)

S S

Wi+1(S’)

ωi(Si, Ui)+Wi+1(S’)

Отформ

ОтформШрифт:

Отформ

Отформ

ОтформШрифт:

Отформeq, По це

Отформ

Отформ

ОтформШрифт:

Отформ

Отформ

ОтформШрифт:

Отформ

Отформeq

Отформ

ОтформШрифт:

Отформ

ОтформШрифт:

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Page 84: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

81

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

Любой процесс имеет где-то окончание, т. е. говорят, что он имеет «го-ризонт планирования». Тогда последний этап «не имеет будущего». Вот именно его можно оптимизировать только из условий данного этапа. После этого приступают к оптимизации (m-1)-го этапа. При этом мы задаём со-стояние, с которого начинается (m-1)-й шаг (условие). Поэтому функцию Wi(S) называют условным оптимальным выигрышем. Таким образом, про-цесс оптимизации по методу ДП разворачивается сначала от конца к началу, а затем от начала к концу. В различных задачах может быть известно либо начальное состояние, либо конечное, либо то и другое. Принцип Беллмана нашёл практическое применение в так называемом методе программно-целевого планирования (любое действие планируется как элемент некоторо-го проекта).

5.2. Решение графовых задач на основе принципа Беллмана

Задача о наборе высоты и скорости летательного аппарата

2 2

1 7

2 4

1 2

1 4

1 7

1 9

9

1 5

1 9

1 2 1 1

1 9

2 0

1 8

81 1

1 1

1 6

1 2 6 2

5 4

3

2

3

5

2

1

6

6

4

3

8

1

3

4

6

4

4

7

5

3

5 4 26

1 3 43

4 7 56

4 3 54

5 7 27

V

H

h 0

v0

S0

Sk

Рис. 23

ОтформатЗаголовок

Удалено:

Удалено:

Удалено:

Page 85: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

82

Летательный аппарат находится на высоте h0 и летит со скоростью v0. Необходимо перевести его на высоту h1 со скоростью v1. Причём h0>h1, v0>v1. Разобьём участок от h0 до h1 на n частей:

1 0

1 0

,

.

h hhn

v vvm

−Δ =

−Δ =

Известен расход горючего при переводе системы на Δh при v=const и на Δv при h=const. Таким образом, из каждого состояния есть лишь два управ-ления.

Начиная с конца помечаем все узлы (состояния) величинами условных (для данного узла) оптимальных расходов горючего от этого узла и до конца, a стрелками условные оптимальные управления. Указанные действия в уп-рощенном виде демонстрируют рассмотренную процедуру решения на осно-ве уравнения Беллмана. Дойдя от конечного состояния до начального и по-лучив 22, мы получим минимальную величину потерь горючего. Идя по стрелкам от начального состояния до конечного, мы получаем безусловные оптимальные управления (показаны двойной линией).

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

5.3. Функциональное уравнение Беллмана

Назовём состоянием системы вектор координат: ( )1 2, ,..., LS ξ ξ ξ= . В не-

которых задачах состояние - одна величина. Тогда работу системы можно представить как движение в фазовом пространстве - пространстве состояний. Назовём шаговым управлением - управление на i-м шаге. Рассмотрим про-цесс управления системой за m шагов. Функция ( )ii US ,ω называется выиг-рышем на i-м шаге. Здесь S-состояние перед i-м шагом, а Ui - управление на i-м шаге.

Величина ( )ii US ,ω должна быть известна до начала динамического про-граммирования. Если состояние перед i-м шагом было S и мы приняли какое-то управление Ui, то система перейдёт в новое состояние ( ),i iS S Uϕ′ = . Эта

функция должна быть так же известна. Если эти функции не заданы, то их надо сформулировать. Введём функцию Wi(S) - условный оптимальный вы-игрыш. Это выигрыш на всех этапах от i до конца, если i-й шаг начинается с состояния S.

Рассмотрим m шагов. Пусть с (i+1)-го шага мы системой управляем оп-тимально, тогда величина выигрыша будет такая - ( )1iW S+ ′ . Применим на i-м

Отформ

Отформ

Отформ

Отформ

Отформ

Отформрусский

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Page 86: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

83

шаге произвольное управление Ui, тогда ( )iW S% - неоптимальный выигрыш, т. к. на i-м шаге мы применяем неоптимальное управление Ui. Чтобы от i-го шага и до конца получить оптимальный выигрыш, нужно изменять Ui так, чтобы

( ) ( ) ( ) ( )1max , ; ,i

i i i i i iUW S S U W S S S Uω ϕ+ ′ ′= + = ,

( ) ( ) ( )1max , ,i

i i i i i iUí åèçâåñò í î èçâåñò í î í åèçâåñò í î

W S S U W S Uω ϕ+

⎧ ⎫= + ⎡ ⎤⎨ ⎬⎣ ⎦

⎩ ⎭.

Это функциональное уравнение Беллмана. Для использования уравнения Беллмана начинают с конца:

1. i=m,

( ) max ( , )m

m m mUW S S Uω= ;

2. i=m - 1,

( ) [ ] 1

1 1 1 1 1max ( , ) ( , )m

m m m m m mUW S S U W S Uω ϕ

−− − − − −= +

И так, идя от конца к началу, мы получаем последовательно:

( ) ( ) ( )1 1, ,...,m mW S W S W S− ,

( ) ( ) ( )1 1, ,..., m mU S U S U S− .

Придя в начальное состояние W1(S), мы можем подставить S=S0 и W1(S0)=Wmax - это безусловный выигрыш.

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

S=S0 ( ) *1 0 1U S U→ = →

( )* *0 1 1,S U Sϕ = → ( )* *

2 1 2U S U= →

( )* *1 2,S Uϕ …

Рис. 24

Рис. 25

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Формат: С

Отформат

Отформат

Отформат

Отформат

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Page 87: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

84

Итак, в результате мы получаем оптимальное решение:

* * *1 2 max, ,..., ;mU U U W .

5.4. Задачи распределения ресурсов

5.4.1. Классическая задача распределения ресурсов Распределение ресурсов - это едва ли не самая распространённая опера-

ция. Под ресурсом в общем случае понимают физическую или абстрактную величину, которую система использует для производства полезного продук-та. Например: горючее, деньги, время, объём склада. Как правило - ресурс ограничен, поэтому встаёт задача так распределить ресурс между отдельны-ми элементами системы, чтобы суммарный эффект был максимальным. Рас-смотрим классическую задачу распределения ресурсов.

Имеется начальное количество ресурсов k0, которое необходимо распреде-лить между двумя отраслями. Каждая отрасль работает в течении m лет. Если в первую отрасль в i-й год вкладываются средства Xi, то доход f(Xi), если же во вторую вкладываются Yi, тогда доход g(Yi). Средства тратятся, принося доход, а новых средств не поступает и полученный доход не вкладывается.

Нас интересует суммарный доход:

( ) ( )1

m

i ii

W f X g Y=

= +∑ .

Суммарный выигрыш равен сумме выигрышей на каждом шаге. Состоя-нием системы является количество средств перед i-м шагом. Так как новых средств не поступает, то ресурсы «тают».

Управление Yi может быть записано как Yi=k-Xi. После i-го шага в первой отрасли остаются средства ( )iXϕ , а во второй ( ) ( )i iY k Xψ ψ= − . Эти функ-

ции называются функциями траты. Мы можем составить уравнение Беллма-на. В этой задаче на i-м шаге одно управление Xi и одно состояние k.

( ) ( ) ( ) ( ) ( ) 1maxi

i i i i i iXW k f X g k X W X k Xϕ ψ+= + − + + −⎡ ⎤⎣ ⎦ ;

( ) ( ) ( ) : max è ò. ä.m

m m mXi m W k f X g k X= = + − ;

ОтформEquation,строка: висячих

ОтформШрифт:

Отформразреженуплотнен

Отформ

Отформ

ОтформEquation

Отформрусский

Отформ

Отформниже на

ОтформEquation

Отформ

Отформ

ОтформШрифт:

Удалено

Удалено

Удаленоления

Удалено

Удалено

Удалено

Удалено

Удалено

ются…о…

Page 88: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

85

( ) ( ) ( ) * * *1 0 1 0 max 1 0 1 1 0 1, , ; ,W k k k W k W X k X Y k X= = = = − .

Используя функции траты, получим количество средств после i-го шага:

( ) ( ) ( )* * * * *1 1 1 2 1 2; X Y k X k Xϕ ψ+ = = и т.д.

Задача о распределении ресурсов до-

пускает геометрическую интерпретацию:

1 1 0X Y k+ = .

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

X

Y

k0

k0

X1 ϕ(X1)

Y1

ψ (Y1)

Рис. 26

5.4.2. Неоднородные этапы и распределение ресурсов по n отраслям Распределение по неоднородным этапам. Выше мы считали, что все функции одинаковы на всех этапах. Во многих

задачах функции меняются от этапа к этапу: ( ) ( ), ;i i i if X g Y ( )i iXϕ ( )i iYψ . Покажем, что процедура динамического программирования принципиально

не меняется. Запишем уравнение Беллмана:

( ) ( ) ( ) ( ) ( ) 1maxi

i i i i i i i i i iXW k f X g k X W X k Xϕ ψ+= + − + + −⎡ ⎤⎣ ⎦ .

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

Распределение ресурсов между тремя и более отраслями. В этом случае на каждом шаге будет уже n управлений, но одно из них

может быть выражено как: 1

1

nn ji i

jX k X

=

= −∑ . В этом случае в правой части

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

5.4.3. Распределение ресурсов с резервированием В такой модели если средства распределяются между двумя отраслями,

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

ОтформатEquation

Отформатрусский (Ро

ОтформатОбычный

Отформат

Отформат

Отформат

Отформат

Отформат

ОтформатEquation

Отформатширине

Отформатподчеркива

Отформатширине

Отформатподчеркива

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено: чество средс

Page 89: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

86

Начальное количество средств разделяется на первом этапе на X1 и на k - X1 (резерв), на втором этапе подлежат распределению оставшиеся сред-ства и из резерва. Такую задачу можно представить с одной реальной от-раслью, а другой - фиктивной (не приносящей доход и не расходующей средства). На рисунке 27 показаны графики распределения ресурсов с ре-зервированием и в дополнение к этому с нулевыми функциями трат.

а) б) Рис. 27

Решение такой задачи сводится к классической, задав функции дохода и трат в виде:

( ) ( ), 0f X g Y = - функции дохода; ( ) ( ), 0X Yϕ ψ = - функции трат.

Задача с резервированием в одной отрасли при нулевых функциях траты. Все функции траты ( ) 0iõϕ = .

В этом случае задача сводится к более простой:

( ) 0iõϕ = ,

1( ) max

m

i ii

W f x=

= →∑ ,

0ix k=∑ .

Рассмотрим более частный случай - все функции одинаковые на всех шагах.

( ) ( ),if x f x i= ∀ .

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

Отформ

Отформрусский

Отформ

ОтформЗнак

Отформразрежен

Отформрусский

Код пол

Отформподчерки

Отформ

ОтформEquation

Отформуплотнен

Отформ

Удалено

Удалено

Удалено

Удалено¶

Удалено

Удалено

Удалено

Удалено

Page 90: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

87

1

( ) maxm

ii

W f x=

= →∑ , (5.1)

0ix k≤∑ . (5.2)

Эта задача имеет теоретическое решение: 1 Если функция f (x) неубывающая и выпуклая вверх, то оптимальным

распределением является равномерное распределение: xi=k0/m. 2 Если функция f (x) неубывающая и выпуклая вниз, то оптимальным

распределением является такое - все распределение в один этап (элемент) и ничего в другие: xr=k0, xi=0 для всех i, кроме i=r.

Покажем это на графических примерах.

Рис. 28

1. Пусть f(x) – выпуклая вверх, на-пример ( )f x x= ,

1 2 maxW x x= + → , 1 2 0x x k+ = .

Тогда линии постоянного уровня W – это дуги линий астроид, симмет-ричных относительно биссектрисы координат. Поэтому последнее каса-ние астроиды гипотенузы треуголь-ника при W max будет в точке xi = k0/2. Очевидно, для m шагов будет xi = k0/m.

Рис. 29

2. Пусть f(x) - выпуклая вниз, на-пример 2( )f x x= , 2 2

1 2 maxW x x= + → ,

1 2 1x x k+ = . Из рисунка видно, что в этом слу-

чае решение будет лежать на оси коор-динат, т.е. xr = k0.

5.4.4. Распределение ресурсов с «вложением доходов» В классической задаче считается, что полученный доход на i-м шаге в

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

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Page 91: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

88

эффект. Во многих задачах полученный эффект можно использовать как ре-сурс для следующего шага, объединяя его с оставшимся ресурсом. Если ре-сурс не деньги, то средства нужно привести к единому эквиваленту с остав-шимися средствами. Такая модель является развитием классической модели. Так как оставшиеся средства и доход объединяются, то можно ввести еди-ную интегральную функцию - функцию изменения средств F(Xi) - количест-во оставшихся средств плюс доход после i-го шага, если вложили Xi.

I. ( )iF X ,

II. ( ) ( )i iG Y G k X= − .

Где k -количество средств перед i-м шагом. Выигрыш на i-м шаге зависит от того, как мы подсчитываем доход (эф-

фект) от управления всеми ресурсами. Поставим задачу: максимизировать доход в конце m-го шага. Тогда на всех шагах 1, 1i m= − , доход = 0, 0iW = .

На m-м шаге выигрыш ( ) ( )m m m m mW F X G k X= + − . Подставив эти выражения

в уравнение Беллмана, мы программируем задачу от начала к концу, если имеется начальное количество средств k0. Здесь функция траты:

( ) ( )i i i ik F X G k X′ = + − .

Рассмотрим частный случай: когда F и G неубывающие функции. В этом случае, чем больше значение доход + средства получается в конце i-го шага, тем лучшим условием это будет для проведения (i+1)-го шага. Поэтому мож-но не заботиться о следующих шагах, достаточно обеспечить максимум на каждом шаге.

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

( ) ( ) 1

*1 1 0 1 1max iX

F X G k X k+ − = ,

( ) ( ) 2

* *2 2 2 1 2 2max

XF X G k X k+ − = ,

ОтформШрифт:

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Page 92: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

89

( ) ( ) * *1max

mm m m m m mX

F X G k X k−+ − = , *max mW k= .

Рассмотрим задачу распределения ресурсов с вложением доходов в про-изводство и отчислением. Это наиболее общий случай. Разделим функции дохода и функции траты:

( ) ( )( ) ( )

,,

i

i i

f X g YiX Yϕ ψ

,

и максимизируем суммарный отчисленный доход + оставшиеся средства по-сле m-го шага. Введём функцию отчисления ( )i ir D ; D-доход. Тогда выиг-

рыш на каждом шаге:

( ) ( )( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( ) ( ) ( )1

, 1, 1

*

max

i i i i

m m m m m m

m

ii

i i i i i i

W r f X g k X i m

W r f X g k X X k X

W W

k X k X f X g k Xi r f X g k X

ϕ ψ

ϕ ψ=

= + − = −⎡ ⎤⎣ ⎦= + − + + −⎡ ⎤⎣ ⎦

= →

′ = + − + + − − + −⎡ ⎤⎣ ⎦

∑ (5.3)

Уравнение Беллмана для i-го шага будет выглядеть так:

( ) ( ) ( )maxi

i i i iXW k r f X g k X⎡= + − +⎤⎦⎣ ( )1i iW Xϕ+ +⎡⎣ ( ) ( )i ik X f Xψ − + +

( ) ( ) ( ) i i i ig k X r f X g k X ⎤+ − − + −⎡ ⎤⎣ ⎦⎦ , 1, 1i m= −

для i=m надо учесть (5.3). Если ri=1, то мы получаем классическую задачу.

5.5. Расширение модели задач динамического программирования

Учёт предыстории процесса Мы считали, что все функции, как выигрыша, так и траты, зависят от со-

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

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Page 93: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

90

( )1 2, , , ,i i i LS S S S S− − −= K ,

Si-L - состояние за L шагов до i-го. Тогда, считая аргументы векторами, функции не меняются ( ) ( ), , ,i i i iS U S Uω ϕ . Но задача становится сложней в вычислительном аспекте. Пусть S имеет k координат и предыстория распро-страняется на L шагов, тогда в результате число переменных будет k×L. Вот почему подобные задачи практически можно решать если k×L≤3.

ДП для задач со многими ограничениями Пусть в задаче распределения ресурсов есть два ограничения (два ресурса).

( )1

1 11

2 21

max,

,

.

m

ii

m

i iim

i ii

W f X

a X b

a X b

=

=

=

⎫= → ⎪

⎪⎪

≤ ⎬⎪⎪

≤ ⎪⎭

Введем два параметра состояния K1 и K2. Тогда функции условных опти-мальных выигрышей и условных оптимальных управлений будут иметь по два аргумента W(K1, K2); xi(K1, K2). Уравнение Беллмана для решения такой задачи имеет вид

( ) ( ) [ ] 1, 2 1 1 1 2 2max ;i

i i i i i i i iXW K K f X W K a X K a X+= + − − .

При этом величина Xi на каждом этапе варьируется в пределах от нуля до величины di :

di= min(K1/a1i ;K2/a2i)

Видно, что для двух ограничений, если каждая из величин K1, K2 может принимать 102 значений, то функцию Wi(K1,K2) приходится табулировать в 104 точках. Таким образом, наиболее серьезным препятствием для практиче-ского применения ДП является число параметров задачи, что заставило Р.Беллмана заявить о так называемом «проклятии многомерности». Некото-рые способы понижения размерности смотри в [10].

Задача с мультипликативным критерием До сих пор мы считали, что суммарный выигрыш равен сумме выигры-

шей, полученных на i-х шагах. Но есть задачи, где общий критерий равен произведению критериальных величин на каждом шаге:

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформрусский

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Отформ

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Page 94: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

91

1

m

ii

W W=

=∏ .

В этом случае так же можно применить уравнение Беллмана, но вместо этого можно взять функцию lnW W′ = . Оптимальные решения будут одина-ковы ввиду монотонности логарифмической функции. Но можно при выводе уравнения Беллмана учесть, что

( ) ( ) 1maxi

i i iUW S W W S+ ′= × ,

( ) ( ) ( ) ( )1 2 1 2, , , n nW F W W W F W F W F W= = ⊗ ⊗ ⊗K K .

Т.о. метод ДП применим в случае, когда аргументы в критериальной функции разделяются (смотри вышеприведенное выражение)

Пример: устройство состоит из n узлов. Имеется некоторый ресурс k0, который может использоваться для повышения надёжности каждого узла. Необходимо так распределить ресурс, чтобы суммарная надёжность была максимальной. Получаем задачу

( )1

maxm

i ii

Q q X=

= →∏ ,

где ( )iq X - надёжность каждого узла, 0iX k≤∑ .

Операции не связанные со временем Во многих задачах распределение ресурсов не связано с временными ша-

гами. Ресурс распределяется по объектам. Например, если рассмотреть рас-пределение ресурсов между n объектами, когда на каждый объект задана функция выигрыша, то такая задача эквивалентна рассмотренной нами зада-че о распределении ресурсов с резервированием в одной отрасли по n шагам. Это наиболее распространенная задача распределения ресурсов, поэтому приведем ее полное решение методом ДП.

5.6. Пример решения задачи распределения ресурсов

Рассмотрим пример. Завод получил 4 новых станка, которые необходимо распределить между тремя цехами. Известна дополнительная прибыль, кото-рая получится в i-м цехе, если туда поставят хi станков – f(хi).

ОтформатEquation, П

Отформат

Отформат

Отформатна 3 пт

Код поля

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформат

Отформатeq

Отформат

Отформат

Отформат

Отформат

Отформат

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Page 95: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

92

Состоянием является оставшееся (текущее) количество станков (k). Пусть мы распределяем оставшиеся k станков. Начинаем с третьего (послед-него) цеха:

3

3

3 3 3( ) max ( )x k

W

W k f x≤

=%

123.

0

1

2

3

4

5

6

0 1 2 3 4

x1

f1

01234567

0 1 2 3 4

x2

f2

0

2

4

6

8

0 1 2 3 4

x3

f3

Рис. 30

Таблица 32

k Х3 3~W W3

0 0 0 0

1 0 1

0 1 1

2 0 1 2

0 1 3

3

3 0 1

0 1 7

2 3

3 7

4

0 1 2 3 4

0 1 3 7 2

7

Таблица 33

k х3опт W3

0 1

0 1

0 1

ОтформЗнак Зна

Отформинтервал

ОтформЧисло коколонкиПромежу1: 35,4 пколонкиКолонкиширины,колонтитстраницы

Удаленоляется остколичествПусть мытавшиесяем с третьцеха:¶

0

1

2

3

4

5

6

0

f1

01234567

0

f2

Page 96: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

93

2 3 4

2 3 3

3 7 7

Переходим ко второму ша-

гу:

22 2 2 3 2( ) max ( ) ( )

x kW k f x W k x

≤= + − .

Таблица 34

k х2 2

~W W2

0 0 0 0 1 0

1 1 3

3

2 0 1 2

3 4 3

4

3 0 1 2 3

7 6 4 6

7

4 0 1 2 3 4

7 10 6 7 1

10

Таблица 35

k х2опт W2

0 1 2 3 4

0 1 1 0 1

0 3 4 7

10 Переходим к первому шагу:

11 1 1 2 14( ) max ( ) ( )

xW k f x W k x

≤= + − .

Таблица 36

k Х1 1~W W1

4

0 1 2 3 4

10 9 8 8 3

10

Так как начальное со-

стояние известно, то для

первого шага не нужно перебирать остав-шееся число станков, и берем k=4.

Ответ: х1

*=0, х1*=4-0=4 (подставляем х1

* в табл.4),

х2*=1, х2

*=4-1=3 (подставляем х2* в

табл.2), х3

*=3, х3*=4-3=1.

Отформатна 10 пт

ОтформатEquation

Отформатинтервал Потрывать о

ОтформатEquation, Пв 42,55 пт

Отформатна 10 пт

ОтформатШрифт: ку

ОтформатОтступ: Пепт, Поз.таб42,55 пт

ОтформатШрифт: ку

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Удалено:

Page 97: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

94

5.7. Эффективность динамического программирования

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

W = max)( >−∑n

iixf ,

bxan

iii <∑ .

Для упрощения расчёта примем a1=a2=…=an=1. При простом переборе число возможных вариантов решений (при усло-

вии целочисленности всех переменных) равно числу способов, которыми можно разместить b одинаковых шаров внутри n урн.

Оно составляет

1

( 1)!!( 1)!

b

n b

n bb nC + −

+ −=

−.

При n=5, b=20 имеем 424 10626Ñ = .

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

Для вычисления Wi(k) при фиксированном k необходимо провести k+1 вычислений. Поэтому для заполнения одной таблицы Wi(k) необходимо про-делать

0

( 1)( 2)( 1)2

b

k

b bk=

+ ++ =∑ операций.

Следовательно, для вычисления всех функций W1(k),…, Wn-1(k) необхо-

димо ( 1)( 2)( 1)2!

b bn + +− операций. С учётом вычисления функции Wn(b) об-

щее число операций ( 1)( 1)( 2) ( 1)[( 1)( 2) 2]( 1)2! 2!

n b b b n nN bΣ

− + + + − + += + + = .

При n=5, b=20 имеем N∑=945, что в 11 раз меньше, чем при простом пе-реборе.

Отформвыше на

ОтформEquation,0 пт, ПосПоз.табу320,35 пт

Отформширине,строка:

Отформвыше на

Отформ

Отформ

Отформ

Отформ

Отформниже на

Отформ

Отформ

Отформ

Отформ

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Удалено

Page 98: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

95

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

6.1. Особенности задач нелинейного программирования

Нелинейное программирование (НЛП) - это такая задача математическо-го программирования, в которой либо целевая функция, либо функции огра-ничений, либо они вместе представляют собой нелинейные функции. Термин НЛП применяется только тогда, когда все переменные X-действительные числа. Решение задач НЛП намного сложнее решения задач ЛП, при прочих равных условиях. Рассмотрим особенности задач НЛП, а именно то, где мо-жет находиться оптимальное решение. Для этого будем рассматривать целе-вую функцию двух переменных. В НЛП используют геометрический образ целевой функции как некоторой поверхности, определённой на множестве управляемых переменных. Вид этой поверхности можно представить, изо-бражая в области переменных так называемые линии уровня, (рисунок 31)

Рис. 31

Особенности задач НЛП проиллюстрируем графически на примере задачи:

Удалено:

Page 99: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

96

( ) ( )

⎪⎪⎩

⎪⎪⎨

≤≤≤≤≥+

≤→−+−=

3.x0;3x0,bxx

,axx,min1x1/2xF

21

21

21

22

21

Изобразим графически область допустимых решений (ОДР) и найдем решение для различных значений a и b. Очевидно, что оптимальное решение будет находиться в точке, где линия уровня имеет самую малую величину в области допустимых решений (ОДР). Это можно представить как «последнее касание» линии уровня ОДР по мере уменьшения этого уровня. Линии уров-ня в этой задаче представляют собой концентрические окружности, а F min соответствует уменьшению их радиуса.

1) a =2, b=2 (рис. 32а);

2) a =1/2, b=2 (рис. 32б).

а) б) Рис. 32

Решение задачи на рис. 32а находится в точке С, где линия наименьшего уровня целевой функции касается прямой 1 2+ 2x x = . Координаты оптималь-

ного решения 45x;

43x 21 == можно найти из простых геометрических сооб-

ражений. Решение задачи на рис. 32б качественно отличается от первого случая,

так как здесь получаются две несвязанных ОДР, дающих две экстремальные точки А и В, являющиеся точками пересечения линий

1 2 1 2x x = и 1 2+ 2x x = .

Page 100: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

97

Точка B является точкой локаль-ного минимума, а точка А точкой глобального минимума. Ее коорди-наты найдем, решив систему урав-нений:

1 2

1 2

1 2,2,

x xx x

=⎧⎨ + =⎩

A A1 2

2 21 0,3, 1 1,72 2

x x= − ≈ = + ≈ .

3) а=2, b=1.

Рис. 33

Решение на рис. 33 находится в точке Д, являющейся координатами цен-тра концентрических окружностей (линий уровня целевой функции).

Из приведенных примеров ясно, что решение задачи НЛП может нахо-диться как внутри ОДР (рис. 33), на одной из границ в произвольной точке (рис. 32а), так и в вершинах ОДР, являющихся точками пересечений функ-ций ограничений (рис. 32б), причем может получиться несколько экстре-мальных точек.

Графическое изображение ОДР и линий уровня F(x) позволяет решать задачи НЛП с двумя переменными.

6.2. Прямые методы одномерной оптимизации нелинейных функций без ограничений

Пусть на множестве U∈R определена функция F(X). Под минимизацией функции F(X) на множестве U будем понимать решение следующей задачи: найти хотя бы одну точку минимума x* и минимум F*=F(X*) этой функции на множестве U.

Многие приближенные методы минимизации применимы только тогда, когда любой локальный минимум F(X) является одновременно и глобаль-ным. Одним из классов функций, удовлетворяющих этому условию, является класс унимодальных функций.

Функция F(X) называется унимодальной на отрезке [a;b], если она непре-рывна на [a;b] и существуют числа α и β, a≤α≤β≤b, такие, что:

1) если a<α, то на отрезке [a; α] F(X) монотонно убывает; 2) если β<b, то на отрезке [β;b] F(X) монотонно возрастает; 3) при x ∈ [α;β]

[ ])(min)(

;

* XFFXFba

== .

ОтформатОтступ: Слстрока: 14нумерованн+ Стиль ну… + НачатьВыравниваВыровнятьТабуляцияОтступ: 36Поз.табуляВыровнятьтабуляции

Page 101: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

98

Для проверки унимодальности функции F(X) на практике обычно используют следующие критерии: 1) если функция F(X) дифферен-

цируема на отрезке [a;b] и производная F(X) не убывает на этом отрезке, то F(X)) уни-модальна;

2) если функция F(X) дважды дифференцируема на отрезке [a;b] и F(X))≥0 при xЕ [a;b], то F(X)) также унимодальна.

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

Метод перебора (пассивный поиск) является простейшим из прямых ме-тодов минимизации. Пусть F(X) унимодальна, и требуется найти какую-либо из точек минимума x* функции F(X) на отрезке [a;b] с абсолютной погреш-ностью ε>0. Разобьем [a;b] на n равных частей точками деления Xi=a+i(b-a)/n, i=0, 1, 2, …, n, где n≥(b-a)/ε. Вычислив значения F(X) в этих точках, пу-тем сравнения найдем точку xm, для которой

F(Xm)=min F(Xi). (6.1) 0≤i≤n

Далее полагаем x*=xm, F*=F(Xm). При этом максимальная погрешность εn определения точки X* равна εn=(b--a)/n.

Метод деления отрезка пополам (метод дихотомии) является простей-шим последовательным методом минимизации. Он позволяет для любой унимодальной функции F(X) построить последовательность вложенных от-резков [a;b] [a1;b1] … [an-1;bn-1] [an;bn], каждый из которых содержит хотя бы одну из точек минимума X* функции F(X).

Пусть ε>0 – требуемая точность определения точки X*. Выбрав δ=2ε, по-строим последовательности an, bn, X1

(n), X2(n), n=0, 1, … , используя

рекуррентные формулы a0=a, b0=b;

x1(n-1)=(an-1+ bn-1- δ)/2, x2

(n-1)=(an-1+ bn-1+ δ)/2; ( 6.2)

an =an-1, bn = x2(n-1), если f(x1

(n-1))≤ f(x2(n-1)),

an = x1(n-1), bn = bn-1, если f(x1

(n-1))> f(x2(n-1)).

Рис. 34

ОтформОтступ: СВыступ: нумерова1 + Стил3, … + НВыравниВыровняТабуляци+ ОтступПоз.табуВыровнятабуляципт

Отформширине,строка: нумераци

Page 102: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

99

а)

Рис. 35 Переход от отрезка [an-1; bn-1] к отрезку [an; bn] методом деления отрезка

пополам иллюстрируется на рис. 35а, если F(X1(n-1))< F(X2

(n-1)),и на рис. 35б, если F(X1

(n-1))>F(X2(n-1)).

Полагая x* = (an+ bn)/2, находим X* с абсолютной погрешностью, не превосходящей величины

εn =(bn- an)/2=(b-a-δ)/2n+1+δ/2.

Кроме этих методов известны и другие, более эффективные методы, та-кие как: метод Фибоначчи, метод золотого сечения, метод поиска по дис-кретным точкам [12, 25].

6.3. Градиентные методы многомерной оптимизации

Если ограничения в задаче НЛП отсутствуют, то применяют все методы оптимизации нелинейных функций. Причём, если в задаче с ограничениями решение гарантированно находится внутри области, то его можно найти этими методами, так как эти ограничения не являются активными и их мож-но отбросить. Рассмотрим наиболее широко применяемые методы оптимиза-ции нелинейных функций многих переменных – это так называемые поиско-вые методы. Здесь поиск оптимальной точки начинают из начальной точки (ее выбирают из некоторых знаний о примерном месте нахождения реше-ния). Далее в соответствии с некоторым разумным правилом переходят в но-вую точку с лучшим значением ЦФ и т.д. до тех пор, пока не выполнится не-которое заранее заданное правило остановки, например выполнение условия по точности.

б)

Page 103: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

100

6.3.1. Классический градиентный метод В этом методе поиска каждая последующая точка получается путем пе-

рехода по вектору градиента, т.е. по нормали к линии уровня. Длина шага выбирается из двух основных условий: если длина шага очень большая, то можно перейти точку экстремума, если очень маленькая, то количество ша-гов от начальной точки до оптимальной будет очень велико. Поиск начина-ется из начальной точки X0. Точка X(k+1) ищется по формуле

X(k+1)=X(k)±λ(k)g(X(k)) , (+) – если F(X) → max и (-) – если F(X) → min,

где g(X(k)) – градиент в точке Xk , )(kλ - множитель, определяющий длину

шага. В координатах kx

j

kkj

kj X

FXX )()()()1(

∂∂

+=+ λ . Величина )(kλ может в простей-

шем случае не изменяться по мере движения λ(k)=λ = const .

Теоретически окон-чание поиска определя-ется следующим услови-ем: )(rX - точка экстре-мума, если g( )(rX ) = 0. На рисунке показаны траектории движения для а) – классического гради-ентного метода; б) – покоординатного ме-тода, в) – метода наискорей-шего спуска.

Для практических вычислений правила остановки могут быть различны. Для простоты можно считать, что rX является точкой экстремума , если

ε≤∂∂

− )1()(max rxjX

F , где ε - заданная малая величина.

Ясно, что этот метод можно применять в том случае, когда можно хотя бы численно вычислить градиент функции в точке. Заметим, что для гладкого оп-тимума при приближении к оптимальной точке величина градиента автомати-чески уменьшается, поэтому даже при постоянной величине λ длина шага уменьшается, что является желательным для любого поискового метода.

Рис. 36

Page 104: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

101

6.3.2. Покоординатный метод В этом методе движение из начальной точки производится сначала вдоль

первой координаты x1. Знак направления совпадает с направлением проекции градиента на эту координату (для F(X) → max) или противоположен ему, ес-ли F(X) → min. Конец шага определяется точкой, где

1XF

∂∂ =0. Затем движе-

ние производится по второй координате X2, затем по X3 и т.д., и, наконец, по Xn. Затем повторяют движение опять по X1, X2 и т.д. Можно использовать

следующее правило остановки: max ε≤∂∂

− )1()( rxjX

F .

6.3.3. Метод наискорейшего спуска и его модификации В этом методе из некоторой начальной точки движение осуществляется

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

( )[ ]kk XgXF λλ

±>0

min .

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

Наискорейший и покоординатный методы называют методами с длин-ным шагом. Кроме этого существуют методы, использующие вторую произ-водную для определения длины шага, например, метод Ньютона:

( )[ ] ( )kkkk XgXFXX 11 −+ ′′+= ,

где [F”(Xk)] -1 - обратная матрица вторых производных в точке Xk.

6.4. Метод деформируемого многогранника Нелдера-Мида

Современные методы поиска минимума (максимума) нелинейной функ-ции чрезвычайно разнообразны. Одним из наиболее эффективных является метод Нелдера-Мида. Идея метода состоит в том, что для определения на-правления движения вычисляются значения целевой функции в вершинах сначала правильного, а затем деформируемого многогранника. Многогран-ник - некоторое тело в n-мерном пространстве. Правильный многогранник называется симплексом, в задачах для двух переменных - это правильный треугольник.

Вычисленные значения целевой функции в вершинах симплекса сравни-ваются, а затем выполняются операции:

Отформатрусский (Ро

Page 105: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

102

1) отражение - поворот симплекса через одну из сторон; 2) растяжение - если идём в правильном направлении; 3) редукция - возврат назад, если перескочили оптимум; 4) сжатие - уменьшение сторон, чтобы движение было с более мелким

шагом.

Рис. 37

В этом методе не использу-ется понятие производной функции, что расширяет его возможности. Поиск оптималь-ной точки ведется путем пово-рота и деформации многогран-ника (симплекса) на основе ана-лиза вершин в соответствии со следующими вышеприведенны-ми операциями. Пусть k – номер итерации, тогда алгоритм Нел-дера-Мида заключается в сле-дующем:

1. Выбирается начальный симплекс (если в задаче 2 переменные n=2, то

симплекс–правильный треугольник). Его вершины ( )0 , 1, 1iX i n= + . Обозна-

чим ( )khX - самая худшая точка, т.е. для ( ) minF X → , ( )( ) max ( );k k

n iF X F X= ( )klX - лучшая точка, т.е. ( )( ) min ( );k k

l iF X F X= . ( )0

kX - центр тяжести всех

вершин, исключая khX , его координаты

( ) ( ) ( )1

01

1 ; 1,n

k k kij nj

iX X X j n

n

+

=

⎡ ⎤⎛ ⎞= − =⎢ ⎥⎜ ⎟

⎝ ⎠⎣ ⎦∑ .

2. Осуществляют отражение (проектирование) ( )khX через центр тяжести,

новая точка получается так:

( ) ( ) ( ) ( )( )0 0k k k k

nX X X Xα α= + −

где α - коэффициент отражения. Обычно α=1. • Если ( )( ) ( )( )k k

lF X F Xα ≤ , то вектор ( ) ( )0

k kX Xα − растягивается в γ раз и по-

лучаем ( ) ( ) ( ) ( )( )0 0k k k k

b àX X X Xγ= + − ;

Отформрусский

Page 106: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

103

• Если для полученной точки ( )( ) ( )( )k kb lF X F X< , то ( )k

hX заменяется на ( )kbX , и переходим к пункту 2. В противном случае заменяем ( )k

hX на ( )kaX

и переходим к пункту 2. • Если ( )( ) ( )( )k k

hF X F Xα > , для всех i≠h то вектор ( ) ( )0

k khX X− сжимается,

получаем точку ( ) ( ) ( )( )0 0 0 1k k kkñ hX X X Xβ β= + − < < .

Точка ( )khX заменяется на ( )k

ñX , и переходим к выполнению пункта 2.

• Если ( )( ) ( )( )k khF X F Xα > , то все векторы ( ) ( )k k

i lX X− уменьшаются в λ раз

(обычно λ=2) - редукция ( ) ( ) ( )( )1 ; 1, 1k k kki l i lX X X X i n

λ= + − = + .

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

11 22

01

1 ( ) ( )1

nr ri

iF X F X

+

=

⎧ ⎫⎡ ⎤− ≤⎨ ⎬⎣ ⎦+ ⎭⎩∑

для простоты можно использовать правило:

, ,, ,

max r ri j p j

j i pX X ε− ≤

1, 1

1,

1, 1

i n

j n

p n

= +

=

= +

решением будет точка ( )0

rX . Например:

2 21 1 1 2( ) 6 2 2 2 minF X X X X X X= − + − + →

выберем параметры: 11, , 2, 2, 0,12

α β γ λ ε= = = = =

решение видно из рисунка 38. Подробнее смотри в [16].

Рис. 38

6.5. Задача НЛП с ограничениями-равенствами

В НЛП особо рассматриваются задачи с ограничениями-равенствами. Это так называемые задачи на условный экстремум. Решение такой задачи производится с использованием функции Лагранжа. Эта функция позволяет

Page 107: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

104

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

( ) ( ) ( )( )1

,m

i i ii

Ô X F X X bλ λ ϕ=

= + −∑ , (6.3)

где F(X) - целевая функция, λi – множители Лагранжа, имеющие смысл ко-эффициентов чувствительности ограничений.

Таким образом, задача минимизации нелинейной целевой функции с ог-раничениями-равенствами сводится к минимизации функции Лагранжа без ограничений. Для её решения используется классический приём: записыва-ются необходимые условия существования экстремума:

( )

10, 1, ;

0, 1, .

mi

iij j j

i ii

Ô F j nX X X

Ô X b i m

ϕλ

ϕλ

=

⎧ ⎛ ⎞∂∂ ∂= + = =⎪ ⎜ ⎟⎜ ⎟∂ ∂ ∂⎪ ⎝ ⎠⎨

∂⎪ = − = =⎪ ∂⎩

∑ (6.4)

После выполнения операций дифференцирования получаем систему в общем случае нелинейных уравнений относительно неизвестных Xi и λi - множителей Лагранжа.

Решение системы (6.4) дает точки подозрительные на экстремум, и их ещё надо проверить с помощью достаточных признаков экстремума. Рас-смотрим некоторые из этих признаков.

1) Пусть *X - точка подозрительная на экстремум, полученная с помо-щью выражений (6.4). Рассмотрим матрицу Гессе – матрицу H вторых про-изводных в точке X*:

2

i j

ÔHX X∂

=∂ ∂

. (6.5)

Если эта матрица определена положительно, то точка X* -минимум, а ес-ли определена отрицательно, то максимум. Если же матрица Гессе знаконе-определена, то в этой точке экстремума нет, а если полуопределена, то этот признак не даёт ответа на вопрос.

2) Пусть Dk - главный определитель матрицы Гессе k-го порядка. а) если 1 2 30, 0, 0,D D D> > > K - это достаточный признак минимума; б) если 1 2 30, 0, 0,D D D< > < K - достаточный признак максимума (знаки

строгих неравенств чередуются); в) если же в определителях знаки ≥ и ≤ , то это необходимый, а не дос-

таточный признак и вопрос об экстремуме не решается.

Page 108: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

105

3) Наиболее «сильным» достаточным признаком является следующий. Составим расширенную матрицу Гессе HB, для чего используем матрицу производных от функций ограничений:

1 1 1

1 2

2 2 2

1 2

1 2

n

n

n n n

n

X X X

X X XQ

X X X

ϕ ϕ ϕ

ϕ ϕ ϕ

ϕ ϕ ϕ

∂ ∂ ∂⎛ ⎞⎜ ⎟∂ ∂ ∂⎜ ⎟⎜ ⎟∂ ∂ ∂⎜ ⎟∂ ∂ ∂= ⎜ ⎟⎜ ⎟⎜ ⎟∂ ∂ ∂⎜ ⎟

⎜ ⎟∂ ∂ ∂⎝ ⎠

L

L

L L L L

L

, 0 Q

HQ H

β ⎛ ⎞= ⎜ ⎟′⎝ ⎠

,

Q′ - транспонированная матрица. Матрица HB имеет размерность (m+n)×(m+n). Признак: точка X* соответствует

максимуму, если начиная с главного определителя порядка m+1, послед-ние n-m определителей матрицы HB образуют знакопеременный ряд, а знак определителя стоящего на (n-m)-м месте от конца совпадает с знаком: если (-1)m+1, то max; если (-1)m, то min.

Рис. 39

Например: n=3, m=2, n-m=1, проверяем D5;

n=7, m=4, n-m=3, проверяем D9. Пример:

max21 →= XXF , 121 =+ XX

Запишем функцию Лагранжа

1 2 1 2 1 2( , , ) ( 1) maxX X X X X Xλ λΦ = + + − → .

Найдем решение, используя необходимые условия

Page 109: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

106

21

12

1 2

0

0

1 0

XX

XX

X X

λ

λ

λ

⎫∂Φ= + = ⎪∂ ⎪

⎪∂Φ ⎪= + = ⎬∂ ⎪

⎪∂Φ= + − = ⎪

∂ ⎪⎭

.

Получаем решение системы:

1 2 ;X X=

1 212

X X= = ; 12

λ = − .

Запишем матрицу BH :

BH =0 Q

Q H⎛ ⎞⎜ ⎟′⎝ ⎠

; H=0 11 0⎛ ⎞⎜ ⎟⎝ ⎠

;

BH =0 1 11 0 11 1 0

⎛ ⎞⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠

; n=2; m=1; m+1=2; n-m=1.

Начиная со второго определителя (m+1=2) знаки чередуются:

1 0D = , 2 0D < , 3 2 0D = > , причем 1 1 1( 1) ( 1) 0m+ +− = − > .

Проверяем: 3D >0, значит в точке X1=X2=1/2 находится максимум. Геометрически задача на условный экстремум сводится к тому, что ре-

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

6.6. Выпуклое НЛП Теория нелинейного программирования разработана только для одного

частного случая выпуклых целевых функций F(X) и ограничений ψi(X) и этот раздел соответственно называется выпуклым программированием.

Page 110: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

107

Выпуклое множество обладает тем свойством, что отрезок, соеди-няющий любые две точки множества, также принадлежит этому множеству. Таким образом, С⊂En выпукло, если из (X1, X2)∈С следует, что λ=θX1+(1-θ)X2∈С для любого 0≤θ≤1.

Рис. 40

Важно: если Сi - выпуклое множество, то С=∩ Сi также выпукло. Т.е. если каждое ограничение в задаче НЛП образует выпуклое множест-

во, то и все ограничения дают выпуклое множество. Дважды дифференцируемая функция F(x) является выпуклой в том и

только в том случае, когда

2

1 1

( ) 0n h

i ji i i j

F X X XX X= =

∂∑∑ Δ Δ ≥

∂ ∂.

Для любых x∈M, M - выпуклое множество и Δхi и Δхj не обращается в нуль одновременно. Для проверки выпуклости F(X) используется критерий Сильвестра:

Функция F(X)- выпукла, если неотрицательны (для строго выпуклой по-ложительна) все главные миноры матрицы Гессе:

11 1

1

...

...

...

k

k

k kk

a a

a aΔ = ;

2

iji j

FaX X∂

=∂ ∂

;

k=1, 2, … n.

Если все Δk>0, то F(X) - строго выпукла. Функция F(X) n переменных ||X1, X21,…, Xn|| = X ∈ G называется выпук-

лой функцией в выпуклой области G, если для любых двух точек выполняет-ся соотношение

(1) (2) (1) (2) (1 ) ( ) (1 ) ( )F X X F X F Xλ λ λ λ+ − ≤ + − , где 0<γ<1.

Когда λ – переменная, то промежуточная точка пробегает значения от X(1) до X(2)

Функция строго выпукла, если знак ≤ можно заменить на <.

Page 111: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

108

Т.о. для задачи на min выпуклая функция не может принимать больших значений, чем линейная (для задачи на max меньших значений).

Другим важным свойством функций, выполнение которого позволяет га-рантировать решение задачи НЛП является так называемое условие Липши-ца.

Говорят, что функция F(X) удовлетворяет на отрезке [a, b] условию Лип-шица, если существует такое число L>0 (константа Липшица), что

| || | ||( ) ( )F X F X L X X− ≤ − . (6.7)

Для всех |X , [ ]|| ,X a b∈ . Для проверки условия Липшица на практике используют следующий

фактор: Если функция F(X) имеет на отрезке [a, b] ограниченную производную,

то она удовлетворяет условию (6.7) , где |

[ , ]max | ( ) |

a bL F X≥ .

6.7. Теорема Куна-Таккера для выпуклого НЛП

Функция Лагранжа является основным инструментом для теоретического обоснования решения задачи НЛП. Если задача такова, что

( ) min,

( ) 0, 1, ,i

F X

X i mϕ

≤ = (6.8)

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

Функция Ф(Х, λ) двух векторных переменных Х= 1( .... )nX X и 1( .... )nλ λ λ= имеет в точке * *( , )X λ седловую точку, если выполняются соотношения:

),,( *** ФХ λ

Ф

Х

λ Рис. 41

Ф *( , )X λ ≥Ф * *( , )X λ ≥Ф *( , )X λ для всех Х и λ из ε-окрестности * *( , )X λ .

Для простейшего случая одной переменной X и одного множителя Ла-гранжа седловая точка геометрически изображена на рисунке 41 (будем счи-

Отформрусский

Отформрусский

Отформрусский

Page 112: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

109

тать, что 0X ≥ и 0λ ≥ ). В седловой точке максимум функции Лагранжа по λ совпадает с минимумом по X .

Необходимыми и достаточными условиями существования седловой точки функции двух векторных переменных являются соотношения

* *

* *

,

*,

*

0,

( ) 0,

0, 1, ,

Xj

i Xj

j

ÔX

ÔXX

X j n

λ

λ

∂≥

∂=

≥ =

* *

* *

,

*,

*

( ) 0,

( ) 0,

0, 1, .

Xj

i Xj

i

Ô

Ô

i n

λ

λ

λ

λλ

λ

∂≤

∂=

≥ =

(6.9)

Эти соотношения связаны с фундаментальной теоремой нелинейного программирования Куна-Таккера о том, что решение задачи НЛП находится в седловой точке функции Лагранжа.

Соотношения (6.9) являются не только необходимыми, но и достаточны-ми, если кроме условий (6.9) выполняются условия регулярности Слейтера: в области допустимых решений существует такая точка X, в которой все ог-раничения не активны, т.е. ϕi(X)<0 для всех i=1,m (в области есть «внутрен-ние» точки).

Теорема Куна-Таккера. Если в задаче НЛП

( ) ( ) ( ) ( ) ( )1

min; 0, 1, ; ,m

i i ii

F X X i m Ô X F X Xϕ λ λϕ=

→ ≤ = = +∑

все функции выпуклы, а множество допустимых решений, определяемое ог-раничениями, удовлетворяет условиям регулярности Слейтера, то для опти-мальности точки X* необходимо и достаточно выполнение условий (6.9).

Если все ограничения линейные, то условия Слейтера в теореме не обя-зательны.

6.8. Квадратичное программирование

Задачей квадратичного программирования (КП) называется такая задача НЛП, когда целевая функция представляет собой сумму линейной и квадра-тичной формы (переменные не старше второй степени), а все ограничения линейные. Для решения таких задач используется симплекс-метод.

Теорема Куна-Таккера позволяет записать условие Куна-Таккера для за-дачи КП и найти седловую точку. Рассмотрим задачу КП в виде

( ) ( )1 1 1

minn n n

j j kj k jj k j

F X p X C X X= = =

= + →∑ ∑∑ ,

Page 113: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

110

( )1

0, 1, , 1, , 0n

i ij j i jj

X a X b i m j n Xϕ=

= − ≤ = = ≥∑ .

В матричном виде - пусть , ,P X B - векторы-столбцы:

min, , 0F p X X CX AX b X′ ′= + → ≤ ≥

C - матрица квадратичной формы, которая должна быть симметрична и положительно-полуопределена, это гарантирует выпуклость F.

Метод Баранкина-Дорфмана непосредственно основан на применении теоремы Куна-Таккера. Запишем функцию Лагранжа в матричной форме для задачи КП:

( )( )

( ); F X ø ò ðàô

Ô X p X X CX AX bλ λ′ ′= + + −1442443 14243

2 ; .Ô ÔV p CX A Y AX bX

λλ

∂ ∂′ ′= = + + − = = − +∂ ∂

Тогда условие Куна-Таккера можно записать в следующем виде:

2 ( )0; 0; 0; 0

0 (**)

AX V bCX V A p

X Y VXV Y

λλ

λ

+ = ⎫⎫⎪ ⎪′− + = − ∗⎬ ⎪

⎬⎪≥ ≥ ≥ ≥ ⎭ ⎪⎪+ = ⎭

Неизвестными являются (X, Y, V, λ). (*) - система линейных уравнений относительно неизвестных; решить её,

значит найти допустимые решения задачи ЛП. (**) - нелинейное условие. Тогда можно переходить из одного допустимого решения к другому и

проверять условие (**). Введём векторы Z= (X, Y, V, λ) и Z% =(V, λ, X, Y), тогда можно записать

12

XV Y Z Zλ+ = × % .

Система (*) также может быть представлена через векторы Z, тогда окон-чательно условия Куна-Таккера будут иметь следующий вид:

Отформрусский выделен

Отформрусский

Page 114: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

111

0 0, 0,

2 0A E b

Z ZC E A p

⎛ ⎞ ⎛ ⎞′× = ≥⎜ ⎟ ⎜ ⎟′− −⎝ ⎠ ⎝ ⎠ (6.10)

( ) 0T Z Z Z= × =% . (6.11)

Метод Баранкина-Дорфмана заключается в следующем: находится до-пустимый вектор Z, удовлетворяющий выражению (6.10), и проверяется ус-ловие (6.11). Далее выбирается новое базисное решение, причём оно выбира-ется так, чтобы величина T(Z) всё время уменьшалась. Для этого использует-ся модифицированная симплекс-таблица, в которой генеральный элемент на-ходится из условия минимизации выпуклой функции T(Z):

( ) minT Z Z Z= × →% , (6.12)

т. е. мы решаем задачи (6.10) и (6.12), вместо (6.10) и (6.11). В симплекс-таблице записываются в качестве базисных переменных все переменные. За-пишем строку базисных переменных:

01

, 1, 2h

n

g g g hh

Z d d t g N=

= + × =∑

где ( )2 2N n m= + , а ht - свободные переменные. Если строка соответствует свободным переменным, то в строке одна еди-

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

( ),0 , 01

,N

j ij i N i N j ii

d d d dα + +=

= × + ×∑

,1

2 ,N

j ij i N ji

d dβ +=

= ×∑

( )0min , ï ðè 0 arg min ,j

j

gj gg

g

dd r

dΘ = < =

2j j j jK α β= +Θ

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Page 115: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

112

Можно показать, что новое значение после замены j-й свободной пере-менной будет Tj=T+ΘjKj. По определению Θj>0, поэтому, чтобы T уменьша-лось Kj должно быть меньше нуля. Рассмотрим величину Kj: величина βj - вторая производная функции T(Z), которая выпукла вниз, и поэтому βj>0, значит Kj может быть отрицательной, если αj>0, значит в качестве генераль-ного надо выбрать этот j-й столбец, строку надо выбрать ту, для которой вы-числяется величина Θ.

Пример:

( ) 2 21 1 1 2 26 2 2 2 minF x x x x x x= − + − + → ,

1 2 2x x+ ≤ ,

1 0x ≥ ,

2 0x ≥ .

Запишем все матрицы, которые нам нужны:

( )2 1

1,1 ; 2; ; 1 2

6; 2; 1; 3.

0

A B C

p n m N

−⎛ ⎞= = = ⎜ ⎟−⎝ ⎠

−⎛ ⎞= = = =⎜ ⎟⎝ ⎠

Запишем условие Куна-Таккера, определяемое выражением (1):

( ) ( )

1

2

1

1

2

1 1 1 0 0 0 264 2 0 1 0 102 4 0 0 1 1

xxyVVλ

⎛ ⎞⎜ ⎟⎜ ⎟⎛ ⎞ ⎛ ⎞⎜ ⎟⎜ ⎟ ⎜ ⎟× =− − ⎜ ⎟⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟− − ⎝ ⎠⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠⎝ ⎠ ⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠

.

Перемножим матрицы, получим систему

1 2 1 2x x y+ + = ,

Отформрусский

Код пол

Отформрусский

Код пол

Отформрусский

Код пол

Отформрусский

Отформрусский

Код пол

Отформрусский

Отформрусский

Page 116: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

113

1 2 1 14 2 6x x V λ− − + = ,

1 2 2 12 4 0x x V λ− + − + = .

Чтобы записать симплекс-таблицу, надо выразить базисные переменные через свободные. Для получения первого базисного решения используется любой метод, например, метод Гаусса. Можно использовать метод искусст-венного базиса (см. главу 2), который использует симплекс-процедуру. Затем нужно получить опорное решение, и только после этого записать модифици-рованную симплекс-таблицу. Для простых задач можно подобрать первое базисное решение так, чтобы сразу получить опорное решение (свободные члены >0). Для нашего примера

1 1 22Y X X= − − ,

1 1 2 16 4 2X X X V= − + + ,

2 1 2 16 6 6V X X V= − + + .

Запишем симплекс-таблицы по методу Баранкина-Дорфмана.

1 X1 X2 V1

X1

X2

Y1

V1

V2

λ1

αj

βj

Θ j

Kj

1

1

-1-1 2

1

6

6

-6

-4 2

6 1

1

24 -14 4 2

8

1

-20

Таблица 37

1 V2 X2 V1

X1

X2

Y1

V1

V2

λ1

αj

βj

Θ j

Kj

1 1

-2 1/6 1

1

2

1

2/3 -2 1/3

4 1 -6 1

8

1/2

-8

-1/6 1/6

1

-1/6

Таблица 38

Отформатрусский (Ро

Page 117: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

114

Примечание. Алгоритм симплекс-преобразования аналогичен рассмот-

ренному в главе 2, только: «…генеральную строку умножаем на -λ, а столбец на λ, отмечаем в строке нижние элементы, а в столбце верхние». Порядок строк в таблице нарушать нельзя.

В первой таблице T= а0=24, а во второй 4. Чтобы не вычислять всю тре-тью таблицу подсчитаем а0 для следующей таблицы по формуле T= 2*4+1/2 (-8)=0, значит следующая таблица оптимальная. Вычислим только необхо-димые элементы (свободные члены), получим; X1=3/2; X2=1/2; Y1=V1=V2=λ1=0; Оптимальное значение F = -11/2.

Недостаток метода: иногда встречаются задачи, когда все Kj>0. Значит, мы будем переходить в новую вершину, а значение T будет увеличиваться. В этом случае идём на временное ухудшение T (проходим через «мёртвую зо-ну»). В методе Франца-Вульфа это учтено [1,7,12,16].

6.9. Методы возможных направлений

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

В методах возможных направлений переход от точки Xk к точке Xk+1 осу-ществляется по направлению Sk, не обязательно вдоль градиента. При этом движение вдоль Sk должно быть таким, что бы новая точка принадлежала области допустимых решений D. Направление, удовлетворяющее этому ус-ловию, называется возможным или допустимым:

( )1k k kX X S Dλ+ = − ∈ . (6.13)

Таких направлений множество; среди возможных направлений выбирают такое, для которого скалярное произведение градиентов в точке k и этого на-правления больше нуля (для задачи минимизации меньше нуля). Такое на-правление называется подходящим. Таких направлений в общем случае так же множество. Г.Зойтендейк предложил выбирать то, которое максимально увеличивает значение целевой функции.

Рассмотрим задачу выпуклого НЛП:

, (6.14)

. (6.15)

Обозначим область допустимых решений через D, пусть x0- начальная точка, а X* - единственное решение задачи, X0 ∈ D, x0∉x*.

Отформниже на

ОтформШрифт:

Код пол

Удалено

Удалено

Удалено

Page 118: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

115

Переход из точки X(k) в X(k+1) осуществляют по такому направлению S(k), чтобы при луч принадлежал D.

Обозначим g0(X) и gi(X) градиенты функций F(X) и φi(X) в точке X соот-ветственно. Обозначим I(X) множество индексов I таких, что φi(X)=0; I(X) указывает номера ограничений, выполняющихся в точке X точно (I(X) - ак-тивные ограничения).

Пусть S- некоторый вектор, S≠0, такой, что для всех выполня-ется неравенство .

Знак (•)’ обозначает транспортированный вектор (матрицу). Тогда можно определить λ>0, чтобы . Для этого сначала оп-

ределим , где di - корень уравнения (ес-

ли нет решения, то ). Затем определим , где Ci –

корень уравнения ( ,S)=0 (если нет решения, то Ci= ). Таким образом, λ’ выбирается из условия невыхода из области D, а λ’’ из условия попадания в точку экстремума. Тогда, если , то . Направление S, удовлетворяющее условию (6.15), и называют возможным (допустимым) в точке x0. То из возможных направлений, для которого, кроме этого, выполняется условие , называется подходящим, так как при движении в этом направлении значения целевой функции улучшаются, не выходя из D (для задачи на минимум ).

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

, (6.16)

. (6.17)

Для нормализации длины вектора S используют следующие условия:

,

.

Page 119: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

116

Видно, что условие (6.17) уже содержится в N5. Точка X*, является решением, как только

. Метод Зой-тендейка можно применять для любых выпуклых функций F(x) и φi(x), но он может не дать решения за конечное чис-ло шагов. Для задачи квад-ратичного программирования можно с использованием принципа сопряженности обес-печить сходимость за конечное число шагов.

Рис. 42

Рассмотрим этот случай. Если x(k) есть внутренняя точка, т.е. , то новое искомое S(k) должно удовлетворять, помимо ус-

ловия нормировки, еще одному условию сопряженности , где C - положительно полуопределенная матрица квад-

ратичной формы для задачи квадратичного программирования:

, (6.18)

. (6.19)

Если для определения S(k-1) такое условие уже использовалось, то оно ос-тается, так что все условия сопряженности имеют вид

.

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

Рассмотрим пример с нормирующими условиями N5 для задачи квадра-тичного программирования (6.18), (6.19). Для нее:

.

Длина очередного шага определяется из соотношения:

Page 120: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

117

Величина λ′′ определяется из условия попадания в экстремум, т.е.

Подставим выражение градиента, получим

.

Отсюда получаем

Величина λ′ для N5 всегда равна 1. На рис.42 изображена иллюстрация поиска решения для примера

Для решения неквадратичных задач НЛП принцип сопряженности уже не-применим и для построения алгоритма, сходящегося к решению, приходится при-менять процедуру изменения длины шага. Рассмотрим такой алгоритм по методу возможных направлений Зойтендейка. При выборе подходящего направления бу-дем принимать во внимание не только те ограничения, которые в данной точке выполняются точно, но и те, которые выполняются «почти точно». В противном случае λ может измельчаться вдали от точки минимума. Для и оп-

ределим теперь – активное индексное множество . Это те i, для которых , а также i=0, т.е. целевая функция F(x). Для выбора λ и S в точке

для получения следующей точки в соответствии с методом Зойтендейка необходимо выполнить условия невыхода из D, нормировки длины вектора λS и условия большего возрастания (убывания для задачи на мини-мум) целевой функции. В алгоритме, излагаемом ниже, последнее требование за-менятся требованием выбора направления, имеющего наибольший угол к каса-тельным с ограничениями вблизи точки x(k), что дает возможность двигаться с большим шагом, не выходя за пределы D, а длина этого шага выбирается из усло-вия наибольшего увеличения (уменьшения) F(x). В качестве нормировки выберем

Page 121: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

118

N2 . Тогда для задачи минимизации для заданного ε в точке x необ-ходимо определить величину из условия

,

где , g0(X)-– градиент F(X). Более подробно алгоритм решение и примеры можно найти в [7, 16].

6.10. Метод проекции градиента На каждой итерации этого метода предусмотрена процедура возврата

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

посредством проектирования на U, т.е. замены на ближай-шую точку множества U.

Определение . Пусть заданы замкнутое множество и точка

. Точка называется проекцией точки z на множество U, если

где – расстояние между точками x и y в пространстве En .

Очевидно, для точки проекция совпадает с z. Таким образом, в методе проекции градиента последовательные прибли-

жения x(k) к точке минимума X* целевой функции f(x) на множестве U вычис-ляются по формулам

, . (6.20)

Рис. 43

Page 122: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

119

В зависимости от способа вычисления ak из (6.20) различают несколько вариантов метода проекции градиента, самыми распространенными из кото-рых являются следующие.

1) ak находится, как в методе наискорейшего спуска безусловной мини-мизации, т.е. , где В

предположении, что градиент f ′(k) целевой функции удовлетворяет на мно-жестве U условию Липшица, т.е.

(6.21)

для всех , полагают где α - произвольное число из интервала (0;2/L). Если известна минимальная константа Липшица L из (6.21), то выбирают, как правило, α=1/L.

Вычисления по формуле (6.20) завершаются при выполнении одного из неравенств или , где величина оп-ределяет точность решения задачи. Окончательно полагают

.

Отметим, что определение проекции для точки является самостоятельной задачей нелинейного программирования:

, (6.22)

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

раничениями, задача (6.22) представляет собой задачу квадратичного про-граммирования. Ее решение может быть найдено за конечное число шагов, как описано выше.

X1

X3

X2

Z

PU(Z)

Рис. 44

Особый интерес при использовании метода проекции градиента пред-ставляют такие множества U, для которых задача проектирования (6.22) ре-шается в явном виде.(U - шар, параллелепипед и т.д.)

Page 123: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

120

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

( ) ( ) ( )∑ ∑= =

=∂∂

=∂∂

−+−=n

j

n

j jjjjj

ФXФRXZXXФ

1 1

20

2 0 ;0 ;,λ

λλ

В случае с шаром:

( )

( )

( )

⎪⎪⎪

⎪⎪⎪

∉>

∈≤

= ∑∑

=

=

=

UZRZz

ZR

UZRZZ

ZP n

jjn

j

n

jj

U ; ,

; ,

20

1

2

1

2

0

20

1

2

Если область допустимых решений U - параллелепипед, то проекция точки определяется очень просто. Пусть область U определяется условиями: a1<x1<b1

a2<x2<b2

a3<x3<b3

Рис. 45

Если только одна из координат [ , ]j j jX a b∈ , а остальные нет, то про-екцией на параллелепипед будет точка на ребре (т. А).

Если две из координат jX принадлежат области [ , ]j j jX a b∈ ,

[ , ]k k kX a b∈ , то проекцией на параллелепипед будет точка на грани (т. В).

Если все три координаты 1 1 1 2 2 2 3 3 3[ , ], [ , ], [ , ]X a b X a b X a b∈ ∈ ∈ , то проекцией на параллелепипед будет точка в вершине (т. С).

Page 124: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

121

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

Идея методов штрафных и барьерных функций заключается в том, что исходная задача НЛП с ограничениями заменяется последовательностью за-дач безусловной оптимизации (т.е. без ограничений) за счет введения новой функции, учитывающей невыполнение ограничений в виде «штрафа»: С(X)=F(X)+ P(X),

Где F(X) – целевая функция, P(X) – функция, равная в идеале F(X) в об-ласти допустимых решений U и равная бесконечности вне этой области. Практически вместо P(X) подбирается последовательность функций PK(X), зависящих от к, так, чтобы lim PK(X)=P(X), при к ∞ .

На рис.a) и b) показано решение задачи F(x) min, a<x<b. В методах штрафных функций последовательность точек стремится к

решению в допустимой области извне и функции штрафа изменяются вне области U, поэтому они называют методами с внешней точкой (см. рис. a). В методах барьерных функций функция P(X) аппроксимируется барьерными функциями изнутри области (для них ограничения являются барьером), по-этому эти методы называются методами с внутренней точкой.(см. рис. b).

Рассмотрим метод штрафных функций для задачи НЛП F(X) min, XєU. Заменим эту задачу последовательностью задач безус-

ловной оптимизации

Ck(X)=F(X) + Pk(X) min, k=1,2,3,…, (6.23)

Где Pk(X) – функции, которые с ростом k во все большей степени учиты-вают ограничения, определяемые допустимым множеством U исходной за-дачи. В методе штрафных функций функции Pk(X) подбираются так, чтобы при больших k функция Сk(X) мало отличалась от F(X) при X∈U и быстро возрастала при удалении точки от допустимого множества U. Последова-тельностью штрафных функций множества U называется последователь-ность функций Pk(X), обладающих свойством

a) b) Рис. 46

Page 125: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

122

0, ,lim ( )

, .k

еслиX UP X

еслиХ U∈⎧

= ⎨+∞ ∉⎩

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

F(X) min (6.24)

mliXgliXg

i

i

,...,1,0)(,...,1,0)(+=≤

==

считая, что функции F(X), gi(X), i=1,…,m , заданы во всем пространстве En. Положим

Pk(X)= kp(X), k=1,2,3,… (6.25)

где p(X)= Σ gi

2(x)+ Σ [gi+(x)]2,

i=1 i=l+1

⎩⎨⎧

=),(

,0)(*

XgiXgi

еслиесли .0)(

,0)(>≤

XgXg

i

i

Равенство (6.25) определяет последовательность штрафных функций до-пустимого множества исходной задачи (проверьте!).

При определенных условиях последовательность решений задач безус-ловной минимизации (6.23), (6.25) сходится к решению x* задачи (6.24), по-этому для достаточно больших k полагают x*=x(k), F*=F(X(k)).

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

||X(k)-X(k/2)||≤ε,

где ε>0 – число, характеризующее точность, k – четное число. Если в задаче (6.24) F(X) – выпуклая квадратичная функция, а gi(X), i=1,

… , m, - линейные функции, то точное решение вспомогательной задачи (6.23) можно найти из системы линейных уравнений dF(X)/dXj=0, j=1, … , n, определяющих стационарную точку функции Fk(X).

Пример. Минимизировать 21xx− при ограничениях

Page 126: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

123

.0,01

212

2211

≤−−≡≤−++≡

xxgxxg

В качестве штрафной функции применим следующее

[ ] ,2/)()( 2iiii gggp += [ ]∑= )()( xgpXp ii

и Pk(X)=k ).(Xp

Тогда

22121

2221

221

21 2)(

2

)11()( ⎥

⎤⎢⎣

⎡ −−+−−+

⎥⎥⎦

⎢⎢⎣

⎡ −+++−+++−=

xxxxk

xxxxkxxXCk

будет функцией, минимизируемой методом внешней точки.

Рис. 47

Значение )(kx для примера

Таблица 39

k )(1 kx )(2 kx

1k 1,0 0,89 0,64 k2 2,0 0,77 0,62 k3 3,0 0,73 0,61 k4 10,0 0,67 0,58

оптимум 32 33

Page 127: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

124

В таблице приведены значения )(kx для четырёх различных значений k. Из рисунка видно, что при возрастании k они приближаются к оптимуму из недопустимой области.

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

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

следовательности задач безусловной минимизации (6.23), но функции Pk(X) выбираются таким образом, чтобы при больших k функции Ck(X) из (6.23) мало отличались от F(X) во внутренних точках x допустимого множества U. В то же время при приближении точки X∈U к границе множества U эти функции должны неограниченно возрастать.

Определение. Пусть множество nU ε⊂ задано. Последовательность функций )( XPk , определенных во всех внутренних точках множества U, называется последовательностью барьерных функций этого множества, если выполняются условия:

1. 0)(lim =∞→ XPkk для любой фиксированной внутренней точки x мно-жества U.

2. +∞=∞→ )(lim )(rkr XP для любой последовательности )(rX внутрен-

них точек множества U, сходящейся к какой либо граничной точке этого множества.

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

F(X) min

....,1,0)( miXgi =≤ (6.26)

Положим

),(1)( Xpk

XPk = k=1, 2…, (6.27)

где

∑=

−=

m

i

k

xigXp1 )( ,)( k >0 (6.28)

или

Отформширине,14,2 пт, нумерова1 + Стил3, … + НВыравниВыровняТабуляциОтступ: Поз.табупо левом

Page 128: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

125

[ ]∑ =−−=

m

i xigXp1 )(ln)( (6.29)

Выражения (6.27) – (6.29) определяют последовательности барьерных функций допустимого множества U задачи (6.26) (проверяйте!).

Пусть X(k) – решение задачи безусловной минимизации (6.23), где функ-ция Pk(X) определена равенствами (6.27), (6.28) или (6.29). Полагая

)(* kXX ≈ , )(* )(kXFF ≈ для достаточно большого k, находим приближен-ное решение задачи нелинейного программирования (6.24) методом барьер-ных функций. Для контроля достигнутой точности решения можно исполь-зовать критерий (6.4).

Пример. Минимизировать 21 XX + при ограничениях

0 22

11 ≤−+= XXg ,

0 12 ≤−= Xg .

В качестве функции p(gi) возьмём логарифмическую функцию. Обозна-

чим 1/k=r. Тогда Pr(X))=rp(X), ( ) ))(ln(1∑=

−−=m

ni XgXp .

122121 ln)ln(),( XrXXrXXrXC −+−−+= .

Этот простой пример можно решать аналитически, учитывая, что С(X, r) дважды дифференцируема. Необходимые условия первого порядка прини-мают вид:

0)2(1 12

21

1 =−+−

+Xr

XXXr ,

01 2

21

=+−

−XX

r .

Решая эту систему, получаем

4811)( 1rrX +±−

= .

Поскольку значение )(1 rX должно быть положительно, будем рассмат-

ривать лишь один корень 4

811)(1rrX ++−

= . Тогда

Page 129: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

126

rrrX +++−

=16

)811()(2

2.

Эти значения X1(r) и X2(r) удовлетворяют достаточным условиям и по-этому дают локальный минимум задачи.

В таблице приведены вычисленные значения X(r) для четырёх различных r. Этот пример изображён на рисунке. В пределе при rk→0 минимизирующие точки приближаются к решению (0,0).

Значения r и x(r) из примера

Таблица 40

r )(1 rX )(2 rX

1r 1,000 0,500 1,250

2r 0,500 0,309 0,595

3r 0,250 0,183 0,283

4r 0,100 0,085 0,107 В этой задаче при каждом значении r существует только один локальный

минимум. Это происходит так потому, что исходная задача имела единст-венное решение. Оказывается, что в задачах со многими локальными мини-мумами (при выполнении вышеупомянутого условия регулярности Слейте-ра) существует последовательность безусловных локальных минимумов, сходящаяся к каждому из условных локальных минимумов [24,1,12,22].

Рис. 48

Page 130: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

127

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

6.12. Метод скользящего допуска

Метод скользящего допуска применяется при общей постановке задачи нелинейного программирования:

Минимизировать ( )XF , nЕХ ∈ при ограничениях

0)(0)(

≥=

XgXh

i

i pmi

mi,...,1

,....,1+=

=

Где функции ( )XF , )(),( XgXh ii могут быть как линейные, так и не-линейные. Алгоритм скользящего допуска позволяет улучшить значения це-левой функции как за счет информации, получаемой в допустимых точках пространства решения, так и за счет информации, которую удается получить при прохождения через точки, лежащие вне допустимой области, но близкие к допустимым. Интервалы, в пределах которых точки можно считать почти допустимыми, в ходе поиска постепенно сокращаются, так что в пределе (по мере приближения к искомому решению) учитываются только допустимые точки Х .

В качестве метода получения последовательности точек, улучшающих значение целевой функции, используется метод Нелдера-Мида (см. п.6.4). При такой стратегии задачу можно заменить более простой, но имеющей то же самое решение задачей минимизации ( )XF , nЕХ ∈ при ограничениях

0)()( ≥− ХТФ к ,

где )(кФ - значение критерия скользящего допуска на к-м этапе; )(ХТ - мера степени нарушения ограничений рассматриваемой задачи.

В качестве Ф выбирают положительно определенную убывающую функ-цию координат вершин деформируемого многогранника Нелдера и Мида.

Функция Ф служит критерием допуска для нарушения ограничений зада-чи и прекращения процедуры оптимизации.

Варианты выбора Ф многочисленны. Например:

Page 131: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

128

tmФ

XXrmФФ

r

i

kr

ki

кк

)1(2

11,min

)0(

1

1

)(2

)()1()(

+=⎩⎨⎧

⎭⎬⎫

−++

= ∑+

=+

t - размер исходного многогранника (например длина высоты); m - число ограничений равенств;

)(kiX - вектор i-той вершины многогранника;

R= (n-m) - число степеней свободы целевой функции ( )XF в nЕ ; )(2

krX + -вектор, задающий «центр тяжести» многогранника при r =n.

По мере приближения к оптимальной точке )(кФ устремляется к нулю «сверху».

В пределе многогранник деформируется в точку

0lim )(*

=→

к

xxФ

Функционал

2/1

1

2

1

2 )()()( ⎥⎦

⎤⎢⎣

⎡+= ∑∑

+==

XgUXhXTp

miii

m

ii

,

где 0=iU при 0)( ≥Xgi , и 1=iU при 0)( <Xgi

0)( ≥XT при nEX ∈∀

Если 0)( )( =кXT , то )(кХ – допустима, если 0)( )( >кXT ,то )(кХ – не

допустима, при )()( )( кк ФXT > , и )(кХ почти допустима при )()( )(0 кк ФXT ≤≤

Это условие и определяет набор точек по допустимости. Общая схема алгоритма выглядит так: при заданном )(кФ в точке )1( +кХ

может быть два варианта: 1) )()1(( кк ФХТ ≤+ -перемещение считается разрешенным.

2) )()1(( кк ФХТ >+ - необходимо найти другую точку )1( +кХ , ближе к

допустимой области , чтобы )( )1( +кХТ уменьшилась. Для этого можно в ал-

Page 132: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

129

горитме Нелдера-Мида считать точку Xk+1 худшей, или же возвращать ее на ближайшую границу.

Т(Х) не влияет на сходимость алгоритма, так как на заключительных эта-пах поиска точки )(к

iХ являются внутренними , т.е. 0)( )( =кiХТ .

Если *Х является граничной точкой, то поиск вдоль границы происхо-дит за счет улучшения )(XF при условии

0)( )()( ≥− кi

к ХТФ

Степень нарушения ограничений по мере приближения к искомому ре-шению уменьшается.

К моменту прекращения оптимизационного поиска выполняются усло-вия:

.0)(

)()()(

*)(

)(

≥−

±≤

кl

кl

к

XT

XFXFФ

ε

ε

ε

Page 133: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

130

7. ОСОБЕННОСТИ СОВРЕМЕННОЙ ТЕОРИИ ПРИНЯТИЯ ОПТИМАЛЬНЫХ РЕШЕНИЙ

Методы поиска оптимальных решений рассматриваются в разделах ма-тематики (методах оптимизации), исследования операций, математическом программировании и в классическом понимании связаны с поиском экстре-мумов функций и функционалов при функциональных ограничениях на пе-ременные. Решение здесь - математический объект. Причём здесь вопросы оценки критериев (многих) и изучение того, почему такой-то критерий мож-но считать приемлемым не изучается (о критериях не спорят!).

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

собой небольшое число отдельных альтернатив, не всегда однородных. Например: вариант 1 - строить большой завод, вариант 2- строить не-большой завод, а потом расширять производство. Поэтому в теории при-нятия решений (ТПР) рассматривается как самостоятельный вопрос за-дания множества альтернатив, на котором ищется оптимальное решение.

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

3. Оценка ценности каждой альтернативы во многих случаях не сводится к простому сравнению количественного параметра (сравнению чисел). В связи с этим в ТПР применяют специальные методы измерения полезно-сти альтернатив.

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

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

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

ОтформОтступ: Снумерова1 + Стил3, … + НВыравниВыровняТабуляци+ ОтступПоз.табуВыровнятабуляци

Page 134: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

131

той же системе. Такие ситуации называются конфликтными. Модель для принятия решений и принцип оптимальности в этих случаях является совершенно иными, чем в рассмотренных задачах математического про-граммирования. Этими вопросами занимается теория игр.

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

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

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

10. Вот почему современная теория принятия решений представляет собой обобщение всей методологии получения решений в самых общих и практически важных случаях (много критериев; неопределённость принципа оптимальности, нечёткость шкалы ценности, условия риска, неповторимость ситуации, сложная логика предпочтений между альтер-нативами и другое). Сказанное характерно для анализа оптимальных решений при построе-

нии современных автоматизированных систем управления и экспертных сис-тем.

7.1. Общая постановка задачи принятия решения

Задачей принятия решения назовём пару (Ω, P) , где Ω – множество ва-риантов, P – принцип оптимальности. Решением задачи (Ω, P) является множество Ωp ≤ Ω, полученное с помощью принципа оптимальности P. От-сутствие хотя бы одного из элементов лишает смысла задачи в целом. Если нет Ω не из чего выделять Ωp. Если нет P, то найти Ωp невозможно. Матема-тическим выражением принципа оптимальности P служит функция выбора Cp. Она сопоставляет любому подмножеству X ≤ Ω его часть Cp(X). Решени-ем Ωp исходной задачи и является множество Cp(X).

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

Информацию, необходимую для выделения Ωp получают в процессе ре-шения. Задачу с известными Ω называют задачей выбора, а задачу с извест-ными Ω из P - общей задачей оптимизации.

Page 135: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

132

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

В общем случае для задачи выбора необязательно необходимо полное восстановление принципа оптимальности, а можно ограничиться только ин-формацией, достаточной для выделения Ωp. Общая задача оптимизации не обязательно требует минимизации одной или нескольких числовых функций, так как может быть и так, что другим способом выделяется множество луч-ших элементов, то есть выделяются значения Cp(Ω) при заданных Ω и Cp. Ес-ли Cp - скалярная функция на множестве Ω, то получаем обычную оптимиза-ционную задачу.

Элементы множества Ω называются альтернативами или вариантами. Принцип оптимальности P задаёт понятие лучших альтернатив: лучшими считают альтернативы, принадлежащие Cp(Ω). В практических задачах аль-тернативы обладают многими свойствами, оказывающими влияние на реше-ние.

Пусть некоторое свойство альтернатив из Ω выражается числом, то есть существует отображение φ: Ω→ E1. Тогда такое свойство называется крите-рием, а число φ(x)-оценка альтернативы x по критерию. Одновременный учёт отдельных свойств может быть затруднительным. При этом можно выделить группы свойств, которые агрегируют в виде аспектов. Аспект – сложное свойство альтернатив, которое одновременно учитывает все свойства, вхо-дящих в группу. В частном случае аспект может являться критерием.

Пусть все свойства k1, …, km, учитываемые при решении задач (Ω, P) яв-ляются критериями. Критериальным пространством называют пространство Em,, координаты которого есть оценки соответствующих критериев.

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

Техническое обслуживание – это число станций, сроки выполнения ре-монтных работ и так далее. Следовательно, техническое обслуживание - это аспект.

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

Сформулируем схему процесса принятия решения. Формируется множество Ω, его подготавливают для последующего ре-

шения задачи выбора (при назначении на должность сначала готовят список кандидатов, а затем назначают лицо из этого списка). Для формирования Ω используют условия возможности и допустимости альтернатив, которые оп-ределяют конкретными ограничениями задачи. При этом считают извест-ным универсальное множество альтернатив Ωy. Таким образом, задача фор-мирования Ω является задачей выбора (Ωy, P1) , где P1 – принцип оптималь-ности, выражающий условия допустимости.

Page 136: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

133

Множество Ω=Сp1(Ωy), полученное в результате решения, называют ис-ходным множеством альтернатив (ИМА) (Ωy – все специалисты, Ω -специалисты, удовлетворяющие требованиям ).

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

В процессе решения участвует лицо, принимающее решение (ЛПР), экс-перты, консультанты.

ЛПР – человек, имеющий цель, служит мотивом постановки задачи. ЛПР имеет полномочия и несёт ответственность. Основная функция ЛПР выде-лять Ωp. ЛПР даёт информацию о принципе оптимальности P.

Эксперт - не несёт ответственности, он даёт оценки альтернатив, необхо-димые для формирования ИМА и решения задачи выбора.

Консультант – специалист по теории выбора и ПР. Он разрабатывает модель, процедуру принятия решений , организует работу ЛПР и экспертов.

В простейшем случае задачу (Ω, P) решает непосредственно ЛПР. Прикладные результаты ТПР имеют вид алгоритмов решения задач.

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

7.2.Классификация задач принятия решений

Для классификации задач принятия решений представим более подроб-но задачу ПР в виде семёрки:

ПР = (Z, Ω, K, S , F , G , P).

Z - Описание предметной области, в которой принимается решение.

Ω - Множество альтернатив.

K - Множество критериев оценки альтернатив.

S - Множество шкал измерения по критериям.

F - Отображение множества альтернатив в множество критериев оценок F(X) = Y.

G - Система предпочтений.

P - Решающее правило, отображающее систему предпочтений.

Любой из элементов этой семёрки может служить классификационным признаком задач ПР. Однако в основном для классификации используются

Page 137: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

134

тип отображения F, мощность множества К, тип системы предпочтений G и характеристики области допустимых решений X ∈ Ω.

Отображение X в множество критериальных оценок может быть детер-минированным (рис. 49), вероятностным (рис. 50) либо неопределённым (рис. 51). Поэтому задачи принятия решений можно разделить на ПР в усло-виях определённости, риска и неопределённости.

Рис. 49

ПР в условиях определённо-сти предполагает детерминиро-ванное (взаимно однозначное) со-ответствие между X и k.

ПР в условиях риска соответ-ствует вероятностному отображе-нию X в k.

ПР в условиях неопределён-ности не предполагает соответст-вия X и k.

Рис. 50

Рис. 51

Если k – скаляр, то это однокритериальная задача ПР. Если k – вектор, то

это задача многокритериальной (векторной) оптимизации. Отметим, что задача ПР со скалярным критерием является тривиальной

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

а) выбор при одном критерии в условиях определённости; б) выбор при одном критерии в условиях риска.

K x

k2

k3

k1

k1

x

k2 k3

k=F(X)

k=F(x)

x

Page 138: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

135

а)

б) Рис. 52

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

В главах 1-6 мы рассмотрели задачи, в которых требуется выбрать реше-ние, доставляющее максимум (или минимум) единственного показателя эф-фективности (критерия) k. На практике часто возникает случай, когда эффек-тивность операции приходится оценивать не по одному, а сразу по несколь-ким показателям k1 ,k2 ,…,kL.

Примеры: 1. Оценка деятельности завода: прибыль, средняя зарплата, объем произ-

водственных фондов. 2. Оценка учебы студента: оценки по предметам. 3. Военная операция: потери, вероятность выполнения задачи.

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

Главной особенностью этой ситуации является то, что требования ко всем показателям в реальных системах несовместимы или противоречивы. Как правило требование max k1 не обращает ни в максимум ни в минимум другие показатели k2, k3, … Поэтому широко распространённая формули-ровка «достижения максимального эффекта при минимальных затратах» яв-ляется некорректной. Корректными являются следующие формулировки:

1. Достижение максимального эффекта при заданных затратах. 2. Достижение заданного эффекта при минимальных затратах. Для удобства сравнения значений векторов k=(k1, k2, … kL) – иногда

удобно предварительно привести все показатели k1 , k2… kL к стандартному виду, чтобы все критерии минимизировались и чтобы они имели безразмер-

Page 139: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

136

ный масштаб измерения. Векторный критерий k считается стандартным, если он удовлетворяет условию ki≥0, и чем меньше ki, тем лучше операция (сис-тема). Таким образом, идеальной является система, у которой ki=0. Нестан-дартный показатель можно привести к стандартному.

Если ki max, то

kстi=kmaxi - ki.

Если kmaxi=∞, то kстi=1 ⁄ ki. Стандартный критерий можно задать в виде

отношения: kстi =(1 – ki / kиi), где kиi – идеальное значение критерия (либо оп-ределенное значение, либо max ki)

При этом в L-мерном пространстве задаётся вектор k, каждая компонен-та которого изменяется от 0 до 1. Полностью идеальной системе соответст-вует k=0.

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

Пусть анализируется боевая операция, оцениваемая по двум показате-лям.

k1 – вероятность выполнения боевой задачи; k2 – стоимость израсходованных средств. Очевидно, первый из показателей желательно обратить в максимум, а

второй в минимум. Пусть предлагается на выбор конечное число различных вариантов решения, обозначим их X1, X2, ..., Xn. Для каждого известны зна-чения k1, k2 . Изобразим каждый вариант решения в виде точки на плоскости с координатами k1, k2. Когда X пробегают ОДР, точки k1, k2 заполняют крите-риальное пространство решений.

Рис. 53

Page 140: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

137

Итак, если некоторая операция оценивается несколькими критериями, каждое из которых число, то такая задача называется задачей многокритери-альной или векторной оптимизации. Для стандартных k эта задача имеет вид

k=( k1, k2, …, kL) = ( , )f X A min, (7.1)

( , ) 0, 1...i X A i mϕ ≤ = . (7.2)

Существует принципиальная трудность в объективной (безусловной) оценке альтернатив при двух или более критериях. Она связана с проблемой сравнения двух векторов.

Безусловным критерием предпочтения называют критерий, основанный на сравнении компонент вектора. Два вектора критериев kA и kB безусловно сравнимы , если для любой l-й компоненты вектора выполняются неравенст-ва

klA >= kl

B , l=1, 2, 3, …, L.

Если все kl min, то альтернатива B безусловно предпочтительнее (луч-ше) A. Это означает, что А никак не может быть оптимальной и поэтому должна быть отброшена. Если же знаки неравенств для различных компо-нент вектора различны, то такие альтернативы безусловно несравнимы. Рас-смотрим пример.

Необходимо выбрать лучших по успеваемости студентов А, Б, В, Г, Д. Критериями служат оценки по предметам М, N, O, P.

M N O P А 4 4 5 3 Б 5 5 4 3 В 4 5 3 3 Г 5 4 5 4 Д 4 5 4 3

Проведем безусловное сравнение векторов оценок. Студент А не срав-ним с Б. В безусловно хуже Б – отбросим В. Д безусловно хуже Б – отбросим Д. А безусловно хуже Г – отбросим А. Остались две альтернативы Б и Г, которые безусловно несравнимы.

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

Таким образом векторная оптимизация включает два этапа.

Page 141: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

138

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

2. Условная оптимизация. Так как множество Парето, как правило, со-стоит из более чем одной точки, то для получения единственного решения необходимо применить дополнительные принципы оптимальности (условия согласования критериев).

7.4. Определение множества Парето

Если целевая функция векторная функция векторного аргумента и каж-дому малому изменению переменных X соответствует малое изменение каж-дого критерия, то критериальное пространство – это область с внутренними точками и границей. (не обязательно замкнутая). Пусть есть только два кри-терия (k1, k2) и k1 max; k2 max.

A

C

B

D

2 1

3 K2

K1 Рис. 54

Рассмотрим область возмож-ных значений критериев (рис. 54). Ясно, что точки, лежащих на од-ной вертикали или на одной гори-зонтали всегда, безусловно срав-нимы (точки 1, 2, 3). Получается, что все внутренние точки можно отсеять. Дуга АВ состоит из луч-ших точек по критерию k2 при по-стоянном k1.

Но часть точек дуги АВ , а именно точки дуги AС можно отбросить, так как они хуже точек СB. Поэтому точками множества Парето будут являться точки, находящиеся на дуге CB. При анализе характерными являются точки касания вертикалей и горизонталей к области критериев (точки А, В, С, D).

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

Существуют два основных метода нахождения множества Парето: Метод обхода конусом. Этот метод применяется для непрерывной области

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

Отформширине,строка: нумерацивисячих

Page 142: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

139

Рис. 55

Пусть для двух критериев: k1 max (↑) и k2 min (↓), тогда конус имеет вид, изображенный на рисунке 55.

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

Пример: k1 → min, k2 → min

Рис. 56

Множество Парето: [AB]∪ (CD] 2.Метод прямоугольников. Этот метод применяют, когда критериальное

пространство представляет собой отдельные точки или табличные значения. Сформулируем алгоритм для случая двух критериев, когда k1→min и k2→min, а критериальное пространство – точки на плоскости.

1) Фиксируем самые левые точки, если их несколько, выбираем среди них самую нижнюю. Эта точка является точкой Парето, фиксируем ее.

2) Выберем самую нижнюю точку, если их несколько, то выбираем са-мую левую. Это точка Парето, фиксируем ее.

3) Через полученные точки проводим вертикаль и горизонталь. Отбрасы-ваем сами точки Парето, точки лежащие на границе полученного прямо-угольника и точки вне прямоугольника.

4) К внутренним точкам полученного прямоугольника применяем алго-ритм из пункта 1.

Page 143: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

140

Рис. 57

Алгоритм заканчивается то-гда, когда внутри прямоугольника не останется ни одной точки.

Множество Парето: 1, 2, 3, 4, 5, 6. Вышеизложенный алгоритм

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

7.5. Методы условной многокритериальной оптимизации

После нахождения множества Парето, если количество точек в нём ≥2, встаёт вопрос о выборе единственного решения. Так как точки на множестве Парето обладают таким свойством, что каждая из них лучше по одному кри-терию, но хуже по другому, то объективно предпочесть эти точки невозмож-но. Условная оптимизация предполагает введение условия согласованности в компонентах критерия, которое всегда является хотя и разумным, но субъек-тивным. Подобные условия еще называют схемой компромиссов. Рассмот-рим несколько простейших из них.

Принцип равенства критериев. Рассматривают множество Парето для стандартных критериев. Тогда оптимальной считается та точка множеств Парето, где k1=k2=…=kL (см. рисунок 58).

Принцип равного влияния. Здесь оптимальной считается точка множест-ва Парето, являющаяся точкой касания прямой k1+ k2 min и области Парето (точка С, см. рисунок)

Принцип минимакса. Оптимальной считается точка множества Парето, где обеспечивается minmax ki

ст. (см. рисунок 5). Кроме указанных простейших приемов применяются более сложные.

Рис. 58

Рис. 59

Page 144: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

141

1) Метод скаляризации. Здесь формируется некоторая скалярная функ-ция многих переменных:

( )0 1 2, , , LK f K K K= K .

K0 - это скалярная величина, которая обобщает все критерии. Наиболее распространённой разновидностью функции f является линейная функция

01

min(max)L

i ii

K Kα=

= →∑

ai -вес каждой компоненты критерия, чем эта величина больше, тем большее влияние оказывает этот критерий. Для нестандартных критериев ве-са могут иметь размерность, причем если Ki→max, то ai≥0, а когда Ki→min, то ai≤0. Подобная комплексная оценка зачастую затруднительна. На практи-ке часто используют и другие способы искусственного объединения не-скольких показателей в один обобщённый показатель (критерий). В качестве обобщённого критерия, например, берут дробь:

K0=(k1×k2×...×km) /(km+1×…×.kL ),

где k1 ... km – увеличиваются, km+1.. kL - уменьшаются. Вольное использование подобных критериев чревато опасностями и мо-

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

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

На этот счет известна шутка Л.Н.Толстого, что если представить оценку человека в виде дроби:

,Достоинство человекаМнение о себе

то можно получить самую высокую оценку в

случае Мало достоинствНет мнения о себе

= ∞ .

2) Метод главного критерия. В этом методе сначала выбирают главный критерий и объявляют его единственным критерием. Все остальные крите-рии становятся управляемыми переменными, на которые накладываются ог-раничения, что бы они были не хуже заданной величины ki

0. Например, если все ki min и главный k1, то получаем однокритериальную задачу матема-тического программирования

k1 = f ( X) –> min,

Page 145: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

142

Фi (X) < 0, i = 1,2,3,…m,

k2 (X)<k20 , k3(X)<k3

0 , … , kL(X)<kL0 .

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

max, план по ассортименту – выполнен, а себестоимость – не выше заданной. При бомбардировке – понесённый ущерб противника максимальный, по-

тери и стоимость операции не выходили за известные пределы. Здесь все показатели эффективности, кроме одного, переводятся в разряд

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

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

3). Метод последовательных уступок. Проранжируем все критерии и расположим их в порядке убывающей важности: k1, k2 …. kL.. Пусть все кри-терии нужно максимизировать. Сначала отбросим все критерии, кроме k1 и найдем допустимое решение, обращающее в максимум k1 . Как правило при этом другие критерии не получают своих наилучших значений. Поэтому ис-ходя из практических соображений и точности, с какой известны исходные данные, назначается уступка k1 , которую мы согласны допустить для того, чтобы обратить в максимум k2 . Наложим на k1 ограничение, чтобы он был не меньше чем k1

*- k1 (k1* - максимально возможное значение k1), и при

этом ограничении ищем решение, обращающее в максимум k2. Далее снова назначается уступка в показателе k2, ценой которой находится максимум k3 и т.п.

2

1max 1 1 1max

max,.

kk k k k→−Δ < <

На втором этапе решаем задачу

3

1max 1 1 1max

2max 2 2 2max

max,,.

kk k k kk k k k

→−Δ < <− Δ < ≤

И так далее. Такой способ хорош тем, что здесь сразу видно, ценой какой «уступки» в

одном показателе приобретается выигрыш в другом. Заметим, что иногда даже при малом k «свобода» выбора позволяет достичь существенной оп-тимизации k2 . Это зависит от вида границы критериального пространства (см. рисунок 60).

Page 146: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

143

Рис. 60

Очевидно, успех такого метода зависит от того, насколько «тупой» мак-симум. Процедура может быть повторена для других ΔK.

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

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

k 1 max k1

k2' k2 max

F→max

Page 147: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

144

8. ИГРОВЫЕ МОДЕЛИ ПРИНЯТИЯ РЕШЕНИЙ Математические модели, рассмотренные нами, выражают стремление

получить максимальный результат для какой-то одной системы (фирмы, от-расли, страны). Если эта система состоит из каких-то других элементов (под-систем), то считается, что их целевые функции совпадают, то есть эти под-системы работают «все как один». Во многих задачах это не так. Приходится анализировать ситуации, когда присутствует несколько сторон, преследую-щих различные интересы (цели). Это и боевые действия, и внешняя эконо-мическая деятельность государств и многое другое. При переходе к рыноч-ной экономике и возникновении конкуренции как основного рычага развития экономики постановка задачи с отождествлением целей является неполной, а иногда и неправильной. Интересы отдельных фирм сталкиваются на одном рыночном пространстве и иногда настолько различны, что конкуренция при-обретает форму борьбы, и поэтому невозможно оценить результат прини-маемого решения единообразно. Такого рода ситуации называются кон-фликтными и могут быть описаны моделями, которые называются играми. Модели конфликтных ситуаций, где присутствуют несколько сторон, пре-следующих различные интересы, называются игровыми моделями. Игровая модель представляет собой особый вид модели для принятия оптимальных решений. Теория, описывающая конфликтные ситуации с количественной стороны, называется теорией игр.

8.1. Основные понятия теории игр

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

• в игре могут быть две или более стороны, называемые игроками, кото-рые преследуют различные интересы;

• в игре фиксируют правила игры: возможные действия игроков, ситуа-ция выигрыша и его величина, правила остановки игры;

• игры бывают парные, когда есть только две стороны, и множествен-ные, когда участие в игре принимают три и более сторон;

• игры бывают коалиционные, когда часть игроков соединяют свои ин-тересы и действуют как один игрок.

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

ОтформОтступ: СВыступ: маркировУровень:по: 14,2после: 50 пт, Поз5,65 пт +

Page 148: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

145

В парной игре два игрока: A – это «мы» и B – «противник». Игры назы-ваются антагонистическими, или с противоположными интересами, если иг-рок A выигрывает ровно столько, сколько проигрывает B. В сумме выигрыш равен 0, поэтому такую игру называют игрой с нулевой суммой. Но сущест-вуют также парные игры и с ненулевой суммой (неантагонистические).

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

8.2. Платежная матрица антагонистической игры, принцип минимакса

Будем считать, что у игрока A всего m стратегий, а у игрока B – n стратегий.

n21

m21

.B..........BBA..........AA

Таблица 41

B1 B2 . Bn А1 11a 12a na1

А2 21a 22a . na2 . . . Аm 1ma 11a . mna

Если игрок А применяет свою стратегию Аi, а В применяет Bj, то выигрыш в игре составляет aij. А старается увеличивать выигрыш, а В – уменьшить эту величину. Ве-личины aij образуют матрицу, ко-торая называется платежной мат-рицей .

Рассмотрим пример простейшей игры «Поиск». Игрок А прячется в двух местах I

и II. Игрок В ищет игрока А в местах I и II. Если В находит А, то А платит ему 1 рубль, если не находит, то В платит 1 рубль игроку А.

Платежная матрица – Таблица 42.

Таблица 42

B1 B2 А1 -1 1 А2 1 -1

Page 149: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

146

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

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

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

Если игрок А будет применять любое сколь угодно сложное правило че-редования мест I и II, то В все равно разгадает этот закон чередования и бу-дет выигрывать. Ниже мы обоснуем оптимальные стратегии игроков А и В. Рассмотрим другие простые примеры игр.

Игра «Три пальца».

Таблица 43

B1 B2 B3 А1 2 -3 4 А2 -3 4 -5 А3 4 -5 6

Игрок А и игрок В одновре-менно показывают один, два или три пальца. Выигрыш равен сум-ме, причём выигрывает А, если сумма очков четная, и В, если сумма нечетная. Построим пла-тёжную матрицу.

Игра «Конкуренты». Таблица 44

B1 B2 B3 А1 -2 -2 1 А2 1 0 2 А3 0 -1 1

Фирма А может поставить на рынок три товара A1, A2, A3, а фирма В три своих конкурирую-щих товара B1, B2, B3. Если фирма А поставит товар Ai, а фирма В - товар Bj, то в результате выигрыш в доходах фирм определяется при-веденной платежной матрицей.

Возникает вопрос – как на основе анализа матрицы найти оптимальное

решение игры, и что понимать под оптимальным решением игры? Рассмотрим так называемый принцип минимакса при решении игры. Ясно, что игроки должны действовать с разумной осторожностью, т. е.

необходимо, чтобы мы больше всего реагировали на опасные для нас ходы со стороны противника. По отношению к игроку А рассуждаем так, что если он применит стратегию A1, то можно зафиксировать самый плохой для него выигрыш: a1 = min aij.

Page 150: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

147

Для стратегии A2: a2 = min a2j., и так далее. Для Am: am = min amj. Тогда естественно, что игрок А выберет ту стратегию, для которой вели-

чина ia будет максимальной (по строкам в платежной матрице). Величина max min ijji

a a= называется нижней ценой игры. Она показыва-

ет, меньше какой величины не будет выигрыш игрока А при осторожном подходе к игре. Аналогично рассуждая относительно игрока В, получаем ве-личины:

maxj ijb a= - максимальные величины в столбцах, и затем max min ijji

b a= - верхняя цена игры.

Эта величина показывает, больше какой величины не может быть выиг-рыш в игре.

Получим значения a и b для вышеприведенных игр. Для игры «Поиск» a = -1; b =1. Для игры «Три пальца» a = -3; b =4. Для игры «Конкуренты» a = b =0. Эта игра обладает седловой точкой, так как в ней максимин совпадает с

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

Если игра имеет седловую точку, то говорят, что игра решается в чистых стратегиях. Решение, соответствующее седловой точке, обладает свойством устойчивости: если один игрок примет оптимальную стратегию, то другому невыгодно отклоняться от своей оптимальной стратегии. (Проверьте это, рассмотрев строку A2 и столбец B2). Такое свойство устойчивости положено в основу понятия оптимального решения любой игры.

8.3. Решение игр в смешанных стратегиях

Если в игре верхняя и нижняя цена не совпадают ( a не равно b ), то зна-чит, что седловой точки нет, но можно улучшить средний выигрыш игроков А и В путем смешивания их стратегий. Это значит, что игрок А, каждый раз играя игру, чередует свои чистые стратегии m21 A..........AA . Вопрос состоит в том, какова должна быть доля случаев применения стратегий игроков.

Назовем смешанной стратегией игрока А вектор ( )m21A p,,p,pS K= , в котором показаны вероятности применения соответствующих стратегий. На-

пример: ( )00,7;0,2;0,1;SA = , 1pm

1ii =∑

= - свойство полноты.

Page 151: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

148

Аналогично для игрока В получаем: ( )m21B q,,q,qS K= , 11q

n

ij =∑

=

.

Заметим, что чистая стратегия – это частный случай смешанной страте-гии. 0)1,0,(0,SA A3 == .

Справедлива основная теорема теории игр: любая матричная игра имеет решение в виде пары смешанных стратегий игроков А и В ( )*

B*A S;S , дающих

оптимальное значение цены игры V*. Это оптимальное решение обладает следующим свойством: если один игрок придерживается своей оптимальной стратегии, то другому невыгодно отклоняться от своей оптимальной страте-гии.

8.4. Упрощение игр и аналитическое решение игр 2×2

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

Таблица 45

Здесь A2 уступает по всем компонентам A1, а B1 уступает и B2, и B3. За-метим, что строки лучше, если элементы больше, а столбцы лучше, если элементы меньше.

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

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

Рассмотрим игры, в которых у каждого игрока лишь две стратегии. Если в такой игре нет седловой точки, то значит, что все стратегии активны, т. е. они войдут в решение с какой-то вероятностью, не равной нулю.

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

B1

542

B2

0-12

B3

32 1

A1

A2

A3

A1

A3

B2

02

B3

31

Page 152: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

149

Пусть мы применяем оптималь-ную смешанную стратегию *

AS , а игрок В отклоняется от своей опти-мальной стратегии *

BS и применяет чистую стратегию B1 или B2.

Таблица 46

A1

A2

B1 B2

a21 a22

a12 a11

q2 q1

p1

p2 По свойству решения игры это приведет к ухудшению выигрыша для В.

Пусть ( )*B

*A S;S дает величину V, тогда если А смешивает A1 и A2, а В приме-

няет одну и ту же стратегию B1, то выигрыш, который получится, будет ра-вен математическому ожиданию.

( )

⎪⎭

⎪⎬

=+>+>+

1

то,,Sесли,

21

222112

2*A221111

ppvpapa

Bvpapa (8.1)

Так как все стратегии активны, то на основании вышеприведенной тео-ремы можно решить эту систему при равенстве первых двух строк.

;)(;)1(;1

2221222112111

12111112

aaaaaapvpapapp

+−=+−−=−+−=

22 211

11 22 12 21

;a apa a a a

−=

+ − − (8.2)

11 122

11 22 12 21

;a apa a a a

−=

+ − − (8.3)

11 22 12 21

11 22 12 21

V .a a a aa a a a

⋅ ⋅−=

+ − − (8.4)

Аналогично можно составить систему и решить ее для игрока В:

( )( )

*1 11 1 21 2

*2 21 1 22 2

1 2

, : ;

, : ;

1;

B

B

S A a q a q v

S A a q a q v

q q

⎫+ <⎪⎪+ < ⎬⎪

+ = ⎪⎭

(8.5)

Page 153: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

150

;21122211

12221 aaaa

aaq−−+

−= (8.6)

;21122211

21112 aaaa

aaq

−−+−

= (8.7)

Например, для платежной матрицы

Таблица 47

B1 B2 А1 0 3 А2 2 1

;41;2

1;43

;21;

41

321021

22

11

===

==−−+

−=

vqp

qp

8.5. Геометрическое решение игр

Рассмотрим игру 2x2 . Отложим по оси абсцисс единичный отрезок. Ле-вый конец будет соответствовать чистой стратегии 1A , а правый – стратегии

2A . Любая точка внутри отрезка обозначает смешанную стратегию )p,S(p 21 . На оси ординат будем откладывать выигрыши. На левой вертикали

будут выигрыши, полученные при применении чистых стратегий 11BA и

21BA , а на правой – 12 BA и 22 BA . Если А применяет смешанные страте-гии, а В - чистые, то выигрыши будут ординатами соответствующих прямых. Решим игру для игрока А: для этого найдем сначала самые маленькие выиг-рыши при различных смешанных стратегиях – это будет линия минимумов. Затем на этой линии найдем наивысшую точку. Получим максимин.

Рис. 61

Линия минимумов максимин

v

B1

B2

A1

a

12a

В2

В1

А2

22a

2p 1p

21a

Page 154: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

151

Аналогично задача решается для игрока В: находим линию максимумов и минимакс.

Рис. 62

По принципу максимина игрок А сначала фиксирует свои минимальные выигрыши, а затем выбирает максимальный выигрыш. Так получаются вели-чины 1p и 2p , 1q и 2q на единичном отрезке и величина цены игры v .

Примечания: • решение не обязательно находится на пересечении прямых; • если у одного игрока две стратегии, а у другого три и более страте-

гий, то игра также может быть решена геометрически. Пример:

Таблица 48

Все элементы строки A2 меньше элементов строки A1, поэтому A2 можно отбросить как заведомо невыгодную. Все элементы столбца B1 больше соответствующих элементов столбца B2, поэтому стратегию B1 отбрасываем как заведомо невыгодную.

Таблица 49

В2 В3 В4 А1 0 -1 2 А3 -2 4 -3

После вычеркивания столбца B1 и строки A2 игра упрощается. Тогда останутся B2, B3, B4 и A1 и A3.

Строим график решения со стороны игрока А.

А1

А2

А3

В3

3 1 -1

В2

0 -1-2

-1

В1

-24

В4

20-3

минимакс

Линия максимумов v

A2

A1

B1

A2

A1

B2 2q 1q

Отформатeq, маркирУровень: 118 пт + Табпт + Отстувисячих ст

Page 155: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

152

Рис. 63

Находим линию минимумов (на рисунке выделено жирной линией) и оп-ределяем на ней максимум, точку М.

Найдем точное решение, для чего определим координаты точки М. С этой целью зададим уравнения прямых B2 и B3 в виде )( 3pfv = . Уравнение прямой построим в виде уравнения с угловым коэффициен-

том b)kx(y += . bkpv 3 += , где k – тангенс угла наклона прямой; b – смещение по оси

ординат (если прямая возрастает – k>0, если убывает, то k<0).

Построим прямую ⎩⎨⎧

+−=−=

0.2pv:B1;5pv:B

32

33 ;

72v;7

6p;71p −=== .

Таблица 50

В2 В3 А1 0 -1 А4 -2 4

Решим игру со стороны игрока В. Из графика видно, что стратегия B4 не формирует оптимальное решение – точку М, т. е. не является активной, следовательно, ее отбрасываем (она в согласованном решении не участвует).

максимин

Линия минимумов

М

v3p 1p

2

4

-1

-3

В4

А1

В3

В3

А3

В2

В4

-2

Page 156: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

153

Рис. 64

Находим линию максимумов и определяем на ней минимум – т. N. Запишем уравнения прямых B1 и A3.

.75q;7

2q;qv:A

2;6qv:A

2331

33

==−=

−=

Ответ: Игрок А должен чередовать стратегии 1A с вероятностью 6/7 и

3A с вероятностью 1/7. Игрок В должен чередовать стратегии 2В с вероят-ностью 5/7 и 3В с вероятностью 2/7. При этом цена игры v=-2/7.

8.6. Решение игр со многими стратегиями на основе метода линейного программирования

Пусть в игре m стратегий у игрока А и n – у В, матрица не упрощается. Такую игру можно свести к двум задачам линейного программирования. Рас-смотрим это на примере матрицы для «игры полковника Блотто» (табл. 51).

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

Таблица 51

В1 В2 В3 В4 А1 4 2 1 0 А2 1 3 0 -1 А3 -2 2 2 -2 А4 -1 0 3 1 А5 0 1 2 4

Таблица 52

В1 В2 В3 В4 А1 6 4 3 2 А2 3 5 2 1 А3 0 4 4 0 А4 1 2 5 3 А5 2 3 4 6

N

Линия максимумов

3q 2q

4

-1 -2

В2 В3

А3

А3

А1

Page 157: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

154

Если мы примем оптимальную смешанную стратегию, и В примет свою оптимальную смешанную стратегию, то получим:

⎪⎩

⎪⎨⎧

=

=

).q,q,q,q,(qS

);p,p,p,p,(pS

54321*B

54321*A

Если А примет оптимальную стратегию, а В – чистую стратегию 1В , т. е. отклонится от оптимальной, то средний выигрыш будет равен

21036 54321 ⋅+⋅+⋅+⋅+⋅ ppppp и будет не меньше v.

( ∑= ii XPM(x) - математическое ожидание случайной величины).

( )( )( )( )

⎪⎪⎪

⎪⎪⎪

=++++≥++++

≥++++

≥++++

≥++++

1.pppppv;6p3p0p1p2p:B,S

v;4p5p4p2p3p:B,S

v;3p2p4p5p4p:B,S

v;2p1p0p3p6p:B,S

54321

543214*A

543213*A

543212*A

543211*A

(8.8)

Обозначим L.v1;xv

pi

i ==

Так как при выборе ip необходимо, чтобы v→ max, то

minv1xxxxxL 54321 →=++++=

.

⎪⎪⎩

⎪⎪⎨

≥++++≥++++≥++++≥++++

1.6x3x0xx2x1;4x5x4x2x3x1;3x2x4x5x4x

1;2xx0x3x6x

54321

54321

54321

54321

(8.9)

Получим задачу линейного программирования, которую можно решить симплекс-методом (см. главу 2) , в том числе и с использованием стандарт-ных компьютерных программ, например, в системе LINDO или EXCEL.

Аналогичную задачу получаем и со стороны игрока В.

( ) Lv1;yv

q;A,S jj

i*B == .

При выборе jq игрок В стремится уменьшить v (v→ min), поэтому

Page 158: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

155

maxv1yyyyL 4321 →=+++=

. (8.10)

⎪⎪⎪

⎪⎪⎪

≤+++≤+++≤+++≤+++≤+++

1.6y4y3y2y1;3y5y2yy1;0y4y4y0y

1;y2y5y3y1;2y3y4y6y

4321

4321

4321

4321

4321

(8.11)

Таким образом, решение игры m×n сводится к паре задач линейного про-граммирования. Анализируя задачи (8.8), (8.9) и (8.10), (8.11), можно пока-зать, что они всегда имеют решение! Действительно, в качестве допустимого решения (8.8), (8.9) всегда будет: x1 = 1/d ; x2=x3=… = xn=0; где d – самый маленький коэффициент среди aij . При этом оптимальное решение также всегда будет, т.к. линейная форма (8.8.) ограничена нулем (все слагаемые положительны). Этим доказывается основная теорема теории игр.

8.7. Биматричные игры

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

Рассмотрим классическую модель некооперативной биматричной игры, известной как «Дилемма Заключенного». Два преступника ожидают приго-вора суда за совершение преступления. Адвокат конфиденциально предлага-ет каждому из преступников освободить его, если он сознается и даст пока-зания против сообщника, которому грозит угодить в тюрьму на 10 лет. Если никто не сознается, то обоим угрожает получить 1 год за незначительное преступление. Если сознаются оба преступника, то с учетом чистосердечно-го признания они получат 5 лет.

Построим платежные матрицы игроков со стратегиями «сознаться А - A1», «сознаться В - B1», «не сознаваться А – B2», «не сознаваться В – B2». Первое число – выигрыш А, а второе - выигрыш В.

Page 159: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

156

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

Таблица 52

В1 В2 А1 (5; 5) (0; 10)А2 (10; 0) (1; 1)

Если А выберет А1, то в худ-шем случае он получит 5 лет, если A2, то в худшем случае он полу-чит 10 лет, поэтому А «из двух зол» выберет меньшее - A1.

Игрок В если выберет B1, то в худшем случае получит 5 лет, а если B2, то

10 лет. Поэтому, чтобы не рисковать, он выберет B1. Получили «седловую точку» (A1,B1).

Таким образом, обоим заключенным лучше вместе сознаться и полу-чить по 5 лет. Здесь ни одному из игроков не выгодно отклоняться от своей оптимальной стратегии в одиночку. Приведенный подход к решению не-кооперативных биматричных игр подобен принципу «минимакса» для мат-ричных игр и называется нахождением точки равновесия по Нэшу. Нэш показал, что любая биматричная игра имеет решение в чистых или сме-шанных стратегиях.

8.8.Кооперативные игры

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

В случае двух игроков выигрыш в игре – это пара выигрышей, представ-ляющих общие выигрыши. Если игроки будут перебирать всевозможные стратегии (чистые и смешанные), то все пространство выигрышей в игре об-разует некоторое множество точек, ограниченных некоторой линией (см. ри-сунок). На рисунке можно указать точку с координатами выигрышей игро-ков, которые они могут гарантировать себе, не прибегая к договоренностям (Т 1, Т 2). Такая точка называется точкой угрозы.

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

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

Page 160: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

157

точка решения Нэша (равновесная точка), в которой достигается максимум произведения превышения выигрышей над величинами T1, T2:

( )( )max 1 1 2 2maxF a T a T= − − .

Рассмотрим пример кооперативной игры «Семейный спор». Муж и жена каждый вечер решают проблему развлечения: пойти на Фут-

бол или пойти на Балет. Муж любит Футбол и терпеть не может Балета. Же-на любит Балет и не любит Футбол, но посещение этих зрелищ в одиночку не дает полного удовлетворения. Поэтому если они вместе, то получают удо-вольствие на 4 единицы на любимом зрелище и 1 единицу на нелюбимом, а если поодиночке, то 2 единицы на любимом и 0 на нелюбимом. Платежные матрицы имеют такой вид (левое число – выигрыш жены, правое – выигрыш мужа):

Таблица 53

Жена Балет Футбол Балет (4; 1) (0; 0)

Муж Футбол (2; 2) (1; 4)

Множество возможных выигрышей – треугольник с вершинами, соответ-

ствующими чистым стратегиям. Ясно, что гарантированный выигрыш супру-гов – точка угрозы (2; 2). Множество Парето – точки на стороне ВС. Перего-ворное множество – точки на DE. Решение Нэша – точка N. Здесь супруги договариваются половину вечеров проводить вместе на Футболе, а половину – на Балете.

Рис 65

..

..

. .

А1

А2

4

3

2

1

01 2 3 4

Точка угрозы Т

В

D N

Е

F→max

C

Page 161: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

158

Эта точка получается как точка касания линий постоянного уровня вели-чины ( )( )1 1 2 2F a T a T= − − при F→max. Следовательно, решение такой игры дает супругам выигрыш (2,5; 2,5).

Page 162: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

159

9. ЭЛЕМЕНТЫ ТЕОРИИ СТАТИСТИЧЕСКИХ ОПТИМАЛЬНЫХ РЕШЕНИЙ

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

Существуют задачи, в которых B - «бессознательный игрок», который мешает нам принимать правильные решения, но он не противодействует ак-тивно, а действует в соответствии с природными случайными явлениями, по-этому такую ситуацию называют игрой с природой. Например, помехи в ка-нале связи для передачи информации, шумы при записи или воспроизведе-нии звука и т. д. Ясно что бессознательное воздействие в целом вредит нам меньше, чем сознательное. С другой стороны эта «бессознательность» при-водит к непредсказуемому поведению операции. Можно считать ,что как и в теории игр мы боремся с противником, который не осознанно мешает нам. Например, это погодные условия, или случайный спрос при продаже товара. Вот почему в теории статистических решений, главной проблемой является обоснование принципов оценки различных ситуаций со стороны A. Заметим, что в теории игр был один принцип – принцип минимакса.

Таблица 54

P2 P1

Am

A2

A1

Pn

a11

a21 a22

a12 a1n

a2n

am1 am2 amn

Мы будем рассматривать дискретные альтернативы (стратегии) приро-

ды. Тогда, если у A имеется m стратегий, а у «природы» имеется n альтер-натив, то может быть получена матрица выигрышей, при применении каж-дой пары Ai Pj.

Условия Pj иногда называются гипотезами. Если платежная матрица по-строена, то задача состоит в анализе матрицы с целью получить стратегию Ai, которая наиболее выгодна по отношению к другим. В простейшем случае, если какие-то строки матрицы заведомо невыгодны, то их можно отбросить и оставить только одну, безусловно лучшую. Столбцы платёжной матрицы

Page 163: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

160

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

Пусть сравниваются два выигрыша, находящихся в разных столбцах aij и akl, причём j≠l. Если aij>akl, то вроде бы решение в i- строке лучше, чем ре-шение в k- строке, но так просто можно сравнивать, если выигрыш соответ-ствует одинаковым условиям.

Пример: Пусть в Томской области, приняв определенные управляющие решения, получили урожайность пшеницы 20 центнеров с гектара, а в Крас-нодарском крае - 25. Эти значения сравнивать нельзя, т. к. для Томской об-ласти это может быть рекордный (наилучший) результат, а для Краснодар-ского края – плохой, т.к. рекорд 50 . Решение нужно сравнивать с потенци-альными возможностями.

Вот почему необходимо преобразовывать платёжную матрицу таким об-разом, чтобы каждый наш выигрыш соотносился с тем максимумом, который можно достигнуть в данных условиях Pj Для каждого Pj можно найти макси-мальную величину βj и вычислить величину rij = βj - aij называемую риском. Здесь

max j ijiaβ = .

Чем риск меньше, тем лучше.

9.1. Принятие решений при известных априорных вероятностях

Будем обозначать вероятности гипотез: Q1=p(P1), Q2=p(P2), …, Qn=p(Pn). Таким образом, мы считаем, что вероятности известны до того, как мы ре-шили принять решение. Решение - выбор оптимальной стратегии A. Говорят, что это ситуация идеального наблюдателя.

Естественно, в качестве критерия выбирается средний выигрыш, кото-рый мы получим, если выберем стратегию Ai :

1

n

i ij jj

a a Q=

= ∑ .

Это аналог математического ожидания. Решение принимается по крите-рию:

max ii

a . (9.1)

Это критерий максимального среднего выигрыша. Если задана матрица рисков, то можно для каждой строки вычислить средний риск:

Page 164: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

161

1

n

i ij jj

r r Q=

= ∑

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

min iir . (9.2)

Покажем, что оптимальное решение можно искать как по (9.1), так и по (9.2). Сложим средний выигрыш и средний риск получим константу

( )1 1 1 1 1

n n n n n

i i ij j ij j ij j j ij j j ji j j j j

a r a Q r Q a Q a Q Q cβ β= = = = =

+ = + = + − = =∑ ∑ ∑ ∑ ∑ ,

тогда

; max min ; arg max arg min .i i i i i i i iiia r c a c r a r a r+ = ⇒ = − = =

С – величина, не зависящая от i, это постоянная величина для данной строки.

В результате решения выбирается чистая стратегия ai. Есть ли смысл смешивать стратегии? Пусть мы смешиваем наши стратегии с вероятностями pi, тогда в результате применения смешанной стратегии мы получим средний выигрыш в таком виде:

1 1 2 2 m ma a p a p a p= + + +K - математическое ожидание (МО).

Мы знаем, что МО меньше максимального значения, следовательно в иг-ре с природой нет смысла смешивать стратегии; чистая стратегия обеспечи-вает наилучший результат. Слабым местом в этом подходе является то, что надо знать априорные вероятности. Если они неизвестны, то необходимо их изучить. Это можно делать путём экспериментов, которые изучают условия «природы». Говорят, что этим мы обучаем нашу систему. Такой подход на-зывается принципом адаптации к условиям.

Если априорные вероятности изучить не удаётся, то применяется прин-цип недостаточности основания: если не знаем о вероятности, то считаем, что гипотезы природы равновероятны. После этого применяем критерий идеального наблюдателя. Так как при равных вероятностях энтропия (неоп-ределённость) максимальна, то мы рассчитываем на худший случай , т.е.применяем принцип пессимизма. Если сами значения вероятности неиз-вестны, но есть информация о предпочтениях гипотез, то существуют мето-ды обработки предпочтений и получения вероятностей.

Если вероятности гипотез относятся как

Page 165: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

162

( ) ( ) 1 21

: 1 : 2 : : 2 :1 : : : ; 1n

n jj

n n n Q Q Q Q=

− − = =∑K K ,

то можно подсчитать саму величину вероятности в следующем виде:

( )( )

2 1; 1,

1j

n jQ j n

n n− +

= =+

.

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

( )max ; i i ii a a ai

a k Dσ σ− × = .

9.2. Методы принятия решений в условиях априорной неопределенности

Если априорная информация неизвестна или ненадёжна, то применяются другие критерии.

Критерий Вальда (W): это максиминный критерий, т. е. выбирается стра-тегия Ak, для которой

max min ijjiW a= .

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

Критерий Сэвиджа (S): это критерий минимаксного риска

min max iji jS r= .

Этот критерий не эквивалентен критерию Вальда, т. е. cтратегия, опти-мальная по Сэвиджу не обязательно так же будет оптимальна по Вальду.

Критерий Гурвица (H): это комбинированный критерий, его так же назы-вают критерием пессимизма-оптимизма

( )( )max min 1 maxij ijji jH a aκ κ= + − ;

где 0 1κ< < - коэффициент, который выполняет требования критерия быть более или менее оптимистичным. При k=1 критерий H=W, а при k=0 получа-ем крайний оптимизм.

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

Page 166: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

163

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

9.3. Планирование эксперимента при принятии решений

Если априорной информации нет или она ненадёжна, то можно путём проведения эксперимента получить более надёжные данные о вероятностях Qj. Под экспериментом понимают систему мероприятий позволяющих уточ-нить информацию о состоянии «природы». Например, это метеонаблюдения, маркетинговые исследования в экономике, радиолокация, военная или про-мышленная разведка и т.д. Насколько может помочь в принятии решения эксперимент и как сопоставить стоимость эксперимента с тем оптимальным выигрышем, который мы получим?

Соответствующую теорию можно построить исходя из знания вероятно-стей jQ , а так же на основе критериев при неизвестной априорной информа-ции. Мы рассмотрим случай, когда есть априорная информация, т. е. ситуа-цию идеального наблюдателя. Рассмотрим вопрос: есть ли смысл проводить эксперимент? Рассмотрим два случая.

1) Идеальный эксперимент. Результат этого эксперимента однозначно определяет каковы условия природы. Пусть заданы выигрыши aij и априор-ные вероятности Qj. Стоимость эксперимента с сопоставима с выигрышем aij, т. е. эти величины имеют одинаковую размерность. Сравним средний вы-игрыш без проведения эксперимента со средним выигрышем при проведении эксперимента:

Если нет эксперимента, мы обеспечим себе

max1

maxn

ij ji i

a Q a=

⎛ ⎞ =⎜ ⎟⎝ ⎠∑ .

Если мы проведём эксперимент, то мы точно узнаем Pj =Pk, и тогда найдя в k-м столбце максимальный выигрыш, мы найдём наш выигрыш

max ij kia β= .

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

Page 167: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

164

1

n

jj

Qj β=

×∑ .

Поэтому чтобы решить, проводить эксперимент или нет, надо опреде-лить, что больше: amax или

1

n

jj

Qj β=

×∑ .

Получается, что необходимо проводить эксперимент, если

1 1

maxn n

j j j ijij j

Q c Q aβ= =

− >∑ ∑ .

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

min iic r< .

2) Неидеальный эксперимент. В результате проведения неидеального эксперимента мы не находим однозначно Pj, а лишь изменяем вероятности Qj. Пусть проводится неидеальный эксперимент. В результате появляются некоторые несовместные события B1,B2,…BL. Вероятности этих событий за-висят от условий, в которых они проводятся. Пусть известны P(Bj/Pj). Эти вероятности называются прямыми. После эксперимента, давшего исход Bl необходимо пересмотреть вероятности Qj, т. е. вместо вероятности Qj мы пе-рейдём к вероятности Qjl. Это так называемые апостериорные вероятности

( ) ( )( )( )

1

j l jjl j l n

j l jj

Q P B PQ P P B

Q P B P=

×= = −

×∑

Это формула Байеса. Но результаты эксперимента могут быть и B1 и B2 и Bk, поэтому мы мо-

жем только ожидать всякие исходы Bl, которые получатся в результате экс-перимента. Причём, каждый исход Bl привёл бы к некоторым оптимальным стратегиям A*1. А величина выигрыша, которая бы при этом получилась:

( )1

max maxn

l il jl iji i ja a Q a

=

= = ×∑ %% % .

Page 168: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

165

Эти выигрыши la% , могут произойти с вероятностью события Bl, т. е. c вероятностью. P(Bl), которую можно получить по формуле полной вероятно-сти:

( ) ( )1

n

l j l jj

P B Q P B P=

= ∑ .

Тогда средний ожидаемый выигрыш будет:

( ) max1

maxk

l l j ijila a P B a c Q a a c a

=

= ⇒ − > ⇒ − >∑ ∑% % % .

Планирование экспериментов можно рассмотреть и для случаев, когда проводят 2, 3, 4, … эксперимента [8].

9.4. Многоэтапное принятие решений

Сознательное принятие решения

Случайная вершина

Рис. 66

Мы рассмотрели различные критерии принятия решений в условиях не-определённости. На практике, в таких задачах как проектирование изделий, управление процессами, создание сложных программных комплексов, мы можем столкнуться с принятием последовательных решений (цепочкой ре-шений).

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

1) Сознательный выбор между двумя и более альтернативами 2) Либо случайный переход из одной ветви в другую под воздействием

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

экономической задачи.

Page 169: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

166

Пример. Фирма может принять решение о строительстве крупного или мелкого предприятия. Строительство крупного предприятия относительно дешевле, в случае если будет высокий спрос на производимые товары, мел-кое предприятие можно расширить. Деятельность фирмы рассматривается в течение десяти лет, причём в случае строительства мелкого предприятия во-прос о расширении будет рассматриваться через два года. Спрос заранее не-известен.

5

6

4

3

2

1

крупное

мелкое

p=0,75

p=0,25

p=0,25

p=0,75

p=0,75

p=0,25

p=0,75

p=0,25

расш

без расш.

1,0

0,3

0,9

0,2

0,25

0,2

0,2

2 года 8 лет

Рис. 67

Введём градацию случайного спроса: высокий (p>0,75) и низкий (p<0,25). Затраты и доходы: строительство крупного предприятия - 5 млн. $; строительство мелкого - 1 млн. $; затраты на расширение - 4,2 млн. $; круп-ное предприятие при высоком спросе даёт доход - 1 млн. $ ежегодно, а при низком - 300 тыс. $; мелкое предприятие при высоком спросе - 250 тыс. $ ежегодно, при низком - 200 тыс. $; расширенное предприятие в случае высо-кого спроса приносит доход - 900 тыс. $ в год, и при низком спросе - 200 тыс. $; мелкое предприятие без расширения при высоком спросе на произво-димый продукт приносит в течение двух лет по 250 тыс. $ ежегодно, а в те-чение следующих восьми по 200 тыс. $. Нарисуем дерево решений.

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

Page 170: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

167

( )( )

( )( )

4

4

1

1

0,9*0,75 0,2*0,25 *8 4,2 1,6 ,

0,25*0,75 0,2*0,25 *8 1,9 ,

1*0,75 0,3*0,25 *10 5,0 3,25 ,

1,9 2*0,25 *0,75 0,2*10*0,25 1,3 .

расш

без расш

круп

мелк

a

a

a

a

= + − =

= + =

= + − =

= + + =

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

Другим примером оптимизации многоэтапных операций является из-

вестная «задача о секретарше». Директор собирается принять на работу секретаршу. Прежний опыт де-

лит секретарш на три категории: отличных (3 балла), хороших (2 балла) и посредственных (1 балл). Анализ учебных заведений по подготовке секре-тарш даёт статистику выпускниц заведений: вероятность взять на работу от-личную секретаршу - 0,2, хорошую - 0,5, посредственную - 0,3. директор может испытать только трёх претенденток, причём в случае отказа директора кандидат убывает на другую работу. Построим дерево решений.

1

p=0,2

продолжить 23

p=0,3

p=0,5

a=1

a=3

a=2

p=0,3

p=0,2

p=0,5

stop

stop

stop

a=1

a=3

a=2

stop

stop

stop

продолжить

продолжитьпродолжить

p=0,3

p=0,2

p=0,5

stop

stop

stop

Рис. 68

В соответствии с процедурой динамического программирования начнём искать оптимальное решение с последнего шага. Определим математическое ожидание «выигрыша», если мы испытываем третьего кандидата:

3 3*0,2 2*0,5 1*0,3 1,9a = + + = .

Далее определим средний выигрыш, если мы испытываем второго и третьего, с учетом того, что если второй будет посредственный, то мы про-должим и получим в среднем 1.9.

2 3*0,2 2*0,5 1,9*0,3 2,17a = + + = .

Page 171: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

168

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

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

1 3*0,2 2,17*0,5 2,17*0,3 2,336a = + + = .

Следовательно, за счет возможности испытывать трех секретарш мы по-лучаем дополнительный выигрыш 2,336 – 1,9 = 0,436.

Page 172: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

169

10. ЭКСПЕРТНЫЕ ПРОЦЕДУРЫ ДЛЯ ПРИНЯТИЯ РЕШЕНИЙ

В практических задачах принятия оптимального решения альтернативы не являются «математическими объектами», а чаще представляют собой кон-кретные физические системы: продукты, технологии, организация техниче-ского мероприятия, системы и т.д. Для описания альтернатив и оценки по-следствий их принятия необходимо решить следующие задачи:

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

Ω в критериальное пространство (см. главу 7). Все эти задачи являются модификацией общей задачи оценивания: со-

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

пертных процедур, поэтому их называют методами экспертных оценок.

10.1. Общая схема экспертизы

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

1. Консультант находит множество допустимых оценок Ω, в которых содержится исходная оценка.

2. Он определяет множество допустимых оценок Ωэ, из которого осу-ществляют выбор эксперты.

3. Каждый эксперт выбирает свою оценку i ia C= (Ωэ), i=1, N . При этом эксперты могут взаимодействовать между собой.

4. По заранее разработанному алгоритму (формуле) консультант произво-дит обработку полученной от экспертов информации и находит результирующую оценку, являющуюся решением исходной задачи оценивания.

5. Если полученное решение не устраивает консультанта, то он предос-тавляет экспертам дополнительную информацию, то есть организует обрат-ную связь, после чего они вновь решают задачу оценивания.

ОтформатОтступ: Слстрока: 14нумерованн+ Стиль ну… + НачатьВыравниваВыровнятьТабуляцияОтступ: 36Поз.табуляВыровнятьтабуляции

Page 173: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

170

10.2. Задача оценивания

Смысл оценивания состоит в сопоставлении альтернативе вектора из Еm. Перечислим типичные варианты этой задачи: 1. Пусть X∈Ω – альтернатива в задаче принятия решений. Имеются m кри-

териев. Требуется альтернативе X∈Ω сопоставить вектор

[f1(x),f(x),…fm(x)]∈Еm.

2. Пусть k1, k2, …, km – критерии, учитывающиеся при выборе. Их необхо-димо упорядочить по важности. Тогда системе S=(k1, k2, …, km) сопостав-ляется перестановке натуральных чисел от 1 до m, i1,…im ,где ik – номер k-ого критерия при упорядочивании по важности.

3. Пусть множество D разбито на l подмножеств D1, D2, …, Dl. Для эле-мента х ∈ D необходимо указать, к какому из подмножеств Di (i =1,l) он относится. То есть х сопоставляется одно из чисел от 1 до l. Пусть х от-резок, длину которого надо измерить. То есть отрезку надо сопоставить действительное число; f(x) – длина отрезка.

Задача 1 – это общая задача многокритериальной оценки. Задача 2 – это задача ранжирования. Задача 3 – это задача классификации. Задача 4 – это обычная задача измерения. Обозначим Ω – исходное множество допустимых значений оценок

(МДО). Ωэ - МДО для экспертов; L – взаимодействие между экспертами; Q – обратная связь; φ – обработка (отображение Ω→ΩN

э ) Назовем схемой экспертизы пятерку параметров (Ω,Ωэ,L,Q,φ). Подготовка экспертизы – это предварительная разработка схем экспер-

тизы и подбор экспертов. Реализация экспертизы – получение от экспертов информации и её обра-

ботка.

10.3. Подготовка экспертизы

Определение МДО (множества допустимых оценок). Перечислим типы МДО и укажем определяющие их задачи оценивания.

1. Ω =0,1. Соответствующая задача попарного сравнения заключается в выявлении лучшего из двух имеющихся объектов a и b:

Отформширине,Уровень:нумерациНачать сВыравниВыровняТабуляциОтступ:

Отформширине,Уровень:нумерациНачать сВыравниВыровняТабуляциОтступ:

Отформширине,Уровень:нумерациНачать сВыравниВыровняТабуляциОтступ:

Page 174: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

171

( )1, ,0, .если a лучше b

Cв противном случае

⎧Ω = ⎨

2. Ω=(1,2,…,n)(1.3,…n)…(n, n-1,…1). То есть Ω состоит из множества перестановок длины n. Соответствующая задача ранжирования состоит в упорядочивании объектов:

C(Ω)=(i1,i2,…,in).

3. Ω=1…l. Соответствующая задача классификации

С(Ω)=i ,если X ∈ Si .

Определение МДО для экспертов Ωэ. Типы Ωэ те же, что и Ω. Но Ωэ зависит от формы опроса: интервью, анке-

тирование, метод докладной записки эксперта – высказывание мнения в сво-бодной форме.

Взаимодействие экспертов L. 1. Свободный обмен информацией между экспертами. 2. Обмен регламентирован. 3. Эксперты изолированы. Пункт (2) может иметь вид «Мозговой атаки»: в течение заданного времени

любое мнение не может быть отвергнуто и не подлежит обсуждению. Обратная связь. После обработки можно ознакомить экспертов с резуль-

татами и попросить дать повторную оценку. Известен метод Делфи. После экспертизы проверяется согласованность, а затем,

если она недостаточная, экспертам сообщается дополнительная информация и ар-гументация других экспертов. Затем экспертиза повторяется.

Подбор экспертов. Существуют методы оценки компетентности экспертов. Эксперты могут выставлять свои оценки компетентности себе и другим. Затем эта информация обобщается и используется в алгоритмах оценки.

10.4. Методы обработки экспертной информации

Существуют три вида методов обработки: – статистические методы; – алгебраические методы; – методы шкалирования.

Рассмотрим статистические методы экспертных оценок. Результаты оценок каждого эксперта можно рассматривать как реализа-

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

Отформатширине, нуУровень: 1нумерацииНачать с: 1слева + Вы+ ТабуляциОтступ: 18

Отформатширине, нуУровень: 1нумерацииНачать с: 1слева + Вы+ ТабуляциОтступ: 18

ОтформатОтступ: Вынумерованн+ Стиль ну… + НачатьВыравниваВыровнятьТабуляцияОтступ: 36

Page 175: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

172

Численные оценки. Экспертиза Э1. Задача состоит в сопоставлении оцениваемой альтернативе (системе) од-

ного числа. (Ω=E1, Ωэ=E1, L – эксперты изолированы; Q – обратная связь отсутствует)

( ) 11 2

1

, ,

N

i ii

N N

ii

xx x x a

αϕ

α

=

=

= =∑

∑K , (10.1)

где αi – вес (коэффициент компетентности) экспертов; xi – числовые оценки экспертов. При отсутствии информации о компетентности экспертов αi=1. Степенью

согласованности мнений экспертов служит дисперсия:

σ 2 =a − xi( )2α i

i=1

N

α ii=1

N

∑. (10.2)

Другая экспертиза Э2 повышает точность оценивания (Ωэ=Е3)

( )1 1 1 2 2 2 1 1 2 2 3 31 2 3 1 2 3 1 2 3

1 1 2 3

1

1, , , , , , , , ,i i iN

N N Ni N

ii

i

x x xx x x x x x x x x γ γ γϕ αγ γ γ α=

=

+ += ⋅

+ +∑∑

K . (10.3)

где 1 2 3, ,i i ix x x – оптимистическая, наиболее вероятная, и пессимистическая оценки i-ого эксперта.

γ1,γ2,γ3 – определяются эмпирически (например, по одной методике γ1=1, γ2=4, γ3=36, по другой γ1=3, γ2=0, γ3=2, γ4=25, где γ4 – степень неуверенно-сти эксперта в своем ответе, γ1>γ3 , так как человек склонен к занижению оценки).

Степень согласованности экспертов определяется дисперсией

22 2 1 1 2 2 3 3

1 1 2 3

1 1

1 1i i iN

i i iN Ni

i ii i

x x xa γ γ γσ α σ αγ γ γα α=

= =

⎛ ⎞− −= ⋅ + − ⋅⎜ ⎟+ +⎝ ⎠∑ ∑

∑ ∑, (10.4)

( )223 1

4

1i ii x xσ

γ= − ⋅ .

Page 176: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

173

В экспертизах Э1 и Э2 можно определить статистическую значимость полученных результатов. Задавшись Рош , укажем интервал, в который оце-ниваемая величина попадет с вероятностью 1-Рош.

ā – Δ<a<ā + Δ, (10.5)

а - распределена нормально с центром ā и дисперсией (10.2). Тогда

t NσΔ = ,

где t – стандартная ошибка, находящаяся по таблице распределения коэффи-циента Стьюдента t = f(N-1, Рош).

Пример. Десять экспертов с одинаковыми весами αi=1 оценивают вели-чину Т. От них получены результаты:

Т1=33 Т2=35 Т3=32,2 T4=34 T5=38

T6=34 T7=37 T8=40 T9=36 T10=35.5

По формуле (10.1) получаем Т=35,5, σ2=4,9, σ=2.2136. Задав Рош=0,05, определим t=f(9;0.005)=2,262. По формуле (10.5)

∆=1,583. Таким образом, с вероятностью 0,95 величина Т находится в интер-вале [33,917; 37,083].

10.5. Метод Делфи для численной оценки

Ω=Е1, Ωэ Z ∈Eк∑Zi=1; Zi≥0;

L – эксперты изолированы; Q – экспертам предоставляется медиана q2;

P(T≤q2)=0,5;

а также диапазон квантилей

∆q=q3-q1;

P(T≤q3)=0,75;

P(T≤q1)=0,25;

φ задается следующим образом.

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Отформатрусский (Ро

Page 177: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

174

Весь интервал допустимых значений оцениваемой величи-ны разбивается на k интервалов t1, t2, …, tk ; эксперт оценивает вероятность попадания оцени-ваемой величины в каждый из интервалов; по результатам их оценок составляется таблица,

Таблица 55

Интервалы Эксперты t1 t2 t3 … tk 1 P11 P12 P13 … P1k 2 P21 P22 P23 … P2k … … … … … … n Pn1 Pn2 Pn3 … Pnk

где Pij – оценка вероятности попадания оцениваемой величины в j-й интер-вал, данная i-м экспертом.

На основе этой таблицы определяется мнение экспертов о попадании оцени-

ваемой величины в каждый из интервалов

1

1

1j

N

t ij i Ni

ii

P Pαα=

=

= ⋅∑∑

. (10.6)

Результирующей оценкой является медиана распределения

Р(Т≤q2)=0,5.

Ее показывают экспертам, а также показывают диапазон

∆q=q3-q1.

Затем снова эксперты дают оценки Pij и т.д. до тех пор, пока диапазон ∆q не уменьшится в 1,6 раза по сравнению с предварительным.

10.6. Строгое ранжирование

Ω – множество всех перестановок, Ωэ=Ω; L – эксперты изолированы друг от друга; Q – обратная связь отсутствует). Отображение φ определяется так:

результаты опроса сводятся в таблицу рангов данных i-м экспертом j-му объ-екту.

1

N

s iSi

r r=

= ∑

На первое место ставится объект с меньшей величиной r lj lkr r≠ (в строках нет одинаковых рангов)

Таблица 56

Объекты Эксперты 1 2 … N 1 r11 r12 … r1N 2 r21 r22 … r2N … N rN1 rN2 … rNN

∑ рангов r1 r2 … rn

Page 178: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

175

Степень согласованности мнений экспертов определяется при помощи коэффициента конкордации:

212

12 3

12 ( 1)

( )

N

jj

r N nW

N n n=

⎡ ⎤− +⎣ ⎦=

∑, (10.7)

где N – число экспертов; n - число объектов; rj – ранги объектов, полученных в результате экспертизы. По сути дела, W – это сумма квадратов отклонений рангов rj от среднего

значения

1

( 1)2

Nj

jchj

r N nrn=

+= =∑ . (10.8)

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

Таблица 57

Номера экспертов Признаки 1 2 3 4 5 6 7 8 9 1

0 ∑rij

Шум 6 1 6 6 6 6 4 5 6 6 52 Цвет футеровки 4 5 4 5 5 3 5 6 4 5 46 Цвет пламени 2 2 2 3 3 2 1 1 1 2 19 Цвет дыма 1 4 3 2 2 4 3 3 3 3 28 Качество дыма 3 3 1 1 1 1 2 2 2 1 17 Искры 5 6 5 4 4 5 6 4 5 4 48

riср=35; W=0.69;

При четном N(n+1) может быть W=0.

10.7. Нестрогое ранжирование

Если объекты делят места (4) и (5), то каждый получает 4,5. В этом случае

212

1

2 3 3

1 1

12 ( 1)

( ) ( )i

N

jj

kN

ij iji j

r N nW

N n n N t t

=

= =

⎡ ⎤− +⎣ ⎦=

− − −

∑∑, (10.9)

Page 179: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

176

где ki - число групп равных рангов, введенных i-м экспертом; tij - количество дробных рангов в j-й группе, введенной i-м экспертом. Можно учесть компетентность αi:

1

N

j ij ii

r r α=

=∑ .

10.8. Метод попарных сравнений

В этом методе эксперт i фиксирует предпочтение S-го объекта над j-м объектом в виде чисел 1,0.

1, если превосходит объект ;0, в противном случае.j

is

S jd ⎧

= ⎨⎩

Далее эти результаты записываются в матрицу

jsD d= , где 1, при ( ) (-);

0, в противном случае;j j

j

is si

s

d dd

⎧ + >⎪= ⎨⎪⎩

j j

i is s

i M

d ( ) d ;−∈

− = ∑

j j

i is s

i M

d ( ) d ;+∈

+ = ∑

M+-множество экспертов, считающих что S доминирует j;

M- - множество экспертов, считающих наоборот;

M- = M- M+.

Окончательный ранг объекта определяется по сумме элементов строки

1

n

s S jj

r d=

= ∑ . (10.10)

Пример:

Page 180: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

177

jS

0 0 1 11 0 1 1

D d .0 0 0 00 0 1 0

⎛ ⎞⎜ ⎟⎜ ⎟= =⎜ ⎟⎜ ⎟⎝ ⎠

rS=(2, 3,0,1). Следовательно, объекты OS необходимо упорядочить по ценности так:

(O2, O1, O4, O3).

Page 181: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

178

СПИСОК ЛИТЕРАТУРЫ 1. Таха Хэмди А. Введение в исследование операций. 6-ое издание М.: Изд.

Дом «Вильямс», 2001. – 912 с. 2. Исследование операций в экономике: Учебное пособие для втузов/

Н.Ш.Кремер, Б.А. Путко, И.М.Тришин, М.Н.Фридман; под ред. проф. Н.Ш.Кремера. – М.: ЮНИТИ, 2006. – 407с.

3. Волков И.К., Загоруйко Е.А. Исследование операций: Учебное пособие для вузов. 2-ое изд./ Под ред. В.С.Зарубина, А.П. Крищенко. – М.: Изд-во МГТУ им. Н.Э.Баумана, 2002. – 436 с.

4. Пантелеев А.В. Методы оптимизации в примерах и задачах: Учеб. посо-бие / А.В.Пантелеев, Т.А. Летова – М: Высш. Школа, 2002.—544с.

5. Акулич И.Л. Математическое программирование в примерах и задачах: Учеб. Пособие. – М.: Высшая школа, 1986. – 319 с.

6. Кузнецов Ю.Н., Кузнецов В.И., Волощенко А.Б. Математическое про-граммирование: Учеб. пособие. – 2-ое изд., - М.: Высшая школа, 1980. – 300 с.

7. Линейное и нелинейное программирование. Ляшенко И.Н., Карагодова Е.А., Черникова Н.В., Шор Н.З.: Учеб. пособие. – Киев.: Вища школа, 1975. – 370 с.

8. Вентцель Е.С. Исследование операций. М., Советское радио, 1972. – 550 с. 9. Черноруцкий И.Г. Методы оптимизации и принятия решений: Учеб. по-

собие. – СПб.: Изд-во “Лань, 2001. – 384 . 10. Зайченко Ю.П. Исследование операций. – Киев: Вища школа, 1986 г. –

390 с. 11. Дегтярев Ю.И. Исследование операций: Учеб. пособие для втузов по

спец. АСУ. – М.: Высшая школа, 1986. – 320 с. 12. Базара М., Шетти К. Нелинейное программирование. Теория и алгорит-

мы. – М.: Мир, 1982 – 410с. 13. Морозов В.В., Сухарев А.Г., Фёдоров В.В. Исследование операций в за-

дачах и упражнениях: Учеб. пособие, - М.: Высшая школа, 1986. – 287 с. 14. Кудрявцев Е.М. Исследование операций в задачах, алгоритмах и про-

граммах. – М.: Радио и связь, 1984. - 184 с. 15. Решение задач по курсу «Исследование операций». Дискретное про-

граммирование. Метод. пособие. Составитель Б.А.Есипов. – Куйбышев: КуАИ, 1984. – 26 с.

16. Решение задач по курсу «Исследование операций». Нелинейное про-граммирование. Метод. пособие. Составитель Б.А.Есипов. – Куйбышев: КуАИ, 1984. – 26 с.

17. Практические занятия по исследованию операций. Метод. пособие. Со-ставитель Б.А.Есипов. – Куйбышев: КуАИ, 1982. – 32 с.

Page 182: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

179

18. Пакет прикладных программ для решения задач по исследованию опера-ций на ЭВМ. Целочисленное программирование. Метод. пособие. Соста-витель Б.А.Есипов, А.В. Баландин, В.Г.Гашников. – Куйбышев: КуАИ, 1982. – 32 с.

19. Пакет прикладных программ для решения задач по исследованию опера-ций на ЭВМ. Линейное частично целочисленное и нелинейное програм-мирование. Метод. пособие. Составитель Б.А.Есипов, А.В. Баландин, В.Г.Гашников. – Куйбышев: КуАИ, 1982. – 32 с.

20. Математические методы и модели в экономике. Метод. пособие./ Соста-витель Б.А.Есипов – Самара: МИР, 2003. – 40 с.

21. Аоки М. Введение в методы оптимизации. – М.: Наука, 1977. – 344 с. 22. Зангвилл У.И. Нелинейное программирование. – М.: Сов. радио, 1973. 23. Саати Т. Целочисленные методы оптимизации и связанные с ними экс-

тремальные проблемы. М. – Мир, 1973. – 302 с. 24. Фиакко А., Мак-Кормик Г. Нелинейное программирование. Методы по-

следовательной безусловной минимизации. – М.: Мир, 1972. – 238 с. 25. Сборник задач по математике для втузов. Часть 4. Методы оптимизации.

Учеб. пособие./ Под ред. А.В.Ефимова. – 2-ое изд.; – М.: Наука, 1990. – 304 с.

26. Орлов А.И. Теория принятия решений: учебник / А.И.Орлов. – М.: Изд-во «Экзамен», 2006. – 573с.

27. Шапкин А.С., Мазаева Н.П. Математические методы и модели исследо-вания операций: Учебник. -3-е изд.- М.: Изд-во «Дашков и К», 2006. - 400с.

28. Шикин Е.В., Шикина Г.Е. Исследование операций: учеб. – М.: ТК «Вел-би», Изд-во «Проспект», 2006. – 280с.

Page 183: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

180

Учебное издание

Есипов Борис Алексеевич

МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

КОНСПЕКТ ЛЕКЦИЙ Учебное пособие

Редактор а

Компьютерная верстка Доверстка

Подписано в печать _________г. Формат 60х84 1/16. Бумага офсетная. Печать офсетная.

Усл. печ. л. ____. Усл. кр.-отт. ____. Уч.-изд.л. ____ . Тираж ____ экз. Заказ _______ . Арт. С- ____/2007

Самарский государственный аэрокосмический университет.

443086 Самара, Московское шоссе, 34.

Изд-во Самарского государственного аэрокосмического университета.

443086 Самара, Московское шоссе, 34.

Page 184: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 79: [1] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 79: [1] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [1] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 79: [1] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [2] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 79: [2] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [2] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 79: [2] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [3] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [3] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [3] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [3] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [4] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [4] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [4] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [4] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [4] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [4] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [5] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [5] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [5] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [5] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [6] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [6] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [6] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [6] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00

Page 185: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 79: [7] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [8] Отформатировано TAXTAPOB_HOME 10.10.2007 23:54:00 разреженный на 0,3 пт

Стр. 80: [9] Отформатировано TAXTAPOB_HOME 01.10.2007 20:08:00 Шрифт: курсив

Стр. 80: [9] Отформатировано TAXTAPOB_HOME 01.10.2007 20:08:00 Шрифт: курсив

Стр. 80: [10] Отформатировано TAXTAPOB_HOME 01.10.2007 20:08:00 Шрифт: курсив

Стр. 80: [10] Отформатировано TAXTAPOB_HOME 01.10.2007 20:08:00 Шрифт: курсив

Page 186: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 80: [11] Удалено TAXTAPOB_HOME 01.10.2007 20:08:00 ы

Стр. 80: [11] Удалено TAXTAPOB_HOME 01.10.2007 20:09:00 S

Стр. 80: [12] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [12] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [13] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [13] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [14] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [14] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [14] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [15] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [15] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [15] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman, курсив

Стр. 80: [15] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [15] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman, курсив

Стр. 80: [15] Отформатировано TAXTAPOB_HOME 01.10.2007 20:09:00 Шрифт: курсив

Стр. 80: [16] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [16] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman, курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman, курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman, курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman, курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: Times New Roman

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00

Page 187: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Шрифт: курсив

Стр. 80: [17] Отформатировано TAXTAPOB_HOME 01.10.2007 20:10:00 Шрифт: курсив

Стр. 80: [18] Удалено TAXTAPOB_HOME 01.10.2007 20:36:00

Стр. 80: [18] Удалено TAXTAPOB_HOME 01.10.2007 20:36:00

Стр. 80: [19] Отформатировано TAXTAPOB_HOME 01.10.2007 20:11:00 Шрифт: не курсив

Стр. 80: [19] Отформатировано TAXTAPOB_HOME 01.10.2007 20:11:00 Шрифт: не курсив

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:38:00 Шрифт: курсив

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:38:00 русский (Россия), подстрочные

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:41:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:40:00 русский (Россия)

Стр. 82: [20] Отформатировано TAXTAPOB_HOME 01.10.2007 20:39:00 Шрифт: курсив

Стр. 82: [21] Удалено TAXTAPOB_HOME 01.10.2007 20:43:00

Стр. 82: [21] Удалено TAXTAPOB_HOME 01.10.2007 20:44:00

Стр. 82: [22] Отформатировано TAXTAPOB_HOME 01.10.2007 20:43:00 Шрифт: курсив

Стр. 82: [22] Отформатировано TAXTAPOB_HOME 01.10.2007 20:44:00 Шрифт: курсив

Стр. 82: [22] Отформатировано TAXTAPOB_HOME 01.10.2007 20:43:00 русский (Россия)

Стр. 82: [22] Отформатировано TAXTAPOB_HOME 01.10.2007 20:43:00 русский (Россия)

Стр. 82: [23] Удалено TAXTAPOB_HOME 01.10.2007 20:44:00

Стр. 82: [23] Удалено TAXTAPOB_HOME 01.10.2007 20:44:00 .

Стр. 82: [24] Отформатировано TAXTAPOB_HOME 01.10.2007 20:47:00 русский (Россия)

Page 188: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 82: [25] Отформатировано TAXTAPOB_HOME 01.10.2007 20:47:00 русский (Россия)

Стр. 82: [26] Отформатировано TAXTAPOB_HOME 01.10.2007 20:53:00 без подчеркивания

Стр. 82: [27] Отформатировано TAXTAPOB_HOME 10.10.2007 23:55:00 Шрифт: курсив

Стр. 82: [28] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 82: [28] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 82: [29] Отформатировано TAXTAPOB_HOME 01.10.2007 20:48:00 Шрифт: курсив

Стр. 82: [29] Отформатировано TAXTAPOB_HOME 01.10.2007 20:48:00 Шрифт: курсив, подстрочные

Стр. 82: [29] Отформатировано TAXTAPOB_HOME 01.10.2007 20:48:00 русский (Россия)

Стр. 82: [29] Отформатировано TAXTAPOB_HOME 01.10.2007 20:53:00 Шрифт: курсив

Стр. 82: [30] Отформатировано TAXTAPOB_HOME 01.10.2007 20:45:00 Шрифт: курсив

Стр. 82: [31] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 82: [31] Отформатировано TAXTAPOB_HOME 01.10.2007 20:49:00 Шрифт: курсив, без подчеркивания

Стр. 82: [32] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: не курсив

Стр. 82: [32] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: не курсив

Стр. 82: [32] Отформатировано TAXTAPOB_HOME 01.10.2007 20:53:00 русский (Россия)

Стр. 82: [32] Отформатировано TAXTAPOB_HOME 01.10.2007 20:50:00 Шрифт: курсив

Стр. 82: [32] Отформатировано TAXTAPOB_HOME 01.10.2007 20:48:00 Шрифт: курсив

Стр. 82: [33] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 82: [34] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 82: [35] Отформатировано TAXTAPOB_HOME 01.10.2007 20:50:00 русский (Россия)

Стр. 82: [36] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 83: [37] Отформатировано TAXTAPOB_HOME 01.10.2007 20:52:00 русский (Россия)

Стр. 83: [37] Отформатировано TAXTAPOB_HOME 01.10.2007 20:49:00 русский (Россия), не выше на / ниже на

Стр. 83: [37] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 83: [38] Отформатировано TAXTAPOB_HOME 01.10.2007 20:46:00 Шрифт: курсив

Стр. 83: [39] Удалено TAXTAPOB_HOME 01.10.2007 20:49:00

Page 189: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 83: [39] Удалено TAXTAPOB_HOME 01.10.2007 20:49:00

Стр. 83: [40] Отформатировано TAXTAPOB_HOME 10.10.2007 23:57:00 Equation

Стр. 83: [41] Отформатировано TAXTAPOB_HOME 01.10.2007 20:55:00 ниже на 13 пт

Стр. 83: [42] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 83: [43] Отформатировано TAXTAPOB_HOME 01.10.2007 20:56:00 Шрифт: курсив

Стр. 83: [44] Отформатировано TAXTAPOB_HOME 01.10.2007 20:56:00 По ширине, нумерованный + Уровень: 1 + Стиль нумерации: 1, 2, 3, … + Начать с: 1 + Выравнивание:

слева + Выровнять по: 17 пт + Табуляция после: 35 пт + Отступ: 35 пт, Запрет висячих строк, Поз.табуляции: нет в 78,55 пт

Стр. 83: [45] Отформатировано TAXTAPOB_HOME 10.10.2007 23:56:00 Equation, Запрет висячих строк

Стр. 83: [46] Отформатировано TAXTAPOB_HOME 01.10.2007 20:57:00 Шрифт: не курсив

Стр. 83: [47] Удалено TAXTAPOB_HOME 01.10.2007 20:57:00

Рис. 23

Стр. 83: [48] Отформатировано TAXTAPOB_HOME 01.10.2007 20:56:00 английский (США)

Стр. 83: [49] Отформатировано TAXTAPOB_HOME 01.10.2007 21:08:00 Ширина колонки 1: 177,2 пт, Промежуток для колонки 1: 10,6 пт, не Различать колонтитулы: первой

страницы

Стр. 83: [50] Отформатировано TAXTAPOB_HOME 01.10.2007 20:58:00 Отступ: Первая строка: 17 пт, Запрет висячих строк

Стр. 83: [51] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 интервал Перед: 0 пт, После: 6 пт

Стр. 83: [52] Удалено TAXTAPOB_HOME 01.10.2007 21:04:00

Рис. 24

Page 190: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 83: [53] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [53] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [53] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [53] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [53] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [53] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [54] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [55] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [55] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [55] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [55] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [55] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [55] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [56] Удалено TAXTAPOB_HOME 01.10.2007 20:59:00

Стр. 83: [56] Удалено TAXTAPOB_HOME 01.10.2007 20:59:00

Стр. 83: [57] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 Шрифт: курсив, уплотненный на 0,1 пт

Стр. 83: [57] Отформатировано TAXTAPOB_HOME 01.10.2007 21:27:00 уплотненный на 0,1 пт

Стр. 83: [58] Отформатировано TAXTAPOB_HOME 01.10.2007 21:07:00 Equation

Стр. 84: [59] Удалено TAXTAPOB_HOME 01.10.2007 21:09:00

Стр. 84: [59] Удалено TAXTAPOB_HOME 01.10.2007 21:09:00

Стр. 84: [59] Удалено TAXTAPOB_HOME 01.10.2007 21:17:00

Стр. 84: [59] Удалено TAXTAPOB_HOME 01.10.2007 21:14:00 распределения

Стр. 84: [60] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 русский (Россия), не разреженный на / уплотненный на

Стр. 84: [60] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [60] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [60] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00

Page 191: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

не разреженный на / уплотненный на

Стр. 84: [60] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [60] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [61] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [61] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 Шрифт: курсив, не разреженный на / уплотненный на

Стр. 84: [61] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [62] Удалено TAXTAPOB_HOME 01.10.2007 21:14:00 ы

Стр. 84: [62] Удалено TAXTAPOB_HOME 01.10.2007 21:16:00 средства

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 Шрифт: курсив, не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 Шрифт: курсив, подстрочные, не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 Шрифт: курсив, не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 русский (Россия), не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 русский (Россия), не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 русский (Россия), не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Стр. 84: [63] Отформатировано TAXTAPOB_HOME 01.10.2007 21:16:00 не разреженный на / уплотненный на

Page 192: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 84: [64] Отформатировано TAXTAPOB_HOME 01.10.2007 21:17:00 русский (Россия)

Стр. 84: [64] Отформатировано TAXTAPOB_HOME 01.10.2007 21:18:00 Шрифт: курсив

Стр. 84: [64] Отформатировано TAXTAPOB_HOME 01.10.2007 21:18:00 русский (Россия)

Стр. 84: [64] Отформатировано TAXTAPOB_HOME 01.10.2007 21:18:00 Шрифт: курсив

Стр. 84: [65] Удалено TAXTAPOB_HOME 01.10.2007 21:20:00 остаются

Стр. 84: [65] Удалено TAXTAPOB_HOME 01.10.2007 21:19:00 о

Стр. 84: [65] Удалено TAXTAPOB_HOME 01.10.2007 21:21:00

iX

Стр. 84: [66] Отформатировано TAXTAPOB_HOME 01.10.2007 21:22:00 ниже на 10 пт

Стр. 84: [66] Отформатировано TAXTAPOB_HOME 01.10.2007 21:22:00 русский (Россия)

Стр. 85: [67] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 Число колонок: 2, Ширина колонки 1: 175,8 пт, Промежуток для колонки 1: 12 пт, Ширина колонки

2: 152,4 пт, не Колонки одинаковой ширины, не Различать колонтитулы: первой страницы

Стр. 85: [68] Удалено TAXTAPOB_HOME 01.10.2007 21:26:00

X

Y

k0

k0

X1ϕ(X1)

Y1

ψ (Y1)

Рис. 25

Исследуя функции траты, получим количество средств после i-го шага:

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:26:00 Шрифт: курсив

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Page 193: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [69] Отформатировано TAXTAPOB_HOME 01.10.2007 21:30:00 уплотненный на 0,1 пт

Стр. 85: [70] Удалено TAXTAPOB_HOME 01.10.2007 21:26:00 -

Стр. 85: [70] Удалено TAXTAPOB_HOME 01.10.2007 21:25:00 -

Стр. 85: [71] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [71] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [71] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [72] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [72] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [72] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [72] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [72] Отформатировано TAXTAPOB_HOME 01.10.2007 21:32:00 уплотненный на 0,1 пт

Стр. 85: [73] Отформатировано TAXTAPOB_HOME 01.10.2007 21:34:00 интервал Перед: 6 пт, После: 6 пт

Стр. 85: [74] Удалено TAXTAPOB_HOME 01.10.2007 21:45:00

Стр. 85: [74] Удалено TAXTAPOB_HOME 01.10.2007 21:45:00

Начальное количество средств разделяется на первом этапе на 1X и на 1Xk − (резерв), на втором этапе подлежат распределению оставшиеся средства и из резерва. Такую задачу можно представить с одной ре-альной отраслью, а другой фиктивной (не приносящей доход и не расходующей средства).

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00

Page 194: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [75] Отформатировано TAXTAPOB_HOME 01.10.2007 21:49:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [76] Отформатировано TAXTAPOB_HOME 01.10.2007 21:50:00 разреженный на 0,2 пт

Стр. 86: [77] Удалено TAXTAPOB_HOME 01.10.2007 21:48:00 т.

Рис. 26 Решение

Стр. 86: [78] Отформатировано TAXTAPOB_HOME 01.10.2007 21:42:00 По ширине, Отступ: Первая строка: 17 пт, Запрет висячих строк

Page 195: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 86: [79] Удалено TAXTAPOB_HOME 01.10.2007 21:50:00

Стр. 86: [79] Удалено TAXTAPOB_HOME 01.10.2007 21:51:00

( ) 0=iхϕ

Стр. 86: [80] Удалено TAXTAPOB_HOME 01.10.2007 21:52:00 ( ) 0=iхϕ

∑=

→=m

iii xfW

1max)(

0kxi ≤∑

Стр. 86: [81] Отформатировано TAXTAPOB_HOME 01.10.2007 21:52:00 уплотненный на 0,1 пт

Стр. 86: [81] Отформатировано TAXTAPOB_HOME 01.10.2007 21:52:00 уплотненный на 0,1 пт

Стр. 86: [81] Отформатировано TAXTAPOB_HOME 01.10.2007 21:52:00 уплотненный на 0,1 пт

Стр. 87: [82] Удалено TAXTAPOB_HOME 01.10.2007 21:57:00

∑=

→=m

iixfW

1max)(

Стр. 87: [83] Отформатировано TAXTAPOB_HOME 01.10.2007 21:57:00 Equation, интервал Перед: 0 пт, После: 0 пт, Поз.табуляции: нет в 320,35 пт

Стр. 87: [84] Отформатировано TAXTAPOB_HOME 11.10.2007 0:00:00 Ширина колонки 1: 147,1 пт, Ширина колонки 2: 175,4 пт, не Различать колонтитулы: первой стра-

ницы

Стр. 87: [85] Отформатировано Tahtarov 02.10.2007 9:36:00 Отступ: Слева: 0 пт, Первая строка: 17 пт, нумерованный + Уровень: 1 + Стиль нумерации: 1, 2, 3, …

+ Начать с: 1 + Выравнивание: слева + Выровнять по: 0 пт + Табуляция после: 0 пт + Отступ: 0 пт

Стр. 87: [86] Отформатировано TAXTAPOB_HOME 01.10.2007 21:58:00 Шрифт: курсив

Стр. 87: [86] Отформатировано TAXTAPOB_HOME 01.10.2007 21:58:00 Шрифт: курсив

Стр. 87: [86] Отформатировано TAXTAPOB_HOME 01.10.2007 21:58:00 Шрифт: курсив

Стр. 87: [87] Удалено TAXTAPOB_HOME 01.10.2007 22:00:00

Рис. 27

Стр. 87: [87] Удалено TAXTAPOB_HOME 01.10.2007 21:59:00 :

Стр. 87: [88] Отформатировано TAXTAPOB_HOME 01.10.2007 21:59:00

Page 196: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Шрифт: курсив

Стр. 87: [88] Отформатировано TAXTAPOB_HOME 01.10.2007 21:59:00 Шрифт: курсив

Стр. 87: [89] Отформатировано TAXTAPOB_HOME 01.10.2007 21:59:00 Шрифт: курсив

Стр. 87: [90] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 87: [91] Отформатировано Tahtarov 02.10.2007 9:36:00 По ширине, Отступ: Слева: 0 пт, Первая строка: 17 пт, нумерованный + Уровень: 1 + Стиль нумера-

ции: 1, 2, 3, … + Начать с: 1 + Выравнивание: слева + Выровнять по: 17 пт + Табуляция после: 35 пт + Отступ: 35 пт, Запрет висячих строк, Поз.табуляции: 28

Стр. 87: [92] Отформатировано TAXTAPOB_HOME 01.10.2007 22:02:00 Шрифт: курсив

Стр. 87: [92] Отформатировано TAXTAPOB_HOME 01.10.2007 22:02:00 Шрифт: курсив

Стр. 87: [93] Отформатировано TAXTAPOB_HOME 01.10.2007 22:07:00 русский (Россия)

Стр. 87: [93] Отформатировано TAXTAPOB_HOME 01.10.2007 22:07:00 русский (Россия)

Стр. 87: [93] Отформатировано TAXTAPOB_HOME 01.10.2007 22:05:00 русский (Россия)

Стр. 87: [94] Удалено TAXTAPOB_HOME 01.10.2007 22:05:00

xxf =)( max21 →+= xxW 021 kxx =+

Стр. 87: [95] Отформатировано TAXTAPOB_HOME 01.10.2007 22:01:00 По ширине, Отступ: Слева: 0 пт, Первая строка: 17 пт, Запрет висячих строк

Стр. 87: [96] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Page 197: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [97] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00 Шрифт: курсив, разреженный на 0,3 пт

Стр. 87: [98] Отформатировано TAXTAPOB_HOME 01.10.2007 22:08:00

Page 198: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

разреженный на 0,3 пт

Стр. 87: [99] Отформатировано TAXTAPOB_HOME 10.10.2007 23:59:00 Обычный, интервал После: 0 пт

Стр. 87: [100] Отформатировано Tahtarov 02.10.2007 9:36:00 По ширине, Отступ: Слева: 0 пт, Первая строка: 17 пт, нумерованный + Уровень: 1 + Стиль нумера-

ции: 1, 2, 3, … + Начать с: 1 + Выравнивание: слева + Выровнять по: 17 пт + Табуляция после: 35 пт + Отступ: 35 пт, Запрет висячих строк, Поз.табуляции: 28

Стр. 87: [101] Отформатировано TAXTAPOB_HOME 01.10.2007 22:09:00 русский (Россия)

Стр. 87: [101] Отформатировано TAXTAPOB_HOME 01.10.2007 22:09:00 русский (Россия)

Стр. 87: [101] Отформатировано TAXTAPOB_HOME 01.10.2007 22:09:00 русский (Россия)

Стр. 87: [101] Отформатировано TAXTAPOB_HOME 01.10.2007 22:09:00 русский (Россия)

Стр. 87: [102] Удалено TAXTAPOB_HOME 01.10.2007 22:10:00

2)( xxf = max22

21 →+= xxW 121 kxx =+

Стр. 87: [103] Отформатировано TAXTAPOB_HOME 01.10.2007 22:05:00 Отступ: Слева: 0 пт, Первая строка: 17 пт, Запрет висячих строк, Поз.табуляции: нет в 78,55 пт

Стр. 87: [104] Отформатировано TAXTAPOB_HOME 01.10.2007 22:06:00 Шрифт: курсив

Стр. 87: [104] Отформатировано TAXTAPOB_HOME 01.10.2007 22:06:00 Шрифт: курсив

Стр. 87: [105] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 87: [106] Отформатировано TAXTAPOB_HOME 01.10.2007 22:05:00 английский (США)

Стр. 87: [107] Отформатировано TAXTAPOB_HOME 01.10.2007 22:10:00 русский (Россия)

Стр. 87: [108] Отформатировано TAXTAPOB_HOME 01.10.2007 22:12:00 Шрифт: курсив

Стр. 88: [109] Отформатировано TAXTAPOB_HOME 01.10.2007 23:17:00 Equation, нумерованный + Уровень: 1 + Стиль нумерации: I, II, III, … + Начать с: 1 + Выравнивание:

справа + Выровнять по: 26 пт + Табуляция после: 35 пт + Отступ: 35 пт, Запрет висячих строк, Поз.табуляции: нет в 69,55 пт + 78,55 пт

Стр. 88: [110] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Стр. 88: [111] Отформатировано TAXTAPOB_HOME 01.10.2007 22:14:00 Шрифт: курсив

Стр. 88: [112] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Стр. 88: [113] Отформатировано TAXTAPOB_HOME 01.10.2007 23:20:00 Шрифт: курсив

Стр. 88: [114] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Стр. 88: [115] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 подстрочные

Стр. 88: [116] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Стр. 88: [117] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Page 199: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 88: [118] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Стр. 88: [119] Отформатировано TAXTAPOB_HOME 01.10.2007 22:13:00 Шрифт: курсив

Стр. 88: [120] Отформатировано TAXTAPOB_HOME 01.10.2007 23:34:00 Equation

Стр. 89: [121] Удалено TAXTAPOB_HOME 01.10.2007 23:25:00

( ) ( ) ( ) ( )

( ) ( ) **1

*22

*1222

*11011

max

maxmax

2

1

mmmmmmX

X

iX

kXkGXF

kXkGXFkXkGXF

m

=−+

=−+

=−+

L

*

max mkW =

Стр. 89: [122] Отформатировано TAXTAPOB_HOME 01.10.2007 23:25:00 Отступ: Первая строка: 17 пт

Стр. 89: [123] Отформатировано TAXTAPOB_HOME 01.10.2007 23:26:00 Equation

Стр. 89: [124] Отформатировано TAXTAPOB_HOME 01.10.2007 23:27:00 Шрифт: курсив

Стр. 89: [125] Отформатировано TAXTAPOB_HOME 01.10.2007 23:26:00 ниже на 6 пт

Стр. 89: [126] Отформатировано TAXTAPOB_HOME 01.10.2007 23:27:00 Шрифт: курсив

Стр. 89: [127] Отформатировано TAXTAPOB_HOME 01.10.2007 23:30:00 ниже на 40 пт

Стр. 89: [128] Удалено TAXTAPOB_HOME 01.10.2007 23:30:00

Стр. 89: [129] Отформатировано TAXTAPOB_HOME 01.10.2007 23:30:00 Шрифт: курсив

Стр. 89: [130] Отформатировано TAXTAPOB_HOME 11.10.2007 0:00:00 Equation

Стр. 89: [131] Отформатировано TAXTAPOB_HOME 01.10.2007 23:30:00 Шрифт: курсив

Стр. 89: [132] Отформатировано TAXTAPOB_HOME 01.10.2007 23:31:00 Шрифт: курсив

Стр. 89: [133] Отформатировано TAXTAPOB_HOME 01.10.2007 23:31:00 Шрифт: курсив, подстрочные

Стр. 89: [134] Отформатировано TAXTAPOB_HOME 01.10.2007 23:31:00 русский (Россия)

Стр. 89: [135] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 89: [136] Отформатировано TAXTAPOB_HOME 01.10.2007 23:34:00

( ) ( )[ ] ( ) ( )[ ] ( ) ( )

( ) ( ) ( ) ( ) ( ) ( )[ ]iii ii i

m

ii

mm mm m m i i ii

XkgXf r Xik g X f X k X k

W W

Xk X Xk g X f r W m i X k gX f r W

−+− − ++− + = ′

→ = −+ +−+ =−=−+ =

∑=

ψ ϕ

ψ ϕ

max

1, 1 ,

1

Page 200: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

подчеркивание

Стр. 89: [137] Отформатировано TAXTAPOB_HOME 01.10.2007 23:34:00 По ширине, Отступ: Первая строка: 17 пт, Разрешить отрывать от следующего

Стр. 89: [138] Отформатировано TAXTAPOB_HOME 01.10.2007 23:31:00 Шрифт: курсив

Стр. 90: [139] Отформатировано TAXTAPOB_HOME 01.10.2007 23:35:00 ниже на 6 пт

Стр. 90: [139] Отформатировано TAXTAPOB_HOME 01.10.2007 23:35:00 русский (Россия)

Стр. 90: [140] Отформатировано TAXTAPOB_HOME 01.10.2007 23:36:00 Шрифт: курсив

Стр. 90: [140] Отформатировано TAXTAPOB_HOME 01.10.2007 23:36:00 Шрифт: курсив, подстрочные

Стр. 90: [140] Отформатировано TAXTAPOB_HOME 01.10.2007 23:36:00 Шрифт: курсив, русский (Россия), подстрочные

Стр. 90: [140] Отформатировано TAXTAPOB_HOME 01.10.2007 23:36:00 Шрифт: курсив, подстрочные

Стр. 90: [141] Отформатировано TAXTAPOB_HOME 01.10.2007 23:35:00 русский (Россия)

Стр. 90: [141] Отформатировано TAXTAPOB_HOME 01.10.2007 23:35:00 Шрифт: курсив

Стр. 90: [141] Отформатировано TAXTAPOB_HOME 01.10.2007 23:36:00 Шрифт: курсив

Стр. 90: [141] Отформатировано TAXTAPOB_HOME 01.10.2007 23:37:00 Шрифт: курсив

Стр. 90: [141] Отформатировано TAXTAPOB_HOME 01.10.2007 23:37:00 Шрифт: курсив

Стр. 90: [141] Отформатировано TAXTAPOB_HOME 01.10.2007 23:37:00 Шрифт: курсив

Стр. 90: [142] Отформатировано TAXTAPOB_HOME 01.10.2007 23:38:00 По ширине, Отступ: Первая строка: 17 пт

Стр. 90: [143] Отформатировано TAXTAPOB_HOME 01.10.2007 23:38:00 подчеркивание

Стр. 90: [144] Отформатировано TAXTAPOB_HOME 01.10.2007 23:38:00 уплотненный на 0,1 пт

Стр. 90: [145] Отформатировано TAXTAPOB_HOME 01.10.2007 23:39:00 Шрифт: не курсив

Стр. 90: [145] Отформатировано TAXTAPOB_HOME 01.10.2007 23:39:00 Шрифт: не курсив

Стр. 90: [146] Удалено TAXTAPOB_HOME 01.10.2007 23:39:00

Стр. 90: [146] Удалено TAXTAPOB_HOME 01.10.2007 23:39:00 K1,K2

Стр. 90: [147] Отформатировано TAXTAPOB_HOME 01.10.2007 23:39:00 ниже на 10 пт

Стр. 90: [148] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 90: [149] Отформатировано TAXTAPOB_HOME 01.10.2007 23:39:00 Шрифт: курсив

Стр. 90: [149] Отформатировано TAXTAPOB_HOME 01.10.2007 23:39:00 Шрифт: курсив

Page 201: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Стр. 90: [150] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 русский (Россия)

Стр. 90: [151] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 Шрифт: курсив

Стр. 90: [151] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 Шрифт: курсив

Стр. 90: [151] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 Шрифт: курсив

Стр. 90: [151] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 Шрифт: курсив

Стр. 90: [151] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 Шрифт: курсив

Стр. 90: [151] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 итальянский (Италия)

Стр. 90: [152] Отформатировано TAXTAPOB_HOME 01.10.2007 23:40:00 Шрифт: курсив

Стр. 90: [153] Отформатировано TAXTAPOB_HOME 01.10.2007 23:41:00 Шрифт: не курсив

Стр. 90: [153] Отформатировано TAXTAPOB_HOME 01.10.2007 23:41:00 Шрифт: не курсив

Стр. 90: [153] Отформатировано TAXTAPOB_HOME 01.10.2007 23:41:00 Шрифт: не курсив

Стр. 90: [154] Отформатировано TAXTAPOB_HOME 01.10.2007 23:41:00 По ширине

Стр. 90: [155] Удалено TAXTAPOB_HOME 01.10.2007 23:48:00

Стр. 90: [155] Удалено TAXTAPOB_HOME 01.10.2007 23:48:00 .

Стр. 90: [156] Отформатировано TAXTAPOB_HOME 01.10.2007 23:41:00 подчеркивание

Стр. 90: [157] Отформатировано TAXTAPOB_HOME 01.10.2007 23:41:00 Шрифт: курсив

Стр. 90: [157] Отформатировано TAXTAPOB_HOME 01.10.2007 23:42:00 русский (Россия)

Стр. 91: [158] Отформатировано TAXTAPOB_HOME 01.10.2007 23:42:00 ниже на 12 пт

Стр. 91: [158] Отформатировано TAXTAPOB_HOME 01.10.2007 23:43:00 русский (Россия)

Стр. 91: [159] Удалено TAXTAPOB_HOME 01.10.2007 23:43:00 WW ln=′

Стр. 91: [159] Удалено TAXTAPOB_HOME 01.10.2007 23:45:00 :

Стр. 91: [160] Отформатировано TAXTAPOB_HOME 01.10.2007 23:45:00 английский (США), ниже на 10 пт

Стр. 91: [161] Отформатировано TAXTAPOB_HOME 11.10.2007 0:00:00 Equation

Стр. 91: [162] Отформатировано TAXTAPOB_HOME 01.10.2007 23:45:00 ниже на 6 пт

Стр. 91: [163] Отформатировано TAXTAPOB_HOME 01.10.2007 23:44:00 Шрифт: курсив

Стр. 91: [163] Отформатировано TAXTAPOB_HOME 01.10.2007 23:44:00

Page 202: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Шрифт: курсив

Стр. 91: [163] Отформатировано TAXTAPOB_HOME 01.10.2007 23:44:00 русский (Россия), подстрочные

Стр. 91: [164] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 91: [165] Отформатировано TAXTAPOB_HOME 01.10.2007 23:46:00 английский (США), ниже на 12 пт

Стр. 91: [166] Отформатировано Tahtarov 02.10.2007 9:36:00 русский (Россия)

Стр. 91: [167] Отформатировано TAXTAPOB_HOME 11.10.2007 0:01:00 Equation

Стр. 91: [168] Отформатировано TAXTAPOB_HOME 01.10.2007 23:47:00 ниже на 6 пт

Стр. 91: [168] Отформатировано TAXTAPOB_HOME 01.10.2007 23:47:00 не выше на / ниже на

Стр. 91: [169] Удалено TAXTAPOB_HOME 01.10.2007 23:47:00 ( )−iXq

Стр. 91: [169] Удалено TAXTAPOB_HOME 01.10.2007 23:47:00 .

Стр. 91: [169] Удалено TAXTAPOB_HOME 01.10.2007 23:46:00

( )∏=

→=m

iii XqQ

1

max. 0kX i ≤∑

Стр. 91: [170] Отформатировано TAXTAPOB_HOME 01.10.2007 23:47:00 ниже на 6 пт

Стр. 91: [171] Отформатировано TAXTAPOB_HOME 01.10.2007 23:47:00 По ширине

Стр. 91: [172] Отформатировано TAXTAPOB_HOME 01.10.2007 23:48:00 Шрифт: курсив

Стр. 91: [173] Отформатировано TAXTAPOB_HOME 01.10.2007 23:48:00 Шрифт: курсив

Стр. 91: [173] Отформатировано TAXTAPOB_HOME 01.10.2007 23:48:00 Шрифт: курсив

Стр. 91: [173] Отформатировано TAXTAPOB_HOME 01.10.2007 23:48:00 Шрифт: курсив

Стр. 92: [174] Удалено TAXTAPOB_HOME 11.10.2007 0:03:00 Состоянием является оставшееся (текущее) количество станков (k). Пусть мы распределяем оставшие-

ся k станков. Начинаем с третьего (последнего) цеха:

Page 203: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

0

1

2

3

4

5

6

0 1 2 3 4

x1

f1

01234567

0 1 2 3 4

x2

f2

0

2

4

6

8

0 1 2 3 4

x3

f3

Рис. 30

)(max)(3

3 ~333 321

Wkx

xfkW≤

=

Стр. 94: [175] Отформатировано TAXTAPOB_HOME 01.10.2007 23:53:00 Шрифт: Times New Roman

Стр. 94: [175] Отформатировано TAXTAPOB_HOME 01.10.2007 23:53:00 Шрифт: Times New Roman

Стр. 94: [175] Отформатировано TAXTAPOB_HOME 01.10.2007 23:53:00 Шрифт: Times New Roman

Стр. 94: [175] Отформатировано TAXTAPOB_HOME 01.10.2007 23:53:00 Шрифт: Times New Roman

Стр. 94: [176] Отформатировано TAXTAPOB_HOME 01.10.2007 23:59:00 Шрифт: курсив

Стр. 94: [176] Отформатировано TAXTAPOB_HOME 01.10.2007 23:53:00 Шрифт: курсив

Стр. 94: [177] Отформатировано TAXTAPOB_HOME 01.10.2007 23:59:00 Шрифт: курсив

Стр. 94: [177] Отформатировано TAXTAPOB_HOME 01.10.2007 23:59:00 Шрифт: курсив

Стр. 94: [177] Отформатировано TAXTAPOB_HOME 02.10.2007 0:00:00 ниже на 5 пт

Стр. 94: [178] Отформатировано TAXTAPOB_HOME 02.10.2007 0:01:00 Шрифт: курсив

Стр. 94: [178] Отформатировано TAXTAPOB_HOME 02.10.2007 0:01:00 Шрифт: курсив

Стр. 94: [179] Отформатировано TAXTAPOB_HOME 02.10.2007 0:02:00 ниже на 12 пт

Стр. 94: [179] Отформатировано TAXTAPOB_HOME 02.10.2007 0:02:00 не выше на / ниже на

Стр. 94: [180] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00

Page 204: МЕТОДЫ ОПТИМИЗАЦИИ И ИССЛЕДОВАНИЕ ОПЕРАЦИЙ

Шрифт: не курсив

Стр. 94: [180] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: не курсив

Стр. 94: [180] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: не курсив

Стр. 94: [180] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: не курсив

Стр. 94: [180] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 ниже на 11 пт

Стр. 94: [181] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: не курсив

Стр. 94: [181] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: не курсив

Стр. 94: [181] Отформатировано TAXTAPOB_HOME 02.10.2007 0:04:00 ниже на 11 пт

Стр. 94: [181] Отформатировано TAXTAPOB_HOME 02.10.2007 0:04:00 не выше на / ниже на

Стр. 94: [182] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: курсив

Стр. 94: [182] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: курсив

Стр. 94: [182] Отформатировано TAXTAPOB_HOME 02.10.2007 0:03:00 Шрифт: курсив