It should be pretty easy to figure out where to go to in every state, right?
Oh dear reader, you’re so optimistically delusional that we must become best friends. Turns out, it’s quite an epic undertaking – especially if you have perfectionistic-qualities like your’s truly. But since I like you, I’ve captured some details from the process, just in case you consider something similar yourself (you’re welcome).
I wrote up the source of my inspiration for my trip in this previous post. The super-short summary is that a journalist teamed up with a data scientist to figure out the optimal route across the 48 contiguous United States. They generated two separate routes – one to landmarks, and another to popular cities. This was a fantastic place for me to start, but I didn’t want to just go to landmarks or cities… so, I started by merging these two routes together to get a list of about 100 destinations.
I then turned to my social graph, and put a request out for recommendations for places to see across the United States. I received tons of places to eat, ridiculous landmarks, interesting tours, weird houses, historical sites, and even a number of places to stay along the way – many of which, I never would have discovered on my own. All together, I ended up with well over 200 destinations, for which I am incredibly grateful.
Seriously, huge thank you to each and every one of you who shared a recommendation or offered up a spot to crash. I haven’t quite figured out how to articulate a more meaningful thank you than this: Your generosity is unparalleled, your taste is impeccable, and your kindness is unmatched. I am humbled by your recommendations.
Research Research Research
So, what do you do when you have a huge list of places to see, and not enough time to see them all? You grit your teeth, get to work, and start sifting through the list. Unfortunately, that means that some of those fantastic recommendations will end up getting filed away for another day.
I didn’t take this lightly (as anyone who was around me in Irvine, Big Bear, or Corvallis could attest to). It took a bit over a week in total to research the recommendations on various sites, see where they were located, and decide which ones best fit the trip I wanted to take. I tried to keep myself focused to one or two locations per state. And when all is said and done, I had to make some hard choices to narrow things down. The resulting list will be at the end of this post.
As mentioned in the inspiration post, Randy Olson was kind enough to share the python script that he developed for calculating the optimal route. He also shared the general steps to accomplishing what he did. I followed his directions, and here are a couple tips that I picked up along the way:
- Make sure that each location is searchable on Google Maps. To be safe, I grabbed the address of any location that was questionable. If it doesn’t show up immediately in Google Maps, there’s a good chance it won’t be found when the script runs.
- Make sure you follow the directions outlined on Randy’s page to get all the Python libraries, and get yourself all set from a technological standpoint.
- To make the whole “running of the script” thing easiest, I recommend using the single file created by a gentleman named Andrew Liesinger, which is linked at the very top of Randy’s page. It makes it much easier, as you just need to go in there and edit the list of locations, Google Maps API, and file names (if you’d like).
- When running the script (if you’re on a Mac, at least), it will dump the output in your home directory (e.g. /Macintosh HD/ Users/ You/). So, make sure you go look there when it’s done running. There will be a document with all the distances calculated, as well as an output html. If you change the list of your destinations in the script, but don’t designate a new file name for the output files, you’ll end up with screwy results. So keep this in mind.
Charm The Python
Once you’ve got everything ready to go, it’s time to run the script. As recommended by Randy, I ran it several times. It’s a good thing I did too, as I got some funky results at times. Some were all over the place:
Others were going to take too long to get me across the country for the wedding I need to attend:
And others were just… incomplete:
In fairness, I’m 99.99999999999% sure that these errors were due to problems between the keyboard and the chair I was sitting in (i.e. me). Primarily, I think the problems occurred whenever I had more than 50 destinations that I was trying to map. I’m sharing these errors just in case any other novices like myself decide to take this on. Don’t get discouraged, just check for errors, and try again. I got the best output when I limited the list of destinations to exactly 50, and happened to already have them in a fairly reasonable order already (which I think was coincidental, given how the genetic algorithm works).
Overall, one route did stand out as the most logical for my needs. Here it is:
I have a wedding to get to in Erie, PA by August 1st, and this allows me to get there in time. I’ll definitely be a bit rushed, but it’s doable. All the actual destinations are listed at the end of this post. I don’t have every one listed here, as I took out some that were right next to each other in order to get down to the list of 50.
Here they all are, in order. This is absolutely subject to change though, as I re-evaluate along the way.
|1||Big Bear Lake, CA’|
|2||Drive-Thru Tree Park, Drive Thru Tree Road, Leggett, CA’,|
|4||Hanford Site, Benton County, WA’,|
|5||Glacier National Park, West Glacier, MT’,|
|6||Craters of the Moon National Monument & Preserve, Butte County, ID’,|
|7||Yellowstone National Park, Teton County, WY’,|
|8||Mount Rushmore National Memorial, South Dakota 244, Keystone, SD’,|
|9||Enchanted Highway, Regency-Gladstone Rd, Regent, North Dakota 58650 USA’,|
|11||Taliesin, County Road C, Spring Green, WI’,|
|16||The Mark Twain House & Museum, Farmington Avenue, Hartford, CT’,|
|19||Acadia National Park, Mount Desert, ME’,|
|20||Mount Washington Cog Railway, Coos County, NH’,|
|21||Ben & Jerry’s, 1281 Waterbury Stowe Rd, Waterbury, VT 05676,|
|22||New York, NY’,|
|23||Seaside Heights, NJ’,|
|24||Amstel House Museum, 2 E 4th St, New Castle, DE 19720’,|
|25||The White House, Pennsylvania Avenue Northwest, Washington, DC’,|
|27||Monticello, Thomas Jefferson Parkway, Charlottesville, VA’,|
|28||Lost World Caverns, Lewisburg, WV’,|
|29||Wright Brothers National Memorial, North Croatan Highway, Kill Devil Hills, NC’,|
|30||Fort Sumter National Monument, Charleston County, SC’,|
|31||The Wizarding World of Harry Potter – Hogsmeade, Universal Boulevard, Orlando, FL’,|
|33||Fort Morgan, Alabama 180, Gulf Shores, AL’,|
|34||New Orleans, LA’,|
|36||Little Rock, AR’,|
|38||Mammoth Cave National Park, Mammoth Cave Parkway, Mammoth Cave, KY’,|
|40||St. Louis, MO’,|
|41||Des Moines, IA’,|
|44||Oklahoma City, OK’,|
|46||White Sands National Monument, Otero County, NM’,|
|47||Colorado Springs, Co’,|
|48||Bryce Canyon National Park, Bryce, UT’,|
|49||Grand Canyon National Park, Coconino County, AZ’,|
|50||Hoover Dam, Clark County, NV’,|