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

книги из ГПНТБ / Золотарь, И. А. Экономико-математические методы в дорожном строительстве

.pdf
Скачиваний:
10
Добавлен:
21.10.2023
Размер:
9.35 Mб
Скачать

Как видно из матрицы, т = 3, я= 5 и любой план должен содер­ жать т + п— 1, т. е. 3 + 5— 1 = 7 ненулевых перевозок.

Составим вначале опорный план методом северно-западного уг­ ла. В результате получаем следующую матрицу перевозок, содер­ жащую точно т + п— 1 ненулевых переменных:

4

5

1

0

0

10 — 4 — 5 1 = 0

0

0

4

6

0

10 4 — 6 = 0

0

0

0

3

9

12 3 9 = 0

4

5

5

9

9

 

Следовательно, этот план задачи может быть признан опорным. Составим теперь опорный план методом минимума по строке. В ре­ зультате получаем следующую матрицу перевозок:

0

5

5

0

0

10 5 5 = 0

 

 

*13

 

 

 

1

0

0

9

0

10 —9 — 1 = 0

3

0

0

0

9

12- 3 - 9 = 0

4

5

5

9

9

 

Как видно из матрицы, она содержит меньше чем т + п— 1 нену­ левых перевозок и в данном случае всего шесть вместо необходи­ мых семи.

План является вырожденным и не может быть принят за опор­ ный. Легко заметить, что в общем случае каждая ненулевая пере­ возка Xij дополняет либо строку, либо столбец, но не то и другое одновременно.

Когда же происходит последнее, то теряется ненулевая перевоз­ ка и план вырождается. В последней матрице это случилось с пере­ возкой * 1 3 = 5, которая дополнила строку (исчерпала запас мате­

риалов) и в точности удовлетворила потребность в материалах для третьего участка.

Рассмотрим порядок освобождения от вырожденное™ планов. Увеличим запасы материалов в первом карьере на величину е. На такую же величину увеличим потребность в материалах для какоголибо участка, но, естественно, не для третьего.

Тогда методом минимума по строке получаем следующий опор­ ный план:

90

£

5

5

0

0

10 +

Е

1 — е

0

0

9 + е

0

10

 

•*23

 

 

-*23

 

1

 

 

 

 

 

 

 

3

0

0

0

9

12

 

4

5

5

9 + е

9

 

 

Теперь в матрице мы имеем т-\-п

1, т. е. 3 + 5 —

1 — 7

ненулевых

перевозок — план является опорным.

Выявляя методом лестницы потенциальные клетки, найдем, что таковыми являются клетки с Хгз и Х25 при значениях A L 24= — 0,1 и ЛТ25= — 0 ,2 . Предоставляем читателю проверить справедливость этого вывода. Улучшенный план будет выражаться следующей мат­ рицей:

£

5

5

0

 

0

10+ £

0

0

0

9 + е

1

— е

10

4— е

0

0

0

8

+ е

12

-*34

 

 

 

 

 

 

4

5

5

9 + е

 

 

9

В этом плане потенциальной является клетка с перевозкой Хц. Второй улучшенный план примет вид:

е

5

5

0

0

0

0

0

1

9

■*23

 

 

 

 

10—[—Е

10

4 — е

0

0

8 + е

0

12

4

5

5

9 + е

9

 

Потенциальной является клетка с перевозкой х23. Третий улуч­ шенный план выразится следующей матрицей:

1 + 8

5

4

0

 

0

Ю+з

0

0

1

0

'

9

10

3 —’£

0

0

9 + е

 

0

12

4

5

5

9 + г

 

9

 

91

Как показывает проверка, в этом плане потенциальных клеток нет. Все величины AL при проверке нулевых клеток оказываются положительными или равными нулю, и потому план является оп­ тимальным.

Следует учитывать, что величина е принимается малой и удов­ летворяющей условиям:

e ^ X i j для всех Xij^>0;

x tj -(-е^ Х ц

для всех

x t j ^>0.

В ряде случаев задачи

линейного

программирования могут

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

 

Т а б л и ц а 20

Рассмотрим

теперь

один

из

 

видов распределительных

за­

№ объекта

Время

Время

дач, связанных с отысканием

на выполнение

на постройку

оптимальной

последовательности

1

земляных

дорожной

строительства

объектов.

Допус­

 

работ t.

одежды Т

 

 

 

тим, что имеется п объектов,

1

3

6

фронт работы на которых открыт.

На каждом

из объектов требует­

2

7

2

ся выполнить

вначале

земляные

3

4

7

4

5

3

работы, а затем устроить дорож­

 

 

 

ную одежду.

Время, требуемое на

но в табл. 20. Предполагается,

выполнение этих работ, приведе­

что имеется

возможность

начать

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

перестановок из п по одному, т. е.

п\ В нашем случае это дает

4! = 1-

2-3• 4 = 24

варианта.

 

На

рис. 20

показано, что если

принять последовательность

строительства объектов 1, 2, 3, 4, то общее время на выполнение всех работ составит 24 недели.

Алгоритм, разработанный Фладом, позволяет быстро находить оптимальную последовательность. Не излагая доказательство этого алгоритма, укажем лишь порядок его реализации.

1. Находим в табл. 20 объект с минимальным временем работ ^min или Timin. В нашем случае это объект 2 с Т2 = 2 ч. Так как ми­ нимальное время относится к завершающей работе — постройке до­ рожной одежды, то ставим этот объект на последнее место по зем­ ляным работам. Нетрудно понять и смысл такого действия: после завершения на объекте 2 земляных работ работы по устройству до­ рожной одежды будут закончены в кратчайший срок (имёет место как бы минимальный период свертывания работ).

92

2.Продолжаем отыскание следующего U in или Тцпщ. В нашем примере это объекты 1 и 4, можно оперировать с любым из них. Ставим на первое место по земляным работам объект 1, характе­ ризующийся как бы минимальным временем развертывания работ.

3.Продолжая действовать таким же образом, ставим на пред­ последнее место по земляным работам объект 4. Итак, оптимальная последовательность восстановления объектов будет следующей: 1,

3, 4, 2. При этом время завершения всех работ Тк составит 21 неде­ лю (см. рис. 20) и экономия времени за счет оптимальной после­ довательности отработки объектов будет три недели.

ft с

 

 

 

 

 

 

 

 

 

 

Зепляньи

S-gjs

 

 

 

 

 

 

 

 

 

5

СЭ

1

1

з

 

4

1

 

2

 

1работы

iftss*

 

1

/

 

|

3

 

ш и а г *

.

 

 

|

 

 

Г з

 

 

 

 

 

 

S tg i

/

 

2

1

4

 

1

 

[работы

?* as ca

 

 

 

ft g ft

 

 

 

1

ft

2 y a

 

3

 

Г П Уетройетйо

ft

§

 

 

.

.

И

*

4

 

 

 

 

 

 

 

 

 

11

16

18

20

22

24 Нед

 

 

2 3 4

6

8 910

12

14

Рис. 20. Схема к отысканию оптимальной по­ следовательности строительства объектов. (Штриховкой показан простой подразделений из-за отсутствия фронта работ)

Если приближенно принять одинаковым время перемещения между объектами, то его можно включить в величины и Г{ и тем самым учесть в Тк. Алгоритм Флада разработан и для более слож­ ных случаев (если видов работ более двух, возможно различное че­ редование работ), однако здесь эти задачи не рассматриваются.

Существуют задачи линейного программирования, решение ко­ торых можно получить специальными методами значительно быст­ рее, чем симплекс-методом или же методами решения транспорт­ ной задачи. Одной из таких задач является задача о назначении, смысл которой рассмотрим на следующем примере.

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

93

Математически задача о назначении формулируется следующим образом:

x iJ= x 2iji, j = 1, 2 . . .

tv,

пп

v

=

х и = 1;

г-1

 

i=1

Т ^ а \ р х и = min.

ч

(V.39)

(V.40)

(V.41)

Условие (V.39) означает, что величина Xi$ может быть либо ну­ лем (машина на работу не выделяется), либо единицей (машина выделяется). Условие (V.40) говорит о том, что в каждой строке и в каждом столбце распределительной матрицы может быть только

одна единица. Индекс (0) при aif в условии (V.41) означает, что

стоимостная характеристика a'lf взята из оценочной матри­ цы А0.

Из постановки задачи ясно, что решение задачи дается квадрат­ ной матрицей (п2 — матрица).

Если по условиям задачи число видов машин п не равно числу видов работ, то вводятся либо фиктивные машины, либо фиктивные работы с тем, чтобы превратить матрицу в квадратную. При этом со

ответствующие оценочные характеристики аУр для фиктивных ма­ шин и работ принимаются равными нулю и тем самым исключает­ ся их влияние на целевую функцию (V.41).

Необходимо отметить, что задача о назначении есть полностью вырожденная транспортная задача. В самом деле, при любом на­ значении машины на работу всегда автоматически совпадают по­ ставки по строке со спросом по столбцу и вместо 2п— 1 мы получа­ ем всего п ненулевых значений хц. Следовательно, необходимо до­ полнить матрицу п— 1 величинами е для того, чтобы избавиться от вырожденное™. Однако такой путь решения задачи оказывается чрезмерно громоздким, и гораздо удобнее пользоваться специаль­ но разработанным Фладом методом ее решения. Он основывается на двух довольно очевидных теоремах. Первая утверждает, что ре­ шение задачи не изменится, если прибавить к любому столбцу или

строке матрицы с оценками ajP некоторую константу или вы­ честь ее.

Таким путем достаточное число величин a \ f сводится к нулю, что дает общее минимальное решение с условным итогом 0.

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

Как уже отмечалось, для п2-матрицы возможно п\ вариантов решения. Разработанный Фладом алгоритм позволяет за небольшое число шагов получить оптимальное решение задачи.

94

Т а б л и ц а 21

 

 

 

Работы j

 

 

Исполни­

1

2

3

4

5

тели i

 

 

 

 

 

 

Трудоемкость, маш.-смен

 

1

2

9

2

7

2

2

6

8

7

6

1

3

4

6

5

3

1

4

4

2

7

3

1

5

5

3

9

5

1

Потребно-

1

1

1

1

1

сти

 

 

 

 

 

Наличие

1

1

1

1

1

5

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

1

8

1

6

1

5

7

6

5

0

3

5

4

2

0

3

1

6

2

0

4

2

8

4

0

Из столбцов данной матрицы вычтем теперь минимальный эле­ мент, также равный единице для 1-го, 2-го, 3-го и 5-го столбцов и двум для 4-го столбца. В результате получаем следующую матрицу:

л

п

Q

if

)

ч

6

5

3

С1

п

и

Ч

Л

\ }

0

о

С

л

1»

3

1

7

2

1'

95

Таким образом, всего вычтено из столбцов и строк 11 единиц. Поэтому для правильной оценки любого решения, получаемого при использовании данной матрицы, к результату необходимо будет прибавить 11 единиц. Проводим минимальное число горизонтальных и вертикальных линий, пересекающих по крайней мере 1 раз все нули. Число этих линий получилось равным 4.

В теории метода доказывается, что если таких линий меньше п, то данная квадратная матрица не дает оптимального решения. Вы­ бираем теперь наименьший элемент, через который не проведена ли­ ния. В нашем случае это единица во втором столбце. Далее необхо­ димо вычесть это число из всех элементов, через которые не прове­ дена ни одна линия, и прибавить его ко всем элементам, через которые проведены две линии. Получаем приводимую ниже мат­ рицу:

- 0

г

Q

1

 

3

г

ч

,,

( 1

2

'

3

(/

 

2

с I

5

1

 

Z

1

6

 

1

Теперь в клетке, где раньше стоял минимальный элемент, не пересекавшийся линией, появился 0.

Далее нужно снова проверить, нет ли решения среди нового на­ бора нулей, проведением минимального числа линий, зачеркиваю­ щих все нули.

Нетрудно видеть, что для этого опять достаточно четырех ли­ ний, т. е. их число меньше п и эта матрица не дает оптимального решения. Наименьшее незачеркнутое число теперь равно 2. Дей­ ствуя, как и ранее, придем к следующей матрице:

 

 

(а)

 

 

 

2

(С')

 

L

1

(СV

 

0

3

»

>)

)

Ч

( '

Для зачеркивания всех нулей в данной матрице потребуется ми­ нимально 5 линий, т. е. их число равно п и матрица дает оптималь­ ное решение по распределению машин. В данном случае имеются

96

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

Решение , приведенное в табл. 22, дает значение целевой функ­ ции, равное: Г = 2 -1 + Ы + 3 - 1 + 2-1 + 5• 1 = 13 машино-смен. Отыс-

Т а б л и ц а 22

 

 

 

Работы ;

 

Исполните­

1

2

3

4

5

ли /

 

 

 

 

 

 

Трудоемкость,

маш.-смен

 

Наличие

1

! '

1

 

 

1

 

 

1

 

 

 

 

1

2

 

 

 

 

1 .

3

 

 

 

1

 

1

4

1

1

 

 

 

1

5

 

 

 

 

1

Потребно-

1

1

1

1

1

5

сти

 

 

 

 

 

 

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

Если в подобных задачах требуется максимизация целевой функ­ ции (допустим, максимизация выработки машин), то оценочная матрица Л0 преобразуется по соотношению.

д « ) _

(0)

(0) .

f * i j

u-zymax

< * i j

,

где ciij m a x — наибольшее из значений а ц ,

стоящее в оценочной мат­

рице.

 

 

 

Далее задача решается в соответствии с приведенным алгорит­ мом и обеспечит max целевой функции.

4 — 1 0 9 2

Глава

VI

ЦЕЛОЧИСЛЕННОЕ ПРОГРАММИРОВАНИЕ ПРИМЕНИТЕЛЬНО К ЭКОНОМИЧЕСКОМУ АНАЛИЗУ ДОРОЖНОГО СТРОИТЕЛЬСТВА

§ 12. Основные понятия

Целочисленное программирование оперирует с задачами, реше­ ние которых имеет смысл только в целых числах без дробных час­ тей. В конце предыдущей главы была рассмотрена задача распре­ деления дорожно-строительных машин между группой объектов. Распределение машин, выраженное нецелыми числами, например 1,5; 1,75 и так далее, не имеет физического смысла. Если решение выражается достаточно большими, пусть нецелыми, числами, то их можно округлить до ближайшего целого числа без существенного ущерба для найденного оптимального распределения. Однако если решение выражается числами в предлах от 0 до 10, то подобное округление может существенно ухудшить решение. Наконец, могут быть задачи, для которых дробные ответы вообще бессмысленны. При мерой подобных задач в области дорожного строительства мо­ жет быть следующая. Необходимо найти оптимальную последова­ тельность строительства ряда дорожных объектов, обусловливаю­ щую минимальное общее время на выполнение работ. Все объекты работ получают в этом случае свои номера: 1, 2, 3, ..., i, ..., п. Тогда решение такой задачи обычными методами линейного программи­ рования может выразиться и в нецелых числах, что не будет иметь смысла.

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

На рис. 21 OABCD представляет область допустимых решений обычной задачи линейного программирования с двумя переменны­ ми у и х. Об этом уже шла речь при пояснении рис. 17. Черными точками внутри OABCD показаны так называемые целочисленные узлы решетки, для которых у и х выражаются целыми числами. Из рис. 21 видно, что ни одна из линий, ограничивающих область OABCD, не проходит через целочисленный узел решетки, кроме на­ чала координат О.

Однако принять эту точку, в которой у = 0 и x = 0, за решение задачи нельзя. Если уменьшить область допустимых решений до OHGFE несколькими дополнительными ограничениями типа RR', то на границах этой области будет лежать оптимальное целочис­ ленное решение задачи.

98

Данный вывод следует из двух

положений:

 

 

 

и

 

 

область OHGFE, как видно из

 

 

 

 

 

рис. 21, включает все возможные

 

 

 

целочисленные решения исходной

 

 

 

задачи;

 

 

 

 

 

 

в теории линейного програм­

 

 

 

мирования доказывается, что оп­

 

 

 

тимальное решение всегда нахо­

 

 

 

дится

как одно

из

так называе­

 

 

 

мых базисных решений, т. е. явля­

 

 

 

ется одной

из угловых точек об­

 

 

 

ласти допустимых решений (в бо­

 

 

 

лее

общем

случае — вершиной

 

 

 

многогранника

ограничивающей

 

 

 

поверхности); но так как отрезки

 

 

 

HG, GF и FE соединяют целочис­

Рис.

21.

Геометрическая интер­

ленные узлы решетки, то и опти­

мальное решение,

соответствую­

претация

целочисленного про­

 

граммирования

щее одной из угловых точек, так­

 

 

 

 

же будет целочисленным.

 

чтобы дополнительными

Таким образом,

задача состоит в том,

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

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

Как было показано в предыдущей главе, ряд уравнений ограни­ чения в задачах линейного программирования имеет форму нера­

венства типа

 

 

П

ai;oc;-< я/0.

(VI. 1)

У]

j - 1

 

 

При введении дополнительных переменных ^ подобные неравен­

ства превращаются в равенства:

 

*/=

ai0 —;=1

(VI -2)

в которых знак минус перед суммой обусловлен переносом членов ciijXi из левой части (VI. 1) в правую.

Допустим, что имеется ограничение типа (VI. 1):

2,7^! — 5,2-(- 6лг3 <; 3,8.

Введя дополнительную переменную t\, получим ограничение в форме равенства ^ = 3,8— (2,7xi—5,1x2 + 6a-3).

99

Соседние файлы в папке книги из ГПНТБ