MyNixOS website logo
Description

Benchmarking Part of the 'IOHprofiler'.

The benchmarking module for the Iterative Optimization Heuristics Profiler ('IOHprofiler'). This module provides benchmarking in the 'IOHprofiler' format, which can be visualized using the 'IOHanalyzer' module.

IOHprofiler: A Benchmarking and Profiling Tool for Iterative Optimization Heuristics

R-package

This branch of the IOHexperimenter consists of the R-implementation of the experimenter, built using Rcpp. To use this package, either clone this repository and install locally, or use the following commands to use devtools to install the package directely:

If devtools is not yet installed, please first use

install.packages('devtools')

Error messages will be shown in your R console if there is any installation issue. Now, the IOHexperimenter package can be installed and loaded using the following commands:

devtools::install_github('IOHprofiler/IOHexperimenter@R')
library('IOHexperimenter')

This will install the package and all required dependencies.

Getting Started

  1. Install the package using one of the methods mentioned package above.

  2. Create you own algorithm, or use the example algorithm provided in the documentation accessed by:

?benchmark_algorithm

Note that your algorithm will need to accept exactly one parameter: An IOHproblem object, which contains the following information about the current problem:

  • dimension
  • function_id
  • instance
  • fopt (if known)
  • xopt (if known)

And the following functions:

  • obj_func()
  • target_hit()
  • set_parameters()

Several example algorithms have been implemented in the algorithms.R file.

  1. Run the benchmarks using the function 'benchmark_algorithm'

  2. Analyze your results using the IOHanalyzer by visiting the IOHAnalyzer page

Using C or Python

To use the IOHexperimenter in C++ or python, please look at the other branches in this repository.

Metadata

Version

0.1.4

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows