Model Description

Here are written the equations of the optimisation problem built by POMMES. Have a look at the detailed nomenclature if needed.

Objective function

The objective function of the problem is given by the minimisation of the actualised costs given in equations (1). All variables are continuous and positive.

(1)\[\min_{ \mathbf P^{inv}, \mathbf P^{rep}, \mathbf P^, \mathbf S^{inv}, \mathbf S, \mathbf I, \mathbf E, \mathbf U } \sum_{a, y} \left[ \phi_1 \left( \tau,y + \frac{\Delta y}{2}, y_0 \right) \left( \mathcal{CAP}_{a, y} + \mathcal{FIX}_{a, y} + \mathcal{VAR}_{a, y} \right) \right]\]

Where \(\phi_1(\tau, y, y_0)\) is the discount factor defined in (2) to actualise all the costs to reference year \(y_0\).

(2)\[\phi_1(\tau, y, y_0) = (1 + \tau)^{-(y - y_0)}\]

Costs definition

Annualised capital costs

Annualised capital costs are given in equation (3), and details are given in (4), (5) and (7).

(3)\[\mathcal{CAP}_{a, y} = \mathcal C^{cap}_{a, y} + \mathcal S^{cap}_{a, y} + \mathcal T^{cap}_{a, y} + \mathcal R^{cap}_{a, y} \quad \forall \, y\]

Where

(4)\[\mathcal C^{cap}_{a, y} = \sum_{c, i \leq y, d > y} \phi_2(\alpha_{c}, d - i) \, \beta_{c} \, \mathbf P^{c, inv}_{c, i, d} \quad \forall \, y\]
(5)\[\mathcal S^{cap}_{a, y} = \sum_{s, i \leq y, d > y} \phi_2(\alpha_{a, i, s}, d - i) \left( \beta_{a, i, s}\, \mathbf P^{s, inv}_{s, i, d} + \sigma_{a, i, s}\, \mathbf S^{inv}_{s, i, d} \right) \quad \forall \, y\]
(6)\[\mathcal R^{cap}_{a, y} = \sum_{c_1, i, j, c, d, j \leq y < d} \phi_2(\alpha_{c_1, c, j}, d - j) \, \beta^{rep}_{c_1, c, j} \, \mathbf P^{rep}_{c_1, i, j, c, d} \quad \forall \, y\]
(7)\[\mathcal{TODO}\]

The coefficient \(\phi_2(\alpha, n)\) represents the capital recovery factor in annualising the costs with a finance rate of \(\alpha\) during \(n\) years with one term per year (8). Payments occur at the end of the year.

(8)\[\phi_2(\alpha, n) = \frac{\alpha}{1 - (1 + \alpha)^{-n}}\]

Repayments only occur when technology is available for operation. As a result, all the CAPEX is considered between the installation and the decommissioning or retrofit of a technology.

Fixed operation costs

Fixed operation costs are given in equation (9) and details are provided in \(fixed-costs-conv\), \(fixed-costs-storage\), and \(fixed-costs-turpe\).

(9)\[\mathcal{FIX}_{a, y} = \mathcal C^{fix}_{a, y} + \mathcal S^{fix}_{a, y} + \mathcal T^{w, fix}_{a, y} \quad \forall \, y\]

Where

(10)\[\mathcal C^{fix}_{a, y} = \sum_{c, i \leq y} \omega_{c} \bar P^{c}_{y, c, i} \quad \forall \, y\]
(11)\[\mathcal S^{fix}_{a, y} = \sum_{s, i \leq y} \omega_{a, i, s} \bar P^{s}_{y, s, i} \quad \forall \, y\]
(12)\[\mathcal T^{w, fix}_{a, y} = \sum_{h} \psi_{y, h} \left( \mathbf{CP}^{w}_{y, h} - \mathbf{CP}^{w}_{y, h - 1} \right) \quad \forall \, y\]

One can notice that repurposed conversion technologies fixed costs are taken into account in conversion fixed costs as \(\bar P^{s}_{y, s, i}\) include their capacities.

Moreover, storage fixed costs are only proportional to installed power capacity, not energy capacity.

As withdrawal contract power grows with the hour type index (see TURPE constraints), the TURPE fixed tax is proportional to the power increment of the next hour type in equation (12). No injection is allowed to the ROW grid here.

Variable operation costs

Variable operation costs are given in equation (13) and details are given in (14), (15), (18), (49), and (19).

(13)\[\mathcal{VAR}_{a, y} = \mathcal C^{var}_{a, y} + \mathcal I^{net, var}_{a, y} + \mathcal{T}^{w, var}_{a, y} + \mathcal{F}^{var}_{a, y} + \mathcal A^{var}_{a, y} \quad \forall \, y\]

Where

(14)\[\mathcal C^{var}_{a, y} = \sum_{y, t, c, i} (\Delta T)_{t} \times \left( t^{CO_2}_{a, y} \varepsilon^{CO_2}_{c} + \lambda_{c} \right) \mathbf P^{c}_{y, t, c, i} \quad \forall \, y\]
(15)\[\mathcal I^{net, var}_{a, y} = \sum_{t, r} \left( \gamma^{imp}_{r, t, y} \times \mathbf{I}_{r, t, y} - \gamma^{exp}_{r, t, y} \times \mathbf{E}_{r, t, y} \right) + \left(t^{CO_2}_{a, y} \varepsilon^{CO_2}_{y, r, t} \right) \sum{r, t} I^{net}_{y, r, t} \quad \forall \, y\]

The cost associated with the displacement of flexible demand is defined in (18), with the displaced demand defined in (47).

(16)\[\mathcal{F}^{var}_{a, y} = \sum_{r, t} \lambda^{flex}_{a, y, r, t} \times (\Delta T)_{t} \times \mathbf{U}^{flex, disp}_{a, y, r, t} \quad \forall \, y\]
(17)\[\mathbf{U}^{flex, disp}_{a, r, t, y} \geq d^{flex}_{a, r, t, y} - \mathbf{D}^{flex}_{a, r, t, y} \quad \forall \, a, r, t, y\]

The TURPE cost structure implemented in this model sets the withdrawal proportional tax for electricity imports on the hour type (equation (18)). No injection is modelled for electricity.

(18)\[\mathcal{T}^{w, var}_{a, y} = \sum_{t} \theta_{y, h = \varphi(t)} \, \mathbf I^{}_{y, t, r = electricity} \quad \forall \, y\]

The model has no proportional power capacity or energy capacity costs for storage.

(19)\[\mathcal{A}^{var}_{a, y} = \sum_{t, r} \left( \lambda^{curt}_{a, r, y} \, \mathbf U^{curt}_{y, t, r} + \lambda^{spill}_{a, r, y} \, U^{spill}_{y, t, r} \right) \quad \forall \, y\]

Adequacy constraint

The adequacy is met for each resource at each operation time \(adequacy\). The net generation of the conversion (resp. storage) technologies are aggregated for each time step in the \(U^{net, c}_{y, t, r}\) (resp. \(U^{net, s}_{y, t, r}\)) variable defined in equation \(conv-net-gen-def\) (resp. \(storage-net-gen-def\)).

(20)\[\boxed{ d^{}_{a, r, t, y} + \mathbf{D}^{flex}_{a, r, t, y} + U^{spill}_{a, r, t, y} = U^{net, c}_{a, r, t, y} + U^{net, s}_{a, r, t, y} + I^{net}_{a, r, t, y} + \mathbf U^{curt}_{a, r, t, y} \quad \forall \, a, r, t, y }\]
(21)\[U^{net, c}_{y, t, r} = (\Delta T)_{t} \times \sum_{c, i} k^{}_{c, i, r} \, \mathbf P^{c}_{y, t, c, i} \quad \forall \, y, t, r\]
(22)\[U^{net, s}_{y, t, r} = (\Delta T)_{t} \times \sum_{a, i, s} \left( k^{in}_{s, i, r} \, \mathbf P^{s, in}_{y, t, s, i} + k^{keep}_{s, i, r} \, \mathbf S^{}_{y, t, s, i} + k^{out}_{s, i, r} \, \mathbf P^{s, out}_{y, t, s, i} \right) \quad \forall \, y, t, r\]

Capacity constraints

The instant power of the conversion technologies is lower than the available installed capacity (23).

(23)\[\mathbf P^{c}_{y, t, c, i} \leq a_{y, t, c, i} \, \bar P^{c}_{y, c, i} \quad \forall\, y, t, c, i\]

As seen above, this model innovates by allowing conversion technologies to be repurposed. For instance, carbon capture can be added to SMR. The retrofit factor \(q_{c1, i1, j, c2, i2}\) links the capacity of technology \((c2, i2 = j, d2)\) derived from the repurposed technology \((c1, i1, d1 = j)\). As \(\beta^{rep} > 0\), the cost minimisation avoids retrofit when the retrofit factor is null.

Considering this, the total installed capacity of \((c, i)\) for operation year \(y\) (\(\bar P^{c}_{y, c, i}\)) is defined as the total installed capacity of technology \((c, i)\) that is not yet decommissioned in \(y\), plus the sum of the capacities which were repurposed into \((c, i)\) that are not yet decommissioned in \(y\) (24).

(24)\[\bar P^{c}_{y, c, i} = \sum_{d > y} \mathbf P^{c, inv}_{c, i, d} + \sum_{c1, i1, j = i, d > y} q^{}_{c1, i1, j, c, d} \, \mathbf P^{c, rep}_{c1, i1, j, c, d} \quad \forall \, y, c, i\]

The total capacity of technology \((c, i)\) being repurposed to other conversion technologies for year \(j\) is lower than the installed capacity of \((c, i, d = j)\) whether the capacity comes from direct investment or retrofit (25). As a consequence, it is possible to chain retrofit investments.

(25)\[\sum_{c2, d2} \mathbf P^{c, rep}_{c, i, j, c2, d2} \leq \mathbf P^{c, inv}_{c, i , d = j} + \sum_{c1, i1} \mathbf P^{c, rep}_{c1, i1, j = i, c, d = j} \quad \forall \, c, i, j\]

The minimum bounds are the invested capacity and the maximum allowed each year by the decision maker (26). This constraint could be related to the deployment rate or to the limited space of the local area, for example.

(26)\[p^{c, min}_{c} \leq \sum_{d} \mathbf P^{c, inv}_{c, i, d} \leq p^{c, max}_{c} \quad \forall\, c, i\]

The same principle applies to retrofit in equation (27).

(27)\[p^{c, min,\, rep}_{i, c} \leq \sum_{c1, i1, j = i, d} \mathbf P^{c, rep}_{c1, i1, j, c, d} \leq p^{c, max,\, rep}_{i, c} \quad \forall \, i, c\]

Storage constraints

The total storage power (resp. energy) capacity for operation year \(y\) is defined as the total power (resp. energy) capacity of \((s, i)\) that is not yet decommissioned in \(y\) in equation \(stor-power-tot-def\) (resp. \(stor-energy-tot-def\)).

(28)\[\bar P^{s}_{y, s, i} = \sum_{d > y} \mathbf P^{s, inv}_{s, i, d} \quad \forall \, y, s, i\]
(29)\[\bar S^{}_{y, s, i} = \sum_{d > y} \mathbf S^{inv}_{s, i, d} \quad \forall \, y, s, i\]

Any resource of the model can be stored in the right storage technology \(s\) is invested in. For all time steps \(t\), the input rate of storage \(P^{s, in/out}_{y, t, s, i}\) is bounded by the total invested power capacity \(\bar P^{s}_{y, s, i}\):

(30)\[\mathbf P^{s, in/out}_{y, t, s, i} \leq \bar P^{s}_{y, s, i} \quad \forall \, y, t, s\]

The total amount of energy in storage \(S_{y, t, s, i}\) should remain lower than the total invested energy capacity \(\bar S_{y, s, i}\):

(31)\[\mathbf S^{}_{y, t, s, i} \leq \bar S^{}_{y, s, i} \quad \forall \, y, t, s, i\]

Invested power and energy capacities are bounded by the minimum and maximum allowed values in equations (32) and \(stor-energy-bounds\).

(32)\[p^{s, min}_{a, i, s} \leq \sum_{d} \mathbf P^{s, inv}_{s, i, d} \leq p^{s, max}_{a, i, s} \quad \forall\, s, i, d\]
(33)\[s^{s, min}_{a, i, s} \leq \sum_{d} \mathbf S^{inv}_{s, i, d} \leq s^{s, max}_{a, i, s} \quad \forall \, s, i, d\]

The total amount of energy in the storage at each time step \(S_{y, t, s, i}\) is defined as the total amount of energy in the storage at the previous time step minus the dissipation plus the loaded energy minus the discharged energy (34). The constraint is cyclic to avoid side effects.

Note that \(P^{s, in}_{y, t, s, i}\) is the power to load 1 MWh into the storage and \(P^{s, out}_{y, t, s, i}\) is discharge power to lower the storage level of 1 MWh.

(34)\[\mathbf S_{y, t, s, i} = \left( 1 - \eta_{a, i, s} \right)^{\frac{(\Delta T)_{t}}{1[h]}} \, \mathbf S^{}_{y, t - 1, s, i} + (\Delta T)_{t} \times ( \mathbf P^{s, in}_{y, t, s, i} - \mathbf P^{s, out}_{y, t, s, i} ) \quad \forall \ y, t, s, i\]

Imports constraints

Imports bound is defined in equation (39). Exports have not been implemented yet. Variables are in energy units (MWh).

(37)\[I^{net}_{y, r, t} = \mathbf I^{}_{y, r, t} - \mathbf E^{}_{y, r, t} \quad \forall \, y, r, t\]
(38)\[R_{y, r, t} = \mathbf I^{}_{y, r, t} + \mathbf E^{}_{y, r, t} \quad \forall \, y, r, t\]
(39)\[\mathbf I^{}_{y, r, t} \leq \pi^{max, imp}_{y, r, t} \quad \forall \, y, r, t\]
(40)\[\mathbf E^{}_{y, r, t} \leq \pi^{max, exp}_{y, r, t} \quad \forall \, y, r, t\]

TURPE constraints

The constraints to implement the costs of the Tarif d’Utilisation du Réseau Public d’Electricité (TURPE) are listed below.

First, the withdrawal power from the ROW grid is bound by the contract power (41).

(41)\[\mathbf I^{}_{y, t, r = electricity} \leq \mathbf{CP}^{w}_{y, \varphi(t)} \quad \forall \, y, t\]

The function \(\varphi\) links the hour of the operation with the TURPE hour type (heure pleine, heure creuse, etc.)

TURPE hour types

TURPE hour type

\(h\) (hour type index)

designation

heure creuse été

1

HCE

heure pleine été

2

HPE

heure creuse hiver

3

HCH

heure pleine hiver

4

HPH

pointe

5

P

The hour type index indicates the criticality of the hour on the grid (see TURPE hour types), and progressive taxes are in place. The regulation imposes that the withdrawal contract power grows with the criticality of the hour: equation (42).

(42)\[\mathbf{CP}^{w}_{y, h} \geq \mathbf{CP}^{w}_{y, h - 1} \quad \forall \, y, h\]

Flexible demand constraints

Flexible demand represents energy services whose consumption timing can be adjusted within certain bounds while preserving the total energy requirement. This includes applications such as electric vehicle charging, thermal storage in buildings, industrial batch processes, and other load-shifting opportunities. The model allows demand to be displaced in time, subject to operational constraints on ramping rates, power bounds, and energy conservation.

Decision Variables

The primary decision variable for flexible demand is \(\mathbf{D}^{flex}_{a, y, t, r}\), which represents the actual scheduled flexible demand at each time step. Additionally, the model defines the displaced demand \(\mathbf{U}^{flex, disp}_{a, y, t, r}\) as an auxiliary variable to quantify deviations from the baseline demand profile.

Adequacy Integration

Flexible demand is integrated into the adequacy constraint (20) by adding it to the baseline demand that must be met by generation sources.

Operational Bounds

The flexible demand at each time step is bounded by user-defined minimum and maximum values, which represent physical or contractual limitations on demand modulation:

(43)\[d^{flex, min}_{a, r, t, y} \leq \mathbf{D}^{flex}_{a, y, t, r} \leq d^{flex, max}_{a, r, t, y} \quad \forall \, a, y, t, r\]

These bounds allow modeling of constraints such as minimum occupancy comfort levels, maximum charging rates, or contractual obligations.

Energy Conservation

While flexible demand can be shifted in time, the total energy consumption over a defined conservation period must equal the baseline demand. This ensures that energy services are ultimately delivered in full:

(44)\[\sum_{t \in T^{cons}_{n}} \mathbf{D}^{flex}_{a, y, t, r} = \sum_{t \in T^{cons}_{n}} d^{flex}_{a, r, t, y} \quad \forall \, a, y, r, n\]

where \(T^{cons}_{n}\) represents the \(n\)-th conservation window containing consecutive time steps spanning \(\tau^{cons}_{a, r, y}\) hours. Conservation periods are not overlapping.

Ramping Constraints

To represent physical or operational limitations on how quickly demand can be adjusted, the model includes ramping constraints that limit the rate of change between consecutive time steps.

The ramp-up constraint limits demand increases:

(45)\[\frac{\mathbf{D}^{flex}_{a, y, t, r} - \mathbf{D}^{flex}_{a, y, t-1, r}}{(\Delta T)_{t}} \leq \rho^{flex, up}_{a, r, y} \times d^{flex}_{a, r, t, y} \quad \forall \ a, y, t > t_0, r\]

The ramp-down constraint limits demand decreases:

(46)\[\frac{\mathbf{D}^{flex}_{a, y, t-1, r} - \mathbf{D}^{flex}_{a, y, t, r}}{(\Delta T)_{t}} \leq \rho^{flex, down}_{a, r, y} \times d^{flex}_{a, r, t, y} \quad \forall \ a, y, t > t_0, r\]

where \(\rho^{flex, up}_{a, r, y}\) and \(\rho^{flex, down}_{a, r, y}\) are the maximum ramp rates expressed as fractions of the baseline demand. These constraints ensure smooth transitions and prevent unrealistic demand oscillations.

Displaced Demand Definition

The displaced demand quantifies the absolute deviation from the baseline demand profile and is used in the cost formulation:

(47)\[\mathbf{U}^{flex, disp}_{a, y, t, r} \geq \left| d^{flex}_{a, r, t, y} - \mathbf{D}^{flex}_{a, y, t, r} \right| \quad \forall \ a, y, t, r\]

In practice, this is linearized as:

(48)\[\mathbf{U}^{flex, disp}_{a, y, t, r} \geq d^{flex}_{a, r, t, y} - \mathbf{D}^{flex}_{a, y, t, r} \quad \forall \ a, y, t, r\]

Combined with the non-negativity of \(\mathbf{U}^{flex, disp}_{y, t, r}\) and cost minimization in the objective function, this formulation ensures that the displaced demand captures the magnitude of temporal shifts.

Variable Costs

The variable costs of flexible demand are proportional to the total displaced demand, reflecting the operational costs or inconvenience associated with shifting consumption away from preferred times:

(49)\[\mathcal{F}^{var}_{a, y} = \sum_{t, r} \lambda^{flex}_{a, r, y, t} \times (\Delta T)_{t} \times \mathbf{U}^{flex, disp}_{a, r, y, t} \quad \forall \ a, y\]

where \(\lambda^{flex}_{a, r, y, t}\) is the flexibility variable cost parameter (currency per MWh displaced). This cost structure incentivizes the model to minimize demand shifting unless there are sufficient system-level benefits, such as utilizing cheaper generation or avoiding peak grid charges.

The flexible demand variable costs are included in the total variable operation costs in equation (13).