Ростелеком

Графический метод решения линейного программирования. Графический (геометрический) метод решения задач ЛП

Если в задаче линейного программирования имеется только две переменные, то ее можно решить графическим методом.

Рассмотрим задачу линейного программирования с двумя переменными и :
(1.1) ;
(1.2)
Здесь , есть произвольные числа. Задача может быть как на нахождение максимума (max), так и на нахождение минимума (min). В системе ограничений могут присутствовать как знаки , так и знаки .

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

Графический метод решения задачи (1) следующий.
Вначале мы проводим оси координат и и выбираем масштаб. Каждое из неравенств системы ограничений (1.2) определяет полуплоскость, ограниченную соответствующей прямой.

Так, первое неравенство
(1.2.1)
определяет полуплоскость, ограниченную прямой . С одной стороны от этой прямой , а с другой стороны . На самой прямой . Чтобы узнать, с какой стороны выполняется неравенство (1.2.1), мы выбираем произвольную точку, не лежащую на прямой. Далее подставляем координаты этой точки в (1.2.1). Если неравенство выполняется, то полуплоскость содержит выбранную точку. Если неравенство не выполняется, то полуплоскость расположена с другой стороны (не содержит выбранную точку). Заштриховываем полуплоскость, для которой выполняется неравенство (1.2.1).

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

Может возникнуть и такой случай, что полуплоскости не содержат общих точек. Тогда областью допустимых решений является пустое множество. Такая задача решений не имеет.

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

Если хотя бы одно неравенство не выполняется, то выбираем другую точку. И так далее, пока не будет найдены одна точка, координаты которой удовлетворяют системе (1.2).

Нахождение экстремума целевой функции

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

Теперь мы можем искать экстремум целевой функции
(1.1) .

Для этого выбираем любое число и строим прямую
(3) .
Для удобства дальнейшего изложения считаем, что эта прямая проходит через ОДР. На этой прямой целевая функция постоянна и равна . такая прямая называется линией уровня функции . Эта прямая разбивает плоскость на две полуплоскости. На одной полуплоскости
.
На другой полуплоскости
.
То есть с одной стороны от прямой (3) целевая функция возрастает. И чем дальше мы отодвинем точку от прямой (3), тем больше будет значение . С другой стороны от прямой (3) целевая функция убывает. И чем дальше мы отодвинем точку от прямой (3) в другую сторону, тем меньше будет значение . Если мы проведем прямую, параллельную прямой (3), то новая прямая также будет линией уровня целевой функции, но с другим значением .

Таким образом, чтобы найти максимальное значение целевой функции, надо провести прямую, параллельную прямой (3), максимально удаленную от нее в сторону возрастания значений , и проходящую хотя бы через одну точку ОДР. Чтобы найти минимальное значение целевой функции, надо провести прямую, параллельную прямой (3) и максимально удаленную от нее в сторону убывания значений , и проходящую хотя бы через одну точку ОДР.

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

Рассмотрим случай, когда крайняя прямая, параллельная произвольной прямой вида (3), проходит через одну вершину многоугольника ОДР. Из графика определяем координаты этой вершины. Тогда максимальное (минимальное) значение целевой функции определяется по формуле:
.
Решением задачи является
.

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

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

Условие задачи

Фирма выпускает платья двух моделей А и В. При этом используется ткань трех видов. На изготовление одного платья модели А требуется 2 м ткани первого вида, 1 м ткани второго вида, 2 м ткани третьего вида. На изготовление одного платья модели В требуется 3 м ткани первого вида, 1 м ткани второго вида, 2 м ткани третьего вида. Запасы ткани первого вида составляют 21 м, второго вида - 10 м, третьего вида - 16 м. Выпуск одного изделия типа А приносит доход 400 ден. ед., одного изделия типа В - 300 ден. ед.

Составить план производства, обеспечивающий фирме наибольший доход. Задачу решить графическим методом.

Решение

Пусть переменные и означают количество произведенных платьев моделей А и В, соответственно. Тогда количество израсходованной ткани первого вида составит:
(м)
Количество израсходованной ткани второго вида составит:
(м)
Количество израсходованной ткани третьего вида составит:
(м)
Поскольку произведенное количество платьев не может быть отрицательным, то
и .
Доход от произведенных платьев составит:
(ден. ед.)

Тогда экономико-математическая модель задачи имеет вид:


Решаем графическим методом.
Проводим оси координат и .

Строим прямую .
При .
При .
Проводим прямую через точки (0; 7) и (10,5; 0).

Строим прямую .
При .
При .
Проводим прямую через точки (0; 10) и (10; 0).

Строим прямую .
При .
При .
Проводим прямую через точки (0; 8) и (8; 0).



Заштриховываем область, чтобы точка (2; 2) попала в заштрихованную часть. Получаем четырехугольник OABC.


(П1.1) .
При .
При .
Проводим прямую через точки (0; 4) и (3; 0).

Далее замечаем, что поскольку коэффициенты при и целевой функции положительны (400 и 300), то она возрастает при увеличении и . Проводим прямую, параллельную прямой (П1.1), максимально удаленную от нее в сторону возрастания , и проходящую хотя бы через одну точку четырехугольника OABC. Такая прямая проходит через точку C. Из построения определяем ее координаты.
.

Решение задачи: ;

Ответ

.
То есть, для получения наибольшего дохода, необходимо изготовить 8 платьев модели А. Доход при этом составит 3200 ден. ед.

Пример 2

Условие задачи

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

Решение

Решаем графическим методом.
Проводим оси координат и .

Строим прямую .
При .
При .
Проводим прямую через точки (0; 6) и (6; 0).

Строим прямую .
Отсюда .
При .
При .
Проводим прямую через точки (3; 0) и (7; 2).

Строим прямую .
Строим прямую (ось абсцисс).

Область допустимых решений (ОДР) ограничена построенными прямыми. Чтобы узнать, с какой стороны, замечаем, что точка принадлежит ОДР, поскольку удовлетворяет системе неравенств:

Заштриховываем область по границам построенных прямых, чтобы точка (4; 1) попала в заштрихованную часть. Получаем треугольник ABC.

Строим произвольную линию уровня целевой функции, например,
.
При .
При .
Проводим прямую линию уровня через точки (0; 6) и (4; 0).
Поскольку целевая функция увеличивается при увеличении и , то проводим прямую, параллельную линии уровня и максимально удаленную от нее в сторону возрастания , и проходящую хотя бы через одну точку треугольника АВC. Такая прямая проходит через точку C. Из построения определяем ее координаты.
.

Решение задачи: ;

Ответ

Пример отсутствия решения

Условие задачи

Решить графически задачу линейного программирования. Найти максимальное и минимальное значение целевой функции.

Решение

Решаем задачу графическим методом.
Проводим оси координат и .

Строим прямую .
При .
При .
Проводим прямую через точки (0; 8) и (2,667; 0).

Строим прямую .
При .
При .
Проводим прямую через точки (0; 3) и (6; 0).

Строим прямую .
При .
При .
Проводим прямую через точки (3; 0) и (6; 3).

Прямые и являются осями координат.

Область допустимых решений (ОДР) ограничена построенными прямыми и осями координат. Чтобы узнать, с какой стороны, замечаем, что точка принадлежит ОДР, поскольку удовлетворяет системе неравенств:

Заштриховываем область, чтобы точка (3; 3) попала в заштрихованную часть. Получаем неограниченную область, ограниченную ломаной ABCDE.

Строим произвольную линию уровня целевой функции, например,
(П3.1) .
При .
При .
Проводим прямую через точки (0; 7) и (7; 0).
Поскольку коэффициенты при и положительны, то возрастает при увеличении и .

Чтобы найти максимум, нужно провести параллельную прямую, максимально удаленную в сторону возрастания , и проходящую хотя бы через одну точку области ABCDE. Однако, поскольку область неограниченна со стороны больших значений и , то такую прямую провести нельзя. Какую бы прямую мы не провели, всегда найдутся точки области, более удаленные в сторону увеличения и . Поэтому максимума не существует. можно сделать сколь угодно большой.

Ищем минимум. Проводим прямую, параллельную прямой (П3.1) и максимально удаленную от нее в сторону убывания , и проходящую хотя бы через одну точку области ABCDE. Такая прямая проходит через точку C. Из построения определяем ее координаты.
.
Минимальное значение целевой функции:

Ответ

Максимального значения не существует.
Минимальное значение
.

Решение задачи линейного программирования (ЗЛП) графическим методом

Общая постановка злп

Найти значения n переменных x 1 , x 2 , …,x n , доставляющих экстремум (минимум или максимум) линейной функции Z=C 1 x 1 ,+ C 2 x 2+…+ C n x n

и одновременно удовлетворяющих m ограничениям вида

a 1,1 x 1 +a 1,2 x 2 +…+a 1,n x n £ =≥b 1 ,

a 2,1 x 1 +a 2,2 x 2 +…+a 2,n x n £ = ≥b 2 ,

. . . . . . . . . . . . . . . . . . . . . . .,

a m,1 x 1 +a m,2 x 2 +…+a m,n x n £ = ≥b m ,

при заданных a i,j , b i, C j (i=1,2,…,m; j=1,2,…,n). Знак отношения может принимать любое из трех приведенных значений.

Пример задачи линейного программирования

Рассмотрим следующую задачу. Менеджер предприятия, изготавливающего два вида красок, описал исследователю операций ситуацию, сложившуюся на производстве и рынке сбыта красок. Оказалось, что фабрика изготавливает два вида красок: для внутренних и внешних работ. Обе краски поступают в оптовую продажу. Для производства красок используются два исходных продукта – А и В. Максимально возможные суточные запасы этих продуктов 6 и 8 тонн соответственно. Опыт показал, что суточный спрос на внешнюю краску никогда не превышает спрос на внутреннюю более чем на 1 тонну. Кроме того, установлено, что спрос на внешнюю краску никогда не превышает 2 тонны в сутки. Оптовые цены одной тонны красок сложились следующим образом: 3 тысячи рублей на внешнюю краску и 2 тысячи рублей – на внутреннюю. Какое количество краски каждого вида должна производить фабрика, чтобы доход от реализации был максимальным?

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

При построении математической модели специалист по исследованию операций ставит перед собой три вопроса.

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

Введем переменные:

x 1 – суточный объем производства внешней краски (в тоннах),

x 2 – суточный объем производства внутренней краски (в тоннах).

Учитывая оптовые цены на тонну каждого вида краски, суточный доход от продажи произведенной продукции задается линейной целевой функцией Z = 3x 1 + 2x 2 .

Целью производства является получение максимальной прибыли, значит, необходимо найти значения x 1 и x 2 , которые максимизируют целевую функцию Z.

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

Первый тип ограничений определяется запасами продуктов А и В, из которых производятся краски. Из технологии производства известно, что на производство тонны внешней краски идут две части продукта А, а на тонну внутренней – одна часть. Для продукта В соотношение обратное. Эти технологические условия описываются неравенствами

2x 1 + x 2 £ 6 (на складе 6 тонн продукта А),

x 1 + 2x 2 £ 8 (на складе 8 тонн продукта В).

Последние два ограничения означают очевидное обстоятельство: нельзя использовать для производства красок больше продуктов А и В, чем их имеется фактически на складе.

Ситуация с реализацией красок на рынке приводит к следующим ограничениям: x 1 – x 2 £ 1 (внешней краски реализуется не более, чем на одну тонну больше внутренней), x 1 £ 2 (внешней краски продается не более двух тонн в день).

Суммируя все сказанное, можно математическую модель, описывающую сложившуюся производственную ситуацию, задать в следующей форме:

найти ® max{ Z=2× x 1 + 3× x 2 } при следующих ограничениях на значения переменных x 1 и x 2

2 × x 1 + x 2 £ 6 ограничение (1),

X 1 + 2 × x 2 £ 8 ограничение (2),

X 1 - x 2 £ 1 ограничение (3),

X 1 £ 2 ограничение (4)

и требование неотрицательности переменных x 1 ³ 0 (5), x 2 ³ 0 (6).

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

Графический метод решения злп

Графический метод решения злп может быть реализован только в двумерном случае.

Математическая модель, полученная для сформулированной типовой задачи, требует исследования, так как заранее не известно, имеет ли она (как математическая задача) решение. Исследование проведем с использованием графических построений. Одновременно с таким исследованием найдем (если оно есть) и решение.

1 этап. Построение области допустимых решений

Цель – построить область, каждая точка которой удовлетворяет всем ограничениям.

Каждое из шести ограничений геометрически задает полуплоскость. Для того, чтобы ее построить, нужно:

  • · заменить в ограничении знак неравенства на равенство (получим уравнение прямой);
  • · построить прямую по двум точкам;
  • · определить, какую полуплоскость задает знак неравенства. Для этого подставить в неравенство какую-нибудь точку (например, начало координат). Если она удовлетворяет неравенству – закрашиваем полуплоскость, ее содержащую.

Такие действия выполняем для всех ограничений. Каждую из прямых обозначим номерами, принятыми при нумерации ограничений (см. рис).

Областью допустимых решений (удовлетворяющей всем ограничениям) является множество точек первого квадранта координатной плоскости (x 1 , x 2), представляющее собой пересечение всех полуплоскостей, определяемых неравенствами ограничений.

Множество точек, удовлетворяющих всем шести ограничениям задачи – многоугольник AFEDCB.

2 этап Построение линий уровня целевой функции и определение точки максимума

Цель - найти в построенном многоугольнике A FEDCB точку, в которой функция цели Z=2x 1 + 3x 2 принимает максимальное значение.

Проведем прямую 2x 1 + 3x 2 = Сonst (линию уровня) так, чтобы она пересекала многоугольник AFEDCB (например, Const=10). Эта линия уровня на рисунке изображена пунктирной линией.

Если рассматривать значения линейной целевой функции Z на множестве точек (x 1 ,x 2), принадлежащих отрезку пунктирной прямой, расположенному внутри шестиугольника, то все они равны одному и тому же значению (Const=10).

Определим направление возрастания функции. Для этого построим линию уровня с бОльшим значением. Это будет прямая, параллельная с построенной, но расположенная правее. Значит, в заданном направлении значение целевой функции возрастает, и в наших интересах сдвинуть ее как можно дальше в этом направлении.

Сдвиг можно продолжать до тех пор, пока перемещаемая прямая пересекает многоугольник допустимых решений. Последнее положение прямой, когда она имеет одну общую точку с многоугольником AFEDCB (точка С), соответствует максимальному значению целевой функции Z и достигается в точке С с координатами x 1 = 4/3 (» 1.333), x 2 =10/3 (» 3.333). При этом Z = 38/3 (» 12.667).

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

Первое . Область допустимых решений – выпуклый многоугольник (Почему выпуклый? Может ли область допустимых решений представлять собой пустое множество? Точку? Отрезок? Луч? Прямую? Если да, приведите пример системы ограничений ).

Второе . Максимум целевой функции достигается в вершине многоугольника допустимых решений (а может ли быть не единственное решение? Может ли решения не быть? )

Задание 1 (выполнить на занятии, показать преподавателю)

Решить графическим методом

А) F =2 x 1 +3 x 2 è max

При ограничениях

x 1 +3 x 2 ≤ 18

2 x 1 + x 2 ≤ 16

x 2 ≤ 5

3 x 1 ≤ 21

x 1 ≥ 0 x 2 ≥ 0

B ) F =4 x 1 +6 x 2 è min

При ограничениях

3 x 1 + x 2 ≥ 9

x 1 +2 x 2 ≥ 8

x 1 +6x 2 ≥ 12

x 1 ≥ 0 x 2 ≥ 0

C ) F =3 x 1 +3 x 2 è max

При ограничениях

x 1 +x 2 ≤ 8

2x 1 -x 2 ≥ 1

x 1 -2x 2 ≤ 2

x 1 ≥ 0 x 2 ≥ 0

D ) F =2 x 1 -3 x 2 è min

При ограничениях

x 1 +x 2 ≥ 4

2x 1 -x 2 ≥ 1

x 1 -2x 2 ≤ 1

x 1 ≥ 0 x 2 ≥ 0

A) x1=6 x2=4 F=24

B) x1=2 x2=3 F=26

C) x1Î x2=8-x1 F=24

Задание 2 (выполнить на занятии, показать преподавателю)

Ответить на вопросы, выделенные курсивом.

Задание 3 (домашнее)

Написать программу.

Дан текстовый файл вида

2 3 (коэффициенты целевой функции)

4 (количество ограничений)

2 2 12 (ограничения)

1 2 8

4 0 16

0 4 12

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

Построить несколько линий уровня целевой функции (нажимаем клавишу – прямая перемещается, отображается значение целевой функции). Отобразить масштаб.

Графический метод довольно прост и нагляден для решения задач ЛП с двумя переменными. Он основан на геометрическом представлении допустимых решений и ЦФ задачи.

Каждое из неравенств задачи ЛП определяет на координатной плоскости 1 2 ) некоторую полуплоскость (рис. 1), а система неравенств в целом - пересечение соответствующих плоскостей. Множество точек пересечения данных полуплоскостей называется областью допустимых решений (ОДР). ОДР всегда представляет собой выпуклую фигуру, т.е. обладающую следующим свойством: если две точки А и В принадлежат этой фигуре, то и весь отрезок АВ принадлежит ей. ОДР графически может быть представлена, выпуклым многоугольником, неограниченной выпуклой многоугольной областью, отрезком, лучом, одной точкой. В случае несовместности системы ограничений задачи ОДР является пустым множеством.

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

a il x 1 +a i 2 x 2 =b

можно представить в виде системы двух неравенств (рис. 1)

A i 2 x 2 <Ь 1э +a i 2 x 2 >bj.

ЦФ L(x)= с1х1 + с2х2 при фиксированном значении L(х)=L определяет на плоскости прямую линию с1х1 + с2х2 = L. Изменяя значения L, мы получим семейство параллельных прямых, называемых линиями уровня.

Это связано с тем, что изменение значения L повлечет изменение лишь длины отрезка, отсекаемого линией уровня на оси х2 (начальная ордината), а угловой коэффициент прямой tgа = -- останется постоянным (рис. 1).

Поэтому для решения будет достаточно построить одну из линий уровня, произвольно выбрав значение L.

Вектор C = (c1;c2) с координатами из коэффициентов ЦФ при х1 и х2 перпендикулярен к каждой из линий уровня (см. рис. 1). Направление вектора С совпадает с направлением возрастания ЦФ, что является важным моментом для решения задач. Направление убывания ЦФ противоположно направлению вектора С.

Суть графического метода заключается в следующем. По направлению (против направления) вектора С в ОДР производится поиск оптимальной точки X = (х1; х2). Оптимальной считается точка, через которую проходит линия уровня L max (L min), соответствующая наибольшему (наименьшему) значению функции L(x). Оптимальное решение всегда находится на границе ОДР, например, в последней вершине многоугольника ОДР, через которую пройдет целевая прямая, или на всей его стороне.

При поиске оптимального решения задач ЛП возможны следующие ситуации: существует единственное решение задачи; существует бесконечное множество решений (альтернативный оптиум); ЦФ не ограничена; область допустимых решений - единственная точка; задача не имеет решений.

Допустимая область - полуплоскость

Рисунок 1

1.2. Методика решения задач лп графическим методом

I. Вограничениях задачи замените знаки неравенств на знаки точных равенств и постройте соответствующие прямые.

II. Найдите и заштрихуйте полуплоскости, разрешенные каждым из ограничений-неравенств задачи. Для этого подставьте в конкретное неравенство координаты какой-либо точки [например, (0;0)], и проверьте истинность полученного неравенства.

Если неравенство истинное, то надо заштриховать полуплоскость, содержащую данную точку; иначе (неравенство ложное) надо заштриховать полуплоскость, не содержащую данную точку.

Поскольку х1 и х2 должны быть неотрицательными, то их допустимые значения всегда будут находиться выше оси х 1 и правее оси х2, т.е. в 1-м квадранте.

Ограничения-равенства разрешают только те точки, которые лежат на соответствующей прямой, поэтому выделите на графике такие прямые.

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

    Если ОДР - не пустое множество, то постройте целевую прямую, т.е. любую из линий уровня с 1 х 1 + с 2 х 2 = L, где L - произвольное число, например, кратное с 1 и с 2 , т.е. удобное для проведения расчетов. Способ построения аналогичен построению прямых ограничений.

V. Постройте вектор C = (c 1 ,с 2), который начинается в точке (0;0), заканчивается в точке (c 1 ,с 2). Если целевая прямая и вектор С построены верно, то они будут перпендикулярны.

VI. При поиске max ЦФ передвигайте целевую прямую в направлении вектора С, при поиске min ЦФ - против направления вектора С. Последняя по ходу движения вершина ОДР будет точкой max или min ЦФ. Если такой точки (точек) не существует, то сделайте вывод о неограниченности ЦФ на множестве планов сверху (при поиске шах) или снизу (при поиске min).

Определите координаты точки max (min) ЦФ X = (х1 * ; х2 * ) и вычислите значение ЦФ l(x *). Для вычисления координат оптимальной точки X * решите систему уравнений прямых, на пересечении которых находится X * .

Задача 1

Найдем оптимальное решение задачи, математическая модель которой имеет вид

L(Х) = 3x 1 + 2x 2 → max

х 1 + 2х 2 < 6, (1)

2х 1 + х 2 < 8, (2)

Х 1 +х 2 <1, (3)

х 2 < 2, (4)

х 1 >0,х 2 >0.

Построим прямые ограничений, для чего вычислим координаты точек пересечения этих прямых с осями координат (рис. 2).

х 1 + 2х 2 = 6,(1)

2х1 + х2= 8,(2)

(1) х1=0, х1=6, х2=3, х2=0,

(2) х1=0, х1=4, х2=8, х2=0,

(3) х1=0, х1=-1, х2=1, х2=0,

Прямая (4) проходит через точку х 2 = 2 параллельно оси L(Х).

Рис. 2. Графическое решение задачи

Определим ОДР. Например, подставим точку (0;0) в исходное ограничение (3), получим 0 < 1, что является истинным неравенством, поэтому стрелкой (или штрихованием) обозначим полуплоскость, содержащую точку (0;0), т.е. расположенную правее и ниже прямой (3). Аналогично определим допустимые полуплоскости для остальных ограничений и укажем их стрелками у соответствующих прямых ограничений (рис. 2). Общей областью, разрешенной всеми ограничениями, т.е. ОДР является многоугольник ABCDEF.

Целевую прямую можно построить по уравнению

Строим вектор С из точки (0;0) в точку (3;2). Точка Е- это последняя вершина многоугольника допустимых решений ABCDEF, через которую проходит целевая прямая, двигаясь по направлению вектора С. Поэтому Е -это точка максимума ЦФ. Определим координаты точки Е из системы уравнений прямых ограничений (1) и (2)

Х1 +2х 2 =6, (1) х1=10/3=3 1/3, х2=4/3=1 1/3

2 Х1 +х 2 =8, (2) Е 3 1/3; 1 1/3

Максимальное значение ЦФ равно L(E) = 3*10/3+2*4/3 = 12 2 / 3

Графический метод довольно прост и нагляден для решения задач линейного программирования с двумя переменными. Он основан на геометрическом представлении допустимых решений и ЦФ задачи.

Каждое из неравенств задачи линейного программирования (1.2) определяет на координатной плоскости некоторую полуплоскость (рис.2.1), а система неравенств в целом - пересечение соответствующих плоскостей. Множество точек пересечения данных полуплоскостей называется областью допустимых решений (ОДР). ОДР всегда представляет собой выпуклую фигуру, т.е. обладающую следующим свойством: если две точки А и В принадлежат этой фигуре, то и весь отрезок АВ принадлежит ей. ОДР графически может быть представлена выпуклым многоугольником, неограниченной выпуклой многоугольной областью, отрезком, лучом, одной точкой. В случае несовместности системы ограничений задачи (1.2) ОДР является пустым множеством.

Все вышесказанное относится и к случаю, когда система ограничений (1.2) включает равенства, поскольку любое равенство

можно представить в виде системы двух неравенств (см. рис.2.1)

ЦФ при фиксированном значении определяет на плоскости прямую линию. Изменяя значения L, мы получим семейство параллельных прямых, называемых линиями уровня .

Это связано с тем, что изменение значения L повлечет изменение лишь длины отрезка, отсекаемого линией уровня на оси (начальная ордината), а угловой коэффициент прямой останется постоянным (см.рис.2.1). Поэтому для решения будет достаточно построить одну из линий уровня, произвольно выбрав значение L.

Вектор с координатами из коэффициентов ЦФ при и перпендикулярен к каждой из линий уровня (см. рис.2.1). Направление вектора совпадает с направлением возрастания ЦФ, что является важным моментом для решения задач. Направление убывания ЦФ противоположно направлению вектора.

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

При поиске оптимального решения задач линейного программирования возможны следующие ситуации: существует единственное решение задачи; существует бесконечное множество решений (альтернативный оптиум); ЦФ не ограничена; область допустимых решений - единственная точка; задача не имеет решений.

Рисунок 2.1 Геометрическая интерпретация ограничений и ЦФ задачи.

Методика решения задач ЛП графическим методом.

I. В ограничениях задачи (1.2) заменить знаки неравенств знаками точных равенств и построить соответствующие прямые.

II. Найти и заштриховать полуплоскости, разрешенные каждым из ограничений-неравенств задачи (1.2). Для этого нужно подставить в конкретное неравенство координаты какой-либо точки [например, (0;0)], и проверить истинность полученного неравенства.

Если неравенство истинное,

то надо заштриховать полуплоскость, содержащую данную точку;

иначе (неравенство ложное) надо заштриховать полуплоскость, не содержащую данную точку.

Поскольку и должны быть неотрицательными, то их допустимые значения всегда будут находиться выше оси и правее оси, т.е. в I-м квадранте.

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

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

IV. Если ОДР - не пустое множество, то нужно построить целевую прямую, т.е. любую из линий уровня (где L - произвольное число, например, кратное и, т.е. удобное для проведения расчетов). Способ построения аналогичен построению прямых ограничений.

V. Построить вектор, который начинается в точке (0;0) и заканчивается в точке. Если целевая прямая и вектор построены верно, то они будут перпендикулярны .

VI. При поиске максимума ЦФ необходимо передвигать целевую прямую в направлении вектора, при поиске минимума ЦФ - против направления вектора. Последняя по ходу движения вершина ОДР будет точкой максимума или минимума ЦФ. Если такой точки (точек) не существует, то можно сделать вывод о неограниченности ЦФ на множестве планов сверху (при поиске максимума) или снизу (при поиске минимум).

VII. Определить координаты точки max (min) ЦФ и вычислить значение ЦФ. Для вычисления координат оптимальной точки необходимо решить систему уравнений прямых, на пересечении которых находится.


f = –х 1 + 5х 2 ¾> min ;

4х 1+ 3х 2 £ 24,

х 1– 10х 2 £ 0,

8х 1– 3х 2 ³ 0,

5х 1+ 3х 2 ³ 15,

х 1³0, х 2³ 0. (1)

Совокупность переменных хj , удовлетворяющих условию (1), называется областью допустимых решений. Допустимое решение, обращающее целевую функцию в min или max , называется оптимальным. Для его определения необходимо построить область допустимых решений (область определения). Так как в условии задачи заданы две переменные, то область допустимых решений находится на плоскости х 10х 2. Каждое неравенство (1) определяет полуплоскость, а равенство – прямую. Для построения полуплоскости необходимо найти ее границу и установить, с какой стороны от нее лежит искомая полуплоскость. Перепишем условия (1) в виде равенств (2) и пронумеруем их.

4х 1+ 3х 2 = 24 (I ),
х 1– 10х 2 = 0 (II ),
8х 1– 3х 2 = 0 (III ),
5х 1+ 3х 2 = 15 (IV ). (2)

Введем систему координат х 10х 2 и построим последовательно эти прямые – границы полуплоскостей. Для построения прямой на плоскости необходимо определить любые две точки, лежащие на этой прямой. Если прямая пересекает оси 0х 1и 0х 2, то можно найти координаты точек ее пересечения с осями координат. Определим координаты пересечения прямой (I ) с осью 0х 1: х 1=0; Þ 3х 2= 24; Þ х 2= 8. Соответственно определим координаты второй точки пересечения первой прямой с осью 0х 2: х 2=0; Þ 4х 1= 24; Þ х 1= 6. Следовательно, точки пересечения прямой (I ) с осями координат равны (0,8) и (6,0). Построим эту прямую (рис. 1).

Определим полуплоскость. Для этого подставим в первое неравенство (1) координаты любой точки, не лежащей на данной прямой, например (0,0). Тогда из первого условия следует: 4×0+3×0 £24, значит, неравенство справедливо, откуда следует, что полуплоскость лежит с той стороны прямой, где находится точка с координатами (0,0).


Аналогичным образом строятся и другие полуплоскости. Необходимо учесть, что прямые (II) и (III) проходят через начало координат, т.е. точку (0,0). Координаты второй точки желательно брать пропорционально коэффициентам в уравнении искомой прямой. Например, для второй прямой – точки (0,0) и (10,1), а для третьей – (0,0) и (3,8). После построения всех полуплоскостей область допустимых решений примет следующий вид (рис. 3):



Целевая функция f определяет на плоскости прямую, которая должна проходить через точку или сторону многоугольника и иметь наименьшее значение. Построим направляющий вектор для этой прямой. Данный вектор перпендикулярен искомой прямой, и его направление всегда определяет максимум целевой функции. Противоположное направление вектора определяет минимум. Обозначим этот вектор через . Он проходит через точку (0,0) и (–1,5). Координаты второй точки берут из коэффициентов целевой функции и с их помощью определяют направление вектора. Перпендикулярно ему построим прямую –х 1+ 5х 2=0. Как было сказано выше, вектор всегда показывает направление возрастания значения целевой функции (max ) , противоположный ему вектор –– направление убывания значения целевой функции (min ). Перемещаем прямую –х 1+5х 2=0 по области определения параллельно самой себе в направлении min . Целевая функция f достигнет своего минимального значения в точке С (рис. 4).


Оптимальному решению задачи (1) соответствует точка С , которая лежит на пересечении прямых (I ) и (II ):

4х 1+ 3х 2= 24;

х 1– 10х 2= 0.

Для решения данной системы уравнений умножить второе уравнение на 4 и сложить соответственно по элементам с 1-м уравнением:

4х 1+ 3х 2 = 24;

4х 1– 40х 2 = 0.

Вычтем из первого уравнения второе, получим: 43х2= 24 Þ х 2= 0,56.

Подставив найденное значение х 2во второе уравнение, получим:

х 1= 10х х 1=5,6. Подставив координаты точки С в целевую функцию, получим следующий результат:

f min = – 5,6 + 5×0,56 = – 2,8.

Окончательный результат задачи запишем в следующем виде:

х 1= 5,6, х 2= 0,56;f min = – 2,8.

Решение данного примера на ПЭВМ осуществляется программным комплексом «Блок-3». С его помощью производятся ввод, решение и вывод результативной информации на внешний носитель. Простота и доступность комплекса позволит без труда освоить его и применять на практике.

Задача № 1.1.2.

f = 2х 1+ 3х 2 ¾> max;

2х 1+ 3х 2 £ 12,

2х 1– 5х 2 £ 0,

7х 1– 2х2³ 0,

х 1, х 2³ 0. (3)

Определения и построение области допустимых решений аналогичны заданию 1.1.1. Окончательный вид области допустимых решений представлен на рис. 5 многоугольником АВС (точка А совпадает с точкой 0).

Очевидно, что прямая, определяющая целевую функцию, совпадает с прямой, образующей сторону многоугольника ВС . Отсюда следует, что решением данной ЭММ являются точки, лежащие на стороне ВС много-

угольника АВС . Для записи решения ЭММ необходимо найти координату x 1B – точки В и x 1C – точки С . Определив их, мы сможем найти отрезок, лежащий на оси 0x 1(рис. 6).


Координаты точки В – x1B определяются в результате пересечения прямых 2х 1+ 3х 2 = 12 и 7х 1– 2х 2 = 0. Для этого необходимо решить систему уравнений:

2х 1+ 3х 2= 12 ´ 2 Þ 4х 1+ 6х 2= 24;

7х 1– 2х 2= 0 ´ 3 Þ 21х 1– 6х2= 0.

Сложив два последних уравнения, получим: 25х 1=24, х 1=0,96. Из этого следует, что x 1B =0,96. Координата точки С x 1C определяется в результате пересечения прямых 2х 1+ 3х 2=12 и 2х 1–5х 2=0. Решим систему уравнений:

2х 1+ 3х 2= 12 ´ 5 Þ 10х 1+ 15х 2= 60;

2х 1– 5х 2= 0 ´ 3 Þ 6х 1 – 15х 2= 0.

Сложив два последних уравнения, получим: 16х 1= 60, х 1= 3,75, откуда следует, что x 1C = 3,75.

Значение целевой функции для данной ЭММ равно 12 (так как уравнение прямой, на которой определен отрезок ВС – 2х 1+3х 2= 12).

Таким образом, ответ данной задачи:

x 1Î[x 1B ; x 1C ] Þ x 1Î;

2х 1+ 3х 2=12 Þ 3х 2= 12 – 2х х 2= (12 – 2х 1)/3.

Полный ответ данного примера запишется в следующем виде:

x 1Î; x 2= (12 – 2х 1)/3; f max = 12.

Задача № 1.1.3.

f = 2х 1+ 3х 2 ¾> max;

2х 1+ 3х 2 ³ 12,

2х 1– 5х 2 £ 0,

7х 1– 2х 2³ 0,

х 1, х 2 ³0. (4)

Используя схему построения области допустимых решений задач 1.1.1–1.1.2, получим следующий график (рис. 7):


f = 2х 1+ 3х 2 ¾> max ;

х 1+ х2 £ 2,

2х 1+ 3х 2³ 12,

2х 1– 5х 2£ 0,

7х 1– 2х 2³ 0,

х 1, х 2³ 0. (5)

Используя график задачи 1.1.3 и достроив первую полуплоскость х 1+х2£ 2, получим область определения, показанную на рис. 8.


Из графика (рис. 8) видно, что для данной ЭММ области допустимых решений нет. Ответ: нет области допустимых решений.

Задача № 1.1.5.

f = – х 1+ 5х 2 ¾> min;

10х 1+ 3х 2£ 30,

10х 1+ 5х 2³ 50,

2х 1– 6х 2£ 0,

х 1, х 2³ 0. (6)

Область определения ЭММ (6) представлена на рис. 9. Из анализа графика следует, что областью допустимых решений будет являться точка А с координатами (0,10) (10х 1+ 5х 2= 50, х 1= 0, 5х 2= 50, х 2=10). В случае, когда решением ЭММ является единственная точка, целевую функцию можно не строить.

Ответ: x 1= 0; x 2=10; fmin = 0+5×10 = 50.


Таким образом, при решении задач ЭММ ЛП возможны следующие ситуации:

– задача имеет одно оптимальное решение;

– задача имеет бесконечное число оптимальных решений;

– задача не имеет оптимального решения;

– задача не имеет области допустимых решений.

На практике ЭММ ЛП не имеет решений только в том случае, если некорректна постановка задачи.

Как показывает опыт разработки ЭММ, основная сложность состоит в описании экономико-технологических процессов в модели и выборе критерия оптимизации. Отсюда следует, что необходимо точно определить нормативные параметры. Это в свою очередь требует поставленного учета и анализа на исследуемом объекте. В то же время особое значение в составлении модели приобретает уровень подготовки специалиста. От его умения выявить основные звенья технологического процесса, определить этапы решения задачи и сформулировать цели исследования будет зависеть и качество решения данной проблемы.

Задача № 1.1.6.

Предприятие может организовать производство своей продукции двумя способами. При первом способе предприятие за месяц выпускает C 1 тыс. изделий, при втором – C 2 тыс. изделий. Расход производственных, людских ресурсов, амортизация оборудования и ограничения ресурсов, приведены ниже в таблице.

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

1) Решить графическим способом;

2) Решить на базе комплекса «Блок-3»;

3) Симплекс-методом.