Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
m1061.pdf
Скачиваний:
115
Добавлен:
15.11.2022
Размер:
20.13 Mб
Скачать

4. ТРАНСПОРТНАЯ ЗАДАЧА. ПРОГРАММА «TRANSY»

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

Математическую модель транспортной задачи можно записать в следующем виде [14].

Найти матрицу перевозимых объемов грузов X = (xij) при известной матрице стоимостей перевозок C = (cij), доставляющую экстремум целевой функции

i=n

j=m

F = ∑∑cij xij opt(max илиmin) (4.1)

i=1

j=1

при следующих ограничениях.

1. Все грузы должен быть вывезены

j=n

xij = ai (i = 1, m; ai 0). (4.2)

j=1

2. Все потребности должны быть удовлетворены

i=m

xij = bj (j = 1, n; bj 0). (4.3)

i=1

3.Движение грузов должно происходить от пунктов отправления к

пунктам назначения

xij 0 (i = 1, m; j = 1, n). (4.4)

4. Выполнено условие сбалансированности, или, по-другому, замкнутости задачи

i=m

j =n

ai = bj . (4.5)

i=1

j =1

Существует ряд методов решения транспортной задачи. Один из них реализован в программе «Transy». Рассмотрим пример содержательной постановки транспортной задачи и её решение.

Задача 12. На железной дороге в нескольких пунктах размещены балластные карьеры, производительность которых известна (таблица 4.1). Известны также места досыпки балласта (таблица 4.2) и тарифная плата за его перевозку от мест заготовки до мест укладки (таблица 4.3). Требуется найти план доставки балласта на участки отсыпки, исходя из минимума затрат на перевозку.

Таблица 4.1. Производительность балластных карьеров

Карьер

A1

A2

A3

A4

A5

Производительность, тыс. м3

40

50

30

30

10

33

Таблица 4.2. Объемы досыпки балласта на участках железной дороги

Участки работ

B1

B2

B3

B4

Объем досыпки, тыс. м3

30

10

60

80

Таблица 4.3. Тарифная плата за перевозку единицы балласта от карьера до участка укладки, тыс. руб.

Участок

B1

B2

B3

B4

Карьер

 

 

 

 

A1

2

3

4

6

A2

2

3

4

6

A3

3

3

8

1

A4

5

1

1

4

A5

11

2

8

9

В приложении П8 приводится решение задачи программой

«Transy».

34

5. ЗАДАЧА КОММИВОЯЖЕРА. ПРОГРАММА «KOMMY»

В строительной практике нередки случаи, когда необходимо доставлять грузы за одну поездку на автомобиле (автопоезде) на n объектов, находящихся на удалении от склада поставщика и друг от друга. Можно случайным образом выбрать маршрут следования так, чтобы автомобиль побывал на каждом объекте только один раз и вернулся на склад, но вопрос будет ли лучшим этот маршрут с точки зрения затрат на поездку остается открытым.

Ответ на этот вопрос дает известная математическая модель называемая «задача коммивояжера». Формулируется она так.

Коммивояжер (агент по сбыту), отправляясь из своего города, должен кратчайшим маршрутом посетить ровно по одному разу п 1 заданных городов и вернуться назад.

Эта оптимизационная задача и различные ее модификации в действительности возникают не только при доставке товаров на дом, но и в ситуациях совершенно иного характера [14]. Математические модели «задачи коммивояжера» содержат большое количество переменных и ограничений. Поэтому для их решения общие методы линейного программирования обычно не используются. Предпочтение отдается вычислительной схеме, известной под названием метода ветвей и границ. При небольших п решение задачи коммивояжера можно найти перебором всех замкнутых маршрутов, проходящих по одному разу через каждый из городов. Будем называть такие маршруты допустимыми. Пусть города пронумерованы числами: 1, 2, …, п, расстояния между ними равны m(i, j) (i, j =1,n), причем значения m(i, j) и m(j, i) не обяза-

тельно совпадают. При отсутствии дороги между пунктами i и j можно считать, что она есть, но m(i, j) = ∞. Всякая перестановка (a1, a2, …, аn)

из элементов: 1, 2, …, п определяет допустимый маршрут: a1a2 a3

…. an (5.1)

Тогда для решения «задачи коммивояжера», перебирая все возможные перестановки (a1, a2, …, аn), достаточно вычислять длины соответствующих маршрутов и запоминать лучшие из них. Именно эта идея и реализована в программе «Kommy». Причем учитываются только перестановки (5.1), где an=1. Ввиду замкнутости (5.1) это делать можно. Таким образом, для п городов просматривается и анализируется (n – 1)! маршрутов.

Входные данные программного обеспечения для решения задачи коммивояжера «Kommy» приведены в таблицах 5.1–5.2..

35

Таблица 5.1. Исходные данные

Показатель

Обозначение

Поле

Наименование решаемой задачи

Задача

Name

Таблица длины пути между пунктами

Tabl1

Tabl1

Количество пунктов, шт.

Nп

Np

Таблица 5.2. Длина пути между пунктами

Пункт

1

..

i

..

n

Пункт

 

 

 

 

 

1

a11

..

a1i

..

a1n

..

..

..

..

..

..

i

ai1

..

aii

..

ain

..

..

..

..

..

..

n

an1

..

ani

..

ann

Пример работы программы «Kommy» приведен в приложении П9.

36

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]