项目作者: aresio

项目描述 :
surF - a surrogate modeling method based on Discrete Fourier Transform
高级语言: Python
项目地址: git://github.com/aresio/surF.git
创建时间: 2020-01-27T16:02:34Z
项目社区:https://github.com/aresio/surF

开源协议:GNU General Public License v3.0

下载


surF - surrogate Fourier modeling

surF is a novel surrogate modeling technique that leverages the discrete Fourier transform to generate a smoother, and possibly easier to explore, fitness landscape.

Installation

pip install surfer

Usage

First of all, import surF as follows (please mind the upper case F):

  1. from surfer import surF

Assume now that you have a fitness function f() defined over a search space hypercube.

In order to build a surrogate model with surF, considering gamma Fourier coefficients, built with sigma samples of the fitness landscape and interpolated with a grid with rho steps, use the following code:

  1. S = surF()
  2. S.specify_fitness(fitness)
  3. S.specify_search_space(hypercube)
  4. S.build_model(coefficients=gamma, numpoints=sigma, resolution=rho)

Now, it is possible to exploit surF’s approximate(x) method to calculate the fitness value of a candidate solution x using the Fourier surrogate model.

Citing surF

If you find surF useful for your research, please cite our work as follows:

Manzoni L., Papetti D.M., Cazzaniga P., Spolaor S., Mauri G., Besozzi D., Nobile M.S.: Surfing on fitness landscapes: a boost on optimization by Fourier surrogate modeling, Entropy, 22(3):285, 2020

Additional information

For any information please contact: Luca Manzoni (luca.manzoni@units.it) and Marco S. Nobile (m.s.nobile@tue.nl).