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

3967

.pdf
Скачиваний:
1
Добавлен:
13.11.2022
Размер:
441.67 Кб
Скачать

11

Задачи для контрольной работы №1

Предположим, что для производства двух видов продукции А и В можно использовать сырьё трёх видов. При этом на изготовление единицы изделия А расходуется а1 ед. сырья первого вида, а2 – ед. 2-го и а3 – 3-го вида. На изготовление единицы изделия В расходуется b1 ед. сырья 1-го вида, b2 – ед. 2-го вида, b3 – ед. 3-го вида сырья. На складе фабрики имеется сырья 1-го вида с1 ед., 2-го – с2, 3-го – с3 ед. От реализации единицы готовой продукции фабрика имеет прибыль α тыс. руб., а от продукции В прибыль составляет β тыс. руб.

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

1.a1=4, a2=2, a3=3; b1=2, b2=5, b3=4; c1=35, c2=43, c3=40; α=5, β=9.

2.a1=2, a2=3, a3=4; b1=3, b2=5, b3=4; c1=30, c2=44, c3=48; α=7, β=9.

3.a1=3, a2=5, a3=2; b1=2, b2=3, b3=4; c1=35, c2=49, c3=42; α=1, β=1.

4.a1=4, a2=2, a3=3; b1=3, b2=5, b3=2; c1=45, c2=45, c3=29; α=5, β=9.

5.a1=4, a2=2, a3=3; b1=3, b2=2, b3=2; c1=55, c2=30, c3=37; α=5, β=4.

6.a1=5, a2=4, a3=3; b1=2, b2=2, b3=3; c1=55, c2=40, c3=42; α=7, β=5.

7.a1=2, a2=4, a3=4; b1=3, b2=2, b3=5; c1=35, c2=38, c3=59; α=8, β=7.

8.a1=2, a2=4, a3=3; b1=3, b2=2, b3=5; c1=35, c2=42, c3=49; α=3, β=3.

9.a1=2, a2=3, a3=4; b1=3, b2=5, b3=2; c1=35, c2=49, c3=42; α=2, β=2.

10.a1=4, a2=2, a3=3; b1=2, b2=5, b3=4; c1=35, c2=43, c3=40; α=5, β=9.

12

2. Двойственность в линейном программировании

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

двойственной.

 

 

 

Рассмотрим стандартную задачу

 

 

 

z = c1x1 + c2x2 + .....

+ cnxn

max

 

 

 

a11x1 + a12x2 + .....

+ a1nxn

b1,

y1

a21x1 + a22x2 + .....

+ a2nxn

b2,

y2

.................................................

 

 

(5)

am1x1 + am2x2 + .....

+ amnxn

bm,

ym

xj 0 (j=1,..., m)

 

 

Каждому ограничению ставится в соответствие переменная двойственной задачи. Двойственная задача имеет вид

W = b1y1 + b2y2 +

......

+ bmym

min

 

 

 

 

a11y1 + a21y2 +

......

+ am1ym

c1,

x1

a12y1 + a22y2 +

......

+ am2ym

c2,

x2

...............................................

 

 

 

(6)

a1ny1 + a2ny2 + ......

+ amnym

cn,

xn

yi 0

(i=1,....,m)

 

 

Задачи (5) – (6) обладают следующими свойствами:

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

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

3.В каждой задаче система ограничений задётся в виде неравенств, причём все они одного смысла, а именно: при нахождении максимума целевой

функции эти неравенства имеют вид , а при нахождении минимума – вид .

4. Свободные члены ограничений исходной задачи являются коэффициентами целевой функции двойственной задачи, а коэффициенты целевой функции исходной задачи – свободные члены ограничений двойственной задачи.

5. Матрицы коэффициентов при переменных в системах ограничений (5) – (6) транспонированы относительно друг друга.

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

Пример. Составить к данной задаче двойственную

Z = 5x1 + 2x2 max

 

13

 

 

 

 

 

 

8x1 + 7x2

417,

 

 

 

 

y1

14x1 + 8x2

580,

 

y2

14x1 +

x2

591,

 

 

y3

x1

0, x2

0

 

 

 

 

 

 

 

 

 

 

Получим:

 

 

 

 

 

 

 

w = 417y1 +580y2 +591y3

 

 

min

8y1 + 14y2 +14y3

5

 

 

x1

 

 

7y1 + 8y2 + y3

2

 

x2

 

yi 0 (i=1, 2, 3)

Решим исходную задачу симплексным методом

cj

базис

аi0

5

2

0

0

0

 

 

(xj)

 

х1

х2

х3

х4

х5

 

0

x3

417

8

7

1

0

0

417/8

0

x4

580

14

8

0

1

0

580/14

0

x5

591

14

1

0

0

1

591/14

 

z

0

–5

–2

0

0

0

 

0

x3

599/7

0

17/7

1

–4/7

0

 

5

x1

580/14

1

4/7

0

1/14

0

 

0

x5

11

0

–7

0

–1

1

 

 

z

1450/7

0

6/7

0

5/14

0

 

 

 

 

 

 

y1

y2

y3

 

Между переменными задач (5)-(6) существует взаимно-однозначное

соответствие:

 

 

 

x1

x2

... xn

xn+1 ... xn+m

 

 

 

 

 

ym+1

ym+2

... ym+n

y1

... ym

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

 

 

zmax

1450

 

при

x*

 

 

 

290

;0;

599

;0;11 .

 

 

 

7

 

 

 

7

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Следовательно, для двойственной задачи

 

 

 

 

1450

 

 

 

 

 

 

 

 

5

 

 

 

W

 

 

при

 

y*

0;

;0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

min

7

 

 

 

 

 

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Проверка. W

 

0 417 580

5

591 0

 

 

1450

.

 

 

 

 

 

 

 

 

 

 

 

min

 

 

 

 

 

 

14

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

 

 

 

Задачи для выполнения контрольных заданий №2

 

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

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

 

 

3.

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

 

Постановка задачи. Требуется найти план перевозок однородного груза

из пунктов А1,...,Аm, содержащих соответственно а1, а2, ...., аm единиц

груза, в пункты В1, В2, ... , Вn в количествах b1, b2, ... , bn соответственно,

при котором суммарные транспортные затраты будут наименьшими.

Известны сij – затраты на перевозку 1 единицы груза из пункта Аi и Bj.

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

баланса:

 

 

 

 

 

 

 

 

 

m

n

 

 

 

 

 

ai

b j.

 

 

 

 

 

i 1

j 1

 

 

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

 

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

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

 

 

 

Теорема 2. Число базисных неизвестных транспортной задачи равно

m+n-1.

 

 

 

 

 

 

Чтобы решить транспортную задачу, необходимо прежде всего найти

исходный

опорный

план.

При этом

используются два метода: метод

''северо-западного угла'' или метод наименьшего элемента.

 

По методу ''северо-западного угла'' необходимо удовлетворить

потребность пункта В1 за счёт А1. Если a1>b1, то в клетку А1В1

записываем

b1 и этот пункт из рассмотрения исключаем, при этом запоминаем, что в

пункте А1 осталось а1–b1 единиц груза. Если же а1<b1, то записываем а1 в

А1В1 и исключаем пункт А1. Если же а1 = b1, то это число записываем в

А1В1, а в следующую (по строке или столбцу) клетку записываем ноль и

исключаем пункты А1 и В1. Продолжаем распределять груз до получения

допустимого плана.

 

 

 

 

 

Пример.

 

 

 

 

 

Bj В1

В2

В3

В4

В5

Аi

 

50

100

125

75

50

A1

 

4

5

3

7

2

100

50

 

50

 

 

 

A2

 

2

3

8

7

5

50

 

 

50

 

 

 

A3

 

4

2

4

3

6

150

 

 

0

125

25

 

A4

 

6

4

5

3

5

100

 

 

 

 

50

50

 

 

 

 

 

 

15

 

 

 

 

 

Число базисных клеток m + n – 1 = 4 + 5 – 1 = 8.

 

 

 

Затраты на данный план

 

 

 

 

 

 

 

 

 

z

50 4

50 5

50 3

125 4

25 3

 

50 3

50 5

 

1 575.

Метод наименьшего элемента учитывает затраты на перевозку.

Выбираем клетку с наименьшим тарифом (если таких клеток несколько,

выбираем любую) и записываем в эту клетку максимально возможную

поставку, исключаем один из пунктов или Аi, или Bj. Если же исключается

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

Пример.

 

 

 

 

 

 

 

 

 

 

Bj В1

 

В2

 

В3

 

В4

В5

Ui

Аi

 

50

 

100

 

125

 

 

75

 

50

A1

 

4

 

5

 

3

 

 

7

 

2 U1 = 0

100

5

 

5

 

50

6

 

 

 

350

A2

 

2

 

3

 

8

 

 

7

 

5 U2 = 3

50

 

50

 

0

2

 

3

 

0

 

 

A3

 

4

 

2

 

4

 

 

3

 

6 U3 = 2

150

3

 

100

–1

+

 

-50

2

 

 

A4

 

6

 

4

 

5

 

 

3

 

5 U4 = 2

100

5

 

2

 

75-

 

+25

1

 

 

Vj

V1 = –1

V2 = 0

V3 = 3

 

V4 = 1

V5 = 2

Число заполненных клеток m + n – 1 = 8. Затраты

 

 

 

z

50 3

50 2

50 2

100 2

50 3

75 5

25 3

 

1 150.

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

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

потенциалом.

 

 

 

 

 

 

 

 

 

 

 

 

 

Алгоритм метода потенциалов

 

 

1. Потенциалы строк – Ui и столбцов – Vj удовлетворяют следующему условию: Ui + Vj = Cij для базисных переменных (для занятых клеток). Так как система для определения потенциалов содержит на одно уравнение меньше, чем число потенциалов, то, чтобы найти решение системы потенциалов, один потенциал задаём произвольно, например, U1=0.

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

U

1

V

3,

 

 

V1

1,

 

3

 

U1

0,

 

 

U

 

V

2,

V2

0,

1

 

 

 

5

 

U 2

3,

 

 

U 2

V1

2,

V3

3,

U3

2,

U 2

V2

3,

V4

1,

U 4

2.

V5

2.

U3

V2

2,

 

 

 

 

 

 

U3 V4 3,

U 4 V3 5,

U 4 V4 3.

16

2. Определяем характеристики для свободных неизвестных (пустых клеток) по формуле Eij = Cij – (Ui + Vj) и записываем их в левом нижнем углу свободных клеток. План будет оптимален, если для всех свободных

неизвестных Eij 0.

 

 

 

E11 = 4– (0–1) > 0,

E12

= 5 – (0–0) > 0, E13 = 3 – (0+1) = –2,

E14 = 7– (6–3) > 0,

E23

= 8– (3+3)

> 0, E24 = 7– (3+1)>0, E25 = 5– (3+2) = 0,

E31 = 4– (2–1) > 0,

E33

= 4– (2+3)

= –1, E35=6– (2+2)>0,

E41 = 6– (2–1) > 0,

E42

= 4– (2+0)

> 0, E45=5– (2+2)>0.

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

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

Для клетки А3В3 построим контур

А33 А34 А44 А43.

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

min 50,75 50.

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

Bj В1

В2

В3

В4

В5

 

Ui

Аi

50

100

125

75

 

50

 

A1

4

5

3

7

 

2

U1 = 0

100

4

4

50

6

 

50

 

A2

2

3

8

7

 

5

U2 = 2

50

50

0

3

4

3

 

 

A3

4

2

4

3

 

6

U3 = 1

150

3

100

50

1

3

 

 

A4

6

4

5

3

 

5

U4 = 2

100

4

1

25

75

1

 

 

Vj

V1 = 0

V2 = 1

V3 = 3

V4 = 1

V5 = 2

 

Так как все характеристики Eij

0, то план оптимален и zmin = 1 100.

 

17

Задачи для контрольных заданий №3

 

 

 

 

8

3

5

6

4

 

1.

ai

(210, 250, 200, 290)

C

5

10

4

8

7

 

b j

(150, 210, 170, 220, 200)

4

4

5

7

3

 

 

 

 

 

6

8

7

6

2 .

 

 

 

 

9

11

12

10

8

2.

ai

(270, 230, 250, 200)

C

12

14

8

12

7

b j

(170, 210, 200, 170, 200)

5

10

8

9

6

 

 

 

 

7

6

7

10

5 .

 

 

 

 

4

5

7

4

3

 

3.

ai

(250, 300, 200, 100)

C

9

8

10

6

4

 

b j

(120, 150, 230, 190, 160)

3

4

5

7

7

 

 

 

 

 

8

7

8

5

4 .

 

 

 

 

5

4

3

2

1

 

4.

ai

(300, 250, 150, 150)

C

2

8

7

5

2

 

b j

(145, 195, 180, 140, 190)

2

3

6

7

7

 

 

 

 

 

12

3

4

5

4 .

 

 

 

 

9

4

8

7

4

 

5.

ai

(100, 200, 200, 100)

C

7

7

3

9

6

 

b j

(190, 100, 130, 80, 100)

9

3

7

6

5

 

 

 

 

 

4

6

5

4

6 .

 

 

 

 

 

5

4

8

5

6

 

6.

ai

(150, 100, 150, 100)

C

4

6

2

3

5

 

b j

(100, 70, 130, 110, 90)

3

7

6

4

5

 

 

 

 

 

7

5

4

3

2 .

 

 

 

 

5

4

3

7

2

 

7.

ai

(150, 100, 75, 125)

C

5

2

4

7

3

 

b j

(90, 100, 75, 100, 85)

3

2

6

5

4

 

 

 

 

 

7

5

8

4

3 .

 

 

 

 

7

5

4

3

2

 

8.

ai

(90, 150, 75, 60)

 

4

3

8

7

6

 

b j

(100, 55, 125, 40, 55)

C

 

 

2

2

5

6

9

 

 

 

 

 

 

 

 

2

5

6

6

7 .

18

 

 

 

 

3

5

4

3

2

9.

ai

(80, 120, 120, 100)

C

7

4

3

2

3

b j

(95, 125, 40, 60, 100)

3

3

7

3

4

 

 

 

 

4

6

2

4

5 .

 

 

 

 

8

6

4

5

5

10.

ai

(200, 300, 250, 100)

C

4

6

6

5

3

b j

(150, 140, 115, 225, 220)

2

5

5

4

3

 

 

 

 

5

7

2

4

3 .

4. Сетевое планирование и управление. Расчёт основных показателей сетевого графика

Сети или сетевые модели имеют широкое практическое применение. Из всего разнообразия методов и моделей рассмотрим здесь лишь метод критического пути (МКП). Сеть в этом случае – это графическое отображение комплекса работ. Основными элементами сети здесь являются события и работы.

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

Работа – это протяжённый во времени процесс, необходимый для свершения события и, как правило, требующий затрат ресурсов.

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

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

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

 

Работа

1–2

1–3

1–4

2–5

3–4

3–6

4–5

4–6

 

4–7

 

Длительность

10

4

6

9

7

8

3

10

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Работа

5–8

6–7

6–9

7–8

7–10

7–9

 

8–10

 

 

9–10

 

Длительность

5

9

7

12

8

6

 

9

 

 

11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

19

Построим сетевой график так, чтобы все дуги работы были направлены слева направо (рис.2). Над дугами проставлены длительности работ.

Рис. 2. Сетевой график примера Критический путь представляет собой путь от начальной до конечной

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

Рассмотрим основные понятия, связанные с критическим путём.

Ранний срок наступления события (ЕТ). Он определяется для каждого события при движении по сети слева направо от начального к конечному событию. Для начального события ЕТ = 0. Для других определяется по формуле, где ЕТ1 – ранний срок наступления события i,

ET j

max ETi tij ,

 

i

предшествующего событию j; tij – продолжительность работы (ij).

Поздний срок наступления события (LТ) – это наиболее поздний срок, в который может наступить событие без задержки выполнения всего комплекса работ. Определяется он при движении по сети справа налево от конечного события к начальному по формуле

LTi

min LT j tij .

 

j

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

20

ET1

0.

 

ET2

ET1

t12

ET3

ET1

t13

ET4

max ET1

ET5

max ET2

ET6

max ET3

0

10

 

10.

 

 

 

 

0

4

4.

 

 

 

 

t14; ET3

 

t34

0

7;4

7

11.

t25; ET4

t45

10

9;11 3

19.

t36; ET4

t46

4

8;11

10

21.

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

сроки наступления событий.

 

 

 

Положить ЕТ10

= LT10.

 

 

 

LT9 = LT10 – t9,10

= 51 –11 = 40.

 

 

 

LT7

min LT8

t78; LT10

t7,10 ; LT9

7,9

42

12;51 8;40 6 30.

LT6

min LT7

t67; LT9

t69 30

9;40

7

21.

LT8 = LT10 – t89 = 51 – 9 = 42, и т.д.

Возможен и другой способ вычисления показателей – табличный. События отмечаются в квадратах "главной" диагонали. Работы

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

Порядок заполнения таблицы

1.Сначала заполняются числители верхних и нижних побочных квадратов. В них записываются продолжительности соответствующих работ.

2.Заполняются знаменатели верхних "побочных" квадратов как суммы числителя главного квадрата и числителя верхнего "побочного" в той же строке.

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

4.Знаменатель последнего главного квадрата принимается равным числителю этого квадрата. Знаменатели нижних "побочных" квадратов равны разности знаменателя главного и числителя "нижнего" побочного в той же строке.

5.Знаменатели главных квадратов равны минимуму знаменателей "нижних" побочных в том же столбце.

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