boxes

package
v0.0.0-...-77f7900 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 19, 2018 License: MIT Imports: 8 Imported by: 0

README

Boxes Visual Discrimination

This example comes from the visual discrimination task described in A Hypercube-Based Indirect Encoding for Evolving Large-Scale Neural Networks (Stanley, et. al.). The paper utilises this task to demonstate HyperNEAT's ability to incorporate the problem's geometric information. For EVO, this tasks represents an ideal problem to demonstrate the differences in NEAT, HyperNEAT, HyperNEAT-LEO, ES-HyperNEAT, and ES-HyperNEAT-LEO.

Visualising the best solution

When performing a single run of the experiment, an image file is created (use the --image flag to specify the output filename) showing, for each test case, the locations of the small and large boxes as well as the network's guess at the centre of the large box.

TODO

add HyperNEAT experiment • add ES-HyperNEAT experiment • add archive and restore helpers • use restore to enable running previous best at different resolutions

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Template

func Template(res int, hidden bool) (enc evo.Substrate)

Template returns a substrate for the given resolution suitable for HyperNEAT. NOTE: the experiment in the paper does not utilise a hidden layer.

Types

type Evaluator

type Evaluator struct {
	// contains filtered or unexported fields
}

Evaluator evaluates the phenome using the visual discrimination experiment described in http://eplex.cs.ucf.edu/papers/stanley_alife09.pdf

func NewEvaluator

func NewEvaluator(res int) (e *Evaluator)

NewEvaluator creates a new boxes evaluator with a resolution of res.

func (Evaluator) Evaluate

func (e Evaluator) Evaluate(p evo.Phenome) (r evo.Result, err error)

Evaluate the phenome against 75 trials

func (*Evaluator) SetOutput

func (e *Evaluator) SetOutput(filename string)

SetOutput tells the evaluator to record the decisions to an image. This is not concurrent safe and should only be used when processing a single phenome. See the callback in the boxes example.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL