msArborEdmonds: Minimum cost arborescence with Edmonds' algorithm

Description Usage Arguments Details Value References See Also

Description

Given a connected weighted and directed graph, msArborEdmonds uses Edmonds' algorithm to find a minimum cost arborescence.

Usage

1
msArborEdmonds(nodes, arcs, source.node = 1, stages.data = FALSE)

Arguments

nodes

vector containing the nodes of the graph, identified by a number that goes from 1 to the order of the graph.

arcs

matrix with the list of arcs of the graph. Each row represents one arc. The first two columns contain the two endpoints of each arc and the third column contains their weights.

source.node

source node of the graph. It's node 1 by default.

stages.data

logical value indicating if the function returns data of each stage. Is FALSE by default.

Details

Edmonds' algorithm was developed by the mathematician and computer scientist Jack R. Edmonds in 1967. Previously, it was proposed in 1965 by Yoeng-jin Chu and Tseng-hong Liu.

Value

msArborEdmonds returns a list with:

tree.nodes

vector containing the nodes of the minimum cost arborescence.

tree.arcs

matrix containing the list of arcs of the minimum cost arborescence.

stages

number of stages required.

References

Chu, Y. J., and Liu, T. H., "On the Shortest Arborescence of a Directed Graph", Science Sinica, vol. 14, 1965, pp. 1396-1400.

Edmonds, J., "Optimum Branchings", Journal of Research of the National Bureau of Standards, vol. 71B, No. 4, October-December 1967, pp. 233-240.

See Also

A more general function getMinimumSpanningTree.


optrees documentation built on May 2, 2019, 8:15 a.m.