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

Экономико-математические методы и модели. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
Критический путь (в новых обозначениях),
B2 B1
B4 B3
B8
B11 B10
B13 B14 B15
B5 B6
A7 A3 A15
A14 A10
A4 A13
A9 A11
A8
A12 A2
Критический путь (в исходных обозначениях).
2.3. Задача сетевого планирования с перераспределением ресурсов
Пусть имеется комплекс работ А1, А2, ... Ап. Выполнение работ требует неко­торых ресурсов или затрат. Будем полагать, что возможно перераспределение ресурсов между работами. Время выполнения работы зависит от количества вложенных в неё ресурсов. Наиболее простая зависимость – линейная. В этом случае задача может быть решена средствами линейного программирования. Рассмотрим ее решение на простом примере.
Пусть имеются три работы А1, А2 и А3 , причем работа А3 опирается на А1 и
А2. Если работы А1 и А
продолжаются одинаковое количество времени, то
2
имеются два критических пути А1 А3 и А2  А3. Если же одна из этих работ завершается позже другой, то она является критической, а другая работа крити­ческой не является. Будем полагать, что выполнение работы А2 требует больше-
го количества времени, чем А1. Критический путь в этом случае А2 А3. По­скольку работа А1 не критическая, часть средств мы можем перебросить с этой работы на работы А2 и А3. В результате этого время выполнения работы А2 и А3 сократится, что может сократить время выполнения всех работ.
Пусть время выполнения работ линейно зависит от количества средств, ко­торые снимаются с А1 или вкладываются в А2 и А3. Обозначим ti – время выпол­нения работы Аi, xi – количество снятых или добавленных средств к работе Аi,
i – некоторый коэффициент пропорциональности, bi – максимальное количе-
51
ство средств, которые могут быть сняты или добавлены (i = 1, 2, 3). Зависимо-
),1(
11
0
11
xtt
),1(
22
0
22
xtt
),1(
33
0
33
xtt
0
i
t
).1())1(),1(max(),max(
33
0
322
0
211
0
1321
xtxtxttttT
кр
),1()1(
22
0
211
0
1
xtxt
);1()1(
33
0
311
0
1
xtxtT
кр
),1()1(
22
0
211
0
1
xtxt
).1()1(
33
0
322
0
2
xtxtT
кр
сти времени выполнения работ имеют вид:
где
0 x1  b
0 x2 b
0 x
3
– время выполнения работы без изменения вложенных средств.
b
1
2
3
(
<1),
1b1
(
2b2
(
3b3
<1),
<1),
Критическое время выполнения всех работ находится по формуле
Ставится задача: найти минимальное время Tкр при ограничениях
0 x1  b1, 0 x2 b2, 0 x
может быть записано как 0 x2 + x3 b1.
b3 . Так как x1 = x2 + x3 , первое ограничение
3
Так как Tкр не является линейной функцией, задача не является задачей ли­нейного программирования. Однако мы можем свести эту задачу к двум зада­чам с линейными функциями:
1) если
2) если
то
то
В обоих случаях функции Tкр являются линейными и условия на продолжи­тельности времени выполнения работ А1 и А
также будут линейными. Таким
2
образом, возникает задача линейного программирования и так как число неза­висимых переменных равно двум, она может быть решена геометрически.
Пример.
t1 = 15 (1 + 0,02x1), 0 x1  45,
t2 = 25 (1 0,02x2), 0 x2 35,
t3 = 35 (1 0,01x3), 0 x Так как x1 = x2 + x3, t1 = 15 (1 + 0,02x2 + 0,02x3), 0 x2 + x Tкр = max (15 + 0,3x2 + 0,3x3; 25 0,5x2) + 35 0,35x
20.
3
3
min.
3
45,
52
Рассмотрим два случая:
 
 
.20
,35
,10038
,45
3
2
32
32
x
x
xx
xx
)05,0;3,0(
1
n
)1;6(1n
.10038
,20
32
3
xx
x
.5,502005,053,050)( BT
кр
O
x2
C
D
A
8x
2
+ 3x
3 =
100
x
2
+ x
3 =
45
x3 = 20
B E F
x2 = 35
1) 15 + 0,3x2 + 0,3x
25 0,5x2, 8x2 + 3x
3 
3 
100.
Tкр = 15 + 0,3x2 + 0,3x3 + 35 0,35x3 = 50 + 0,3x2  0,05x
x2 0, x3 0.
min.
3
Область допустимых решений – пятиугольник ABCDE. Вектор градиента
, и, поскольку мы исследуем функцию на минимум, рассмотрим
. Получаем, что последняя точка пересечения с ОДР – точка B.
Находим её координаты.
Получаем B (5; 20) и
2) 15 + 0,3x2 + 0,3x Tкр = 25 0,5x2 + 35 0,35x3 = 60 0,5x2 0,35x3  min.
25 0,5x2, 8x2 + 3x
3 
53
3 
100.
Получаем ОДР – четырехугольник OFBA,
)35,0;5,0(
2
n
)7;10(2n
.5,502035,055,060)( BT
кр
5,50
кр
T
.20,5
32
xx
.
0
кр
T
.
0
0 кр
TT
,0T
k
iii
AAA ...
21
,
0
кр
T
0
0 кр
TT
),1(
1111
0
iiii
xtt
),1(
0
jjjj
iiii
xtt
).1(
0
kkkk
iiii
xtt
j
i
t
. Находим последнюю точку пересечения с ОДР – точку B.
, можно взять
Таким образом
при
2.4. Задача сетевого планирования с вложением средств
Пусть имеется комплекс работ А1, А2, …, Аn и некоторое количество средств,
которые могут быть вложены в эти работы. Известно критическое время вы­полнения всех работ, если средства в них не вкладываются и зависимость вре­мени выполнения работ от вложенных средств. Пусть критическое время, если
средства не вкладываются, равно
нимального количества средств снизить это время до
Необходимо с помощью вложения ми-
Другими слова-
ми, требуется определить какие количества средств необходимо вложить в определенные виды работ так, чтобы время критическое выполнения работ не превосходило
а общее количество средств было минимальным. Если зави-
симость времени выполнения работы от количества вложенных средств линей­ная, то мы получаем задачу линейного программирования, которая может быть решена симплекс-методом. Если зависимость не является линейной, то задача решается другими методами. При решении такой задачи возможны два случая:
1) при вложении средств критический путь не изменится. В этом случае до-
статочно рассмотреть вложения средств только в критические работы;
2) при вложении средств критический путь может измениться. В этом слу-
чае вложения средств могут быть сделаны во все работы.
Рассмотрим решение задачи в первом случае. Пусть известен критический путь
если средства не вкладываются. Дано
и линейные зависимости
и критическое время
времени выполнения критических работ от количества вложенных средств
…,
…,
Здесь
– вре-
54
мя выполнения работы после вложения в нее средств;
0
j
i
t
j
i
j
i
x
,0
11
ii
bx
,0
jj
ii
bx
.0
kk
ii
bx
....)1(...)1(...
00000
1111111 kkkkkkk
iiiiiiкрiiiiiiiiкр
txtxTxtxtttT
....
1 k
ii
xxL
min,...
1
k
ii
xxL
 
 
.
...
,
,...
0
000
111
kk
kk
kkk
ii
ii
iiiiiiкр
bx
bx
TtxtxT
.0...,,0
1
k
ii
xx
Работы
А
1
А
2
А
3
А
4
А
5
А
6
А
7
Опираются на
А
1
А
2
А
1
А
2
А
3
А
4
А
3
А
4
А
5
А
6
Время
20
10 7 15 8 18
12
Общее время
20
10
27
35
43
53
65
.60
0
T
.
7641
AAAA
),01,01(20
11
xt
),03,01(15
44
xt
),02,01(18
66
xt
),02,01(12
77
xt
,10
1
x
,20
4
x
,15
6
x
.10
7
x
– время выполнения
работы без вложения средств;
– некоторый коэффициент;
– количество
вложенных средств. При этом количество средств, которые могут быть вложе­ны в работу, ограничено:
…,
…,
Поскольку в нашем случае критический путь не меняется, критическое вре-
мя находится по формуле
Количество вложенных средств определяется по формуле
Тогда задача принимает вид:
Получаем задачу линейного программирования. Рассмотрим пример реше-
ния такой задачи симплекс-методом.
Пример.
Задано
Заметим, что критический путь
Также
заданы зависимости времени выполнения критических работ и ограничения на вкладываемые средства
55
Ограничение на требуемое время
.6024,036,045,02,065
7641
xxxx
,524,036,045,02,0
7641
xxxx
,50024364520
7641
xxxx
min,
7641
xxxxL
.10
,15
,20
,10
,50024364520
7
6
4
1
7641
x
x
x
x
xxxx
.0,0,0,0
7641
xxxx
C x1
x4
x6
x7
L 0 –1
–1
–1
–1
y1
–500
–20
–45
–36
–24
y2
10 1 0 0 0
y3
20 0 1 0 0
y4
15 0 0 1 0
y5
10 0 0 0 1
Преобразуем это неравенство.
Окончательно получаем следующую задачу.
Запишем данные в симплекс-таблицу.
Выберем разрешающий элемент –45 и сделаем пересчет таблицы. Получаем
следующую симплекс-таблицу.
56
C x1
y1
x6
x7
L
9
100
9
5
45
7
5
1
15
7
x4
9
100
9
4
45
1
5
4
15
8
y2
10 1 0 0 0
y3
9
80
9
4
45
1
5
4
15
8
y4
15 0 0 1 0
y5
10 0 0 0 1
Оптимальный план найден.
9
100
L
.0,0,
9
100
,0
7641
xxxx
9
100
)02,01(12)02,01(18)03,01(15)01,01(20
7641
xxxxT
кр
.601218
9
100
03,011520
 
 
n
xxL ...
1
i
z
i
z
i
z
i
A
i
z
i
A
i
A
j
A
при
Таким образом, в работу A4 надо вложить
единиц средств. При этом
В случае, когда критический путь может измениться, задача также может
быть решена симплекс-методом, но с гораздо большим числом переменных и ограничений.
Пусть имеются работы А1 , А2 , …, An и некоторые условия их выполнения.
Так как критический путь неизвестен, необходимо знать зависимости времени выполнения каждой от количества вложенных средств.
Тогда целевая функция имеет вид
Введём переменные
и
, где
– время начала работы
и исследуется на минимум.
время завер-
,
шения работы
. Для каждого условия связи (
57
опирается на
) возникает
ограничение
.jizz
i
A
.0Tzi
i
A
.0
i
z
i
A
).1(
0
iiiii
xtzz
;200),02,01(12
111
xxt
;300),01,01(15
212
xxt
;100),01,01(10
333
xxt
.200),03,01(15
444
xxt
.24
0
T
.301515
;2,7)2002,01(12
1
t
;5,10
2
t
;93t
;64t
.5,19
кр
T
,020
11
xy
,030
22
xy
,010
33
xy
.020
44
xy
,24)01,01(10
33
xz
01,014
335
xzy
,24)03,01(15
44
xz
.045,09
446
xzy
Для работ
, на которые не опираются другие работы,
вводим ограничения
то получаем равенство
ограничение типа равенства
Если работа
не опирается ни на какие работы,
Кроме того, для каждой работы
Рассмотрим решение такой
получаем
задачи на примере.
Пример.
Пусть имеется комплекс из четырех работ А1, А2, А3, А4. Работа А3 опирается
на А1 и А2, работа А4 также опирается на А1 и А2. Зависимости времени выпол­нения работ от количества вложенных средств имеет следующий вид:
Задано необходимое время выполнения комплекса работ
Требуется
найти способ минимального вложения средств, при котором это условие будет выполнено.
Заметим, что критическое время без вложения средств равно
Найдём время выполнения работ и критическое время при максимальном вло­жении средств. Получаем
Следовательно, необходимое время выполнения комплекса работ
может быть достигнуто.
Введём переменные для максимального количества вкладываемых средств,
Обозначим z3 – время начала работы A3, z4 – время начала работы A4. Преоб-
разуем ограничения на завершения последних работ и введём дополнительные переменные. Получаем
и
58
Ограничения связей, которые обусловлены тем, что А3 и А4 опираются на А1
,13zz ,14zz ,23zz
.24zz
01z
,02z
),02,01(12
13
xz
),02,01(12
14
xz
),01,01(15
23
xz
).01,01(15
24
xz
024,012
137
xzy
148
24,012 xzy
0
015,015
239
xzy
2410
15,015 xzy
0
434321
,,,,, zzxxxx
min,
4321
xxxxL
,020
11
xy
22
30 xy
,0
010
33
xy
020
44
xy
01,014
335
xzy
045,09
446
xzy
024,012
137
xzy
148
24,012 xzy
0
015,015
239
xzy
2410
15,015 xzy
0
.0,0,0,0,0,0
434321
zzxxxx
C x1
x2 x3 x4 z3 z
4
L 0 –1
–1
–1
–1 0 0
y1 20 1 0 0 0 0 0
y2 30 0 1 0 0 0 0
y3 10 0 0 1 0 0 0
y4 20 0 0 0 1 0 0
y5 140 0 0
–1 0 10
0
y6 180 0 0 0 –9 0 20
y
7
–300
–6 0 0
0
–25
0
y8 –300
–6 0 0 0 0
–25
y9 –300
0
–3 0 0
–20
0
y
10
–300
0
–3 0 0 0 –20
и А2, имеют вид:
и
получаем неравенства
Вводим для них неотрицательные допол-
нительные переменные
,
Таким образом, получаем 6 переменных
ний. Задача принимает вид
ничений
,
,
условий неотрицательности
Отсюда, учитывая, что
,
,
.
и 10 ограниче-
при выполнении огра-
,
,
,
,
,
и
Составим симплекс-таблицу и найдём решение задачи.
Здесь и далее разрешающие элементы в таблицах обведены.
59
С
x1 x2 x3 x4 y7 z4 L 0 –1
–1
–1
–1 0 0
y1 20 1 0 0 0 0 0
y2 30 0 1 0 0 0 0
y3 10 0 0 1 0 0 0
y4
20 0 0 0 1 0 0
y5 20
512
0
–1
0
52
0
y
6
180 0 0 0 –9
0
20
z3 12
256
0 0 0
251
0
y8 –300
–6 0 0 0 0
–25
y9 –60
524
–3 0 0
54
0
y
10
–300
0
–3 0 0 0 –20 C x1 x2 x3 x4 y7 y6 L 0 –1
–1
–1
–1 0 0
y1 20 1 0 0 0 0 0
y2 30 0 1 0 0 0 0
y3 10 0 0 1 0 0 0
y4 20 0 0 0 1 0 0
y5 20
512
0
–1
0
52
0
z4 9 0 0
0
209
0
201
z3 12
256
0 0 0
251
0
y8 –75
–6 0 0
445
0
45
y
9
–60
524
–3
0
0
54
0
y
10
–120
0
–3 0 –9 0 1
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]