"Математика (базовый уровень)", Мордкович А.Г., Смирнова И.М.
Многогранник допустимых решений — область, заданная пересечением линейных ограничений. Такие области помогают решать задачи, где нужно найти наибольшее или наименьшее значение линейной функции: например, максимальную прибыль при ограниченных ресурсах. Каждое ограничение задаёт полуплоскость или полупространство, а целевая функция — параллельные прямые или плоскости уровня. Если область ограничена, достаточно найти её вершины и сравнить значения функции в них.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Многогранник допустимых решений — множество точек, координаты которых одновременно удовлетворяют всем ограничениям задачи. Например, условия x ≥ 0, y ≥ 0 и x + y ≤ 6 задают область на координатной плоскости. Это понятие нужно, чтобы отделить разрешённые варианты от тех, которые нарушают хотя бы одно условие.
Линейная целевая функция — выражение вида ax + by + c или ax + by + cz + d, значение которого требуется сделать наибольшим или наименьшим. Коэффициенты при переменных задают, как изменение каждой координаты влияет на результат. Такая функция описывает, например, прибыль или затраты, которые зависят от количества произведённых товаров.
Оптимальное решение — допустимая точка, в которой целевая функция принимает искомое наибольшее или наименьшее значение. Координаты этой точки показывают, какой вариант действий даёт лучший результат при заданных ограничениях. Само экстремальное значение функции называют оптимальным значением.
Вершина многогранника — точка, в которой сходятся его рёбра; на плоскости это угол многоугольника. Вершины важны потому, что для ограниченной области максимум и минимум линейной функции можно искать среди них. Поэтому вместо проверки бесконечного множества точек достаточно вычислить значения в конечном числе вершин.
Каждое линейное неравенство задаёт одну сторону от своей граничной прямой: сама прямая получается, если заменить знак неравенства на равенство. Чтобы выбрать нужную сторону, проверяют координаты любой точки, не лежащей на границе. Если эта точка удовлетворяет неравенству, подходит содержащая её полуплоскость; иначе выбирают противоположную. В пространстве аналогично строят полупространство по граничной плоскости.
Ограничения задачи должны выполняться одновременно, поэтому оставляют только точки, принадлежащие каждой из выбранных полуплоскостей. Именно их пересечение и является допустимой областью. Пересечение может оказаться пустым, если условия противоречат друг другу, поэтому перед поиском оптимума проверяют, есть ли в нём хотя бы одна точка. При нескольких переменных эта область может быть многоугольником или пространственным многогранником.
Если зафиксировать значение целевой функции ax + by + c, постоянную часть можно перенести и получить уравнение ax + by = k. Для разных k получаются параллельные прямые, потому что коэффициенты a и b не меняются. В трёх переменных уравнение ax + by + cz = k задаёт семейство параллельных плоскостей. Значит, изменение значения функции можно представить как сдвиг прямой или плоскости уровня.
Чтобы понять направление улучшения, выбирают, что требуется найти: максимум или минимум, и сдвигают прямую уровня в сторону увеличения или уменьшения k. Движение продолжают, пока прямая или плоскость ещё касается допустимой области. Причина, по которой достаточно рассматривать вершины, состоит в линейном изменении функции вдоль любого отрезка: между концами отрезка значение не может стать больше обоих крайних значений или меньше обоих. Поэтому экстремум на ограниченном многограннике достигается в вершине.
Для поиска обычно сначала находят точки пересечения граничных линий, соблюдая все ограничения, а затем вычисляют целевую функцию в каждой вершине. Наибольшее из полученных значений даёт максимум, наименьшее — минимум. Иногда прямая уровня совпадает с направлением ребра, и крайнее значение одинаково во всех его точках; в пространстве так может быть со всей гранью. Тогда оптимальных точек несколько, хотя значение функции одно.
| Элемент задачи | Геометрический смысл | Как использовать |
|---|---|---|
| Линейные ограничения | Полуплоскости или полупространства | Построить каждое и найти их пересечение |
| Многогранник допустимых решений | Область всех допустимых точек | Проверить, что область не пуста и ограничена |
| Целевая функция | Семейство параллельных прямых или плоскостей уровня | Определить направление изменения её значения |
| Вершины многогранника | Точки-кандидаты на экстремум | Вычислить в них значения функции |
| Оптимальное значение | Наибольшее или наименьшее значение целевой функции | Выбрать лучшее из найденных значений |
Пользуйтесь таблицей как порядком действий: от ограничений переходите к области, а от неё — к вершинам. До вычислений убедитесь, что область не пуста, и учтите все ограничения. После подстановки координат вершин сравните значения по условию задачи.
При условиях x ≥ 0, y ≥ 0, x + y ≤ 6 найти наибольшее значение функции 2x + y.
Ответ: 12.
При условиях x ≥ 0, y ≥ 0, x + y ≤ 8, 2x + y ≤ 12 найти наименьшее и наибольшее значения функции 3x + 2y.
Ответ: минимум 0, максимум 20.
При условиях x ≥ 0, y ≥ 0, z ≥ 0, x + y + z ≤ 10 найти наибольшее значение функции 3x + 2y + z.
Ответ: 30.
Учитывают только граничные прямые, но не выбирают нужную полуплоскость. Тогда область может включать точки, нарушающие неравенства. Ошибка возникает, когда прямую воспринимают как всё ограничение, хотя она лишь его граница. Проверьте выбранную сторону подстановкой тестовой точки в каждое неравенство.
Забывают ограничения неотрицательности переменных. Без условий x ≥ 0 или y ≥ 0 к области добавляются точки, которые не разрешены задачей. Часто эти ограничения пропускают, потому что они не записаны в виде отдельной наклонной прямой. Перед поиском вершин выпишите все условия и убедитесь, что область лежит в нужных координатных полуплоскостях.
Проверяют не все вершины, особенно пересечения граничных линий. В таком случае экстремум может быть пропущен, ведь он нередко находится именно на пересечении двух ограничений. Обычно это происходит, если находят только пересечения с осями или не решают систему уравнений для граничных прямых. Составьте список всех углов области и проверьте, что координаты каждого удовлетворяют всем ограничениям.
Считают, что экстремум всегда достигается только в одной вершине. Если прямая уровня параллельна ребру, одинаковое крайнее значение может быть на всём ребре; в пространстве оно может заполнить грань. Это заблуждение появляется, когда проверяют только координаты вершин и не рассматривают направление линий уровня. Сравните наклон прямой уровня с направлением ребра: при совпадении оптимальных точек может быть несколько.
Для построения допустимой области нужны навыки решения линейных неравенств и изображения пересечения полуплоскостей. Если неравенство заменяют равенством, получается граничная прямая, а точку для выбора стороны проверяют подстановкой. Эти действия опираются на графики линейных функций и координатную геометрию.
Чтобы найти вершину, часто приходится решать систему уравнений граничных прямых. Затем найденные координаты подставляют в целевую функцию — это обычное вычисление значения функции в точке. В пространственных задачах тот же подход применяется к пересечениям плоскостей и вершинам многогранника.
Геометрический способ — наглядная часть линейного программирования, то есть методов оптимизации линейных величин при линейных ограничениях. Он помогает моделировать распределение ресурсов: ограничения описывают доступные запасы или мощности, а целевая функция — прибыль или затраты. Так задача выбора лучшего плана превращается в поиск экстремума на допустимой области.
Почему область допустимых решений называют многогранником?
Каждое линейное неравенство задаёт полуплоскость на плоскости или полупространство в пространстве. Их пересечение ограничено прямыми или плоскостями, поэтому получается многоугольник или многогранник. Если область не ограничена, у неё всё равно могут быть плоские грани, но она не является ограниченным телом.
Как понять, какую сторону граничной прямой нужно закрасить?
Выберите точку, которая не лежит на граничной прямой, например начало координат, и подставьте её координаты в неравенство. Если неравенство верно, закрашивают сторону с этой точкой; если нет — противоположную. Когда выбранная точка лежит на прямой, возьмите другую.
Почему достаточно проверять вершины многогранника?
На отрезке или плоской грани линейная функция изменяется линейно, поэтому её крайнее значение достигается на краю области. Продолжая этот переход по граням, приходим к вершине, где значение не хуже. Поэтому у ограниченного многогранника максимум и минимум можно найти среди вершин.
Может ли максимум достигаться не в одной точке?
Да. Если прямая уровня целевой функции параллельна ребру области и касается его, функция имеет одинаковое максимальное значение во всех точках этого ребра. В пространстве такая ситуация возможна и для целой грани.
Что делать, если допустимая область не ограничена?
Нужно проверить, в каком направлении область продолжается и как при движении в этом направлении меняется целевая функция. Если значение неограниченно возрастает или убывает, соответствующего максимума или минимума нет. Но область может быть неограниченной, а экстремум всё же существовать, поэтому нельзя делать вывод только по её форме.
§ 51. Многогранники в задачах оптимизации