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

You Might Also Like
Top-Rated Free CRM Software Icon
Top-Rated Free CRM Software

216,000+ customers in over 135 countries grow their businesses with HubSpot

HubSpot is an AI-powered customer platform with all the software, integrations, and resources you need to connect your marketing, sales, and customer service. HubSpot's connected platform enables you to grow your business faster by focusing on what matters most: your customers.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of popt4jlib!

Additional Project Details

Intended Audience

Science/Research, Developers, Engineering

Programming Language

Java

Related Categories

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

Registered

2014-08-19