
94 Глава 4. ДИСКРЕТНОЕ ПРОГРАММИРОВАНИЕ
1
z=12 7/19
x
1
=1 1/19
x =2 7/19
2
1 2 3 4 5 6 7 8
0
1
2
3
4
5
Рис 4.1.2. Решение подзадачи один.
Так как обе переменные принимают нецелочисленные значения, любая из них может
быть выбрана в качестве переменной, инициирующей процесс ветвления. Выбор перемен-
ной x
2
порождает две подзадачи, связанные с условиями x
2
≤ 2 и x
2
≥ 3 соответственно
(из подзадачи один мы имеем x
2
= 2
6
17
, поэтому [x
∗
2
] = 2), а именно подзадачи 2 и 3.
Порожденные подзадачи содержат все допустимые целочисленные решения исходной
задачи, т.е. исходное множество допустимых целочисленных решений остается неизмен-
ным в процессе ветвления.
На следующем шаге осуществляется выбор одной из подзадач 2 или 3 для решения
и при необходимости для дальнейшего ветвления. Важно отметить, что не существует
точных способов реализации указанного выбора. Выбор различных альтернатив приво-
дит к разным последовательностям подзадач и, следовательно, к различному количеству
итераций, обеспечивающих получение оптимального целочисленного решения.
Продемонстрируем этот факт, пользуясь рис. 4.1.7. Предположим, что в первую оче-
редь рассматривается вершина 2 (x
2
≤ 2). Оптимальное решение соответствующей за-
дачи ЛП достигается в точке с координатами x
1
= 1
1
5
и x
2
= 2, z = 12. (Это решение
получено путем добавления ограничения x
2
≤ 2 к подзадаче 1).
2
z=12
x
1
=1 1/5
x =2
2
1 2 3 4 5 6 7 8
0
1
2
3
4
5
Рис 4.1.3. Решение подзадачи два.
Так как значение x
1
= 1
1
5
продолжает оставаться нецелочисленным, следовательно
два дополнительных условия x
1
≤ 1 и x
1
≥ 2 в задаче 2 порождают подзадачи 3 и