popt4jlib is an open-source parallel optimization library for the Java programming language supporting both shared memory and distributed message passing models. Implements a number of meta-heuristic algorithms for Non-Linear Programming, including Genetic Algorithms, Differential Evolution, Evolutionary Algorithms, Simulated Annealing, Particle Swarm Optimization, Firefly Algorithm, Monte-Carlo Search, Local Search algorithms, Gradient-Descent-based algorithms, as well as some well-known network flow and other graph algorithms. A fast parallel implementation of the network simplex method, and some full-fledged parallel/distributed MIP solvers will be added in the next version. In general, emphasis is given in improving the efficiency of the algorithms in shared-memory models via java threads, since multi-core machines are so wide-spread today.

Features

  • multi-threaded implementation of the following meta-heuristics: (1) island-model GA (2) Simulated Annealing (3) Differential Evolution (4) Evolutionary Algorithm (5) Particle-Swarm Optimization (6) Firefly Algorithm
  • multi-threaded multi-start implementation of Steepest Descent with Armijo Rule for NLP
  • multi-threaded multi-start implementation of BFGS method for box-constrained NLP
  • multi-threaded multi-start implementation of Conjugate-Gradient method with Fletcher updates for box-constrained NLP
  • multi-threaded implementation of Monte-Carlo Search
  • multi-threaded implementation of Graph 1- and 2-packing problems, max-clique problems, shortest-path problem, minimum spanning tree problem and other graph problems
  • very fast multi-threaded implementations of K-Means, K-Means++, Neural-Gas, and other algorithms for the minimum sum-or-square-errors clustering problem
  • an alternative very fast concurrent/distributed programming utils library

Project Activity

See All Activity >

License

GNU Library or Lesser General Public License version 2.0 (LGPLv2)

Follow popt4jlib

popt4jlib Web Site

Other Useful Business Software
Crowdtesting That Delivers | Testeum Icon
Crowdtesting That Delivers | Testeum

Unfixed bugs delaying your launch? Test with real users globally – check it out for free, results in days.

Testeum connects your software, app, or website to a worldwide network of testers, delivering detailed feedback in under 48 hours. Ensure functionality and refine UX on real devices, all at a fraction of traditional costs. Trusted by startups and enterprises alike, our platform streamlines quality assurance with actionable insights. Click to perfect your product now.
Click to perfect your product now.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of popt4jlib!

Additional Project Details

Intended Audience

Developers, Engineering, Science/Research

Programming Language

Java

Related Categories

Java Scientific Engineering, Java Mathematics Software, Java Natural Language Processing (NLP) Tool

Registered

2014-08-19