
- •Пример решения задачи № 5
- •Цели задачи а)
- •Решение задачи а)
- •Цели задачи б)
- •Решение задачи б)
- •Пример решения задачи № 2
- •Краткое описание этапов решения задачи.
- •Подробное описание этапов решения задачи.
- •Пример решения задачи № 3
- •Пример решения задачи № 6
- •Пример решения задачи № 4
- •Метод моди
- •Расчет потенциалов (для загруженных связей!)
- •Расчет оценочных параметров (для незагруженных связей!)
- •Перераспределение поставок (по правилу контура)
Пример решения задачи № 5
Решить однопродуктовую задачу динамического программирования на минимум или на максимум (в зависимости от условия задачи):
а) Задача на минимум |
б) Задача на максимум |
||||
Необходимо распределить ресурс общим объемом Xo=60 ед. по 4-м планируемым вариантам таким образом, чтобы получить минимальные суммарные затраты. Возможные объемы распределения ресурса по вариантам и возникающие при этом затраты Fi(Xi) представлены в таблице ниже: |
Необходимо распределить ресурс общим объемом Xo=60 ед. по 4-м планируемым вариантам таким образом, чтобы получить максимальный эффект. Возможные объемы распределения ресурса по вариантам и соответствующие эффекты Fi(Xi) представлены в таблице: |
||||
|
|
||||
Вариант |
Fi(Xi) при распределении ресурса Хo по вариантам |
||||
i |
Х=0 |
Х=20 |
Х=40 |
Х=60 |
|
1 |
0 |
5 |
9 |
16 |
|
2 |
0 |
6 |
10 |
17 |
|
3 |
0 |
5 |
11 |
17 |
|
4 |
0 |
7 |
10 |
18 |
а) Целевая функция для получения минимальных затрат определяется по формуле:
Zi(Xi) = Fi(Xi) + Fi-1*(Xci-Xi) → min (5.1-а)
б) Целевая функция для получения максимального эффекта определяется по формуле:
Zi(Xi) = Fi(Xi) + Fi-1*(Xci-Xi) → max (5.1-б)
где Fi(Xi) - затраты (или эффекты) при распределении ресурса по i-му варианту;
Fi-1*(Xci-Xi) - минимальные затраты (или максимальные эффекты) при
распределении ресурса по предыдущим вариантам;
Xci - объем ресурса по всем предыдущим вариантам, включая i-й.
Xci<= Xо , Xci>=0
Xi<=Xo, Xi>=0
Цели задачи а)
1) определить общие минимальные затраты от распределения ресурса Хо;
2) вычислить, по сколько единиц груза целесообразно распределять на каждом из 4-х этапов, чтобы получить в конечном итоге минимальные затраты от распределения всего объема ресурса.
Решение задачи а)
Поиск решения будет осуществляться по формуле (5.1-а), указанной выше. По каждому варианту следует рассчитать отдельные составляющие этой формулы: Xci, Xi, Fi(Xi), Fi-1*(Xci-Xi), затем подставить их в саму формулу: Fi(Xi) +
+ Fi-1*(Xci-Xi), а в заключении выбрать минимальные (оптимальные) затраты по каждому объему ресурса - Fi*(Xi). Эти выше описанные действия необходимо произвести в отдельности по каждому варианту использования ресурса.
Для 1-го варианта распределения ресурса (i=1) не производится расчет для определения минимальных затрат F1*(Х1), поскольку для начального этапа невозможно сделать предварительный анализ по предыдущим вариантам, поэтому минимальные затраты для этого варианта совпадают с исходными (см. 1-ю строку таблицы исходных данных). i=1
Xc1=X1 |
20 |
40 |
60 |
F1*(Х1) |
5 |
9 |
16 |
Расчет начинается сразу для второго варианта (i=2). Для удобства расчета в таблицу построчно заносятся составляющие формулы (5.1-a):
- в 1-й строке записывается объем ресурса Xc2 (т.е. объем ресурса по предыдущему и текущему вариантам - 1-му и 2-му);
- во 2-й строке – объем ресурса по 2-му варианту X2;
- в 3-й строке – затраты при распределении ресурса X2 по 2-му варианту - F2(X2) (см. таблицу исходных данных):
i=2
Xc2 |
20 |
40 |
60 |
||||||||
X2 |
0 |
20 |
0 |
20 |
40 |
0 |
20 |
40 |
60 |
||
F2(X2) |
0 |
6 |
0 |
6 |
10 |
0 |
6 |
10 |
17 |
- в 4-й строке (Xc2-X2) рассчитывается разность двух предыдущих строк: например, для первой по счету клетки имеем: Xc2=20 ед., X2=0 ед. Тогда Xc2 - -X2=20-0=20. В таблицу можно занести только конечный результат (20), не включая сами расчеты (20-0=).
i=2
Xc2 |
20 |
40 |
60 |
||||||
X2 |
0 |
20 |
0 |
20 |
40 |
0 |
20 |
40 |
60 |
F2(X2) |
0 |
6 |
0 |
6 |
10 |
0 |
6 |
10 |
17 |
Xc2-X2 |
20-0=20 |
20-20=0 |
40-0=40 |
40-20= =20 |
40-40=0 |
60-0=60 |
60-20= =40 |
60-40= =20 |
60-60= =0 |
- в 5-й строке (F1*(Xc2-X2)) записываются оптимальные (минимальные) затраты по предыдущему, 1-му, варианту. Примечание: поскольку для 1-го варианта не делался предварительный анализ по предыдущим вариантам, то здесь оптимальные затраты совпадают с исходными затратами. Для первой клетки имеем: Xc2-X2=20, F1*(Xc2-X2)=F1*(20), т.е. это затраты при распределении ресурса Х1=20 ед. по 1-му варианту (см. 1-ю строку таблицы исходных данных - 5 у.е.).
i=2
Xc2 |
20 |
40 |
60 |
||||||||
X2 |
0 |
20 |
0 |
20 |
40 |
0 |
20 |
40 |
60 |
||
F2(X2) |
0 |
6 |
0 |
6 |
10 |
0 |
6 |
10 |
17 |
||
Xc2-X2 |
20-0=20 |
20-20=0 |
40-0=40 |
40-20=20 |
40-40=0 |
60-0=60 |
60-20=40 |
60-40=20 |
60-60=0 |
||
F1*(Xc2--X2) |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(60)= =16 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)==0
|
- в 6-й строке записывается формула (5.1-а): F2(X2)+F1*(Xc2-X2), т.е. сумма 3-й и 5-й строк таблицы:
i=2
Xc2 |
20 |
40 |
60 |
|||||||||||
X2 |
0 |
20 |
0 |
20 |
40 |
0 |
20 |
40 |
60 |
|||||
F2(X2) |
0 |
6 |
0 |
6 |
10 |
0 |
6 |
10 |
17 |
|||||
Xc2-X2 |
20-0=20 |
20-20=0 |
40-0=40 |
40-20=20 |
40-40=0 |
60-0=60 |
60-20=40 |
60- -40=20 |
60-60=0 |
|||||
F1*(Xc2--X2) |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(60)= =16 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0 |
|||||
F2(X2)+ +F1* |
0+5=5 |
6+0=6 |
0+9=9 |
6+5=11 |
10+0=10 |
0+16=16 |
6+9=15 |
10+5=15 |
17+0= =17 |
- в 7-й строке выбираются оптимальные (минимальные) затраты по каждому варианту распределения ресурса Xc2 - F2*(X2):
i=2
Xc2 |
20 |
40 |
60 |
|||||||||||
X2 |
0 |
20 |
0 |
20 |
40 |
0 |
20 |
40 |
60 |
|||||
F2(X2) |
0 |
6 |
0 |
6 |
10 |
0 |
6 |
10 |
17 |
|||||
Xc2-X2 |
20-0=20 |
20-20=0 |
40-0=40 |
40-20=20 |
40-40=0 |
60-0=60 |
60-20=40 |
60- -40=20 |
60-60=0 |
|||||
F1*(Xc2-X2) |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(60)= =16 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)==0
|
|||||
F1*(Xc2--X2) |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(60)= =16 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0
|
|||||
F2(X2)+ +F1* |
0+5=5 |
6+0=6 |
0+9=9 |
6+5=11 |
10+0=10 |
0+16=16 |
6+9=15 |
10+5=15 |
17+0= =17 |
|||||
F2*(X2) |
min(5;6)=5 |
min(9;11;10)=9 |
min(16;15;15;17)=15 |
По каждому ресурсу Xc2 среди ресурсов X2 были выбраны те, которым соответствуют минимальные затраты. Тот ресурс X2, которому соответствуют минимальные затраты, отмечается звездочкой (*) во 2-й строке таблицы:
i=2
Xc2 |
20 |
40 |
60 |
|||||||
X2 |
0* |
20 |
0* |
20 |
40 |
0 |
20* |
40* |
60 |
|
F2(X2) |
0 |
6 |
0 |
6 |
10 |
0 |
6 |
10 |
17 |
|
Xc2-X2 |
20-0= =20 |
20-20= =0 |
40-0= =40 |
40-0= =20 |
40-40= =0 |
60-0= =60 |
60-20= =40 |
60-40= =20 |
60-60= =0 |
|
F1*(Xc2--X2) |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(40) =9 |
F1*(20)= =5 |
F1*(0)= =0 |
F1*(60)= =16 |
F1*(40)= =9 |
F1*(20)= =5 |
F1*(0)= =0 |
|
F2(X2)++F1* |
0+5=5 |
6+0=6 |
0+9=9 |
6+5=11 |
10+0=10 |
0+16=16 |
6+9=15 |
10+5=15 |
17+0=17 |
|
F2*(X2) |
min(5;6)=5 |
min(9;11;10)=9 |
min(16;15;15;17)=15 |
Затем аналогично рассматривается 3-й вариант. Отличие от 2-го варианта будет лишь в 5-й строке, где рассчитываются оптимальные затраты по 2-му варианту: в отличие от оптимальных затрат по 1-му варианту, которые берутся из исходных данных, оптимальные затраты по 2-му варианту были только что рассчитаны в последней, 7-й, строке выше записанной таблицы: F2*(20)=5, F2*(40)=9, F2*(60)=14. В 3-й строке таблицы выводятся затраты при распределении ресурса Х3 - см. исходные данные по 3-му варианту. Поэтому для 3-го варианта (i=3) имеем:
i=3
Xc3 |
20 |
40 |
60 |
|||||||
X3 |
0* |
20* |
0* |
20 |
40 |
0 |
20* |
40 |
60 |
|
F3(X3) |
0 |
5 |
0 |
5 |
11 |
0 |
5 |
11 |
17 |
|
Xc3-X3 |
20-0= =20 |
20-20= =0 |
40-0= =40 |
40-20= =20 |
40-40= =0 |
60-0= =60 |
60-20= =40 |
60-40= =20 |
60-60= =0 |
|
F2*(Xc3--X3) |
F2*(20)= =5 |
F2*(0)= =0 |
F2*(40)= =9 |
F2*(20)= =5 |
F2*(0)= =0 |
F2*(60)= =15 |
F2*(40)= =9 |
F2*(20)= =5 |
F2*(0)= =0 |
|
F3(X3)+ +F2* |
0+5= =5 |
5+0= =5 |
0+9= =9 |
5+5= =10 |
11+0= =11 |
0+15= =15 |
5+9= =14 |
11+5= =16 |
17+0= =17 |
|
F3*(X3) |
min(5;5)=5 |
min(9;10;11)=9 |
min(15;14;16;17)=14 |
На последнем, 4-м этапе задача несколько упрощается, так как для последнего этапа Xci=Xо, иными словами на последнем этапе ресурс по предыдущим этапам, включая последний, - это общий объем ресурса.
Поэтому таблица примет вид (комментарий - после таблицы):
i=4
Xc4 =Xо |
60 |
||||
X4 |
0* |
20 |
40 |
60 |
|
F4(X4) |
0 |
7 |
10 |
18 |
|
Xc4-X4 |
60-0=60 |
60-20=40 |
60-40=20 |
60-60=0 |
|
F3*(Xc4-X4) |
14 |
9 |
5 |
0 |
|
F4(X4)+F3*(Xc4-X4) |
0+14=14 |
7+9=16 |
10+5=15 |
18+0=18 |
|
F4*(X4) |
min(14;16;15;18)=14 |
Комментарий к варианту i=4. 5-я строка таблицы F3*(Xc4-X4) рассчитывается по аналогии с предыдущими вариантами. Например, оптимальные затраты по 3-му варианту были только что рассчитаны в последней, 7-й, строке предыдущей таблицы. Например, F3*(20)=5, F3*(40)=9, F3*(60)=14. В 3-й строке таблицы выводятся затраты при распределении ресурса Х4 - см. исходные данные по 4-му варианту.
Формируем общее решение задачи. Каким образом получаются минимальные затраты 14 у.е. (см. F4*(X4) в 7-й строке последней таблицы) при распределении ресурса 60 ед., иными словами, по сколько единиц груза необходимо распределять на каждом из 4-х этапов, чтобы получить в конечном итоге минимальные затраты 14 у.е.?
Решение начинается с рассмотрения последнего этапа.
1) Хопт4=0 ед. (см. в табл. для i=4 во 2-й строке, какой ресурс Х4 отмечен звездочкой *). Это будет оптимальный объем ресурса на 4-м этапе.
Тогда оптимальный объем ресурса по предыдущим вариантам составит:
Хсопт3=Хо-Хопт4 (5.2)
где Хо - общий объем ресурса (см. условие задачи).
Подставив данные в формулу, получим:
Хсопт3=Хо-Хопт4=60-0=60 ед.
Теперь по 3-му варианту следует рассмотреть, каким оптимальным образом распределяется ресурс 60 ед., вычисленный по формуле (5.2), на предыдущем этапе i=3. Т.е. задача состоит в том, чтобы по 3-му варианту (i=3) для Хсопт3=60ед. выделить, какой ресурс Х3 отмечен звездочкой *, а значит, является оптимальным на 3-м этапе. В данном примере для Хсопт3=60 ед. звездочкой на 3-м этапе отмечен Х3=20 ед.
2) Хопт3=20 ед.
Примечание: если бы по какому-либо из вариантов для Хсоптi можно было выделить два и более ресурсов Хi, отмеченых звездочкой *, это бы означало, что в подобном случае имеет место многовариантность решений и необходимо рассматривать оптимальные решения по каждому отдельному варианту.
Теперь выясним, какой оптимальный объем ресурса остается на предыдущие варианты.
Хсопт2=Хо-Хопт4 -Хопт3=60-0-20=40 ед.
Теперь по 2-му варианту следует рассмотреть, каким оптимальным образом распределяется ресурс 40 ед. на предыдущем этапе i=2. Т.е. по 2-му варианту i=2 для Хсопт2=40ед. следует выделить, какой ресурс Х2 отмечен звездочкой *, а значит, является оптимальным на 2-м этапе. В данном примере для Хсопт2=40 ед. звездочкой на 2-м этапе отмечен Х2=0 ед.
3) Хопт2=0 ед.
Затем рассчитаем оптимальный объем ресурса, который целесообразнее распределять на 1-м этапе. Сначала определим, какой оптимальный объем ресурса остается на предыдущие варианты:
Хсопт1=Хо-Хопт4 -Хопт3-Хопт2=60-0-20-0=40 ед.
4) Для начального, 1-го, этапа имеем:
Хопт1=Хcопт1=40 ед.
И в заключении по таблице исходных данных определим, как формируются вычисленные минимальные затраты 14 у.е.
Таблица исходных данных.
Вариант |
Затраты при распределении ресурса Хо по вариантам |
|||
i |
Х=0 |
Х=20 |
Х=40 |
Х=60 |
1 |
0 |
5 |
9 |
16 |
2 |
0 |
6 |
10 |
17 |
3 |
0 |
5 |
11 |
17 |
4 |
0 |
7 |
10 |
18 |
По 1-му варианту Хопт1=40 ед. По таблице исходных данных видно, что по 1-му варианту при распределении 40 ед. затрачивается 9 у.е. По 2-му варианту Хопт2=0 ед. По таблице исходных данных по 2-му варианту на распределение 0 ед. затрачивается 0 у.е. По 3-му варианту Хопт3=20 ед., а F3(X3)=5 у.е. По 4-му варианту Хопт4=0ед., а F4(X4)=0 у.е. Последовательно суммируя все затраты, получаем общие минимальные затраты:
Z=9+0+5+0=14 у.е.
Вывод в задаче: суммарные минимальные затраты на распределение общего объема ресурса - 14 у.е.