Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
8
Добавлен:
01.05.2014
Размер:
322.05 Кб
Скачать

Кафедра МО ЭВМ

ОТЧЕТ

по лабораторной работе № 5 по дисциплине

"Методы оптимизации"

Транспортная задача ”

Выполнили: Воробьёв А.В.

Ламеров Д.Ю.

Швецов М.Н.

Шефер Е.В.

Факультет КТИ

Группа № 4352

Проверил Балтрашевич В.Э.

«Выполнено» «____» _______ ____

Подпись преподавателя __ _

Санкт-Петербург

2006

Цель работы:

ИССЛЕДОВАНИЕ АЛГОРИТМА РЕШЕНИЯ ТРАНСПОРТНОЙ ЗАДАЧИ

Краткие общие сведения:

В таблице должно быть т + n1 занятых клеток (> 0). Занятые клетки соответствуют базисным неизвестным. Опорность (допустимость) плана при записи условий транспортной задачи в виде таблицы заключается в его ацикличности, т. е. в таблице нельзя построить замкнутый цикл, все вершины которого лежат в занятых клетках.

Определение. Циклом называется набор клеток вида (i1, j1), (i1, j2), (i2, j2), ..., (im, j1), в котором каждые последующие 2 клетки располагаются в одном столбце или строке, причем последняя клетка находится в той же строке или столбце, что и первая.

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

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

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

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

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

Метод минимальной стоимости. Из всей таблицы стоимостей выбираем наименьшую и в клетку, которая ей соответствует, помещаем меньшее из чисел аi, или bj. Затем из рассмотрения исключаем либо строку, соответствующую поставщику, запасы которого полностью израсходованы, либо столбец, соответствующий потребителю, потребности которого полностью удовлетворены (либо и строку, и столбец).

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

Алгоритм метода потенциалов

1. Построение системы потенциалов. Используем условие ui+vj = сij для занятых клеток. Уравнений т+п-1, неизвестных т + п. Одну компоненту обнулим (любое ui или vj).

2. Проверка выполнения условия оптимальности для незанятых клеток. Вычисляем характеристические разности: ∆ij= ui + vj - сij (см. таблицу стоимостей примера). Если в любой незанятой клетке ij < 0, то конец.

3. Выбор клетки, в которую необходимо послать перевозку. Среди ij > 0 надо выбрать максимальную

4. Построение цикла и определение величины перераспределения груза. Отмечаем плюсом найденную клетку. Стало т + п занятых клеток, т. е. существует цикл. Идем по циклу и расставляем плюсы и минусы, чередуя их (см. пример).

Затем находим Θ0 =(no минусам, расставленным ранее). Значение Θ0 записываем в незанятую клетку. Идем по циклу, где плюс — добавляем Θ0, где минус — вычитаем значение Θ0 из хij.

Исследование:

Исследуем метод на примере.

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

1)Выбор первоначального опорного плана:

1.нашли минимальную стоимость: с12=1 и записали в эту клетку min(a1,b2)=min(5,8)=5

У А1 осталось 0, к В2 надо поставить еще 8-5=3.

2.Дальше берем с21=2 и пишем в эту клетку min(7,3)=3.

У А2 осталось 0, к В1 надо поставить еще 4.

3.Берем с32=2. Пишем min(4,3)=3(ибо В2 сейчас уже 3).

У А3 осталось 1.К В2 осталось 0.

4.Берем с34=2. min(1,3)=1.

А3=0, В4=3-1=2.

5.Берем с24=3. min(4,2)=2.

А2=2, В4=0.

6. Из неравных нулю остались только А2=2 и В3=2. Любая другая ячейка даст min=0.

Надо выбирать с23=2.

Получим первоначальный опорный план(см рис.), т.к. нет циклов (занято m+n-1=6 клеток)

2) Построение системы потенциалов:

Решим составленную для всех занятых клеток систему уравнения.

Получили таблицу в каждой клетке которой находится характеристическая разность

ij= ui + vj - сij

(см рисунок внизу)

Для заполненных клеток разность = 0 (следует из Леммы, ибо система потенциалов так построена).

Есть положительные разности, значит (по Лемме) план не оптимальный и надо его модифицировать.

3) Поиск оптимального плана:

Среди ij>0 найдем max(). Это клетка (3,3). 33=6.

Отметим ее знаком «+». Перешлем туда часть груза.

Теперь стало m+n=7 занятых клеток, а значит есть цикл.

Идем по циклу, начиная с клетки (3,3) и чередуем знаки «+» и «-».

Среди клеток со знаком минус (откуда можно убрать груз) находим min().

В нашем случае min=1. Запишем во все клетки с «+» значение на 1 больше, а во все клетки с «-» - значения на 1 меньше.

Произошло перераспределение:

Клетка (3,4) стала пустой, т.к. там теперь 0.

4) Возврат к построению системы потенциалов и нахождение окончательного решения:

Построим новую систему потенциалов на основе вновь полученного опорного плана. В нем опять нет циклов, ибо m+n-1 заполненная клетка.

Решим систему и получим таблицу потенциалов.

Есть только одна положительная разность 22=3.

min(1,3)=1

Получим:

Найдем характеристические разности:

Откуда:

Положительных нет, значит (по Лемме) этот вариант и есть оптимальный.

Минимальная стоимость перевозки = 36.

Выводы:

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