Yep, this is the sort of thing we study in our cooperative and adaptive algorithms class. Similar techniques to what you suggest are shown here https://books.google.ca/books?id=G5ML5EYch94C&pg=PA88&lpg=PA...
random.choice(range(0, i) + range(i+1, 4))
random.choice(range(0, 4))?