Discord

Checklist GAIA AI Olympiad 2026 Georgian AI League I (practice contest) · Task 3

Data Reduction Optimisation

Georgian title: მონაცემების შემცირების ოპტიმიზაცია

Choose the smallest subset of training rows and columns with which a fixed decision-tree pipeline still reaches F1 ≥ 0.92 on truck APS failure data.

  • Tabular
  • Data subset selection (row and feature selection)
  • Georgian original · English translation

The task

The story concerns an analysis of failures in the air pressure system (APS) of trucks, where the system must reach an F1 score of at least 0.92. The challenge is to reach that threshold with as little data as possible; the training data also contain many defects introduced when a cat walked over the keyboard.

The training data train_data.csv has shape (2870, 195): 194 features and a final 'class' label. The contestant selects subsets of rows and columns; the organisers train exactly the pipeline SimpleImputer(strategy='median') followed by DecisionTreeClassifier(random_state=42, class_weight='balanced', max_depth=None, min_samples_leaf=1) on the selected subset and evaluate it on public and private test sets.

Abridged and translated by SOTA from the official Georgian materials. The official statement has the exact rules, and it wins wherever this summary differs.

In English

This task was published in Georgian. SOTA translated it into English on 17 September 2026.

Read the task statement in English 615 words

Data Reduction Optimisation

English translation by SOTA – AI Community of the Georgian original. Organisers who would like this translation removed can email [email protected].

Source: Georgian AI League I, a practice contest of the Georgian Artificial Intelligence Association (GAIA) on the Nitro AI judge, 18 January 2026, task 3: original statement. The judge lists the task as "Data Reduction Optimisation"; the statement itself is headed as below.

The Truck APS Failure Data Optimisation Challenge

Problem Description

Astamakha is a hard-working person who has been tasked with analysing failures of the APS (Air Pressure System) of trucks. Astamakha's bosses have required the system to have an F1 score of at least 0.92. Astamakha's friend Giorgi, who loves difficulties very much, proposed the following challenge: "Come on, let's reach F1 >= 0.92 with as little data as possible!"

Astamakha would not be Astamakha without accepting such a challenge, and so the challenge was accepted, but Astamakha first decided to have a snack. Unfortunately, on returning, Astamakha discovered that a cat had walked across the keyboard, and as a result many gaps had been introduced into the data!

Your job is to help Astamakha complete the assignment and the challenge using the minimum amount of data.

Task

Training data (train_data.csv) is given. You must select a subset of rows and columns/features that:

  1. reaches an F1 score >= 0.92 on both the public and the private test sets. (It does not matter by how much you exceed it; the main thing is to clear the threshold.)
  2. uses the minimum amount of data (fewer rows and columns = better score).

Given Data

train_data.csv - data of shape (2870, 195), where 194 are variables and the last one is class - the label

import pandas as pd

train_data = pd.read_csv("train_data.csv")

Submission Format

Create a JSON file with the following structure:

{
  "rows": [0, 1, 5, 10, ...],
  "columns": [91, 124, 181, ...]
}
  • rows: a list of row indices (counting starts from 0) from train.csv that should be used.
  • columns: a list of column indices (counting starts from 0) or column names (except 'class').

Scoring System

Based on the JSON file you submit, we will build a subset of the original training data and train a model on it using exactly this code

Pipeline([
    ("imputer", SimpleImputer(strategy="median")),
    ("clf", DecisionTreeClassifier(
        random_state=42,
        class_weight="balanced",
        max_depth=None,
        min_samples_leaf=1,
    )),
])

Note: the model's seed is fixed at 42. You cannot change it.

Score Calculation

F1 Threshold (Pass/Fail)

Your submission must satisfy the following condition:

F1_Test >= 0.92

If the F1 threshold is not met, your score will be 0.

Compression Score

If the F1 threshold is cleared, your score is calculated as follows:

score=0.5log(r/rnow)log(r)+0.5log(c/cnow)log(c)score = 0.5 \cdot \frac{\log(r / r_{now})}{\log(r)} + 0.5 \cdot \frac{\log(c / c_{now})}{\log(c)}

where:

  • r = the total number of rows in the original training data (2870)
  • r_now = the number of rows in your selection
  • c = the total number of feature columns (194)
  • c_now = the number of columns in your selection

The higher the score, the better! The score rewards using fewer rows and columns.

This score will be scaled to 0-100, where 100 points are awarded to the best solution produced by us.

Score Examples
Rows Cols F1 threshold Score
2870 194 PASS 0.000
2870 6 PASS 0.330
300 6 FAIL 0.000

Good Luck!

Help Astamakha impress Giorgi with the most compressed dataset that still reaches F1 >= 0.92!

Translated by SOTA. The Georgian original is the official version and wins wherever the two differ. Georgian AI League I was a practice contest of the Georgian Artificial Intelligence Association (GAIA) on the Nitro AI judge; the statement exists only in Georgian, and the data can be downloaded there after a free login. The original calls the data file both train_data.csv and train.csv; the translation keeps both as written. If you organise this olympiad and would like the translation removed, email [email protected] and we will take it down.

At a glance

You get
train_data.csv (2870 rows, 194 features plus 'class'); test data and a pre-judging script are also listed as contestant files.
You submit
A JSON file {"rows": [...], "columns": [...]} with 0-based row indices and column indices or names (excluding 'class').
Scoring
Pass/fail threshold F1_Test ≥ 0.92 (otherwise 0). If passed, score = 0.5·log(r/r_now)/log(r) + 0.5·log(c/c_now)/log(c) with r = 2870 and c = 194, rescaled to 0–100 where the organisers' best solution scores 100.
Rules
  • The model seed is fixed at 42 and cannot be changed.
  • Submission limit 25, one final submission (platform settings).
Format
Georgian AI League I, a GAIA practice contest on Nitro AI Judge, 18 Jan 2026, 07:00–11:00 UTC (4 hours), individual, online.

Details

Year
2026, Online
Round
Georgian AI League I (practice contest) · Task 3
Language
Georgian; English translation by SOTA
License
Not stated by the source