public Abstract_generator_conf Set_add_generator_algorothm(int numAlgorithm, int typeAlgorithm) { add_generator_for_Singleton TypeAlgorithm = (add_generator_for_Singleton)typeAlgorithm; if (Rules_generator_type[numAlgorithm] != TypeAlgorithm) { Rules_generator_type[numAlgorithm] = TypeAlgorithm; Rules_generator_conf[numAlgorithm] = make_conf_for_gen(TypeAlgorithm); } return(Rules_generator_conf[numAlgorithm]); }
private Abstract_generator_conf make_conf_for_gen(add_generator_for_Singleton TypeAlgorithm) { switch (TypeAlgorithm) { case add_generator_for_Singleton.Нет: { return(null); } case add_generator_for_Singleton.Перебором: { return(new init_everyone_with_everyone(Approx_learn_set.Count_Vars)); } case add_generator_for_Singleton.Случайны_генератор: { return(new Generator_Rulles_simple_random_conf()); } case add_generator_for_Singleton.Исключение_правил: { return(new Rulles_shrink_conf(Approx_learn_set.Count_Vars)); } case add_generator_for_Singleton.Заданой_структурой: { return(new Term_shrink_and_rotate_conf(Approx_learn_set.Count_Vars)); } case add_generator_for_Singleton.C_средних: { return(new k_mean_rules_generator_conf()); } default: { return(null); } } }
public void Set_count_add_generator(int count_used_Algorithm) { Rules_generator_conf = new Abstract_generator_conf[count_used_Algorithm]; Rules_generator_type = new add_generator_for_Singleton[count_used_Algorithm]; }