Skip to content

Basic Generation

HansvdLaan edited this page Apr 26, 2018 · 8 revisions

The generation of learning experiments consists of 3 steps.

First, you annotate the SUL, run the hermielab.processor.AnnotationsProcessor annotation processor which generate a file (Hermielabsettings.xml) containing an abstract model of your program and all information necessary to generate an experiment. Please note that only public methods and fields can be annotated.

Secondly, you run the hermielab.processor.BasicLearningSetupProcessor annotation processor which generates the learning setup itself.

Lastly, a few manual tweaks are often required to get the experiment to run successfully. We aim to automatize this process as much as possible. However, all applications are unique and might require non-standard tweaks to learn. The reason we generate code instead of hiding everything behind abstracts in the first place was to facilitate this. A tweak which is always required is that the SUL needs to be instantiated manually (which often can be achieved by instantiating a new instance of the class annotated with @Start).