GeekDad Puzzle of the Week: Quickly Now, the Clock is Ticking—Solution

Geek Culture

Spirit Illustration from Nasa/JPLSpirit Illustration from Nasa/JPL

Spirit Illustration from Nasa/JPL

Congratulations to this week’s winner, Kevin Fortner, whose answer was randomly chosen from among the correct answers to this week’s GeekDad Puzzle of the Week. Kevin has won a $50 gift code to ThinkGeek. The rest of you geekdad readers can use the code after the solution to receive $10 off of a $40 or more purchase at Kevin successfully solved Pedro Vex’s problem of how to get the Mars Exploration Rover, Spirit to its winter camping spot in the least amount of time. Continue reading for the original puzzle and its solution.

As you will recall, Super-spy Pedro Vex often has to take odd jobs to maintain his anonymity. A year or so ago, Pedro was tracking Super-villan Jack Smith who had infiltrated the Jet Propulsion Laboratory in Pasadena, California and was stealing ITAR sensitive materials. Pedro took a job as a rover route planner at JPL to keep an eye on Jack, who had been hired on to the Mars Science Laboratory team responsible for choosing a safe landing site for the next rover.

Pedro’s first task as a route planner was to get the rover Spirit to a safe place to spend the winter. With winter coming on fast, Spirit was in danger of not receiving enough solar power to charge its battery sufficiently to survive the long, cold winter on the southern Hemisphere of Mars. A safe, north-facing spot had been picked out; all that was needed was to tell the drivers how to get there.

How should Pedro design the route to get Spirit to its winter camping spot in as short a time as possible, giving Pedro time to spy on Jack and Spirit time to charge its battery? Use the given diagram where Spirit starts in the southwest corner and has to travel to the camping spot in the northeast corner. Spirit can move twice as fast over hard ground as it can over soft, sandy ground. Find the best route within the given diagram (do not think outside this box). Assume there are no major obstructions on either the rocky or the sandy ground.

Kevin’s correct answer follows. Several other submitters also used the Wolfram|Alpha tool recently mentioned on to solve this minimization problem, and I was going to show that off, but I read their terms of use and they apparently want to own all copyright to material generated on/by their site; I signed a contract to give all copyright of all the copyrightable stuff I post here to Conde Nast, and I didn’t want to end up in the middle of that fight… On to Kevin’s answer, slightly modified for clarity.

Hi guys,

Nice minimization problem and it gave me a chance to experiment with Wolfram Alpha.

This is the simplified formula that WA returned that must be minimized.

2*sqrt(200^2+(200-x)^2) + sqrt(300^2+(500+x)^2)

x is minimized at 100 indicating that the rover should proceed to a point 200 units north and 100 units east from the starting point. The rover should continue from that point directly to the NE corner to complete its trip in the least amount of time.

The second most popular, but incorrect, answer was to go directly north for 200 meters until Spirit was on the rocky ground and then head directly to the camping spot. Unfortunately, if this route is traveled, a lot of time is spent moving north but not moving east. To see that, assume your rate of travel on the sand is 2m/s and your rate of travel on the rock is 1m/s. You travel for 400s on the sand and 762s on the rock. That’s 1161.577s. If you take the faster route given above by Kevin and others, you travel for 447s on the sand but only 671s on the rock, for a total of 1118.034s, a savings of nearly 44 units of time. Yes, I know the precision here is too great, but it’ll be important in a couple of paragraphs for checking our work.

One reader, Kyle Smith, sent me this interesting link to an article about a dog that appears to be doing the calculus necessary to solve this minimization problem in real time. The dog plays fetch with its owner on the beach and figures out the fastest path it has to both run on the beach and swim in the water to get the toy. Neat!

The winner of last week’s puzzle was very verbose (which I like!) in his (correct) answer for this week, but most of it won’t be posted because of the aforementioned copyright foolishness. What I liked most about his answer is that he checked it. To me (and the MER drivers), checking the answers is just as important as arriving at the answers (I’m positive I’ve got something wrong in this post–that’s just net karma). Here’s a little bit from Judd:

To verify that it is a local minimum, we can test x=99 and x=101.
x=99 gives a Path = 1118.0377, higher than x=100, check!

(We go 223.1614 on the Sand, saving a little time, but 671.7150 on the Rock. The Sand saving is less than ½ the Rock, so we are slower!)

x=101 gives a Path = 1118.0377, also higher than when x=100, check!
(we go 224.0558 on the Sand, a little longer; we go only 669.9261 on the Rock, saving time. The Rock saving is less than 2x the Sand extra, so we are slower!)

We received many great solutions and I hate having to pick just one! Here’s the code to use to get $10 off your $40+ purchase at ThinkGeek: PUZZLING

Liked it? Take a second to support GeekDad and GeekMom on Patreon!