Целочисленное программирование. Графический метод

Пример.

Задачу линейного программирования решить графическим способом. F = 5x1+8x2 → max.

2x1+x2≤6(1)
4x1-x2≥0(2)
2x1+3x2≤15(3)
x1-x2≤5(4)
x1≥0(5)
x2≥0(6)
где x1, x1 - целые числа.

Решение.

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

Рисунок 1 - Решение задач линейного программирования графическим методом

или

Рисунок 1 - Решение задач линейного программирования графическим методом

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

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

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

Рисунок 3 - Пример решения графическим методом

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

Рисунок 4 - Линейное программирование. Графический метод

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

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

Решив систему уравнений, получим: x1 = 1, x2 = 4
Откуда найдем максимальное значение целевой функции:
F(X) = 5*1 + 8*4 = 37

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

загрузка...