4. A computer-implemented method termed GLL-PC-nonsym for finding a set of direct causes and direct effects of the response/target variable or for finding a Markov blanket of the response/target variable for local causal discovery or feature selection, said method comprising the following steps all of which are performed on a computer: 1) find an approximation of the set of direct causes and direct effects of response variable T using the following steps: a) initialize a set of candidates to be a subset of all variables minus the response variable T; b) initialize a priority queue of variables to be examined for inclusion in the candidates set from the remaining variables; c) apply a user-provided inclusion heuristic function to prioritize variables in the priority queue for inclusion in the candidates set; d) remove non-eligible variables from the priority queue; e) insert in the candidates set the highest-priority variable(s) in the priority queue and remove them from the priority queue; f) apply a user-provided elimination strategy to remove variables from the candidates set; g) iterate among the inclusion, prioritization and elimination steps c, d, e and f according to a user-provided interleaving strategy until a termination criterion is met; variables may be re-ranked after each update of the candidate set, or the original ranking may be used throughout the method's operation; 2) store the candidate set resulting from step (1) in PC T ; and 3) output the set PC T .
4. A computer-implemented method termed GLL-PC-nonsym for finding a set of direct causes and direct effects of the response/target variable or for finding a Markov blanket of the response/target variable for local causal discovery or feature selection, said method comprising the following steps all of which are performed on a computer: 1) find an approximation of the set of direct causes and direct effects of response variable T using the following steps: a) initialize a set of candidates to be a subset of all variables minus the response variable T; b) initialize a priority queue of variables to be examined for inclusion in the candidates set from the remaining variables; c) apply a user-provided inclusion heuristic function to prioritize variables in the priority queue for inclusion in the candidates set; d) remove non-eligible variables from the priority queue; e) insert in the candidates set the highest-priority variable(s) in the priority queue and remove them from the priority queue; f) apply a user-provided elimination strategy to remove variables from the candidates set; g) iterate among the inclusion, prioritization and elimination steps c, d, e and f according to a user-provided interleaving strategy until a termination criterion is met; variables may be re-ranked after each update of the candidate set, or the original ranking may be used throughout the method's operation; 2) store the candidate set resulting from step (1) in PC T ; and 3) output the set PC T . 6. The computer implemented method of claim 4 in which step (1.c) applies the inclusion heuristic function implemented using one of the following methods: a) based on random search over values of standard heuristics; b) based on observed probability of a variable to remain in the candidate set after conditioning on many subsets of variables; c) based on known structure of the data generating process and/or distributional characteristics.