- •Элементы линейной алгебры с приложением
- •Введение
- •1. Определители
- •Определителем матрицы Вназывается число
- •2. Системы линейных уравнений
- •Рассмотрим снова систему (2). Определитель
- •3. Векторы и ленейные операции над ними
- •4. Векторы в декартовой прямоугольной системе координат. Скаряное произведение
- •Доказательство.Используя свойства 3, 4, получим
- •5. Векторное и смешанное произведения
- •Легко проверить исходя из определения векторного произведения, что
- •6. Уравнение плоскости и прямой
- •Решение. Уравнение плоскости, проходящей через точку м1имеет вид
- •7. Матрицы
- •Пусть дана квадратная матрица
- •Покажем, что
- •8. Ранг матрицы. Исследование системы линейных уравнений
- •Рассмотрим матрицу
- •Матрицы
- •Пример 2. Решить систему
- •По формулам Крамера
- •9. Линейные преобразования. Собственные векторы
- •Матрица
- •Так как 0, то1,2,3– ненулевое решение однородной системы
- •В силу следствия из раздела 8
- •В двумерном случае система (3) имеет вид
- •Замечание.Если матрица Аφлинейного преобразованияв базе диагональная:
- •10. Симметрические и ортогональные матрицы Квадратная матрица вида
- •Оказывается, что векторы 1и2перпендикулярны. В самом деле, применяя лемму, получаем
- •Матрица
- •Матрица преобразования в базе1,2диагональная
- •11. Квадратичные формы. Кривые второго парядка
- •12. Положительные матрицы
- •13. Балансовая модель
- •14. Продуктивные матрицы
- •15. Норма матрицы
- •16. Итерационный метод
- •17. Возмущение решений
- •18. Демографический рост
- •19. Регрессионные модели
- •20. Постановка транспортной задачи
- •20.1 Математическая формулировка транспортной задачи.
- •20.2 Базисное распределение в транспортной задаче
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 11
- •21. Техника решения транспортной задачи вручную (метод потенциалов)
- •Вариант 13
- •22. Формализация производственных задач линейного программирования
- •23. Геометрическая интерпретация задач линейного программирования
- •24. Симплексный метод решения задач линейного программирования
- •24.1 Общая формулировка задачи линейного программирования
- •24.2 Заполнение симплексной таблицы по строкам
- •Симплексная таблица
- •24.3 Заполнение симплексной таблицы по столцам
- •24.4 Двойственные задачи, оценки, проблемы.
- •Ответы к вариантам:
- •25. Метод последовательных приближений (метод итерации)
- •26. Условия сходимости итерационного процесса
- •27. Оценка погрешности приближенного процесса метода итерации
- •28. Метод зейделя. Условия сходимости процесса зейделя
- •29. Оценка погрешности процесса зейделя
- •30. Привеление системы линейных уравнений к виду, удобному для итерации
- •31. Исправление элементов приближенной обратной матрицы
- •Задания для самостоятельной работы.
- •Вариант 1
- •Вариант 9
- •Экзаменационные вопросы
24.3 Заполнение симплексной таблицы по столцам
Первый столбец – коэффициенты сj.
Он, как и первая строка, отводится для показателей критерия оптимальности. Отличие между первой строкой и первым столбцом состоит в следующем:
Первая строка, в отличие от столбца, сохраняется лишь в первой симплексной таблице. Начиная со второй итерации верхняя строка перестает быть обязательной.
В первой строке указываются все без исключения (и основные, и дополнительные) показатели критерия оптимальности, т.е. все коэффициенты, с которыми неизвестные входят в целевую функцию. В первый же столбец входит только часть коэффициентов при неизвестных в целевой функции, т.к. число строк в матрице равно числу дополнительных неизвестных. Эта часть состоит из показателей, номера которых указаны во втором столбце (рk).
Второй столбец – рk (индеек k – номер итерации).
В этом столбце указываются номера неизвестных, входящих в базисное решение. Эти номера используют для нумерации соответствующих строк матрицы.
В первой симплексной таблице в столбце р0 указываются номера всех дополнительных переменных.
3. Третий столбец – х0.
В первой симплексной таблице он заполняется свободными членами уравнений из системы ограничений. В процессе итеративного расчета эти показатели преобразуются в искомое решение. Поэтому данный столбец носит название итогового столбца.
4. Значение целевой функции Fk.
На пересечении итогового столбца в целевой строке указывается значение функционала Fk, соответствующее данному этапу решения, данной итерации k.
Столбцы «основания матрицы».
Обычно сначала располагаются столбцы для основных неизвестных, а вслед за ними – для дополнительных неизвестных.
В этих столбцах в первой симплексной таблице приводятся коэффициенты при неизвестных из уравнений исходных условий.
6. Последующие три столбца таблицы (, , ) имеют вспомогательное значения. Без этих столбцов можно обойтись, но они существенно облегчают проведение расчетов. Более подробно содержание этих столбцов будет рассматриваться ниже.
Пример
Рассмотрим симплексную задачу, записанную в общем виде:
F = 15x1 + 20x2 +5x3 max.

Приведем задачу к канонической форме. Для этого в каждое из неравенств системы введем по одному неизвестному (дополнительному) – х4, х5. х6. Тогда
F = 15x1 + 20x2 +5x3 max.


Заполним первую симплексную таблицу.
|
|
|
|
15 |
20 |
5 |
0 |
0 |
0 |
|
|
|
|
с0 |
р0 |
х0 |
х1 |
х2 |
х3 |
х4 |
х5 |
х6 |
|
|
|
|
0 |
х4 |
600 |
80 |
35 |
10 |
1 |
0 |
0 |
|
|
|
|
0 |
х5 |
520 |
15 |
60 |
0 |
0 |
1 |
0 |
|
|
|
|
0 |
х6 |
600 |
5 |
5 |
90 |
0 |
0 |
1 |
|
|
|
|
|
|
F0=? |
? |
? |
? |
? |
? |
? |
|
|
|
Мы заполним все клетки, исходя из условий задачи.
Чтобы заполнить клетку F0 в первой таблице, необходимо просуммировать произведения элементов столбца х0 на элементы столбца с0, т.е.
F0 = 600∙0 + 520∙0 +600∙0 =0.
Чтобы заполнить целевую строку в первой таблице, необходимо соответствующее значение сj вычесть из суммы произведений элементов столбца хj на элементы столбца с0.
Для столбца х1 величина двойственной оценки будет определяться
(0∙80+0∙15+0∙5) – 15=-15;
Для х2: (0 35+0 60+0 5) – 20=-20;
х3: (0 10+0 0+0 90) – 5=-5 и т.д.
В итоге первая симплексная таблица будет выглядеть так:
Таблица 1
|
|
|
|
15 |
20 |
5 |
0 |
0 |
0 |
|
|
|
|
с0 |
р0 |
х0 |
х1 |
х2 |
х3 |
х4 |
х5 |
х6 |
|
|
|
|
0 |
х4 |
600 |
80 |
35 |
10 |
1 |
0 |
0 |
|
|
|
|
0 |
х5 |
520 |
15 |
60 |
0 |
0 |
1 |
0 |
|
|
|
|
0 |
х6 |
600 |
5 |
5 |
90 |
0 |
0 |
1 |
|
|
|
|
|
|
F0=0 |
-15 |
-20 |
-5 |
0 |
0 |
0 |
|
|
|
Решение:
Прежде чем приступать к решению, необходимо проверить, является ли предложенный в таблице план (решение) оптимальным.
Определение
Решение считается оптимальным, если все значения чисел в целевой строке положительны.
Если полученное решение не является оптимальным, то его можно улучшить. Для этого нужно:
1. Выбрать максимальное по абсолютной величине отрицательное значение числа в целевой строке.
В нашем примере таким числом будет (-20), находящееся в столбце «х2». Именно это значение задает ключевой столбец.
Обратите внимание:
Ключевой столбец показывает, какое из хj войдет в новое решение задачи. В нашем случае - неизвестное х2.
Обратите внимания:
Чтобы включить в новое решение неизвестное хj, улучшающее это решение, необходимо вывести из базисного решения одно из хj, входящее в него.
2. Выбрать минимальное значение частного от деления элементов столбца х0 на элементы ключевого столбца. Результаты этих расчетов заносятся в столбец «» симплексной таблицы.
В нашем примере эти отношения равны:
600/35=17,14;
520/60=8,67;
600/5=120.
Минимальное значение соответствует х5 и равно 8,67. Это отношение задает ключевую строку.
Выбрать элемент, находящийся на пересечении ключевого столбца и ключевой строки, который называется ключевым элементом.
В нашем примере ключевой элемент равен 60 и находится на пересечении столбца х2 и строки х5.
Обратите внимание:
Ключевым не может быть столбец, все элементы которого оказались отрицательными или нулевыми.
Просуммировать элементы матрицы по строкам (начиная от столбца х0 и кончая столбцом х6). Полученные суммы записываются в столбец «».
Преобразовать ключевую строку. Для этого
Каждый элемент ключевой строки делится на ключевой элемент, начиная с элемента столбца «х0»;
Фрагмент
|
х0 |
х1 |
х2 |
х3 |
х4 |
х5 |
х6 |
|
600 |
80 |
35 |
10 |
1 |
0 |
0 |
|
520/60 |
15/60 |
60/60 |
0/60 |
0/60 |
1/60 |
0/60 |
|
600 |
5 |
5 |
|
|
|
|
В столбце р1 записывается х2 вместо х5;
В столбце сj записывается значение критерия оптимальности при х2, т.е. 20.
Все остальные элементы симплексной таблицы пересчитывают, подчиняясь основному правилу. Это правило получило название правила диагонали или правила треугольника.

*
Если мы хотим в нашем примере пересчитать первый элемент столбца х0, который равен 600, то необходимо произвести следующие вычисления:
.
При пересчете величины функции цели получаем:
.
Аналогичным образом поступаем со всеми другими элементами таблицы. В итоге получаем новую симплексную таблицу.
Таблица 2.
|
с0 |
Р1 |
х0 |
х1 |
х2 |
х3 |
х4 |
х5 |
х6 |
|
|
|
|
0 |
х4 |
296,7 |
71,25 |
0 |
10 |
1 |
-0,58 |
0 |
|
|
|
|
20 |
х2 |
8,7 |
0,25 |
1 |
0 |
0 |
0,017 |
0 |
|
|
|
|
0 |
х6 |
556,7 |
3,75 |
0 |
90 |
0 |
-0,08 |
1 |
|
|
|
|
|
|
1/3 |
-10 |
0 |
5 |
0 |
-0,33 |
0 |
|
|
|
Как видно из табл. 2, оптимальное решение не получено, т.е. необходимо продолжить решение, используя все рассмотренные правила преобразования симплексных таблиц.
Примечание 1.
Столбец «» используется для проверки хода решения по строкам. Сумма новых значений элементов строки должна равняться величине элемента этой строки и столбца «», преобразованного по правилу диагонали.
Примечание 2.
Величина функции цели должна равняться сумме произведений элементов столбца сj на элементы столбца х0.
Самостоятельно дорешайте эту задачу. В результате должно получиться:
F=236.7; x1=3.31; x2=7.8; x3=6.05.
Примечание 3.
В столбце «» записываются частные от деления элемента в ключевом столбце и строке i на ключевой элемент.
Примечание 4.
В следующей таблице начинайте вычисления с помощью правила диагонали с целевой строки. Если все оценки положительны, то найдено оптимальное решение и остается заполнить столбец х0. В этом случае основание матрицы пересчитывать не обязательно.
