Линейное программирование. 1. введение в линейное программирование
![]()
|
1.2.Графическое решение ЗЛПГрафический способ решения задачи ЛП состоит из двух этапов. Построение пространства допустимых решений, удовлетворяющих всем ограничениям модели. Нахождение оптимального решения среди всех точек пространства допустимых решений. 1.2.1.Нахождение максимума целевой функцииИспользуем модель, построенную для компании Mikks, чтобы показать два этапа графического решения ЗЛП. Этап 1. Построение пространства допустимых решений. Сначала проведем оси: на горизонтальной будут указываться значения переменной ![]() ![]() ![]() ![]() ![]() Рис. 2.1. Пространство допустимых решений модели Чтобы учесть оставшиеся ограничения, проще всего заменить неравенства на равенства, в результате чего получим уравнения прямых, а затем на плоскости провести эти прямые. Например, неравенство ![]() ![]() Этап 2. Нахождение оптимального решения. Точки пространства допустимых решений, показанного на рис. 2.1, удовлетворяют одновременно всем ограничениям. Это пространство ограничено отрезками прямых, которые соединяются в угловых точках А, В, С, D, Е и F. Любая точка, расположенная внутри или на границе области, ограниченной ломаной ABCDEF, является допустимым решением, т.е. удовлетворяет всем ограничениям. Поскольку пространство допустимых решений содержит бесконечное число точек, необходима некая процедура поиска оптимального решения. Нахождение оптимального решения требует определения направления возрастания целевой функции ![]() Эти значения, подставленные вместо z в выражение целевой функции, порождают уравнения прямых. Для значений 10 и 15 получаем уравнения прямых ![]() ![]() ![]() Рис. 2.2. Оптимальное решение модели Целевая функция может возрастать до тех пор, пока прямые, соответствующие возрастающим значениям этой функции, пересекают область допустимых решений. Точка пересечения области допустимых решений и прямой, соответствующей максимально возможному значению целевой функции, и будет точкой оптимума. На рис. 2.2 видно, что оптимальное решение соответствует точке С. Эта точка является местом пересечения прямых (1) и (2), поэтому ее координаты ![]() ![]() ![]() Решением этой системы будет ![]() ![]() ![]() Полученное решение означает, что для компании Mikks оптимальным выбором будет ежедневное производство 3 т краски для наружных работ и 1.5 т для внутренних работ с ежедневным доходом в $21 000. Не случайно, что оптимальное решение расположено в угловой точке пространства допустимых решений, где пересекаются две прямые. Если мы изменим наклон функции z (путем изменения ее коэффициентов), то обнаружим, что в любом случае решение достигается в одной из угловых точек (или одновременно в нескольких угловых точках). В этом и состоит основная идея построения общего симплексного алгоритма, который будет рассмотрен далее. 1.2.2.Нахождение минимума целевой функцииПример 2.2. Задача о диете Фармацевтическая фирма Ozark ежедневно производит не менее 800 кг некой пищевой добавки – смеси кукурузной и соевой муки, состав которой представлен в следующей таблице.
Диетологи требуют, чтобы в пищевой добавке было не менее 30% белка и не более 5% клетчатки. Фирма Ozark хочет определить рецептуру смеси минимальной стоимости с учетом требований диетологов. Поскольку пищевая добавка состоит только из кукурузной и соевой муки, переменными для этой задачи, очевидно, будут ![]() ![]() Целевая функция равна общей стоимости пищевой добавки, производимой за один день, и должна быть минимальной. В данном случае это можно записать следующим образом: Минимизировать ![]() ![]() Ограничения модели должны отражать производственные требования и рекомендации диетологов. Фирма должна выпускать не менее 800 кг смеси в день; соответствующее ограничение будет записано следующим образом: ![]() Рассмотрим ограничение, связанное с количеством белка в пищевой добавке. Общее количество белка в смеси, состоящей из ![]() ![]() ![]() Это количество должно составлять не менее 30% от общего объема смеси ![]() ![]() Аналогично строится ограничение для клетчатки: ![]() В последних двух неравенствах переменные ![]() ![]() Минимизировать ![]() ![]() при ограничениях ![]() ![]() ![]() ![]() ![]() На рис. 2.3 показано графическое решение этой задачи. Поскольку в данной модели следует минимизировать целевую функцию, поэтому нужно идти в направлении уменьшения ее значений (это направление на рис. 2.3 показано стрелкой). Оптимальное решение находится на пересечении прямых ![]() ![]() ![]() ![]() При этих значениях переменных минимальная стоимость производимой ежедневно пищевой добавки составляет ![]() ![]() Рис. 2.3. Графическое решение задачи о диете |