Skip to content

markm541374/pycma

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pycma

Modified for parallel evaluations

A Python implementation of CMA-ES and a few related numerical optimization tools.

The Covariance Matrix Adaptation Evolution Strategy (CMA-ES) is a stochastic derivative-free numerical optimization algorithm for difficult (non-convex, ill-conditioned, multi-modal, rugged, noisy) optimization problems in continuous search spaces.

Useful links:

Installation of the latest release

Type

  python -m pip install cma

in a system shell to install the latest release from the Python Package Index (PyPI). The release link also provides more installation hints and a quick start guide.

Installation of the current master branch

The quick way (requires git to be installed):

 pip install git+https://github.com/CMA-ES/pycma.git@master

The long version: download and unzip the code (see green button above) or git clone https://github.com/CMA-ES/pycma.git.

  • Either, copy (or move) the cma source code folder into a folder visible to Python, namely a folder which is in the Python path (e.g. the current folder). Then, import cma works without any further installation.

  • Or, install the cma package by typing within the folder, where the cma source code folder is visible,

    pip install -e cma
    

    Moving the cma folder away from its location would invalidate this installation.

It may be necessary to replace pip with python -m pip and/or prefixing either of these with sudo.

Version History

  • Version 2.2.0 added VkD CMA-ES to the master branch.

  • Version 2.* is a multi-file split-up of the original module.

  • Version 1.x.* is a one file implementation and not available in the history of this repository. The latest 1.* version ```1.1.7`` can be found here.

About

Python implementation of CMA-ES

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%