I found vector data on Alaskan streams and Alaskan village, towns and cities, both in the form of ESRI shapefiles, from http://catalog.northslope.org. Data on Trans-Alaska pipeline stations, however, was in the form of a raster map found on Wikipedia.  qgis was used, along with its georeferencing plugin and the settlements data, to georeference the raster map to the same coordinate system used for the ESRI shapefile data (Alaska Albers equal-area projection). I also used qgis to change coordinate systems from Alaska Albers to a gnomonic projection, so that straight lines on the projection would correspond to great circle arcs on the globe.

I wrote a script in python, using the osgeo and shapely libraries, to import the line data from the rivers shapefile and the point data from the towns and stations data, describe an algorithm for finding the intersections between a line connecting two specified points and the rivers line dataset, and then to iterate through a sequence of lines connecting a small subset of Alaskan bush communities and the first ten Trans-Alaska pipeline pumping stations. This data was output in .csv format.

One consideration to keep in mind is that this method does not account for lakes or oceans. For example, only three crossings were counted between Barrow and the Prudhoe Bay pumping station. However, this straight-line connection would mostly traverse the Arctic Ocean. Note that most of the output should be sound with respect to ocean crossings.
