A Pattern Recognition Program That Generates, Evaluates and Adjusts its Own Operators