
- •Задачи принятия управленческих решений и их реализация в среде qsb
- •Симферополь – 2009 г.
- •Введение
- •Методологические основы оптимизации
- •I.1. Необходимые условия для применения оптимизационных методов
- •I.1.1. Определение границ системы
- •I.1.2. Характеристический критерий
- •I.1.3. Независимые переменные
- •I.1.4. Модель системы
- •I.2. Структура оптимизационных задач
- •Глава I. Задача линейного программирования
- •I. 1. Разработка моделей линейного программирования.
- •I. 1.1. Пример разработки модели задачи технического контроля
- •I. 1.2. Общая постановка задачи линейного программирования
- •I. 2. Методы решения задач линейного программирования
- •I. 2.1. Графический метод решения задачи лп
- •I.2.3. Табличный симплекс-метод.
- •I.2.4. Алгоритм симплекс-метода.
- •Задачи для самостоятельного решения
- •I. 3. Двойственность в задачах линейной оптимизации
- •I. 3.1. Двойственная задача линейного программирования
- •I. 3.2. Двойственный симплекс-метод.
- •I. 4. Основные утвержднеия теории двойственности и их экономическое содержание
- •I. 4.1. Первая теорема двойственности
- •I. 4.2. Вторая теорема двойственности и ее экономическое содержание
- •I. 4.3. Третья теорема двойственности и ее экономическое содержание.
- •I. 4.4. Анализ чувствительности математической модели и диапазоны устойчивости
- •I.4.4.1. Диапазон изменения небазисной переменной
- •I.4.4.2. Диапазон изменения коэффициентов целевой функции
- •I.4.4.3. Диапазон изменения элемента вектора свободных членов
- •I.4.4.4. Диапазон изменения элемента матрицы коэффициентов системы ограничений
- •I.5. Пакет прикладных программ qsb
- •I.5.1. Главное меню пакета
- •I.5.2. Меню программы линейного программирования
- •I.5.3. Подготовка данных для задачи линейного программирования
- •I.5.4. Решение задачи линейного программирования
- •I.5.5. Просмотр и анализ результатов решения задачи
- •I.5.6. Чтение и запись задач на дискету
- •I.5.7. Mодификация (изменение) данных задачи
- •Варианты исходных данных
- •Варианты индивидуальных заданий (таблица 2).
- •Порядок выполнения работы
- •Контрольные вопросы
- •II. 1.2. Метод определения начального опорного плана перевозок
- •Задачи для самостоятельного решения
- •II.1.3. Решение транспортной задачи в qsb
- •II.2. Задача о назначениях
- •Начальная таблица
- •Iteration 1 (Итерация 1)
- •Iteration 2 (Итерация 2)
- •II. 3. Целочисленные задачи линейного программирования
- •II. 3.1. Метод отсекающих плоскостей
- •Задачи для самостоятельного решения
- •II.4. Метод ветвей и границ в задачах целочисленного программирования
- •II. 4.1. Алгоритм метода ветвей и границ
- •II. 4.2. Правила ветвления
- •II. 4.3. Два правила выбора вершины задачи лп для дальнейшего ветвления
- •II. 4.4. Некоторые рекомендации по формулировке и решению задач цлп
II. 1.2. Метод определения начального опорного плана перевозок
Как
и в других задачах ЛП, итерационный
процесс отыскания оптимального плана
транспортной задачи начинается с
какого-либо опорного плана. Опорный
план Т-задачи строим в виде матрицы
размеров
Заполненные позиции матрицы, то есть,
в которых
,
соответствуют базисным переменным. Для
невырожденного опорного плана их
количество равно
где
ранг9
матрицы системы ограничений.
Начальный опорный план может быть построен, например, методом северо-западного угла10.
Определим
элементы матрицы
начиная с верхнего левого угла. Находим
величину
Если
,
то
,
и первый столбец закрыт для расчета
остальных элементов, то есть
.
Если
,
то
,
и первый столбец закрыт для расчета
остальных элементов, то есть
.
Затем вычисляем
при
,
либо
при
.
Этот
процесс продолжается до тех пор, пока
на каком-то этапе не исчерпаются ресурсы
и не удовлетворятся потребности
.
Существуют и другие методы определения начального плана перевозок.
Метод минимального элемента.
В методе минимального элемента просматриваются клетки таблицы в порядке возрастания стоимости перевозок и таким же образом, как и в методе Северо-западного угла удовлетворяются потребности потребителей за счет запасов поставщиков, вычеркиваются строки (столбцы) таблицы Т-задачи. Метод дает иногда лучшее начальное приближение, чем метод Северо-западного угла.
Метод аппроксимации (метод Фогеля).
Метод аппроксимации Фогеля при выборе клетки учитывает не только минимальную величину стоимости перевозок, но и возможные ее увеличения в случае выбора другой клетки строки (столбце). Для этого используют «штрафы» строк и столбцов. Штраф строки (столбца) равен разности первой стоимости (большей минимальной стоимости в строке (столбце)) и минимальной стоимости в данной строке (соответственно столбце). Затем из всех строк и столбцов выбирается строка или столбец с максимальным штрафом и в нем ( в ней) выбирается клетка с минимальной стоимостью. Эта клетка будет соответствовать базисной переменной. Если остается не вычеркнутой одна строка или столбец, то клетки в ней выбираются по методу минимального элемента. Метод Фогеля обычно дает решение, близкое к оптимальному.
Метод двойного предпочтения.
Если таблица стоимости велика, то перебор всех элементов затруднителен. В этом случае используют метод двойного предпочтения, суть которого заключается в следующем.
В каждом столбце отмечают знаком * клетку с наименьшей стоимостью. Затем то же проделывают в каждой строке. В результате некоторые клетки будут иметь отметку **. В них находится минимальная стоимость как по строке, так и по столбцу. Тогда в них помещают максимально возможные объемы перевозок, каждый раз исключая из рассмотрения соответствующие столбцы или строки. Затем распределяют перевозки по клеткам, отмеченным знаком *. В оставшейся части таблицы перевозки распределяют по наименьшей стоимости.
Полученный таким образом план может оказаться неоптимальным, то есть значение целевой функции, получаемое в соответствии с ним, может быть уменьшено за счет некоторых эквивалентных преобразований системы ограничений и перехода к другим смежным решениям Т-задачи, как задачи ЛП. В основе таких переходов лежит так называемый метод потенциалов, идея которого состоит в улучшении начального опорного плана до тех пор, пока не будет удовлетворяться некий признак оптимальности.
Алгоритм метода потенциалов решения Т-задачи состоит из предварительного этапа и конечного числа итераций.
На
предварительном этапе метода потенциалов
мы уже получили некоторый начальный
план перевозок. Назовем его
.
Затем для этого плана рассчитывают
оценочную матрицу
где
потенциалы
пунктов отправления
и пунктов назначения
соответственно.
Предварительные
потенциалы выбирают таким образом,
чтобы для связанных коммуникациями
пар пунктов, для которых в плане
,
сумма потенциалов была равна
:
Если
матрица
не содержит отрицательных элементов,
то
-
оптимальный план. В противном случае,
план можно улучшить.
Описание алгоритма решения Т-задачи.
10. Предварительный этап:
Определяется начальный опорный план одним из указанных выше способов (например, методом северо-западного угла).
20. Первый шаг:
Вычисляется
оценочная матрица
.
Для расчета всех элементов матрицы
необходимо сначала определить все
потенциалы. Далее строится схема
перевозок, соответствующая начальному
опорному плану
,
то есть соединяем коммуникациями пункты
отправления и пункты назначения, для
которых
.
Пользуясь выше указанными соотношениями
для определения потенциалов по базисным
клеткам, определяем последовательно
все потенциалы пунктов отправления и
назначения, принимая для удобства
.
Затем пересчитываем стоимости в
небазисных клетках таблицы издержек.
Очевидно, что позиции матрицы
,
отвечающие базисным элементам плана
,
будут заняты нулями.
30. Итерации:
я итерация. Если в оценочной матрице
все элементы неотрицательны, то план
- оптимальный, в противном случае следует приступить к его улучшению;
выбирается наибольший по абсолютной величине отрицательный элемент оценочной матрицы
и, начиная с соответствующего ему элемента
, в матрице строится замкнутая цепочка11, в которую входят элементы
;
строится новый план
, прибавляя:
(минимальный элемент выбирается из только из тех элементов, которые связаны цепочкой) ко всем четным элементам цепочки и вычитая из нечетных12. Элементы матрицы , не входящие в цепочку, переносятся в матрицу без изменения;
далее с помощью эквивалентных преобразований (элементарные преобразования Гаусса) на основе матрицы
строится матрица для нового плана . Для этого необходимо выделить в матрице
все элементы, соответствующие ненулевым элементам плана (они обязательно равны нулю). В матрице вычеркивается строка, содержащая элемент
. Если в этой строке имеются выделенные элементы, то вычеркиваются соответствующие этим элементам столбцы. Если в каждом вычеркнутом столбце присутствуют выделенные элементы, то далее вычеркиваются им соответствующие строки и так далее, до тех пор пока описанная процедура выполнима. После этого ко всем элементам вычеркнутых строк прибавляется величина равная
, а из элементов вычеркнутых столбцов эта величина вычитается. Таким образом получается новая оценочная матрица. Если в матрице нет отрицательных элементов, то план на этом шаге оптимален. В противном случае необходимо выполнить еще одну итерацию.
На этом итерации завершаются.
ПРИМЕР:
Пусть даны: матрица транспортных
издержек
,
объемы производства
и объемы потребления
-
А
1
2
9
7
60
С
3
4
1
5
55
6
4
8
3
40
2
3
3
1
35
В
70
5
45
70
Решение
начинаем с проверки баланса:
Далее, строим начальный опорный план
по методу северо-западного угла:
-
60
0
0
0
10
5
40
0
0
0
0
35
0
0
0
35
Приступаем к вычислению потенциалов. В таблице издержек для удобства выделим клетки соответствующие плану перевозок.
-
1
2
9
7
3
4
1
5
6
4
8
3
2
3
3
1
По
соответствующим маршрутам плана
указываем стоимость перевозки единицы
груза из
го
пункта отправки в
й
пункт потребления. Принимаем
(можно выбрать любое число) и, пользуясь
соотношением:
определяем потенциалы
и так далее.
-
1
2
9
7
0
3
4
1
5
2
6
4
8
3
9
2
3
3
1
7
1
2
-1
-6
Далее рассчитываем элементы оценочной матрицы по соотношениям:
и так далее.
Таким образом
Поскольку
в
имеются отрицательные элементы, – план
не является оптимальным.
Приступаем
к итерациям. В матрице
,
начиная с элемента
,
соответствующего в оценочной матрице
наибольшему по абсолютной величине
отрицательному элементу, строим цепочку.
-
60
0
0
0
5
40
10
–
+
0
0
+
–
35
0
5
0
0
0
35
Изменяя
элементы, входящие в цепочку, на величину
строим новый план перевозок
-
60
0
0
0
10
0
35
0
0
5
0
35
0
0
0
35
Снова расставляем потенциалы, используя матрицу транспортных издержек, данную в условиях задачи.
-
1
2
9
7
0
3
4
1
5
2
6
4
8
3
2
2
3
3
1
0
1
2
-1
1
И далее строим оценочную матрицу:
В оценочной матрице нет отрицательных элементов, следовательно, план является оптимальным. Таким образом, остается оценить стоимость перевозки в условных единицах.
На этом решение задачи завершается.