内点法最优潮流matlab程序
一、概述最优潮流问题
1.最优潮流和基本潮流的比较潮流计算可以归结为针对一定的扰动变量p(负荷情况),根据给定的控制变量u(如发电机的有功出力、无功出力或节点电压模值等),求出相应的状态变量x(如节点电压模值及角度),这样通过一次潮流计算得到的潮流解决定了电力系统的一个运行状态。这种潮流计算也可以称之为基本潮流(或常规潮流)计算,一次基本潮流计算的结果主要满足了潮流方程式或变量间等式约束条件

一次潮流计算所决定的运行状态可能由于某些状态变量或者作为u,x 函数的其它变量在数值上超出了它们所容许的运行限值(即不满足不等式约束条件),因而在技术上并不是可行的。工程实际上常用的方法是调整某些控制变量的给定值,重新进行前述的基本潮流计算,这样反复进行,直到所有的约束条件都能够得到满足为止。这样便得到了一个技术上可行的潮流解。

由于系统的状态变量及有关函数变量的上下限值间有一定的间距,控制变量也可以在其一定的容许范围内调节,因而对某一种负荷情况,理论上可以同时存在为数众多的、技术上都能满足要求的可行潮流解。每一个可行潮流解对应于系统的某一个特定的运行方式,具有相应总体的经济上或技术上的性能指标(如系统总的燃料消耗量、系统总的网损等),为了优化系统的运行,就有需要从所有的可行潮流解中挑选出上述性能指标为最佳的一个方案。而这就是本节要讨论的最优潮流所要解决的问题。

因此所谓最优潮流,就是当系统的结构参数及负荷情况给定时,通过控制变量的优选,所找到的能满足所有指定的约束条件,并使系统的某一个性能指标或目标函数达到最优时的潮流分布。

综上所述,最优潮流和基本潮流比较,有以下不同点:
(1)基本潮流计算时控制变量u是事先给定的;而最优潮流中的u则是可变而待优选的变量,为此在最优潮流模型中必然有一个作为u优选准则的目标函数。
(2)最优潮流计算除了满足潮流方程这一等式约束条件之外,还必须满足与运行限制有关的大量不等式约束条件。
(3)进行基本潮流计算是求解非线性代数方程组;而最优潮流计算由于其模型从数学上讲是一个非线性规划问题,因此需要采用最优化方法来求解。
(4)基本潮流计算所完成的仅仅是一种计算功能,即从给定的u求出相应的x;而最优潮流计算则能够根据特定目标函数并在满足相应约束条件的情况下,自动优选控制变量,这便具有指导系统进行优化调整的决策功能。

二、最优潮流计算的内点法
内点法则是一种在可行域内部寻优的方法。1984年,Karmarkar提出的内点法具有多项式计算复杂性,在求解大规模线性规划问题时,计算速度比单纯形法快50倍以上。 1986年,Gill将内点法推广到非线性规划领域。
1)基本思想
内点法最初的基本思想是希望寻优迭代过程始终在可行域内进行,因此,初始点应取在可行域内,并在可行域的边界设置“障碍”使迭代点均为可行域的内点。
2)存在的困难
但对实际大规模系统,初始可行点的寻找比较困难。
3)改进方法-跟踪中心轨迹内点法
跟踪中心轨迹内点法对此作了改进,只要求在寻优过程中松弛变量和拉格朗日乘子满足简单的大于零或小于零的条件,可代替原来必须在可行域求解的要求,使计算过程大为简化。
4)跟踪中心轨迹内点法详介
最优潮流的非线性优化模型:

首先,通过添加松弛变量,将不等式约束化为等式约束:


然后,把目标函数改造为障碍函数,该函数在可行域内应近似于原目标函数f(x),而在边界时变得很大,因此可得优化问题B:



最后,对式(3-14)(3-19)组成的非线性方程组,用牛顿-拉夫逊法求解。具体从略,(详见王锡凡主编《现代电力系统分析》)

三、算例
1)王锡凡主编《现代电力系统分析》算例3-1系统解构及参数如下图

2)程序运行结果
电压结果

电源出力

节点电压

支路功率

四、matlab程序

% 最优潮流(OPF)的内点法求解
% 说明:本程序包括一个主文件main.m和三个函数文件makeY.m,Coeff.m和dPQ.m,四个文件均应放在MATLAB当前目录下
% 运行main.m,会将计算结果打印到屏幕并保存至文件solution.txt中
clc;
clear;
close all
tic;
%% 算例数据
%节点数据表
%       1  2  3   4        5       6        7        8       9      10      11     12      13      14     15      16    17    18    19
%     节点 区 类 电压     相角    有功     无功     有功    无功   电压   期望    乏值    乏值    并联   并联   远端控 节点  电压  电压
%      号  号 型                  负荷     负荷     出力    出力   基准   电压    上限    下限    电导   电纳  制节点号 号   上限  下限
%N=[  1  1  0 1.0000   0.00     1.60     0.80     0.00    0.00  230.00 1.032   0.0000  0.0000  0.0000  0.0000    0    1    1.1   0.92  1  0 1.0000   0.00     2.00     1.00     0.00    0.00   18.00 1.025   0.0000  0.0000  0.0000  0.0000    0    2     1.1   0.93  1  0 1.0000   0.00     3.70     1.30     0.00    0.00   13.80 1.025   0.0000  0.0000  0.0000  0.0000    0    3    1.1   0.94  1  2 1.0000   0.00     0.00     0.00     4.50    0.00  230.00 1.026   0.0000  0.0000  0.0000  0.0000    0    4     1.1   0.95  1  3 1.0500   0.00     0.00     0.00     4.50    1.45    0.00 0.996   0.0000  0.0000  0.0000  0.0000    0    5     1.1   0.9];%支路数据表
%          1  2  3  4  5  6   7      8       9     10    11     12     13    14    15       16     17   18   19   20   21   22
%          从 到 区 区 电 类 电阻   电抗   电纳  支路额 支路下 支路上  控制  位 变压器最 移相器最 最小 最大 步长 最小 最大 支路
%                号 号 路 型                     定功率 限功率 限功率 母线号 置 终传输比 终移相角 变比 变比      电压 电压  号B=[     1  2  1  1  1  0  0.040  0.2500 0.50      0.    0.    2.      0    0    1.0       0.0    0.0  0.0  0.0  0.0 0.0    11  3  1  1  1  0  0.100  0.3500   0.0      0.    0.    0.65    0    0    1.0       0.0    0.0  0.0  0.0  0.0 0.0    22  3  1  1  1  0  0.080  0.3000 0.50      0.    0.    2.      0    0    1.0       0.0    0.0  0.0  0.0  0.0 0.0    32  4  1  1  1  1  0.0    0.0150   0.0      0.    0.    6.      0    0    1.050     0.0    0.0  0.0  0.0  0.0 0.0    43  5  1  1  1  1  0.0    0.0300   0.0      0.    0.    5.      0    0    1.050     0.0    0.0  0.0  0.0  0.0 0.0    5];%发电机数据表
%             1    2     3    4    5   6       7         8         9
%            发电 节点 有功 无功 有功 无功   二次      一次       常数
%            机号  号  上界 上界 下界 下界   系数      系数        项Gen=[     1    4    8.0  3.0  1.0  -3.0  50.4395  200.4335  1200.64852     5    8.0  5.0  1.0  -2.1  200.55   500.746   1857.201];[num_node,~] = size(N);
[num_branch,~] = size(B);
% 不同类型节点个数
num_PQ = 0;
num_PV = 0;
for k = 1:num_nodeif (N(k,3) == 0)num_PQ = num_PQ+1;endif (N(k,3) == 2)num_PV = num_PV+1;end
end
。。。。。。。。。略

内点法最优潮流matlab程序相关推荐

  1. 电动汽车充电站的最优选址matlab程序

    ​摘要:以规划期内充电站的总成本 (包括投资.运行和维护成本)和网损费用之和最小为目标,考虑了相关的约束条件,构造了电动汽车充电站最优规划的数学模型, 关键词:电动汽车:充电站:选址和定容 1 充电站 ...

  2. 外点法、内点法解约束问题matlab

    外点法 clc m=zeros(1,50); a=zeros(1,50); b=zeros(1,50);%最优点坐标 f0=zeros(1,50);%最优点函数值 syms d x1 x2 e; m( ...

  3. 交流潮流matlab程序,大神们,求个电力系统潮流计算的matlab程序。

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 n=input('Please input n\n'); %n表示系统的节点数 d0=input('Please input d0\n'); %d0表示系 ...

  4. 基于matlab双曲正割脉冲,光纤内脉冲信号传输仿真(包含matlab程序)

    光纤内脉冲信号传输仿真 一.仿真内容 1. 选择一种脉冲波形(高斯脉冲,啁啾高斯脉冲,双曲正割脉冲,超高斯脉冲等), 讨论光脉冲在光纤内传输时,GVD 和SPM 效应是如何结合的,并使用MATLAB ...

  5. 脉冲信号matlab仿真,(完整word版)光纤内脉冲信号传输仿真(包含matlab程序)

    光纤内脉冲信号传输仿真 一.仿真内容 1. 选择一种脉冲波形(高斯脉冲,啁啾高斯脉冲,双曲正割脉冲,超高斯脉冲等), 讨论光脉冲在光纤内传输时,GVD 和SPM 效应是如何结合的,并使用MATLAB ...

  6. 二阶锥松弛在配电网最优潮流计算中的应用(IEEE33节点配电网最优潮流算例matlab程序)(yalmip+cplex)

    二阶锥规划在配电网最优潮流计算中的应用IEEE33节点配电网最优潮流算例matlab程序(yalmip+cplex) 参考文献:二阶锥规划在配电网最优潮流计算中的应用 最优潮流计算是电网规划.优化运行 ...

  7. 电动汽车充电站的最优选址定容MATLAB程序

    电动汽车充电站的最优选址定容MATLAB程序 以规划期内充电站的总成本 (包括投资.运行和维护成本)和网损费用之和最小为目标,考虑了相关的约束条件,构造了电动汽车充电站最优规划的数学模型. 从34个位 ...

  8. Matlab代码:ADMM算法在考虑碳排放交易的电力系统最优潮流中的应用

    Matlab代码:ADMM算法在考虑碳排放交易的电力系统最优潮流中的应用 关键词:交替方向乘子法, ADMM , 最优潮流 ,碳排放, 分布式优化 仿真软件:Matlab软件调用cplex求解器进行求 ...

  9. 天然气潮流计算matlab程序

    天然气潮流计算matlab程序 1 天然气潮流计算理论 由于天然气涉及到流体的运动方程,直接计算非常复杂,因此需要提前做出一些假设来简化计算,经过研究,适当的假设对结果影响很小,因此本文对天然气系统做 ...

最新文章

  1. 允许root远程登录Solaris
  2. mysql分区失败_MYSQL表分区操作错误1503解决方案
  3. python 数组赋值_LeetCode基础算法题第182篇:一维数组的运行总和
  4. LiveVideoStackCon讲师热身分享 ( 二 ) —— 中美互动直播比较
  5. s7-1200跟mysql_让西门子S7-1200直接连接MySQL数据库!!!
  6. creo配置文件config选项详解_5年资深架构师重点聚焦:SpringBoot的配置详解+内嵌Servlet容器
  7. 实体bean里面不要轻易加transient,反序列回来之后会变成null
  8. SpringBoot之AOP之基本使用
  9. 了解SQL Server数据库恢复模型
  10. Pytorch permute()的简单用法
  11. 开启人才进阶之旅,鲲鹏开发者技术沙龙点燃计算行业激情
  12. linux光盘挂载加载过程,如何在Linux系统下挂载光盘
  13. [2018.03.14 T3] 圈圈(cyclic)
  14. Linux i2c-tools使用及调试
  15. 【考题·习题详解】数论知识+数学推导
  16. VUE·17:事件处理之 @keyup、@keydown 等键盘按键触发及 @keyup.enter 等别名
  17. word 如何设置页码?分页?分节?
  18. C++中流控制函数 setw() setfill() setbase() setprecision()
  19. 实验十 基于Simulink的爬山法MPPT技术仿真
  20. 程序员如何从技术岗转为技术管理层

热门文章

  1. 大学计算机教程 曾俊,大学计算机基础教程:曾俊//李柳柏 : 电子电脑 :计算机技术 :计算机原理与基础 :浙江新华书店网群...
  2. 代码随想录回溯算法——重新安排行程
  3. Matlab2012b licence失效解决办法
  4. 微知库计算机应用基础,《现代职业教育》杂志2021年第2期改革探索实践栏目重点选题...
  5. HTA 调用bat脚本
  6. Linux 音频回环播放(alsaloop)
  7. 音乐:什么样的音乐对人“有帮助”
  8. html制作闪动字,HTML最简单的文字闪烁代码
  9. 2019年最新面试动脑学院安卓 笔记安卓高级进阶-连接天天模拟器和adb常用命令
  10. 机器学习中qa测试_机器学习项目测试怎么做?(看实例)