Using data-mining techniques to improve combinatorial optimization algorithms