Yes, a robot could be designed to do this. Easy would be a mildly tilted surface with no obstacles, and the robot just has to get to the bottom. Moderately easy would be if the robot has to pump to get up speed. Maneuvering around obstacles would be a systems design challenge, but would be fairly orthogonal to the low-level control needed to balance and point where you wanted it to go -- it'd almost be like adding such steering to any vehicle.
Making it do tricks in pipes would be hard.