Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Для МПМ-12.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
274.51 Кб
Скачать

1.3.3 Специальные задачи линейного программирования

Перевозки товаров различными транспортными средствами в ряде случаев приводят к таким нежелательным явлениям, как порожние пробеги, простои, встречные и нерациональные перевозки. Для их исключения используются методы оптимального планирования перевозок, в частности, такая экономико-математическая модель, как «транспортная задача».

Под транспортной задачей в настоящее время понимают комплекс задач, имеющих специфические постановку и алгоритм решения.

Простейшим примером транспортной задачи является задача о планировании перевозок некоторого продукта из конечного числа пунктов отправления в конечное число пунктов назначения при обеспечении минимальных затрат на выполнение данной операции.

Постановку и методику решения подобных задач рассмотрим с использованием следующего примера.

Три завода некоторого объединения, территориально удалённые друг от друга, выпускают однотипную продукцию. Ежедневные объёмы производства на заводах составляют соответственно 120, 100 и 80 единиц некоторого товара. В конце рабочего дня товар должен быть развезён по оптово-розничным складам. Складов всего три. Причём они, так же как и заводы располагаются в разных районах региона. Ежедневный спрос на продукцию объединения у менеджеров складов соответственно 90, 90, 120 единиц продукции заводов. Известны также показатели затрат на перевозку 1 ед. товара от каждого из заводов до каждого из складов.

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

в которой – количество единиц товара планируемого к перевозке от i-го завода на j-ый склад, а под затратами понимается матрица

в которой – стоимость перевозки единицы груза от i-го завода на j-ый склад.

Для решения задачи исходные данные удобно свести в таблицу табл. 1.4, где числа 7, 6, 4 и т.д. обозначают стоимость перевозок, т.е. . Каждая клетка таблицы индексирована индексами i и j.

Таблица 1.4

Заводы

Объём производства

Потребители и их спрос

j=1

j=2

j=3

90

90

120

i=1

120

7

6

4

i=2

100

3

8

5

i=3

80

2

3

7

Математическая постановка данной задачи имеет вид: найти оптимальный план перевозок, доставляющий минимум целевой функции. Целевая функция описывается следующим образом:

Транспортная задача относится к классу задач линейного программирования. Решение таких задач обычно связано с получением опорного допустимого плана и последующим его улучшением.

Опорный план может быть получен различными методами. Рассмотрим метод «наименьших затрат». Суть метода заключается в том, что в таблице затрат выбирается клетка с наименьшем значением, т.е. клетка [3;1]=2. Третий завод может поставить в эту клетку не более 80 ед. груза, а первый склад может принять не более 90 е.д. Следовательно, максимальный грузопоток в этой клетке будет 80 ед. Однако, на первый склад нужно поставить ещё 10 ед. груза. Мы можем их поставить как из первого завода, так и со второго. Т.к. затраты на перевозку на склад №1 меньше у второго завода, то запланируем перевозку десяти ед. груза с него на первый склад.

Далее, аналогичным образом, распределяем остальной грузопоток. Со второго завода вывезено 10 ед., а 90 ед. ещё осталось. Остаток можно вывести как на второй склад так и на третий, но минимальные затраты на перевозку будут в случае транспортировки груза на склад №3. Полный опорный план представлен в табл. 1.5.

Таблица 1.5

Заводы

Объём производства

Потребители и их спрос

j=1

j=2

j=3

90

90

120

i=1

120

7

6

4

90

30

i=2

100

3

8

5

10

90

i=3

80

2

3

7

80

Проверим полученный опорный план. Сумма перевозок по строкам должна совпадать с соответствующими объёмами производства каждого из заводов. Сумма перевозок по столбцам должна совпадать с потребностью складов. По текущему плану перевозок целевая функция равна 1300 ден.ед.

Следующим этапом решения задачи, является последовательное улучшение плана перевозок до оптимального. Для чего введём систему потенциалов и . При расчёте потенциалов нужно руководствоваться следующим:

1) всегда равно нулю;

2) .

При расчёте нужно использовать только клетки, содержащие план перевозок. Например, зная, что и что по строке 1 в плане перевозок учувствуют ячейки [i = 1; j =2] и [i = 1; j =3], можем найти значения и . Для чего решим уравнения и . Зная значение можно найти значение , после найти значения и . Полный расчёт приведён в табл. 1.6.

Таблица 1.6

Объём производства

Потребители и их спрос

u

j=1

j=2

j=3

90

90

120

i=1

120

7

6

4

90

30

u1 = 0

5

i=2

100

3

8

5

10

90

u2 = 1

1

i=3

80

2

3

7

80

u3 = 0

-3

3

v

v1 = 2

v2 = 6

v3 = 4

В клетках, не участвующих в грузопотоке, рассчитаем разницу между стоимостью перевозок и суммой u и v. В таблице эта разница обрамлена рамкой. Данная разница называется коэффициентом напряжённости. В ячейку с самым отрицательным коэффициентом нужно переместить часть грузопотока и перестроить план перевозок. Оптимальный план перевозок будет тот, в котором коэффициенты напряжённости будут больше или равны нулю.

В таблице 6 ячейкой с отрицательным коэффициентом напряжённости является ячейка [i = 3; j = 1]. В эту ячейку нужно направить грузопоток, т.е. пересчитать план перевозок. Для изменения грузопотока составляется цепь пересчёта. Цепь представляет собой прямоугольную фигуру, одна из вершин которой находится в ячейке с отрицательным коэффициентом напряжённости, а остальные в ячейках, участвующих в грузоперевозке.

Поочерёдно каждой из вершин цепи (начиная с ячейки с отрицательным коэффициентом) присваиваются знаки «+» и «-». Долее выбирается объём изменения грузопотока по минимальному значению плана перевозок выпадающих на вершины со знаком «-» табл. 1.7.

Таблица 1.7

Заводы

Объём производства

Потребители и их спрос

u

j=1

j=2

j=3

90

90

120

i=1

120

7

6

4

u1 = 0

90 (-80)

30 (+80)

5

i=2

100

3

8

5

u2 = 1

10

(+80)

90

(-80)

1

i=3

80

2

3

7

u3 = 0

80 (-80)

(+80)

-3

3

v

v1 = 2

v2 = 6

v3 = 4

Измененный план грузоперевозок, обрабатывается по уже описанному алгоритму и приведён в табл. 1.8.

После первой итерации в таблице 8 нет отрицательных коэффициентов, следовательно, полученный план грузоперевозок является оптимальным. Затраты на перевозку (W) составят 1 060 ден. ед.

В рассмотренном примере объёмы производства заводов были равны объёмам спроса. В случаях, когда это условие не выполняется, в задачу вводят фиктивного поставщика или потребителя доставляющих или потребляющих недостающие для равенства объёмы товаров.

Таблица 1.8

Заводы

Объём производства

Потребители и их спрос

u

j=1

j=2

j=3

90

90

120

i=1

120

7

6

4

u1 =0

10

110

5

i=2

100

3

8

5

u2 =1

90

10

1

i=3

80

2

3

7

u3 =-1

80

3

-3

6

v

v1 = 2

v2 = 6

v3 = 4