Целочисленное программирование. Метод ветвей и границ - davaiknam.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
Целочисленное и бинарное программирование 1 108.08kb.
Тематика курсовых работ по математическим методам кибернетики 1 16.4kb.
Целочисленное программирование 6 475.77kb.
7. целочисленное программирование 10 870.02kb.
Тема Целочисленное программирование 3 269.32kb.
Задание Задача нахождения оптимального плана 1 46.66kb.
Целочисленное программирование 1 46.81kb.
«Линейное программирование и симплекс метод» 1 393.77kb.
Лабораторная работа №6 Моделирование границ зерен в металлах 1 151.29kb.
Методические указания к лабораторным работам и домашним заданиям... 6 327.14kb.
Программа вступительного экзамена по специальности 05. 13. 18 Математическое... 1 112.81kb.
Тема Целочисленное программирование 3 269.32kb.
Направления изучения представлений о справедливости 1 202.17kb.

Целочисленное программирование. Метод ветвей и границ - страница №1/1

Целочисленное программирование. Метод ветвей и границ


Необходимо найти максимальное значение целевой функции F = 4x1+3x2 → max, при системе ограничений:

3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≥0

(3)

x2≥0

(4)

где x1, x1 - целые числа.

Построим область допустимых решений, т.е. решим графически систему неравенств. Для этого построим каждую прямую и определим полуплоскости, заданные неравенствами (полуплоскости обозначены штрихом).



или


Границы области допустимых решений

Пересечением полуплоскостей будет являться область, координаты точек которого удовлетворяют условию неравенствам системы ограничений задачи.
Обозначим границы области многоугольника решений.

Рассмотрим целевую функцию задачи F = 4x1+3x2 → max.


Построим прямую, отвечающую значению функции F = 0: F = 4x1+3x2 = 0. Будем двигать эту прямую параллельным образом. Поскольку нас интересует максимальное решение, поэтому двигаем прямую до последнего касания обозначенной области. На графике эта прямая обозначена пунктирной линией.

Равный масштаб



Область допустимых решений представляет собой многоугольник

Прямая F(x) = const пересекает область в точке C. Так как точка C получена в результате пересечения прямых (1) и (2), то ее координаты удовлетворяют уравнениям этих прямых:
3x1+2x2≤16
2x1+3x2≤18

Решив систему уравнений, получим: x1 = 2.4, x2 = 4.4


Откуда найдем максимальное значение целевой функции:
F(X) = 4*2.4 + 3*4.4 = 22.8

Оптимальное значение переменной x1=2.4 оказалось нецелочисленным.


Разбиваем задачу 1 на две подзадачи 11 и 12.
В первой из них к условиям задачи 11 добавляется условие х1 ≥ 3, а к задаче 12 — условие х1 ≤ 2.
Эта процедура называется ветвлением по переменной х1.

Решим графически задачу 11 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≥3

(3)

x1≥0

(4)

x2≥0

(5)

Область допустимых решений представляет собой треугольник.

Прямая F(x) = const пересекает область в точке B. Так как точка B получена в результате пересечения прямых (1) и (3), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x1≥3

Решив систему уравнений, получим: x1 = 3, x2 = 3.5


Откуда найдем максимальное значение целевой функции:
F(X) = 4*3 + 3*3.5 = 22.5



Решим графически задачу 12 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≤2

(3)

x1≥0

(4)

x2≥0

(5)

Область допустимых решений представляет собой многоугольник

Прямая F(x) = const пересекает область в точке D. Так как точка D получена в результате пересечения прямых (2) и (3), то ее координаты удовлетворяют уравнениям этих прямых:


2x1+3x2≤18
x1≤2

Решив систему уравнений, получим: x1 = 2, x2 = 4.6667


Откуда найдем максимальное значение целевой функции:
F(X) = 4*2 + 3*4.6667 = 22

Оптимальное значение переменной x2=3.5 оказалось нецелочисленным.


Разбиваем задачу 11 на две подзадачи 111 и 112.
В первой из них к условиям задачи 111 добавляется условие х2 ≥ 4, а к задаче 112 — условие х2 ≤ 3.

Решим графически задачу 111 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≥3

(3)

x2≥4

(4)

x1≥0

(5)

x2≥0

(6)

Задача не имеет допустимых решений. ОДР представляет собой пустое множество (рис. б).




Многоугольные области: а - ограниченное множество; б - пустое множество; в - неограниченное множество


Задача 111 не имеет решения, поэтому для нее процесс ветвления прерываем.



Решим графически задачу 112 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≥3

(3)

x2≤3

(4)

x1≥0

(5)

x2≥0

(6)

Область допустимых решений представляет собой многоугольник

Прямая F(x) = const пересекает область в точке C. Так как точка C получена в результате пересечения прямых (1) и (4), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x2≤3

Решив систему уравнений, получим: x1 = 3.3333, x2 = 3


Откуда найдем максимальное значение целевой функции:
F(X) = 4*3.3333 + 3*3 = 22.3333

Оптимальное значение переменной x1=3.33 оказалось нецелочисленным.


Разбиваем задачу 112 на две подзадачи 1121 и 1122.
В первой из них к условиям задачи 1121 добавляется условие х1 ≥ 4, а к задаче 1122 — условие х1 ≤ 3.

Решим графически задачу 1121 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≥3

(3)

x2≤3

(4)

x1≥4

(5)

x1≥0

(6)

x2≥0

(7)

Область допустимых решений представляет собой треугольник.

Прямая F(x) = const пересекает область в точке B. Так как точка B получена в результате пересечения прямых (1) и (5), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x1≥4

Решив систему уравнений, получим: x1 = 4, x2 = 2


Откуда найдем максимальное значение целевой функции:
F(X) = 4*4 + 3*2 = 22

Решение задачи получилось целочисленным.


Новое значение текущего рекорда будет равно F(X) = 22.
Так как найденная точка является первым целочисленным решением, то ее и соответствующее ей значение ЦФ следует запомнить. Сама точка называется текущим целочисленным рекордом или просто рекордом, а оптимальное значение целочисленной задачи — текущим значением рекорда. Это значение является нижней границей оптимального значения исходной задачи Z*.

Решим графически задачу 1122 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1≥3

(3)

x2≤3

(4)

x1≤3

(5)

x1≥0

(6)

x2≥0

(7)

Сведем систему ограничений к следующему виду:



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x1=3

(3)

x2≤3

(4)

x1≥0

(5)

x2≥0

(6)

Область допустимых решений представляет собой одну точку.

Прямая F(x) = const пересекает область в точке B. Так как точка B получена в результате пересечения прямых (3) и (4), то ее координаты удовлетворяют уравнениям этих прямых:


x1=3
x2≤3

Решив систему уравнений, получим: x1 = 3, x2 = 3


Откуда найдем максимальное значение целевой функции:
F(X) = 4*3 + 3*3 = 21


Текущий рекорд Z=22≥21, поэтому прекращаем ветвление из этой вершины

Оптимальное значение переменной x2=4.4 оказалось нецелочисленным.
Разбиваем задачу 1 на две подзадачи 11 и 12.
В первой из них к условиям задачи 11 добавляется условие х2 ≥ 5, а к задаче 12 — условие х2 ≤ 4.
Эта процедура называется ветвлением по переменной х2.

Решим графически задачу 11 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≥5

(3)

x1≥0

(4)

x2≥0

(5)

Область допустимых решений представляет собой треугольник.

Прямая F(x) = const пересекает область в точке C. Так как точка C получена в результате пересечения прямых (2) и (3), то ее координаты удовлетворяют уравнениям этих прямых:


2x1+3x2≤18
x2≥5

Решив систему уравнений, получим: x1 = 1.5, x2 = 5


Откуда найдем максимальное значение целевой функции:
F(X) = 4*1.5 + 3*5 = 21


Текущий рекорд Z=22≥21, поэтому прекращаем ветвление из этой вершины



Решим графически задачу 12 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≥0

(4)

x2≥0

(5)

Область допустимых решений представляет собой многоугольник

Прямая F(x) = const пересекает область в точке C. Так как точка C получена в результате пересечения прямых (1) и (3), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x2≤4

Решив систему уравнений, получим: x1 = 2.6667, x2 = 4


Откуда найдем максимальное значение целевой функции:
F(X) = 4*2.6667 + 3*4 = 22.6667

Оптимальное значение переменной x1=2.67 оказалось нецелочисленным.


Разбиваем задачу 12 на две подзадачи 121 и 122.
В первой из них к условиям задачи 121 добавляется условие х1 ≥ 3, а к задаче 122 — условие х1 ≤ 2.

Решим графически задачу 121 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≥3

(4)

x1≥0

(5)

x2≥0

(6)

Область допустимых решений представляет собой треугольник.

Прямая F(x) = const пересекает область в точке B. Так как точка B получена в результате пересечения прямых (1) и (4), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x1≥3

Решив систему уравнений, получим: x1 = 3, x2 = 3.5


Откуда найдем максимальное значение целевой функции:
F(X) = 4*3 + 3*3.5 = 22.5



Решим графически задачу 122 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≤2

(4)

x1≥0

(5)

x2≥0

(6)

Область допустимых решений представляет собой многоугольник

Прямая F(x) = const пересекает область в точке D. Так как точка D получена в результате пересечения прямых (3) и (4), то ее координаты удовлетворяют уравнениям этих прямых:


x2≤4
x1≤2

Решив систему уравнений, получим: x1 = 2, x2 = 4


Откуда найдем максимальное значение целевой функции:
F(X) = 4*2 + 3*4 = 20


Текущий рекорд Z=22≥20, поэтому прекращаем ветвление из этой вершины

Оптимальное значение переменной x2=3.5 оказалось нецелочисленным.
Разбиваем задачу 121 на две подзадачи 1211 и 1212.
В первой из них к условиям задачи 1211 добавляется условие х2 ≥ 4, а к задаче 1212 — условие х2 ≤ 3.

Решим графически задачу 1211 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≥3

(4)

x2≥4

(5)

x1≥0

(6)

x2≥0

(7)

Сведем систему ограничений к следующему виду:



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2=4

(3)

x1≥3

(4)

x1≥0

(5)

x2≥0

(6)

Задача не имеет допустимых решений. ОДР представляет собой пустое множество (рис. б).




Многоугольные области: а - ограниченное множество; б - пустое множество; в - неограниченное множество


Задача 1211 не имеет решения, поэтому для нее процесс ветвления прерываем.



Решим графически задачу 1212 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≥3

(4)

x2≤3

(5)

x1≥0

(6)

x2≥0

(7)

Область допустимых решений представляет собой многоугольник

Прямая F(x) = const пересекает область в точке C. Так как точка C получена в результате пересечения прямых (1) и (5), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x2≤3

Решив систему уравнений, получим: x1 = 3.3333, x2 = 3


Откуда найдем максимальное значение целевой функции:
F(X) = 4*3.3333 + 3*3 = 22.3333

Оптимальное значение переменной x1=3.33 оказалось нецелочисленным.


Разбиваем задачу 1212 на две подзадачи 12121 и 12122.
В первой из них к условиям задачи 12121 добавляется условие х1 ≥ 4, а к задаче 12122 — условие х1 ≤ 3.

Решим графически задачу 12121 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≥3

(4)

x2≤3

(5)

x1≥4

(6)

x1≥0

(7)

x2≥0

(8)

Область допустимых решений представляет собой треугольник.

Прямая F(x) = const пересекает область в точке B. Так как точка B получена в результате пересечения прямых (1) и (6), то ее координаты удовлетворяют уравнениям этих прямых:


3x1+2x2≤16
x1≥4

Решив систему уравнений, получим: x1 = 4, x2 = 2


Откуда найдем максимальное значение целевой функции:
F(X) = 4*4 + 3*2 = 22


Текущий рекорд Z=22≥22, поэтому прекращаем ветвление из этой вершины



Решим графически задачу 12122 как задачу ЛП.



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1≥3

(4)

x2≤3

(5)

x1≤3

(6)

x1≥0

(7)

x2≥0

(8)

Сведем систему ограничений к следующему виду:



3x1+2x2≤16

(1)

2x1+3x2≤18

(2)

x2≤4

(3)

x1=3

(4)

x2≤3

(5)

x1≥0

(6)

x2≥0

(7)

Область допустимых решений представляет собой одну точку.

Прямая F(x) = const пересекает область в точке B. Так как точка B получена в результате пересечения прямых (4) и (5), то ее координаты удовлетворяют уравнениям этих прямых:


x1=3
x2≤3

Решив систему уравнений, получим: x1 = 3, x2 = 3


Откуда найдем максимальное значение целевой функции:
F(X) = 4*3 + 3*3 = 21


Текущий рекорд Z=22≥21, поэтому прекращаем ветвление из этой вершины

F(X) = 22
x1 = 4
x2 = 2

Дерево решения задачи








Настоящая великая страсть встречается ныне довольно редко. Это привилегия людей, которым больше нечего делать. Оскар Уайльд
ещё >>