{"id":1087,"date":"2010-03-12T16:45:55","date_gmt":"2010-03-12T20:45:55","guid":{"rendered":"http:\/\/mat.tepper.cmu.edu\/blog\/?p=1087"},"modified":"2010-03-12T16:45:55","modified_gmt":"2010-03-12T20:45:55","slug":"google-maps-api-enhancements","status":"publish","type":"post","link":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/2010\/03\/12\/google-maps-api-enhancements\/","title":{"rendered":"Google Maps API Enhancements"},"content":{"rendered":"<p>Google just <a href=\"http:\/\/googlegeodevelopers.blogspot.com\/2010\/03\/good-day-for-salesmen-that-travel-on.html\">announced some enhancements to their Directions in Maps API<\/a>.\u00a0 One addition, &#8220;avoiding tolls and highways&#8221; doesn&#8217;t really affect me much:\u00a0 we have only one toll road in the area, and it is pretty well needed to go either east or west.\u00a0 But the other two are exciting!<\/p>\n<p>First, the API now adds bicycle routing.\u00a0 I don&#8217;t know if it will let you go the wrong way down one way streets or hop on a crowded sidewalk to make a shortcut, but it does contain at least some of the long-distance bike paths.\u00a0 Check out the path from <a href=\"http:\/\/maps.google.com\/maps?f=d&amp;source=s_d&amp;saddr=6621+aylesboro+ave,+pittsburgh,+pa&amp;daddr=The+White+House,+Washington,+District+of+Columbia,+20500&amp;hl=en&amp;geocode=FawVaQIdap08-yndxJcC_O00iDGqUFjVgZIFvA%3BFfKHUQIdbYdo-yntSt7jvLe3iTHoc4E-MVibqA&amp;mra=ls&amp;dirflg=b&amp;sll=39.67337,-78.475342&amp;sspn=3.842971,4.976807&amp;ie=UTF8&amp;ll=39.664914,-78.475342&amp;spn=3.843442,4.976807&amp;z=8&amp;lci=bike\">my house to my buddy Barack&#8217;s place<\/a>.\u00a0 There is a bike path starting from about 20 miles from Pittsburgh all the way to Washington, DC.\u00a0 I turn 50 this year, and have promised myself that I will do that trip.\u00a0 Of course, I have broken promises before, and if I don&#8217;t start training soon, it won&#8217;t happen.\u00a0 But it is nice to see Google will be by my side if I do set off.<\/p>\n<p>The second, and more relevant to OR, enhancement adds Traveling Salesman routing capability.\u00a0 From the announcement:<\/p>\n<blockquote><p><strong>Route optimization.<\/strong> Have many places to go but no preference as  to the order you visit them in? We can now reorder the waypoints of your  route to minimize the distance and time you must travel. Very useful  for <a id=\"naj4\" title=\"traveling salesman\" href=\"http:\/\/en.wikipedia.org\/wiki\/Travelling_salesman_problem\">traveling salesman<\/a> I hear.<\/p><\/blockquote>\n<p>Now I would love to experiment with this!\u00a0 There have been similar efforts before.\u00a0 <a href=\"http:\/\/gebweb.net\/optimap\/\">Gebweb<\/a> has offered routing since 2007, and promises optimal solutions for up to 15 cities with 2-opting solutions for larger problems.\u00a0 I would love to know how far Google guarantees optimality before resorting to a heuristic (the demo on the announcement page limits you to 11 points).\u00a0 Unlike the other additions, this has not yet made it to Google Maps, but when it does, let&#8217;s see how Google competes with <a href=\"http:\/\/www.tsp.gatech.edu\/\">Concorde<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Google just announced some enhancements to their Directions in Maps API.\u00a0 One addition, &#8220;avoiding tolls and highways&#8221; doesn&#8217;t really affect me much:\u00a0 we have only one toll road in the area, and it is pretty well needed to go either east or west.\u00a0 But the other two are exciting! First, the API now adds bicycle &hellip; <a href=\"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/2010\/03\/12\/google-maps-api-enhancements\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Google Maps API Enhancements&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,6,41],"tags":[],"class_list":["post-1087","post","type-post","status-publish","format-standard","hentry","category-applications","category-blogs-and-web","category-personal"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=1087"}],"version-history":[{"count":0,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1087\/revisions"}],"wp:attachment":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=1087"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=1087"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=1087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}