基于遗传算法的煤矿高压电网自适应并行短路计算方法与流程

文档序号:12599751阅读:232来源:国知局

本发明公开了基于遗传算法的煤矿高压电网自适应并行短路计算方法,属于煤矿高压供电网络短路计算领域。



背景技术:

35kV以上的电力网中存在多个电源,属于复杂闭式电网,短路计算较为复杂;而矿井高压供电系统为6kV或10kV等级,两个电源应采用分列运行方式,或者是一路使用一路备用,属于单电源开式电网,其短路计算可采用比较简单的绝对值法或相对值法。

当前,已有的基于关联矩阵的矿井高压供电系统自动短路计算方法主要是基于关联矩阵完成连通性分析,获得矿井高压供电系统的网络拓扑结构,以此为基础实现供电系统的自动短路计算功能。该方法构建的拓扑分析模型结构清晰,扩展性强,能够较好地实现矿井高压电网自动短路计算功能。

但在矿井高压供电系统中节点数量较多,基于关联矩阵完成矿井高压电网自动短路计算时间复杂度较高,时间开销大,为了能够以较少的时间开销基于关联矩阵完成矿井高压电网的自动短路计算,在文献“一种煤矿高压电网短路电流并行计算方法”中基于先到先服务的调度原则实现了煤矿高压短路电流的并行计算,在一定程度上降低了短路计算的时间开销;但在该文献中其以每一个支路节点短路电流计算为基本对象按照先到先服务的调度原则实现并行调度,而每一个支路节点短路电流计算过程所耗费时间并不相同,有的支路节点短路电流计算涉及的支路节点数量多,有的涉及的支路节点数量少,按照先到先服务原则可能会导致不同线程结束时间差异较大,造成调度效率下降;为了能够更加有效地解决这一问题,本发明提出了基于遗传算法的煤矿高压电网自适应并行短路计算方法,该方法基于煤矿高压供电系统结构特点及当前系统允许建立的线程数量,充分利用遗传算法和并行计算技术,实现煤矿高压电网的短路电流并行计算。

本发明提出的基于遗传算法的煤矿高压电网自适应并行短路计算方法基于遗传算法和并行计算技术构造煤矿高压电网的短路计算调度模型,使每个线程在短路计算过程中处理的支路节点数量能够尽量相同,从而能够使各个线程依据支路节点编号查询其直接控制线路参数,以及计算对应线路阻抗的时间能够基本一致,有效提高并行短路计算调度效率。



技术实现要素:

依据每条支路节点直接控制的供电线路建立支路节点-供电线路邻接表T;通过该邻接表,可以依据相应的支路节点编号查询到其直接控制的供电线路基本参数,包括供电线路长度、供电线路型号、单位电阻和单位电抗信息;并设置煤矿高压供电系统最大运行方式下的系统电抗和最小运行方式下的系统电抗;设置煤矿高压供电系统的电源支路节点,电源支路节点是指由上级供电部门直接供电的支路节点。

依据矿井高压供电系统的供电关系,生成母线节点和支路接点的关联矩阵和。针对矿井高压供电系统,以变电所母线为母线节点、以高压出线开关连接的支路作为支路节点,如果母线节点有个,支路节点有个,则依据矿井高压供电系统图中电气设备之间的连接关系生成母线节点和支路节点的关联矩阵A(行列,以母线节点顺序号为行号,以支路节点顺序号为列号)和(行列,以支路节点顺序号为行号,以母线节点顺序号为列号),具体步骤如下:

步骤1)、在生成关联矩阵的过程中,中第行第列的元素用表示,如果第行的行号对应的母线节点由第列的列号对应的支路节点供电,则,否则,关联矩阵;

步骤2)、在生成关联矩阵的过程中,中第行第列的元素用表示,如果第行的行号对应的支路节点由第列的列号对应的母线节点供电,则,否则,关联矩阵。

默认情况下,矩阵元素与矩阵元素乘法运算为二进制与运算,元素与元素的加法运算为二进制或运算;依据单向图的连通性,计算原始的第1级支路节点与支路节点供电关联矩阵和变电所级别,其具体计算步骤如下:

步骤1)、依据支路节点上出线开关的开闭状态,生成支路节点开关状态矩阵,包含个元素,,;在中,第个元素对应的开关状态闭合,则;反之,则;

步骤2)、将中的每个元素和矩阵中每行的个元素进行与运算后得到母线节点和支路节点的关联矩阵(行列),;将S中的每个元素和矩阵中每列的个元素进行与运算后得到支路节点和母线节点的关联矩阵(行列),;

步骤3)、依据单向图的连通性,由关联矩阵和关联矩阵得到原始的第1级支路节点与支路节点供电关联矩阵;则该矿井高压供电系统的关联矩阵,其第行第列的元素用表示,则;

步骤4)、设置矿井高压供电系统的电源支路节点,电源支路节点是指由上级供电部门直接供电的支路节点;将变电所级别设置为1,将所有电源支路节点加入到集合中;

步骤5)、从集合中取出一个元素;

步骤6)、将该元素顺序号作为列号在关联矩阵中找到相应的列,将该列中所有非0元素行号对应的支路节点加入到集合中,执行步骤7);

步骤7)、如果集合中存在未被遍历的元素,执行步骤5);如果集合中不存在未被遍历的元素,执行步骤8);

步骤8)、如果集合不为空,将集合中的所有元素加入到集合中,将中保存的数值加1,执行步骤5);如果集合为空,则即是该矿用高压电网对应的变电所级别。

依据原始的第1级支路节点与支路节点供电关联矩阵和变电所级别计算支路节点与支路节点供电关系的关联矩阵(行列),在矩阵中可以描述某支路节点是由哪些支路节点供电的,其第行第列的元素用表示,如果某支路节点由支路节点供电,则,反之则;关联矩阵,其具体计算步骤如下:

步骤1)、因为采用的是单向图结构,所以在计算获得的支路节点与支路节点供电关联矩阵中,支路节点与支路节点之间的供电关系未能得到正确反映;因此对获得的供电关联矩阵需要使用修正矩阵进行修正,支路节点和支路节点的修正矩阵表示每一个支路节点都可由支路节点供电,其第行第列的元素用表示,,且,将中的每个元素和修正矩阵中每行的个元素进行与运算后得到最终的支路节点和支路节点的修正矩阵;

步骤2)、依据矩阵和修正矩阵得到第1级的支路节点与支路节点供电关联矩阵;

步骤3)、支路节点与支路节点供电关联矩阵,其第行第列的元素用表示,;

步骤4)、设置矿井高压供电系统的电源支路节点,电源支路节点是指由上级供电部门直接供电的支路节点;电源支路节点矩阵用(行1列)表示,,其中,。矩阵(行1列)表示需要完成短路点计算的节点集合矩阵,,其中,则表示其对应的支路节点需要进行短路计算;表示其对应的支路节点不需要进行短路计算,对应该支路节点的顺序号。,且;

步骤5)、将矩阵中每列的个元素和矩阵中的每个元素进行与运算后得到支路节点和支路节点供电关系的最终关联矩阵(行列),。

将煤矿高压供电系统中所有支路节点加入到集合中,则集合中包含个支路节点。

针对支路节点集合中的每一个支路节点基于关联矩阵获取其短路电流计算所需的支路节点集合,其中;具体过程如下:支路节点直接控制的线路为线路,当线路的线路末端发生短路时,因线路由支路节点直接控制,因此首先在最终供电关联矩阵中找到支路节点对应的行,然后找到该行中数值为1的所有元素对应的列号,再依据获得的列号将其对应的支路节点加入到支路节点集合中,是所有给线路供电的支路节点集合。

获取系统当前活动线程数 A1及系统允许建立的最大线程设置数B1,则允许建立线程数V=B1-A1,基于遗传算法将n个支路节点集合分别加入到V个队列中,其中,;具体执行步骤如下:

步骤1)、获取系统当前活动线程数A1及系统允许建立的最大线程设置数B1,则允许建立线程数V=B1-A1;支路节点集合包含的支路节点数量表示为,遗传算法进化代数;

步骤2)、支路节点集合对应的分组用表示,n个支路节点集合需要被划分成V组,分别加入到V个队列中,其中,;如果支路节点集合被划分到第组,则集合对应的分组,支路节点集合将被加入到队列中;

步骤3)、n个支路节点集合对应的分组个体用表示,,其中是随机整数,,;依据个体定义随机生成个个体,其中,;将个个体加入到集合中;针对集合中的每一个个体,执行步骤4);

步骤4)、依据个体生成矩阵,;初始情况下矩阵中每个元素的数值等于0;的数值设置为1,针对个体中的每一个元素执行步骤5);

步骤5)、如果,则将的数值和相加后得到数值TEMP,然后将TEMP的数值赋予;将的数值加1,如果,则执行步骤6);如果,则重复执行步骤5);

步骤6)、针对每一个个体,计算每个个体的适应度,为;

步骤7)、将遗传算法进化代数的数值加1,如果集合中存在某个体的适应度,或者是大于500时,则执行步骤8);否则,依据集合中每个个体的适应度,完成个体淘汰、交叉和变异,得到新的个体集合;将集合设置为空,将集合中的所有个体加入到集合中,将集合设置为空,针对集合中的每一个个体执行步骤4);

步骤8)、针对集合中满足条件的个体的每一个元素执行步骤9);

步骤9)、如果,则将对应的支路节点集合将被加入到队列中。

创建V个新的空闲线程,将V个新的空闲线程加入到空闲线程队列中,针对每个队列中保存的支路节点集合,完成每个支路节点对应短路电流的并行计算,具体执行步骤如下:

步骤1)、创建V个新的空闲线程,将V个新的空闲线程加入到空闲线程队列中,的初始值设置为1;

步骤2)、从空闲线程队列中取出一个空闲线程,将队列绑定在新建的空闲线程中,将此线程设置为繁忙线程,加入到繁忙线程队列B2中,执行步骤3);

步骤3)、如果,将的数值加1,执行步骤2);如果,执行步骤4);

步骤4)、针对繁忙线程队列B2中的每一个繁忙线程,执行步骤5);

步骤5)、取出所述绑定队列的繁忙线程,执行该繁忙线程,该线程针对队列中包含的每一个支路节点集合执行步骤6);

步骤6)、该支路节点集合用表示,如果在集合中不存在电源支路节点,则说明该支路节点集合对应的线路没有电源供电,不进行短路计算;如果集合中存在电源支路节点,则说明该支路节点集合对应的线路有电源供电,则执行步骤7);

步骤7)、在支路节点-供电线路邻接表T中查询集合中每个支路节点对应的供电线路信息;依据获取的每条供电线路长度、单位电阻和单位电抗计算出每条线路的电阻和电抗,执行步骤8)和9);

步骤8)、根据每条线路的电阻,电抗和预先设置的最大运行方式下的系统电抗计算获得最大运行方式下的总电阻和总电抗,然后依据高压供电系统短路点所在线路的平均电压和总电阻、总电抗计算最大运行方式下的三相短路电流;

步骤9)、根据每条线路的电阻,电抗和预先设置的最小运行方式下的系统电抗计算获得最小运行方式下的总电阻和总电抗,然后依据高压供电系统短路点所在线路的平均电压和总电阻、总电抗计算最小运行方式下的二相短路电流。

附图说明

图1是煤矿高压供电系统图。

具体实施方式

依据附图1所示的煤矿高压供电系统图,计算母线节点和支路接点的关联矩阵和;其中,,。

在附图1所示的煤矿高压供电系统图中,依据单向图的连通性,计算原始的第1级支路节点与支路节点供电关联矩阵和变电所级别,其具体计算步骤如下:

步骤1)、依据支路节点上出线开关的开闭状态,生成支路节点开关状态矩阵;在附图1所示的煤矿高压供电系统图中,

步骤2)、将中的每个元素和矩阵中每行的个元素进行与运算后得到母线节点和支路节点的关联矩阵(行列),将S中的每个元素和矩阵中每列的个元素进行与运算后得到支路节点和母线节点的关联矩阵(行列);在附图1所示的煤矿高压供电系统图中,,;

步骤3)、依据单向图的连通性,由关联矩阵和关联矩阵得到原始的第1级支路节点与支路节点供电关联矩阵,则该矿井高压供电系统的关联矩阵;在附图1所示的煤矿高压供电系统图中,;

步骤4)、设置矿井高压供电系统的电源支路节点,电源支路节点是指由上级供电部门直接供电的支路节点;将变电所级别设置为1,将所有电源支路节点加入到集合中;在附图1所示的煤矿高压供电系统图中,;

步骤5)、从集合中分别取出元素、和;

步骤6)、分别将元素、和的顺序号作为列号在关联矩阵中找到相应的列,将该列中所有非0元素行号对应的支路节点加入到集合中,则;将集合中的所有元素加入到集合中,;将中保存的数值加1,;

步骤7)、从集合中分别取出元素,,,,和;

步骤8)、分别将元素,,,,和的顺序号作为列号在关联矩阵中找到相应的列,将该列中所有非0元素行号对应的支路节点加入到集合中,则;将集合中的所有元素加入到集合中,;将中保存的数值加1,;

步骤9)、从集合中分别取出元素,,,,,,,和;

步骤10)、分别将元素,,,,,,,和的顺序号作为列号在关联矩阵中找到相应的列,将该列中所有非0元素行号对应的支路节点加入到集合中,则;将集合中的所有元素加入到集合中,;将中保存的数值加1,;

步骤11)、从集合中分别取出元素,,,,,,和;

步骤12)、分别将元素,,,,,,和的顺序号作为列号在关联矩阵中找到相应的列,将该列中所有非0元素行号对应的支路节点加入到集合中,则集合为空;因此,计算所得的变电所级别的数值等于4。

在附图1所示的煤矿高压供电系统图中,依据原始的第1级支路节点与支路节点供电关联矩阵和变电所级别计算支路节点与支路节点供电关系的关联矩阵,具体执行步骤如下:

步骤1)、依据矩阵和修正矩阵得到第1级的支路节点与支路节点供电关联矩阵,;

步骤2)、支路节点与支路节点供电关联矩阵,则

步骤3)、,且;则:

步骤4)、将矩阵中每列的个元素和矩阵中的每个元素进行与运算后得到支路节点和支路节点供电关系的最终关联矩阵,则

针对支路节点集合中的每一个支路节点基于关联矩阵获取其短路电流计算所需的支路节点集合,其中;具体过程如下:支路节点直接控制的线路为线路,当线路的线路末端发生短路时,因线路由支路节点直接控制,因此首先在最终供电关联矩阵中找到支路节点对应的行,然后找到该行中数值为1的所有元素对应的列号,再依据获得的列号找到对应的支路节点集合,是所有给线路供电的支路节点集合;则在附图1所示的煤矿高压供电系统图中,,,,,,,,,,,,,,,,,,,,,,,,,,。

在附图1所示的煤矿高压供电系统图中,获取系统当前活动线程数 A1及系统允许建立的最大线程设置数B1,则允许建立线程数V=B1-A1,基于遗传算法将n个支路节点集合 分别加入到V个队列中,其中,;具体执行步骤如下:

步骤1)、获取系统当前活动线程数A1及系统允许建立的最大线程设置数B1,则允许建立线程数V=B1-A1;支路节点集合包含的支路节点数量表示为,遗传算法进化代数;

步骤2)、支路节点集合对应的分组用表示,n个支路节点集合需要被划分成V组,分别加入到V个队列中,其中,;如果支路节点集合被划分到第组,则集合对应的分组,支路节点集合将被加入到队列中;

步骤3)、n个支路节点集合对应的分组个体用表示, ,其中是随机整数,,;依据个体定义随机生成个个体,其中,;将个个体加入到集合中;针对集合中的每一个个体,执行步骤4);

步骤4)、依据个体生成矩阵,;初始情况下矩阵中每个元素的数值等于0;的数值设置为1,针对个体中的每一个元素执行步骤5);

步骤5)、如果,则将的数值和相加后得到数值TEMP,然后将TEMP的数值赋予;将的数值加1,如果,则执行步骤6);如果,则重复执行步骤5);

步骤6)、针对每一个个体,计算每个个体的适应度,为;针对附图1所示的煤矿高压供电系统图,如果,且,则其对应的矩阵,对应的个体适应度为2.67;

步骤7)、将遗传算法进化代数的数值加1,如果集合中存在某个体的适应度,或者是大于500时,则执行步骤8);否则,依据集合中每个个体的适应度,完成个体淘汰、交叉和变异,得到新的个体集合;将集合设置为空,将集合中的所有个体加入到集合中,将集合设置为空,针对集合中的每一个个体执行步骤4);

步骤8)、针对附图1所示的煤矿高压供电系统图得到满足条件的个体,针对个体中的每一个元素执行步骤9);

步骤9)、如果,则将支路节点集合将被加入到队列中;

步骤10)、最终得到的队列,,。

创建V个新的空闲线程,将V个新的空闲线程加入到空闲线程队列中,针对每个队列中保存的支路节点集合,完成每个支路节点对应短路电流的并行计算,具体执行步骤如下:

步骤1)、创建V个新的空闲线程,将V个新的空闲线程加入到空闲线程队列中,的初始值设置为1;

步骤2)、从空闲线程队列中取出一个空闲线程,将队列绑定在新建的空闲线程中,将此线程设置为繁忙线程,加入到繁忙线程队列B2中,执行步骤3);

步骤3)、如果,将的数值加1,执行步骤2);如果,执行步骤4);

步骤4)、针对繁忙线程队列B2中的每一个繁忙线程,执行步骤5);

步骤5)、取出所述绑定队列的繁忙线程,执行该繁忙线程,该线程针对队列中包含的每一个支路节点集合执行步骤6);

步骤6)、该支路节点集合用表示,如果在集合中不存在电源支路节点,则说明该支路节点集合对应的线路没有电源供电,不进行短路计算;如果集合中存在电源支路节点,则说明该支路节点集合对应的线路有电源供电,则执行步骤7);

步骤7)、在支路节点-供电线路邻接表T中查询集合中每个支路节点对应的供电线路信息;依据获取的每条供电线路长度、单位电阻和单位电抗计算出每条线路的电阻和电抗,执行步骤8)和9);

步骤8)、根据每条线路的电阻,电抗和预先设置的最大运行方式下的系统电抗计算获得最大运行方式下的总电阻和总电抗,然后依据高压供电系统短路点所在线路的平均电压和总电阻、总电抗计算最大运行方式下的三相短路电流;

步骤9)、根据每条线路的电阻,电抗和预先设置的最小运行方式下的系统电抗计算获得最小运行方式下的总电阻和总电抗,然后依据高压供电系统短路点所在线路的平均电压和总电阻、总电抗计算最小运行方式下的二相短路电流。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1