APP下载

模糊智能灌溉系统的设计与实现

2019-08-23鱼先锋张林

微型电脑应用 2019年8期
关键词:灌溉系统复杂度湿度

鱼先锋, 张林

(商洛学院 数学与计算机应用学院, 商洛 726000)

0 引言

自从1965年Zadeh引入模糊集合[1]的概念以来, 模糊集合的观点引起了众多研究者的兴趣, 并被引入到许多理论与应用学科中, 已在模糊数学与模糊系统的理论与应用方面取得了许多重要的成果[2-7]。 笔者也在模糊系统分析, 模糊综合评价, 模糊系统建模等方面做了一些研究[8-11]。 模糊系统与我们通常研究的系统的一个重要的区别在于通常的系统往往是用微分与代数方程来描述的, 有确定的数学模型, 而模糊系统往往是用基于人的经验的语言规则来描述, 经过模糊推理实现系统的。 合理的水分是农作物、果蔬、树木生长的必要条件。 除水田外大部分耕地都需要对土地定期灌溉。 现实中灌溉多是人为控制灌溉强度和灌溉时间。 但人工操作起来麻烦, 通常还不好控制灌溉强度和时长。 主要原因是灌溉强度和时长都是人为感知的是一宗定性信息。 所以笔者拟结合土地温度和湿度定性与定量的信息, 基于模糊控制原理来设计一个模糊智能灌溉系统。 以期实现土地灌溉的自动化、智能化。

1 预备知识

定义1[12]模糊集: 集合X上的模糊集合(fuzzy set)是一个映射A:X→[0,1],A也称为模糊集合A的隶属函数, 常记为μA。 对x∈X,A(x)称为x属于模糊集A的隶属度。

模糊集合有以下几种记法:

(1)A={(x,A(x))|x∈X};

(3) 若X为有限集或可数集, 并设X={xi}, 则A可以表示为A=∑A(xi)/xi。

定义2[12]用F(X)表示X上模糊集合的全体, 即F(X)={A|A:X→[0,1]}。

定义3[12]设A,B∈F(X), 若∀x∈X有A(x)≤B(x), 则称A含于B, 或B包含A, 记作A⊆B。 若∀x∈X, 有A(x)=B(x), 称A等于B记作A=B, 则(F(X),⊆)为偏序集。

定义4[12]设A,B∈F(X),A与B的并A∪B, 交A∩B, 补Ac的隶属函数定义为

(A∪B)(x)=A(x)∨B(x)=max{A(x),B(x)},

(A∩B)(x)=A(x)∧B(x)=min{A(x),B(x)},

Ac(x)=1-A(x).

显然, 若A,B∈F(X)则,

A∪B,A∩B,Ac∈F(X).

另外, 若At∈F(X)(t∈T), 则可定义模糊集合的任意并与任意交的运算如下:

(∪t∈TAt)(x)=∨t∈TAt(x)=supt∈TAt(x),

(∩t∈TAt)(x)=∧t∈TAt(x)=inft∈TAt(x).

显然,∪t∈TAt,∩t∈TAt∈F(X).

模糊逻辑推理是建立在模糊逻辑基础上的不确定性推理方法, 是在二值逻辑三段论基础上发展起来的。这种推理方法以模糊命题为前提, 动用模糊产生式规则, 推导出一个近似的模糊结论。

定义5[5]模糊命题: 含有模糊概念、模糊数据的语句称为模糊命题。它的一般表示形式为:

xisA

或者

xisA(CF)

其中,A是模糊概念, 用模糊集及隶属函数刻画;x是论域上的变量, 用以代表所论述对象的属性; CF是模糊命题的可信度。

定义6[5]模糊产生式规则的一般形式是:E→H(CF,λ)其中,E是用模糊命题表示的模糊条件;H是用模糊命题表示的模糊结论; CF∈[0,1]是前提的隶属度, 表示前提的可信度;λ∈[0,1]是推理的隶属度, 表示该推理的可信程度。

2 系统设计

模糊智能灌溉系统的基本架构,如图1所示。

图1 模糊智能灌溉系统

2.1 “输入”数据为实时获取的温度、湿度数据, 温度、湿度的划分等级, 温度、湿度的隶属度, 加试时长的划分等级和各等级特征函数值。“规则库”定义了不同温度、湿度等级下灌溉时长与该推理的可信程度。 “模糊合成”对于不同的应用背景可以定义不同的模糊合成运算, 用以集成输入信息和推理规则得到一组灌溉信息。 下面给出一种简单的模糊合成运算的定义。

定义7 模糊合成运算:

(1) 组合前提的不确定性计算:可采用最大最小法和排斥原理:

当组合前提E是多个单一前提的合取时, 若已知CF(E1),…,CF(En)), 则:

CF(E)=min{CF(E1),…,CF(En)};

当组合前提E是多个单一前提的析取时, 若已知CF(E1),…,CF(En)), 则:

CF(E)=max{CF(E1),…,CF(En)};

当前提是模糊命题的否定时:

(2) 结论不确定性的更新: 基于乘法原理, 由产生式E→H(CF,λ)确定的结论的隶属度CF(H)=CF(E)·λ。

(3) 结论不确定性的合成: 由多条不同前提推出了相同的结论, 但可信度不同, 则用合成算法求出综合可信度。设有推理:E1→H(CF1,λ1),E2→H(CF2,λ2)则,

依据容斥原理:

CF(H)=CF1(H)+CF2(H)-CF1(H)·CF2(H)

(I)

依据最大隶属原则:

CF(H)=max{CF1(H),CF2(H)}.

(II)

(I)和(II)可根据实际情况选择一种即可。

注意:三条以上同结论推理合成, 先合成两条生成一条, 在将新生成的一条与第三条进行合成, 直至将所有推理合成一个。

“去模糊化”是将模糊合成得到的一组模糊信息, 通过合成计算比如加权平均得到一个分明的特征数作为灌溉时长。

下面给出模糊智能灌溉系统的核心算法:

2.2 输入

(1) 二元组T=([t0,t],Tg)表示温度及其等级划分, [t0,t]⊂R为温度取值范围,Tg={t1,t2,…tm}是对温度划分的等级之集,m为划分等级数; 比如温度划分为“低温”, “中温”, “高温”, 3个等级。

(2) 二元组H=([h0,h],Hg)表示湿度及其等级划分, [h0,h]⊂(0,1)为温度取值范围,Hg={h1,h2,hn}是对湿度划分的等级之集,n为划分等级数; 比如湿度划分为“干燥”, “适宜”, “潮湿”, 3个等级。

(3) IN=(tin,hin)∈[t0,t]×[h0,h] 表示当前土地温度和湿度;

(4) 集合G={g1,g2,…gw}为灌溉时长等级,w为划分等级数; 比如加时等级划分为“短”, “中”, “长”, 3个等级;

(5) 灌溉等级的特征函数ch为映射G→Rm, 将各灌溉时长等级映射到一个具体的时长;

2.3 模糊化

(1) 温度隶属度函数ft为映射[t0,t]→(0,1)Tg, 定义了不同温度对各温度等级的隶属度。 一般由领域专家给出, 或基于大量实践数据统计获得;

(2) 湿度隶属度函数fh为映射[h0,h]→(0,1)Hg, 定义了湿度对不同等级的隶属度, 也由领域专家给出, 或基于大量实践数据统计获得;

2.4 建立推理规则库

模糊合成推理规则库F为二级映射(Tg×Hg→G)→(0,1), 定义了不同温度和湿度等级组合下需要灌溉时长等级, 及其隶属度; 一般, 若不考虑第二级映射则F为Tg×Hg→G认为推理结果是分明的。

2.5 模糊合成

是根据定义6、定义7与推理规则库F进行模糊合成计算所得到的模糊结论以各灌溉等级的隶属度形式体现;

2.6 去模糊化

2.7 输出控制信息

若f≥CH(g1)即计算所得灌溉时长不小于最小灌溉时长等级特征数系统进入加时阶段, 灌溉时间为f; 否则系统等待f长度的时间; 总之f长度的时间后再获取彼时土地温度、湿度进行下一周期模糊智能灌溉控制。

下面讨论系统运行的时间和空间复杂度。

定理1 若模糊智能灌溉系统中温度、湿度、灌溉时长等级划分数分别为m,n,w; 温度、湿度的论域为有限可数集合T,H; 则系统运行一个周期的时间复杂度和空间复杂度都为o(m|T|+n|H|+mn+w).

证明:先计算空间复杂度, 需要存储m个温度等级的温度隶属度曲线数据规模为o(m|T|), 同理湿度对各湿度等级隶属度数据复杂度为o(n|H|). 模糊推理规则库是m×n的一个二维表, 空间复杂度为o(mn); 还有存放各灌溉等级的特征数即灌溉时长, 规模为o(w)。 所以空间复杂度为,

o(m|T|+n|H|+mn+w).

再计算时间复杂度, 考虑一个灌溉周期计算出灌溉时长的时间复杂度。 需要查找当前温度对m个温度等级的隶属度, 时间复杂度为o(m|T|), 查找当前湿度对各湿度等级隶属度时间复杂度为o(n|H|)。 在模糊推理规则库中搜索被激活规则复杂度是规则库二维表规模o(m×n)。 模糊合成计算的时间复杂度为被激活规则数也为o(mn)。 最后加权平均求灌溉时长, 时间复杂度为灌溉等级数o(w)。 所以时间复杂度为,

o(m|T|+n|H|+mn+w). □

定理2 若模糊智能灌溉系统中温度、湿度、灌溉时长等级划分数分别为m,n,w; 温度、湿度的论域为不可数集合T,H; 则系统运行一个周期的时间复杂度和空间复杂度都为o(m|ft|+n|fh|+mn+w)。

证明:当温度、湿度的论域为不可数集合T,H时; 温度、湿度的隶属函数ft,fh也必须定义成确定的连续函数;这样隶属度存储和计算与ft,fh的规模|fh|,|ft|成正比,其他它证明过程与定理1证明相同。 □

3 模糊智能灌溉系统的一个算例

3.1 数据模糊化

如图1给出了土地0-100°C温度对“低温”, “中温”, “高温”3个等级的隶属度的一种定义; 由图知若当前土地温度为65°C则隶属度为,

图1 温度对各等级的隶属度曲线

图2 湿度对各等级的隶属度曲线

如图2给出了土地湿度0%-60%对“干燥”, “适宜”, “潮湿”的隶属度的一种定义; 由图知若当前土地湿度为21%则其隶属度为,

3.2 建立推理规则库

表1定义了一种不同温度和湿度等级组合下需要灌溉时长的分明推理规则。

表1 模糊合成推理规则库

由于温度(65°C)对“低温”, 湿度(21%)对“潮湿”的隶属度为0; 所以表1规则库中的“低温”列和“潮湿”行不被激活。 激活规则如表2所列。

3.3 模糊合成计算

表2知有如下4条规则被激活:

a.中温∧干燥→长;
b.高温∧干燥→长;
c.中温∧适宜→中;
d.高温∧适宜→中;

由于规则条件中连接两个条件的是“且”, 故在此选用取最小值法确定四条规则的强度:

规则a:温度对“中温”隶属度为0.50, 湿度对“干燥”隶属度为0.16, min(0.50, 0.16)=0.16;

规则b:温度对“高温”隶属度为0. 13, 湿度对“干燥”隶属度为0.16, min(0.13, 0.16)=0.13;

规则c:温度对“中温”隶属度为0.50, 湿度对“适宜”隶属度为0.40, min(0.50,0.40)=0.40;

规则d:温度对“高温”隶属度为0. 13, 湿度对“适宜”隶属度为0.40, min(0.13,0.40)=0.13。

规则a和b的结论都为“长”, 根据定义7的(I)式按乘法原理合称为:

0.16+0.13-0.16*0.13=0.27

所以结论为“长”的隶属度最终为0.27。 同理可得结论为“长”的隶属度最终为0.48。

3.4 去模糊化

表3将各灌溉时长等级映射到一个具体的时长。

表3 灌溉等级的特征函数

因为683≥200, 所以当土地温度65°C, 湿度21%, 灌溉系统将灌溉约680秒; 680秒后模糊智能灌溉系统将再次获取彼时土地湿度和温度进入下一周期模糊控制灌溉。

4 总结

通过传感器实时获取土地温度和湿度。 基于模糊控制基本原理建立了模糊智能灌溉系统。 基于人对温度、湿度感知的定性信息, 建立了土地温度和湿度的隶属度函数曲线, 给出了基于不同温度、湿度等级确定灌溉时长的模糊推理规则库。 通过模糊合成计算, 系统会确定灌溉时长。 接着讨论了系统运行的时间复杂度和计算复杂度, 并进行了严格的形式化证明。 最后给出了模糊智能灌溉系统的一个运行实例, 实例显示系统智能高效。

猜你喜欢

灌溉系统复杂度湿度
湿度变送器测量结果不确定度评定
一类长度为2p2 的二元序列的2-Adic 复杂度研究*
高效节水灌溉系统为农作物提供“精准服务” 京郊农庄里的节水“新花样”
毫米波MIMO系统中一种低复杂度的混合波束成形算法
加湿器用不对 警惕肺炎缠身
Kerr-AdS黑洞的复杂度
非线性电动力学黑洞的复杂度
仿生高效节水灌溉系统
市政园林灌溉系统的设计与施工
带有双检测结构的电缆接头保护装置