graph theory – Implementing the problem of the shortest pair of disjoint paths for multigraphs

I would like to implement the shortest pairs of disjointed Suurballe and Tarjan paths for multigraphs in the interpretation of Banerjee et al. (, relying only on Section 3).

concerning simple graphics, this algorithm can be defined for a G = (V, E) simple graphic having a source s and non-negative onboard costs c (u, v) as following:

(1) Build the tree of the shortest way T rooted in s for g using the Dijkstra algorithm.

(2) reduce the cost on all the edges (a B) as c (a, b) = c (a, b) + d (a) -d (b), or d (a) is the distance from the top a Summit s.

(3) Create an auxiliary graph G = (V,, E) as follows:

(3.1) together V = V and E & # 39; = empty,

(3.2) for each non-ridge edge (a, b) of E T:

(3.2.1) define V * as a set of nodes in the path between a and b in T with the exception of b,

(3.2.2) for each v & # 39; of V *: together E = E & # 39; U {(v & # 39; b)} and it (v,, b) = c (a, b).

(4) Build a shortest path tree T & # 39; rooted in s for G & # 39; weighted by the c & # 39; function, using Dijkstra 's algorithm.

(5) Save the predecessor of each summit X in T & # 39; as q (x) and the tail of the edge not-in g which caused the insertion of the (q (x), x) in G & # 39;.

(6) Create pairs of edge-disjoint paths for each v of V As follows:

(6.1) Mark all the vertices of the shortest path of v at s in g.

(6.2) Generate the paths in two iterations of the step Crossing given below. In each iteration, a path of the shortest pairs is generated.

Traversal: To define x = v, the path must be empty and repeat the following steps until x = s. Yes X is marked then uncheck and add (p (x), x) to the path, or add (y, x) at the path, where there is the parent of X in T.

Could you help me, please, to rephrase the algorithm for multigraphs? I guess G, p (), q () and Crossing of section 3 in Banerjee paper et al. should be changed somehow, but I do not know how.