Automatically "routing" a tube through a confined space
After giving this some thought, I have come up with another approach that might be a solution for you. It does require that the mesh of your space has quad topology, so that edge rings which flow along the tunnel can be selected and scaled in. 

Of course, if you don't have control over the initial topology you will have to retopo first. I believe the RetopoFlow add-on would be the fastest way, if you need to do this.

Select and Scale your Edge Rings

So you have your mesh object of your space:



Press ShiftD to make a duplicate of it, and move (M) it to a different layer.

In Edit Mode, with Edge Selection enabled, select only the edge rings. This can be done from the menu: Select > Edge Rings, or with the shortcut ShiftCtrlAltRClick. Do this until every edge ring is selected.

Set your Pivot Point to Individual Origins. This causes each selected edge loop to shrink toward its individual center when you scale them down, creating a path that passes through the center of the mesh.



Scale your edge rings down to zero. (S,0,Enter)



Press W > Remove Doubles to get rid of extra overlapping geometry.

Smooth it Out

In Object Mode, add a SubSurf Modifier to your object to smooth it, if you want it to be smooth. Adjust the subdivision levels as desired.



Apply the SubSurf Modifier.

Convert your Mesh object to a Curve object. (AltC)



Adjust your Curve Settings as Desired



Above: A wireframe display of the original Mesh object, and the new Curve object, with both layers made visible together.

That's it!