Skip to content

Public API for the rapid development of applications that solve optimization problems using meta heuristics

License

Notifications You must be signed in to change notification settings

MH4J/MetaHeuristics4Java

Repository files navigation

Meta Heuristics 4 Java (MH4J) Build Status

MH4J is a java framework that enables you to solve optimization problems using metaheuristics.Our aim is to offer a wide range of different algorithms which can be easily integrated into your application.

Currently the following metaheuristics are implemented:

  • Simulated Annealing
  • Genetic Algorithms

Future releases will presumably contain these algorithms:

  • Ant Algorithms
  • Tabu-Search

Goals

Among others these goals are the ones that are most important to us while developing the API:

  • easy to use (rapid development)
  • usage of Java Generics
  • highly configurable
  • well supported concurrency
  • fast (efficient CPU and memory usage)
  • high test coverage (we use TestNG)

Specific Features

  • a broad range of algorithms: you can choose between different metaheuristics to solve your optimization problem
  • examples and tutorials: we will help you getting started with MH4J by giving you an example implementation for each feature and also some tutorials in this wiki.
  • experimentation framework: in the future we will give you an additional framework that lets you test and compare your application and visualize the data

Usage

To explain the usage of all the different metaheuristics we have created some example implementations for you. There will also be a tutorial section where we explain these implementations in some detail and help you get started with your own project.

Installation

Binaries are available in the Download Section.

Similar projects

We found the following projects out on the web that share some of our goals:

About

Public API for the rapid development of applications that solve optimization problems using meta heuristics

Resources

License

Stars

Watchers

Forks

Languages