-
Graph4J -- A computationally efficient Java library for graph algorithms
Authors:
Cristian Frăsinaru,
Emanuel Florentin Olariu
Abstract:
Graph algorithms play an important role in many computer science areas. In order to solve problems that can be modeled using graphs, it is necessary to use a data structure that can represent those graphs in an efficient manner. On top of this, an infrastructure should be build that will assist in implementing common algorithms or developing specialized ones. Here, a new Java library is introduced…
▽ More
Graph algorithms play an important role in many computer science areas. In order to solve problems that can be modeled using graphs, it is necessary to use a data structure that can represent those graphs in an efficient manner. On top of this, an infrastructure should be build that will assist in implementing common algorithms or developing specialized ones. Here, a new Java library is introduced, called Graph4J, that uses a different approach when compared to existing, well-known Java libraries such as JGraphT, JUNG and Guava Graph. Instead of using object-oriented data structures for graph representation, a lower-level model based on arrays of primitive values is utilized, that drastically reduces the required memory and the running times of the algorithm implementations. The design of the library, the space complexity of the graph structures and the time complexity of the most common graph operations are presented in detail, along with an experimental study that evaluates its performance, when compared to the other libraries. Emphasis is given to infrastructure related aspects, that is graph creation, inspection, alteration and traversal. The improvements obtained for other implemented algorithms are also analyzed and it is shown that the proposed library significantly outperforms the existing ones.
△ Less
Submitted 19 August, 2023;
originally announced August 2023.
-
A Branch and Bound Algorithm for Coalition Structure Generation over Graphs
Authors:
Emanuel Florentin Olariu,
Cristian Frasinaru,
Albert Abel Policiuc
Abstract:
We give a column generation based branch and bound algorithm for coalition structure generation over graphs problem using valuation functions for which this problem is proven to be NP-complete. For a given graph G = (V;E) and a valuation function w : 2^V -> R, the problem is to find the most valuable coalition structure (or partition) of V. We consider two cases: first when the value of a coalitio…
▽ More
We give a column generation based branch and bound algorithm for coalition structure generation over graphs problem using valuation functions for which this problem is proven to be NP-complete. For a given graph G = (V;E) and a valuation function w : 2^V -> R, the problem is to find the most valuable coalition structure (or partition) of V. We consider two cases: first when the value of a coalition is the sum of the weights of its edges which can be positive or negative, second when the value of a coalition takes account of both inter- and intra-coalitional disagreements and agreements, respectively. For both valuations we give experimental results which cover for the first time sets of more than forty agents.
For another valuation function (coordination) we give only the theoretical considerations in the appendix.
△ Less
Submitted 28 April, 2020;
originally announced April 2020.
-
An Improved Subsumption Testing Algorithm for the Optimal-Size Sorting Network Problem
Authors:
Cristian Frasinaru,
Madalina Raschip
Abstract:
In this paper a new method for checking the subsumption relation for the optimal-size sorting network problem is described. The new approach is based on creating a bipartite graph and modelling the subsumption test as the problem of enumerating all perfect matchings in this graph. Experiments showed significant improvements over the previous approaches when considering the number of subsumption ch…
▽ More
In this paper a new method for checking the subsumption relation for the optimal-size sorting network problem is described. The new approach is based on creating a bipartite graph and modelling the subsumption test as the problem of enumerating all perfect matchings in this graph. Experiments showed significant improvements over the previous approaches when considering the number of subsumption checks and the time needed to find optimal-size sorting networks. We were able to generate all the complete sets of filters for comparator networks with 9 channels, confirming that the 25-comparators sorting network is optimal. The running time was reduced more than 10 times, compared to the state-of-the-art results.
△ Less
Submitted 27 July, 2017;
originally announced July 2017.