Skip to main content

surF - Fourier surrogate modeling

Project description

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.

Usage

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

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:

S = surF()
S.specify_fitness(fitness)
S.specify_search_space(hypercube)
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., and Nobile M.S.: Surfing on Fitness Landscapes: FST-PSO Powered by Fourier Surrogate Modeling (under revision)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for surfer, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size surfer-0.0.1.tar.gz (4.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page