Skip to content

Latest commit

 

History

History

source/

./native/ contains the .cc files for our genetic programing problems:

  • Signal-counting problem (alt-signal-exp.cc)
  • Contextual-signal problem (bool-calc-exp.cc)
  • Independent-signal problem (chg-env-exp.cc)
  • Boolean-logic calculator problem (bool-calc-exp.cc)

Below, we give the external dependencies for compiling our experiments, and we give which source files are associated with each of the problems.

External Library Dependencies

Signal-counting problem

Also called 'alternating signal environment' in source code.

Experiment-specific source files:

Contextual-signal problem

The contextual-signal problem is (perhaps confusingly) carried out using the boolean-logic calculator source code. Except, instead of providing input/output examples that describe calculator problems, we configure categorical output (CATEGORICAL_OUTPUT) and provide examples that look more like this.

Independent-signal problem

Also called 'changing environment problem' in source code.

Experiment-specific source files:

Boolean-logic calculator problem

Cross-task Utilities

  • Event.h
    • Defines custom SignalGP event types used across different tasks.
  • matchbin_regulators.h
    • Defines the exponential tag-matching regulator used in this work.
  • mutation_utils.h
    • Defines mutator utility for SignalGP programs.
  • reg_ko_instr_impls.h
    • Defines knockout regulation instruction implementations.
    • The need for knocking out promotion/repression individually (as opposed to just knocking out regulation entirely) came later on during this project. Each regulation instruction has a KO_UP_REG and KO_DOWN_REG variant. While less than ideal, this was the least invasive way work this functionality in at the time.