Power balance in a microgrid
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am trying to optimize the sizing of a microgrid which caters for the demand with renewables (solar PV and wind), diesel generator (DG) and a battery. It has a dump load, to absorb excess generation if exists after catering the power demand and charging the battery. I use the power balance equation as follows (which is an equality constraint in the optimization problem). Here, at any time step (k), power balance equation is as follows. U_dg is a binary variable to denote the switch on/off condition of the DG. I have formed the power balance (total generation = total demand) as a part of 'nonlinconstr' function.
[c,ceq] = nonlinconstr(x) (Reference: https://mathworks.com/help/optim/ug/nonlinear-equality-and-inequality-constraints.html?s_tid=mwa_osa_a)
I have used the static penalty approach to handle the constraints. My final fitness function is defined as Fitness_function = Fitness_function + nonlinconstr(x); However, I observed that, this equality constraint is always violated and therefore, I get extremely high costs for the fitness function.
I realized that similar problems have been solved by many researchers. It is much appreciated, if someone can assist me in solving this issue.
Is there any other way to approach this, other than the static penalty approach?
% total generation - total demand = 0;
ceq = P_pv(k)+P_wind(k)+P_battery(k)+P_dg(k)*U_dg(k)-(P_load(k)+P_dump(k));
0 commentaires
Réponses (1)
Alan Weiss
le 15 Juil 2022
Usually the way to include this type of equality constraint is to use the approach shown in Integer and Logical Modeling. For an example, see Optimal Dispatch of Power Generators: Problem-Based or the equivalent Optimal Dispatch of Power Generators: Solver-Based.
Alan Weiss
MATLAB mathematical toolbox documentation
3 commentaires
Voir également
Catégories
En savoir plus sur Get Started with Optimization Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!