Difficulty
Your best score
N/A
In a research center for autonomous systems, several types of robots are being tested. For these experiments, various types of arenas were used, and each robot follows a specific exploration strategy. During each experiment, the robot is equipped with a set of sensors and monitoring systems that collect information about its activity. The recorded data describes different aspects of the robot's behavior and the environment in which it operates.
These can include numerical values (e.g., average speed, distance traveled, number of collisions, or items collected), but also categorical or descriptive information (such as arena type or environmental conditions). By analyzing this data, patterns can be observed in how robots move, explore space, collect items, or react to obstacles.
Analyzing this data is important for:
To solve this problem, you will have two files at your disposal:
train.csv – contains labeled examples used for analysis and model training;test.csv – contains the same variables, without the strategy_label column, and is used for generating predictions.Four types of strategies are used in the experiments:

Each row in the train.csv and test.csv files corresponds to an experiment.
The dataset contains columns describing different aspects of the robot's behavior. Examples of such features are:
| Column | Type | Description |
|---|---|---|
| robot_id | string | Unique identifier of the experiment |
| arena_type | string | Type of arena where the experiment took place |
| weather | string | Environmental conditions during the experiment |
| difficulty | int | Arena difficulty level |
| laps | int | Number of laps completed |
| avg_speed_mps | float | Average speed of the robot (m/s) |
| distance_m | float | Total distance traveled |
| battery_used_pct | float | Percentage of battery consumed |
| collisions | int | Number of collisions with obstacles |
| unique_cells | float | Number of distinct areas explored |
| items_collected | int | Number of items collected |
| pause_count | int | Number of pauses or stops |
| turn_rate | float | Frequency of direction changes |
| scan_accuracy | float | Accuracy of scans performed |
| return_time_s | float | Time required to return to the starting point |
| efficiency_score | float | Aggregate score of robot efficiency |
| coverage_ratio | float | Proportion of the arena explored |
| scan_turn_sync | float | Synchronization between scans and direction changes |
| pickup_efficiency | float | Efficiency of item collection |
| detour_index | float | Index of route deviations |
| safety_margin | float | Safety margin from obstacles |
| patrol_consistency | float | Consistency of patrolling an area |
| speed_burst | float | Intensity of rapid accelerations |
| risk_index | float | Movement risk index |
| strategy_label | string | Robot strategy (only in train.csv) |
Using the data from the train.csv file, determine how many distinct values appear in the arena_type column.
Using the data from the train.csv file, determine the maximum value in the avg_speed_mps column.
Based on the data from the train.csv file, determine which arena type appears most frequently in the arena_type column.
Based on the data from the train.csv file, determine the maximum value of the items_collected column.
Build a model that determines the robot's strategy for each experiment in test.csv.
Possible values are:
explorercollectorguardiansprinterThe submission file must be in csv format and contain the following columns:
| Column | Description |
|---|---|
| robot_id | Robot identifier from test.csv |
| subtaskID | ID of the task for which the answer is submitted |
| answer | Calculated or predicted value for that task |
Possible values for subtaskID are:
| subtaskID | Task |
|---|---|
| 1 | Number of arena types |
| 2 | Maximum observed speed |
| 3 | Most frequently used arena |
| 4 | Maximum collection performance |
| 5 | Robot strategy |
For Task 1 – Task 4, the result is a value calculated globally based on the data in train.csv.
In the submission file, this must be sent only once, using the special value GLOBAL for robot_id.
For Task 5, the predicted strategy for each robot in test.csv must be reported.
Possible values are:
explorercollectorguardiansprintersubmission.csv filerobot_id,subtaskID,answerGLOBAL,1,10GLOBAL,2,4.31GLOBAL,3,forestGLOBAL,4,7TR_1000,5,explorerTR_1001,5,guardianTR_1002,5,collectorThe total score is 100 points.
For the first four tasks, the answers are determined exclusively based on the data in train.csv.
Evaluation is done by exact comparison (equality) between the value submitted in the file and the correct value calculated from train.csv.
For this task, the correctness of the predicted strategies for the robots in test.csv is evaluated.
The Macro-F1 metric is used, which calculates the F1 score for each class and then averages these values.
For a class c:

The final Macro-F1 score is the average of the F1 scores for all classes:

where K is the number of classes. In this problem, K = 4.
The score awarded for Task 5 is:
score = 50 x MacroF1 (if MacroF1 < 0.93)score = 50 (if MacroF1 >= 0.93)