
- •Содержание
- •1. Линейная производственная задача 3
- •1. Линейная производственная задача
- •2. Двойственная задача
- •Задача о "расшивке узких мест производства"
- •3. Транспортная задача линейного программирования
- •4. Динамическое программирование. Распределение капитальных вложений
- •Т аблица 2
- •5. Анализ доходности и риска финансовых операций
- •6. Матричная игра как модель конкуренции и сотрудничества
- •7. Задача о кратчайшем пути
- •8. Задача о максимальном потоке в сети
Задача о "расшивке узких мест производства"
При выполнении оптимальной производственной программы второй и третий ресурсы используются полностью, т.е. образуют узкие места производства. Будем их заказывать дополнительно. Пусть T (t1, t2, t3) – вектор дополнительных объемов ресурсов. Так как мы будем использовать найденные двойственные оценки ресурсов, то должно выполняться условие:
H + Q -1T 0.
Задача состоит в том, чтобы найти вектор T (0, t2, t3), максимизирующий суммарный прирост прибыли
W = 8t2 + 2t3 (1)
при условии сохранения двойственных оценок ресурсов (и, следовательно, структуры производственной программы)
(2)
предполагая, что можно надеяться получить дополнительно не более 1/3 первоначального объема ресурса каждого вида
t
1
316
0 <=1/3* 216 (3)
t3 199
По смыслу задачи t1 0, t3 0
2
8
+ 1/28*t1
0
7 - 4/7*t1 - 1/7*t3 0
23 –3/28*t1 + 2/7 t3 0
t1 316/3
t3 199/3
t
1
-784
4/7*t1 + 1/7*t3 7
–3/28*t1 + 2/7 t3 23
t1 316/3
t3 199/3
t1 0, t3 0
y3
Grad W = (4;3)
A(0;49)
y1
Находим координаты точки А(t1,t2). t1 = 0, t2 =49, и прирост прибыли составляет 0*4+49*3=147 рублей.
cj |
31 |
14 |
25 |
50 |
b |
x4+i |
yi |
ti |
|
||
aij |
4 |
0 |
8 |
7 |
316 |
0 |
-3/28 |
0 |
|
||
3 |
2 |
5 |
1 |
216 |
7 |
0 |
49 |
|
|||
5 |
6 |
3 |
7 |
199 |
0 |
2/7 |
0 |
|
|||
xj |
23 |
0 |
28 |
0 |
1861 |
|
147 |
|
|||
j |
0 |
8 |
0 |
20 |
|
|
|
|
|
|
3. Транспортная задача линейного программирования
Транспортная задача формулируется следующим образом. Однородный продукт, сосредоточенный в m пунктах производства (хранения) в количествах а1, а2, ... аm единиц, необходимо распределить между n пунктами потребления, которым необходимо соответственно b1, b2, ... bn единиц. Стоимость перевозки единицы продукта из i-го пункта отправления в j-ый пункт назначения равна сij и известна для всех маршрутов. Необходимо составить план перевозок, при котором запросы всех пунктов потребления были бы удовлетворены за счет имеющихся продуктов в пунктах производства и общие транспортные расходы по доставке продуктов были минимальными.
Для решения транспортной задачи чаще всего применяется метод потенциалов.
Пусть исходные данные задачи имеют вид:
2 3 4 1
А(40, 60, 70) В (36; 32; 40; 53); С = 4 2 1 2
2 7 7 1
Общий объем производства а i = 40+60+70 = 170; требуется всем потребителям bi = 36+32+40+53 = 161, т.е. имеем открытую модель транспортной задачи. Для превращения ее в закрытую вводим фиктивный пункт потребления с объемом потребления 170-161 = 9 единиц, причем тарифы на перевозку в этот пункт условимся считать равными нулю, помня, что переменные, добавляемые к левым частям неравенств для превращения их в уравнения, входят в функцию цели с нулевыми коэффициентами.
Первое базисное допустимое решение легко построить по правилу северо-западного угла.
|
b1 = 36 |
b2 = 32 |
b3 = 40 |
b4 = 53 |
b5 = 9 |
|
|
|
Производство |
|
|
|
|
|
|
|
|
а1 = 40 |
36 |
4 |
|
|
* |
p1 =0 |
||
a2 = 60 |
|
28 |
32 |
|
|
p2 |
||
|
|
|
8 |
53 |
9 |
p3 |
||
|
q1 |
q2 |
q3 |
q4 |
q5 |
|
Следует иметь в виду, что по любой транспортной таблице можно восстановить соответствующий предпочитаемый эквивалент системы уравнений, в таблице записаны лишь правые части уравнений, причем номер клетки показывает, какая неизвестная в соответствующем уравнении является базисной. В любой транспортной таблице должно быть m + n - 1 занятых клеток.
Обозначим
через
)
вектор симплексных множителей или
потенциалов. Тогда ij
= Aij
- сij
i = 1,m; j = 1,n
откуда следует
ij = pi + qj - cij i = 1,m; j = 1,n
Один
из потенциалов можно выбрать произвольно.
Положим, что р1
= 0. Остальные потенциалы находим из
условия, что для базисных клеток
.
В данном случае получаем
11 = 0, p1 + q1 - c11 = 0, 0 + q1 - 2 = 0, q1 = 2
12 = 0, p1 + q2 - c12 = 0, 0 + q2 -3 = 0, q2 = 3
22 = 0, p2 + q2 - c22 = 0, р2 +3 - 2 = 0, р2 = 1
23 = 0, p2 + q3 – c23 = 0, 1 + q3 - 1 = 0, q3 = 0
33 = 0, p3 + q3 – c33 = 0, р3 + 0 - 7 = 0, p3 = 7
34 = 0, p3 + q4 – c34 = 0, 7 + q4 - 1 = 0, q4 = 6
35 = 0, p3 + q5 – c35 = 0, 7 + q5 - 0 = 0, q5 = -7
З атем по формуле
ij = pi + qj - cij i = 1, m; j = 1, n
вычисляем оценки всех свободных клеток:
21 = p2 + q1 - c21 = 1 + 2 - 2 = 1
31 = p3 + q1 - c31 = 7 + 2 - 2 = 7
32 = p3 + q2 - c32 = 7 + 3 - 7 = 3
13 = p1 + q3 – c13 = 0 + 0 - 4 = -4
14 = p1 + q4 – c14 = 0 + 6 - 1 = 5
24 = p2 + q4 – c24 = 1 + 6 - 2 = 5
15 = p1 + q5 – c15 = 0 - 7 - 0 = -7
25 = p2 + q5 – c25 = 1 - 7 - 0 = -6
Находим наибольшую положительную оценку
max
(
)
= 7 =
Для найденной свободной клетки 31 строим цикл пересчета - замкнутую ломаную линию, соседние звенья которой взаимно перпендикулярны, сами звенья параллельны строкам и столбцам таблицы, одна из вершин находится в данной свободной клетке, а все остальные - в занятых клетках. Это будет 31-11-12-22-23-33. Производим перераспределение поставок вдоль цикла пересчета
36 |
4 |
|
|
36- |
4+ |
|
|
28 |
12 |
|
|
28 |
32 |
|
|
8- |
32+ |
|
|
20 |
40 |
|
|
8 |
|
|
|
8- |
|
8 |
|
|
MAX = 8
Получаем второе базисное допустимое решение:
Потребление |
b1 = 36 |
b2 = 32 |
b3 = 40 |
b4 = 53 |
b5 = 9 |
|
|
|
Производство |
|
|
|
|
|
|
|
|
а1 = 40 |
28 |
12 |
|
|
* |
p1 =0 |
||
a2 = 60 |
|
20 |
40 |
|
|
p2 |
||
a3 = 70 |
8 |
|
|
53 |
9 |
p3 |
||
|
q1 |
q2 |
q3 |
q4 |
q5 |
|
Находим новые потенциалы, новые оценки.
11 = 0, p1 + q1 – c11 = 0, 0 + q1 – 2 = 0, q1 = 2
12 = 0, p1 + q2 – c12 = 0, 0 + q2 – 3 = 0, q2 = 3
22 = 0, p2 + q2 – c22 = 0, р2 + 3 – 2 = 0, р2 = 1
23 = 0, p2 + q3 – c23 = 0, 1 + q3 – 1= 0, q3 = 0
33 = 0, p3 + q3 – c33 = 0, р3 + 0 – 7 = 0, p3 = 7
34 = 0, p3 + q4 – c34 = 0, 7 + q4 - 1 = 0, q4 =-6
15 = 0, p1 + q5 – c15 = 0, 0 + q5 - 0 = 0, q5 = 0
21 = p2 + q1 - c21 = 1 + 2 – 4 = -1
31 = p3 + q1 - c31 = 7 + 2 – 2 = 7
32 = p3 + q2 - c32 = 7 + 3 – 7 = 3
13 = p1 + q3 – c13 = 0 + 0 – 4 = -4
14 = p1 + q4 – c14 = 0 - 6 – 1 = -7
24 = p2 + q4 – c24 = 1 - 6 – 2 = -7
25 = p2 + q5 – c25 = 1 + 0 – 0 = 1
35 = p3 + q5 – c35 = 7 + 0 – 0 = 7
Находим наибольшую положительную оценку
max ( ) = 7 =
Для найденной свободной клетки 31 строим цикл пересчета 11-31-14-34. Производим перераспределение поставок вдоль цикла пересчета
28 |
|
|
28- |
|
|
|
28 |
8 |
53 |
|
8+ |
53- |
|
36 |
25 |
MAX = 28
Потребление |
b1 = 36 |
b2 = 32 |
b3 = 40 |
b4 = 53 |
b5 = 9 |
|
|
|
|
Производство |
|
|
|
|
|
|
|
|
|
а1 = 40 |
|
12 |
|
28 |
* |
p1 =0 |
|||
a2 = 60 |
|
20 |
40 |
|
|
p2 |
|||
a3 = 70 |
36 |
|
|
25 |
9 |
p3 |
|||
|
q1 |
q2 |
q3 |
q4 |
q5 |
|
Находим новые потенциалы, новые оценки.
11 = 0, p1 + q1 – c11 = 0, 0 + q1 – 2 = 0, q1 = 2
12 = 0, p1 + q2 – c12 = 0, 0 + q2 – 3 = 0, q2 = 3
22 = 0, p2 + q2 – c22 = 0, р2 + 3 – 2 = 0, р2 = 1
24 = 0, p2 + q4 – c24 = 0, 1 + q4 – 2 = 0, q4 = 1
34 = 0, p3 + q4 – c34 = 0, p3 + 1 - 1 = 0, p3 = 0
33 = 0, p3 + q3 – c33 = 0, 0 + q3 – 7 = 0, q3 = 7
15 = 0, p1 + q5 – c15 = 0, 0 + q5 - 0 = 0, q5 = 0
21 = p2 + q1 - c21 = 1 + 2 – 4 = -1
31 = p3 + q1 - c31 = -2 + 2 – 2 = -2
32 = p3 + q2 - c32 = 0 + 3 – 7 = -4
13 = p1 + q3 – c13 = 0 + 7 – 4 = -3
14 = p1 + q4 – c14 = 0 - 1 – 1 = -2
23 = p2 + q3 – c23 = 1 + 7 – 1 = -7
25 = p2 + q5 – c25 = -3 + 0 – 0 = -3
35 = p3 + q5 – c35 = 0 + 0 – 0 = 0
Я получил таблицу, для которой все ij 0 i = 1,m; j = 1,n
Оценки удовлетворяют условию оптимальности, следовательно решение
оптимально.