As the world transitions to cleaner, decentralised power, a major question emerges: how do we design renewable energy systems that are both cost-effective and reliable?
Solar output varies, batteries have performance limits, demand fluctuates, and backup resources carry different costs. Linear programming turns the question of how much solar, storage and backup to install — and how to operate it hour by hour — into a single structured optimisation: decision variables, an objective, and constraints. The solver returns both the optimal capacity mix and the optimal dispatch schedule.
Solar output varies with cloud cover, batteries have performance limits, demand fluctuates, and backup resources all carry different costs. Choosing the right mix of technologies — and deciding how to operate them over time — is not simple. This is exactly the type of challenge that linear programming (LP) was built to solve.
For decades, LP has been used in the energy industry for tasks like generator scheduling and hydro optimisation. Today, those same optimisation principles are essential for renewable-heavy systems.
Linear programming excels at problems that involve multiple resources, capacity limits, costs or emissions to minimise, demand to satisfy, and physical constraints to obey. LP models combine decision variables, an objective function, and constraints related to productive capacity and resource limits. These map perfectly onto renewable energy systems.

This geometric view helps clarify how LP identifies the “best” solution inside a space of feasible ones — a valuable mental model for understanding renewable system design.
When designing a renewable-powered site, planners must address key questions: How much solar PV should we install? How large should the battery be? Should we include a generator, or rely on the grid for backup? How do we control cost while maintaining reliability?
A big part of the challenge arises from mismatched timing: demand peaks in the morning and evening, while solar peaks around midday.

This mismatch is why renewable systems can’t simply be sized by rule of thumb — and why LP is essential.
LP turns renewable-system design into a clear optimisation model:
1. Define the decision variables — kW of solar, kWh of storage, generator capacity, hour-by-hour output levels, grid import/export.
2. Define an objective function — typical goals include minimising total cost over the system lifetime, minimising fuel use, minimising emissions, or maximising reliability.
3. Add constraints:
Once all these elements come together, the LP solver can determine both the optimal capacity mix and the optimal operating schedule.
Below is an example of what LP can produce — a full, hour-by-hour dispatch plan using solar, storage, a generator, and grid import to meet demand at minimum cost.

This is LP at work: transforming variable supply and variable demand into a coherent, cost-optimal plan.
Renewable capacity planning can seem complex — and it is. Solar, storage, generators, and grid connections all behave differently, cost differently, and interact in subtle ways. But linear programming turns this complexity into a structured optimisation problem, letting planners build systems that are clean, cost-effective, reliable, future-proof — and mathematically justified. LP may be decades old, but in the age of renewables, it has never been more relevant.
These are exactly the kinds of complex, multi-layered optimisation challenges we love. Where others see variability, uncertainty and thousands of interacting constraints, our energy quants and optimisation specialists see a mathematical puzzle waiting to be solved — turning capacity-planning problems into elegant, cost-optimal solutions. It’s the same instinct behind treating dispatch as a design choice.
Renewable system sizing, storage planning, generator scheduling, tariff optimisation — or any energy capacity modelling problem. We'd love to help.