-
Notifications
You must be signed in to change notification settings - Fork 8
Configuration file (JSON)
Exemplary config file:
{
"notes" : "./block/AES_r03",
"seed" : null,
"num-of-epochs" : 300,
"significance-level" : 1,
"tv-size" : 16,
"tv-count" : 1000,
"stream-a" : {
"type" : "block",
"generator" : "pcg32",
"init-frequency" : "only-once",
"algorithm" : "AES",
"round" : 3,
"block-size" : 16,
"plaintext" : {
"type" : "counter"
},
"key-size" : 16,
"key" : {
"type" : "pcg32-stream"
},
"mode" : "ECB",
"iv" : {
"type" : "false-stream"
}
},
"stream-b" : {
"type" : "pcg32-stream"
},
"backend" : {
"type" : "circuit",
"solver" : {
"type" : "global-search",
"internal" : "local-search"
},
"function-set" : [ "NOP", "CONS", "NOT",
"AND", "NAND", "OR", "XOR", "NOR",
"SHIL", "SHIR", "ROTL", "ROTR",
"MASK" ],
"num-of-generations": 100,
"initializer" : {
"type" : "basic-initializer"
},
"mutator" : {
"type" : "basic-mutator",
"changes-of-functions" : 2,
"changes-of-arguments" : 2,
"changes-of-connectors" : 3
},
"evaluator" : {
"type" : "categories-evaluator",
"num-of-categories" : 8
}
}
}
Stream-specific settings are added separate subtrees linked to the root element. Their structure is described in stream documentation.
-
notes
developer notes (only descriptive) -
seed
hexadecimal string value of seed to use. EACirc have to be seeded with 64-bits values, i.e."1fe40505e131963c"
seed value can benull
for random seed computations (common settings, if you do not need experiment reproduction) -
num-of-epochs
number of epochs (iterations with same learning dataset) -
significance-level
critical value alpha for KS test in the end of computation -
tv-size
number of test vectors in a test set (per set) -
stream-a
-
stream-b
JSON subtree with specification of stream for test vectors generation
see Streams for data generation documentation -
backend
JSON subtree with backend specification-
type
which backend representation will be used, currently supported onlycircuit
backed -
solver
JSON subtree for metaheuristic specification-
type
name of the metaheuristic, TODO write all possible values and description (probably to alone page) -
internal
metaheuristic used within each epoch
-
-
function-set
JSON array with list of binary functions used in circuit. See available list of functions -
num-of-generations
number on generations per epoch -
initializer
,mutator
andevaluator
subtrees for circuit creation setup
-