﻿ 基于BP神经网络的船舱温度预警系统
 舰船科学技术  2017, Vol. 39 Issue (1): 145-149 PDF

Cabin temperature early warning system based on BP neural network
WANG Ming-qiang, QIAN Xing-da, LIU Zhi-qiang
School of Mechanical Engineering, Jiangsu University of Science and Technology, Zhenjiang 212003, China
Abstract: Aiming at the existing ship engine room environment monitoring alarm system is unable to cabin fire warning defects, design a based on BP neural network cabin temperature warning system. The cabin of a fixed point temperature of simulation prediction results were obtained, and compared with the actual measured temperature data comparison to verify the correctness of the simulation results. Experiments show that, the cabin temperature prediction model for the prediction of the results and the real measured temperature data comparison with relatively high accuracy, can achieve the effect of temperature prediction, of ship engine room fire warning has a certain significance.
Key words: cabin temperature prediction     BP neural network     fire early warning
0 引 言

1 基于 BP 神经网络的温度预测方法设计 1.1 现有的船舱环境温度测试方法

 图 1 温度测量原理图 Fig. 1 Schematic diagram of temperature measurement

1.2 BP 神经网络

BP 神经网络的拓扑模型包括输入层、隐层和输出层，首先输入样本从输入层单元传到隐含层单元，经隐含层单元处理后产生一个输出，传输至输出层[6]（见图 2）。

 图 2 典型的 BP 神经网络模型 Fig. 2 Typical BP neural network model

BP 神经网络的基础模型，第 1 层为输入层，中间为隐含层，第T 层为输出层，假设隐含层中的某一层为第t 层，第t 层有p 个神经元，从前 1 层输入到第t 层的第i 个神经元的权值为 $w_{ji}^{(t)}\left( {i = 1,2, \cdots ,p} \right)$，该隐层节点为 $y_j^{(t)}$，当输出节点的期望值为q1 时，则该隐层节点的输出公式如下[7]

 $\begin{array}{l} y_j^{(t)} = f(\sum\limits_i {w_{ji}^{(t)}} {x_i}-{\theta _j}) = f(ne{t_t})\text{，}\\[10pt] \quad \quad \left( {x_0^{(t-1)} = \theta _i^{(t)},w_{j0}^{(t)} =-1} \right)\text{。} \end{array}$ (1)

 $ne{t_j} = \sum\limits_i {w_{ij}^{(t)}{x_i}-{\theta _j}}\text{，}\;\;\;\left( {i = 1,2, \cdots ,p} \right)\text{，}$ (2)

 $y_j^{(t + 1)} = f(\sum\limits_j {w_{ji}^{(t + 1)}{y_j}-{\theta _1}} ) = f(ne{t_{t + 1}})\text{，}$ (3)

 $ne{t_{t + 1}} = \sum\limits_j {w_{ji}^{(t + 1)}{y_j}-{\theta _1}} \text{。}$ (4)
 图 3 基于 BP 网络的温度预测模型 Fig. 3 Temperature prediction model based on BP network
1.3 基于 BP 神经网络的温度测试模型

 图 4 程序流程图 Fig. 4 Program flow chart
2 基于 BP 网络的温度预测方法仿真 2.1 利用线性回归预测温度变化

 图 5 线性回归方程 Fig. 5 linear regression equation

 图 6 预测温度与实际温度比较 Fig. 6 Comparison of predicted temperature and actual temperature
2.2 建立 BP 神经网络预测模型 2.2.1 具体的网络模型

2.2.2 算法步骤

1） 初始化输入数据

x’i = 原始的温度数据，xi = 归一化后的数据，（i = 1，2，…，a）。

xi = （x’i-μ）/σ，其中μ 为原始数据的算术平均值，$\mu = \frac{1}{n}\sum\limits_{i = 1}^n {{x_i}}$σ 为原始数据的标准差，$\sigma = \sqrt {\frac{1}{n}\sum\limits_{i = 1}^n {{{({x_i}-\mu )}^2}} }$

2） 初始化权值、权值增量和阈值

① 计算隐层输入：${s_j} = \sum\limits_{i = 1}^n {{w_{ij}} \times {x_i}-{\theta _j}}$i = 1，2，…，aj = 1，2，…，b），

② 计算隐层输出：${y_j} = f({s_j})$j = 1，2，…，b）。

yj = （sj-μ）/σ，其中μ 为原始数据的算术平均值，$\mu = \frac{1}{n}\sum\limits_{i = 1}^n {{s_i}}$σ 为原始数据的标准差，$\sigma = \sqrt {\frac{1}{n}\sum\limits_{i = 1}^n {{{({s_i}-\mu )}^2}} }$

① 计算输出层输入：${h_k} = \sum\limits_{j = 1}^n {{w_{jk}} \times {y_j}-{\gamma _k}}$j = 1，2，…，bk = 1，2，…，c），

② 计算输出层输出：${z_k}\!=\!f({h_k})$k = 1，2，…，c）。

zk = （hk-μ）/σ，其中μ 为原始数据的算术平均值，$\mu = \frac{1}{n}\sum\limits_{k = 1}^n {{h_k}}$σ 为原始数据的标准差，$\sigma = \sqrt {\frac{1}{n}\sum\limits_{k = 1}^n {{{({h_k}-\mu )}^2}} }$

① 根据目标输出值tk 和实际输出zk，计算输出层各单元的一般化误差dk

 ${d_k} = ({t_k}-{z_k}) \cdot {z_k}(1-{z_k})\;\;\left( {k = 1,2, \cdots ,c} \right)\text{，}$ (5)

② 根据连接权值vjk、输出层的一般化误差dk 和中间层的输出yj 计算中间层各单元的一般化误差ej

 ${e_j} = \left[ {\sum\limits_{k = 1}^n {{d_k} \cdot {v_{jk}}} } \right]{y_j}(1-{y_j})\;\;\;\left( {j = 1,2, \cdots ,b} \right)\text{。}$ (6)

① 根据输出层各单元的一般化误差dk 与中间层各单元输出yj 来计算中间层至输入层的连接权值vjk 的增量 ∆vjk 并修正权值：

 $\begin{array}{l} \Delta {v_{jk}}\!=\!-\delta {d_k}/\delta \Delta {v_{jk}}\!=\!eta \times \left\{ {\begin{array}{*{20}{l}} {\left[ {{x_i}(i + 1)\!-\!{z_k}} \right] \times {z_k}}\\ { \times (1.0-{z_k}) \times {y_j}} \end{array}} \right\} + \\ \;\;\;\;\;\;\;\;\;\;\; alph\alpha \times \Delta {v_{jk}}\text{。} \end{array}$ (7)

② 根据中间层各单元的一般化误差ej 与输入层各单元输入xi 来计算中间层至输入层的连接权值wij 的增量 ∆wij 并修正权值：

 $\begin{array}{l} \Delta {w_{ij}}\!=\!-\delta {e_j}/\delta \Delta {w_{ij}}\!=\!\eta \times \left\{ {\begin{array}{*{20}{l}} {\left[ {{x_i}(i + 1)-{z_k}} \right] \times {z_k}}\\ { \times (1.0-{z_k}) \times {y_j}}\\ { \times \left[ {1.0-{y_j} \times {x_i}} \right]} \end{array}} \right\} + \\ \;\;\;\;\;\;\;\;\;\;\; alph\alpha \times \Delta {w_{ij}}\text{。} \end{array}$ (8)

③ 修正权值：

 $\begin{array}{l} v{'_{jk}} = {v_{jk}} + \Delta {v_{jk}}\text{；}\\[5pt] w{'_{ij}} = {w_{ij}} + \Delta {w_{ij}}\text{。} \end{array}$ (9)

3 温度数据分析与预测

 图 7 预测温度与实际测量温度比较 Fig. 7 Comparison between predicted and measured temperature

4 结 语

 [1] 曹玉姣. 船舶机舱自动化监控系统研究[J]. 中国水运, 2010 :107–109. CAO Yu-jiao. Research on automatic monitoring system of marine engine room[J]. China Water Transport, 2010 :107–109. [2] 刘跃. 基于. NET的船舶机舱自动化及智能故障诊断技术研究[D]. 镇江:江苏科技大学, 2007:2-8. LIU Yue. Research on marine engine room automation and intelligent fault diagnosis technology based on. NET[D]. Zhenjiang:Jiangsu University of Science and Technology, 2007:2-8. [3] 阎平凡, 张长水. 人工神经网络与模拟进化计算[M]. 北京: 清华大学出版社, 2000. YAN Ping-fan, ZHANG Chang-shui. Artificial neural network and evolutionary computing[M]. Beijing: Tsinghua University Press, 2000. [4] 孟建伟, 黄学武. 基于CAN总线的船舶机舱综合监控系统[J]. 科技向导, 2012 (8):91–93. [5] 徐丽娜. 神经网络控制[M]. 哈尔滨: 哈尔滨工业大学出版社, 1999. XU Li-na. Neural network control[M]. Harbin: Harbin Institute of Technology press, 1999. [6] 许中华, 杨伟丰, 蒋伟进. BP神经网络学习算法的改进与应用[J]. 计算机工程与科学, 2004, 26 (12):61–6. XU Zhong-hua, YANG Wei-feng, JIANG Wei-jin. BP neural network learning algorithm improvement and application of[J]. Computer Engineering and Science, 2004, 26 (12):61–6. [7] 高隽. 人工神经网络原理及仿真实例[M]. 北京: 机械工业出版社, 2003: 49-70. GAO Jun. Artificial neural network principle and simulation examples[M]. Beijing: Mechanical Industry Press, 2003: 49-70. [8] Silnon Haykin著. 叶世伟, 史忠植译. 神经网络原理[M]. 北京:机械工业出版社, 2004, 60-80. SILNON H, YE Shi-wei, SHI Zhong-zhi, translated. Neural network theory[M]. Beijing:Mechanical Industry Press, 2004, 60-80. [9] ZHANG Shou-chun, GAO Jun-bo. Design of autopilot steering alarm system on ship based on CAN-bus[C]//International Conference on Electronic and Mechanical Engineering and Information Technology (EMEIT), 2011:4085-4088. [10] MARITIN T, HAGAN H B, DEMUTH M B著. 戴葵等译. 神经网络设计[M]. 北京:机械工业出版社, 2005, 30-45. MARITIN T, HAGAN H B, DEMUTH M B et al. Dai Kui translated. neural network design[M]. Beijing:Mechanical Industry Press, 2005, 30-45.