基于CAFSA的水库发电优化调度双层并行计算

2016-03-26 06:15纪昌明张验科
中国农村水利水电 2016年5期
关键词:鱼群时段单体

纪昌明,吴 昊,黄 锋,张验科

(1.华北电力大学可再生能源学院,北京 102206;2. 中水珠江规划勘测设计有限公司,广州 510610)

0 引 言

依据水库优化调度的基本约束条件和最优原则,其基本任务就是使水库在一定时期内,制定和实现符合实际情况较优的运行方式[1]。然而水库发电优化调度是一个具有较多约束条件、动态的复杂非线性优化问题,目前,国内外学者们对其研究方法主要分为两类:一类是以线性规划法、非线性规划法、动态规划法[2]、逐次逼近法[3]、逐步优化法[4]等为典型代表的传统方法,这些方法的主要缺点是多约束条件难以处理、算法复杂、计算时间较长等;另一类是以遗传算法[5]、蚁群算法[6]、粒子群算法[7]、模拟退火算法[8]、人工神经网络算法[9]等为典型代表的具有启发式特点的智能方法,虽然这类方法同样可以对水库运行进行优化,然而存在诸如收敛不稳定、容易陷入局部最优解的特点。

随着人工智能学科的飞速发展,2002年,李晓磊[10]等提出了人工鱼群算法 ( Artificial Fish Swarm Algorithm,AFSA)。目前,关于AFSA的研究已经渗透到水库及水库群优化调度领域,并且取得了丰硕的科研成果,已成为水库及水库群优化调度领域的研究热点之一。

这种算法具备天然的自组织特征,是通过分析鱼类的活动作为出发点进行寻优的,是基于动物行为的人工智能方法之一。作为一种新型的仿生优化算法,在空间搜索相关问题上具有一定的自适应能力,对参数和初值的设定不过于苛刻,鲁棒性强、简单并易于实现,并且具有并行处理问题的能力。但是该算法后期的寻优精度不高,容易陷入求得局部极值的状况,并且随着搜索盲目性扩大,搜索速度变慢,耗费时间较多。

针对AFSA后期搜索易陷入局部极值的问题,结合混沌优化算法[11](Chaos Optimization Algorithm,COA),黄锋[12]在2014年提出了混沌人工鱼群算法(Chaos Artificial Fish Swarm Algorithm, 简称CAFSA)。因为COA具有较为精致的内在结构,能把系统内部运动束缚在一定的范围内,根据自身规律可以不重复的遍历各种状态,有力克服AFSA后期出现“早熟现象”的缺点。然而结合混沌遍历后计算耗时在原有基础上有所增加。如何应用并行计算[13]有效减少计算耗时是本文的研究重点。并行计算是根据多核计算机或计算机群可以同一时刻处理多任务的特点,研究设计如何将一个应用分解成多个可以并行处理的子任务,并分配给多核单机或是机群的不同处理器,之后各处理器之间相互协调,同一时刻并行处理各子任务,从而达到加快求解速度的目的。AFSA中各人工鱼具备自身独立处理任务的特点,另从张志新[14]的研究中可认知COA并行化的基本思想,为本文水库发电优化调度双层并行计算架构设计奠定了基础。

本文在CAFSA基础上,结合双层并行计算模式,对水库发电优化调度问题进行求解,将此称为混沌人工鱼群并行算法(Chaos Artificial Fish Swarm Parallel Algorithm, 简称CAFSPA)。基于双层并行计算架构设计的实例计算结果表明该算法能获得较好的优化性能以及运行效率,为水库发电优化调度计算提供一种可行的研究方向。

1 混沌人工鱼群并行算法(CAFSPA)原理

1.1 基本人工鱼群算法(AFSA)

AFSA基本思想源自鱼群的觅食行为。在某一水域,个体鱼能够通过自行或尾随其他鱼的方式,找到营养物质丰富的地方,因此鱼群聚数目最多。根据这一特点,可以通过构造人工鱼来模拟鱼群的觅食、聚群、追尾及随机行为来实现寻优目的[15]。在人工鱼群算法中主要研究如何利用简便有效的方式来构造并实现这些行为。

人工鱼是真实个体鱼的虚拟实体,内部封装了一系列的行为和自身参数数据,通过感官参数接收环境刺激信息,并通过人工鱼的控制参数做出相应的行为活动。问题的解空间和其他人工鱼的状态构成了某条人工鱼所在的环境。而该条人工鱼目前的自身状态和所处环境为其下一刻的行为决定做出前提条件,同时,该条人工鱼通过自身行为活动影响环境以及其他同伴的行为活动。

公告板的作用是记录最优人工鱼的个体状态,每条人工鱼执行完一次迭代后会把自身当前状态与公告板的数据进行比较,若优于公告板中记录的数据则会用当前的状态更新公告板,否则公告牌数据保持不变。解决问题时通常采用的是选择最优行为执行和选择较优方向两种方式评价,最后通过连续多次所得值的均方差是否小于允许误差等方法来终止算法的迭代。等整个算法数次迭代结束后,输出公告板的值便是所求最优值。

1.2 混沌优化算法(COA)

非线性系统中的混沌运动,表面上看似运动混乱,但实际上是有章可循的,是一种无固定周期的循环行为[16]。该混沌现象的独特性可归纳如下:①随机性,即具有随机变量杂乱表现。②遍历性,即可以在一定的状态空间中不重复的经历所有状态。③规律性,即此混沌运动可以应用确定性的数学迭代表达式进行描述。

其中第二点是本文研究与应用COA的重要特点。

COA的基本思想是构造混沌变量序列,通过函数形式把混沌变量映射到优化变量的取值范围内,充分利用混沌变量的遍历性这一主要特点来寻求全局最优解。

在COA中最经典模型之一便是Logistic模型,表达式如下:

Xi+1=UXi(1-Xi)Xi∈(0,1)

(1)

式中U作为控制参数,取值范围[0,1]。当U=4时,系统便处于混沌状态。取任意初始点,即得Xi在(0,1)区间上的遍历点列。

1.3 AFSA存在问题与解决方案

在水库发电优化调度计算中,基于原有AFSA,结合COA的遍历特性,学者黄锋提出的CAFSA,有效控制了AFSA在后期搜索中容易陷入求得局部极值的局面。然而AFSA后期搜索盲目性扩大、速度变慢,从而导致耗费时间较多的局面并未改观,另外COA进一步增加了一定的寻优计算耗时。为了进一步提高优化解的精度,可增加人工鱼群的种群数,但是此举也会增加一定计算耗时。

并行算法是基于多核计算机或是多台互联的计算机群,对问题进行联合求解的方法和步骤。其基本思想是将待解决问题分解成若干个尽量相互独立的子任务,然后使用多核计算机或多台互联计算机群同时求解这些被分解的子任务,最终求得原问题的整体优化解[17]。并行计算主要目的是为了充分利用闲置有效的计算资源,尽量缩减原问题的计算耗时,提高解决问题的工作效率。因此在水库发电优化调度中并行化处理CAFSA是解决计算耗时问题的有效途径。

1.4 混沌人工鱼群并行算法(CAFSPA)

并行计算基本思想是实现分解后子任务各自计算时间的相互重叠。在CAFSA中,每条人工鱼的自身条件和周围环境决定了其具体行为,因此算法的灵活性比较强,设计思路中必须考虑如何利用鱼群协作来进行全局寻优,然而个体人工鱼具体行为运动是相互独立的,以此可作为并行计算的必要条件之一。CAFSA中具备COA中Logistic映射产生的序列,能不重复遍历一定范围内的所有点[18]。张志新[14]应用COA求解时,为了提高寻优精度,设置了多个混沌初始值进行计算,其中各初始值作为起点计算是相互独立的,从而提出的COA并行化,为本文并行计算提供了一定的思考方向。

因此可以采用互联的多核计算机群来模拟各个体人工鱼寻优的子任务,结合并行算法设计在同一时刻解决多子任务可以较大提高求最优解效率。

基于黄锋的CAFSA,在水库发电优化调度计算中提出了CAFSPA即混沌人工鱼群并行算法,具有效率高、收敛快、结果精度高等优点。CAFSPA首先也采用两种集成模式:一是通过Logistic映射产生的序列,放大到决策变量的取值空间,然后以此作为AFSA的初始解,这将有助于提高求解质量。二是通过人工鱼群中各个体鱼Xi(i=1,2,…Np)进行能量判定之后,执行某个移动,例如觅食、群聚、追尾或随机等行为动作,便得到相应的Xinext,对Xinext的每个分量zti,next(t=1,2,…,T)可以进行一次混沌优化搜索,将此视同对混沌优化计算附上不同的初始值,可对各自独立计算进行并行化处理。根据机群中工作计算机数目M,将人工鱼群分成M个子鱼群,分配到对应的多核计算机进行计算,实现各子鱼群的并行计算,相互之间通过MPI进行数据通信。每条人工鱼的行为动作以及每个Xinext分量的混沌优化搜索,可以采用所在多核计算机的OpenMP进行并行计算处理。这样人工鱼群内外双层并行混沌搜索的随机性、遍历性既可以避免鱼群陷入局部最优,又能提升收敛速度,充分利用闲置资源,有效减少计算耗时。

2 基于CAFSPA的水库发电优化调度

2.1 水库发电优化调度模型建立

本文主要研究的是水库发电优化调度,可以采用水库在整个调度期限内的总电能最大作为优化调度准则,优化调度模型建立如下:

(2)

其中约束条件为:

蓄水量约束:Vtmin≤Vt≤Vtmax

(3)

放水量约束:Qtmin≤Qt≤Qtmax

(4)

出力约束:Ntmin≤Nt≤Ntmax

(5)

水量平衡方程:Vt=Vt-1+(It-Qt)Δt

(6)

非负约束:Qt>0

(7)

边界约束:z1=CZ1,z(T+1)=CZ(T+1)

(8)

各式中变量含义解释如下:

式(2)中:F为发电量最大值;T为年调节水库中划分的时段总数(一般取值12);K为出力系数(取常数值);qt为第t个时段的发电流量;ht为第t个时段发电平均水头;Δt为一个时段的计时,s。

式(3)中:Vtmin和Vtmax分别表示为水库第t个时段库容上限和下限;Vt表示为水库第t个时段的初库容。其中Vtmin取值为死水位相应库容,在汛期时,Vtmax取值为防洪限制水位的相应库容,非汛期时Vtmax取值为正常蓄水位相应库容。

式(4)中:Qtmin和Qtmax分别为水库第t个时段的最小和最大放水量;Qt则为第t个时段的放水量,其中包括发电流量qt,也有可能包括弃水。

当水库放水量都用来发电时,Qt=qt;当水库放水量大于水库发电流量,就会产生弃水,此时Qt>qt。式(2)作为目标函数是以发电为目标,故用qt表示;约束条件中,放水量可能包括弃水,故用Qt表示。

式(5)中:Ntmin和Ntmax分别为第t个时段水库的最小出力和最大出力;Nt则为第t个时段的出力。

式(6)中:Vt-1和Vt分别为第t个时段水库的初、末库容大小;It为第t个时段的入库流量;Qt为第t个时段的出库流量。

式(8)中:z1,z(T+1)分别为第一个时段初和最后一个时段末的水位值;CZ1,CZ(T+1)都为常数(取水库死水位值)。

2.2 基于CAFSPA水库发电优化调度的求解步骤

据水库发电优化调度特点,参考黄锋的CAFSA,CAFSPA即混沌人工鱼群并行算法的计算步骤如下:

(1)划分年调水库调度期为T=12时段,决策变量为各时段的初水库水位,取值空间设为[Ztmin,Ztmax],即在水库第t个时段库容下限值Vtmin和上限值Vtmax之间。

(2)设定算法中各主要参数值,如确定整个算法的最大迭代次数,以MaxNumber表示;人工鱼群规模,以Np表示;人工鱼的视野范围,以Visual表示;移动步长,以step表示;拥挤度因子,以δ表示;最大尝试次数,以TryNumber表示。

(3)每条人工鱼的混沌初始化。为便于区分每条人工鱼,可对人工鱼进行编号,命名为n(n∈[1,Np]),令某条人工鱼编号为n=1,由调度期内被划分的时段数,可随机生成T个初始值xnt(t=1,2,…,T),并令X1=(x11,x12,…,x1T),即为该条编号为n=1的人工鱼。X1代入式(1)后,可迭代成系列混沌向量{Xn}n=2,3,…,Np,其中Xn=(xn1,xn2,…,xnT),即是人工鱼群中其他编号的个体人工鱼。

znt=Ztmin+(Ztmax-Ztmin)xnt

(9)

将此系列混沌向量{Xn}n=2,3,…,Np,依据式(9)被放大至决策变量取值空间[Ztmin,Ztmax],可以得到初始的决策变量。此时第n号个体人工鱼表示为Zn=(zn1,zn2,…,znT)n=1,2,…,Np,其中znt(t=1,2,…,T)表示为第n号个体人工鱼在第t时段的初水位。其实一条人工鱼表示的就是水库发电调度的一种运行决策。可以不断调整混沌人工鱼的水位值,以致满足各约束条件,最终目的是使得每条混沌人工鱼都是满足此水库发电调度的可行范围之内,同时也可以加快算法收敛速度。

为了满足水量平衡方程,决策变量的取值空间可以由以下方法来确定:

关注某时段t,其水量平衡方程为Vt+1=Vt+(It+1-Qt+1)Δt,由式(8)可知,Vt为一个固定值,再根据约束条件V(t+1)min

上界:

Q*tmax=min{Qtmax,(Vt-V(t+1)min+qt)/Δt}

(10)

下界:

Q*tmin=max{Qtmin,(Vt-V(t+1)max+qt)/Δt}

(11)

Vt+1的取值范围由此可以被确定,根据库容特征曲线便可求出相应的水位取值范围[Z(t+1)min,Z(t+1)max]。由此得到的初始种群必满足各约束条件。

(4)根据计算机群中单机的数目M,按个体混沌人工鱼的总数Np和各自编号n,将混沌人工鱼群平均分成M个混沌人工鱼子群(除最后一个子群其他每个子群中单体混沌人工鱼的数目为Np/M的整数位,即[Np/M],最后一个子群中单体混沌人工鱼的数目为Np-(M-1)·[Np/M],作为进程,被分配到对应的不同编号多核计算机中,通过MPI传输协议实时传递各处理机的有效数据。这样便可实现不同处理机同一时刻处理不同子任务,即外层并行计算。

在各处理机中,计算各单体混沌人工鱼的能量值,将最好的单体混沌人工鱼的状态及能量值记录在公告板上。

单体混沌人工鱼能量值的计算步骤归纳如下:①准备好水库库容特征曲线、下游水位流量关系曲线;②根据水库库容特征曲线,求出各时段如第t时段初库容值Vnt,其中第(t+1)时段的初库容值Vn(t+1)亦是第t时段的末库容值,之后可以根据式(6)水量平衡方程计算得出下泄流量Qnt。第t时段下游平均水位便可根据下游水位流量关系曲线将下泄流量Qnt代入计算得出;③第n条单体混沌人工鱼在第t时段对应的净水头可由以下公式计算得出,其中ΔH表示的是水头损失,见式(12)。④根据式(2)计算得出第n条单体混沌人工鱼Xn的能量值F(Xn)。

(12)

(5)初始化参数j,表示单体混沌人工鱼序号,其中j为正整数。对于第一号处理机中单体人工鱼的起始序号为j=1(j∈[1,[Np/M]]);第二号处理机中单体人工鱼的起始序号为j=[Np/M]+1(j∈[[Np/M]+1,2[Np/M]]);依次类推,直至第M号处理机中单体人工鱼的起始序号为j=(M-1)·[Np/M]+1(j∈[(M-1)·[Np/M]+1,Np])。

(6)对于每条混沌人工鱼的个体行为及其分量的混沌优化搜索都是相互独立的,因此混沌人工鱼子群进程中的可并行部分可以通过OpenMP随机分配到不同线程上计算,即可被较均匀地分配到处理机的多核中,实现至少有两个单体混沌人工鱼同一时刻进行个体行为及其分量的混沌优化搜索的内层并行计算,如图1、图2。

每条混沌人工鱼通过比较自身的能量值选择符合自身的个体行为,为寻优做准备。以混沌人工鱼群的平均能量值Fave作为基准,若单体混沌人工鱼Xj的能量值F(Xj)Fave,则该鱼执行追尾行为;若该鱼的聚群行为和追尾行为都不成功,则执行觅食行为。行为结束后,便得到该单体混沌人工鱼Xj的另一个新状态,表达式可记为Xjnext=(znextj1,znextj2,…,znextjT)。

(7)对单体混沌人工鱼的新状态 ,可以通过Logistic映射产生混沌随机变量,进行混沌优化搜索。步骤如下:

①t∈[1,T],由第j条混沌人工鱼在第t时段的水位znextjt,按式(13)可计算得到混沌映射的初始变量值,各时段计算是相互独立的,可由OpenMP组件分配到单机不同处理器计算,组成内层并行计算可行条件之一,如图1。

(13)

②将式(13)的计算结果s0,由式(1)计算出混沌随机变量sjt=4s0(1-s0)。之后由式(14)将sjt(区间为[0,1])转换为混沌随机变量s*jt(区间为[-1,1])。

s*jt=2sjt-1

(14)

③可将式(14)求得的混沌随机变量s*jt代入式(15),计算得出新的库水位z*jt。

z*jt=znextjt+step·s*jt·(Ztmax-Ztmin)

(15)

其中step为搜索步长,取值范围通常为0.001~0.1,同时需要检查 是否满足边界约束条件。

④计算混沌优化搜索后单体混沌人工鱼的能量值F(Xopt),若F(Xopt)>F(Xj),则可令zjt=z*jt。

(8)执行混沌优化搜索后的单体混沌人工鱼Xj的最终状态,若优于公告板状态则取代之,否则保持公告板的状态不变。

之后令j=j+1,如果前(M-1)个处理机中均满足j>[Np/M]且第M个处理机中满足j>Np-(M-1)·[Np/M]条件,转到步骤(9);若其中某个或多个处理机未达到此条件,则未达到此条件的处理机转向步骤(6),其他已达条件的处理机等待。

(9)寻优次数若达到最大迭代次数MaxNumber,则输出最优结果,否则转到步骤(5),开始新一轮的混沌人工鱼群并行寻优。

基于CAFSPA的水库发电优化调度程序流程,如图2,多核单机内子群的混沌优化搜索模块可参考图1。

3 实例计算与分析

为更好的比较CAFSPA相对于黄锋CAFSA在计算时间上的优越性,选取文献[12]中相同水库在某年的径流资料,以相同的目标函数和约束表达式作为基本条件。在该库的中长期发电优化调度中,比较分析了在标准动态规划算法(DP)、COA、AFSA、黄锋的CAFSA以及本文重点研究的CAFSPA等各算法下对应的发电量结果和计算时间。其中对于智能优化算法COA、AFSA、CAFSA、CAFSPA,为减小随机性对各算法结果产生的影响,可以进行仿真模拟计算150次,并将计算出的最优值作为实例的仿真结果。

从被选取的资料可知,该实验水库的正常蓄水位库容为2.41亿m3,有效库容为1.35亿m3,死库容为1.05亿m3。该水库的保证出力为0.233亿W,装机容量为2×0.61亿W,设计年发电量为5 010亿kWh,同时具有不完全年调节作用的性质。该水库的水头损失系数为0.000 086 81,最大水头损失为5.61 m,出力系数为8.3。该水库的死水位为819 m,正常蓄水位837 m,其中6月-10月汛期水位为820 m。

5种优化算法都基于visual studio 2010软件开发平台采用C++语言编程。其中针对CAFSPA,为了体现其并行处理问题的特点,硬件设备采用两台互联的双核计算机,参照上文的算法步骤,将混沌人工鱼群平分于两台计算机上进行计算,应用MPI组件处理两台计算机之间的数据传输,实现外层并行计算;并同时应用OpenMP组件控制单机中多线程促使双处理器的工作时间重叠,实现内层并行计算。其他算法没有进行并行设计,只需在单机上运行即可。

在CAFSPA中,设定整个算法的最大迭代次数MaxNumber=50,混沌人工鱼群的规模,Np=50,单体混沌人工鱼的视野范围Visual=5.0,拥挤度因子δ=0.618,移动步长step=1.0,搜索步长α=0.01,最大尝试次数TryNumber=5。为了便于数据的可靠性比较,COA、AFSA、CAFSA的最大迭代次数也定为MaxNumber=50(图3源自黄锋[12]的研究,由此可知3种智能算法迭代次数为35以上时,最优值基本趋于稳定状态),并且基本AFSA、CAFSA其他参数设定与CAFSPA一致。5种算法最优发电量和运算时间值,见表1。

图1 被分配混沌人工鱼子群在多核单机中的内层并行计算模块原理图

图2 水库发电优化调度CAFSPA整体程序流程图

由表1结果可知,CAFSA与CAFSPA的最优发电量的计算结果基本一致,因为CAFSPA是在CAFSA的基础上增加了双层并行计算处理,实现各子任务在计算时间上的重叠,数据运算方式是一致的,如图3。在运算时间上CAFSPA接近于CAFSA算法的1/4,因为两台双核计算机,通过双层并行计算,把混沌人工鱼群的计算平均分到4个处理器,在同一时刻进行工作,充分利用了闲置资源,实现各子任务处理时间的重叠。CAFSPA保持了CAFSA的寻优质量上的优势,与单一的COA和AFSA相比,最优发电量分别提升了1 102.67、1 939.65 万kWh。CAFSA的计算时间比AFSA略多0.1 s,是因为对单体人工鱼多了混沌优化搜索的计算时间,然而经过双层并行计算后,运算时间明显减少。CAFSPA的最优发电量比标准动态规划算法(DP)少了75.89万kWh,但缩小幅度仅为0.158%,计算时间却是DP的8%。可见,本文研究的CAFSPA在收敛速度、寻优质量以及运算时间等综合因素上与其他算法相比都占了很大的优势,尤其是在减少运算时间上优势更为突出。各算法的计算结果对比充分验证了CAFSPA应用于水库中长期发电优化调度中的可行性和高效性。

表1 各算法的最优结果比较

图3 各算法寻优过程比较图

除DP外各智能算法150次仿真模拟计算的发电量与运算时间平均值如表2所示。

表2 各智能算法150次仿真模拟计算发电量与运算时间平均值比较

由表2中数据可知,CAFSPA与CAFSA的150次发电量平均值基本一致,而CAFSPA的平均运算时间接近CAFSA的1/4;这两种算法的150次发电量平均值都高于AFSA和COA;4种算法的150次发电量平均值比表1中对应的发电量最优值分别减少了0.88%、0.89%、3.91%、1.18%,其中CAFSPA的发电量平均值是表1中DP发电量最优值的98.96%。为进一步验证CAFSPA的稳定性,分别将CAFSPA、CAFSA、AFSA、COA的150次仿真模拟计算结果存储在计算机中,对各算法对应发电量进行方差分析,经计算,对应的各方差比值是0.582 633 4∶0.595 950 6∶10.591 044 4∶1。从中可以发现CAFSPA与CAFSA的150次发电量求解稳定性基本一致,比COA的稳定性略强,但都比AFSA的稳定性强许多。由此可见在算法稳定性上CAFSPA与CAFSA的优越所在。

通过以上分析可以得出结论如下3点:①CAFSPA继承了CAFSA,充分结合了AFSA操作简单的特点以及COA的全局搜索能力,提高了该水库发电量寻优计算的稳定性、搜索精度以及结果质量,达到了预期效果;②CAFSPA与CAFSA一致,充分融合了COA遍历性特点,提高了计算后期的搜索效率,有效解决了AFSA后期搜索的盲目性以及计算的停滞,避免AFSA陷入求得局部最优值的困境;③CAFSPA充分利用AFSA中单体人工鱼寻优并行化的特点,将人工鱼群分成多个子群,并均分到不同的处理单元进行并行计算,以及个体人工鱼行为分量混沌优化搜索的并行化处理,充分利用闲置资源,实现子群计算时间的重叠,相对较大幅度减少了运行时间。

4 结 语

单一的人工鱼群算法易于实现,对各种参数的选择不太敏感,是水库发电优化调度中应用较广的智能算法之一[19]。CAFSA有效控制易陷入求得局部最优解的局面,黄锋[12]通过实验证明了该算法在求解质量和精度上的显著提高。在此基础上,根据人工鱼群并行运动的特点以及行为分量混沌优化搜索的并行性,结合双层并行计算架构设计,在运算时间上的减少也是卓有成效的。本文研究的主要目的是基于水库中长期发电优化调度,研究如何有效并行化改进CAFSA,能够充分利用闲置硬件资源,在较短运算时间内可求得较满意的近似最优解,从而提高水库发电效益,通过实例证明改进后的CAFSPA具有一定的实用性,在实际生产过程中,具有一定的参考性。梯级水库群发电优化调度计算更为复杂、维度更高、计算时间大幅度增加[20],如何有效利用CAFSPA解决梯级水库群的问题是之后重点科研方向。

[1] 邹 进,刘可真. 水资源系统运行与优化调度[M].北京:冶金工业出版社,2006:13-14.

[2] Nandalal K D W,Bogardi,Janos J. Dynamic Programming Based Operation of Reservoirs: Applicability and Limits[M]. New York:Cambridge University Press,2007:4-18.

[3] 马立亚,雷晓辉,蒋云中.基于DPSA的梯级水库群优化调度[J].中国水利水电科学研究院学报,2012,10(2):140-144.

[4] 刘 新,纪昌明,杨子俊,等.基于逐步优化算法的梯级水电站中长期优化调度[J].人民长江,2010,40(21):32-34.

[5] 张忠波,张双虎,蒋云钟,等.改进的遗传算法在水库调度中的应用[J].人民黄河,2012,34(8):54-56.

[6] 宋朝红,罗 强,纪昌明.基于混合蚁群算法的水库群优化调度研究[J].武汉大学学报,2003,36(4):28-31.

[7] 向 波,纪昌明,罗庆松.免疫粒子群算法及其在水库优化调度中的应用[J].河海大学学报,2008,36(2):198-201.

[8] 冯玉蓉.模拟退火算法的研究及其应用[D].昆明:昆明理工大学,2005.

[9] 田景文,高美娟. 人工神经网络算法研究及应用[M].北京:北京理工大学出版社,2006:45-61.

[10] 李晓磊.一种新型智能优化算法-人工鱼群算法[D].杭州:浙江大学,2003.

[11] 邱 琳,田景环,段春青,等.混沌优化算法在水库优化调度中的应用[J].中国农村水利水电,2005,(7):17-20.

[12] 黄 锋,王丽萍,向腾飞,等. 基于混沌人工鱼群算法的水库发电优化调度研究[J].中国农村水利水电,2014,(10):149-153.

[13] 陈国良,孙广中,徐 云,等.并行算法研究方法学[J],计算机学报,2008,31(9):1 493-1 501.

[14] 张志新,张明廉.基于并行混沌和单纯形法的混合全局优化算法[J].系统仿真学报,2004,16(1):35-37.

[15] 白小勇,王晨华,李允军,等.人工鱼群算法与离散微分动态规划结合在水库优化调度中的应用[J].水电厂自动化,2008,29(3):135-138.

[16] 原文林,曲晓宁.混沌蚁群优化算法在梯级水库发电优化调度中的应用研究[J].水力发电学报,2013,32(3):47-53.

[17] 王 堃. 基于多核的并行程序设计及优化[D]. 南京:南京大学,2012.

[18] 曲良东,何登旭.一种混沌人工鱼群算法[J].计算机工程与应用,2010,46(22):40-42.

[19] 王正初,周幕逊,李 军,等.基于人工鱼群算法的水库优化调度研究[J].继电器,2007,35(21):43-46.

[20] 吴 昊,纪昌明,蒋志强,等. 梯级水库群发电优化调度的大系统分解协调模型[J]. 水力发电学报,2015,34(11):40-50.

猜你喜欢
鱼群时段单体
养阳的黄金时段到了
四个养生黄金时段,你抓住了吗
单体光电产品检验验收方案问题探讨
鱼群漩涡
基于改进鱼群优化支持向量机的短期风电功率预测
基于人工鱼群算法的光伏阵列多峰MPPT控制策略
相变大单体MPEGMA的制备与性能
多子群并行人工鱼群算法的改进研究
分时段预约在PICC门诊维护中的应用与探讨
巨无霸式医疗单体的选择