Integration of AI and OR techniques in Constraint Programming for Combinatorial Optimization