Skip to content

Opinion column

When the optimum is not unique, someone chooses

Under DS 32, the opportunity cost of batteries now orders dispatch and sets prices.

But optimisation models often have many equally good solutions, and today the one choosing among them is the software. The Technical Standard can change that.

Carlos Suazo Martínez Chief Executive, SPEC 5 min read

When cost runs parallel to an edge, the whole edge is optimal

Since June, the opportunity cost of batteries is no longer a technical detail. DS 32/2026 amended the Regulation on the Coordination and Operation of the National Electric System (DS 125) and established that, for storage systems not operating under self-dispatch, their Production Cost is their opportunity cost (Art. 37). That number sets the order in which the System Coordinator dispatches units and, when a battery is the marginal unit, it can set the marginal cost. The specific mechanics are to be defined in the Technical Standard.

The problem is that this price comes out of an optimisation model, and with batteries those models rarely have a single answer.

Many solutions, one cost

Let us think of two batteries with the same efficiency, in the same zone, that can displace the same gas plant in the evening peak. For the system it makes no difference which one discharges, or in what proportion: total cost is the same. The model that builds the operating schedule finds one of those solutions, but nothing in the problem sets it apart from the others. Which battery discharges, and when, ends up depending on the software's algorithm, on the tolerance at which it stops, or on tiny differences from one run to the next.

Same cost, five splits among three batteriesAll other units · MWunchanged06001.200solarcoalLNGThe three batteries · MWBattery 1 · 2 hBattery 2 · 4 hBattery 3 · 4 h2000-200discharge ↑charge ↓total of the three: unchanged0 h6 h12 h18 h23 hOperating cost of the day: the same in all five splitsSplit 1 of 5
Same cost, five splits among three batteriesAll other units · MWunchanged06001.200solarcoalLNGThe three batteries · MWB1 · 2 hB2 · 4 hB3 · 4 h2000-200total of the three: unchanged0 h6 h12 h18 h23 hOperating cost: the sameSplit 1 of 5
Same cost, five splits. An illustrative day with three batteries. Generation from all other units does not move, and neither does the total the three batteries charge and discharge in each hour; therefore, the operating cost of the day is the same. The only thing that changes is how much each battery takes. Every split is an optimal solution, and so is every intermediate frame of the animation.SPEC diagram

It is exactly what happens with curtailment: the system operator is indifferent as to which unit curtails energy, as long as the operating cost does not change.

In the current logic, a dispatch that follows a thermal equivalent forces the opportunity cost to be represented by a single scalar. Thus, the opportunity cost the model delivers (as has been done in the case of BESS Salvador) is the shadow price of stored energy: the slope of the system's future-cost function, evaluated at the battery's state of charge. That function has kinks —each segment corresponds to the plant the stored energy would displace later on— and a direction: what it costs the system to have 1 MWh less in storage and what it saves with 1 MWh more. Any value between the two is an equally valid shadow price.

The opportunity cost is a slopestored energyfuture costcurrent state of chargeOC+: cost of 1 MWh lessOC−: value of 1 MWh moresystem future-cost functionband of optimal opportunity costs
The opportunity cost is a slopestored energyfuture costcurrent state of chargefuture costOC+ · 1 MWh lessOC− · 1 MWh moreoptimal band
The opportunity cost is a slope. The system's future-cost function against stored energy. At a kink, every line between the two neighbouring slopes touches the function without crossing it: any of those values is an optimal opportunity cost.SPEC diagram

The model only requires its opportunity cost to lie between the marginal cost multiplied by its efficiency and the marginal cost divided by it: at 45 USD/MWh and 95% efficiency, any value between 42.8 and 47.4 USD/MWh is optimal. The software reports one point in that band, with no criterion at all, and nothing stops it from assigning different values to two identical batteries in the same state. Under DS 32, that point decides who enters dispatch first.

The technical term for this is degeneracy. It is not a calculation error but a property of the problem. It does, however, have consequences.

When it turns into economic transfers

In the Chilean market, economic transfers are settled at the actual marginal cost, and the schedule misses by quite a lot: between May and October this year, the day-ahead schedule projected marginal costs around 30% above actual ones at four of the five busbars analysed from north to south. With that gap, what the model treated as indifferent becomes winners and losers.

Contracts amplify it. A battery with a contract that pays per unit of energy injected earns more the more MWh it is assigned, even though the system does not care. One with a time-block contract is more or less exposed to the spot market depending on the hours in which it happens to discharge.

The current rule falls short

DS 125 does have a tie-breaking rule: with equal Production Costs and not enough room in the priority list, output is pro-rated according to each facility's forecast Available Capacity (Art. 45 bis). But that rule applies to the real-time list; it does not touch the schedules, which is where the opportunity cost is formed. And its reading for batteries is not neutral. If Available Capacity is understood as what the battery can deliver in the interval, the pro rata is in practice by MW: two-hour batteries empty first, and those that invested in more hours of storage discharge less per MWh installed.

Proposal: three things the Technical Standard can define

The good news is that the current DS 125 leaves room to solve this without amending the decree.

First, a public second stage. The schedule is solved as it is today, to obtain the cost and the prices, and then a second time: among all solutions with that same cost, the one that best meets a criterion set in the standard is chosen. For example, that all batteries keep the same state of charge in percent, or that the new schedule departs as little as possible from the one in force. Neither the cost nor the prices change —every optimal solution of a linear problem is compatible with the same marginal costs and opportunity costs— and anyone can reproduce the result. What changes is the split, and no criterion is neutral by default. But the criterion is a regulatory decision, not the software's.

Second, the same criterion in real time. The standard can define a battery's Available Capacity as the power it can sustain over what remains of the discharge window: the lower of its power rating and its stored energy divided by the remaining hours. If that window is a single interval, the rule is equivalent to a pro rata by MW; if it is the full window, it is neutral per MWh. And it fits the decree's definition, which requires taking stored energy and scheduling assumptions into account.

Third, an explicit convention for the opportunity cost. Define groups of similar batteries in which, below a tolerance threshold, a set of batteries shares a variable cost.

None of this replaces what matters most: a schedule that looks more like actual operation. The operation of the Chilean system involves operational decisions that are not adequately represented when the schedule is set. A recurrent calculation of the intraday schedule also helps close the gap between the schedule and actual operation.

When the optimum is not unique, someone chooses. Today the software does. The Technical Standard can make a public, neutral and auditable rule do the choosing.