Features used in instance based selection both in papers:
1. meSAT: Multiple Encodings of CSP to SAT
2. Instance-based Selection of CSP Solvers using Short Training
Features (70 of them) are divided in groups.
VARS AND DOMAINS:
n_vars - Number of variables
*n_domain_size_2_vars - Number of variables with domain size 2
*n_vars_not_continuous - Number of variables with non-contiguous domain
*sum_of_domains - Sum of domains of all variables
*max_domain_size - Maximum domain size of variables
OPERATIONS, COMPARISONS, RELATIONS:
sum_of_relation_application_arities - Sum of all arities of relations applications
*n_relation_application - Number of relations applications
*n_plus_minus - Number of arithmetic constraints with the operator + or - (number of additions and subtractions)
*plus_minus_sum_of_domains - Sum of domains of operands in arithmetic constraints with the operator + or -
*n_times - Number of arithmetic constraints with the operator * (number of multiplications)
*times_sum_of_domains - Sum of domains of operands in arithmetic constraints with the operator *
*n_comparisons - Number of comparisons (<=, <, >, >=, ==, !=)
*comparisons_sum_of_domains - Sum of domains of operands in comparisons
NUMBERS OF OCCURRENCES OF DIFFERENT GLOBAL CONSTRAINTS
For the description of global constraints see: http://bach.istc.kobe-u.ac.jp/sugar/current/docs/syntax.html
spec/gc_spec denotes special occurrence of a constraint (see paper meSAT: Multiple Encodings of CSP to SAT)
nspec/gc_nspec denotes all other ocurrences of a constraint
gc_oth denotes all global constraints not having specialized form
n_alldiff
n_weighted_sum
n_cumulative
n_element
n_disjunctive
n_lex_less
n_lex_less_eq
n_gCard_spec
n_count_spec
n_count_nspec
n_gCard_nspec
n_nvalue_spec
n_nvalue_nspec
n_gc_oth
n_gc_spec
n_gc_nspec
n_gc - Number of all ocurrences of global constraints
SUMS OF ARITIES OF OPERANDS IN GLOBAL CONSTRAINTS:
alldiff_sum_of_arities
count_spec_sum_of_arities
count_nspec_sum_of_arities
gCard_spec_sum_of_arities
gCard_nspec_sum_of_arities
nvalue_spec_sum_of_arities
nvalue_nspec_sum_of_arities
gc_oth_sum_of_arities
gc_spec_sum_of_arities
gc_nspec_sum_of_arities
MAXIMUM ARITY OF DIFFERENT GLOBAL CONSTRAINTS:
alldiff_max_arity
count_spec_max_arity
count_nspec_max_arity
gCard_spec_max_arity
gCard_nspec_max_arity
nvalue_spec_max_arity
nvalue_nspec_max_arity
SOME AVERAGE VALUES:
*average_domain_size - Average domain size of all variables
*plus_minus_average_domain - Average domain size of all operands in additions and subtractions
*times_average_domain - Average domain size of all operands in multiplications
*comparisons_average_domain - Average domain size of all operands in comparisons
*relation_application_avg_arity - Average arity of all relation applications
AVERAGE ARITIES OF GLOBAL CONSTRAINTS:
alldiff_avg_arity
count_spec_avg_arity
count_nspec_avg_arity
nvalue_spec_avg_arity
nvalue_nspec_avg_arity
gCard_spec_avg_arity
gCard_nspec_avg_arity
gc_spec_avg_arity
gc_nspec_avg_arity
gc_oth_avg_arity
OTHER:
*n_intensional - Number of intensional constraints (see meSAT paper)
*n_constraints - Number of all constraints
PERCENTAGES:
*vars_domain_size2_percentage - Percentage of variables of domain size 2 among all variables
*intensional_percentage - Percentage of intensional constraints among all constraints
*relation_application_percentage - Percentage of relation applications among all constraints
*gc_spec_percentage
*gc_nspec_percentage
*gc_oth_percentage