Skip to content

SEVIC1 and SWNSW1 augmentation options dropped — no numeric expansion capacity in source #97

@nick-gorman

Description

@nick-gorman

The network expansion templater currently drops two REZ augmentation constraint groups because
their only listed options carry non-numeric capacity values in the IASR workbook (v7.5).

Affected groups

expansion_id Option capacity (forward / reverse)
SEVIC1 "Removes limit" / "" (or similar)
SWNSW1 "Removes limit" / "Non-network augmentation"

What happens now

  1. _drop_options_with_no_capacity in src/ispypsa/templater/network_expansion.py removes options
    whose forward and reverse capacity are both non-numeric. It logs one INFO line per dropped
    option.
  2. Because every option for these two groups is non-numeric, the groups vanish from the options
    stream entirely.
  3. Their cost trajectories remain in the costs stream but are now orphaned (no option to attach to).
    _align_option_names_to_options then logs a WARNING and drops those orphaned cost rows.

Modelling consequence

SEVIC1 and SWNSW1 appear in constraints_rhs and would normally gain a translator-side dummy
relaxation generator built from an entry in network_transmission_path_expansion_costs. With no
entry emitted, these two custom constraints cannot be relaxed at a cost in the optimiser —
they become hard caps.

What we think is actually needed

AEMO's "Removes limit" wording implies the option is an all-or-nothing switch — activating it
pays a fixed annualised cost and fully removes the constraint, with no partial-expansion MW to
scale. That's a binary decision variable (option taken or not taken), not a continuous
capacity expansion, and it isn't something the translator currently supports. Implementing this
would require:

  • Extending the templater schema to represent non-numeric / binary expansion options without
    dropping them.
  • Extending the translator to build a binary relaxation formulation (fixed annualised cost × {0, 1}
    decision variable) for these rows, rather than the continuous dummy-generator approach used for
    numeric constraint-group expansions.

We haven't designed either piece yet. Until then, SEVIC1 and SWNSW1 remain hard caps in the
model.

References

  • src/ispypsa/templater/network_expansion.py_drop_options_with_no_capacity,
    _align_option_names_to_options
  • Open-ISP/project-planning#4 — templater
    restructuring plan (skip+log policy, constraint-group ID handling)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions