Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

A Java gradient-free optimization library

License

NotificationsYou must be signed in to change notification settings

dietmarwo/fcmaes-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

fcmaes started as a fast CMA-ES implementation combined with a new smart parallel retry mechanism aimed to solve hard optimization problems from the space flight planning domain. It evolved to a general library of state-of-the-art gradient free optimization algorithms applicable to all kind of real world problems covering multi-objective and constrained problems. Its algorithms are implemented both in C++ and support parallel fitness function evaluation.fcmaes-java provides the same functionality as its Python variantfcmaes.SeePerformance for detailed performance figures.It was used by the team Jena & Wuhan for the11th China Trajectory Optimization Competitionseefcmaes for CTOC11. A comparison of optimizationalgorithms for the solar orbiter mission optimization problem is shown here:Solar Orbiter.Cluster support is implemented based on theTemporal orchestration engine.SeeTemporal-readmeandTemporal-tutorial

Features

  • Focused on optimization problems hard to solve utilizing modern many-core CPUs.

  • Parallel fitness function evaluation and different parallel retry mechanisms.

  • Excellent scaling with the number of available CPU-cores.

  • Minimized algorithm overhead - relative to the objective function evaluation time - even for high dimensions.

  • New multi-objective/constrained optimization algorithm MODE combining features from Differential evolution and NSGA-II, supporting parallel function evaluation. Featuresenhanced multiple constraint ranking improving its performance in handling constraints for engineering design optimization.

  • Selection of highly efficient single-objective algorithms to choose from.

  • Supports multi node / cluster execution based onTemporal

DLL dependencies

On windows there may be an issue with recursive dll dependencies preventing loading of fcmaeslib.dll.It is compiled using mingw64, so if you neither have mingw64 nor Anaconda installed you should add"/YOUR_PATH_TO/fcmaes-java/src/main/resources/natives/" to the "PATH" environment variable.

Compilation

  • mvn install

Usage

See theexamples andtests .

Dependencies

Runtime:

Compile time (binaries for Linux and Windows are included):

Citing

@misc{fcmaes-java2021,    author = {Dietmar Wolz},    title = {fcmaes-java - A Java derivative-free optimization library},    note = {Java/C++ source code, with description and examples},    year = {2021},    publisher = {GitHub},    journal = {GitHub repository},    howpublished = {Available at \url{https://github.com/dietmarwo/fcmaes-java}},}

About

A Java gradient-free optimization library

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp