An algorithm based on inductive logic programming is used to select patterns. The process starts with just the empty pattern (for which ). Repeatedly, after a certain number of play outs, new patterns are added. An existing pattern generates candidates where each possible is added to the pattern, one at a time. The candidate is accepted if it has appeared often enough, and if is a relevant addition to the pattern. If the original pattern makes move more valuable than without the pattern, the moves seem to be related. The used criterion was based the mutual information between the made move and winning, given the pattern. If the move makes winning less likely, the criterion was set to zero. Then the maximum of mutual informations of the move and winning, given any of the subpatterns, is substracted from the score. When new patterns are added, statistics are copied from its parent with a small weight. Also, the statistics of the first play-outs are slowly forgotten by exponential decay.