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

Bess Sizing Basic

Calculates a reduced battery energy storage sizing case from a required discharge duty. The template sizes usable energy, nominal energy capacity, and beginning-of-life capacity using explicit SOC window, efficiency, and end-of-life retention factors.

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

5 inputs

Always given

Included directly in every task prompt.

4
  • Required discharge power

    required_discharge_power_mw

    Required AC discharge power

    0.1 – 500 MW
  • Required discharge duration

    required_discharge_duration_h

    Required discharge duration

    0.25 – 12 h
  • Usable soc range pct

    usable_soc_range_pct

    Usable state-of-charge range

    40 – 95 %
  • Round trip efficiency pct

    round_trip_efficiency_pct

    Round-trip efficiency used in reduced sizing

    70 – 98 %

Hidden at higher difficulty

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

1
  • End of life capacity retention pct

    end_of_life_capacity_retention_pct

    End-of-life capacity retention allowance

    Hidden at hard difficulty.

    60 – 95 %

Scored outputs

4 outputs

Nominal power rating mw

nominal_power_rating_mw

Nominal power rating

Scores if within ±3% of the reference value.

Usable energy mwh

usable_energy_mwh

Required delivered usable energy

Scores if within ±3% of the reference value.

Nominal energy capacity mwh

nominal_energy_capacity_mwh

Nominal energy capacity before EOL retention allowance

Scores if within ±3% of the reference value.

Beginning of life capacity mwh

beginning_of_life_capacity_mwh

Beginning-of-life installed energy capacity

Scores if within ±3% 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

Distribution BESS with all values visible

medium

All inputs given

Storage duty selected from distribution or grid firming cases

hard

Some inputs hidden

Grid firming BESS with EOL retention embedded in context

Hidden inputs

  • End of life capacity retention pctend_of_life_capacity_retention_pct

Prompt replacement text

Use the end-of-life capacity retention implied by {{ archetype.description }}.

End of life capacity retention pct restricted to: 80

Task bundle

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

/workspace

  • instruction.md
  • bess-sizing-basic_calc.py

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

1# ABOUTME: Prompt template for basic BESS sizing tasks.2# ABOUTME: Presents discharge duty, SOC window, efficiency, and EOL retention.3 4You are a senior power systems engineer sizing a battery energy storage system.5 6## Given7 8| Parameter | Value | Unit |9|-----------|-------|------|10| Required discharge power | {{ required_discharge_power_mw }} | MW |11| Required discharge duration | {{ required_discharge_duration_h }} | h |12| Usable SOC range | {{ usable_soc_range_pct }} | % |13| Round-trip efficiency | {{ round_trip_efficiency_pct }} | % |14| End-of-life capacity retention | {{ end_of_life_capacity_retention_pct }} | % |15 16## Constraints17 18- Usable energy equals required discharge power times discharge duration.19- Nominal energy capacity equals usable energy divided by usable SOC fraction and round-trip efficiency fraction.20- Beginning-of-life capacity equals nominal energy capacity divided by end-of-life retention fraction.21- Nominal power rating equals the required discharge power.22 23## Output Format24 25Include a JSON block with exactly these keys:26 27```json28{29 "nominal_power_rating_mw": <numeric_value>,30 "usable_energy_mwh": <numeric_value>,31 "nominal_energy_capacity_mwh": <numeric_value>,32 "beginning_of_life_capacity_mwh": <numeric_value>33}34```35 36Write your complete solution to `/workspace/output.md`.37

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.

Distribution peak shaving

distribution_peak_shaving

Distribution peak shaving BESS

distribution-networkpeak-shaving
Parameter ranges
required_discharge_power_mw
1 – 30
required_discharge_duration_h
1 – 4
usable_soc_range_pct
70 – 90
round_trip_efficiency_pct
84 – 94
end_of_life_capacity_retention_pct
75 – 90

Grid firming

grid_firming

Grid firming BESS

renewable-firminggrid-storage
Parameter ranges
required_discharge_power_mw
20 – 250
required_discharge_duration_h
2 – 8
usable_soc_range_pct
65 – 90
round_trip_efficiency_pct
82 – 94
end_of_life_capacity_retention_pct
70 – 88

Example task

renewable-firming-grid-firming-previewhard difficulty, some inputs hidden.

Grid firming BESS. renewable-firming. Required outputs: nominal_power_rating_mw, usable_energy_mwh, nominal_energy_capacity_mwh, beginning_of_life_capacity_mwh

The model sees

Scenario context and visible inputs.

required_discharge_power_mw
20 to 250 MW
required_discharge_duration_h
2 to 8 h
usable_soc_range_pct
65 to 90 %
round_trip_efficiency_pct
82 to 94 %

Executable tool: bess-sizing-basic_calc.py

The model must infer

Inputs withheld at this difficulty.

  • End of life capacity retention pct

    end_of_life_capacity_retention_pct

Stand-in text in the prompt

Use the end-of-life capacity retention implied by {{ archetype.description }}.

The model must produce

The scored JSON answer schema.

{
  "nominal_power_rating_mw": <number>,
  "usable_energy_mwh": <number>,
  "nominal_energy_capacity_mwh": <number>,
  "beginning_of_life_capacity_mwh": <number>
}
  • nominal_power_rating_mw · scored within ±3%
  • usable_energy_mwh · scored within ±3%
  • nominal_energy_capacity_mwh · scored within ±3%
  • beginning_of_life_capacity_mwh · scored within ±3%