Victor, Yes, pretty much that's it. If you are going to code this, I'd suggest expressing B in terms of the incidence matrix and branch susceptance. You have to be really careful when calculating DF matrix.
B = S*Bd*S' DF = -S'*Bd*inv(S*Bd*S') where Bd is a diagonal matrix of branch susceptances in the same order as branches in S. Of course, if your B is singular you need a slack bus and appropriately modify Bd and S. The most basic optimization formulation becomes: min( sum(cost(Pgi)) over Pgi such that Pmin <= PTDF*Pinj <= Pmax // branch flow constraints Pgimin <= Pgi <= Pgimax On Fri, Aug 9, 2013 at 5:23 PM, Victor Hugo Hinojosa M. < [email protected]> wrote: > Dear Jovan and Ray,**** > > Thanks a lot for the very interesting discussion. I would like to include > an analysis accomplished to determine the performance of the both > methodologies. I realize that this idea was no new, so I would like to find > out references or studies to understand the state of the art.**** > > I would like to keep on working and researching in this very interesting > field. I will wait your comments and observations with respect to the > results and the proposal.**** > > Regards,**** > > Vh**** > > * * > > *DC Optimal power flow (DC-OPF)* > > The DC-OPF problem is concerned with the optimization of steady-state > power generation, subject to various equality and inequality constraints. > Mathematically, the convex programming problem may be represented as:**** > > ******** > > Subject to the following linear constraints:**** > > ******** > > ******** > > ******** > > Where:**** > > **** represents a scalar objective function to be minimized. In DC-OPF > problem, this function is the fuel cost of thermal units that can be > expressed in terms of real power generation, and it is modeled by a > quadratic cost function.**** > > **** denotes the linear equality constraint called nodal power balance > constraint, which includes the network DC power flow equations.**** > > **** is the vector of the inequality constraints with lower limit and > upper limit. These constraints are active power flow in the transmission > lines and active generation capabilities. Using DC network modeling, it is > quite known that real power flows are linear functions of voltage angles.* > *** > > **** is the set of control variables (called decision variables in the > optimization theory). In the DC-OPF problem, these variables are the real > power output for each generator. In addition, there are dependent variables > in the problem, which depend on control variables. Considering the DC power > flow problem, the voltage phase angles variables are considered as > dependent variable, where the angle in the slack bus is known.**** > > Matpower includes a primal-dual interior point solver called MIPS. It is > implemented in Matlab code [12, 19]. **** > > In DC-OPF problem, the decision variables are the following:**** > > ******** > > In this proposed methodology, the study considers that the optimization > problem can be solved using the power generation as decision variables > (control variables), therefore the DC-OPF problem can be formulated as:*** > * > > ******** > > Subject to:**** > > ******** > > ******** > > ******** > > Where:**** > > The nodal power balance constraint is not needed, just the global supply > demand balance constraint, and **** is the total load of the customers.*** > * > > **** is the vector of active power flow in the transmission lines and > active generation capabilities.**** > > It is very important to notice that the real power flows can be computed > as [PLj-k]=[b]*[S]*[****]. Where, the [b] matrix is the susceptance of > line *j* (****) and non-diagonal elements are zero, and [S] is the > bus-branch incidence matrix. Besides, the power flow equations in the > matrix form and the corresponding matrix relation for flows through > branches are represented by [****]=*****[P], where [B] is the admittance > matrix with [R]=0, and [P] is bus active power injections for buses *j*. > In addition, we need to define the slack bus, so that the row reference in > [P], and the reference row and column of [B] are disregarded. When you > consider that the power flows are computed by the following matrix as [P > Lj-k]=[b]*[S]******[P], it is very easy to figure out the linear > sensitivity factors called PTDF in the literature, where [PTDF]=[b]*[S]*** > **. These factors show the approximate change in the line flow for > changes in generation on the network configuration.**** > > Finally, for a given value of ****, the Lagrangian for the equality > constrained problem can be formulated as follow:**** > > ******** > > Where:**** > > **** is the number of generators and **** is the number of power lines.*** > * > > **** variable is a real value, and it gives information about the > marginal cost in the global node; i.e., the nodal price of the slack bus. [ > ****] is the Lagrange value associated to both constraints real power > flow in the transmission lines and active power capacity.**** > > The main advantage of this study is the reduction of the dimension. This > is very important when the algorithm needs to compute **** and ****.**** > > We have programmed the same algorithm (MIPS) to solve the proposed problem > considering the same tolerance criterions (feasibility, gradient, > complementary, cost condition, and maximum number of iterations).**** > > *Results* > > Five test power systems are considered to inspect and verify the proposed > algorithm, and the simulations results have been compared with the solution > obtained through Matpower (power and angles as decision variables).**** > > The data of the IEEE systems (14-bus, 30-bus, 39-bus, 57-bus and 118-bus) > data were obtained from Matpower. Several experiments were conducted to > determine the performance of the proposed methodology in different power > systems (small and medium dimension). In the next Table is shown the > results obtained by Matpower and the proposal accomplished.**** > > **** > > The results show that both methodologies obtained the same solution in the > DC-OPF problem.**** > > As mentioned Jovan Ilic, it is possible to compute the bus angle in each > bus to draw some conclusions about the system. Moreover, when there is > congestion in the transmission lines, it is possible to compute the nodal > prices using the incremental cost for each generator.**** > > ** ** > > ** ** > > *De:* [email protected] [mailto: > [email protected]] *En nombre de *Ray Zimmerman > *Enviado el:* lunes, 05 de agosto de 2013 13:08 > > *Para:* MATPOWER discussion forum > *Asunto:* Re: DC-OPF on matpower**** > > ** ** > > Thanks, Jovan, for this interesting discussion. You've convinced me. After > a bit more thought, I believe I agree with you after all. The formulations > should be equivalent.**** > > ** ** > > -- **** > > Ray Zimmerman**** > > Senior Research Associate**** > > B30 Warren Hall, Cornell University, Ithaca, NY 14853**** > > phone: (607) 255-9645**** > > > > **** > > ** ** > > ** ** > > On Aug 5, 2013, at 11:34 AM, Jovan Ilic <[email protected]> wrote:**** > > > > **** > > ** ** > > Ray,**** > > ** ** > > No and yes. **** > > ** ** > > No, I am not sure what you mean by "line constraints will be affected by > the choice**** > > of slack bus". A line constraint is either binding or not and slack bus > choice will not**** > > affect it. It can be shown mathematically and is clear intuitively, once > you show it**** > > mathematically, I suppose. :-) **** > > ** ** > > Yes, this formulation will give you a single LMP (at the slack bus) and > line Lagrange multipliers (mus) and then you use the found LMP, DF and mus > to calculate the rest **** > > of LMPs:**** > > ** ** > > LMPs = ones(Nb-1,1)*LMP + transpose(DF)*mu**** > > ** ** > > You can derive this from KKT conditions. You can also find a hint of it > in Felix Wu's **** > > paper "Folk Theorems in Power Systems" or something like that. If I > remember the**** > > paper, Felix uses relative LMPs or something like that, stopped half way > if you ask**** > > me.**** > > ** ** > > Jovan Ilic**** > > ** ** > > ** ** > > On Mon, Aug 5, 2013 at 11:12 AM, Ray Zimmerman <[email protected]> wrote:** > ** > > For an unconstrained network, I agree that the slack is irrelevant and the > problems are equivalent.**** > > ** ** > > However, I don't think the problems are equivalent when you have binding > line constraints. Then I'm pretty sure the line constraints will still be > affected by the choice of slack used when forming the PTDF.**** > > ** ** > > Another clue that the problems are not equivalent in this case is that it > seems there is no way to recover the nodal prices from the PTDF-based > approach. In a case with a single binding line limit you only have two > non-zero constraint shadow prices in the problem (using PTDF), but you can > have many different nodal prices from the traditional DC OPF.**** > > ** ** > > -- **** > > Ray Zimmerman**** > > Senior Research Associate**** > > B30 Warren Hall, Cornell University, Ithaca, NY 14853**** > > phone: (607) 255-9645**** > > ** ** > > ** ** > > On Aug 5, 2013, at 10:52 AM, Jovan Ilic <[email protected]> wrote:**** > > > > **** > > ** ** > > Ray, **** > > ** ** > > Yes, as I mentioned in my original post, dense PTDF is the drawback of > this **** > > approach and you might want to know bus angle differences to draw some *** > * > > conclusions about the system but if you code it carefully you already have > **** > > what you need to quickly calculate the angles. **** > > ** ** > > However, there is no approximation introduced by the slack bus, with or ** > ** > > without the slack bus the result is the same. **** > > ** ** > > I coded it with both LP and QP and the results are the same, well if the > cost **** > > functions are all linear of course. It takes about an hour to code it in > any **** > > language and test it if you already have decent LP/QP functions. **** > > ** ** > > I actually expected people to question the method because I said that > nodal **** > > equations are not needed, just the global supply demand balance > constraint. **** > > It seems that I underestimated the audience. :-)**** > > ** ** > > Jovan Ilic**** > > ** ** > > ** ** > > On Mon, Aug 5, 2013 at 9:59 AM, Ray Zimmerman <[email protected]> wrote:*** > * > > MATPOWER does not use the dense distribution factor matrix (PTDF) to > formulate the DC OPF. One other important distinction is that a PTDF matrix > is an approximation that requires an assumption about the slack. The sparse > formulation that includes the voltage angles does not require this > assumption. So the two formulations are not quite equivalent.**** > > ** ** > > In MATPOWER, the DC OPF is formulated as an LP or QP problem and the > algorithm used to solve it varies depending on the solver chosen via the > OPF_DC_ALG option.**** > > ** ** > > -- **** > > Ray Zimmerman**** > > Senior Research Associate**** > > B30 Warren Hall, Cornell University, Ithaca, NY 14853**** > > phone: (607) 255-9645**** > > > > **** > > ** ** > > ** ** > > ** ** > > On Aug 5, 2013, at 9:17 AM, Victor Hugo Hinojosa M. < > [email protected]> wrote:**** > > > > **** > > Dear Jovan,**** > > Thank you so much for your message.**** > > I agree with your comment. Considering that > [Y_bus]*[theta_angles]=[Power_injections], the balance nodal constrained > can be formulated as a global balance power equation. Hence, the balance > nodal matrix is reduced to one single equation.**** > > In addition, the power transmission constraint depends on the angles, but > the angles can be transformed using the equation > [theta_angles]=[Y_bus]^-1*[Power_injections], so the transmission > constraint depends on the power injections, and it’s easy to find out about > the distribution factors. With this proposal, it’s possible to model the > DC-OPF problem using only the power generation as decision variable. > Therefore, there are many advantages of this proposal.**** > > Do you address the DC-OPF problem with this proposal?**** > > I’d like to know which algorithm is applied by you to solve the OPF > problem?**** > > Best Regards,**** > > Víctor**** > > **** > > *De:* [email protected] [mailto: > [email protected]] *En nombre de *Jovan Ilic > *Enviado el:* jueves, 01 de agosto de 2013 20:11 > *Para:* MATPOWER discussion forum > *Asunto:* Re: DC-OPF on matpower**** > > **** > > **** > > Victor,**** > > **** > > Yes, you can do it without bus angles but you'd end up with a formulation > with **** > > a dense distribution factors matrix which could be a problem for large > systems. **** > > One place where you can speed up such DCOPF is by using a global power *** > * > > balance equation instead of nodal equations. You do not need nodal > balance **** > > equations if you have the distribution factors matrix. An added benefit > of **** > > using the distribution matrix would be loss estimation. **** > > **** > > I rarely use Matpower so I am not sure which algorithm Ray uses. Maybe I * > *** > > should've let Ray answer the question since it was addressed to him. **** > > **** > > Jovan Ilic**** > > **** > > **** > > **** > > **** > > **** > > On Thu, Aug 1, 2013 at 7:06 PM, Victor Hugo Hinojosa M. < > [email protected]> wrote:**** > > Dear Dr Zimmerman, > I’d like to ask you a question about the DC optimal power flow (DC-OPF). > The optimization problem in Matpower is modeled using as decision variables > the active power generation and the bus voltage angles. These variables are > solved using the primal-dual interior point solver (MIPS) considering that > both variables are independent. When the AC transmission system is > transformed using the DC approach, the voltage angles and the active power > injections are related through the Y_bus matrix, so the decision variables > are dependent. It’s possible to model the DC-OPF problem using only the > power generation as decision variable?**** > > Thank you so much for your comments in advance.**** > > Best Regards,**** > > Víctor**** > > **** > > **** > > ** ** > > ** ** > > ** ** > > ** ** > > ** ** >
