- •Вопросы к государственной аттестации:
- •Основы моделирования.
- •Классификация моделей.
- •Классификация математических методов и моделей
- •Построение простейших математических моделей.
- •Аналитические и статистические модели. Прямые и обратные задачи.
- •Решение задач, сформулированных на базе построенной математической модели.
- •Исходную расширенную систему занести в первую симплексную таблицу.
- •Математическая модель транспортной задач
- •Принцип минимакса.
- •Упрощение игр.
Исходную расширенную систему занести в первую симплексную таблицу.
Последняя строка таблицы, в которой приведено уравнение для линейной функции цели, называется оценочной. В ней указать коэффициенты функции цели с противоположным знаком: di = - ci. В левом столбце таблицы записать основные переменные (базис), в первой строке таблицы – все переменные (отмечая при этом основные), во втором столбце – свободные члены расширенной системы b1,b2, …bm. Последний столбец подготовлен для оценочных отношений, необходимых при расчете наибольшего возможного значения переменной. В рабочую часть таблицы (начиная с третьего столбца и второй строки) занести коэффициенты aij при переменных из расширенной системы задачи. Далее таблицу следует преобразовывать по определенным правилам.
3. Проверить выполнение оптимальности при решении задачи на максимум – наличие в последней строке отрицательных коэффициентов di<0 (ci >0). Если таких нет, то решение оптимально, достигнут максимум функции = с0. Имеет место оптимальное базисное решение.
4. Если критерий оптимальности не выполнен, то наибольший по модулю отрицательный коэффициент di<0 в последней строке определяет разрешающий столбец S. Составить оценочные ограничения каждой строки. Определить: . Эта строка называется разрешающей строкой. На пересечении разрешающих строки и столбца находится разрешающий элемент aqs.
5. Перейти к следующей таблице по правилам:
в левом столбце записать новый базис: вместо основной переменной xq - переменную xs;
в столбцах, соответствующих основным переменным, проставить нули и единицы:
1 – против «своей» основной переменной;
0 – против «чужой» основной переменной;
0 – в последней строке для всех основных переменных.
новую строку с номером q получаем из старой делением на разрешающий элемент aqs;
все остальные элементы aij вычисляем по правилу прямоугольника: , где А – элемент ведущего столбца, стоящий в одной строке с аij; В – элемент ведущей строки, стоящий в одном столбце с аij.
далее переходим к п.3 алгоритма.
Решение, соответствующее одной из вершин многоугольника решений, называют опорным решением, а саму вершину – опорной точкой. Для того, чтобы найти оптимальное решение, достаточно перебрать все вершины многоугольника решений (опорные точки) и выбрать из них ту, где функция достигает максимума (минимума). Суть симплексного метода состоит в переборе некоторой части опорных решений по определенному правилу, обеспечивающему последовательное улучшение плана и достижение оптимума.
Пример: Предположим, составляется план производства для предприятия, выпускающего два вида продукции А и В. На изготовление единицы изделия требуется затратить а1 = 2 кг сырья первого типа, а2 = 3 кг сырья второго типа и а3 = 4 кг сырья третьего типа. Для единицы изделия В: b1 = 1 кг сырья первого типа, b2 = 4 кг сырья второго типа и b3 = 3 кг сырья третьего типа. Производство обеспечено сырьем каждого типа в количествах 400 кг, 900 кг и 600 кг соответственно. Стоимость реализации единицы изделия А составляет 60 (д.ед.), а единицы изделия В – 40 (д.ед.). Следует составить план производства изделий А и В, обеспечивающий максимум прибыли от реализации.
Сформулируем задачу математически. Пусть х1 и х2 – неизвестные количества изготавливаемых изделий А и В, соответственно. Необходимо найти такие х1 и х2, чтобы выполнялись условия.
и при этом функция f = 60x1 + 40x2 , была максимальна.
Система ограничений описывает условии производства. Функция f – целевая функция, а х1 и х2 – аргументы целевой функции.
Задача имеет стандартную форму. Представим эту задачу в канонической форме, введя дополнительные переменные х3, х4, х5, которые имеют смысл остатков неиспользованного сырья, соответственно, первого, второго и третьего типов.
Функцию f представим в неявном виде: .
Пусть переменные х1, х2, входящие в функцию f, будут свободными, а переменные х3, х4, х5 – базисными. Базисные переменные выразятся через свободные следующим образом: . Полагая свободные переменные равными нулю получим первое опорное решение: х1 = х2 = 0, х3 = 400, х4 = 900, х5 = 600. При этом f = 0. экономический смысл полученного решения состоит в том, что ни один из видов продукции не производится, все ресурсы остаются неиспользованными, а, следовательно, и прибыли нет.
№1 |
х1 |
х2 |
х3 |
х4 |
х5 |
bi |
bi/aij |
х3 |
2 |
1 |
1 |
0 |
0 |
400 |
4 00/2=200 |
х4 |
3 |
4 |
0 |
1 |
0 |
900 |
900/3=300 |
х5 |
1 |
3 |
0 |
0 |
1 |
600 |
600/1=600 |
f |
-60 |
-40 |
0 |
0 |
0 |
0 |
|
Перейдем теперь к описанию метода улучшения плана и покажем, как производятся непосредственные вычисления с помощью симплексных таблиц. Первая симплексная таблица строится, исходя из записи условия задачи в канонической форме. Первое опорное решение, как и последующие решения, характерны тем, что столбцы по базисными неизвестными образуют блок единичной матрицы (с точностью до перестановок столбцов) и нулевых элементов нижней строки (строки f).
Наличие в последней строке отрицательных чисел говорит о том, что оптимальное решение не получено. Для нахождения оптимального решения необходимо одну из свободных переменных ввести в число базисных переменных, превратить в свободную. Выбор замещаемых переменных производится следующим образом.
В последней строке таблицы среди отрицательных значений находим наибольший по абсолютной величине элемент (это (-60)). Столбец, в котором находится этот элемент, называется ведущим, он соответствует новой базисной переменной х1. Делим свободные члены (bi) на соответствующие элементы ведущего столбца (отрицательные элементы ведущего столбца и нули во внимание не принимаются) и среди частных от деления находим минимальное, т.е. . Строка, которой соответствует минимальное значение, называется ведущей строкой. Смысл этой операции – гарантировать получение новой вершины многоугольника решений за счет выбора строки, наиболее ограничивающей сверху значение новой базисной переменной х1. Ведущая строка - первая – соответствует старой базисной переменной х3, которая переводится в свободные. На пересечении ведущей строки и ведущего столбца расположен разрешающий элемент а* = 2.
Теперь можно перейти к заполнению следующей симплексной таблицы, используя эквивалентные преобразования расширенной матрицы.
Ведущую строку переписываем во вторую таблицу, поделив предварительно все элементы строки на разрешающий элемент а*; все элементы ведущего столбца, кроме разрешающего заменяем нулями, так как переменная в ведущей строке, соответствующая этому столбцу, становится базисной.
Все остальные элементы таблицы пересчитываются следующим способом: элемент новой таблицы равен элементы аij старой таблицы минус произведение элементов ведущей строки и ведущего столбца, соответствующих преобразуемому элементу, деленное на разрешающий элемент(правило прямоугольника).
В На рис. элементы аij и а* вершины прямоугольника; А – элемент ведущего столбца, стоящий в одной строке с аij; В – элемент ведущей строки, стоящий в одном столбце с аij. Тогда
аij
А
№2 |
х1 |
х2 |
х3 |
х4 |
х5 |
bi |
bi/aij |
х1 |
1 |
1/2 |
1/2 |
0 |
0 |
200 |
400 |
х4 |
0 |
2,5 |
-1,5 |
1 |
0 |
300 |
1 20 |
х5 |
0 |
2,5 |
-0,5 |
0 |
1 |
400 |
160 |
f |
0 |
-10 |
30 |
0 |
0 |
12000 |
|
Пользуясь изложенными правилами, получим симплексную таблицу №2. базисные переменные: х1 = 200, х4 = 300, х5 = 400. Переменные х2, х3 являются свободными и равны нулю: х2 = х3 = 0. Прибыль составляет: f = 12000 (д.ед.)
Полученное решение не является оптимальным, так как в последней строке есть отрицательный элемент. В соответствующем ему столбце есть положительные элементы, что говорит о возможности улучшения решения. Если бы в ведущем столбце не было положительных элементов, то это означало бы, что функция цели не ограничена сверху, и оптимального решения не существует.
№3 |
х1 |
х2 |
х3 |
х4 |
х5 |
bi |
х1 |
1 |
0 |
4/5 |
-1/5 |
0 |
140 |
х2 |
0 |
1 |
-3/5 |
2/5 |
0 |
120 |
х5 |
0 |
0 |
1 |
-1 |
1 |
100 |
f |
0 |
0 |
24 |
4 |
0 |
13200 |
Транспортная задача линейного программирования. Построение математической модели.
Под названием «Транспортная задача» объединяется широкий круг задач с единой математической моделью. Данные задачи относятся к задачам линейного программирования и могут быть решены симплексным методом. Однако матрица системы ограничений транспортной задачи настолько своеобразна, что для решения разработаны специальные методы. Эти методы, как и симплексный метод, позволяют найти начальное опорное решение, а затем, улучшая его, получить оптимальное решение.
Огромное количество возможных вариантов перевозок затрудняет получение достаточно экономного плана эмпирическим или экспертным путем. Применение математических методов и вычислительных в планировании перевозок дает большой экономический эффект. В зависимости от способа представления условий транспортной задачи она может быть представлена в сетевой (схематичной) или матричной (табличной) форме.
Опорным решением транспортной задачи называется любое допустимое решение, для которого векторы-условия, соответствующие положительным координатам, линейно независимы.
Ввиду того, что ранг системы векторов условий транспортной задачи равен m+n-1, опорное решение не может иметь отличных от нуля координат более m+n-1. Число отличных от нуля координат невырожденного опорного решения равно m+ n-1, а для вырожденного опорного решения меньше m+n-1.
Любое допустимое решение транспортной задачи можно записать в ту же таблицу, что и исходные данные. Клетки таблицы транспортной задачи, в которых находятся отличные от нуля или базисные нулевые перевозки, называются занятыми, остальные - незанятыми или свободными. Клетки таблицы нумеруются так, что клетка, содержащая перевозку xij, т.е. стоящая в i-й строке и j-м столбце, имеет номер (i, j). Каждой клетке с номером (i, j) соответствует переменная xij, которой соответствует вектор-условие Aij..