I think Gyarados is the best choice. Here's why:
1. He has the highest base stat total, and a much better arrangement than poliwrath and lapras.
2. Gyarados has high attack and sp. defense. This is good because gyarados can learn a lot of good physical moves. Plus, his weaknesses are electric and rock. There are more special electric type moves than physical. But, rock is the problem. Gyarados can learn plenty of good water type moves to counteract with them.
3. Poliwrath and Lapras are not as much fighters compared to gyarados. They can be good for attackers, but they seem more like Pokemon to have to cover your HM coverage. But, gyarados can learn each of their HM's too.
I think Gyarados would be a much better choice of the bat. But, I could be wrong since I don't know the rest of your team.
You Choice! Hope I helped! :)