It can only be done via emulation (as far as I'm aware)
First, you find a Rom of the game you want to randomize, and Its appropriate emulator. (So for our playthrough I have a White 2 rom that I am playing on DeSmuME.)
Next, you'll want to Google and Download the 'Universal Pokemon Game Randomizer'
Then open the randomizer, pop in the rom, randomize what you want to be randomized, and then play it.