ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И...

88
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное бюджетное образовательное учреждение высшего образования «УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКА Учебное пособие Составитель С. В. Куркина Ульяновск УлГТУ 2017

Transcript of ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И...

Page 1: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное бюджетное образовательное учреждение

высшего образования «УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКА

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

Составитель С. В. Куркина

Ульяновск УлГТУ

2017

Page 2: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

УДК 519.87 (075) ББК 22.18 я7

И 88

Рецензенты: доктор технических наук, профессор И. В. Семушин; кафедра прикладной математики факультета математики, информационных и авиационных технологий УлГУ

Утверждено редакционно-издательским советом

университета в качестве учебного пособия

Исследование операций: теория и практика : учебное пособие И 88 / сост. : С. В. Куркина. – Ульяновск : УлГТУ, 2017. – 87 с.

ISBN 978-5-9795-1648-6

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

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

УДК 519.87 (075) ББК 22.18 я7

Куркина С.В., составление, 2017 ISBN 978-5-9795-1648-6 Оформление. УлГТУ, 2017

Page 3: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ .......................................................................................................... 5 

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

1.2. ОСНОВНЫЕ ПОНЯТИЯ .................................................................................. 7 

1.3. КЛАССИФИКАЦИЯ ЗАДАЧ ИССЛЕДОВАНИЯ ОПЕРАЦИЙ ............................... 9 

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

от времени .................................................................................................... 9 

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

о задаче ......................................................................................................... 9 

1.3.3. Классификация по виду критерия оптимальности ...................... 10 

1.3.4. Многокритериальные задачи ......................................................... 11 

2. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ ..................................................... 14 2.1. ПОСТАНОВКА ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ (ЗЛП) ........... 14 

2.2. ГРАФИЧЕСКИЙ МЕТОД РЕШЕНИЯ .............................................................. 15 

2.3. СИМПЛЕКС-МЕТОД ................................................................................... 17 

2.4. ТЕОРИЯ ДВОЙСТВЕННОСТИ ....................................................................... 24 

2.5. ТРАНСПОРТНАЯ ЗАДАЧА ........................................................................... 27 

2.5.1. Математическая модель транспортной задачи ............................ 27 

2.5.2. Метод северо-западного угла ......................................................... 30 

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

2.5.4. Метод потенциалов ......................................................................... 31 

2.6. ОБЩАЯ РАСПРЕДЕЛИТЕЛЬНАЯ ЗАДАЧА ..................................................... 33 

2.6.1. Исходные параметры модели ......................................................... 33 

2.6.2. Искомые параметры модели РЗ ..................................................... 34 

2.6.3. Этапы построения модели .............................................................. 34 

2.6.4. Этапы решения РЗ ........................................................................... 35 

3

Page 4: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

3. СЕТЕВОЕ ПЛАНИРОВАНИЕ ..................................................................... 37 3.1. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ ..................................................... 37

3.2. ПРАВИЛА СОСТАВЛЕНИЯ СЕТЕВЫХ ГРАФИКОВ ........................................ 39

3.3. ЭТАПЫ ПОСТРОЕНИЯ СЕТЕВОГО ГРАФИКА ............................................... 46

3.3.1. Проверка исходных данных ........................................................... 46

3.3.2. Выявление необходимости введения фиктивных работ ............. 47

3.3.3. Формулировка событий сетевого графика ................................... 47

3.3.4. Построение сетевого графика ........................................................ 47

3.4. ВРЕМЕННЫЕ ПАРАМЕТРЫ СОБЫТИЙ ......................................................... 48

3.5. ВРЕМЕННЫЕ ПАРАМЕТРЫ РАБОТ И ПУТЕЙ ................................................ 50

4. ПРАКТИКУМ ................................................................................................ 52 4.1. РЕШЕНИЕ ЗЛП ГРАФИЧЕСКИМ МЕТОДОМ ................................................ 52

4.2. РЕШЕНИЕ ЗЛП СИМПЛЕКС-МЕТОДОМ ...................................................... 55

4.3. ПОЛУЧЕНИЕ ОПТИМАЛЬНОГО РЕШЕНИЯ ТРАНСПОРТНОЙ ЗАДАЧИ ........... 59

4.4. ПРОГРАММНОЕ РЕШЕНИЕ ЗЛП ................................................................. 66

4.4.1. Постановка задачи ........................................................................... 66

4.4.2. Оформление экранной формы ....................................................... 66

4.4.3. Ввод ограничений задачи ............................................................... 69

4.4.4. Целочисленное программирование ............................................... 74

4.5. ПОСТРОЕНИЕ И РЕШЕНИЕ РАСПРЕДЕЛИТЕЛЬНОЙ ЗЛП ............................. 75

4.5.1. Исходные данные ............................................................................ 75

4.5.2. Построение распределительной модели без специализации ...... 76

4.5.3. Производство со специализацией .................................................. 80

4.6. ПОСТРОЕНИЕ И РАСЧЕТ СЕТЕВОЙ МОДЕЛИ ............................................... 83

КОНТРОЛЬНЫЕ ВОПРОСЫ .......................................................................... 85

ЗАКЛЮЧЕНИЕ ................................................................................................. 86

БИБЛИОГРАФИЧЕСКИЙ СПИСОК ............................................................. 87

4

Page 5: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

ВВЕДЕНИЕ

Целью данного пособия является формирование у студентов знаний

о моделях и методах исследования операций, формирование базовых

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

решения оптимизационных задач, возникающих в процессе принятия

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

решений.

Изучение курса исследования операций предназначено для

формирования способности будущих выпускников использовать

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

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

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

средств исследования объектов профессиональной деятельности.

Рассмотрены некоторые разделы математической науки, такие как

линейная оптимизация, сетевое планирование. Задачи оптимального

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

функции (линейной формы) при наличии ограничений в виде линейных

уравнений или линейных неравенств, относятся к задачам линейного

программирования. Многие задачи линейного программирования, будучи

решенными, нашли широкое практическое применение в народном

хозяйстве. Методы сетевого планирования успешно применяются для

оптимизации планирования и управления сложными разветвленными

комплексами работ, которые требуют участия большого числа

исполнителей и затрат ограниченных ресурсов.

Более подробную информацию по всем вопросам, представленным в

данном пособии, и другим разделам исследования операций можно найти

в [3], [4], [5], [6]. Набор практических заданий по теме «Линейное

программирование» представлен в пособии д-ра техн. наук., профессора

И. В. Семушина [1].

5

Page 6: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

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

1.1. История развития

В определенной мере создание математического программирования

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

Л. В. Канторовича «Математические методы в организации и планиро-

вании производства», где впервые была поставлена и решена задача

линейного программирования – частный случай общей задачи

математического программирования. Первые публикации по

исследованию операций относятся к 40-м годам ХХ века, в которых

методы применены для решения военных задач, в частности, для анализа и

исследования военных операций. Отсюда и пошло название дисциплины.

Интенсивные исследования в этой области начались лишь в конце

сороковых годов, когда американским математиком Д. Данцигом был

построен изящный алгоритм симплексного метода для линейных

программ.

В пятидесятые годы в работах Г. Куна, А. Таккера, Г. Зойтендейка,

Л. Гурвица и других получают развитие методы нелинейного

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

В 1957 г. появляется монография выдающегося американского

математика Р. Беллмана, положившая начало одному из оригинальных

методов исследования многошаговых процессов принятия решений –

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

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

математиков во главе с Л. С. Понтрягиным.

В те же годы начинается интенсивное развитие другого крупного

раздела исследования операций – теории игр, история которой связана с

именем Джона фон-Неймана, сформулировавшего в 1927 г. основную

теорему этой теории.

6

Page 7: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Создание электронных вычислительных машин оказалось немало-

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

рования и управления, ставших обычным инструментом исследования в

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

вычислительные возможности человека, ЭВМ стимулировали появление

методов стохастического моделирования (методов Монте-Карло),

совершенно нереальных при ручных вычислениях и «подающих надежду

на спасение» при решении задач большой размерности. Позднее принципы

и методы исследования операций стали применяться в сфере

промышленно финансового управления. С увеличением масштабов

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

решаемых задач, совершенствовались методы новой науки. Потребности в

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

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

Значительный вклад в теорию и методы линейного программи-

рования внесли С. Гасс, А. Таккер, Р. Гомори, Г. Кун, Т. Саати, Г. Вагнер,

Д. Б. Юдин, Е. Г. Гольштейн, В. А. Булавский, Г. Ш. Рубинштейн,

С. И. Черников, С. И. Зуховицкий и другие. В эти же годы в работах

Л. Форда и Д. Фалкерсона развиты методы решения частного случая

линейных программ – задач транспортного типа (классическая

транспортная задача была сформулирована Ф. Хичкоком в 1941 г.).

1.2. Основные понятия

Исследование операций (ИО) – это комплекс математических

методов, применяемых для нахождения оптимального (правильного)

решения в любой области деятельности человека, в том числе

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

Основной акцент в исследовании операций делается на такие

разделы математики, как теорию массового обслуживания, математическое

7

Page 8: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

программирование (линейное, нелинейное, динамическое), сетевое

планирование, теорию игр и др. Использование математических методов в

исследовании операций данную теорию формирует как науку [2].

Исследование операций иногда называют «количественным

выражением здравого смысла». По мнению английского ученого Т. Саати:

«исследование операций представляет собой искусство давать плохие

ответы на те практические вопросы, на которые даются еще худшие

ответы другими способами» [3]. Более доступно комментирует российский

специалист профессор Е. С. Вентцель: «исследование операций способно

дать плохой ответ на вопрос, на который нельзя ответить по-другому» [4].

Иными словами, эта наука в большинстве случаев остается единственным

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

Набор управляющих параметров (переменных) при проведении

операции называется решением. Решение называется допустимым, если

оно удовлетворяет набору определенных условий. Решение называется

оптимальным, если оно допустимо и, по определенным признакам,

предпочтительнее других, или, по крайней мере, не хуже.

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

Критерий оптимальности включает в себя целевую функцию,

направление оптимизации или набор целевых функций и соответствующих

направлений оптимизации.

Целевая функция – это количественный показатель предпочти-

тельности или эффективности решений.

Направление оптимизации – это максимум (минимум), если

наиболее предпочтительным является наибольшее (наименьшее) значение

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

прибыли либо минимизация затрат.

8

Page 9: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Математическая модель задачи ИО включает в себя:

1) описание переменных, которые необходимо найти;

2) описание критериев оптимальности;

3) описание допустимых решений (ограничений, накладываемых на

переменные).

Цель ИО – количественно и качественно обосновать принимаемое

решение. Окончательное решение принимает ответственное лицо либо

группа лиц, называемое ЛПР – лицо, принимающее решение.

1.3. Классификация задач исследования операций

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

1. Статическая задача. Принятие решения происходит при условии,

что все параметры задачи заранее известны и не изменяются во времени

[6]. Процедура принятия решения осуществляется один раз.

2. Динамическая задача. В процессе принятия решения параметры

задачи изменяются по времени. Процедура принятия решения

осуществляется поэтапно и может быть представлена и виде процесса,

зависящего от времени, в том числе непрерывно.

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

1. Детерминированная задача. Все параметры задачи заранее

известны.

Для решения детерминированных задач в основном применяются

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

2. Недетерминированная задача. Не все параметры задачи заранее

известны.

Например, необходимо принять решение об управлении

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

строя. Оптимальное решение недетерминированной задачи ИО отыскать

9

Page 10: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

практически невозможно. Однако некоторое «разумное» решение отыскать

можно.

2, а). Стохастическая задача. Не все параметры задачи заранее

известны, но имеются статистические данные о неизвестных параметрах

(вероятности, функции распределения, математические ожидания и т. д.).

Для отыскания оптимального решения стохастической задачи

применяется один и из следующих приемов:

- искусственное сведение к детерминированной задаче (неизвестные

параметры заменяются их средними значениями).

- «оптимизация в среднем» (вводится и оптимизируется некоторый

статистический критерий).

2, б). Задача в условиях (полной) неопределенности. Статистические

данные о неизвестных параметрах отсутствуют. Задачи ИО в условиях

неопределенности в основном изучаются в рамках теории игр.

1.3.3. Классификация по виду критерия оптимальности

Критерий оптимальности может иметь любой вид, в том числе

неформализуемый. Наиболее распространенные формализуемые критерии

оптимальности заключаются в оптимизации (минимизации либо

максимизации) одной или нескольких скалярных целевых функций [5].

Функция называется скалярной, если ее значением является

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

множестве допустимых числовых решений называется задачей

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

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

т. е. задач с одной целевой функцией, являются следующие задачи.

Задачи линейного программирования. Целевая функция линейная,

множество допустимых решений – выпуклый многогранник.

10

Page 11: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Задачи квадратичного программирования. Целевая – функция

квадратичная, а множество допустимых решений – выпуклый

многогранник.

Задачи стохастического программирования. Это задачи линейного

программирования с неизвестными числовыми параметрами, о которых

имеются статистические данные.

Задачи дискретного программирования. Множество допустимых

решений – дискретное множество.

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

решений – точки целочисленной решетки.

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

решений – 0-1 матрицы.

1.3.4. Многокритериальные задачи

В задачах ИО, как правило, присутствует не один, а несколько

признаков предпочтения (критериев). Такие задачи называются

многокритериальными.

Критерии могут оказаться противоречивыми, т. e. решение, лучшее

по определенному признаку, может оказаться худшим по другому

признаку. Например, минимизация стоимости и максимизации качества

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

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

не будет иметь ни одного решения.

В случае противоречивых критериев ИО предлагает следующие

подходы к отысканию подходящего решения.

1) Замена некоторых критериев ограничениями вида ≤ или ≥.

Например, минимизация стоимости f (x) → min может быть заменена

ограничением вида f (x) ≤ A, где А – некоторая верхняя оценка стоимости,

т. е. максимально допустимая стоимость.

11

Page 12: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

2) Свертка критериев. Создается один глобальный скалярный

критерий, целевая функция которого является некоторой функцией от

исходных целевых функций. Наиболее употребимыми являются линейные

свертки вида α f (x) + β g(x) (в случае двух критериев). Нетривиальной

является задача отыскания адекватных значений коэффициентов α и β,

отражающих относительную важность целевых функций f (x) и g(x).

3) Ранжирование критериев. Критерии ранжируются по степени

важности.

4) Отыскание решений, лучших хотя бы по одному критерию.

Подходы 1) и 2) приводят к однокритериальной задаче. Подход 3)

приводит к задаче с упорядоченными критериями. Подход 4) приводит к

задаче с независимыми критериями. В задаче с упорядоченными

критериями критерии упорядочиваются по важности и требуется найти

оптимальное решение для наименее важного критерия на множестве

решений, оптимальных для более важного критерия (рис. 1).

Рис. 1. Упорядочение критериев

12

Page 13: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Самое большое – множество всех допустимых решений, в него

вложено множество решений, оптимальных по самому важному критерию,

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

критерию, и т. д.

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

недоминируемых (эффективных) решений. Недоминируемое решение

лучше любого другого допустимого решения хотя бы по одному критерию

либо не хуже по всем критериям. Множество недоминируемых решений

также называется множеством Парето.

13

Page 14: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

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

2.1. Постановка задачи линейного программирования (ЗЛП)

Общая задача линейного программирования состоит в нахождении

экстремума (максимума или минимума) линейной целевой функции [7]:

nnn xcxcxcxxf +++= ...),...,( 22111 (1)

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

(2)

где aij, bi, cj ( mi ,1= , nj ,1= ) – заданные постоянные величины. Среди

ограничений могут одновременно встречаться знаки ≤, =, ≥.

Вектор ),...,,( 21 nxxxx = , удовлетворяющий системе ограничений (2),

называется допустимым решением, или планом ЗЛП. Множество всех

планов называется допустимой областью, или областью допустимых

решений. План, который доставляет максимум (минимум), целевой

функции (1), называется оптимальным планом, или оптимальным

решением ЗЛП. Таким образом, решить ЗЛП – значит найти ее

оптимальный план.

Общая ЗЛП может быть приведена к единому стандартному виду, в

котором целевая функция должна быть максимизирована, а все

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

переменными:

∑=

→=n

jjjn xcxxf

11 max),...,( (3)

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

=≥

≥=≤+++

≥=≤+++≥=≤+++

),,1(0

,),(...............................................................

,),(...,),(...

2211

22222121

11212111

njx

bxaxaxa

bxaxaxabxaxaxa

j

mnmnmm

nn

nn

14

Page 15: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

∑=

=n

jijij bxa

1, mi ,1= , (4)

0≥jx , nj ,1= ,

где 0≥ib , mi ,1= .

Эта стандартная форма называется основной задачей линейного

программирования (ОЗЛП).

Для приведения общей ЗЛП к основной используют следующие

правила.

1. Минимизация целевой функции f равносильна максимизации

функции g = – f.

2. Ограничение в виде неравенства inini bxaxa ≤++ ...11 равносильно

уравнению innini bxxaxa =+++ +111 ... при условии, что дополнительная

переменная 01 ≥+nx .

Аналогично, inini bxaxa ≥++ ...11

≥=−++

⇔+

+

.0,...

1

111

n

innini

xbxxaxa

3. Если на некоторую переменную xj не накладывается условие

неотрицательности, то делают замену переменной jjj xxx ′′−′= , 0≥′jx ,

0≥′′jx .

2.2. Графический метод решения

Графический метод может быть применен, если модель содержит

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

менее наглядным, а при большем числе переменных – невозможным.

Пусть ЗЛП задана в двумерном пространстве, то есть ограничения

содержат две переменные.

Найти минимальное значение функции двух переменных

Z(x) = c1 x1 + c2 x2 (5)

15

Page 16: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

при ограничениях вида (2).

Пусть система неравенств совместна. Каждое из неравенств системы

определяет полуплоскость с граничными прямыми [6].

Линейная функция(5) при фиксированных значениях является

уравнением прямой линии: c1 x1 + c2 x2 = const (рис. 2).

Рис. 2. Пример графического решения задачи линейного программирования с шестью условиями

Построим многоугольник ABCDEF решений системы ограничений и

график линейной функции f (x). Тогда поставленной задаче линейного

программирования можно дать следующую интерпретацию:

Найти точку многоугольника решений, в которой прямая

c1 x1 + c2 x2 = const опорная, и функция при этом достигает минимума.

Значения уменьшаются в направлении вектора нормали N = (–c1,–c2),

поэтому прямую f = 0 передвигаем параллельно самой себе в направлении

вектора N.

Если многоугольник решений ограничен (см. рисунок 2), то прямая

дважды становится опорной по отношению к многоугольнику решений

(в точках B и E, причём минимальное значение принимает в точке E.

16

Page 17: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Координаты точки E (x1, x2) находим, решая систему уравнений прямых

DE и EF.

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

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

Случай 1. Прямая c1 x1 + c2 x2 = const, передвигаясь в направлении

вектора нормали N или противоположно ему, постоянно пересекает

многоугольник решений и ни в какой точке не является опорной к нему. В

этом случае линейная функция не ограничена на многоугольнике решений

как сверху, так и снизу.

Случай 2. Прямая, передвигаясь, все же становится опорной

относительно многоугольника решений. Тогда в зависимости от вида

области линейная функция может быть ограниченной сверху и

неограниченной снизу, ограниченной снизу и неограниченной сверху,

либо ограниченной как снизу, так и сверху.

2.3. Симплекс-метод

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

решения ЗЛП является симплекс-метод, разработанный американским

ученым Дж. Данцигом в 1949 г.

Система линейных уравнений называется системой с базисом, если

в каждом уравнении содержится неизвестное с коэффициентом, равным 1,

отсутствующее в остальных уравнениях системы. Эти неизвестные

называются базисными, остальные – свободными. Система с базисом

имеет вид

=++++

=++++

=++++

+

+

+

,,

,

,

2211

222222121

111212111

mmppmpmm

ppp

ppp

bxxaxaxa

bxxaxaxa

bxxaxaxa

(6)

17

Page 18: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

где р + m = n, т. е. p = n – m.

Система (6) всегда имеет базисное решение (0, 0, ..,0, b1, b2, .., bm).

Система линейных уравнений называется канонической, если она

является системой с базисом и все bi ≥ 0. Базисное решение в этом случае

оказывается планом, т. к. его компоненты неотрицательны.

ОЗЛП будет является канонической (КЗЛП), если система линейных

уравнений этой задачи – каноническая, а целевая функция выражена

только через свободные неизвестные.

Число перебираемых допустимых базисных решений можно

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

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

следующее решение было лучше (или по крайне мере не хуже), чем

предыдущее, по значениям линейной функции F (увеличение при

отыскании максимума и уменьшение при отыскании минимума). Такой

перебор позволяет сократить число шагов при отыскании оптимума [7].

Универсальным методом последовательного улучшения решения

при решении ЗЛП является симплекс-метод.

Решение КЗЛП симплекс-методом удобно записывать в виде

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

коэффициентов канонической системы уравнений и коэффициентов при

неизвестных в целевой функции, а также указание базисных неизвестных.

Рассмотрим КЗЛП, состоящую в максимизации целевой функции

f(x1, ,xn) = c0 – c1x1 – − cpxp (7)

на множестве планов канонической линейной системы (6).

Этой задаче соответствует следующая симплекс-таблица (табл. 1).

18

Page 19: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 1

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

Базис х1 х2∙ ∙ ∙ хp хp+1 хp+2∙ ∙ ∙ хn Значение

хр+1

хр+2

хn

а11 а12∙ ∙ ∙ а1p1 0∙ ∙ ∙ 0

а21 а22∙ ∙ ∙ а2p 0 1 ∙ ∙ ∙ 0

аm1 а12∙ ∙ ∙аmp 0 0∙ ∙ ∙ 1

b1

b2

bn

f -c1 -c2∙∙ ∙-cp0 0 ∙ ∙ ∙ 0 c0

Последняя строка этой таблицы называется индексной. Она соответ-

ствует уравнению с1x1 + c2x2 + + cpxp = с0 (это уравнение гиперплос-

кости, являющейся поверхностью уровня целевой функции). Именно по

этой причине коэффициенты при неизвестных в целевой функции (5)

удобно обозначать –c1, –c2, , –cр.

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

Теорема 1. Если в симплекс-таблице среди коэффициентов при

каком-либо свободном неизвестном имеется хотя бы один положительный

элемент, то возможен переход к новой канонической задаче, равносильной

исходной, в которой указанное свободное неизвестное оказывается

базисным (при этом одно из базисных неизвестных переходит в число

свободных).

Теорема 2. (об улучшении базисного плана). Если в индексной

строке симплекс-таблицы задачи максимизации содержится отрица-

тельный элемент сj, а в столбце хj имеется хотя бы один положительный

элемент, причем ключевое отношение 0≥θ , то возможен переход к

равносильной канонической задаче с базисным планом не хуже, чем

предыдущий (а при θ > 0 – лучшим).

19

Page 20: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Теорема 3. (достаточное условие оптимальности). Если все

элементы индексной строки симплекс-таблицы задачи максимизации

неотрицательны, то базисный план этой задачи является оптимальным, а с0

есть максимум целевой функции на множестве планов задачи.

Теорема 4. (случай неограниченности целевой функции). Если в

индексной строке симплекс-таблицы задачи максимизации содержится

отрицательный элемент сj, а в столбце неизвестного хj все элементы

неположительны, то на множестве планов задачи целевая функция не

ограничена сверху.

Теоремы 1–4 позволяют сформулировать алгоритм симплекс-метода

для задачи максимизации КЗЛП.

Для определенности считаем, что решается задача отыскания

максимума целевой функции. Рассмотрим алгоритм решения ЗЛП

симплекс-методом.

Этап 1. После введения добавочных переменных, систему уравнений

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

расширенной системой:

.переменныедобавочные,...,0...

,......

,...,...

1

2211

2211

222222121

111212111

=−−−−=++++

=++++=++++

++

+

+

+

mnn

nn

mmnnmnmm

nnn

nnn

xxxcxcxcF

bxxaxaxa

bxxaxaxabxxaxaxa

(8)

Предположим, что все добавочные переменные имеют один и тот же

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

Этап 2. Расширенную матрицу заносим в первую симплекс-таблицу.

В последней строке таблицы указываются коэффициенты функции

цели с противоположным знаком: – сi .

20

Page 21: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

В левом столбце таблицы записываем основные переменные (базис),

в первой строке – все переменные, отмечая при этом основные; во втором

столбце – свободные члены расширенной системы b1,…,bm . Последний

столбец предназначен для оценочных отношений, необходимых при

расчете наибольшего возможного значения переменной.

В рабочую часть таблицы (начиная с третьего столбца и второй

строки) занесены коэффициенты aij при переменных из расширенной

матрицы.

Замечание. Все коэффициенты у свободных переменных должны

быть положительными. Если это условие нее выполняется, умножаем обе

части уравнения на (–1).

Этап 3. Проверяем выполнение критерия оптимальности при

решении задачи на максимум – наличие в последней строке отрицательных

коэффициентов –сi . Если таких нет, то решение оптимально, достигнут

максимум целевой функции F = c0 (в левом нижнем углу таблицы);

основные переменные принимают значения ai 0 (второй столбец), основные

переменные равны нулю, т. е. получаем оптимальный план (теорема 3).

Этап 4. Если в индексной строке содержится отрицательный

элемент, над которым в таблице нет ни одного положительного, то целевая

функция не ограничена сверху на множестве планов и задача не имеет

решений (теорема 4).

Этап 5. Если над каждым отрицательным элементом индексной

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

перейти к новой симплекс-таблице, для которой базисный план не хуже

предыдущего (теорема 2).

Если критерий оптимальности не выполнен, то наибольший по

модулю отрицательный коэффициент |–сi | в последней строке определяет

разрешающий столбец s.

21

Page 22: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Составляем оценочные отношения каждой строки по следующим

правилам:

а) равно бесконечности ( = ∞), если bi и ai s имеют разные знаки;

б) = ∞, если bi = 0 и ai s<0;

в) = ∞, если ai s = 0;

г) = 0, если bi = 0 и ai s> 0;

д) is

i

ab

, если bi и ai s имеют одинаковые знаки.

Определяем

is

ii a

bmin . Если конечного минимума нет, то задача

не имеет конечного оптимума, Fmax = ∞. Если минимум конечен, то

выбираем соответствующую строку q, на которой он достигается (любую,

если таких несколько), и называем ее разрешающей строкой.

На пересечении разрешающей строки и столбца находится

разрешающий элемент aqs. Запоминаем его.

Этап 6. Составляем новую симплекс-таблицу; для этого делим

ключевую строку (строку, в которой находится ключевой элемент) на

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

вычитаем полученную строку, умноженную на соответствующий элемент

ключевого столбца (чтобы все элементы этого столбца, кроме ключевого,

стали равны 0).

Переход к следующей симплекс-таблице осуществляем по правилам:

а) в столбцах, соответствующих основным переменным, проставляем

нули и единицы:

1 – напротив «своей» основной переменной,

0 – напротив «чужой» основной переменной,

0 – в последней строке для всех основных переменных,

22

Page 23: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

б) в левом столбце записываем новый базис: вместо основной

переменной xq заносим переменную xs;

в) новую строку с номером q получаем из старой делением на

разрешающий элемент aqs;

г) все остальные элементы a’ij вычисляем по правилу

прямоугольника:

.qs

qisii

qs

qjisijij

aba

bb

aaa

aa

⋅−=′

⋅−=′

Переходим к п. (3) алгоритма.

Этап 7. При рассмотрении полученной симплекс-таблицы

непременно представится один из трех случаев, описанных в пп. 2, 3, 4.

Если при этом возникнут ситуации пп. 2 или 3, то процесс решения задачи

завершается, если же возникнет ситуация п. 4, то процесс продолжается.

Если учесть, что число различных базисных планов конечно, то

возможны два случая:

а) через конечное число шагов задача будет решена;

б) начиная с некоторого шага возникает зацикливание (периоди-

ческое повторение симплексных таблиц и базисных планов).

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

практике удобно руководствоваться определенным правилам. Одним из

таких эвристических правил является следующее: в качестве ключевого

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

отрицательному элементу индексной строки.

23

Page 24: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

2.4. Теория двойственности

Понятие двойственности рассмотрим на примере задачи

оптимального использования сырья.

Задача 1. Пусть имеется m видов сырья, запасы которых равны

b1, b2, … , bm. Из этого сырья производят n видов продукции. Расходы

сырья i-го вида на производство единицы продукции j-го вида равны aij.

Прибыль от продажи единицы продукции j-го вида равна cj. Найти такой

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

Обозначим x1, x2, … , xn – количество единиц продукции соответствующего

вида.

Задача 2. Поставим целью назначить «справедливые» продажные

цены на все имеющиеся виды сырья. Пусть yi – цена единицы сырья i-го

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

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

которую можно получить при реализации этой продукции, и рассмотрим

задачу минимизации стоимости всего сырья.

Предположим, некоторая фирма решила закупить сырье нашей

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

y1, y2, …, ym. Покупающая организация заинтересована, чтобы затраты на

все ресурсы (функция Z) в количестве b1, b2, …, bm по ценам y1, y2, … , ym

были минимальными, т. е. .min...2211 →⋅++⋅+⋅= mm ybybybZ

С другой стороны, предприятие, продающее ресурсы, заинтере-

совано в том, чтобы полученная выручка была не менее той суммы,

которую предприятие может получить при переработке ресурсов в

готовую продукцию.

На изготовление единицы продукции П1 расходуется а11 единиц

ресурса S1, а21 единиц ресурса S2, .., аm1 единиц ресурса Sm по цене

соответственно

24

Page 25: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

y1, y2, … , ym. Поэтому для удовлетворения требований продавца затраты на

ресурсы, потребляемые при изготовлении единицы продукции П1, должны

быть не менее ее цены с1: 11221111 ... cyayaya mm ≥⋅++⋅+⋅ .

Аналогично составляются ограничения в виде неравенств по

каждому виду продукции П1,…, Пn.

Соответствующие математические модели задачи 1 и задачи 2

запишем в виде:

Задача 1 Задача 2

∑=

→=n

iii xcxf

1max)(

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

≥≥

≤+++

≤+++≤+++

.0.........,

,0,0

,.........,........................................

,...,...

2

1

2211

22222121

11212111

n

mnmnmm

nn

nn

x

xx

bxaxaxa

bxaxaxabxaxaxa

∑=

→=m

iii ybyg

1min)(

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

≥+++

≥+++≥+++

≥≥

,............,........................................

,...,...

,0.........,

,0,0

2211

22222112

11221111

2

1

nmmnnn

mm

mm

m

cyayaya

cyayayacyayaya

y

yy

Эти задачи называются симметричными двойственными задачами.

Отметим следующие особенности, связывающие эти задачи [7]:

1. Одна из задач является задачей максимизации, а другая –

минимизации.

2. В задаче максимизации все неравенства – ≤, а в задаче

минимизации – ≥.

3. Число неизвестных одной задачи равно числу неравенств другой.

25

Page 26: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

4. Матрицы коэффициентов при неизвестных в неравенствах обеих

задач являются взаимно транспонированными.

5. Свободные члены неравенств одной из задач равны

коэффициентам при соответствующих неизвестных в выражении целевой

функции другой задачи.

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

1. Привести все неравенства системы ограничений исходной задачи к

одном смыслу – к каноническому виду.

2. Составить расширенную матрицу системы А, в которую включить

столбец bi и коэффициенты целевой функции F.

3. Найти транспонированную матрицу АТ.

4. Записать двойственную задачу.

Теорема. Значение функции, соответствующее любому допустимому

решению прямой задачи, не меньше значения функции, соответствующего

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

Теорема (основная теорема двойственности). Если ЗЛП имеет

конечный оптимум, то двойственная к ней также имеет конечный

оптимум, и оптимальные значения целевых функций совпадают. Если

целевая функция одной из двойственных задач не ограничена, то условия

другой задачи противоречивы.

Теорема. Компоненты оптимального решения двойственной ЗЛП

равны соответствующим элементам индексной строки оптимальной

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

переменным.

Таким образом, решая симплекс-методом прямую ЗЛП, получаем и

решение двойственной задачи.

26

Page 27: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

2.5. Транспортная задача

2.5.1. Математическая модель транспортной задачи

Транспортная модель используется для составления наиболее

экономичного плана перевозок одного вида продукции (однородного

груза) из нескольких пунктов поставки (например, баз или заводов) в

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

Транспортная задача (ТЗ) представляет собой задачу линейного

программирования, которую можно решать симплекс-методом. Но, в силу

особой своей структуры, она допускает решение более простым методом,

который по своей сути вытекает из теории двойственности.

В простейшей формулировке ТЗ выглядит следующим образом.

Пусть m поставщиков располагают a1, a2,..., am единицами

некоторого однородного груза и этот груз должен быть доставлен n

потребителям в количествах b1,b2,..., bn единиц соответственно.

Предполагается, что ai > 0, bj > 0. Известны стоимости cij ( 0≥ijc )

перевозки единицы груза от i-го поставщика j-му потребителю. Следует

определить план перевозок, т. е. указать количество груза, которое каждый

поставщик должен доставить каждому потребителю, так, чтобы

суммарные транспортные затраты были минимальными, мощности всех

поставщиков были реализованы, спросы всех потребителей были

удовлетворены.

Пусть xij – количество груза, перевозимого от i-го поставщика j-му

потребителю, тогда план перевозок транспортной задачи можно

представить в виде матрицы X = (xij) размера m×n, и математическая

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

вид [7]:

27

Page 28: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

минимизировать целевую функцию

ij

m

i

n

jij xcXf ∑∑

= ==

1 1)( (9)

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

i

n

jij ax =∑

=1, ;,1 mi = (10)

j

m

iij bx =∑

=1, ;,1 nj = (11)

0≥ijx . (12)

Первая группа ограничений указывает, что суммарный объем

перевозок груза от некоторого поставщика должен быть равен

имеющемуся у него количеству этого груза. Вторая группа ограничений

требует, чтобы суммарные перевозки груза некоторому потребителю

удовлетворяли в точности спрос на этот груз.

Заметим, что система уравнений (10)–(11) совместна тогда и только

тогда, когда выполняется равенство между суммарными ресурсами и

суммарными потребностями:

∑ ∑= =

=m

i

n

jji ba

1 1. (13)

При выполнении условия (13) транспортная модель называется

закрытой.

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

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

задаче.

Открытую транспортную модель можно свести к закрытой путем

добавления фиктивного поставщика или потребителя.

28

Page 29: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Если 1 1

,m n

i ji j

a b= =

>∑ ∑ т. е. имеется избыток продукции по отношению к

действительно требуемому ее количеству, то введем в рассмотрение

формально еще одного потребителя (фиктивного) с объемом потребностей,

равным избытку продукции∑ ∑= =

−m

i

n

jji ba

1 1. Тогда формально имеем закрытую

транспортную задачу. Все стоимости перевозок ci,n+1 ( mi ,1= ) от каждого

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

Совершенно аналогично можно поступить в случае, когда количество

продукции недостаточно для удовлетворения потребностей, т. е.

∑∑==

<n

jj

m

ii ba

11. В этом случае вводится фиктивный поставщик с объемом

возможных поставок, равным недостатку продукции∑ ∑= =

−n

j

m

iij ab

1 1.

Стоимости перевозок cm+1,j ( nj ,1= ) от фиктивного поставщика ко всем

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

фиктивных перевозок xi,n+1 в оптимальном плане будут равны объемам

продукции, остающимся у соответствующих поставщиков, во втором

случае значения xm+1,j в оптимальном плане будут означать количество

продукции, недополученной соответствующим потребителем.

В обоих случаях полученная закрытая транспортная задача будет

эквивалентна исходной, т. к. потребности всех реальных потребителей или

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

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

перевозок, поскольку фиктивные перевозки в целевой функции

фактически не фигурируют.

Рассмотрим закрытую модель ТЗ. Решение транспортной задачи,

как и всякой ЗЛП, начинается с нахождения опорного плана.

29

Page 30: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Для транспортной задачи общее число уравнений равно m + n, а число

линейно независимых уравнений равно m + n – 1 (сумма первых m

уравнений совпадает с суммой последних n). Общее число переменных xij

равно mn, число базисных переменных равно m + n – 1, т. е. числу линейно

независимых уравнений. Остальные mn – (m + n – 1) = (m – 1)(n – 1)

переменных равны нулю и называются свободными переменными. Таким

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

от нуля не более m + n – 1 базисных переменных, а остальные переменные

равны нулю.

Решение ТЗ удобно записывать в виде таблицы, имеющей вид

матрицы, в которой строки соответствуют пунктам отправления,

а столбцы – пунктам потребления. Клеткой (i,j) мы будем называть клетку,

стоящую в i-й строке и j-м столбце таблицы. Коэффициенты стоимости cij

расположены в правом верхнем углу каждой клетки (i,j). Каждая клетка

соответствует паре поставщик-потребитель.

Для нахождения исходного опорного решения могут быть

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

2.5.2. Метод северо-западного угла Будем строить допустимое решение задачи, начиная с заполнения

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

Примем соответствующий объем перевозок x11 = min (a1,b1), т. е.

максимальному значению, допускаемому ограничениями на спрос и объем

предложений. Если a1>b1, то потребности первого потребителя полностью

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

а ресурсы первого поставщика равны a1 – b1. Если a1<b1, то первый

поставщик полностью использовал свои ресурсы? и в дальнейшем его

можно не учитывать, а потребности первого потребителя считать равными

b1 – a1. Если a1 = b1, то можно исключить и потребителя, и поставщика.

30

Page 31: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

После установления объема перевозок по маршруту (1,1), получаем

задачу, в которой суммарное число поставщиков и потребителей на

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

нее получается вычеркиванием первого столбца или первой строки,

фиксируя этим, что остальные переменные вычеркнутого столбца (строки)

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

допустимому решению, т. к. ∑ ∑= =

=m

i

n

jji ba

1 1.

2.5.3. Метод минимального элемента На каждом шаге заполняется клетка с наименьшей величиной cij.

Заполнение таблицы начинается с клетки, которой соответствует

наименьший элемент cij из всей таблицы. Затем остаток по столбцу или

строке помещается в клетку того же столбца или строки, которому

соответствует следующее по величине значение cij, а помещаемые

в этих клетках величины xij определяются так же, как и в методе

северо-западного угла.

2.5.4. Метод потенциалов Для анализа полученных планов и их последующего улучшения

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

назначения, называемые потенциалами [9].

Сопоставим каждому поставщику Ai и каждому потребителю Вj

величины ui и vj соответственно так, чтобы для всех базисных клеток плана

были выполнены соотношения

ui+ vj = cij , i = 1,2,..,m, j = 1,2,..,n. (14)

Поскольку число базисных клеток в плане равно m + n – 1

(вырожденные планы должны быть предварительно пополнены), то для

определения потенциалов получается система из m + n – 1 уравнений с m +

n неизвестными. Такая система имеет бесконечное множество решений.

31

Page 32: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Нам требуется любое ее решение. Обычно для простоты полагают один из

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

таблице для потенциалов {vj } заводится дополнительные строка, а для

потенциалов {ui} – дополнительный столбец, куда проставляются

найденные значения.

Для каждой свободной клетки плана вычислим разности

∆cij = cij – (ui+ vj) и запишем полученные значения в левых нижних углах

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

соотношение ∆cij = 0, и этим фактом можно пользоваться для контроля

правильности нахождения потенциалов.

План является оптимальным, если все разности ∆cij > 0. В противном

случае план можно улучшить следующим способом.

Найдем клетку с наибольшей по абсолютной величине отрица-

тельной разностью ∆cij и построим цикл, в котором кроме этой клетки все

остальные являются базисными. Такой цикл всегда существует и

единственен.

Заметим, что в новом плане суммы элементов по строкам и столбцам

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

цикла повлечет за собой соответствующие изменения значений во всех

остальных клетках этого цикла. Груз будет перераспределен по клеткам

цикла на величину ∆х = min xij следующим образом. В клетках со знаком

«плюс» значение перевозки нужно увеличить на величину ∆х, а в клетках

со знаком «минус» – уменьшить на величину ∆х. Так как после пересчета у

нас добавилась лишняя базисная клетка, то их количество необходимо

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

получилось несколько, то свободной делаем ту из них, в которой тариф

перевозок максимален.

После этого полученный план проверяется на оптимальность

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

32

Page 33: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

пор, пока очередной план не станет оптимальным. На этом действие

алгоритма завершается.

2.6. Общая распределительная задача

2.6.1. Исходные параметры модели Общая распределительная ЗЛП – этораспределительная задача (РЗ),

в которой работы и ресурсы (исполнители) выражаются в различных

единицах измерения [10]. Например, организация выпуска разнородной

продукции на оборудовании различных типов; организация выполнения

набора заданий работниками различной квалификации; организация

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

Введем следующие обозначения.

1. n – количество исполнителей (станков, работников, транспортных

средств и т. д.), m – количество видов работ (выпускаемой продукции,

выполняемых заданий, перевозимых товаров и т. д.).

2. ia – запас рабочего ресурса исполнителя iA ( ni ,1= ) (фонд

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

средств и т.д.), пример единиц измерения [ед. t].

3. jb – план по выполнению работы jB ( mj ,1= ) (объем выпуска

продукции; объем выполнения заданий; потребность в перевозимом товаре

и т. д.), пример единиц измерения [ед. тов].

4. ijc – тариф (стоимость) выполнения работы jB исполнителем iA

(себестоимость единицы выпуска продукции; затраты на выполнение

одного задания; тарифы перевозки единицы товара), пример единиц

измерения [руб./ед. тов.].

5. ijλ – интенсивность выполнения работы jB исполнителем iA

(производительность выпуска продукции, выполнения заданий;

33

Page 34: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

вместимость транспортного средства и т. д.), пример единиц

измерения [ед. тов./ед. t].

2.6.2. Искомые параметры модели РЗ

1. ijx – загруженность исполнителя iA при выполнении работы jB

(время, затрачиваемое на выпуск продукции или на выполнение заданий;

количество транспортных средств определенного вида, задействованных в

перевозке), пример единиц измерения [ед. t].

2. кijx – количество работ jB , которые должен будет произвести

исполнитель iA (объем выпущенной продукции, выполненных заданий,

перевезенных товаров и т. д.), пример единиц измерения [ед. тов.].

3. ( )XL – общие расходы на выполнение всего запланированного

объема работ, пример единиц измерения [руб.].

2.6.3. Этапы построения модели I. Определение переменных.

II. Построение распределительной матрицы (таблица 2).

III. Задание ЦФ.

IV. Задание ограничений. Таблица 2

Общий вид распределительной матрицы

Исполнители, iA

Работы, jB Запас ресурса

[ед. ресурса] 1В 2В … mB

1А 11λ

11c 12λ

12c … m1λ

mc1 1a

2А 21λ

21c 22λ

22c … m2λ

mc2 2a

… … … … … …

nA 1nλ

1nc 2nλ

2nc … nmλ

nmc na

План [ед. работы] 1b 2b … mb

34

Page 35: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Модель общей распределительной задачи имеет вид:

( ) ∑=

∑=

=

n

i

m

jijxijijсXL

1 1minλ ;

( )

==≥∀

==

==

=

=

. m1,j ;n1,i 0

,m1,j ,

,n1,i ,

1

1

ij

n

ijijij

n

jiij

x

bx

ax

λ

(15)

Таким образом, формально модель общей РЗ отличается от модели

транспортной задачи использованием параметра интенсивности

выполняемых работ ijλ в ЦФ и для задания ограничений по выполняемым

работам (столбцам).

2.6.4. Этапы решения РЗ

I. Преобразование РЗ в ТЗ:

1) выбор базового ресурса и расчет нормированных

производительностей ресурсов jбаз

iji

λλ

α = ;

2) пересчет запаса рабочего ресурса исполнителей iii aa α=′ ;

3) пересчет планового заданияjбаз

jj

bb

λ=′ ;

4) пересчет себестоимостей работ jбазijij cc λ=′ .

II. Проверка баланса пересчитанных параметров ∑∑==

′=′m

jj

n

ii ba

11 и

построение транспортной матрицы.

35

Page 36: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

III. Поиск оптимального решения ТЗ ( )*'* 'ijxX = .

IV. Преобразование оптимального решения ТЗ '*X в оптимальное

решение РЗ *X , причем переход *'* XX → выполняется по формуле

i

ijij

xx

α

'

= , где 'ijx и ijx – соответственно элементы решения РЗ и ТЗ.

V. Определение количества работ ( )** кij

к xX = , соответствующее

оптимальному решению РЗ *X ijijкij xx λ= .

VI. Определение ЦФ распределительной задачи )( *XL .

36

Page 37: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

3. СЕТЕВОЕ ПЛАНИРОВАНИЕ

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

Основными понятиями сетевых моделей являются понятия события

и работы [7]. Работа – это некоторый процесс, приводящий к

достижению определенного результата, требующий затрат каких-либо

ресурсов и имеющий протяженность во времени. По своей физической

природе работы можно рассматривать как:

• действие: разработка чертежа, изготовление детали, заливка

фундамента бетоном, изучение конъюнктуры рынка;

• процесс: старение отливок, выдерживание вина, травление плат;

• ожидание: ожидание поставки комплектующих, ожидание

окончания выполнения параллельных этапов работ.

По количеству затрачиваемого времени работа может быть:

действительной, т. е. требующей затрат времени; фиктивной, т. е.

формально не требующей затрат времени и представляющей связь между

какими-либо работами.

Событие – это момент времени, когда завершаются одни работы и

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

работ и, в отличие от работ, не имеет протяженности во времени.

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

необходимых для достижения конечной цели проекта, изображается с

помощью сетевого графика (сетевой модели). На сетевом графике работы

изображаются стрелками, которые соединяют вершины, изображающие

события. Начало и окончание любой работы описываются парой событий,

которые называются начальным и конечным событиями. Поэтому для

идентификации конкретной работы используют код работы ( )ji, ,

37

Page 38: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

состоящий из номеров начального (i-го) и конечного (j-го) событий

(см. рис. 3).

i jработа (i,j)

начальное конечноесобытие событие

Рис. 3. Кодирование работы

Любое событие может считаться наступившим только тогда, когда

закончатся все входящие в него работы. Поэтому работы, выходящие из

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

работы, входящие в это событие.

Событие, не имеющее предшествующих ему событий, т. е. с кото-

рого начинается проект, называют исходным. Событие, которое не имеет

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

завершающим.

Важное значение для анализа сетевых моделей имеет понятие пути.

Путь – это любая последовательность работ в сетевом графике (в частном

случае это одна работа), в которой конечное событие одной работы

совпадает с начальным событием следующей за ней работы. Различают

следующие виды путей.

Полный путь – это путь от исходного до завершающего события.

Критический путь – максимальный по продолжительности полный путь.

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

Подкритический путь – полный путь, ближайший по длительности к

критическому пути.

Построение сети является лишь первым шагом на пути к построению

календарного плана. Вторым шагом является расчет сетевой модели,

который выполняют прямо на сетевом графике, пользуясь простыми

правилами.

38

Page 39: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Сетевые графики составляются на начальном этапе планирования

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

перечень работ и событий, устанавливаются логические связи и

последовательность выполнения работ, оценивается продолжительность

выполнения работ. Затем составляется сетевой график.

3.2. Правила составления сетевых графиков

• В сетевом графике не должно быть тупиковых событий (кроме

завершающего), т. е. таких, за которыми не следует ни одной работы.

• Не должно быть событий (кроме исходного), которым не

предшествует хотя бы одна работа.

• В сетевом графике не должно быть циклов.

• Любые два события связаны не более чем одной работой.

• Сетевой график должен быть упорядочен.

Упорядочение сетевого графика заключается в таком расположении

событий и работ, при котором для любой работы предшествующее ей

событие расположено левее и имеет меньший номер по сравнению с

завершающим эту работу событием.

На рис. 4 представлены примеры построения начала сетевого

графика: рис. 4 (А) – для варианта с одной исходной работой (работа а),

рис. 4 (Б) – для варианта с тремя исходными работами (а, б, в).

Рис. 4. Пример построения начала сетевого графика

39

Page 40: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

В процессе дальнейшего построения сетевого графика необходимо

придерживаться следующих правил.

• Если работа «г» должна выполняться только после выполнения

работы «а», то на графике это изображается в виде последовательной

цепочки работ и событий (рис. 5).

Рис. 5. Изображение последовательно выполняемых работ

• Если для выполнения работ «г» и «е» необходим результат одной

и той же работы, например «в», то график должен иметь следующий вид

(рис. 6):

Рис. 6. Изображение работ, выполняемых после одной и той же работы

• Если для выполнения одной или нескольких работ (например –

«е») необходим результат двух или нескольких работ (например «в» и «г»),

то график будет иметь следующий вид (рис.7):

Рис. 7. Изображение работы, выполняемой после нескольких работ

• Если для выполнения одной или нескольких работ (например «г» и

«е») необходим результат лишь некоторой части другой работы (например

«а»), то эта работа разбивается на части таким образом, чтобы первая ее

40

Page 41: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

часть (например, «a1») выполнялась до получения результата,

необходимого для начала первой работы («г»), а вторая и последующие

части («a2», «a3» и т. д. – оставшаяся часть работы «a»), выполнялись

параллельно со второй работой («е») и последующими (рис. 8).

Рис. 8. Изображение работ, выполняемых после частичного выполнения работы

• Два соседних события могут объединяться лишь одной работой.

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

фиктивная работа (рис. 9)

Рис. 9. Изображение работ, имеющих одно начальное и конечное событие

• Если выполнение какой-либо работы (например, «е») возможно

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

параллельно выполняемых работ (например, «в» и «г»), а выполнение

другой работы (например, «д») – после получения результата только одной

из них (например, «в»), то в сетевом графике необходимо ввести

дополнительное событие и фиктивную работу (рис. 10).

41

Page 42: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рис. 10. Использование фиктивной работы

• В сети не должно быть «тупиков», т. е. промежуточных событий,

из которых не выходит ни одна работа (например, событие № 7 на рис. 11).

Также не должно быть «хвостов», т.е. промежуточных событий, которым

не предшествует хотя бы одна работа (например, событие № 2 рис. 11).

Рис. 11. «Хвосты» и «тупики» на сетевом графике

• В сети не должно быть замкнутых контуров, состоящих из

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

работ «д», «г» на рис. 12 (А)). Данная ситуация скорее всего

свидетельствует об ошибке при составлении перечня работ и определении

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

данные и в зависимости от сделанных по итогам анализа выводов либо

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

начинающимся в этом событии требуется ее результат, или если она

является частью общего результата), либо совсем исключить ее из

42

Page 43: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

комплекса (если выявлено, что ее результат не требуется). На рис. 12 (Б)

представлена ситуация когда работа «г» является частью общего

результата.

Рис. 12. Пример цикла на сетевом графике (А) и устранение цикла (Б)

• Каждая работа в сетевом графике должна определяться

однозначно, только ей присущей парой событий – не должно быть

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

поступают следующим образом: нумерация событий начинается с

исходного события, которому дается номер 0. Из исходного события (0)

вычеркивают все исходящие из него работы, на оставшейся сети вновь

находят событие, в которое не входит ни одна работа. Этому событию

дается номер 1. Затем вычеркивают работы, выходящие из события 1, и

43

Page 44: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

вновь находят на оставшейся части сети событие, в которое не входит ни

одна работа, ему присваивается номер 2, и так продолжается до

завершающего события. Пример нумерации сетевого графика показан

на рис. 13.

Рис. 13. Порядок нумерации сетевого графика

• На графике не должно быть фиктивных работ, которые дублируют

информацию других работ. Например, работа, соединяющая события № 5

и 6 на рис. 14 (А), дублирует работу «ж», работа, соединяющая события

№ 2 и 4, дублирует работу, соединяющую события № 2 и 3.

Рис. 14. Неправильное использование фиктивных работ

• Форма графика должна быть простой, без лишних пересечений.

Большинство работ следует изображать горизонтальными линиями.

Чаще всего графики строят от исходного события к завершающему.

44

Page 45: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Сначала сетевой график строят в черновом варианте, при этом

главное – не внешний вид сети, а логическая последовательность

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

уменьшения числа взаимно пересекающихся работ.

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

недостатков:

• До построения графика достаточно сложно выявить ошибки в

исходных данных.

• Отсутствуют четкие критерии формулировки событий, и не

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

• До построения сетевого графика невозможно определить,

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

на начальных этапах определить размеры графика.

• При первоначальной прорисовке стрелок сложно определить,

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

• Процессы формулировки и нумерации событий в значительной

степени носят субъективный характер.

• Формализация описанных выше процедур представляет

определенные трудности, что значительно усложняет разработку

адекватных алгоритмов построения графиков с помощью ЭВМ.

• При планировании комплексов с большим количеством работ

строительство сетевых графиков в ручном режиме практически

невозможно.

Системный подход к построению сетевых графиков, в значительной

степени устраняющий указанные недостатки, включает 4 этапа.

45

Page 46: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

3.3. Этапы построения сетевого графика

3.3.1. Проверка исходных данных

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

циклов и дублирующих фиктивных работ (см. правила п. 3.2).

Для осуществления такой проверки по каждой работе комплекса

необходимо составить перечень всех предшествующих работ от исходных

до непосредственно предшествующих. Данный перечень необходимо

проверить на соблюдение следующих условий.

В нем не должно быть самой проверяемой работы. Несоблюдение

этого условия свидетельствует о наличии в исходных данных замкнутого

цикла.

Таблица 3

Проверка данных

Обозначе-ние работ

Непосредственно предшествующие

работы

Все работы, предшествующие

работам из столбца № 2

Все работы, предшествующие

работам из столбца № 1

а – – а б – – б в а а а, в г а а а, г

д б б а, б, г, д г а, г

Работы, которые непосредственно предшествуют проверяемой

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

непосредственно предшествующих этой работе работ. Несоблюдение

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

исходных данных удобнее всего осуществлять путем последовательного

заполнения специальной таблицы (табл. 3).

46

Page 47: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

3.3.2. Выявление необходимости введения фиктивных работ

Фиктивные работы вводятся в том случае, когда невозможно

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

использованием только сплошных стрелок [12].

При выполнении этого этапа, прежде всего, составляется матрица

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

соответствующей определенной работе комплекса и столбцов,

соответствующих работам, предшествующим этой работе, проставляется

единица или «+», или любой другой знак.

Далее составленную матрицу необходимо упорядочить таким

образом, чтобы все единицы были максимально сконцентрированы возле

центральной диагональной линии.

3.3.3. Формулировка событий сетевого графика

Формулировка событий заключается в том, что для каждого события

определяются все входящие в него работы и все исходящие. Кроме того,

каждому событию должен быть присвоен определенный порядковый

номер.

Формулировку событий можно осуществить на основе упорядо-

ченной матрицы взаимосвязей.

3.3.4. Построение сетевого графика

Для того чтобы еще до построения графика знать, на каком примерно

расстоянии от начального события должно располагаться каждое событие

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

от начала графика. Такое распределение осуществляется в последнем

столбце таблицы: в ячейке 4-го столбца (табл. 4), соответствующей

событию № 0, проставляется цифра 1 (1-й уровень); в ячейке, соответству-

ющей событию № 1, проставляется цифра 2 (2-й уровень).

47

Page 48: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 4 Шаблон заполнения уровней событий

Номера событий Номера входящих в событие работ

Номера исходящих из события работ

Номер уровня

Далее возможны два варианта:

1) Если среди входящих работ рассматриваемого события

присутствуют исходящие работы какого-либо события, относящегося к

уровню, к которому относится предыдущее событие, то рассматриваемое

событие необходимо отнести к следующему уровню.

2) Если среди входящих работ рассматриваемого события нет таких,

которые являются исходящими для событий предыдущего уровня, то

рассматриваемое событие необходимо отнести к этому же уровню.

3.4. Временные параметры событий

К временным параметрам событий относятся [11]:

• ( )iTр – ранний срок наступления события i. Это время, которое

необходимо для выполнения всех работ, предшествующих данному

событию i. Оно равно наибольшей из продолжительности путей,

предшествующих данному событию.

• ( )iTп – поздний срок наступления события i. Это такое время

наступления события i, превышение которого вызовет аналогичную

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

наступления любого события i равен разности между продолжительностью

критического пути и наибольшей из продолжительностей путей,

следующих за событием i.

• ( )iR – резерв времени наступления события i. Это такой

промежуток времени, на который может быть отсрочено наступление

48

Page 49: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

события i без нарушения сроков завершения проекта в целом. Начальные и

конечные события критических работ имеют нулевые резервы событий.

Рассчитанные численные значения временных параметров

записываются в вершины сетевого графика (рис. 15).

i Tр(i)

Tп(i)R(i)

Рис. 15. Отображение временных параметров событий в вершинах сетевого графика

Расчет ранних сроков свершения событий ( )iTр ведется от исходного

(И) к завершающему (З) событию.

Примечание. Поскольку длительность работы может быть как

нормальной нT , так и ускоренной уT (см. п. 3), то для общности изложения

будем в дальнейшем обозначать текущую длительность работы буквой t с

соответствующим кодом работы, например, ( )jit , , ( )jkt , и т. д.

1. Для исходного события И ( ) 0р =ИT .

2. Для всех остальных событий i: ( ) ( ) ( )[ ]iktkTiT ,max рр += , где

максимум берется по всем работам ( )ik, , входящим в событие i.

Поздние сроки свершения событий ( )iTп рассчитываются от

завершающего к исходному событию.

3. Для завершающего события З ( ) ( )‚T‚Tп р= .

4. Для всех остальных событий ( ) ( ) ( )[ ]jitjTiT пп ,min −= , где

минимум берется по всем работам ( )ji, , выходящим из события i.

5. ( ) ( ) ( )iTiTiR п р−= .

49

Page 50: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

3.5. Временные параметры работ и путей

К наиболее важным временным параметрам работ относятся:

• ( )jiTрн , – ранний срок начала работы;

• ( )jiTпн , – поздний срок начала работы;

• ( )jiTро , – ранний срок окончания работы;

• ( )jiTпо , – поздний срок окончания работы;

Для критических работ ( ) ( )jiTjiT пнрн ,, = и ( ) ( )jiTjiT поро ,, = .

• ( )jiRп , – полный резерв работы показывает максимальное время,

на которое может быть увеличена продолжительность работы ( )ji, или

отсрочено ее начало, чтобы продолжительность проходящего через нее

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

Важнейшее свойство полного резерва работы ( )ji, заключается в том, что

его частичное или полное использование уменьшает полный резерв у

работ, лежащих с работой ( )ji, на одном пути. Таким образом, полный

резерв принадлежит не одной данной работе ( )ji, , а всем работам,

лежащим на путях, проходящим через эту работу.

• ( )jiRс , – свободный резерв работы показывает максимальное

время, на которое можно увеличить продолжительность работы ( )ji, или

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

Использование свободного резерва одной из работ не меняет величины

свободных резервов остальных работ сети.

Временные параметры работ сети определяются на основе ранних и

поздних сроков событий.

1) ( ) ( )iTjiT ррн =, ;

2) ( ) ( ) ( )jitiTjiT рро ,, += или ( ) ( ) ( )jitjiTjiT рнро ,,, += ;

50

Page 51: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

3) ( ) ( )jTjiT ппо =, ;

4) ( ) ( ) ( )jitjTjiT ппн ,, −= или ( ) ( ) ( )jitjiTjiT попн ,,, −= ;

5) ( ) ( ) ( ) ( )jitiTjTjiR рпп ,, −−= ;

6) ( ) ( ) ( ) ( )jitiTjTjiR ррс ,, −−= .

Временные параметры работ вносятся в таблицу. При этом коды

работ записывают в определенном порядке: сначала записываются все

работы, выходящие из исходного, т. е. первого, события, затем –

выходящие из второго события, потом – из третьего и т. д.

Резервами времени, кроме работ и событий, обладают полные пути

сетевой модели. Разность между продолжительность. критического пути

T(Lкр) и продолжительностью любого другого полного пути T(Lп)

называется полным резервом времени пути Lп, т. е. R(Lп) = T(Lкр) – T(Lп).

Этот резерв показывает, на сколько в сумме может быть увеличена

продолжительность всех работ данного пути L, чтобы при этом не

изменился общий срок окончания всех работ.

51

Page 52: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

4. ПРАКТИКУМ

4.1. Решение ЗЛП графическим методом

Постановка задачи. Компания разрабатывает два веб-проекта П1 и

П2. Для их запуска необходимы специалисты веб-дизайнер (А)

и веб-программист (В). Кроме того, рабочее время каждого специалиста в

один день, отведенное на подготовку проекта, ограничено. Затраты

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

Таблица 5

Исходные данные

Специалист Затраты времени на задачи, ч Затраты в сутки, ч

П1 П2

А

В

1

2

2

1

6

8

По мнению разработчиков проекта, число задач, решенных в

рабочий день по второму проекту, не должно быть больше, чем на 2, числа

задач по первому проекту. Кроме того, установлено, что по второму

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

день. Доход компании от решения одной задачи составляет 3 у. е. для

первого проекта и 2 у. е. для второго проекта. Определите оптимальное

число задач, которое необходимо решать в один рабочий день, что доход

компании по этим проектам был максимальным?

Решение. Пусть x1, x2 – число задач, решаемых по 1-му

и 2-му проектам соответственно. Тогда доход компании составит

f(x1, x2) = 3x1 + 2x2.

Согласно условиям задачи, должны выполняться следующие

ограничения:

52

Page 53: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

≥≥≤

≤−≤+≤+

.0,0,2

,1,82,62

21

2

12

21

21

xxx

xxxxxx

)6,5()4()3()2()1(

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

(рис. 16). Множество решений каждого из неравенств есть полуплоскость,

на которую указывает стрелка (рис. 16). Граница полуплоскости (прямая)

задается соответствующим уравнением (когда знак неравенства заменяется

знаком равенства). Полученная таким образом допустимая область –

многоугольник OABCDE. Необходимо среди точек этого многоугольника

найти точку, в которой целевая функция f принимает максимальное

значение.

Рис. 16. Построение области допустимых решений

Рассмотрим линию уровня функции f, т. е. линию, вдоль которой эта

функция принимает одно и то же фиксированное значение с, т. е.

f(x1,x2) = c (рис. 17).

53

Page 54: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рис. 17. Линия уровня целевой функции

В данном случае линия уровня cxx =+ 21 23 есть прямая.

При различных уровнях с линии уровня параллельны. На рис. 17

изображены три линии уровня. Одна из них проходит через начало

координат и соответствует значению с = 0. Как известно из аналитической

геометрии, вектор нормали )2;3(n показывает направление возрастания

уровня. Следовательно, оптимальное решение достигается в точке B (это

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

Точка В есть точка пересечения прямых (1) и (2) и поэтому ее координаты

определяются из решения системы уравнений

=+=+

.82,62

21

21

xxxx

Решая систему, находим 3131 =x ,

3112 =x . Оптимальный доход

компании от реализации проектов при этом составит

3212

3112

3133)

311,

313( =⋅+⋅=f (у. е.).

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

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

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

54

Page 55: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

4.2. Решение ЗЛП симплекс-методом

Задача 1.

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

F = 2 x1 + 4 x2→mах

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

≥≥≤+≤+

.0,02709312032

21

21

21

xxxxxx

Решение. Запишем эту задачу ЛП в канонической форме, введя две

дополнительные переменные х3 и х4:

=++=++

2709312032

421

321

xxxxxx

Линейную функцию перепишем в виде: F – 2 x1 – 4 x2 = 0.

Заполняем первую симплекс-таблицу (табл. 6), в которой

переменные

х3 и х4 – основные.

Таблица 6

Первая симплекс-таблица

Х1 Х2 Х3 Х4 bi Оценочные

отношения

Х3 2 3 1 0 120 120/3=40

Х4 3 9 0 1 270 270/9=30

F –2 –4 0 0 0

Минимальный элемент в последней строке равен –4. Значит, столбец

второй xs является ключевым или ведущим, s = 2. Переменную x2

перенесем в базисную вместо переменной, находящейся в строке q.

Определим ее.

55

Page 56: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Находим оценочные отношения по правилам (см. алгоритм в п. 1.4).

Минимальным является значение 30, следовательно, вторая строка

является ключевой, х4 убираем из базисной, вместо нее запишем х2.

Составляем новую симплекс-таблицу (табл. 7).

Таблица 7

Вторая итерация

Х1 Х2 Х3 Х4 bi Оценочные

отношения

Х3 = 2 – 3*3/9=1 0 1 = 0–(3*1)/9 =

= –1/3 30

93270120

=

=⋅

− 30

Х2 1/3 1 0 1/9 30 90

F –2 + 3*4/9 =

= –2/3 0 0 0+4/9 = 0 + 4*270/9 = 120

Выполняя следующие шаги алгоритма, получаем окончательное

решение ЗЛП (табл. 8).

Таблица 8

Итоговая симплекс-таблица

Х1 Х2 Х3 Х4 bi

Х1 1 0 1 –1/3 30

Х2 0 = 1–(0*1/3)/1 0–1/3 1/9+1/9 = 2/9 201

)3/1(3030 =⋅

F 0 0 2/3 4/9–2/9 = 2/9 1401

)3/2(30120 =⋅

+

В последнем столбце таблицы 8 записано решение ЗЛП х1 = 30,

х2 = 20, f(x)= 140. Проверим .140204302)20,30( =⋅+⋅=f

56

Page 57: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Задача 2.

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

F = 2 x1 + 3 x2→mах

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

≥≥≥≥≤⋅+−≤+

.0,0102010250

21

2

1

21

21

xxx

xxx

xx

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

четырехугольник на плоскости с вершинами в точках (20,10); (20,15);

(30,20); (40,10). Перемещая линию уровня в направлении максимизации

функции (градиент), определяем, что решение достигается в вершине

(30,20) со значением Fmax = 120. Имея этот результат для проверки,

выполним алгоритм симплекс-метода формально.

Запишем эту задачу ЛП в канонической форме, введем 4

дополнительные переменные х3, х4, х5, х6:

=−=−

=++−=++

1020

1050

62

51

421

321

xxxx

xxxxxx

Линейная функция F – 2 x1 – 3 x2 = 0.

Заполняем первую симплекс-таблицу (табл. 9), в которой перемен-

ные х3, х4, х5, х6 – основные. Основные переменные должны быть

в таблице со знаком «+». Поэтому уравнения номер 3,4 нужно умножить

на (–1).

57

Page 58: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 9

Первая симплекс-таблица задачи

Х1 Х2 Х3 Х4 Х5 Х6 bi Оцен. отнош.

Х3 1 1 1 0 0 0 50 50/1 = 50

Х4 –1 2 0 1 0 0 10 10/2 = 5

Х5 1 0 0 0 –1 0 20 ∞

Х6 0 1 0 0 0 –1 10 10

F –2 –3 0 0 0 0 0

В таблице 9 выбираем ключевой элемент а22 = 2.

Таблица 10

Вторая симплекс-таблица задачи

Х1 Х2 Х3 Х4 Х5 Х6 bi Оцен.

отнош.

Х3 3/2 0 1 –1/2 0 0 45 30

Х2 –1/2 1 0 1/2 0 0 10/2=5 ∞

Х5 1 0 0 0 –1 0 –20 ∞

Х6 0+1/2 0 0 –1/2 0 –1 –10 ∞

F –2–3/2 =

= –7/2

0 0 3/2 0 0 15

Во второй симплекс-таблице (табл. 10) получаем промежуточный

результат.

Искомое решение ищем в последнем столбце (табл. 11). Таким

образом, решение ЗЛП Fmax(30, 20) = 120.

58

Page 59: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 11

Вторая симплекс-таблица задачи

Х1 Х2 Х3 Х4 Х5 Х6 bi

Х1 1 0 2/3 –1/3 0 0 30

Х2 0 1 -1/3 1/3 0 0 20

Х5 0 0 -2/3 1/3 –1 0 –50

Х6 0 0 1/3 –1/3 0 0 –25

F 0 0 7/3 1/3 0 0 120

4.3. Получение оптимального решения транспортной задачи

Постановка задачи. Рассмотрим закрытую транспортную задачу с

тремя поставщиками и четырьмя потребителями. Количество груза (шт.),

имеющееся у каждого поставщика и требующееся каждому потребителю,

соответствующие стоимости перевозки единицы груза (у. е.) приведены в

таблице 12.

Таблица 12

Исходные данные ТЗ

Потребители 1-й 2-й 3-й 4-й

Поставщики 200 300 350 200

1-й 250 2 4 5 3

2-й 350 4 3 6 7

3-й 450 6 5 4 5

Метод северо-западного угла. По плану X0 спрос первого

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

x11 = 200, и, следовательно, x21 = 0, x31 = 0 (табл. 13). Оставшиеся у первого

поставщика 50 ед. груза направляются второму потребителю, т. е. x12 = 50,

и у этого поставщика оказывается вывезенным весь груз, следовательно,

59

Page 60: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

x13 = 0, x14 = 0. Недостающие второму потребителю 250 ед. груза вывозятся

от второго поставщика, т. е. x22 = 250, и, следовательно, x32 = 0.

Оставшиеся у второго поставщика 100 ед. направляются третьему

потребителю, т. е. x23 = 100, и, следовательно, x24 = 0. Недостающие 250 ед.

третий потребитель получает от третьего поставщика, т. е. x33 = 250.

И, наконец, остаток в 200 ед. третий поставщик направляет четвертому

потребителю, т. е. x34 = 200. Таким образом, весь груз оказался

вывезенным у поставщиков и доставлен в нужных количествах

потребителям (табл. 13).

Таблица 13

План X0

2 4 5 3 200 50 u1 4 3 6 7 250 100 u2 6 5 4 5 250 200 u3 v1 v2 v3 V4

Стоимость перевозок по плану X0 составляет

f(X0) = 2 ⋅ 200 + 4 ⋅ 50 + 3 ⋅ 250 + 6 ⋅ 100 + 4 ⋅ 250 + 5 ⋅ 200 = 3950.

Метод минимального элемента. Построим опорный план X1з адачи

методом минимального элемента (табл. 14).

На каждом шаге выбираем клетку с минимальной стоимостью

поставки. На первом шаге это клетка (2, 2) со стоимостью 3 у.е.

Отправляем поставку величиной 300 ед. груза. На втором шаге выбираем

клетку (1, 4). Заполняем матрицу перевозок до тех пора, пока не будут

закрыты все клетки.

60

Page 61: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Стоимость перевозок по плану X1 составляет

f(X1) = 2 ⋅ 200 + 3 ⋅ 50 + 3 ⋅ 300 + 7 ⋅ 50 + 4 ⋅ 350 + 5 ⋅ 100 = 3800.

Таблица 14

План X1

2 4 5 3 200 50 u1 4 3 6 7 300 50 u2 6 5 4 5 350 100 u3 v1 v2 v3 v4

Сравнивая значения целевой функции на планах X0 (см. табл. 13) и X1

(см. табл. 14), убеждаемся, что опорное решение X1, найденное по методу

минимального элемента, ближе к оптимальному, чем решение X0,

полученное по методу северо-западного угла.

Метод потенциалов. Проверим исходное опорное решение Х1,

полученное ранее, на оптимальность. С этой целью составим систему

уравнений, соответствующих положительным перевозкам (занятым

клеткам) плана Х1, т. е.

v1 – u1 = 2, v2 – u2 = 3, v3 – u3 = 4,

v2 – u1 = 4, v3 – u2 = 6, v4 – u3 =5,

где u1, u2, u3 – потенциалы поставщиков, а v1, v2, v3, v4 – потенциалы

потребителей (для удобства эти потенциалы записаны справа и снизу от

плана Х0). Решим данную систему, положив, например, u1 = 0. Получим

следующие значения:

v1 = 2, v2 = 4, u2 = 1, v3 = 7, u3 = 3, v4 = 8.

61

Page 62: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Для свободных клеток плана Х0 составим систему неравенств:

3,5

14

13

≤−≤−

uvuv

,7,4

24

21

≤−≤−

uvuv

.5,6

32

31

≤−≤−

uvuv

Подставляя полученные значения потенциалов в данную систему

неравенств, имеем:

,38,57

14

13

>=−>=−

uvuv

,77

,41

24

21

==−<=−

uvuv

.51

,61

32

31

<=−<−=−

uvuv

Неравенства ijij cuv ≤− не выполняются для двух перевозок x13 = 0 и

x14 = 0 плана Х1 (для двух свободных клеток). Значит план Х0 не оптимален

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

транспортные затраты меньше или, по крайней мере, равны затратам для

предыдущего плана.

Обозначим разность (vj – ui) – cij= ij∆ . Эта величина называется

оценкой свободной клетки. Для двух клеток (1,3) и (1,4) эти оценки

положительны. Выбираем максимальную из них 514 =∆ .

Таблица 15

Новый план перевозок

2 4 5 3 200 50-ε ε u1 4 3 6 7 250+ε 100-ε u2 6 5 4 5 250+ε 200-ε u3 v1 v2 v3 v4

В новом, улучшенном, плане клетка (1,4) (соответствующая

максимуму ij∆ ) должна быть занятой. Введем в план перевозку x14 = ε

62

Page 63: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

(значение ε будет определено ниже). Для того чтобы новый план

удовлетворял условиям оптимальности (10)–(13) (см. п. 1.6.1), внесем в

план Х1 следующие поправки. Перевозку х12 = 50, стоящую в той же строке

матрицы Х0, что и х14 = ε, уменьшим на ε ; перевозку х22 = 250, стоящую в

том же столбце, что и х12, увеличим на ε ; аналогично х23 = 100 уменьшим

на ε, х33 = 250 увеличим на ε и, наконец, х34 = 200 уменьшим на ε

(табл. 15).

Здесь ε должно удовлетворять неравенствам { },200,100,50min0 ≤≤ ε

т. е. 500 ≤≤ ε (чтобы все значения 50 – ε, 100 – ε, 200 – ε были

неотрицательными). Для плана Х1ε стоимость перевозок составит

( )[ ( )( ) ( ) ( ) ( )[ ] ).)()(

)()()((5)(546343)()(

14014140343323

22121403433232212140

001

εεεε

εεεεεεεε

⋅∆−=−−+=−−−+−−−−+−−+=−+−+−+=

−=−+−+−+=

XfuvcXuvuvuvuvuvcXfccccccXf

XfXfXf

Выбрав наибольшее возможное значение ε = 50, получим

новый план Х2.

Перераспределение перевозок при переходе от плана Х0 к плану Х1

было произведено по замкнутой ломаной линии, называемой обычно

циклом (этот цикл отмечен пунктиром в плане Х1). Вычислим

транспортные затраты плана Х2

37005053950)()( 1412 =⋅−=⋅∆−= εXfXf .

Они оказались меньше транспортных затрат для плана Х1.

Следовательно, план Х2 лучше плана Х1 (табл. 16). Таким образом,

включение в план Х2 перевозки x14 = 50, оказалось оправданным, и

транспортные затраты уменьшились на величину 25014 =⋅∆ ε .

63

Page 64: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 16

План X2

2 4 5 3 200 50 u1 4 3 6 7 300 50 u2 6 5 4 5 300 150 u3 v1 v2 v3 v4

Далее найдем новые значения потенциалов поставщиков и

потребителей из уравнений

v1 – u1 = 2, v2 – u2 = 3 v3 – u3 = 4,

v4 – u1 = 3, v3 – u2 = 6, v4 – u3 = 5,

соответствующих занятым клеткам плана Х2.

При u1 = 0 получим v1 = 2, v4 = 3, u3 = –2, v3 = 2,u2 = – 4, v2 = –1.

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

,5,4

13

12

≤−≤−

uvuv

,7,4

24

21

≤−≤−

uvuv

,5,6

32

31

≤−≤−

uvuv

соответствующие свободным клеткам плана Х2, получим

v2 –u1 = –1 < 4, v1 – u2 = 6 > 4, v1 –u3 = 4 < 6,

v3 –u1= 2 < 5, v4 –u2 = 7 = 7, v2 – u3 = 1 < 5.

Не выполняется только третье неравенство, соответствующее

перевозке х21 = 0. В плане Х2 только одна положительная оценка

221 =∆ . Включая в план Х2 перевозку 50)150,50,200(min21 ==x ,

и, перераспределяя другие перевозки по циклу

)1,2()3,2()3,3()4,3()4,1()1,1()1,2( →→→→→→ ,

получим новый план Х3 (табл. 17).

64

Page 65: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

План Х3 лучше плана Х2, т. к. для него стоимость транспорт-

ных затрат 360010031005350430035041502)( 3 =⋅+⋅+⋅+⋅+⋅+⋅=Xf

оказалась меньше, чем для плана Х2.

Таблица 17

План Х3

2 4 5 3 150 100 u1 4 3 6 7 50 300 u2 6 5 4 5 350 100 u3 v1 v2 v3 v4

Применительно к плану Х3 вновь составим систему уравнений

v1 – u1 = 2, v1 – u2 = 4, v3 – u3 = 4,

v4 – u1 = 3, v2 – u2 = 3, v4 – u3 = 5

и неравенств

,5,4

13

12

≤−≤−

uvuv

,7,6

24

23

≤−≤−

uvuv

.5,6

32

31

≤−≤−

uvuv

Положив u1 = 0, из последней системы уравнений получим v1 = 2,

v4 = 3, u3 = –2, v3 = 2, u2 = –2, v2 = 1. Найденные значения потенциалов

удовлетворяют последней системе неравенств. Действительно,

,52,41

13

12

<=−<=−

uvuv

,75,64

24

23

<=−<=−

uvuv

.53,64

32

31

<=−<=−

uvuv

Так как потенциалы u1 = 0, v4 = 3, u3 = –2, v1 = 2, v3 = 2, u2 = –2, v2 = 1

удовлетворяют обоим условиям критерия оптимальности, то план Х3 будет

оптимальным, а стоимость перевозок f (Х3) = 3600 является минимальной.

Оптимальный план Х3 выпишем в виде матрицы

65

Page 66: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

=

100350000030050

10000150

2X .

Оптимальное решение формулируется следующим образом. Первый

поставщик должен доставить 150 ед. груза первому потребителю и 100 ед.

четвертому, второй поставщик доставит 50 ед. груза первому потребителю

и 300 ед. второму и третий поставщик – 350 ед. третьему потребителю и

100 ед. – четвертому. Суммарные транспортные расходы составляют 3600

(денежных единиц).

4.4. Программное решение ЗЛП

4.4.1. Постановка задачи

Для решения ЗЛП решить задачу применим программное

обеспечение OpenOfficeCalc.

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

Максимизировать целевую функцию:

F = 2 x1 + 4 x2→mах

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

≥≥≤+≤+

.0,02709312032

21

21

21

xxxxxx

4.4.2. Оформление экранной формы

Создадим экранную форму исходной задачи. Для этого в программе

OpenOfficeCalc каждой переменной Xj и каждому коэффициенту задачи

поставим в соответствие конкретные ячейки (рис. 18).

Введем математические функции модели задачи ЛП в экранную

форму.

66

Page 67: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

В ячейку Е8, в которой будет выведено значение целевой функции,

введем соответствующую формулу:

=В4*В8 + С4*С8.

Рассмотрим другой вариант записи подобных формул. Используя

обозначения соответствующих ячеек в табличной форме (см. рис. 1),

формулу для расчета целевой функции (1) запишем как сумму

произведений каждой из ячеек, содержащих значения переменных задачи

ЛП, а именно: (B4, C4), на ячейки, соответствующие коэффициентам

целевой функции (B8, C8).

Рис. 18. Экранная форма задачи

Устанавливаем курсор в ячейке Е8 и нажимаем кнопку на панели

инструментов . Появится диалоговое окно (рис. 19).

67

Page 68: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рис. 19. Выбор функции

В меню «Категория» выбираем вкладку «Математический».

В появившемся окне находим функцию SUMPRODUCT (Массив 1;

Массив 2; …) и нажимаем кнопку «Далее». Вводим массивы данных,

соответствующие переменным и коэффициентам целевой функции,

определенным выше, нажимаем «ОК». В результате в строке формул

должны получить запись (рис. 20).

Рис. 20. Ввод в строке формул

Символ $ перед номером строки 4 означает, что при копировании

этой формулы в другие ячейки экранной формы номера ячеек В4, С4 не

изменятся. Символ : означает, что в формуле будут использованы все

ячейки, расположенные между ячейками, указанными слева и справа от

двоеточия.

68

Page 69: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

После введения формулы в ячейке Е8 появится значение 0 (нулевое

значение) (рис. 21).

Рис. 21. Заполнение экранной формы

Левые части ограничений задачи ЛП есть сумма произведений

каждой из ячеек, соответствующих значениям переменных задачи (B4, C4),

на соответствующие ячейки коэффициентов конкретного ограничения (для

первого ограничения А13, В13; для второго ограничения А14, В14).

Формулы, соответствующие левым частям ограничений, вводим в

экранную форму аналогично формуле целевой функции. На экране в полях

С13 и С14 появятся нулевые значения (см. рис. 21).

4.4.3. Ввод ограничений задачи

Для проверки правильности введенных формул поочередно

производите двойное нажатие левой клавиши мыши на ячейки с

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

формуле (рис. 22).

69

Page 70: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рис. 22. Проверка правильности введения формулы целевой функции

Устанавливаем курсор в ячейке целевой функции Е8 (рис. 23).

Для решения задачи линейного программирования необходимо в главном

меню выбрать вкладку «Сервис/Решатель».

Рис. 23. Выбор инструмента решения задачи ЛП

70

Page 71: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

По умолчанию механизм решателя поддерживает только линейные

уравнения.

Рис. 24. Диалоговое окно «Решатель»

В результате выполнения команды появится окно (рис. 24), в

котором производим следующие действия:

1) устанавливаем целевую ячейку, щелкнув на ячейке экранной

формы Е8 (если еще не установлено);

2) определяем направление оптимизации (для нашего примера

выбираем максимум);

3) в поле «Изменяя ячейки» записываем адреса $B$4:$C$4 вручную

либо путем выделения мышью соответствующих ячеек переменных

непосредственно в экранной форме (рис. 25).

Для задания системы ограничений задачи ЛП для допустимых

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

переменных, то есть их нижняя граница равна нулю (см. рис. 25, первое

ограничительное условие). В поле «Ссылка на ячейку» вводим адреса

71

Page 72: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

ячеек переменных $B$4:$С$4 одним из известных способов: вручную с

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

переменных непосредственно в экранной форме. В поле «Операция»

откройте список предлагаемых знаков и выбираем ≥.

Рис. 25. Заполненная форма «Решатель»

В поле «Значения» введите адреса ячеек нижней границы значений

переменных, то есть $B$5:$С$5. Их также можно ввести путем выделения

мышью непосредственно в экранной форме.

Аналогично задаем ограничения. В поле «Ссылка на ячейку» вводим

адрес ячейки, содержащей формулу вычисления значения левой части

конкретного ограничения, например $С$13.

Знак ограничения выбираем в соответствии с ограничением, в нашем

примере знак «≤».

В поле «Значение» вводим адрес ячейки правой части нужного

ограничения, например $Е$13.

72

Page 73: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Аналогично записываем второе ограничение системы нашей задачи

линейного программирования.

Нажимаем ОК для подтверждения ввода всех условий системы.

Для установления/изменения необходимых параметров решения

задач оптимизации определенного класса рассмотрим диалоговое окно,

которое вызывается путем нажатия кнопки «Параметры» формы

«Решатель» (см. рис. 25).

Рис. 26. Установка параметров поиска решения

Можно определить ряд условий, устанавливающих ограничения для

некоторых ячеек (рис. 26). Например, можно установить следующее

ограничение: одна из переменных или ячеек не должна быть больше

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

следующее ограничение: одна или более переменные должны быть

целыми числами (значения без знаков после запятой) или двоичными

числами (разрешены только значения 1 и 0).

73

Page 74: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рис. 27. Полученное решение задачи ЛП (1)-(2)

Подтвердите установленные параметры нажатием кнопки «OK».

Запуск задачи на решение производится из окна «Решатель» путем

нажатия кнопки «Решить», появится окно «Результат». Возможно, при

решении получено сообщение «Решение не найдено», это может

свидетельствовать о несовместности условий системы ограничений либо о

допущенных при вводе в экранную форму/решатель значений. Следует

проверить правильность заполнения.

Для получения ответа (значений переменных, целевой функции и

левых частей ограничений) в окне «Результат» нажимаем кнопку

«Сохранить результат». После этого в экранной форме появляется

оптимальное решение задачи (рис. 27).

4.4.4. Целочисленное программирование

В случае требования целочисленности получаемого решения, т. е.

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

диалоговом окне (меню Сервис/Решатель). В появившемся окне

«Ограничительные условия» вводим ограничения следующим образом: в

поле «Ссылка на ячейку» вводим ссылки на ячеек переменных, в поле

74

Page 75: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

«Операция» выбираем «целое». После установки нового ограничения

нажимаем кнопку «Решить».

4.5. Построение и решение распределительной ЗЛП

4.5.1. Исходные данные

На АО «Семь ветров» подготовлены к серийному производству

5 новых изделий 1И , 2И , 3И , 4И , 5И , оптовые цены jЦ которых равны

соответственно (46, 27, 40, 35, 23) [руб./шт.]. Производство может быть

развернуто в четырех сборочных корпусах 1K , 2K , 3K , 4K . Затраты в

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

ijсС . Предлагается специализировать один (несколько) сборочный

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

Затраты на переоборудование в тыс. руб. задаются матрицей ijsS .

2113221621

202723189

1526401243

9217198

C (руб./шт.);

746552103122

42781518277

55641158062

1101621349072

S (тыс. руб.).

При выпуске изделий со специализацией затраты ijc упадут на

15–20% в каждом корпусе. Фонды времени iF работы корпусов в плановом

периоде равны соответственно 550, 870, 620, 790 часов, план выпуска

продукции jP в штуках составляет соответственно 6400, 8700, 16 400,

4800, 4600, а трудоемкость в минутах изготовления одной единицы

продукции в соответствующем корпусе задается матрицей ijtT .

4,146,98,42,12,7

120,80,40,10,6

2,78,44,26,06,3

0,60,40,25,00,3

T (мин/шт.).

75

Page 76: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рассмотрите два варианта работы предприятия: без специализации и

со специализацией. Выберите наилучший вариант и обоснуйте свой выбор.

4.5.2. Построение распределительной модели без специализации

Пусть ijx – количество времени (ч), которое корпус iК будет

тратить на выпуск изделия jИ в течение планового периода.

Рассмотрим производство без специализации корпусов.

Распределительная матрица такой задачи приведена в таблице 18.

При ее построении необходимо учитывать, что параметр

интенсивности выполнения работ ijλ в данном случае – это

производительность корпуса iК по выпуску изделия jИ . Но в исходных

данных вместо ijλ дано количество минут, затрачиваемых в корпусе iК на

производство одного изделия jИ , то есть трудоемкость ( )ijtT = .

Таблица 18

Распределительная матрица задачи без специализации

Корпуса, iK

Изделия, jИ Фонд

времени [ч] 1И 2И 3И 4И 5И

1K 20 8

120 19

30 7

15 21

10 9 550

2K 16,66 43

100 12

25 40

12,50 26

8,33 15 870

3K 10 9

60 18

15 23

7,50 27

5 20 620

4K 8,33 21

50 16

12,50 22

6,25 13

4,17 21 790

План [шт.] 6400 8700 16 400 4800 4600

Производительность и трудоемкость по своему смыслу – обратные

величины, то естьij

ij t1

=λ , единицы измерения t.ед.шт

.штt.ед1

= .

76

Page 77: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Например, на производство изделия 2И в корпусе 1К требуется

0,5 минуты, поэтому в течение часа (60 мин) будет произведено

120 изделий:

12060

5,01

12 ==λ

с единицами измерения

ч.шт

минч

.штмин

1

чмин

.штмин

1=

⋅= .

На основании распределительной табл. 18 строим модель РЗ – ЦФ

(приведены округленные значения) и ограничения:

( )

; x 4,167 21 x 6,250 13 x 12,500 22 x 50 16 x 8,333 21x520

x7,50027x1523x 6018 x 109x333,815x12,50026x2540 x10012x16,66743

x109 x1521 x 307x 12019x208

4544

43 42 41 35

3433323125

242322 21

1514131211

⋅⋅+⋅⋅++⋅⋅+⋅⋅+⋅⋅+⋅⋅+

+⋅⋅+⋅⋅+⋅⋅+⋅⋅+⋅⋅++⋅⋅+⋅⋅+⋅⋅+⋅⋅+

+⋅⋅+⋅⋅+⋅⋅+⋅⋅+⋅⋅=XL

( )

[ ]. руб.min x87,507x81,25x 275x800x 174,993x100x202,5x 345x 1080x90

x124,995x325x1000x 1200x 716,681x09x315x 210x 2280x 160

4544 4342 41

3534333231

252423 2221

1514131211

→⋅+⋅+⋅+⋅+⋅++⋅+⋅+⋅+⋅+⋅+

+⋅+⋅+⋅+⋅+⋅++⋅+⋅+⋅+⋅+⋅=XL

Преобразуем РЗ в ТЗ. В качестве базового корпуса можно выбрать

любой, но мы предпочтем корпус с максимальной производительностью,

т. е. корпус 1K .

Определяем производительности корпусов iα , нормированные

относительно производительности базового станка:

11010

1515

3030

120120

2020

1 ======α ;

77

Page 78: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

833,01033,8

1550,12

3025

120100

2066,16

2 ≈≈≈≈≈≈α ;

500,0105

1550,7

3015

12060

2010

3 ≈≈≈≈≈≈α ;

417,01017,4

1525,6

3050,12

12050

2033,8

4 ≈≈≈≈≈≈α .

Пересчитываем фонды времени корпусов:

5501550'1 =⋅=a [ч]; 724,710833,0870'

2 =⋅=a [ч]; 103500,0620'3 =⋅=a [ч];

329,430417,0790'4 =⋅=a [ч].

Пересчитываем плановое задание:

32020

6400'1 ==b [ч]; 500,72

1208700'

2 ==b [ч]; 667,54630

16400'3 ≈=b [ч];

32015

4800'4 ≈=b [ч]; 460

104600'

5 ==b [ч]

= ч

ч.шт.шт .

Производим пересчет себестоимостей, например:

228012019'12 =⋅=c [руб./ч]; 12003040'

23 =⋅=c [руб./ч];

180209'31 =⋅=c [руб./ч]; 2101021'

45 =⋅=c [руб./ч]

Все пересчитанные параметры РЗ сведены в транспортную матрицу

задачи без специализации (табл. 19). Перед записью этой матрицы надо

проверить сбалансированность полученной ТЗ, то есть условие

∑∑==

=5

1

'4

1

'

jj

ii ba . В данной задаче условие баланса не выполняется, так как

1914,167 > 1719,167, то есть .5

1

'4

1

' ∑∑==

>j

ji

i ba Это означает, что фонды времени

78

Page 79: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

корпусов позволяют произвести больше продукции, чем это

предусмотрено плановым заданием. Для получения баланса добавим

в транспортную таблицу фиктивный столбец фИ с плановым

заданием 000,195167 , 1719 167 , 1914 =−=фb [ч]и фиктивными тарифами

000 10' =фc [руб./ч], превосходящими по своему значению все реальные

тарифы 'ijc полученной ТЗ.

Таблица 19

Транспортная матрица задачи без специализации

Корпуса, iK

Изделия, jИ 'ia [ч] 1И 2И 3И 4И 5И Иф

1K 160 2280 210 315 90 10 000 940

2K 860 1440 1200 390 150 10 000 141,61

3K 180 2160 690 405 200 10 000 275

4K 420 1920 660 195 210 10 000 282,88 'jb [ч] 300 81,667 580 346,667 38,334 195 1914,167

Оптимальное решение ТЗ '*X [ч] из таблицы 19 без фиктивного

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

следующий вид:

='*X

3,333333 0 546,6667 0 0 0 72,5 0 0 460

310 0 0 0 0 6,667 0 0 320 0

Оптимальное решение РЗ *X [ч] получаем из оптимального решения

ТЗ '*X [ч], например:

667,5461667,546*

13 ≈=x [ч]; 87833,0

5,72*23 ≈=x [ч]; 16

417,0667,6*

41 ≈=x [ч];

=*X

3,33333 0 546,667 0 0 0 87 0 0 552

620 0 0 0 0 16 0 0 768 0

79

Page 80: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Значения ** Xxij ∈ – это время, в течение которого корпус iK будет

выпускать изделия jИ . Чтобы узнать, какое количество продукции будут

выпускать корпуса, то есть *кX [шт.], вычислим:

870010087*22 =⋅=кx [шт.]; 133333,816*

41 ≈⋅=кx [шт.].

В данном расчете округления (до меньшего целого) обязательны,

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

=*кX

66 0 16400 0 0 0 8699 0 0 4600

6200 0 0 0 0 133 0 0 4800 0

Определим затраты на производство продукции без специализации:

( ) ∑∑= =

=n

i

m

j

кijij

к xсXL1 1

** ;

( ) 709 4094800 13...86991216400766 8 * =⋅++⋅+⋅+⋅=кXL [руб].

4.5.3. Производство со специализацией

Чтобы принять решение о том, какой корпус будем специали-

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

распределение выпуска продукции по корпусам, то есть *кX .

В рассматриваемой задаче первый корпус занят в основном

выпуском продукции И3 (16 400 шт. изделия И3 и 66 шт. изделия И1).

Число 16 400 шт. изделий И3 – это наибольшее количество продукции

одного и того же вида, производимое одним и тем же корпусом. Поэтому

примем решение о специализации первого корпуса на выпуске изделий И3.

Таким образом, возникает задача оптимального распределения

продукции по неспециализированным корпусам К2, К3, К4. При этом

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

фонд времени произвести плановое задание по выбранному виду

продукции И3.

80

Page 81: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 20

Распределительная матрица задачи со специализацией

Корпуса, iK

Изделия, jИ Фонд

времени [ч] 1И 2И 4И 5И

2K 16,667 36,55

100 10,2

12,500 22,1

8,333 12,75 870

3K 10 7,65

60 15,3

7,500 22,95

5 17 620

4K 8,333 17,85

50 13,6

6,250 11,05

4,167 17,85 790

План [шт.] 6400 8700 4800 4600

В данном случае по *кX видно, что корпус успевает произвести

плановые 16 400 шт. изделия 3И . Таким образом, в новой задаче будем

распределять продукцию И1, И2, И4, И5 по корпусам К2, К3, и К4.

Распределительная матрица задачи без специализации, в которой

учтено уменьшение затрат на производство на 15%, представлена

в таблице 20. Транспортная матрица задачи указана в табл. 21.

Таблица 21

Транспортная матрица задачи со специализацией

Корпуса, iK

Изделия, jИ

'ia [ч] 1И 2И 4И 5И фИ

2K 609,167 1020 276,25 106,25 10 000 870

3K 127,5 1530 286,875 141,667 10 000 372

4K 297,5 1360 138,125 148,75 10 000 395

'jb [ч] 384 87 384 552 230 1637

В результате решения задачи со специализацией получаем

следующее оптимальное распределение производственных мощностей

и продукции:

81

Page 82: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

=*спецX

1И 2И 4И 5И 2K 0 87 1 552 3K 620 0 0 0 4K 24 0 766 0

=*кспецX

1И 2И 4И 5И 2K 0 8700 12 4600 3K 6200 0 0 0 4K 200 0 4787 0

Общие затраты на производство со специализацией общспецL включают:

1) затраты на производство 16 400 шт. изделий 3И в специализи-

рованном корпусе 1К : 800 1147 400 16 =⋅ [ .рубшт.руб.шт. =⋅ ];

2) затраты на производство в остальных корпусах

( ) 552 251* =кспецXL [руб.];

3) затраты на переоборудование специализируемого корпуса

(матрица S в исходных данных) 000 13413 =s [руб.].

352 500000 134552 251800 114 =++=общспецL [руб.]

Сравнивая затраты на производство заданного объема продукции

без специализации ( ) 970 409* =кXL [руб.] и со специализацией

352 500=общспецL [руб.], приходим к выводу, что выгодней организовать

производство без специализации.

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

проведения специализации одного из корпусов производственных

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

(суммарный пересчитанный фонд времени меньше суммарного

пересчитанного плана выпуска). Тогда вследствие специализации часть

82

Page 83: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

запланированного объема продукции произведена не будет, что неизбежно

повлечет за собой потери прибыли от непроизведенной и непроданной

продукции. Это приведет к дополнительному увеличению общих затрат.

4.6. Построение и расчет сетевой модели

Исходные данные задачи включают название и продолжительность

каждой работы (табл. 22), а также описание упорядочения работ.

Таблица 22

Исходные данные Название работы Продолжительность работы

A 10 B 8 C 4 D 12 E 7 F 11 G 5 H 8 I 3 J 9 K 10

1) Работы C, I, G – исходные работы проекта, выполняются

одновременно.

2) Работы E и A следуют за работой C.

3) Работа H следует за работой I.

4) Работы D и J следуют за работой G.

5) Работа B следует за работой E.

6) Работа K следует за работами A и D, но не может начаться

прежде, чем не завершится работа H.

7) Работа F следует за работой J.

83

Page 84: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Рис. 28. Сетевая модель

Таблица 23

Описание сетевой модели с помощью кодирования работ

Номера событий Код работы Продолжительность начального конечного работы

1 2 (1,2) 4 1 3 (1,3) 3 1 4 (1,4) 5 2 5 (2,5) 7 2 6 (2,6) 10 3 6 (3,6) 8 4 6 (4,6) 12 4 7 (4,7) 9 5 8 (5,8) 8 6 8 (6,8) 10 7 8 (7,8) 11

На рис. 28 представлена сетевая модель, соответствующая данному

упорядочению работ. Каждому событию присвоен номер, что позволяет в

дальнейшем использовать не названия работ (табл. 23).

Численные значения временных параметров событий сети вписаны в

соответствующие секторы вершин сетевого графика, а временные

параметры работ сети представлены в табл. 24.

84

Page 85: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Таблица 24

Временные параметры работ

( )i j, ( )t i j, ( )T i jнр , ( )T i jор , ( )T i jпн , ( )T i jпо , ( )R i jп , ( )R i jс ,

1,2 4 0 4 3 7 3 0 1,3 3 0 3 6 9 6 0 1,4 5 0 5 0 5 0 0 2,5 7 4 11 12 19 8 0 2,6 10 4 14 7 17 3 3 3,6 8 3 11 9 17 6 6 4,6 12 5 17 5 17 0 0 4,7 9 5 14 7 16 2 0 5,8 8 11 19 19 27 8 8 6,8 10 17 27 17 27 0 0 7,8 11 14 25 16 27 2 2

КОНТРОЛЬНЫЕ ВОПРОСЫ 1. Дайте определение общей задачи ЛП. 2. Сформулируйте стандартный алгоритм симплекс-метода. 3. Как связаны между собой прямая и двойственная задачи ЛП? 4. Дайте определение двойственной ЗЛП. 5. Что представляют собой линии уровня целевой функции ЗЛП

с двумя переменными? 6. Что представляет собой допустимая область ЗЛП с двумя (тремя)

переменными? 7. Как записывается общий вид математической модели

транспортной задачи? 8. Чем выделяются канонические системы из систем с базисом? 9. Может ли КЗЛП не иметь допустимых решений? 10. Как по индексной строке симплекс-таблицы определить, является

ли найденный план оптимальным? 11. Какие виды транспортных задач Вы знаете? 12. Что представляет целевая функция в транспортной задаче? 13. Какое основное отличие закрытой и открытой транспортных

задач?

85

Page 86: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

14. Что называется опорным решением транспортной задачи? 15. Какие существуют методы получения первого опорного плана? 16. В чем суть этих методов? 17. Что называется циклом пересчета в транспортной задаче? 18. Каковы основные правила сдвига по циклу? 19. В чем состоит суть методов потенциала? 20. Каково условие оптимальности для свободных клеток таблицы 21. Как открытую транспортную задачу превратить в закрытую? 22. Распределительная задача. 23. Сформулируйте основные правила построения сетевых графиков. 24. Сформулируйте алгоритм нумерации событий при построении

сетевого графика. 25. Может ли сетевой график иметь более одного критического пути?

ЗАКЛЮЧЕНИЕ

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

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

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

86

Page 87: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Семушин, И. В. Сборник задач по линейному программированию : электронное пособие // И. В. Семушин. – Ульяновск : УлГТУ, 2012. – 88 с.

2. Булгакова, М. В. Исследование операций в экономических процессах / М. В. Булгакова // Вестник ЮУрГУ. Серия: Экономика и менеджмент. – 2013. – Т. 7, вып. № 4. – С. 6–8.

3. Saaty, T. L. Elements of Queuing Theory, with Applications / T. L. Saaty. – N. Y. : DoverPubns, 1983.

4. Вентцель, Е. С. Исследование операций / Е. С. Вентцель. – М. : Советское радио, 1972.

5. Новикова, Н.В. Исследование операций : конспект лекций / Н. В. Новикова. [Электронный ресурс]. – Режим доступа : http://www.bsu.by/Cache/pdf/217753.pdf (дата обращения 12.11.16).

6. Банди, Б. Основы линейного программирования ; пер. с англ. / Б. Банди. – М. : Радио и связь, 1989. – 176 с.

7. Верник, А. Н. Математические методы и модели в экономике : уч.-практ. пособие / А. Н. Верник, А. Е. Эткин, Г. П. Эткин. – Ульяновск : УлГТУ, 2008. – 208 с.

8. Кремер, Н. Ш. Исследование операций в экономике / Н. Ш. Кре-мер. – М. : Юнити, 2000. – 408 с.

9. Самаров, К. Л. Математика : уч.-метод. пос. по разделу «Транспортная задача» [Электронный ресурс]. – Режим доступа http://www.resolventa.ru/data/metodstud/transproblem.pdf (дата обращения 28.11.16).

10. Алесинская, Т. В. Учебное пособие по решению задач по курсу «Экономико-математические методы и модели» / Т. В. Алесинская. – Таганрог : Изд-во ТРТУ, 2002. – 153 с.

11. Кудрявцев, Е. М. Microsoft Project. Методы сетевого планирования и управления проектом / Е. М. Кудрявцев. – М. : ДМК Пресс, 2005. – 240 с.

12. Мазур, И. И. Управление проектами : учебное пособие / И. И. Мазур, В. Д. Шапиро, Н. Г. Ольдерогге ; под общ. ред. И. И. Мазура. – М. : Омега-Л, 2004. – 664 с.

87

Page 88: ИССЛЕДОВАНИЕ ОПЕРАЦИЙ: ТЕОРИЯ И ПРАКТИКАvenec.ulstu.ru/lib/disk/2017/61.pdfспециалист профессор Е. С. Вентцель: «исследование

Учебное электронное издание ИССЛЕДОВАНИЕ ОПЕРАЦИЙ:

ТЕОРИЯ И ПРАКТИКА Учебное пособие

Составитель КУРКИНА Светлана Владимировна

ЭИ № 874. Объем данных 1,52 Мб. Редактор Н. А. Евдокимова ЛР №020640 от 22.10.97.

Печатное издание

Подписано в печать 14.03.2017. Формат 60×84/16. Усл. печ. л. 5,11. Тираж 50 экз. Заказ № 211.

Ульяновский государственный технический университет,

432027, г. Ульяновск, ул. Сев. Венец, д. 32. ИПК «Венец» УлГТУ, 432027, г. Ульяновск, ул. Сев. Венец, д. 32.

Тел.: (8422) 778-113 E-mail: [email protected]

http://www.venec.ulstu.ru