Solving intractable problems