Solving the pre-marshalling problem to optimality with A* and IDA*