190 lines
3 KiB
Lua
190 lines
3 KiB
Lua
-- these are all still very experimental,
|
|
-- but they should at least give you a head-start.
|
|
local presets = {}
|
|
|
|
local function make_preset(cfg)
|
|
local name = cfg.name
|
|
if name ~= nil then
|
|
cfg.log_fn = cfg.log_fn or 'logs-'..name..'.csv'
|
|
cfg.params_fn = cfg.params_fn or 'params-'..name..'.txt'
|
|
end
|
|
presets[name] = cfg
|
|
return cfg
|
|
end
|
|
|
|
make_preset{
|
|
name = 'snes',
|
|
|
|
es = 'snes',
|
|
|
|
starting_lives = 1,
|
|
min_time = 300,
|
|
timer_loser = 1.0,
|
|
|
|
epoch_trials = 100,
|
|
negate_trials = false,
|
|
|
|
deviation = 1.0,
|
|
min_refresh = 0.2,
|
|
|
|
param_rate = 0.5,
|
|
sigma_rate = 0.1,
|
|
param_decay = 0.02,
|
|
sigma_decay = 0.01,
|
|
}
|
|
|
|
make_preset{
|
|
name = 'snes2',
|
|
|
|
es = 'snes',
|
|
|
|
start_big = true,
|
|
min_time = 300,
|
|
timer_loser = 1.0,
|
|
|
|
score_multiplier = 0,
|
|
|
|
init_zeros = true,
|
|
|
|
reduce_tiles = true,
|
|
bias_out = false,
|
|
|
|
deterministic = false,
|
|
|
|
deviation = 0.5,
|
|
negate_trials = false,
|
|
min_refresh = 0.5,
|
|
|
|
epoch_trials = 100,
|
|
|
|
param_rate = 1.0,
|
|
sigma_rate = 0.01,
|
|
param_decay = 0.02,
|
|
sigma_decay = 0.01,
|
|
}
|
|
|
|
make_preset{
|
|
name = 'xnes',
|
|
|
|
es = 'xnes',
|
|
|
|
start_big = true,
|
|
min_time = 300,
|
|
timer_loser = 1.0,
|
|
|
|
score_multiplier = 0,
|
|
|
|
init_zeros = true,
|
|
|
|
reduce_tiles = true,
|
|
bias_out = false,
|
|
|
|
deterministic = false,
|
|
|
|
deviation = 0.5,
|
|
negate_trials = false,
|
|
|
|
epoch_trials = 50,
|
|
|
|
param_rate = 1.0,
|
|
sigma_rate = 0.01,
|
|
covar_rate = 0.01,
|
|
}
|
|
|
|
make_preset{
|
|
name = 'xnes2',
|
|
|
|
es = 'xnes',
|
|
|
|
log_fn = 'logs-xnes4.csv',
|
|
params_fn = 'params-xnes4.txt',
|
|
|
|
start_big = true,
|
|
min_time = 300,
|
|
timer_loser = 1.0,
|
|
|
|
score_multiplier = 0,
|
|
|
|
init_zeros = true,
|
|
|
|
reduce_tiles = true,
|
|
bias_out = false,
|
|
|
|
deterministic = false,
|
|
|
|
deviation = 1.0,
|
|
negate_trials = true, --false,
|
|
|
|
epoch_trials = 10, --50,
|
|
|
|
param_rate = 0.5,
|
|
sigma_rate = 0.04,
|
|
covar_rate = 0.04,
|
|
param_decay = 0.004,
|
|
sigma_decay = 0.00128,
|
|
}
|
|
|
|
make_preset{
|
|
name = 'xnes3',
|
|
|
|
es = 'xnes',
|
|
|
|
log_fn = 'logs-xnes5b.csv',
|
|
params_fn = 'params-xnes5b.txt',
|
|
|
|
start_big = true,
|
|
timer_loser = 1.0,
|
|
|
|
score_multiplier = 0,
|
|
|
|
init_zeros = true,
|
|
|
|
reduce_tiles = true,
|
|
bias_out = false,
|
|
|
|
deterministic = false,
|
|
|
|
deviation = 0.1207,
|
|
negate_trials = true,
|
|
|
|
epoch_trials = 10,
|
|
|
|
param_rate = 0.5,
|
|
sigma_rate = 0.16,
|
|
covar_rate = 0.04,
|
|
param_decay = 0.004, -- this should be ok now that it's mul by sigma.
|
|
sigma_decay = 0.00128, -- this might be okay... but watch out.
|
|
}
|
|
|
|
make_preset{
|
|
name = 'ars',
|
|
|
|
es = 'ars',
|
|
epoch_top_trials = 20 * 2,
|
|
ars_lips = false,
|
|
|
|
start_big = true,
|
|
min_time = 300,
|
|
timer_loser = 1.0,
|
|
|
|
bias_out = false,
|
|
|
|
deterministic = false,
|
|
|
|
graycode = false,
|
|
deviation = 0.1,
|
|
negate_trials = false,
|
|
|
|
epoch_trials = 25 * 2,
|
|
|
|
param_rate = 1.0,
|
|
param_decay = 0.0025,
|
|
}
|
|
|
|
make_preset{
|
|
name = 'play',
|
|
|
|
playable_mode = true,
|
|
}
|
|
|
|
return presets
|