Эта ссылка указывает, как вы это делаете:
График узла активности
взвешенный по вершинам граф. Тем не менее
алгоритмы, представленные в предыдущем
все сечения требуют граничного взвешивания
графики. Поэтому мы должны преобразовать
взвешенный по вершинам граф в его
взвешенный по фронту двойной . В двойственном графе
края представляют деятельность,
и вершины представляют
начало и прекращение
деятельность. По этой причине двойной
граф называется графом узла-события .
Хотя я предполагаю, что это пропускает некоторые важные детали. Они предлагают преобразовать узел активности в граф узла событий, чтобы преобразовать каждый узел активности в ребро узла события и добавить фиктивный край для действий, которые принимают несколько входных данных.
Другим способом построения графа узла события является замена каждого узла активности ребром и двумя узлами, например, A->B->C
становится A->A'->B->B'->C-C'
. Затем удалите каждый узел, который имеет только один вход и ноль или один выход, и замените их ребром нулевой стоимости, так как эти узлы событий фактически ничего не делают.