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

КОНТРОЛЬНАЯ РАБОТА ПО ДИСЦИПЛИНЕ:

«МЕТОДЫ ОПТИМАЛЬНЫХ РЕШЕНИЙ»

Вариант № 8

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

,

.

Решение

Необходимо найти минимальное значение целевой функции и максимальное, при системе ограничений:

9x 1 +3x 2 ≥30, (1)

X 1 +x 2 ≤4, (2)

x 1 +x 2 ≤8, (3)

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

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

Построим прямую, отвечающую значению функции F = 0: F = 2x 1 +3x 2 = 0. Вектор-градиент, составленный из коэффициентов целевой функции, указывает направление минимизации F(X). Начало вектора – точка (0; 0), конец – точка (2; 3). Будем двигать эту прямую параллельным образом. Поскольку нас интересует минимальное решение, поэтому двигаем прямую до первого касания обозначенной области. На графике эта прямая обозначена пунктирной линией.

Прямая
пересекает область в точке C. Так как точка C получена в результате пересечения прямых (4) и (1), то ее координаты удовлетворяют уравнениям этих прямых:
.

Решив систему уравнений, получим: x 1 = 3.3333, x 2 = 0.

Откуда найдем минимальное значение целевой функции: .

Рассмотрим целевую функцию задачи .

Построим прямую, отвечающую значению функции F = 0: F = 2x 1 +3x 2 = 0. Вектор-градиент, составленный из коэффициентов целевой функции, указывает направление максимизации F(X). Начало вектора – точка (0; 0), конец – точка (2; 3). Будем двигать эту прямую параллельным образом. Поскольку нас интересует максимальное решение, поэтому двигаем прямую до последнего касания обозначенной области. На графике эта прямая обозначена пунктирной линией.

Прямая
пересекает область в точке B. Так как точка B получена в результате пересечения прямых (2) и (3), то ее координаты удовлетворяют уравнениям этих прямых:

.

Откуда найдем максимальное значение целевой функции: .

Ответ:
и
.

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

.

Решение

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

Определим минимальное значение целевой функции
при следующих условиях-ограничений:
.

Для построения первого опорного плана систему неравенств приведем к системе уравнений путем введения дополнительных переменных.

В 1-м неравенстве смысла (≥) вводим базисную переменную x 3 со знаком минус. В 2-м неравенстве смысла (≤) вводим базисную переменнуюx 4 . В 3-м неравенстве смысла (≤) вводим базисную переменную x 5 .

Введем искусственные переменные : в 1-м равенстве вводим переменнуюx 6 ;

Для постановки задачи на минимум целевую функцию запишем так: .

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

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

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

Из уравнений выражаем искусственные переменные: x 6 = 4-x 1 -x 2 +x 3 , которые подставим в целевую функцию: или.

Матрица коэффициентов
этой системы уравнений имеет вид:
.

Решим систему уравнений относительно базисных переменных: x 6 , x 4 , x 5.

Полагая, что свободные переменные равны 0, получим первый опорный план:

X1 = (0,0,0,2,10,4)

Базисное решение называется допустимым, если оно неотрицательно.

x 1

x 2

x 3

x 4

x 5

x 6

x 6

x 4

x 5

Текущий опорный план не оптимален, так как в индексной строке находятся положительные коэффициенты. В качестве ведущего выберем столбец, соответствующий переменной x 2 , так как это наибольший коэффициент. Вычислим значенияD i и из них выберем наименьшее: min(4: 1 , 2: 2 , 10: 2) = 1.

Следовательно, 2-ая строка является ведущей.

Разрешающий элемент равен (2) и находится на пересечении ведущего столбца и ведущей строки.

x 1

x 2

x 3

x 4

x 5

x 6

x 6

x 4

x 5

Формируем следующую часть симплексной таблицы. Вместо переменной x 4 в план 1 войдет переменная x 2 .

Строка, соответствующая переменной x 2 в плане 1, получена в результате деления всех элементов строки x 4 плана 0 на разрешающий элемент РЭ=2. На месте разрешающего элемента получаем 1. В остальных клетках столбца x 2 записываем нули.

Таким образом, в новом плане 1 заполнены строка x 2 и столбец x 2 . Все остальные элементы нового плана 1, включая элементы индексной строки, определяются по правилу прямоугольника.

x 1

x 2

x 3

x 4

x 5

x 6

x 6

x 2

x 5

1 1 / 2 +1 1 / 2 M

Текущий опорный план неоптимален, так как в индексной строке находятся положительные коэффициенты. В качестве ведущего выберем столбец, соответствующий переменной x 1 , так как это наибольший коэффициент. Вычислим значенияD i по строкам как частное от деления:и из них выберем наименьшее: min (3: 1 1 / 2 , - , 8: 2) = 2.

Следовательно, 1-ая строка является ведущей.

Разрешающий элемент равен (1 1 / 2) и находится на пересечении ведущего столбца и ведущей строки.

x 1

x 2

x 3

x 4

x 5

x 6

x 6

1 1 / 2

x 2

x 5

-1 1 / 2 +1 1 / 2 M

Формируем следующую часть симплексной таблицы. Вместо переменной x 6 в план 2 войдет переменная x 1 .

Получаем новую симплекс-таблицу:

x 1

x 2

x 3

x 4

x 5

x 6

x 1

x 2

x 5

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

Окончательный вариант симплекс-таблицы:

x 1

x 2

x 3

x 4

x 5

x 6

x 1

x 2

x 5

Так как в оптимальном решении отсутствуют искусственные переменные (они равны нулю), то данное решение является допустимым.

Оптимальный план можно записать так: x 1 = 2, x 2 = 2:.

Ответ :
,
.

3. Фирма «Три толстяка» занимается доставкой мясных консервов с трёх складов, расположенных в разных точках города в три магазина. Запасы консервов, имеющиеся на складах, а также объёмы заказов магазинов и тарифы на доставку (в условных денежных единицах) представлены в транспортной таблице.

Найти план перевозок, обеспечивающий наименьшие денежные затраты (первоначальный план перевозок выполнить по методу «северо-западного угла»).

Решение

Проверим необходимое и достаточное условие разрешимости задачи:

= 300 + 300 + 200 = 800 .

= 250 + 400 + 150 = 800.

Условие баланса соблюдается. Запасы равны потребностям. Следовательно, модель транспортной задачи является закрытой.

Занесем исходные данные в распределительную таблицу.

Потребности

Используя метод северо-западного угла, построим первый опорный план транспортной задачи.

План начинается заполняться с верхнего левого угла.

Искомый элемент равен 4. Для этого элемента запасы равны 300, потребности 250. Поскольку минимальным является 250, то вычитаем его: .

300 - 250 = 50

250 - 250 = 0

Искомый элемент равен 2. Для этого элемента запасы равны 50, потребности 400. Поскольку минимальным является 50, то вычитаем его: .

50 - 50 = 0

400 - 50 = 350

Искомый элемент равен 5. Для этого элемента запасы равны 300, потребности 350. Поскольку минимальным является 300, то вычитаем его:

300 - 300 = 0

350 - 300 = 50

Искомый элемент равен 3. Для этого элемента запасы равны 200, потребности 50. Поскольку минимальным является 50, то вычитаем его:

200 - 50 = 150

50 - 50 = 0

Искомый элемент равен 6. Для этого элемента запасы равны 150, потребности 150. Поскольку минимальным является 150, то вычитаем его:

150 - 150 = 0

150 - 150 = 0

Потребности

Тесты для текущего контроля знаний

1. Любая экономико – математическая модель задачи линейного программирования состоит из:

A. целевой функции и системы ограничений

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

C. системы ограничений и условия неотрицательности переменных

D. целевой функции и условия неотрицательности переменных

A. целевая функция

B. система уравнений

C. система неравенств

D. условие неотрицательности переменных

3. Оптимальное решение задачи математического программирования – это

A. допустимое решение системы ограничений

B. любое решение системы ограничений

C. допустимое решение системы ограничений, приводящее к максимуму или минимуму целевой функции

D. максимальное или минимальное решение системы ограничений

4. Система ограничений называется стандартной, если она содержит

A. все знаки

B. все знаки

C. все знаки

D. все знаки

5. Задача линейного программирования решается графическим способом, если в задаче

A. одна переменная

B. две переменные

C. три переменные

D. четыре переменные

6. Неравенство вида описывает

B. окружность

C. полуплоскость

D. плоскость

7. Максимум или минимум целевой функции находится

A. в начале координат

B. на сторонах выпуклого многоугольника решений

C. внутри выпуклого многоугольника решений

D. в вершинах выпуклого многоугольника решений

8. Каноническим видом ЗЛП называется такой ее вид, в котором система ограничений содержит знаки

A. все знаки

B. все знаки

C. все знаки

D. все знаки

9. Если ограничение задано со знаком «>=», то дополнительная переменная вводится в это ограничение с коэффициентом

B. -1

10. В целевую функцию дополнительные переменные вводятся с коэффициентами

C. 0

A. количество ресурса с номером i, необходимого для изготовления 1 единицы продукции j – го вида

B. неиспользованные ресурсы i - го вида

C. прибыль от реализации 1 единицы продукции j – го вида

D. количество продукции j – го вида

12. Разрешающий столбец при решении ЗЛП на max целевой функции выбирается исходя из условия

A. наибольшее положительное значение коэффициента Cj целевой функции

B. наименьшее положительное значение коэффициента Cj целевой функции

C. наибольшее отрицательное значение коэффициента Cj целевой функции

D. любой столбец коэффициентов при неизвестных

13. Значение целевой функции в таблице с оптимальным планом находится

A. на пересечении строки коэффициентов целевой функции со столбцом коэффициентов при х1

B. на пересечении строки коэффициентов целевой функции со столбцом b

C. в столбце коэффициентов при хn

D. на пересечении строки коэффициентов целевой функции со столбцом первоначального базиса

14. Искусственные переменные в систему ограничений в каноническом виде вводятся с коэффициентом

A. 1

15. Оптимальность плана в симплексной таблице определяется

A. по столбцу b

B. по строке значений целевой функции

C. по разрешающей строке

D. по разрешающему столбцу

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

B. 1

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

Количество искусственных переменных для этой задачи равно

C. 2

18. Если исходная ЗЛП имеет вид

тогда ограничения двойственной задачи

A. имеют вид

B. имеют вид

C. имеют вид

D. имеют вид

19. Если исходная ЗЛП имеет вид

A. имеют вид

B. имеют вид

C. имеют вид

D. имеют вид

20. Коэффициентами при неизвестных целевой функции двойственной задачи являются

A. коэффициенты при неизвестных целевой функции исходной задачи

B. свободные члены системы ограничений исходной задачи

C. неизвестные исходной задачи

D. коэффициенты при неизвестных системы ограничений исходной задачи

21. Если исходная ЗЛП была на максимум целевой функции, то двойственная задача будет

A. тоже на максимум

B. либо на максимум, либо на минимум

C. и на максимум, и на минимум

D. на минимум

22. Связь исходной и двойственной задач заключается в том, что

A. надо решать обе задачи

B. решение одной из них получается из решения другой

C. из решения двойственной задачи нельзя получить решения исходной

D. обе имеют одинаковые решения

23. Если исходная ЗЛП имеет вид

тогда целевая функция двойственной задачи

A. имеют вид

B. имеют вид

C. имеют вид

D. имеют вид

24. Если исходная ЗЛП имеет вид

то количество переменных в двойственной задаче равно

B. 2

25. Модель транспортной задачи закрытая,

A. если

26. Цикл в транспортной задаче – это

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

B. замкнутая прямоугольная ломаная линия, все вершины которых находятся свободных клетках

C. замкнутая прямоугольная ломаная линия, одна вершина которой в занятой клетке, остальные в свободных клетках

D. замкнутая прямоугольная ломаная линия, одна вершина которой в свободной клетке, а остальные в занятых клетках

27. Потенциалами транспортной задачи размерности (m*n) называются m+n чисел ui и vj, для которых выполняются условия

A. ui+vj=cij для занятых клеток

B. ui+vj=cij для свободных клеток

C. ui+vj=cij для первых двух столбцов распределительной таблицы

D. ui+vj=cij для первых двух строк распределительной таблицы

28. Оценками транспортной задачи размерности (m+n) называются числа

yij=cij-ui-vj, которые вычисляются

A. для занятых клеток

B. для свободных клеток

C. для первых двух строк распределительной таблицы

D. для первых двух столбцов распределительной таблицы

29. При решении транспортной задачи значение целевой функции должно от итерации к итерации

A. увеличиваться

B. увеличиваться или не меняться

C. увеличиваться на величину любой оценки

D. уменьшаться или не меняться

30. Число занятых клеток невырожденного плана транспортной задачи должно быть равно

C. m+n-1

31. Экономический смысл целевой функции транспортной задачи

A. суммарный объем перевозок

B. суммарная стоимость перевозок

C. суммарные поставки

D. суммарные потребности

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

Примеры

Гладкие функции и системы уравнений

Задача решения любой системы уравнений

{ F 1 (x 1 , x 2 , … , x M) = 0 F 2 (x 1 , x 2 , … , x M) = 0 … F N (x 1 , x 2 , … , x M) = 0 {\displaystyle \left\{{\begin{matrix}F_{1}(x_{1},x_{2},\ldots ,x_{M})=0\\F_{2}(x_{1},x_{2},\ldots ,x_{M})=0\\\ldots \\F_{N}(x_{1},x_{2},\ldots ,x_{M})=0\end{matrix}}\right.}

может быть сформулирована как задача минимизации целевой функции

S = ∑ j = 1 N F j 2 (x 1 , x 2 , … , x M) (1) {\displaystyle S=\sum _{j=1}^{N}F_{j}^{2}(x_{1},x_{2},\ldots ,x_{M})\qquad (1)}

Если функции гладкие, то задачу минимизации можно решать градиентными методами.

Для всякой гладкой целевой функции можно приравнять к 0 {\displaystyle 0} частные производные по всем переменным. Оптимум целевой функции будет одним из решений такой системы уравнений. В случае функции (1) {\displaystyle (1)} это будет система уравнений метода наименьших квадратов (МНК). Всякое решение исходной системы является решением системы МНК. Если исходная система несовместна, то всегда имеющая решение система МНК позволяет получить приближённое решение исходной системы. Число уравнений системы МНК совпадает с числом неизвестных, что иногда облегчает и решение совместных исходных систем.

Линейное программирование

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

Комбинаторная оптимизация

Типичным примером комбинаторной целевой функции является целевая функция задачи коммивояжёра. Эта функция равна длине гамильтонова цикла на графе. Она задана на множестве перестановок n − 1 {\displaystyle n-1} вершины графа и определяется матрицей длин рёбер графа. Точное решение подобных задач часто сводится к перебору вариантов.

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

  1. Линейное программирование

Линейное программирование – это направление математического программирования, изучающее методы решения экстремальных задач, которые характеризуются линейной зависимостью между переменными и линейным критерием. Такие задачи находят обширные приложения в различных сферах человеческой деятельности. Систематическое изучение задач такого типа началось в 1939 – 1940 гг. в работах Л.В. Канторовича.

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

Круг задач, решаемых при помощи методов линейного программирования достаточно широк.Это, например:

    задача об оптимальном использовании ресурсов при производственном планировании;

    задача о смесях (планирование состава продукции);

    задача о нахождении оптимальной комбинации различных видов продукции для хранения на складах (управление товарно-материальными запасами или);

    транспортные задачи (анализ размещения предприятия, перемещение грузов).

Линейное программирование – наиболее разработанный и широко применяемый раздел математического программирования (кроме того, сюда относят: целочисленное, динамическое, нелинейное, параметрическое программирование). Это объясняется следующим:

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

    данный тип задач в настоящее время наиболее изучен. Для него разработаны специальные методы, с помощью которых эти задачи решаются, и соответствующие программы для ЭВМ;

    многие задачи линейного программирования, будучи решенными, нашли широкое применение;

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

Экономико-математическая модель любой задачи линейного программирования включает: целевую функцию, оптимальное значение которой (максимум или минимум) требуется отыскать; ограничения в виде системы линейных уравнений или неравенств; требование неотрицательности переменных.

В общем виде модель записывается следующим образом:

целевая функция

(1.1) при ограничениях

(1.2) требования неотрицательности

(1.3) где x j – переменные (неизвестные);

- коэффициенты задачи линейного программирования.

Задача состоит в нахождении оптимального значения функции (1.1) при соблюдении ограничений (1.2) и (1.3).

Систему ограничений (1.2) называют функциональными ограничениями задачи, а ограничения (1.3) - прямыми.

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

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

Симплекс-метод был разработан и впервые применен для решения задач в 1947 г. американским математиком Дж. Данцигом.

Двумерные задачи линейного программирования решаются графически. Для случая N=3 можно рассмотреть трехмерное пространство и целевая функция будет достигать своё оптимальное значение в одной из вершин многогранника.

Допустимым решением (допустимым планом) задачи ЛП, данной в стандартной форме, называется упорядоченное множество чисел (х1, х2, …, хn), удовлетворяющих ограничениям; это точка в n-мерном пространстве.

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

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

Базисным называется решение, при котором все свободные переменные равны нулю.

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

Допустимое решение, при котором целевая функция достигает своего экстремального значения, называется оптимальным и обозначается .

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

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

С его помощью можно решить любую задачу линейного программирования.

В основу симплексного метода положена идея последовательного улучшения получаемого решения.

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

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

Процесс применения симплексного метода предполагает реализацию трех его основных элементов:

    способ определения какого-либо первоначального допустимого базисного решения задачи;

    правило перехода к лучшему (точнее, не худшему) решению;

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

Симплексный метод включает в себя ряд этапов и может быть сформулирован в виде четкого алгоритма (четкого предписания о выполнении последовательных операций). Это позволяет успешно программировать и реализовывать его на ЭВМ. Задачи с небольшим числом переменных и ограничений могут быть решены симплексным методом вручную.

6.1.Введение

Оптимизация. Часть 1

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

6.2.Основы теории оптимизации

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

Рассматривая некоторую произвольную систему, описываемую m уравнениями с n неизвестными, можно выделить три основных типа задач. Если m=n , задачу называют алгебраической. Такая задача обычно имеет одно решение. Если m>n, то задача переопределена и, как правило, не имеет решения. Наконец, при m

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

Проектные параметры

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

X1, x2, x3,...,xn.

Целевая функция

Это - выражение, значение которого инженер стремится сделать максимальным или минимальным. Целевая функция позволяет количественно сравнить два альтернативных решения. С мате-матической точки зрения целевая функция описывает некоторую (n+1) - мерную поверхность. Ее значение определяется проектными параметрами

M=M(x 1 , x 2 ,...,x n).

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

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

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

Рис.1.Одномерная целевая функция.

Рис.6.2.Двумерная целевая функция.

замкнутой математической форме, в других случаях она может

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

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

Поиск минимума и максимума

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

Пространство проектирования

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

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

Рис.6.3.Изменением знака целевой функции на противоположный

задача на максимум превращается в задачу на минимум.

удовлетворительного решения. Ограничения делятся на две группы: ограничения - равенства и ограничения - неравенства.

Ограничения - равенства

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

C 1 (x 1 , x 2 ,...,x n)=0,

C 2 (x 1 , x 2 ,...,x n)=0,

..................

C j (x 1 , x 2 ,...,x n)=0.

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

Ограничения - неравенства

Это особый вид ограничений, выраженных неравенствами. В общем случае их может быть сколько угодно, причем все они имееют вид

z 1 r 1 (x 1 , x 2 ,...,x n) Z 1

z 2 r 2 (x 1 , x 2 ,...,x n) Z 2

.......................

z k r k (x 1 , x 2 ,...,x n) Z k

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

Локальный оптимум

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

Рис.6.4.Произвольная целевая функция может иметь несколько

локальных оптимумов.

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

Глобальный оптимум

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

Пример 6.1

Пусть требуется спроектировать прямоугольный контейнер объемом 1м , предназначенный для перевозки неупакованного волокна. Желательно, чтобы на изготовление таких контейнеров затрачивалось как можно меньше материала (при условии посто-янства толщины стенок это означает, что площадь поверхности должна быть минимальной), так как при этом он будет дешевле. Чтобы контейнер удобно было брать автопогрузчиком, его ширина должна быть не менее 1,5м.

Сформулируем эту задачу в виде, удобном для применения алгоритма оптимизации.

Проектные параметры: x 1 , x 2 , x 3 .

Целевая функция (которую требуется минимизировать) - площадь боковой поверхности контейнера:

A=2(x 1 x 2 +x 2 x 3 +x 1 x 3), м2.

Ограничение - равенство:

Объем = x 1 x 2 x 3 =1м3.

Ограничение - неравенство:

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

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

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

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

В зависимости от вида функций и задачи математического программирования делятся на ряд классов (линейной, нелинейное, выпуклое, целочисленное, стохастическое, динамическое программирование и др.).

В общем виде задача ЛП имеет следующий вид:

, (5.1)

, , (5.2)

, , (5.3)

где , , – заданные постоянные величины.

Функцию (5.1) называют целевой функцией; системы (5.2), (5.3) – системой ограничений; условие (5.4) – условием неотрицательности проектных параметров.

Совокупность проектных параметров , удовлетворяющих ограничениям (5.2), (5.3) и (5.4), называют допустимым решением или планом .

Оптимальным решением или оптимальным планом задачи ЛП называется допустимое решение , при котором целевая функция (5.1) принимает оптимальное (максимальное или минимальное) значение.

Стандартной задачей ЛП называют задачу нахождения максимального (минимального) значения целевой функции (5.1) при условии (5.2) и (5.4), где , , т.е. т.е. ограничения только в виде неравенств (5.2) и все проектные параметры удовлетворяют условию неотрицательности, а условия в виде равенств отсутствуют:

,

, , (5.5)

.

Канонической (основной) задачей ЛП называют задачу нахождения максимального (минимального) значения целевой функции (5.1) при условии (5.3) и (5.4), где , , т.е. т.е. ограничения только в виде равенств (5.3) и все проектные параметры удовлетворяют условию неотрицательности, а условия в виде неравенств отсутствуют:

,

.

Каноническую задачу ЛП можно также записать в матричной и векторной форме.

Матричная форма канонической задачи ЛП имеет следующий вид:

Векторная форма канонической задачи ЛП.

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

F = 2x 1 + 3x 2 ® max

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

Решение с помощью таблиц Excel

Вначале построим на листе Excel решение системы неравенств.

Рассмотрим первое неравенство .

Построим граничную прямую по двум точкам. Прямую обозначим (L1)(или Ряд1). Координаты х 2 считаем по формулам:

Для построения выбираем точечную диаграмму

Выбираем данные для прямой

Изменяем название прямой:

Выбираем макет диаграммы. Изменяем название осей координат:

Прямая (L1) на графике:

Решение строгого неравенства можно найти с помощью единственной пробной точки, не принадлежащей прямой (L1). Например, с помощью точки (0; 0)Ï(L1).

0 + 3×0 < 18 или 0 < 18 .

Неравенство является верным, следовательно решением неравенства (1) будет та полуплоскость, в которой пробная точка расположена (на рисунке ниже прямой L1).

Затем решаем неравенство (2) .

Построим граничную прямую 2 по двум точкам. Прямую обозначим (L2).

Прямая (L2) на графике:

Решение строгого неравенства 2 можно найти с помощью единственной пробной точки, не принадлежащей прямой (L2). Например, с помощью точки (0; 0)Ï(L2).

При подстановке координат точки (0; 0), получаем неравенство

2×0 + 0 < 16 или 0 < 16 .

Неравенство является верным, следовательно решением неравенства (2) будет та полуплоскость, в которой пробная точка расположена (на рисунке ниже прямой L2).

Затем решаем неравенство (3) .

Построим граничную прямую по двум точкам. Прямую обозначим (L3).

Прямая (L3) на графике:

Решение строгого неравенства 2 можно найти с помощью единственной пробной точки, не принадлежащей прямой (L3). Например, с помощью точки (0; 0)Ï(L3).

При подстановке координат точки (0; 0), получаем неравенство

Неравенство является верным, следовательно решением неравенства (3) будет та полуплоскость, в которой пробная точка расположена (на рисунке ниже прямой L3).

Затем решаем неравенство (4) .

Построим граничную прямую по двум точкам. Прямую обозначим (L4).

На листе Excel добавляем данные

Прямая (L4) на графике:

Решение строгого неравенства 3х 1 < 21 можно найти с помощью единственной пробной точки, не принадлежащей прямой (L4). Например, с помощью точки (0; 0)Ï(L4).

При подстановке координат точки (0; 0), получаем неравенство

Неравенство является верным, следовательно, решением неравенства (4) будет та полуплоскость, в которой пробная точка расположена (на рисунке левее прямой L4).


Решением двух неравенств (5) и (6)

является 1-ая четверть, ограниченная координатными прямыми и .

Система неравенств решена. Решением системы неравенств (1) – (6) в данном примере является выпуклый многоугольник в левом нижнем углу рисунка, ограниченный прямыми L1, L2, L3, L4 и координатными прямыми и . Убедиться, что многоугольник выбран правильно, можно подстановкой пробной точки, например (1; 1) в каждое неравенство исходной системы. При подстановке точки (1; 1) получаем, что все неравенства, в том числе естественные ограничения, верные.

Рассмотрим теперь целевую функцию

F = 2x 1 + 3x 2 .

Построим линии уровня для значений функции F = 0 и F = 12 (числовые значения выбраны произвольно). На листе Excel добавляем данные

Линии уровней на графике:

Построим вектор направлений (или градиент) {2; 3}. Координаты вектора совпадают с коэффициентами целевой функции F .

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

ЗАДАЧА 2.А. Решение задачи линейного программирования графическим методом

Внимание!

Это ОЗНАКОМИТЕЛЬНАЯ ВЕРСИЯ работы №2073, цена оригинала 200 рублей. Оформлена в программе Microsoft Word.

Оплата . Контакты.

Вариант 7. Найти максимальное и минимальное значения линейной функции Ф = 2x 1 — 2·x 2 при ограничениях: x 1 + х 2 ≥ 4;

— х 1 + 2·х 2 ≤ 2;

x 1 + 2·х 2 ≤ 10;

х i ≥ 0, i = 1,2.

Решение:

Заменив условно знаки неравенств на знаки равенств, получим систему уравнений x1 + х2 = 4;

— х1 + 2·х2 = 2;

x1 + 2·х2 = 10.

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

Минимальное значение функ-

ции — в точке М(2; 2)

Ф min = 2·2 — 2·2 = 0.

Максимальное значение достигается в точке N (10; 0),

Ф max = 2·10 — 2·0 = 20.

Вариант 8. Найти максимальное и минимальное значения

линейной функции Ф = x 1 + x 2

при ограничениях: x 1 — 4·х 2 — 4 ≤ 0;

3·х 1 — х 2 ≥ 0;

x 1 + х 2 — 4 ≥ 0;

х i ≥ 0, i = 1,2.

Решение:

Заменив условно знаки неравенств на знаки равенств, получим систему уравнений x1 — 4·х2 = 4 ;

3·х1 — х2 = 0;

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

Минимальное значение функ-

ции – на прямой NP, например

в точке Р(4; 0)

Ф min = 4 + 0 = 4.

ОДР сверху не ограничена, следовательно, Ф max = + ∞.

Вариант 10. Найти максимальное и минимальное значения

линейной функции Ф = 2·x 1 — 3·x 2

при ограничениях: x 1 + 3·x 2 ≤ 18;

2·х 1 + х 2 ≤ 16;

х 2 ≤ 5;

х i ≥ 0, i = 1,2.

Заменив условно знаки неравенств знаками равенств, получим систему уравнений

x 1 + 3·x 2 = 18 (1);

2·х 1 + х 2 = 16 (2);

3·х 1 = 21 (4).

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

Построим вектор Г(2; -3) и через начало координат проведем линию уровня – прямую.

Перемещаем линию уровня в направлении, значение Ф при этом растет. В точке S(7; 0) целевая функция достигает максимума Ф max =2·7–3·0= = 14. Перемещаем линию уровня в направлении, значение Ф при этом убывает. Минимальное значение функции — в точке N(0; 5)

Ф min = 2·0 – 3·5 = –15.

ЗАДАЧА 2.B. Решение задачи линейного программирования

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

Вариант 7. Минимизировать целевую функцию Ф = x 1 — x 2 + x 3 + x 4 + x 5 — x 6

при ограничениях: x 1 + x 4 +6·x 6 = 9,

3·x 1 + x 2 – 4·x 3 + 2·x 6 = 2,

x 1 + 2·x 3 + x 5 + 2·x 6 = 6.

Решение:

Количество неизвестных n=6, количество уравнений m=3. Следовательно, r = n-m = 3 неизвестных можно принять в качестве свободных. Выберем x 1 , x 3 и x 6 .

Базисные переменные x 2 ,x 4 и x 5 выразим через свободные и приведем систему к единичному базису

х 2 = 2 — 3·x 1 + 4·x 3 – 2·x 6

x 4 = 9 – x 1 – 6·x 6 (*)

x 5 = 6 – x 1 — 2·x 3 – 2·x 6

Целевая функция будет иметь вид:

Ф = x 1 — 2 + 3·x 1 — 4·x 3 + 2·x 6 + x 3 + 9 – x 1 – 6·x 6 +6 – x 1 — 2·x 3 – 2·x 6 – x 6 =

13 + 2·x 1 — 5·x 3 – 7·x 6

Положим x 1 = x 3 = x 6 = 0, при этом базисные переменные примут значения x 2 = 2; x 4 = 9; x 5 = 6, то есть, первое допустимое решение (0; 2; 0; 9; 6; 0), целевая функция Ф 1 = 13.

Переменные х 3 и х 6 входят в целевую функцию с отрицательными коэффициентами, следовательно, при увеличении их значений величина Ф будет уменьшаться. Возьмем, к примеру, х 6 . Из 1-го уравнения системы (*) видно, что увеличение значения x 6 возможно до x 6 = 1 (пока x 2 ³ 0). При этом x 1 и x 3 сохраняют значения, равные нулю. Теперь в качестве базисных переменных примем х 4 , х 5 , х 6 , в качестве свободных – х 1 , х 2 , х 3 . Выразим новые базисные переменные через новые свободные. Получим

х 6 = 1 – 3/2·x 1 – 1/2·x 2 + 2·x 3

x 4 = 3 + 8·x 1 + 3·x 2 – 12·x 3

x 5 = 4 + 2·x 1 + x 2 – 6·x 3

Ф = 6 + 25/2 ·x 1 + 7/2·x 2 – 19·x 3

Присвоим свободным переменным нулевые значения, то есть, x 1 =x 2 = x 3 =0, при этом х 6 = 1, x 4 = 3, x 5 = 4, то есть, третье допустимое решение (0; 0; 0; 3; 4; 1). При этом Ф 3 = 6.

Переменная x 3 входит в целевую функцию с отрицательным коэффициентом, следовательно увеличение x 3 относительно нулевого значения приведет к снижению Ф. Из 2-го уравнения видно, что x 3 может возрастать до 1/4, из 3-го уравнения – до 2/3. Второе уравнение более критично. Переменную x 3 переведем в число базисных, x 4 — в число свободных.

Теперь в качестве новых свободных переменных примем x 1 , x 2 и x 4 . Выразим через них новые базисные переменные x 3 , x 5 , x 6 . Получим систему

х 3 = 1/4 + 2/3·x 1 + 1/4·x 2 – 1/12·x 4

x 5 = 5/2 — 2·x 1 – 1/2·x 2 + 1/2·x 4

x 6 = 3/2 – 1/6·x 1 – 1/6·x 4

Целевая функция примет вид

Ф = 5/4 — 1/6·x 1 — 5/4·x 2 + 19/12·x 4

Переменные х 1 и х 2 входят в целевую функцию с отрицательными коэффициентами, следовательно, при увеличении их значений величина Ф будет уменьшаться. Возьмем, например, х 2 . Из 2-го уравнения системы видно, что увеличение значения x 2 возможно до x 2 = 5 (пока x 5 ³ 0). При этом x 1 и x 4 сохраняют нулевые значения, значения других переменных равны x 3 = 3/2; x 5 = 0, x 6 = 3/2, то есть, четвертое допустимое решение (0; 5; 3/2; 0; 0; 3/2). При этом Ф 4 = 5/4.

Теперь в качестве новых свободных переменных примем x 1 , x 4 и x 5 . Выразим через них новые базисные переменные x 2 , x 3 , x 6 . Получим систему

х 2 = 5 — 4·x 1 + x 4 – 2·x 5

x 3 = 3/2 – 1/3·x 1 + 1/6·x 4 — 1/2·x 5

x 6 = 3/2 – 1/6·x 1 – 1/6·x 4

Целевая функция примет вид

Ф = — 5 + 29/6·x 1 + 1/3·x 4 + 5/2·x 5

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

То есть, минимальное значение Ф min = — 5, последнее допустимое решение (0; 5; 3/2; 0; 0; 3/2) является оптимальным.

Вариант 8. Максимизировать целевую функцию Ф = 4·x 5 + 2·x 6

при ограничениях: x 1 + x 5 + x 6 = 12;

x 2 + 5·x 5 — x 6 = 30;

x 3 + x 5 — 2·x 6 = 6;

2·x 4 + 3·x 5 — 2·x 6 = 18;

Решение:

Количество уравнений равно 4, количество неизвестных – 6. Следовательно r = n – m = 6 – 4 = 2 переменных можем выбрать в качестве свободных, 4 переменных – в качестве базисных. В качестве свободных выберем x 5 и x 6 , в качестве базисных — x 1 , x 2 , x 3 , x 4 . Выразим базисные переменные через свободные и приведем систему уравнений к единичному базису

x 1 = 12 — x 5 — x 6 ;

x 2 = 30 — 5·x 5 + x 6 ;

x 3 = 6 — x 5 + 2·x 6 ;

x 4 = 9 — 3/2·x 5 + x 6 ;

Целевую функцию запишем в виде Ф = 4·x 5 + 2·x 6 . Присвоим свободным переменным нулевые значения x 5 = x 6 = 0. При этом базисные переменные примут значения x 1 = 12, x 2 = 30, x 3 = 6, x 4 = 9, то есть, получим первое допустимое решение (12, 30, 6, 9, 0,) и Ф 1 = 0.

В целевую функцию обе свободные переменные входят с положительными коэффициентами, то есть, возможно дальнейшее увеличение Ф. Переведем, например, x 6 в число базисных. Из уравнения (1) видно, что x 1 = 0 при x 5 = 12, в (2) ÷ (4) x 6 входит с положительными коэффициентами. Перейдем к новому базису: базисные переменные – x 6 , x 2 , x 3 , x 4 , свободные — x 1 , x 5. Выразим новые базисные переменные через новые свободные

х 6 = 12 — x 1 — x 5 ;

x 2 = 42 — x 1 — 6·x 5 ;

x 3 = 30 — 2·x 1 — 3·x 5 ;

x 4 = 21 — x 1 — 5/2·x 5 ;

Целевая функция примет вид Ф = 24 — 2·x 1 + 2·x 5 ;

Присвоим свободным переменным нулевые значения x 1 = x 5 = 0. При этом базисные переменные примут значения x 6 =12, x 2 =42, x 3 = 30, x 4 = 21, то есть, получим второе допустимое решение (0, 42, 30, 21, 0, 12) и Ф 2 = 24.

В целевую функцию x 5 входит с положительным коэффициентом, то есть, возможно дальнейшее увеличение Ф. Перейдем к новому базису: базисные переменные – x 6 , x 5 , x 3 , x 4 , свободные — x 1 , x 2. Выразим новые базисные переменные через новые свободные

х 6 = 5 — 5/6·x 1 + 1/6·x 2 ;

x 5 = 7 — 1/6·x 1 — 1/6·x 2 ;

x 3 = 9 — 3/2·x 1 + 1/2·x 2 ;

x 4 = 7/2 — 7/12·x 1 + 5/12·x 5 ;

Целевая функция примет вид Ф = 38 – 7/2·x 1 – 1/3·x 2 ;

Присвоим свободным переменным нулевые значения x 1 = x 2 = 0. При этом базисные переменные примут значения x 6 = 5, x 5 = 7, x 3 = 9, x 4 = 7/2, то есть, получим третье допустимое решение Х 3 = (0, 0, 9, 7/2, 7, 5) и Ф 3 = 38.

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

Следовательно, последнее допустимое решение является оптимальным, то есть, Х опт = (0, 0, 9, 7/2, 7, 5) и Ф max = 38.

Вариант 10. Максимизировать целевую функцию Ф = x 2 + x 3

при ограничениях: x 1 — x 2 + x 3 = 1,

x 2 — 2·х 3 + х 4 = 2.

Решение:

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

Примем за свободные переменные x 2 и х 3 .Тогда базисными будут переменные х 1 и х 2 , которые выразим через свободные

x 1 = 1 + x 2 — x 3 ; (*)

x 4 = 2 — x 2 + 2·x 3 ;

Целевая функция уже выражена через x 2 и x 3 , то есть, Ф = x 2 + x 3 .

При х 2 =0 и х 3 =0 базисные переменные будут равными х 1 = 1, х 4 = 2.

Имеем первое допустимое решение Х 1 = (1, 0, 0, 2), при этом Ф 1 = 0.

Увеличение Ф возможно при увеличении, например, значения х 3 , который входит в выражение для Ф с положительным коэффициентом (x 2 при этом остается равным нулю). В первое уравнение системы (*) видно, что х 3 можно увеличивать до 1 (из условия х 1 ³0), то есть это уравнение накладывает ограничение на увеличение значения х 3 . Первое уравнение системы (*) является разрешающим. На базе этого уравнения переходим к новому базису, поменяв х 1 и х 3 местами. Теперь базисными переменными будут х 3 и x 4 , свободными — x 1 и x 2 . Выразим теперь х 3 и x 4 через х 1 и х 2 .

Получим: x 3 = 1 — x 1 + x 2 ; (**)

x 4 = 4 — 2·x 1 + x 2 ;

Ф = х 2 + 1 — х 1 + х 2 = 1 — x 1 + 2·x 2

Приравняв нулю свободные переменные, получим второе допустимое базисное решение Х 2 = (0; 0; 1; 4), при котором Ф 2 =1.

Увеличение Ф возможно при увеличении х 2 . Увеличение же х 2 , судя по последней системе уравнений (**), не ограничено. Следовательно, Ф будет принимать все большие положительные значения, то есть, Ф мах = + ¥.

Итак, целевая функция Ф не ограничена сверху, потому оптимального решения не существует.

ЗАДАЧА 2.D. Составить задачу, двойственную к приведенной

исходной задаче.

Вариант 7. Максимизировать целевую функцию Ф = 2 × х 1 — х 4

при ограничениях: х 1 + х 2 = 20,

х 2 + 2 × х 4 ≥ 5,

х 1 + х 2 + х 3 ≤ 8,

х i ≥ 0 (i = 1, 2, 3, 4)

Решение:

Приведем систему ограничений к единому, например, каноническому виду, введя дополнительные переменные во 2-ое и 3-е уравнения

х 1 + х 2 = 20,

х 2 + 2× х 4 – х 5 = 5,

— х 1 + х 2 + х 3 + х 6 = 8.

Получили несимметричную задачу 2-го типа. Двойственная задача будет иметь вид:

Минимизировать целевую функцию F = 20× у 1 + 5× y 2 + 8× y 3

при y 1 — y 3 2,

y 1 + y 2 + y 3 0,

y 3 0,

2× y 2 1,

Y 2 0,

y 3 0.

Вариант 8. Максимизировать целевую функцию Ф = х 2 — х 4 — 3 × х 5

при ограничениях: х 1 + 2 × х 2 — х 4 + х 5 = 1,

— 4 × х 2 + х 3 + 2 × х 4 — х 5 = 2,

3 × х 2 + х 5 + х 6 = 5,

x i ≥ 0, (i = 1, 6)

Решение:

Имеем исходную задачу на максимизацию с системой ограничений в виде уравнений, то есть, пара двойственных задач имеет несимметричный вид 2-го типа, математическая модель которых в матричной форме имеет вид:

Исходная задача: Двойственная задача:

Ф = С× Х max F = B Т × Y min

при А× Х = В при A Т × Y ≥ С Т

В исходной задаче матрица-строка коэффициентов при переменных в целевой функции имеет вид С = (0; 1; 0; -1; -3; 0),

матрица-столбец свободных членов и матрица коэффициентов при переменных в системе ограничений имеют вид

В = 2 , А = 0 — 4 1 2 -1 0

Найдем транспонированную матрицу коэффициентов, матрицу-строку коэффициентов при переменных в целевой функции и матрицу-столбец свободных членов

0 1 0 0 В Т = (1; 2; 5)

A T = -1 2 0 С Т = -1

Двойственная задача запишется в следующем виде:

найти минимальное значение целевой функции F = y 1 + 2× y 2 + 5× y 3

при ограничениях y 1 ≥ 0,

2× y 1 — 4× y 2 + 3× y 3 ≥ 1,

— y 1 + 2× y 2 ≥ -1,

y 1 — y 2 + y 3 ≥ -3,

Вариант 10. Минимизировать функцию Ф = х 1 + х 2 + х 3

при ограничениях: 3 × х 1 + 9 × х 2 + 7 × х 3 ≥ 2,

6 × х 1 + 4·х 2 + 5 × х 3 ≥ 3,

8 × х 1 + 2·х 2 + 4 × х 3 ≥ 4,

Решение:

Имеем исходную задачу на минимизацию с системой ограничений в виде неравенств, то есть, пара двойственных задач имеет симметричный вид 3-го типа, математическая модель которых в матричной форме имеет вид:

Исходная задача Двойственная задача

Ф = С× Х min F = B Т × Y max

при А × Х В при A Т × Y С Т

Х ≥ 0 Y ≥ 0

В исходной задаче матрица-строка коэффициентов при переменных в целевой функции, матрица-столбец свободных членов и матрица коэффициентов при переменных в системе ограничений имеют вид

С = (1; 1; 1), В = 3 , А = 6 4 5

Найдем матрицы двойственной задачи

В T = (2; 3; 4) С T = 3 A T = 9 4 2

Двойственная задача формулируется в виде:

Максимизировать целевую функцию F = 2y 1 + 3y 2 + 4y 3

при ограничениях 3× y 1 + 6× y 2 + 8× y 3 ≤ 1,

9× y 1 + 4× y 2 + 2× y 3 ≤ 1,

7× y 1 + 5× y 2 + 4× y 3 ≤ 1,

y i ≥ 0 (i = 1, 2, 3)

ЗАДАЧА 2.С. Решение задачи линейного программирования с помощью симплексных таблиц.

Вариант 7. Максимизировать целевую функцию Ф = 2·x 1 — x 2 + 3·x 3 + 2·x 4

при ограничениях: 2·x 1 + 3·x 2 — x 3 + 2·x 4 ≤ 4,

x 1 — 2·x 2 + 5·x 3 — 3·x 4 ≥ 1,

4·x 1 + 10·x 2 +3·x 3 + x 4 ≤ 8.

Решение:

Приведем систему ограничений к каноническому виду

2·x 1 + 3·x 2 — x 3 + 2·x 4 + z 1 = 4, (1)

x 1 — 2·x 2 + 5·x 3 — 3·x 4 — z 2 = 1, (2)

4·x 1 + 10·x 2 +3·x 3 + x 4 + z 3 = 8. (3)

Имеем систему 3-х уравнений с 7-ю неизвестными. Выберем в качестве базисных 3 переменных x 1 , z 1 , z 3 , в качестве свободных — x 2 , x 3 , x 4 , z 2 , выразим через них базисные переменные.

Из (2) имеем x 1 = 1 + 2·x 2 — 5·x 3 + 3·x 4 + x 6

Подставим в (1) и (3), получим

x 1 — 2·x 2 + 5·x 3 — 3·x 4 — z 2 = 1,

z 1 + 7·x 2 — 11·x 3 + 8·x 4 + 2·z 2 = 2,

z 3 + 18·x 2 — 17·x 3 + 13·x 4 + 4·z 2 = 4,

Ф — 3·x 2 + 7·x 3 — 8·x 4 — 2· z 2 = 2.

Составим симплекс-таблицу

I итерация Таблица 1

Базисн. перем. Свобод. перем.
x 1 1 1 — 2 5 — 3 0 — 1 0 3/8
z 1 2 0 7 -11 1 2 0 1/ 4 1/8
z 3 4 0 18 -17 13 0 4 1 4/13 13/8
Ф 2 0 — 3 7 — 8 0 — 2 0 1

Х 1 = (1; 0; 0; 0; 2; 0; 4) Ф 1 = 2.

II итерация Таблица 2

x 1 14/8 1 5/8 7/8 0 3/8 -2/8 0 2 — 1
x 4 1/ 4 0 7/8 -11/8 1 1/8 2/8 0 11/7
z 3 6/8 0 53/8 0 -13/8 6/8 1 6/7 8/7
Ф 4 0 4 — 4 0 1 0 0 32/7

Х 2 = (14/8; 0; 0; 1/4; 0; 0; 4) Ф 2 = 4.

III итерация Таблица 3

x 1 1 1 — 6 0 0 -1 — 1 1/2
x 4 10/ 7 0 79/7 0 1 -17/7 10/7 11/7 11/7
x 3 6/7 0 53/7 1 0 -13/7 6/7 8/7 13/14
Ф 52/7 0 240/7 0 0 -45/7 24/7 32/7 45/14

Х 3 = (1; 0; 6/7; 10/7; 0; 0; 0) Ф 3 = 52/7.

IV итерация Таблица 4

z 1 1/ 2 1/2 — 3 0 0 1 -1/2 -1/2
x 4 37/ 14 17/14 56/14 0 1 0 3/14 5/14
x 3 25/14 13/14 28/14 1 0 0 -1/14 3/14
Ф 149/14 45/14 15 0 0 0 3/14 19/14

Х 4 = (0; 0; 25/14; 37/14; 1/2; 0; 0) Ф 4 = 149/14.

В индексной строке последней таблицы нет отрицательных чисел, то есть, в выражении для целевой функции все Г i < 0. Имеем случай I, следовательно, последнее базисное решение является оптимальным.

Ответ: Ф m ax = 149/14,

оптимальное решение (0; 0; 25/14; 37/14; 1/2; 0; 0)

Вариант 8. Минимизировать целевую функцию Ф = 5·x 1 — x 3

при ограничениях: x 1 + x 2 + 2·x 3 — x 4 = 3,

x 2 + 2· x 4 =1,

Решение:

Количество переменных равно 4, ранг матрицы — 2, следовательно количество свободных переменных равно r = 4 — 2 = 2, количество базисных тоже 2. В качестве свободных переменных примем х 3 , х 4 , базисные переменные x 1 , x 2 выразим через свободные и приведем систему к единичному базису:

x 2 = 1 — 2· x 4 ,

x 1 = 3 — x 2 — 2·x 3 + x 4 = 3 – 1 + 2· x 4 — 2·x 3 + x 4 = 2 — 2·x 3 + 3· x 4

Ф = 5·x 1 — x 3 = 5·(2 — 2·x 3 + 3· x 4) — x 3 = 10 — 10·x 3 + 15· x 4 — x 3 = 10 — 11·x 3 + 15· x 4

Запишем систему уравнений и целевую функцию в удобном для симплекс-таблицы виде, то есть, x 2 + 2· x 4 = 1,

x 1 +2·x 3 — 3· x 4 = 2

Ф + 11·x 3 — 15· x 4 = 10

Составим таблицу

I итерация Таблица 1

Базисн. перем. Свобод. перем.
X 1 2 1 0 — 3 1/2
X 2 1 0 1 0 2
Ф 10 0 0 11 — 15 — 11/2

Х 1 = (2; 1; 0; 0) Ф 1 = 10.

II итерация Таблица 2

X 3 1 1/2 0 1 -3/2 3/4
X 2 1 0 1 0 1/2
Ф — 1 — 11/2 0 0 3/2 — 3/4

Х 2 = (0; 1; 1; 0) Ф 2 = -1.

III итерация Таблица 3

X 3 7/4 1/2 3/4 1 0
X 4 1/2 0 1/2 0 1
Ф — 7/4 — 11/2 — 3/4 0 0

Х 3 = (0; 0; 7/4; 1/2) Ф 3 = -7/4.

В индексной строке последней таблицы нет положительных чисел, то есть, в выражении для целевой функции все Г i > 0. Имеем случай I, следовательно, последнее базисное решение является оптимальным.

Ответ: Ф min = -7/4, оптимальное решение (0; 0; 7/4; 1/2)

********************

Вариант 10. Минимизировать целевую функцию Ф = x 1 + x 2 ,

при ограничениях: x 1 –2·x 3 + x 4 = 2,

x 2 – x 3 + 2·x 4 = 1,

Решение:

Количество переменных равно 5, ранг матрицы — 3, следовательно количество свободных переменных равно r = 6-3 = 2. В качестве свободных переменных примем х 3 и х 4 , в качестве базисных — x 1 , x 2 , x 5 . Все уравнения системы уже приведены к единичному базису (базисные переменные выражены через свободные), но записаны в виде, не удобном к применению симплекс-таблиц. Запишем систему уравнений в виде

x 1 — 2·x 3 + x 4 = 2

x 2 — x 3 +2·x 4 = 1

x 5 + x 3 — x 4 . = 5

Целевую функцию выразим через свободные переменные и запишем в виде Ф — 3·x 3 +3·x 4 = 3

Составим таблицу

I итерация Таблица 1

Базисн. перем. Свобод. перем.
х 1 2 1 0 -2 1 0 2 -1/2
х 2 1 0 1 -1 0 1/2 1/2
х 5 5 0 0 1 -1 1 1/2
Ф 3 0 0 -3 3 0 -3/2

Х 1 = (2; 3; 0; 0; 5) Ф 1 = 3.

Таблица 2

х 1 3/2 1 -1/2 -3/2 0 0
х 4 1/2 0 1/2 -1/2 1 0
х 5 11/2 0 1/2 1/2 0 1
Ф 3/2 0 -3/2 -3/2 0 0

Х 2 = (3/2; 0; 0; 1/2; 11/2) Ф 2 = 3/2.

В индексной строке последней таблицы нет положительных чисел, то есть, в выражении для целевой функции все Гi > 0. Имеем случай 1, следовательно, последнее базисное решение является оптимальным.

Ответ: Ф min = 3/2, оптимальное решение (3/2; 0; 0; 1/2; 11/2).



error: Контент защищен !!