jORLib
Java OR Library
Released: April, 2015
Written by Joris Kinable and Contributors
(C) Copyright 2015, by Joris Kinable and Contributors. All rights reserved.
Please address all contributions, suggestions, and inquiries to the current project administrator Joris Kinable
Introduction
jORLib is a Java class library that provides implementations for Operations Research problems. The code requires JDK 1.8 or later, and is released under the terms of GPLv3. Many of the implementations are derived from journal papers/books and include frequently reoccuring problems such as separation algorithms to solve knapsack, TSP, packing problems, separation algorithms for valid inequalities, etc.
A copy of the GPLv3 is included in the download.
Please note that JGraphT is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Please refer to the license for details.
Getting Started
The package org.jorlib.demo includes small demo applications to help you get started. If you spawn your own demo app and think others can use it, please send it to us and we will add it to that package.
Documentation
Will be included later....
Dependencies
- jORLib requires JDK 1.8 or later to build.
- JUnit is a unit testing framework. You need JUnit only if you want to run the unit tests. JUnit is licensed under the terms of the IBM Common Public License. The JUnit tests included with jORLib have been created using JUnit
4.12. - jGraphT is a free Java graph library that provides mathematical graph-theory objects and algorithms and supports various types of graphs. jGraphT is required to model several problems, such as the TSP network for the subtour elimination algorithm. jGraphT version 0.9.0 is used in jORLib.
Online Resources
Source code is hosted on github. You can send contributions as pull requests there.
Your Improvements
Your contributions are highly welcome. Literally anything related to OR will be considered: -Heuristic/exact algorithms related to frequently reoccuring problems, preferably backed by a scientific paper or book -Visualization tools -Readers/parsers for common IO such as TSPLib instances -etc If you add improvements to jORLib please send them to us as pull requests on github. We will add them to the next release so that everyone can enjoy them. You might also benefit from it: others may fix bugs in your source files or may continue to enhance them.
Thanks
With regards from
Joris Kinable, jORLib Project Creator