constraint programming and jobshop scheduling