
- •Рецензенты:
- •Содержание
- •1. Программа курса Введение
- •Математические основы программирования
- •Общий вид задачи линейного программирования
- •Методы решения общей задачи линейного программирования
- •Двойственные задачи линейного программирования
- •Распределительные методы
- •Элементы нелинейного программирования
- •Элементы теории игр
- •Введение
- •Классификация задач математического программирования
- •2. Математическое программирование
- •2.1. Постановка задач линейного программирования
- •Алгоритм графического метода решения злп
- •2.3. Симплекс-метод решения задачи линейного программирования
- •Алгоритм симплекс-метода решения злп
- •Пример 2.3.1. Решить злп (2.2.1), (2.2.5) симплекс-методом.
- •Критерий оптимальности опорного плана:
- •Переход к следующей симплекс-таблице осуществляют по правилам:
- •2.4. Двойственная задача линейного программирования
- •2.5. Элементы теории матричных игр
- •Алгоритм принципа максимина (минимакса)
- •Решение. Эта матричная игра имеет размерность (3х4), т.Е. Игрок а имеет три стратегии, а игрок в – четыре. Запишем ее в нормальной форме.
- •Последовательность действий при решении игры
- •2.6. Транспортная задача. Метод потенциалов
- •Алгоритм метода потенциалов состоит из следующих этапов:
- •Критерий оптимальности плана перевозок
- •2.7. Задача о назначениях
- •Алгоритм метода Фогеля
- •Алгоритм венгерского метода решения задачи о назначениях
- •2.8. Дробно-линейное программирование
- •Правила решения задачи дробно-линейного программирования графическим методом
- •2.9. Целочисленное программирование
- •2.10. Параметрическое программирование
- •Алгоритм решения задачи параметрического программирования
- •3. Задания для самостоятельной работы
Алгоритм графического метода решения злп
-
Построить прямые линии, уравнения которых получаем заменой в системе ограничений (2.1.2) знаков неравенств на знаки равенств.
-
Определить полуплоскости, соответствующие каждому ограничению задачи.
-
Найти многоугольник решений ЗЛП, учитывая, что
.
-
Построить вектор направлений
=(с1,с2), который указывает направление наибольшего возрастания целевой функции ЗЛП (2.1.1).
-
Построить прямую, которая проходит через область допустимых решений, перпендикулярно к вектору
:
. Это линия уровня.
-
Переместить прямую
в направлении вектора
в случае максимизации целевой функции; или в противоположном направлении в случае минимизации целевой функции, найти вершину многоугольника решений ЗЛП, в которой целевая функция достигает экстремального значения.
-
Определить координаты точки, в которой целевая функция достигает оптимальное значения, и вычислить экстремальное значение целевой функции в этой точке.
Реализацию графического метода решения ЗЛП рассмотрим на примерах.
Пример 2.2.1. Решить ЗЛП графическим методом:
(2.2.1)
max z = x1 + 4x2 (2.2.2)
Решение.
Для построения области допустимых решений, которая состоит из пересечения полуплоскостей, соответствующих каждому неравенству системы ограничений (2.2.1), запишем уравнения граничных прямых:
l1: x1 + 5x2 = 5; l2: x1 + x2 = 6; l3: 7x1 + x2 = 7.
Замечание. Для удобства построения прямой линии, ее уравнение можно привести к виду в отрезках на осях
,
(2.2.3)
где параметры а, b – длины отрезков, отсекаемых прямой на соответствующих осях Ох1, Ох2 .
Замечание. Если уравнение прямой линии имеет вид: Аx1 + Вx2 = 0, то она проходит через точку с координатами (0;0). Для ее построения следует выразить x2 через x1, и найти еще одну точку.
Для
приведения уравнения прямой l1 к
виду (2.2.3.) разделим обе его части на 5:
.
Таким образом, прямая l1 отсекает
на оси Ох1 5 единиц, на оси Ох2
– 1 единицу. Аналогично имеем для
l2:
и l3:
.
Для определения полуплоскостей, которые отвечают ограничениям системы (2.2.1), в ограничения нужно подставить координаты какой-либо точки, не лежащей на граничной прямой. Если получим верное неравенство, то все точки из полуплоскости, в которой расположена выбранная точка, являются решениями данного неравенства. В противном случае выбирают другую полуплоскость.
Замечание. В качестве точки сравнения целесообразно выбирать, если это возможно, точку О(0,0).
Таким образом,
первая и вторая искомые полуплоскости
расположены в противоположную сторону
от начала координат (0 – 5·0–
5; 7·0 + 0
7),
а вторая – в сторону начала координат
(0 + 0
6). Область допустимых решений на рисунке
1 заштрихована.
Замечание. В силу ограничений
х1
0, х2
0, область допустимых решений ЗЛП всегда
лежит в первой четверти координатной
плоскости.
Рисунок 1 – Область допустимых решений
Для нахождения
оптимального плана, который будет
находиться в вершине многоугольника
решений, нужно построить вектор
направлений
=(с1,с2),
который указывает направление наибольшего
возрастания целевой функции z = с1х1
+ с2х2.
В данной задаче
вектор направлений
=
(1, 4): он начинается в точке О(0,0) и
заканчивается в точке N(1, 4).
Далее строим
прямую, которая проходит через область
допустимых решений, перпендикулярно к
вектору
,
и называется линией уровня целевой
функции. Передвигаем линию
уровня в направлении вектора
в случае максимизации целевой функции
z и в направлении, противоположном
,
в случае минимизации z, до последнего
пересечения с областью допустимых
решений. В результате определяется
точка или точки, где целевая функция
достигает экстремального значения, или
устанавливается неограниченность
целевой функции z на множестве
решений задачи.
Таким образом, точкой максимума целевой функции z является точка А пересечения прямых l2 и l3.
Для вычисления оптимального значения целевой функции z найдем координаты точки А – это точка пересечения прямых l2 и l3, решим систему уравнений:
Таким образом, точка А имеет координаты x1 =1/6, x2 = 35/6.
Для вычисления оптимального значения целевой функции нужно подставить в нее координаты точки А.
Подставив координаты точки А в целевую функцию (2.4), получим
max z = 1/6 + 4·(35/6) = 47/2.
Пример 2.2.2. Построить на плоскости область допустимых решений системы линейных неравенств (2.2.4) и найти наибольшее и наименьшее значения целевой функции (2.2.5):
(2.2.4)
z = –2x1 – x2 (2.2.5)
Решение.
Для построения области допустимых решений, которая состоит из пересечения полуплоскостей, соответствующих каждому неравенству системы ограничений (2.2.4), запишем уравнения граничных прямых:
l1: 4x1 – x2 = 0; l2: x1 + 3x2 = 6; l3: x1 – 3x2 = 6; l4: x2 = 1.
Прямая l1 проходит через точку с координатами (0;0). Для ее построения выразим x2 через x1: x2 = 4x1. Найдем еще одну точку, через которую проходит прямая l1 , например (1;4). Через точку с координатами (0;0) и точку с координатами (1;4) проведем прямую l1 .
Для
приведения уравнения прямой l2 к
виду в отрезках на осях (2.2.3.) разделим
обе его части на 6:
.
Таким образом, прямая l2 отсекает
на оси Ох1 6 единиц, на оси Ох2
2 единицы. Аналогично имеем для l3:
и Прямая l4 параллельна оси
Ох1 и проходит через точку с
координатами (0;1) .
Для определения
полуплоскостей, которые отвечают
ограничениям системы (2.2.4) в ограничения
нужно подставить координаты какой-либо
точки, не лежащей на граничной прямой.
В силу ограничений х1
0, х2
0, область допустимых решений ЗЛП лежит
в первой четверти координатной плоскости.
Область
допустимых решений на рисунке 2
заштрихована.
Рисунок 2 – Область допустимых решений
Построим вектор
направлений
=
(–2,–1). Далее строим линию уровня,
перпендикулярно к вектору
.
Для нахождения
наибольшего значения целевой функции
передвигаем линию уровня в направлении
вектора
до последнего пересечения с областью
допустимых решений. Таким образом,
точкой максимума целевой функции z
является точка А пересечения прямых
l1 и l2.
Для вычисления оптимального значения целевой функции z найдем координаты точки А. Поскольку точка А – это точка пересечения прямых l1 и l2, то ее координаты удовлетворяют системе уравнений, составленной из уравнений соответствующих граничных прямых, которые пересекаются в оптимальной вершине:
Таким образом, точка А имеет координаты x1 =6/13, x2 = 24/13.
Подставив координаты точки А в целевую функцию (2.4), получим оптимальное значение целевой функции
max z = – 2·(6/13) – (24/13) = – 36/13.
Для нахождения
наименьшего значения целевой функции
передвигаем линию уровня в направлении
противоположном вектору
до последнего пересечения с областью
допустимых решений. В этом случае целевая
функция неограниченна в области
допустимых решений, т.е. ЗЛП решений не
имеет.
В результате решения ЗЛП возможны следующие случаи:
-
Целевая функция достигает оптимального значения в единственной вершине многоугольника решений;
-
Целевая функция достигает оптимального значения в любой точке ребра многоугольника решений (ЗЛП имеет альтернативные опорные планы);
-
ЗЛП не имеет оптимальных планов;
-
ЗЛП имеет оптимальный план в случае неограниченной многоугольника решений.