一种基于自矫正遗传算法的城市明渠排水系统控制方法技术领域
本发明属于工业自动控制领域,面向城市明渠排水系统,涉及一种基于自矫正遗传算法
的城市明渠排水系统控制方法。
背景技术
城市明渠排水系统的作用是收集居民生产生活废水和降雨径流,并将之排放到污水处理
厂或者下一级渠道。
在实际操作中,城市明渠排水系统中的泵站通过排水电机抽排水来调节明渠的水位,在
这个过程中会消耗大量的电能。目前国内城市明渠系统的排水泵站多采用人工24小时值守的
方式,这种方式主要有一下三个缺点:
1.面对突发暴雨、城市居民用水高峰等情况,缺乏科学的控制决策机制,容易引发引排
水系统溢流,造成严重的财产损失和环境污染问题。
2.缺乏适当的节能算法,造成电能的大量浪费。
3.耗费大量人力物力。
所以,人们迫切的需要对现有城市明渠引排水系统进行技术改造。例如,浙江省委十三
届四次全会提出了“五水共治”的理念,吹响了浙江大规模治水行动的新号角。“五水共治”,
意思是要以治污水、防洪水、排涝水、保供水、抓节水为突破口对现有排水系统进行转型升
级。
为改善现状,有学者提出用遗传算法(GeneticAlgorithm)对城市明渠排水系统进行控制。
遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是
一种通过模拟自然进化过程搜索最优解的方法。
然而,传统的遗传算法在城市明渠排水系统难以得到应用,因为它存在以下几个问题:
1.实际城市明渠系统相对复杂,难以提出精确的系统水力学模型,从而产生系统误差。
2.现有技术无法对城市降水进行精确预测,从而产生预测误差。
3.传统遗传算法是一种开环算法,系统产生扰动时,缺乏自动反馈矫正机制。
4.传统遗传算法应用到多级决策问题时,即使是极小的系统误差也会被逐级放大,从而对
系统的可靠性和稳定性造成严重影响。
发明内容
本发明的目的在于针对上述现有城市明渠排水系统遗传算法的不足,提出一种改进方法。
在传统遗传算法的基础上引入状态反馈与滚动优化算法,减小系统误差,增强系统的实时性
和鲁棒性,达到跟踪目标水位、节约电费和减小污水溢出量的目的。
具体地,引入状态反馈的目的是为了减小由模型不精确、外界扰动产生的系统误差。其
基本思想是:首先利用传统遗传算法算出一系列阶段的控制量,一个阶段的控制量作用结束
后,采集并监测当前状态量,并与前一步遗传算法中预测的状态量进行比较,将两者的差值
反馈到原系统,从而影响到之后的一系列预测量。这样,能极大地减小系统误差。
引入滚动优化的目的是增强系统的实时性和鲁棒性。其基本思想是:首先利用遗传算法
得到一系列阶段的最优解,但只对实际系统实施第一个阶段的控制量。第一个阶段结束后,
根据当前实际状态量、更新的预测扰动量以及上一段所提的反馈矫正量重新进行一次遗传算
法求解。接着又对系统实施最新最优解中第一个阶段的控制量,以此类推。这样便提高了控
制系统的实时性和鲁棒性。
具体地,本发明提出的一种基于自矫正遗传算法的城市明渠排水系统控制方法,包括以
下步骤:
(1)建立城市明渠排水系统模型
系统状态转移方程为:
h
(
k
+
1
)
=
h
(
k
)
+
[
(
d
(
k
)
-
u
(
k
)
]
T
/
S
-
Σ
i
=
0
23
-
k
γ
(
i
+
k
)
e
(
i
)
,
k
=
0
,
1
,
2
,
...
,
23
]]>
约束条件为:
hmin≤h(k)≤hmax
umin≤u(k)≤umax
目标函数为:
J
=
min
Σ
k
=
0
23
J
(
k
)
=
min
Σ
k
=
0
23
α
(
k
)
(
h
(
k
+
1
)
-
h
~
)
2
+
β
(
k
)
p
(
k
)
E
(
k
)
,
]]>其中:
E(k)=A(u(k))2+Bu(k)+C
以下是系统各个参数的解释:
a.明渠水面面积S
被监控的城市明渠水面面积S可根据实测得到,忽略水位变化时水面面积S的变化。
b.阶段总数k
城市明渠排水系统为连续的时间过程,取1天作为一个排水周期进行规划,可将1天分
为24个阶段,每个阶段持续一小时,阶段总数为24。设k为阶段变量。
c.状态变量h(k)
当前水位用h(0)表示,通过实地检测获得。
将k个阶段之后的预期规划水位记为h(k),k=1,2,3…23,24。
d.决策变量u(k)
城市泵站通过排水泵的排水量来控制明渠的水位,设水泵在阶段k的排水量为u(k)。
e.预测降水排放量d(k)
城市的未来24小时预测降水排放量每小时更新一次,记未来时刻k的预测降水排放量为
d(k)。
f.状态误差反馈量e(k)
设e(k)表示k个阶段之前,预期水位与实际水位的误差值。
g.权重系数γ(k)
γ(k)为e(k)的影响权重系数,它代表了k个阶段之前的状态误差反馈量对未来状态预测的
影响。γ(k)是人为设定,但应满足0<γ(k)<1,且γ(k)单调递减。
h.约束条件
hmin,hmax分别表示水位的下限和上限。umin,umax分别表示最小排水量和最大排水量。
i.目标函数
本系统以跟踪目标水位和节省总费为控制目标,J(k)表示k时刻的总代价,它包含与水
位相关的代价与电费相关的代价两个部分。其中,α(k)与β(k)分别为k时刻的水位代价权重
与电费代价权重;
为目标跟踪水位;p(k)为时刻k的预测电价;E(k)为时刻k的用电量;E(k)
可近似为一个关于u(k)的二次函数。A、B、C为电机相关参数,可根据系统辨识实测得到。
(2)对系统参数进行初始化,具体步骤如下:
(2.1)实测得到明渠底面积S;
(2.2)通过系统辨识得到电机用电量参数A、B、C;
(2.3)设置目标跟踪水位![]()
(2.4)初始化状态误差反馈量e(k),令e(k)=0,k=0,1,...,23;
(2.5)设置权重系数α(k),β(k)和γ(k)。其中,γ(k)应满足0<γ(k)<1,且γ(k)单调递减。γ(k)
可选取:
k=0,1,2,...,23
其中
为一设定常数,满足![]()
(2.6)检测当前水位,并将其值赋给h(0)。
(3)更新d(k):获取最新的城市未来24小时预测降水排放量,并将其值赋给d(k)。
(4)更新p(k):获取最新的城市未来24小时的预测电价,并将其值赋给p(k)。
(5)利用遗传算法进行最优控制序列求解
从一个阶段的水位h(k)转向下一个阶段的水位h(k+1)时,根据步骤1中的系统状态转移方
程求得u(k)的值。将h(k+1)和u(k)带入步骤1中的目标函数,则可求得总代价J(k)。我们把这
个代价J(k)看作阶段k到阶段k+1的路径长度。那么,我们的目标函数
实际上
就是求初始状态到阶段24的最短路径。我们只需求得最短路径,就能实际上得到了最优控制
序列。最短路径可通过经典遗传算法获得,得出预期最佳状态变量序列h(k),k=1,2,3…23,
24,进而得出最优控制序列u(k),k=0,1,2…22,23。
具体的,在本发明中,经典遗传算法的运行步骤和参数可设置为:
a.生成初始种群
随机生成满足约束条件的1000个个体,每个个体有24个参数,即h(1)到h(24)。
b.设定遗传算法参数
遗传算法各参数可设定为:交叉变异概率为0.7,自变异概率为0.3,迭代次数为50。
c.经典遗传算法求解
根据以上参数,通过经典遗传算法进行求解,求得最佳状态变量序列h(k),k=1,2,3…
23,24,进而得出最优控制序列u(k),k=0,1,2…22,23。
(6)输出u(0):虽然步骤5求得了24个阶段的最优控制序列,但是只控制水泵电机输出第
一个控制量u(0),直到下一个阶段开始。
(7)采集当前水位h(0):当下一个阶段开始后,即一个小时之后,检测当前水位,并将其值
赋给h(0)。
(8)滚动更新状态误差反馈量e(k),具体包括以下步骤:
(8.1)将所有e(k)往后推移一位,舍弃原有的e(23),即:
e(23)=e(22);
e(22)=e(21);
……;
e(1)=e(0);
(8.2)根据步骤5中得到的h(1)和步骤7中得到的h(0),更新e(0)的值:e(0)=h(1)‐h(0);
(9)循环迭代:重复执行步骤3至步骤8,当人为决定结束控制时,关闭系统,跳出循环。
本发明的有益效果是:本发明方法首先根据城市明渠系统进行建模,引入城市的未来24
小时降雨预测量与城市生活用水排放预测量作为系统扰动,然后利用自矫正遗传算法对明渠
水泵未来24小时的控制进行优化,以达到跟踪水位和减小能耗的目的。本发明方法针对传统
遗传算法模型误差大、对扰动抵抗力不强等缺点,引入了状态反馈和滚动优化算法,提高了
控制系统的鲁棒性和实时性,减小了明渠模型误差对系统的影响,减小了预测降水误差对系
统的影响,增强了系统对其他外界扰动的抵抗力,削减了多级决策算法中的误差逐级放大的
弱点,对城市明渠系统的建设具有重要的科学意义和应用价值。
附图说明
图1本发明方法流程图。
图2为本发明遗传算法求解最优控制序列的示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步详细说明。
如图1所示,本发明提供的一种城市明渠排水系统的自矫正遗传算法,包括以下步骤:
(1)建立城市明渠排水系统模型
系统状态转移方程为:
h
(
k
+
1
)
=
h
(
k
)
+
[
(
d
(
k
)
-
u
(
k
)
]
T
/
S
-
Σ
i
=
0
23
-
k
γ
(
i
+
k
)
e
(
i
)
,
k
=
0
,
1
,
2
,
...
,
23
]]>
约束条件为:
hmin≤h(k)≤hmax
umin≤u(k)≤umax
目标函数为:
J
=
min
Σ
k
=
0
23
J
(
k
)
=
min
Σ
k
=
0
23
α
(
k
)
(
h
(
k
+
1
)
-
h
~
)
2
+
β
(
k
)
p
(
k
)
E
(
k
)
,
]]>其中:
E(k)=A(u(k))2+Bu(k)+C
以下是系统各个参数的解释:
a.明渠水面面积S
被监控的城市明渠水面面积S可根据实测得到,忽略水位变化时水面面积S的变化。
b.阶段总数k
城市明渠排水系统为连续的时间过程,取1天作为一个排水周期进行规划,可将1天分
为24个阶段,每个阶段持续一小时,阶段总数为24。设k为阶段变量。
c.状态变量h(k)
当前水位用h(0)表示,通过实地检测获得。
将k个阶段之后的预期规划水位记为h(k),k=1,2,3…23,24。
d.决策变量u(k)
城市泵站通过排水泵的排水量来控制明渠的水位,设水泵在阶段k的排水量为u(k)。
e.预测降水排放量d(k)
城市的未来24小时预测降水排放量每小时更新一次,记未来时刻k的预测降水排放量为
d(k)。
f.状态误差反馈量e(k)
设e(k)表示k个阶段之前,预期水位与实际水位的误差值。
g.权重系数γ(k)
γ(k)为e(k)的影响权重系数,它代表了k个阶段之前的状态误差反馈量对未来状态预测的
影响。γ(k)是人为设定,但应满足0<γ(k)<1,且γ(k)单调递减。
h.约束条件
hmin,hmax分别表示水位的下限和上限。umin,umax分别表示最小排水量和最大排水量。
i.目标函数
本系统以跟踪目标水位和节省总费为控制目标,J(k)表示k时刻的总代价,它包含与水
位相关的代价与电费相关的代价两个部分。其中,α(k)与β(k)分别为k时刻的水位代价权重
与电费代价权重;
为目标跟踪水位;p(k)为时刻k的预测电价;E(k)为时刻k的用电量;E(k)
可近似为一个关于u(k)的二次函数。A、B、C为电机相关参数,可根据系统辨识实测得到。
(2)对系统参数进行初始化,具体步骤如下:
(2.1)实测得到明渠底面积S;
(2.2)通过系统辨识得到电机用电量参数A、B、C;
(2.3)设置目标跟踪水位![]()
(2.4)初始化状态误差反馈量e(k),令e(k)=0,k=0,1,...,23;
(2.5)设置权重系数α(k),β(k)和γ(k)。其中,γ(k)应满足0<γ(k)<1,且γ(k)单调递减。γ(k)
可选取:
k=0,1,2,...,23
其中
为一设定常数,满足![]()
(2.6)检测当前水位,并将其值赋给h(0)。
(3)更新d(k):获取最新的城市未来24小时预测降水排放量,并将其值赋给d(k)。
(4)更新p(k):获取最新的城市未来24小时的预测电价,并将其值赋给p(k)。
(5)利用遗传算法进行最优控制序列求解
如图2所示,从一个阶段的水位h(k)转向下一个阶段的水位h(k+1)时,根据步骤1中的
系统状态转移方程求得u(k)的值。将h(k+1)和u(k)带入步骤1中的目标函数,则可求得总代价
J(k)。我们把这个代价J(k)看作阶段k到阶段k+1的路径长度。那么,我们的目标函数
实际上就是求初始状态到阶段24的最短路径。我们只需求得最短路径,就能
实际上得到了最优控制序列。最短路径可通过经典遗传算法获得,得出预期最佳状态变量序
列h(k),k=1,2,3…23,24,进而得出最优控制序列u(k),k=0,1,2…22,23。
具体的,在本发明中,经典遗传算法的运行步骤和参数可设置为:
a.生成初始种群
随机生成满足约束条件的1000个个体,每个个体有24个参数,即h(1)到h(24)。
b.设定遗传算法参数
遗传算法各参数可设定为:交叉变异概率为0.7,自变异概率为0.3,迭代次数为50。
c.经典遗传算法求解
根据以上参数,通过经典遗传算法进行求解,求得最佳状态变量序列h(k),k=1,2,3…
23,24,进而得出最优控制序列u(k),k=0,1,2…22,23。
(6)输出u(0):虽然步骤5求得了24个阶段的最优控制序列,但是只控制水泵电机输出第
一个控制量u(0),直到下一个阶段开始。
(7)采集当前水位h(0):当下一个阶段开始后,即一个小时之后,检测当前水位,并将其值
赋给h(0)。
(8)滚动更新状态误差反馈量e(k),具体包括以下步骤:
(8.1)将所有e(k)往后推移一位,舍弃原有的e(23),即:
e(23)=e(22);
e(22)=e(21);
……;
e(1)=e(0);
(8.2)根据步骤5中得到的h(1)和步骤7中得到的h(0),更新e(0)的值:e(0)=h(1)‐h(0);
(9)循环迭代:重复执行步骤3至步骤8,当人为决定结束控制时,关闭系统,跳出循环。