Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Osnovy_Sist_analiza.doc
Скачиваний:
4
Добавлен:
06.12.2018
Размер:
1.17 Mб
Скачать

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

Такой алгоритм предполагает выполнение следующих действий.

  1. Записать уравнения граничных прямых.

  2. Построить графики граничных прямых на плоскости.

  3. Выделить область решения каждого неравенства системы.

  4. Выделить область допустимых решений.

  5. Построить градиент целевой функции.

  6. Построить линию уровня.

  7. Определить экстремальную точку области допустимых решений.

  8. Вычислить значение целевой функции в экстремальной точке.

    1. . Типовой пример

Пусть дана следующая задача.

Найти максимум целевой функции

z = 2x1 + 2x2

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

x1  0, x2  0.

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

Решение.

Запишем уравнения граничных прямых и построим их графики на плоскости x1Оx2 (рис.1).

l1 : x1 + 2x2 = 7, l3 : x2 = 3,

l2 : 2x1 + x2 = 8, l4 : x1 + 2x2 = 2.

Возьмем какую-нибудь пробную точку, например точку О(0; 0) (если это возможно). Выясним, какую полуплоскость определяет каждое неравенство (направления полуплоскостей отмечены стрелками). Определим область допустимых решений (многоугольник АВСDEF) как пересечение полученных полуплоскостей (рис.2).

Строим вектор-градиент(2; 2) и линию уровня c, взяв в качестве c0 значение ноль: c : 2x1 + 2x2 = 0.

Перемещая параллельно самой себе линию уровня С в направлении вектора-градиента (2; 2), находим экстремальную точку Е как точку пересечения прямых l1 и l2 (рис.3). Координаты точки Е находим, решив систему из уравнений этих прямых:

В результате получим точку Е(3; 2).

Вычислим значение целевой функции в полученной точке Е(3; 2):

z(3; 2) = 3 ∙ 2 + 2 ∙ 2 = 10.

Ответ: zmax = 10 при x1 = 3, x2 = 2.

Рис. 1 Рис. 2

Рис. 3

1.4. Индивидуальное задание №1

Решить графическим методом задачу оптимизации в условиях следующей модели:

1. z = –x1 + x2 + 2 min 2. ­­z = 3x1 + 2x2 max

x1 + x2 1 x1 + x2 1

3x1 + 2x2 6 –5x1 + x2 0

–3x1x2 –9 5x1x2 0

x1 0, x2 0 x1x2 –1

x1x2 4. x1 + x2 6

x1 0, x2 0.

3. z = –x1 + 4x2 max 4. z = –x1 + x2 max

3x1 + 2x2 12 –2x1 + x2 2

2x1x2 0 x1 – 2x2 2

–3x1 + 2x2 3 x1 + x2 5

x1 + 2x2 3 x1 0, x2 0.

x1 0, x2 0.

5. z = 3x1x2 min 6. z = –x1 – 2x2 max

2x1 + 5x2 – 10 0 x1x2 1

2x1 + x2 – 6 0 x1 + x2 2

x1 + 2x2 – 2 0 x1 – 2x2 0

x1 0, x2 0. x1 0, x2 0.

7. z = 2x1 + x2 max 8. z = 3x1 + 4x2 max

x1 + x2 20 –1 x1 + x2 1

0 x1 10 x1 + x2 –1

0 x2 30 –x1 + x2 2

x1 + x2 10. 2x1x2 2 x1 0, x2 0.

9. z = –2x1 + 5x2  min 10. z = –x2 + x1  min

7x1 + 2x2  14 x1 + 3x2 12

5x1 + 6x2 30 3x1x2 6

3x1 + 8x2 24 3x1 + 12x2 0

x1 0, x2 0. x1 0, x2 0.

11. z = 2x1 – 3x2 max 12. z = 3x1 – 2x2 min

4x1 + 3x2  12 7x1 + 2x2  14

3x1 + 4x2  24 –x1 + 2x2  2

3x1 + 8x2  24 7x1 + 7x2  28

x1  0, x2  0. x1  0, x2  0.

13. z = 6x1 + x2  min 14. z = x1 + x2  max

x1 + x2  3 2x1 + 5x2  10

x1x2  3 –2x1 + 3x2  12

–6x1 + 4x2  12 2x1 + 4x2  20

x1  2, x2  8. x1  0, x2  0.

15. z = 3x1 + x2  max 16. z = 2x1 + 4x2  max

–2  x1 + x2  2 –x1 + x2  1

–2  –x1 + x2  2 x1 + x2  2

0  x1  1 0  x1  10

0  x2  3  2 . 0  x2  10.

17. z = 4x1 + x2  min 18. z = 2x1 + x2 + 4  min

x1 + x2  2 x1 + x2  4

x1x2  2 8x1 – 4x2  16

4x1 – 4x2  –8 x1  2

x1  1 0  x2  9.

0  x2  4.

19. z = –x1 + 4x2  max 20. z = 2x1 + 3x2  min

3x1 + 2x2  12 x1 + x2  4

2x1x2  0 6x1 + 2x2  8

–3x1 + 2x2  3 x1 + 5x2  4

x1 + 2x2  3 0  x2  3

x1  0, x2  0. 0  x1  3.

21. z = 2x1 + x2  max 22. z = 2x1 + x2  max

x1 + x2  4 x1 – 2x2  6

0  x1  4 x1 + 3x2  8

0  x2  5 0  x1  4

x2 + x1  0. 0  x2  2.

23. z = –2x1 + 5x2  min 24. z = 5x1 + x2  max

7x1 + 2x2  8 x1 + x2  2

5x1 + 6x2  30 x1x2  2

3x1 + 8x2  24 4x1 + 8x2  16

x1  0, x2  0. x1  1, 0  x2  3.

25. z = x1 + 2x2  min 26. z = x1 + 2x2  min

2x1 + 4x2  8 2x1 + 4x2  8

0  x1  2 –x1 + 2x2  2

0  x2  1. x1  0, x2  0.

27. z = 8x1 + 6x2  max 28. z = 2x1 + x2  max

4x1 + 3x2  12 –x1 – 2x2  –4

7x1 + 5x2  35 5x1 + x2  40

0  x1  3 2x1 – 2x2  7

0  x2  19  3. x1 + x2  4

x1  0, x2  0.

29. z = 2x1 – 3x2  min 30. z = 3x1 + x2  max

–4x1 + 5x2  20 10x1 + 7x2  70

2x1 + x2  6 8x1 + 10x2  80

5x1 – 2x2  20 x1  0, x2  0.

x1x2  6

x1  0, x2  0.

  1. СИМПЛЕКСНЫЙ МЕТОД РЕШЕНИЯ ЗАДАЧ

ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ

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

симплексным методом

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

В зависимости от вида ограничений различают две формы общей модели ЗЛП: каноническую и стандартную.

ЗЛП называется канонической, если ограничения представлены в виде равенств:

z = c1x1 + c2x2 + … + cnxn

xj  0, j = 1, 2,…, n, m < n.

Эти соотношения можно записать в векторной форме:

xj  0; i = 1, 2,…, m; j = 1, 2,…, n; m < n.

ЗЛП называется стандартной, если ограничения представлены в виде неравенств, содержащих знаки ≤ или ≥. В векторной форме эти соотношения имеют вид:

;

или ;

xj  0, i = 1, 2,…, m, j = 1, 2,…, n, m < n.

Необходимо найти такие значения x1, x2, … , xn, которые обращают в максимум целевую функцию.

Любая стандартная ЗЛП может быть приведена к ЗЛП в каноническом виде с помощью введения неотрицательных переменных xn+i, которые называют дополнительными. В целевую функцию они входят с нулевыми коэффициентами. В ограничения, содержащие знаки , дополнительные переменные входят с коэффициентом «1», а в ограничения, содержащие знаки ≥, дополнительные переменные входят с коэффициентом «–1»:

i = 1, 2, …, m ;

или

i = 1, 2, …, m.

При сведении стандартной ЗЛП, имеющей ограничения со знаком , к ЗЛП в каноническом виде, коэффициенты при переменных xn+i образуют систему m линейно независимых векторов, представляющую базис.

Переменные xn+1, xn+2, …, xn+m называются базисными переменными, а остальные – свободными.

Замечание: Если в системе ограничений из коэффициентов при m переменных xn+1, xn+2, …, xn+m невозможно составить единичную матрицу m-го порядка, то необходимо выбрать базис и найти разложение всех векторов по этому базису.

Из математической модели ЗЛП следует, что в допустимом решении X0 базисные переменные равны правым частям соответствующих ограничений, а свободные переменные равны нулю: X0 = (0, 0, …, 0, b1, b2, …, bm).

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

Симплекс-методом ЗЛП решается за конечное число шагов (итераций). На первом шаге отыскивается исходный опорный план, содержащий не более m ненулевых компонент, где m – число строк. На каждом последующем шаге осуществляется нахождение нового опорного плана со значением целевой функции не хуже, чем на предыдущем шаге.

Условия задачи, а также все вычисления при решении ЗЛП симплекс-методом будем оформлять в виде симплекс-таблиц (таблица 1).

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

В клетке оценочной строки, соответствующей свободным членам, записывается значение целевой функции z0 при первоначальном опорном плане.

Таблица 1

Базисные

переменные

Свободные

члены

Свободные переменные

Симплексные

отношения

x1

x2

xn

xn+1

b1

a11

a12

a1n

xn+2

b2

a21

a22

a2n

xn+m

bm

am1

am2

amn

Оценочная строка

z0

с1

с2

сn

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]