Ai4cr::Breed::Manager(T)
Inherits JSON::Serializable / Reference / Object
Constants
CHARTER = begin
min = 0.0
max = 1.0
precision = 2.to_i8
in_bw = true
reversed = false
AsciiBarCharter.new(min: min, max: max, precision: precision, in_bw: in_bw, inverted_colors: reversed)
end
CHARTER = AsciiBarCharter.new(0.0, 1.0, 2.to_i8, true, false)
HIGH_ENOUGH_ERROR_DISTANCE_FOR_REPLACEMENT = Math.sqrt(Float64::HIGH_ENOUGH_FOR_NETS)
HIGH_ENOUGH_ERROR_DISTANCE_FOR_REPLACEMENT = 1e4 # TODO: Probably should base this on some factor of the number of outputs.
MAX_MEMBERS_DEFAULT = QTY_NEW_MEMBERS_DEFAULT
PURGE_ERROR_LIMIT_SCALE = 1
QTY_NEW_MEMBERS_DEFAULT = 10
STEP_MAJOR = 4 * STEP_MINOR
STEP_MINOR = 4
STEP_SAVE = 4 * STEP_MAJOR
Constructors
new(pull : JSON::PullParser)
Sourcenew
Sourcenew(*, __pull_for_json_serializable pull : JSON::PullParser)
SourceClass methods
counter
SourceInstance methods
auto_save(team_members, i)
Sourcebreed(parent_a : T, parent_b : T, delta = 0.5)
Sourcebreed_counter_tick
Sourcebreed_id_and_delta(child, birth_id, parent_a, parent_b, delta)
Sourcebreed_validations(parent_a : T, parent_b : T, delta)
Sourcebuild_team
Sourcebuild_team(qty_new_members : Int32, **params) : Array(T)
Sourcecopy_and_mix(parent_a, parent_b, delta)
Sourcecounter
Sourcecounter_reset(value = 0)
Sourcecreate
Sourcecross_breed(team_members : Array(T))
Sourceestimate_better_delta(ancestor_a : T, ancestor_b : T)
Sourceeval_team(team_members, inputs)
Sourceeval_team_in_parallel(team_members, inputs)
Sourceeval_team_in_parallel_using_sequence(team_members, inputs_sequence)
Sourcegen_params
Sourcelog_before_vs_after(beginning, before, i, i_max, verbose)
Sourcelog_correct_guess_stats(tc_size, i, max_hists, team_members, list, recent_hists, verbose)
Sourcelog_summary_info(member, i, j)
Sourcemix_nested_parts(parent_a_part, parent_b_part, delta)
Sourcemix_one_part_number(parent_a_part : Number, parent_b_part : Number, delta)
Sourcemix_one_part_string(parent_a_part : String, parent_b_part : String, delta)
Sourceparts_to_copy(parent_a : T, parent_b : T, delta)
Sourcesort_purge_replace(max_members, team_members, purge_error_limit, i, tc_size, max_hists, list, recent_hists, verbose)
Sourcetrain_team(inputs, outputs, team_members : Array(T), max_members = MAX_MEMBERS_DEFAULT, train_qty = 1, and_cross_breed = true)
Sourcetrain_team_in_parallel(inputs, outputs, team_members, train_qty)
Sourcetrain_team_using_sequence(inputs_sequence, outputs_sequence, team_members : Array(T), io_set_text_file : Ai4cr::Utils::IoData::Abstract | Nil, max_members = MAX_MEMBERS_DEFAULT, train_qty = 1, and_cross_breed = true, purge_error_limit = -1, verbose = true)
Sourceupdate_member_comparisons(io_set_text_file, inputs, outputs, member, tc_size, training_set_seq, mem_seq, verbose)
Sourceupdate_member_correct_comparisons(output_str_matches, tc_size, member)
Sourceupdate_member_output_comparisons(io_set_text_file, outputs, member)
Source