Реферат Решение открытой транспортной задачи
Работа добавлена на сайт bukvasha.net: 2015-10-28Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего
от 25%

Подписываем
договор
Содержание
Введение 2
1. Транспортная задача и методы её решения 4
1.1. Экономико-математическая модель транспортной задачи 4
1.2.Открытая модель транспортной задачи 7
1.3. Методы составления начального опорного плана 9
1.4. Понятие потенциала и цикла 12
1.5. Критерий оптимальности базисного решения транспортной задачи 15
1.6. Распределительный метод решения транспортной задачи 16
2. Разработка и описание алгоритма решения задачи 18
2.1. Содержательная постановка задачи 18
2.2. Построение математической модели задачи 18
2.3. Решение задачи вручную 18
2.4. Решение задачи с помощью Excel 23
Введение
Распределительные задачи связаны с распределением ресурсов по работам, которые необходимо выполнить. Задачи этого класса возникают тогда, когда имеющихся в наличии ресурсов не хватает для выполнения каждой работы наиболее эффективным образом. Поэтому целью решения
Например затраты обусловленные назначением одной автомашины на некоторый маршрут доставки грузов, не зависят от того какие машины назначены на обслуживание других маршрутов. В то же время при распределении средств между подразделениями фирмы доход от затрат определенного количества денег одним ее подразделением (скажем производством) обычно зависит от того, какие средства будут затрачены другими подразделениями (скажем отделом сбыта). В теории распределения рассматриваются преимущественно задачи с независимыми затратами и доходами. Это объясняется не тем, что такие задачи более важны, а лишь тем, что для них значительно легче строить модели и получать решения.
Распределительные задачи с независимыми линейными функциями затрат (или дохода) стали объектом, наиболее интенсивных исследований, в виду того что для их решения были развитые эффективные, итеративные методы линейного программирования. Однако имеются также методы решения некоторых нелинейных распределительных задач, в том числе методы основанные на линейной аппроксимации.
Распределение ресурсов для одного периода времени может влиять на распределения ресурсов для последующих периодов, а может не оказывать на них никакого влияния. Если каждое из последовательности распределений не зависит от всех остальных, то такая задача называется статистической, в противном случае имеем динамическую распределительную задачу.
Если ресурсы можно разделить между работами, то некоторые работы можно выполнять с помощью различных комбинаций ресурсов. Если работы и ресурсы измеряются в единицах одной и той же шкалы, то такие задачи обычно называют транспортными или задачами разложения. Если же работы и ресурсы выражаются в различных единицах измерениях, то задача называется общей распределительной задачей. Таким образом транспортная задача является частным случаем общей распределительной задачи.
1.Транспортная задача и методы её решения
1.1. Экономико-математическая модель транспортной задачи
Необходимо составить план перевозок, позволяющий вывезти все грузы, полностью удовлетворить Cij xij потребности и имеющий минимальную стоимость.
Обозначим через xij количество единиц груза, запланированных к перевозке от i-го поставщика к j-му потребителю; тогда условия задачи можно записать в виде таблицы, которую в дальнейшем будем называть матрицей планирования.
Таблица №1
Поставщики | Потребители | Запасы | |||
| B1 | B2 | ... | Bn | |
A1 | C11 X11 | C12 X12 | ... | C1n X1n | A1 |
A2 | C21 X21 | C22 X22 | ... | C2n X2n | A2 |
... | ... | ... | ... | ... | ... |
Am | Cm1 Xm1 | Cm2 Xm2 | ... | Cmn Xmn | Am |
Потребности | B1 | B2 | ... | Bn | |
Составим математическую модель задачи. Так как от i-го поставщика к j-му потребителю запланировано к перевозке xij единиц груза, то стоимость перевозки составит Cijxij.
Стоимость всего плана выразится двойной суммой:
Систему ограничений получаем из следующих условий задачи:
А) все грузы должны быть вывезены, т.е.
(i = 1,2,3,..., m) (эти уравнения получаются из строк таблицы 1);
Б) все потребности должны быть удовлетворены, т.е.
(j = 1,2,3,...,n) (уравнения получаются из столбцов таблицы 1).
Таким образом, математическая модель транспортной задачи имеет следующий вид.
Найти наименьшее значение линейной функции:
Z =
При ограничениях
Xij ³ 0 ( j = 1,2,3, ..., m; i = 1,2,3, ..., n).
В рассмотренной модели предполагается, что суммарные запасы равны суммарным потребностям, т.е.
Такая модель называется закрытой.
Теорема 1. Любая транспортная задача, у которой суммарный объем запасов совпадает с суммарным объемом потребностей, имеет решение.
Для доказательства теоремы необходимо показать, что при заданных условиях существует хотя бы один план задачи и линейная функция на множестве планов ограничена.
Доказательство. Пусть
Тогда величины xij = aibj /M (i = 1,2,3, ... M ; j = 1,2,3, ..., n) являются планом, так как они удовлетворяют системе ограничений
( 2 ) и ( 3 ) .
Действительно, подставляя значения в ( 2 ) и ( 3 ) , находим
Выберем из значений Cij наибольшее C¢ = max Cij и заменим в линейной функции ( 1 ) все коэффициенты на C¢ тогда, учитывая ( 2 ) , получим
Выберем из значений Cij наименьшее C¢¢=min Cij и заменим в линейной функции все коэффициенты на C¢¢ ; тогда, учитывая ( 2 ) имеем
Т. Е. Линейная функция ограничена на множестве планов транспортной задачи.
Транспортная задача, в которой суммарные запасы и потребности совпадают, т. е. выполняется условие
a) суммарные запасы превышают суммарные потребности
b) суммарные потребности превышают суммарные запасы
Линейная функция одинакова в обоих случаях, изменяется только вид системы ограничений.
Найти минимальное значение линейной функции
xij ³ 0 (i = 1, 2, ..., m; j = 1, 2, ..., n).
Открытая модель решается приведением к закрытой модели.
В случае (а), когда суммарные запасы превышают суммарные потребности, вводится фиктивный потребитель Bn+1, потребности которого bn+1 =
После преобразований задача принимает вид закрытой модели и решается обычном способом. При равных стоимостях перевозки единицы груза от поставщиков к фиктивному потребителю затраты на перевозку груза реальным потребителям минимальны, а фиктивному потребителю будет направлен груз от наименее выгодных поставщиков. То же самое получаем и в отношении фиктивного поставщика.
Прежде чем решать какую-нибудь транспортную задачу, необходимо сначала проверить, к какой модели она принадлежит, и только после этого составить таблицу для ее решения.
1.3. Методы составления начального опорного плана
Как и для других задач линейного программирования, итерационный процесс по отысканию оптимального плана транспортной задачи начинается с опорного плана .
Рассмотрим систему ограничений ( 2 ) и ( 3 ) транспортной задачи. Она содержит m´n неизвестных и m+n уравнений,
Связанных соотношением (4). Если сложить почленно уравнения отдельно подсистемы ( 2 ) и отдельно подсистемы ( 3 ), то получим два одинаковых уравнения . В таблице такое сложение равнозначно соответственно почленному сложению столбцов и почленно сложению строк .
Наличие в системе ограничений двух одинаковых уравнений говорит о ее линейной зависимости. Если одно из этих уравнений отбросить, то в общем случае система ограничений должна содержать m+n-1 линейно независимых уравнений, с
Таким образом, если каким-либо способом получен невырожденный опорный план транспортной задачи, то в матрице
( Xij ) (i = 1, 2, ..., m; j = 1, 2, ... , n) значений его компонент (таблицы 2) положительными являются только
M+n-1, а остальные равны нулю.
Если условие транспортной задачи и ее опорный план записаны в виде таблицы, то клетки, в которых находятся отличные от нуля перевозки, называются занятыми, а остальные - незанятыми.
Занятые клетки соответствует неизвестным, и для невырожденного опорного плана их количество равно
M+n-1. Если ограничения транспортной задачи записаны в виде ( 2 ) и (3) то, как известно, базисным неизвестным, включенным в опорный план, соответствует система линейно независимых векторов.
Всякий план транспортной задачи, содержащий более
M+n-1 занятых клеток, не являются опорным, так как ему соответствует линейно зависимая система векторов. При таком плане в таблице всегда можно построить замкнутый цикл, с помощью которого уменьшают число занятых клеток до m+n-1.
Циклом называется набор клеток вида ( i1 j1 )( i1 j2 )*( j2 i2 )( j1 im ), в котором две и только две соседние клетки расположены в одном столбце или одной строке таблицы, причем последняя клетка находится в той же строке или столбце, что и первая.
Если к занятым клеткам, определяющим опорный невырожденный план, следовательно, и ацикличный, присоединить какую-либо незанятую клетку, то план становится не опорным, появляется единственный цикл, все вершины которого, за исключением одной, лежат в занятых клетках.
Существует несколько простых схем построения первоначального опорного плана транспортной задачи.
При составлении первоначального опорного плана методом северо-западного угла стоимость перевозки единицы не учитывается, поэтому построенный план далек от оптимального, получение которого связано с большим объемом вычислительных работ. Поэтому рассмотренный метод используется при вычислениях с помощью ЭВМ.
При
Стоимости планов, полученных методами минимальной стоимости и двойного предпочтения меньше стоимости плана, полученного методом северно-западного угла, значит они ближе к оптимальному.
Если план X* = (x*ij) транспортной oзадачи является оптимальным, то ему соответствует набор из m + n чисел Ui* и Vj* , удовлетворяющих условиям
Ui* + Vj* = Cij для xij* > 0
Ui* + Vj* £ Cij для xij* = 0
(i = 1, 2, 3, ..., m ; j = 1, 2, 3, ..., n) .
Числа Ui* и Vj* называются потенциалами соответственно поставщиков и потребителей.
Доказательство. Транспортную задачу минимизации линейной функции Z =
xi1 + xi2 + ... + xin = ai , i = 1, 2, ... , m,
x1j + x2j + ... + xmj = bj, j = 1, 2, ... , n,
xij ? 0 (i = 1, 2, ... , m; j = 1, 2, ... , n)
можно рассматривать как двойственную некоторой исходной задачи линейного программирования, условия которой получаются по общей схеме, если каждому ограничению вида xi1 + xi2 + ... + xin = ai в исходной задаче соответствует переменная Ui (i = 1, 2, ..., m), а каждому ограничению вида x1j + x2j + xmj = bj - переменная Vj (j = 1, 2, ..., n), а именно: максимизировать линейную функцию f =
(i = 1, 2, ..., m; j = 1, 2, ..., n).
План X* является оптимальным планом двойственной задачи, поэтому план Y* = ( Ui*, Vj* ) является планом исходной задачи и на основании теоремы двойственности
max f = min Z
или
На основании теоремы о двойственной задаче, получаем что ограничения исходной задачи, соответствующие положительным компонентам оптимального плана двойственной задачи, удовлетворяются как строгие равенства, а соответствующие компонентам, равным нулю, ¾ как неравенства, т. е.
Ui* + Vj* = Cij для xij* > 0 ,
Ui* + Vj* £ Cij для xij* = 0 .
Из доказанной теоремы следует: для того чтобы первоначальный опорный план был оптимальным, необходимо выполнение следующих условий:
a) для каждой занятой клетки сумма потенциалов должна быть равна стоимости единицы перевозок, стоящей в этой клетке:
Ui + Vj = Cij ; ( 5 )
b) для каждой незанятой клетки сумма потенциалов должна быть меньше или равна стоимости единицы перевозки, стоящей в этой клетке :
Ui + Vj £ Cij . ( 6 )
Если хотя бы одна незанятая клетка не удовлетворяет условию ( 6 ), то опорный план является неоптимальным и его можно улучшить, вводя в базис вектор, соответствующий клетке, для которой нарушается условие оптимальности,(т. е. в клетку надо переместить некоторое количество единиц груза).
Таким образом, для проверки на оптимальность необходимо сначала построить систему потенциалов.
Для построения системы потенциалов используем условие
Ui + Vj = Cij
где Cij¾ стоимость перевозки единицы груза занятой клетки в i-ой строке и j-м столбце .
Систему потенциалов можно построить только для невырожденного опорного плана. Такой план содержит m+n-1 линейно независимых уравнений вида (5) с
Пусть известен потенциал Ui; тогда из равенства ( 5 ) следует
Vj = Cij - Ui .
Если известен потенциал Vj , то из того же равенства имеем
Ui = Cij - Vj .
Таким образом, для определения неизвестного потенциала от величины Cij занятой клетки следует вычесть известный потенциал.
Набором называется произвольная совокупность перевозок транспортной таблицы.
Цепью называют такие наборы, когда каждая пара соседних клеток в цепи расположены либо в одном столбце, либо в одной строке.
Циклом называется цепь, крайние элементы которой находятся либо в одной строке, либо в одном столбце.
Базисное распределение поставок оптимально тогда и только тогда когда оценки всех свободных клеток больше нуля. Для свободных клеток строится цикл пересчёта, и в вершинах этого цикла расставляется последовательность чередующихся знаков, начиная со знака плюс в свободной клетке. К коэффициентам затрат таблицы поставок в каждой строке и каждом столбце надо прибавить такие числа (потенциалы) чтобы коэффициент затрат в заполненных клетках стали равными нулю.
Полученные при этом коэффициенты затрат свободных клеток равны оценкам этих клеток.
Один из наиболее простых методов решения транспортной задачи – распределительный метод.
Пусть для транспортной задачи найдено начальное опорное решение
Определим, как изменится целевая функция при переходе к новому опорному решению. При сдвиге на единицу груза по циклу, соответствующему клетке (l, k), приращение целевой функции
«-».
В клетках, отмеченных знаком «+», величины груза прибавляются, что приводит к увеличению значения целевой функции Z(
Если разность сумм для свободной клетки (l, k) меньше нуля, т.е.
Для решения транспортной задачи распределительным методом необходимо найти начальное опорное решение. Затем для очередной опорной клетки (l, k) построить цикл и вычислить оценку
Для каждого нового опорного решения вычисление оценок начинается с первой свободной клетки таблицы. Очевидность проверяемых свободных клеток целесообразно устанавливать в порядке возрастания стоимости перевозок
2.Разработка и описание алгоритма решения задачи
2.1. Содержательная постановка задачи
Составить экономико-математическую модель задачи. Найти оптимальное распределение поставок и минимальные затраты на перевозку. Первоначальное распределение поставок выполнить методом северо-западного угла.
Таблица№2
Поставщики | Потребители | Запасы груза | ||
| 5 | | 6 | 50 |
| 6 | | 5 | 40 |
| 8 | | 5 | 20 |
Потребность в грузе | 18 | 21 | 33 | |
2.2.Построение математической модели задачи
При этом методе на каждом шаге построения первого опорного плана заполняется левая верхняя клетка ("северо-западный угол") оставшейся части таблицы. При таком методе заполнение таблицы начинается с клетки переменного
Таблица №3
Поставщики | Потребители | Запасы груза | |||
| 5 18 | 21 | 11 | 0 | 50 |
| 6 | | 22 | 0 18 | 40 |
| 8 | | | 0 20 | 20 |
Потребители В грузе | 18 | 21 | 33 | 38 | |
2.3.Решение задачи вручную
Находим значение потенциалов:
Ui+Vj=Ci,j(i=1..m, j=1..n),
U1 + V1=5
U1 + V2=7
U1 + V3=6
U2 + V3=5
U2 + V4=0
U3 + V4=0
U1 =0
U2=-1
U3=-1
V1=5
V3=6
V4=1
Определяем значения оценок
=
=2
Строим оценочную матрицу:
В оценочно матрице есть отрицательный элементы и, следуя, критерию оптимальности решение не является оптимальным. Переходим к следующему решению. Для этого нужно перераспределить данные в матрице Х0
Находим число пересчета по циклу
числу перегрузки, где
Составляем новую матрицу, добавив в клетки отмеченные плюсом прибавляем, и отнимаем из значение из клеток отмеченные минусом. Получаем новое решение X
В оценочной матрице подчеркиваем элементы соответствующие базисным в новом решении. Строим цепочку выделения. Она строится от особо выделенного элемента (элемент
Прибавляем к выделенным строкам
Так как в оценочной матрице
Excel
Таблица №4
Поставщики | Потребители | Запасы груза | ||
| 5 | | 6 | 50 |
| 6 | | 5 | 40 |
| 8 | | 5 | 20 |
Потребность в грузе | 18 | 21 | 33 | |
На практике подобные задачи решаются, конечно же, при помощи различного программного обеспечения, что позволяет значительно упростить работу и сэкономить время.
Рассмотрим, как это можно сделать в среде электронных таблиц Microsoft Excel.
В табличном процессоре Microsoft Excel для решения подобных задач предусмотрена надстройка Поиск решения. Выполните следующую подготовительную работу для решения транспортной задачи с помощью средства Поиск решения в табличном процессоре Microsoft Excel.
1. Введите в ячейки диапазона A6:D8 значения спроса
2. Введите в диапазон ячеек A9:D9 матрицу расходов.
3. Введите в ячейки диапазона E6:E8 запасы.
4. В ячейку E9 выводиться оптимальное решение
=СУММПРОИЗВ(A1:D3;A6:D8). Сделать это можно при помощи мастера функций выбрав в разделе. Математические функцию СУММПРОИЗВ и указав необходимый диапазон.
В диалоговом окне Параметры поиска решения установить флажок Линейная модель. После нажатия кнопки. Выполнить средство поиска решений находит оптимальный план поставок продукции и соответствующие ему транспортные расходы.
Оптимальное решение транспортной задачи