Hide

Problem D
Lost in the Mountains

Languages en sv

Alexander has a new found interest in botany, ever since he found out about the monkey puzzle tree he has planned a trip to the Andes mountains to see them. Unfortunately, during his hike a suprising snowstorm hit. Now he is lost and now he wants to get a rescue team to find him.

Alexander can’t communicate to the rescue team where he is, but he sent them all the data he had before the radio broke down. The data he sent them includes his elevation from the Altimeter and the direction of the path from his compass reading.

The search team now plans to land a helicopter and search for Alexander in a circular area around the landing point until they find him. You are tasked with finding the best landing point for the helicopter. To ensure the quality of your landing spot, you will have to prove your solutions accuracy in many simulated scenarios.

For this task we have given you training data and it’s not allowed to find your own training data on the internet.

Input

Download the file with training and test data. This can be found at the bottom under “attachments”. You will receive a zip file containing:

  • train.csv - Simulated data with known positions and their instrument readings

  • test.csv - Alexander’s instrument readings from unknown positions in the simulated scenario

The train.csv file contains 4 columns:

  • x - East-west position in meters

  • y - North-south position in meters

  • elevation - Height above sea level in meters

  • direction - Compass reading in degrees

The test.csv file contains 2 columns:

  • elevation - Alexander’s elevation reading in meters

  • direction - Alexander’s compass reading in degrees

Output

For each row in test.csv, output one line containing two space-separated numbers: the predicted x and y coordinates in meters where you think Alexander is located.

Example

Input (test.csv):

elevation,direction
143.0,34.0
23.0,285.0

Output:

1822.46 -26938.65
-8647.97 6567.14

Scoring

Your solution is evaluated based on how close your predictions are to Alexander’s actual positions. The score measures the average search area the rescue team would need to cover.

For each test case, the error is calculated as:

\[ \text{Error} = \pi \times ((x_{\text{predicted}} - x_{\text{actual}})^2 + (y_{\text{predicted}} - y_{\text{actual}})^2) \]

This represents the area of a circle with radius equal to the distance between your prediction and the actual position.

The final score is calculated using a baseline and best-case reference, where $\text{baseline} = 1700000000$ and $\text{best} = 1000000000$, as follows:

\[ \text{Score} = \max \left(0, \min \left(100, \frac{\text{baseline} - \text{mean error}}{\text{baseline} - \text{best}} \times 100\right)\right) \]

where:

  • mean error is the average error across all test cases

  • baseline is the error from a naive baseline solution

  • best is the error from a strong reference solution

Lower prediction errors result in higher scores. A score of 0 means your solution performs at or below the baseline, while a score of 100 means you’ve matched or exceeded the reference solution.

At the end of the competition, all solutions will be retested on the remaining 70% of the data. Your final score at the end of the competition will only be based on the remaining 70% of the data; the 30% tested during the competition will have no effect. It is guaranteed that the 30% tested during the competition were chosen uniformly at random and are entirely disjoint from the 70% tested at the end. Therefore, the results on the 30% tested during the competition should be seen as a strong indicator of how well your solution performs. At the same time, it is detrimental to overfit your solution to the test data.

Please log in to submit a solution to this problem

Log in