3548_matematicheskoe_programmirovanie
.pdf0 |
20 |
0 |
12 |
0 |
0 |
0 |
0 |
0 |
0 |
20 |
0 |
9 |
0 |
0 |
0 |
6 |
0 |
0 |
0 |
10 |
9 |
0 |
0 |
7 |
11 |
0 |
0 |
0 |
0 |
12 |
0 |
5 |
0 |
0 |
8 |
0 |
0 |
10 |
0 |
0 |
6 |
7 |
0 |
0 |
4 |
9 |
3 |
0 |
0 |
0 |
0 |
11 |
8 |
4 |
0 |
0 |
12 |
6 |
0 |
0 |
3 |
0 |
0 |
9 |
0 |
0 |
15 |
0 |
4 |
0 |
0 |
0 |
0 |
3 |
12 |
15 |
0 |
0 |
25 |
0 |
0 |
0 |
10 |
0 |
6 |
0 |
9 |
0 |
20 |
0 |
0 |
0 |
0 |
0 |
0 |
4 |
25 |
20 |
0 |
0 |
0 |
19 |
13 |
0 |
0 |
0 |
0 |
0 |
0 |
7 |
0 |
10 |
0 |
8 |
0 |
0 |
0 |
0 |
0 |
19 |
10 |
0 |
3 |
10 |
0 |
0 |
0 |
0 |
0 |
13 |
0 |
3 |
0 |
0 |
9 |
0 |
0 |
0 |
0 |
0 |
8 |
10 |
0 |
0 |
15 |
0 |
10 |
6 |
0 |
0 |
0 |
6 |
9 |
15 |
0 |
0 |
12 |
2 |
0 |
0 |
7 |
0 |
0 |
7 |
0 |
0 |
12 |
0 |
9 |
0 |
0 |
0 |
0 |
10 |
12 |
12 |
0 |
10 |
20 |
0 |
0 |
0 |
8 |
0 |
0 |
0 |
10 |
0 |
15 |
0 |
0 |
0 |
0 |
0 |
0 |
9 |
20 |
15 |
0 , |
0 |
12 |
19 |
0 |
0 |
0 |
0 |
0 |
0 |
0" |
12 |
0 |
10 |
0 |
4 |
0 |
0 |
0 |
0 |
0 |
19 |
10 |
0 |
9 |
0 |
10 |
0 |
0 |
0 |
0 |
6 |
0 |
9 |
0 |
0 |
12 |
0 |
0 |
10 |
0 |
0 |
4 |
6 |
0 |
0 |
10 |
2 |
9 |
0 |
0 |
0 |
0 |
10 |
12 |
10 |
0 |
0 |
12 |
10 |
0 |
0 |
9 |
0 |
0 |
9 |
0 |
0 |
5 |
0 |
10 |
0 |
0 |
0 |
0 |
2 |
0 |
0 |
9 |
0 |
0 |
0 |
0 |
0 |
10 |
0 |
10 |
0 |
12 |
0 |
20 |
0 |
0 |
0 |
0 |
0 |
0 5 9 20 |
о , |
40
0 |
7 |
13 |
15 |
0 |
0 |
0 |
0 |
0 |
0 |
7 |
0 |
10 |
0 |
0 |
0 |
12 |
0 |
0 |
0 |
13 |
10 |
0 |
12 |
3 |
6 |
0 |
0 |
0 |
0 |
15 |
0 |
12 |
0 |
0 |
7 |
0 |
0 |
8 |
0 |
0 |
0 |
3 |
0 |
0 |
4 |
8 |
8 |
0 |
0 |
10 |
0 |
6 |
7 |
4 |
0 |
0 |
0 |
3 |
0 |
0 |
|||||||||
0 |
12 |
0 |
0 |
8 |
0 |
0 |
0 |
0 |
2 |
0 |
0 |
0 |
0 |
2 |
10 |
9 |
9 |
7 |
12 |
0 |
0 |
0 |
8 |
0 |
3 |
0 |
0 |
0 |
25 |
0 |
0 |
0 |
0 |
0 |
0 |
2 |
2 |
25 |
0 |
Методические указания к решению задания
Тернарной операцией над матрицей IUJ |
по индексу к на- |
|
I I V Н и х |
/ ? |
|
зывается операция: |
|
|
dv ~ max(d:j,min( dlk,dk/)) для всех |
1ф j Ф к |
(17) |
Рассмотрим вспомогательную матрицу д = ||,-,|| элементы ко
торой |
= |
Одновременно с вьшолнением операции (17) |
||
изменяются элементы матрицы R по следующему правилу: |
||||
|
|
гу , |
если |
d у > m in(d lk,d kJ), |
|
гу — |
|
|
(18) |
|
rjk, |
если |
dy < m in (d ik,d kJ). |
Операции (17), (18) являются основой метода построения максимального потока в многополюсной сети. Опишем вначале алгоритм решения задачи, а затем приведем его обоснование.
Подготовительный этап. Для начальной потоковой матри
цы X - ||х„!' |
(как правило, на начало работы алгоритма |
II У!Ыхл |
|
Ху = 0, для всех i = \ , n , j = \,n ) формируем модифицированную
41
матрицу пропускных способностей |
D" =ld, II |
, полагая |
||
|
|
|
I! ^ 11«ко |
|
du = d v - x u, i , j = l,n. |
|
|
|
|
Общая итерация. Осуществляем тернарные операции (17) |
||||
и операции (18) над матрицей £>* =к*|| |
и |
R = ||г || |
последо- |
|
I I |
п х п 11 |
,J |
» |
|
вательно по всем индексам к = 1 , |
2 |
Если в полученной в |
результате матрице £>'=||<L max[mm(0„rf/,»,)] = (>• алг0' |
|
ie S |
1 |
jzT |
|
ритм заканчивает работу. В противном случае переходим к шагу 1.
Ш аг |
1 |
ш а х [т т (а ,Д ’,^.)] = [ш т(а;Д / , ^ ) ] = ^ > 0 - |
С |
по" |
|||
|
|
% т |
|
|
|
|
|
мощью |
вспомогательной |
матрицы R = /* | |
находим |
путь |
|||
|
|
|
II J IIпхп |
|
|
|
|
|
|
|
вдоль которого |
можно |
увеличить |
||
поток |
на |
максимально |
возможную величину |
81р. |
Здесь |
||
h = |
h |
= rhp, ц = ri2p, r |
ikp = p . Далее полагаем |
|
|
|
xy +d!p^xu ~ bip’^ j ) e L ip, Ху, в остальных случаях,
|
djj |
Sip ,d ij + ,{i, / ) s Llp, |
|
dy, в остальных случаях, |
|
||
al ^ |
ai - \ , b p ~ b p - b lp. |
(19) |
|
Для всех путей |
Lip, |
l e S , p e T , вычисляем |
величину |
5, - min (ah d i/ , b )-
(U)eLip
42
Если 8lp> 0, изменяем элементы потоковой матрицы X,
матрицы модифицированных пропускных способностей D* и мощностей at,i е S , b j , j е Т , по формулам (19).
Если д1р = О, то соответствующие элементы не изменяются.
Полагаем гу = j , i , j = 1,и и переходим к общей итерации.
Таким образом, в описанном алгоритме для отыскания уве личивающих путей используется не метод пометок, а тернар ные операции над матрицей пропускных способностей, что не требует графического представления сети. Однако, несмотря на простоту тернарных операций, их осуществление надо реа лизовать с помощью программы для ЭВМ. Решение задачи с помощью алгоритма Форда при большом количестве вершин в сети также практически невозможно без применения ЭВМ. Однако его программная реализация значительно сложнее.
43
ЛИТЕРАТУРА
1.Кузнецов, А.В. Математическое программирование / А.В. Кузнецов, Н.И. Холод. - Минск: Выш. шк., 1984.
2.Банди, Б. Основы линейного программирования / Б. Бан ди. - М.: Радио и связь, 1988.
3.Банди, Б. Методы оптимизации. Вводный курс / Б. Банди. - М.: Радио и связь, 1989.
4.Калихман, И.Л. Сборник задач по математическому про граммированию / И.Л. Калихман. - М.: Высш. шк., 1975.
5.Сборник задач и методические указания к решению за дач по математическому программированию / Е.В. Емеличева [и др.]. - Минск: БЕЛА, 1996.
6.Математические методы в технико-экономических зада чах / Н.Е. Гайков [и др.]. - Минск: БПИ, 1991.
44
С О Д Е Р Ж А Н И Е |
|
1. ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ |
.......3 |
Задание для самостоятельного решения.................................. |
3 |
Методические указания к решению задания......................... |
5 |
2. ТРАНСПОРТНАЯ ЗАДАЧА ЛИНЕЙНОГО |
|
ПРОГРАММИРОВАНИЯ................................................................ |
8 |
Задание для самостоятельного решения................................. |
8 |
Методические указания к решению задания........................ |
10 |
3. МАТРИЧНЫЕ И ГРЫ ............................................................ |
18 |
3.1. Упрощение матричной игры и решение |
|
в смешанных стратегиях................................................................. |
18 |
Задание для самостоятельного решения................................ |
18 |
Методические указания к решению задания....................... |
19 |
3.2. Игры с природой.................................................................. |
21 |
Задание для самостоятельного решения................................ |
21 |
Методические указания к решению задания....................... |
22 |
4. СЕТЕВОЕ ПЛАНИРОВАНИЕ............................................. |
24 |
Задание для самостоятельного решения................................ |
24 |
Методические указания к решению задания....................... |
25 |
5. ЗАДАЧА О МАКСИМАЛЬНОМ ПОТОКЕ В СЕТИ .... |
32 |
Задание для самостоятельного решения................................. |
|
5.1. Алгоритм Форда - построения |
|
максимального потока в сети ........................................................ |
56 |
Методические указания к решению задания....................... |
32 |
5.2. Решение задачи о максимальном |
|
потоке с помощью ЭВМ................................................................. |
37 |
Методические указания к решению задания....................... |
41 |
Литература.................................................................................... |
44 |
Учебное издание
МАТЕМАТИЧЕСКОЕ
ПРОГРАММИРОВАНИЕ
Методические указания и задания к практическим занятиям
для студентов экономических специальностей
С о с т а в и т е л и : КОРЗНИКОВ Александр Дмитриевич
ПАВЛОВ Валерий Валентинович
Редактор И.Ю. Никитенко
_______Компьютерная верстка Д.К. Измаилович Подписано в печать 20.04.2009.
Формат 60х841/]6. Бумага офсетная. Отпечатано на ризографе. Гарнитура Таймс.
Уел, печ. л. 2,67. Уч.-изд. л. 2,09. Тираж 250. Заказ 2. Издатель и полиграфическое исполнение:
Белорусский национальный технический университет. ЛИ№ 02330/0494349 от 16.03.2009.
Проспект Независимости, 65. 220013, Минск.