Географические сети
Анализ сетей - традиционный метод в географии. Сетями являются реки и дороги, линии связи и электропередачи. Пока можно использовать интуитивное представление о сетях как о наборе точек (объектов) и линий (путей), объединенных в систему. Наиболее часто используется понятие транспортно-географического положения городов. Анализ сетей может быть выполнен на различном уровне абстракции. Например, при анализе топографической сети параметры которой соответствуют конкретной местности, основная трудность заключается в корректной формализации процесса. Другой пример доставляют нам информационные сети, в которых принципиально важными является совсем другой факт - конкретная топология взаимных связей.
Для того, что бы использовать понятие сетей в конкретных задачах необходимо научиться, по крайней мере, каким-либо образом описывать данный объект. С точки зрения геометрии (или анализа каркаса сети) данная проблема решается методами теории графов. С другой стороны необходимо также познакомиться и с имеющими алгоритмами решения сетевых задач.
Рассмотрим для начала конкретный пример строительства дома.
Код работы |
Описание работы |
Непосредственно предшествующие работы |
Нормальная длительность выполнения (в днях) |
a |
Начало |
|
|
b |
Вырыть котлован и засыпать основание |
a |
4 |
c |
Уложить бетонный фундамент |
b |
2 |
d |
Установить деревянный каркас |
c |
4 |
e |
Произвести кладку кирпича |
d |
6 |
f |
Канализация и сантехника в подвале |
c |
1 |
g |
Перекрыть подвальный этаж |
f |
2 |
h |
Сантехника на первом этаже |
f |
3 |
i |
Электропроводка на 1 этаже |
d |
2 |
j |
Отопление и вентиляция |
d, g |
4 |
k |
Штукатурка (включая сушку) |
i, j, h |
10 |
l |
Уложить полы |
k |
3 |
m |
Смонтировать кухню |
l |
1 |
n |
Окончательный монтаж сантехники в доме |
l |
2 |
o |
Закончить плотницкие работы (полы, перила и т.д.) |
l |
3 |
p |
Возведение кровли |
e |
2 |
q |
Водосточные желоба и трубы |
p |
1 |
r |
Сделать коллекторы для дождя |
c |
` |
s |
Покрыть полы лаком |
o, t |
2 |
t |
Малярные работы |
m, n |
3 |
u |
Закончить электротехнические работы |
t |
1 |
v |
Нивелировка территории |
q, r |
2 |
w |
Тротуары и благоустройство |
v |
5 |
x |
Сдача объекта |
s, u, w |
1 |
Построим теперь графическое изображение проекта. Технологическая последовательность работ указывается стрелками, соединяющими набор работ с непосредственно следующими работами. График представляет собой символическое изображение некоторого числа различных путей от первой к последней. Время (или любой другой ресурс перемещающийся или описывающий движение в сети), потребное для прохождения по любой из тропинок или маршрутов сети есть сумма продолжительностей составляющих ее работ по пути следования. Критический путь - это наиболее продолжительный (по времени или количеству другого ресурса) путь от «Начала» до «Конца». Ему соответствует минимальное время, необходимое для завершения всего проекта в целом. По существу, критический путь - это «узкое место» проекта. Это очень важный параметр любого проекта. Независимо - от задачи и сети. В большинстве крупных проектов критическими бывают примерно 10% работ.
Алгоритм метода критического пути.
Если заданы срок или дата начала проекта, пусть это S , то для каждой работы можно найти соответствующую дату ES , при условии, что все непосредственно ей предшествующие также начинаются в свой срок ES и уже выполнены. Если длительность работы равна t , то ранний срок окончания работы есть EF = ES+t (E-Start, E-Finish). С помощью графика проекта можно очень легко вычислить сроки ES и EF следующим образом:
указывается значение S справа от кружка начала работ;
выбирается любая такая работа, для которой еще нет расписания (нет ES и ET), но все непосредственно предшествующие ей работы такие даты уже имеют; слева указывается наибольшее из чисел, стоящих справа от кружков работ, непосредственно ей предшествующих (это ранний срок ее начала);
к этому числу прибавляется продолжительность данной работы, и сумма указывается справа от кружка (ранний срок окончания работы);
перечисленные операции продолжаются до тех пор, пока не буде достигнута последняя.
Таким образом, по окончанию вычислений слева от кружков, соответствующих каждой работе, будут стоять ранние сроки начала ES этих работ, а справа - ранние сроки окончания EF этих работ. Число стоящее справа от последней работы представляет собой ранний срок окончания F всего проекта в целом.