Geodude can be useful for: Jasmine, if it knows a strong ground type move.
Price: His team is vulnerable to rocks, but then again Geodude is at a disadvantage as well with all three of his pokemons knowing water, ice, and ground type moves.
Bruno: Ground type STAB inflicts a nice amount of damage to Onix, but beware his other pokemons.
Pidgy can be useful for: Chuck: Chuck only has about two pokemons, so nothing big there, especially if you have a nasty Pidgeotto/Pidgeot in your team.
Koga: Some of his pokemons are weak to flying type attacks (I think). Fortress might be a threat though.
Bruno: Self-explanitory.
Butterfree can be useful for: Chuck: Type protects it from sustaining too much damage, not to mentions that it can learn gust (I think).
Bruno: Same as above, but whatch out for Onix!
Pick whichever one you find to be the most useful during your journey.
I would take Geodude if you're not planning on getting Golem (You should be able to, even through Roms; the hacker tends to change some of their requirements to make if fair for Rom users), Pidgey if you don't need to fly, and Butterfree if you don't find it useful in the least bit.
Probably Butterfree, though it deponds on how far you are into the game.