LIVEdataset aec-bench@releasetasks 552models 18last submission · built
maritimewith-tool

Freeboard Length

Calculates the Freeboard length L_LL used throughout the IACS Harmonised Common Structural Rules for Bulk Carriers and Oil Tankers (CSR-H). L_LL is taken as 96% of the total length on a waterline at 85% of the least moulded depth measured from the top of the keel, or as the length from the fore side of the stem to the axis of the rudder stock on that waterline, whichever is greater. Ships without a rudder stock (e.g. fitted with azimuth thrusters) take L_LL equal to 96% of the waterline length directly. This is a principal-particulars quantity used for freeboard and stability assessment under CSR-H.

with-tool: The model is given an executable Python calculator script.

How this task is generated

One template produces many comparable benchmark tasks while keeping the scoring contract fixed.

  1. 01

    Template

    The reusable contract shown on this page.

  2. 02

    Scenario

    An archetype and site context are sampled.

  3. 03

    Difficulty tier

    Inputs may be hidden at harder tiers.

  4. 04

    Task prompt

    The model responds with the declared outputs.

Parameters

Inputs the model receives, and the outputs it is scored on.

Inputs

3 inputs

Always given

Included directly in every task prompt.

1
  • Total length on 85pct depth waterline

    total_length_on_85pct_depth_waterline_m

    Total length on a waterline at 85% of the least moulded depth, measured from the top of the keel

    90 – 450 m

Hidden at higher difficulty

Visible in easier tasks and withheld in one or more harder tiers.

1
  • Has rudder stock

    has_rudder_stock

    Whether the ship has a rudder stock (false for ships fitted with azimuth thrusters and similar)

    Hidden at hard difficulty.

    truefalse

Optional

Used only when the sampled task needs this part of the contract.

1
  • Stem to rudder stock axis distance

    stem_to_rudder_stock_axis_distance_m

    Length from the fore side of the stem to the axis of the rudder stock, on the 85%-depth waterline

    Optional input. Hidden at hard difficulty.

    85 – 440 m

Scored outputs

1 output

Freeboard length LLL

freeboard_length_LLL_m

Freeboard length L_LL (m)

Scores if within ±0.5% of the reference value.

Difficulty

Each template is sampled at three tiers. Harder tiers may hide inputs, forcing the model to infer them from the scenario description.

easy

All inputs given

Rudder stock ship where the measured stem-to-rudder-stock-axis distance governs (exceeds 96% of the waterline length)

Has rudder stock restricted to: true

Governing term restricted to: stem_to_rudder_stock_distance

medium

All inputs given

Rudder stock ship where 96% of the waterline length governs (the measured distance is smaller, so the greater-of flips)

Has rudder stock restricted to: true

Governing term restricted to: waterline_fraction

hard

Some inputs hidden

has_rudder_stock hidden; agent must infer the azimuth-thruster case from the vessel description

Hidden inputs

  • Has rudder stockhas_rudder_stock
  • Stem to rudder stock axis distancestem_to_rudder_stock_axis_distance_m

Prompt replacement text

The vessel is a {{ archetype.description }} ({{ archetype.site_context }})

Has rudder stock restricted to: false

Governing term restricted to: no_rudder_stock

Task bundle

The exact instruction and parameter contract used to generate this task, pinned to the published library source.

/workspace

  • instruction.md
  • freeboard-length_calc.py

Teal lines show Jinja input conditions, not task visibility policy. A line renders only when that input or tool is visible.

1You are a senior naval architect specializing in classification society rule compliance.2 3## Problem4 5Calculate the IACS Freeboard length L_LL for a ship under the Harmonised Common Structural Rules (CSR-H).6 7## Given8 9| Parameter | Value | Unit |10|-----------|-------|------|11| Total length on a waterline at 85% of the least moulded depth | {{ total_length_on_85pct_depth_waterline_m }} | m |12{% if has_rudder_stock is defined %}13| Has rudder stock | {{ has_rudder_stock }} | - |14{% endif %}15{% if stem_to_rudder_stock_axis_distance_m is defined %}16| Length from the fore side of the stem to the axis of the rudder stock, on that waterline | {{ stem_to_rudder_stock_axis_distance_m }} | m |17{% endif %}18{% if archetype_description is defined %}19 20### Vessel Context21 22{{ archetype_description }}23{% endif %}24 25{% if tool_available %}26## Available Tool27 28A Freeboard length calculation tool is available at `/workspace/{{ meta.name }}_calc.py`. Run it with:29 30```bash31python3 /workspace/{{ meta.name }}_calc.py --help32```33 34You may use this tool to verify your calculations or compute values directly.35{% endif %}36 37## Required38 39Calculate the following:40 411. Freeboard length L_LL (m)42 43## Applicable Standards44 45- IACS Harmonised Common Structural Rules (CSR-H), edition 01 JUL 2025, Pt 1 Ch 1 Sec 4 §3.1.246 47## Constraints48 49- No internet access is available. Work from engineering knowledge and the provided tool.50- Quote from Pt 1 Ch 1 Sec 4 §3.1.2: "The freeboard length L_LL, in m, is to be taken as 96% of the total length on a waterline at 85% of the least moulded depth measured from the top of the keel, or as the length from the fore side of the stem to the axis of the rudder stock on that waterline, if that be greater. For ships without a rudder stock, the length L_LL is to be taken as 96% of the waterline at 85% of the least moulded depth."51- If the ship has a rudder stock, L_LL is the GREATER of (a) 96% of the total length on the 85%-depth waterline and (b) the measured length from the fore side of the stem to the axis of the rudder stock on that waterline.52- If the ship has no rudder stock (e.g. azimuth thrusters), L_LL = 96% of the total length on the 85%-depth waterline.53- Ships with unusual (concave) stem contours are out of scope for this calculation — assume a conventional stem contour unless stated otherwise.54 55## Output Format56 57Show your step-by-step working in Markdown, including formulas and intermediate calculations. At the end of your solution, include a JSON block with your final answer in exactly this format:58 59```json60{61 "freeboard_length_LLL_m": <numeric_value>62}63```64 65Write your complete solution to `/workspace/output.md`.66

Scenario archetypes

Each generated task is drawn from one of these realistic scenario bands.

Site contexts ground each scenario in a real locale the model can use to infer hidden values.

Conventional rudder ship

conventional_rudder_ship

Conventional single-screw ship with a rudder stock and moderate stern overhang

bulk-carrier-panamaxproduct-tanker-mrgeneral-cargo-handysize
Parameter ranges
total_length_on_85pct_depth_waterline_m
220 – 300
stem_to_rudder_stock_axis_distance_m
140 – 210

Long stern rudder ship

long_stern_rudder_ship

Rudder-stock ship with a long counter/cruiser stern, where the rudder stock axis sits well aft, beyond 96% of the waterline length

chemical-tanker-cruiser-sterngeneral-cargo-long-counter-sternlivestock-carrier-cruiser-stern
Parameter ranges
total_length_on_85pct_depth_waterline_m
200 – 205
stem_to_rudder_stock_axis_distance_m
197 – 199.5

Azimuth thruster ship

azimuth_thruster_ship

Ship fitted with azimuth thrusters and no rudder stock

shuttle-tanker-dpoffshore-support-vesselharbour-tug-azimuth
Parameter ranges
total_length_on_85pct_depth_waterline_m
100 – 250

Example task

shuttle-tanker-dp-azimuth-thruster-ship-previewhard difficulty, some inputs hidden.

Ship fitted with azimuth thrusters and no rudder stock. shuttle-tanker-dp. Required outputs: freeboard_length_LLL_m

The model sees

Scenario context and visible inputs.

total_length_on_85pct_depth_waterline_m
100 to 250 m

Executable tool: freeboard-length_calc.py

The model must infer

Inputs withheld at this difficulty.

  • Has rudder stock

    has_rudder_stock

  • Stem to rudder stock axis distance

    stem_to_rudder_stock_axis_distance_m

Stand-in text in the prompt

The vessel is a {{ archetype.description }} ({{ archetype.site_context }})

The model must produce

The scored JSON answer schema.

{
  "freeboard_length_LLL_m": <number>
}
  • freeboard_length_LLL_m · scored within ±0.5%