OPTK  0.1.2
Toolkit for global optimisation algorithms
Namespaces | Macros | Functions
synthetic.cpp File Reference

In this file, we implement the ~175 synthetic test functions given in Jamil et al. 2013 https://arxiv.org/abs/1308.4008, as well as various others found from disparate publications and online respirces. More...

#include <benchmarks/synthetic.hpp>
#include <sys/types.h>

Namespaces

 syn
 

Macros

#define bench(benchmark, b)
 
#define bench_scalable(benchmark, b, dims)
 

Functions

static double syn::box_betts_g (int i, double x1, double x2, double x3)
 
static double syn::levy3_w (int i, inst::set x)
 

Detailed Description

In this file, we implement the ~175 synthetic test functions given in Jamil et al. 2013 https://arxiv.org/abs/1308.4008, as well as various others found from disparate publications and online respirces.

Copyright (C) 2020 Maxime Robeyns maxim.nosp@m.erob.nosp@m.eyns@.nosp@m.gmai.nosp@m.l.com

Written for the ACRC, University of Bristol

Licensed under the Educational Community License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.osedu.org/licenses/ECL-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the LIcense For The Specific Language Governing permissions and limitations under the License.

Macro Definition Documentation

◆ bench

#define bench (   benchmark,
 
)
Value:
benchmark b; \
of << b.get_name() << "," << opt->get_name(); \
optk::core_loop (&b, opt, trace); \
for (uint i = 0; i < ctx->max_iters; i++) \
of << "," << trace[i]; \
of << std::endl;

◆ bench_scalable

#define bench_scalable (   benchmark,
  b,
  dims 
)
Value:
benchmark b(dims); \
of << b.get_name() << "," << opt->get_name(); \
optk::core_loop (&b, opt, trace); \
for (uint i = 0; i < ctx->max_iters; i++) \
of << "," << trace[i]; \
of << std::endl;