Solving the job sequencing and tool switching problem as a nonlinear least cost Hamiltonian cycle problem