Application of human learning concepts to combinatorial optimization problems