Tuner is a system designed to perform robust optimization of multi-objective scalar functions
Scala Shell Java GLSL Python R Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin fix broken sbt download script Aug 19, 2015
doc
icon icon data Aug 15, 2011
lib upgrade to the maven version of JOGL 2.0.2 May 3, 2014
project use sbt for ctags generation Sep 29, 2014
src auto-load the first response Feb 28, 2017
test_data cite borehole function Jun 3, 2016
.codeship.yml codeship uuid for atom Sep 28, 2014
.gitignore
LICENSE.txt switch to MIT license Jul 6, 2015
README.markdown Fix error in sbt documentation. Oct 6, 2015
appveyor.yml add 2 stage appveyor config back Sep 11, 2014
build.sbt update japura ref Feb 23, 2017

README.markdown

Tuner

Tuner is an application for finding optimal parameter settings for complex algorithms. It supports sampling, resampling, and optimizaing withing a high-dimensional parameter space. It also allows the user to visually see the stability of certaint parameter settings with respect to the objective measures. This is especially important in cases where one desires an optimum that is invariant to parameter settings (so things stay good over a wide range of parameter settings).

Requirements

Tuner requires Java (version 6 and 7 tested).

Installation

The Tuner package needs to be built from source using the sbt build tool. Clone the repo and then run

bin/sbt compile
bin/sbt run

from the repository directory. The first line builds tuner and the second line runs it.

Usage

To run Tuner there is a shell script, bin/tuner (for Unix/Mac) and bin/tuner.bat (for Windows). The startup scripts take care of set up java with 6GB of heap space as the default is really too small to do anything. You can adjust this using the JAVA_OPTS environment variable.

There is a pre-built project for testing purposes that you can download here. Unpack this file somewhere. If you can open it and everything draws correctly then Tuner should be at least mostly working. Here is how to open an external project:

  1. Click on the 'open other' button in the project browser

  2. Navigate to test_data and click on the test_proj directory. Then click choose

  3. A window such as the following should open

Sampling scripts

See the wiki for more detailed information at https://github.com/gabysbrain/tuner/wiki/SamplingScript.

The scripts needs to take 2 command line arguments: The first argument is a file path to an input csv file, which is where Tuner will place the sample point locations. The second argument is the output file path where Tuner expects the result csv file to be written. The output csv file must contain both the sample locations (i.e. the same columns as in the input file) as well as the assessment results (dice coefficients, volume errors, etc.) from the segmentation.

The CSV files use standard US/international format, i.e. ',' as separator, '.' as decimal point, and the first line contains comma-separated column headers.

Build dependencies

Tuner is written in Scala. For building it uses simple build tool installed. The sbt build script should take care of downloading all the required libraries.

Build Status

  • Linux: Codeship Status
  • Windows: Appveyor status
  • Code coverage: Coverage Status