added overloads of choose_action that takes in some unique id and compute hash code as seed to the pseudo-random generator