Popt4jlib: A Parallel/Distributed Optimization Library for Java
This work provides a tool for developers in optimization and computational fields to more easily create their own parallel implementations, but it is incremental as it builds on existing meta-heuristic and exact algorithms.
The paper presents the design and implementation of the popt4jlib library, an open-source Java library for parallel and distributed optimization algorithms, focusing on its architectural infrastructure to facilitate custom algorithm development rather than just providing pre-built solutions.
This paper describes the architectural design as well as key implementation details of the Open Source popt4jlib library (https://githhub.org/ioannischristou/popt4jlib) that contains a fairly large number of meta-heuristic and other exact optimization algorithms parallel/distributed Java implementations. Although we report on speedup and efficiency issues on some of the algorithms in the library, our main concern is to detail the design decisions for the key parallel/distributed infrastructure built into the library, so as to make it easier for developers to develop their own parallel implementations of the algorithms of their choice, rather than simply using it as an off-the-self application library.