
- •Моделирование
- •2. Точность вычислительного эксперимента
- •1. Линейное программирование
- •1.2. Графический метод решения задач лп
- •1.3 Проверка задач лп на чувствительность
- •1.4 Симплекс - метод решения задач лп
- •1.4. Симплекс-метод решения задач лп
- •1.5. Модифицированный симплекс-метод
- •Исходная таблица имеет вид
- •1.6. Транспортная задача
- •1.7. Метод потенциалов для решения тз
- •1.7.1. Нахождение предварительного плана перевозок
- •Учитывая условия баланса наличия и потребления
- •1.7.2. Проверка опорного плана на оптимальность
- •1.7.3. Корректировка плана перевозок
- •1.8. Алгоритм метода потенциалов
- •Проверим необходимое условие в опорном плане:
- •0 3 0 Таблица 1.14
- •Преобразованная матрица показана в табл. 1.25
- •Преобразованная матрица стоимостей приведена в табл. 1.28.
- •1.9. Транспортная задача в сетевой форме
- •1.10. Двойственные задачи линейного программирования
- •Легко видеть, что
- •Запишем целевую функцию для прямой задачи
- •Прямая задача:
- •Из этой таблицы находим решение двойственной пары:
- •Окончательно прямая задача имеет следующее решение:
- •2. Обработка результатов эксперимента
- •Аппроксимация гиперболической функцией
- •Аппроксимация функциональной зависимостью вида
- •Аппроксимация функциональной зависимостью вида
- •Интерполяционный многочлен Ньютона
- •Экстраполяция
- •3. Некоторые простейшие задачи нелинейной оптимизации
- •3.1. Оптимизация числа ниток в графике движения поездов
- •3.2. Управление запасами
- •Понятие о выпуклом программировании
- •В нашем примере целевая функция имеет вид
- •Проверим:
- •Решение задачи выпуклого программирования
- •Сумма реальных расходов со штрафом составит
- •Филоненков Александр Иванович
- •Математические модели и меттоды Учебное пособие
1.5. Модифицированный симплекс-метод
Модифицированный
симплекс-метод
(МСМ)
отличается от обычного
симплекс-метода
(СМ)
тем, что в СМ
все элементы симплекс-таблиц
пересчитываются на каждой итерации и
при получении очередной таблицы, все
предыдущие таблицы, включая исходную,
не сохраняются. В МСМ
сохраняется исходная таблица, а на
каждой итерации определяются: строка
относительных оценок C,
вводимых в базис
,
и текущее значение вектора правых частей
ограничений
.
Для того чтобы определить все элементы
таблицы после j-й
итерации СМ,
достаточно знать матрицу B-1,
соответствующую этой таблице, исходную
матрицу и индексы текущих базисных
переменных. Тогда текущий вектор R
= Cb B-1
(индексы
текущих базисных переменных определяют,
какие элементы вектора оценок из исходной
таблицы входят в вектор Сb);
=B-1b
, где b
берется из
исходной таблицы, а любой столбец новой
таблицы
=B-1
aj,
где aj
- столбец исходной таблицы.
Пусть
задана теперь исходная таблица B-1
,
соответствующая таблице i-й
итерации. Для того чтобы получить матрицу
B-1
,
соответствующую (i+1)-й
итерации, надо определить небазисный
столбец i-й
таблицы
,
который должен быть введен в базис. Из
СМ
следует, что
может быть введен в базис, если Cj<0.
Таким образом, необходимо вычислить Сj
для i-ой
таблицы, выбрать среди них
<0,
а затем вычислить
aS=
B-1
и
=
B-1b
(
=
Cj
- R
aj).
Найдя
разрешающий элемент и используя элементы
векторов
и
,
находим матрицу B-1
для следующей таблицы.
Пример. Модифицированным симплекс-методом минимизировать
F = 5X1 + 6X2 + 3X3 + 4X4 + 5X5 min
при ограничениях:
2X1 + 3X3 + 4X4 + 2X5 = 10,
3X2 + 3X4 + 6X5 = 9,
Выбрав в качестве базисных переменных X1 и Х2, получили следующую задачу: F = 43 - 9/2X3 - 12X4 - 12X5
при условиях
X1 + 3/2X3 + 2X4 + X5 = 5,
X2 + X4 + 2X5 = 3 ,
Э та задача равносильна следующей: максимизировать Х0= -F при условиях
Х0 - 9/2Х3 - 12Х4 - 12Х5 = - 43,
Х1 + 3/2Х3 + 2Х4 +Х5 = 5,
X2 + Х4 + 2Х5 = 3,
Исходная таблица имеет вид
|
X0 |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X0 |
1 |
0 |
0 |
-9/2 |
-12 |
-12 |
-43 |
X1 |
0 |
1 |
0 |
3/2 |
2 |
1 |
5 |
X2 |
0 |
0 |
1 |
0 |
1 |
2 |
3 |
Для исходной матрицы В будет единичной матрицей, т.е. B=I. Поэтому B-1=I. Вектор текущих цен
R = Cb B-1 ;
R=
=
.
Текущие оценки в этом случае будут Cj = Raj , поэтому
=
=
- 9/2;
=
=
- 12;
=
=
-12.
Таким
образом, в базис может быть введен вектор
,
причем:
=
B-1a
4 =
=
.
Текущий вектор правых частей
=
B-1
b =
=
.
Находим
минимум среди отношений элементов
вектора правых частей
и соответствующего положительного
элемента вектора
:
min
=
.
Отсюда
видно, что из базиса должен быть исключен
вектор
.
Исключения по строкам с разрешающим
элементом
=
2 эквивалентно
умножению слева на матрицу
=
.
После умножения получим
=
.
Обращением нового базиса ( Х0, Х4, Х2 ) будет матрица
B-1
=
;
R
=
;
=
Ra1
=
=
6;
=
Ra3
=
=
9/2;
= Ra5 = = - 6.
Разрешающим
будет 5-й столбец. В базис вводим столбец
:
=
=
;
=
=
.
Находим
min
.
Следовательно,
из базиса выводим вектор
,
умножая слева на матрицу
=
.
=
.
Обращением нового базиса ( Х0, Х4, Х5 ) будет матрица B-1 .
B-1
=
;
R
=
;
=
Ra1
=
=
4
> 0;
=
Ra2
=
=
4 > 0;
=
Ra3
=
=
3/2 > 0.
Следовательно, получаем оптимальное решение:
X0 = - F = - 11; X1 = X2 = X3 = 0;
X4
=
;
X5
=
.