Deep optimisation: learning and searching in deep representations of combinatorial optimisation problems