参考课程https://www.bilibili.com/video/BV1PE411W7QM/?spm_id_from333.1387.favlist.content.clickvd_source8f8a7bd7765d52551c498d7eaed8acd5一、模糊神经网络系统FNN1、FNN的提出1模糊控制的局限性与改进模糊控制利用专家经验建立起来的模糊集、隶属度函数和模糊推理规则等实现了复杂系统的控制控制器设计是基于人们在操作系统实践中积累的一些经验知识通过主观的反复实验得到隶属度函数和模糊控制规则然而当环境发生变化时模糊控制器缺乏自我调节和自学习的能力对此Sugeno提出将规则的自组织问题转化为参数估计问题但仍无法避免主观性2神经网络控制的局限性与改进神经网络由大量连接的神经处理单元组成的具有高度的非线性映射能力和自学习能力能够从样本数据中进行学习和泛化计算速度快神经网络具有两大主要特征——分布表示和学习能力然而神经网络无法处理语言变量也不可能将专家的先验控制知识注入到神经网络控制系统中去使得原本不是“黑箱”结构的系统设计问题只能用“黑箱”系统设计理论来进行另外它还存在局部收敛问题对此可以利用神经网络的学习功能来优化模糊控制规则和相应的隶属度函数将一些专家知识预先分布到神经网络中去3神经网络专家系统的局限性与改进专家系统是一个智能信息处理系统它处理现实世界中提出的需要由专家来分析和判断的复杂问题并采用专家推理方法来解决问题传统的专家系统采用产生式规则和框架式结构基于符号的知识的显式表示它的缺点很明显专家本人无法用这些规则来表达他们的经验对此可以改进专家系统利用神经网络专家系统是符号的隐式表示它的知识库是分布在大量神经元以及它们之间的连接系数上的知识获取只是神经网络的简单训练过程2、FNN的结构1FNN中神经网络的输入输出节点用来表示模糊控制系统的输入输出信号隐含节点用来表示隶属度函数和模糊控制规则。2整个神经网络模型通常分成五个层次①第一层输入节点用来表示语言变量。②第二层表示语言变量语言值的隶属度函数可用单一神经元或一个小的子网络用于模糊化。③第三层规则节点实现模糊逻辑推理。④第四层语言变量语言值的隶属度函数二、三层节点之间的连接系数定义为规则节点的条件部三、四层节点之间的连接系数定义为规则节点的结论部用于精确化。⑤第五层输出层每个输出变量有两个语言节点分别是表示模糊神经网络推理控制的输出信号节点、用于在训练神经网络时需要的期望输出信号的馈入反馈输入。3、基本功能和函数关系1单个神经元的输入函数和激励函数2不同层的函数关系①第一层将输入变量值直接传送到下层。②第二层用单一节点完成简单的隶属函数如对一钟形函数。③第三层实现模糊逻辑规则的条件部的匹配规则节点完成模糊“与”运算玛达尼推理法。④第四层有两种操作模式。[1]在从下到上的传输模式中实现的是模糊逻辑推理运算。[2]在从上到下的传输模式中此节点实现的是输出变量期望输出信号的馈入的模糊化。⑤第五层有两种操作模式。[1]执行从下到上的信号传输方式实现模糊输出的精确化计算。[2]执行从上到下的信号传输方式实现了把实验数据反馈到神经网络中去的目的提供模糊神经网络训练的样本数据。3基于神经元网络的基本模糊逻辑运算①用单个神经元实现钟形隶属度函数②用常规的S神经元表示隶属度函数4神经元网络实现的基本的模糊逻辑运算——“与”、“或”、“非”的方法把“人话”转为“数学语言”①直接法设置神经元的激励函数为“与”、“或”、“非”比如Softmin激活函数②有序加权平均OWA法二、模糊神经网络的学习算法1、使用B-P算法训练模糊神经网络1可以使用B-P算法训练模糊神经网络首先取误差函数2权值的修正公式为3假设隶属度函数为钟形函数其中和为可调参数。4各层的B-P算法①第五层②第四层在从下到上的传播模式中此层主要完成模糊推理运算在这一模糊神经网络结构中没有任何参数进行更新要做的是实现误差的反向传播计算③第三层④第二层2、实例——基于模糊神经网络的移动机器人沿墙导航控制1背景沿墙导航控制问题是指驱动机器人在一定方向上沿墙运动或者更一般意义上的沿着物体轮廓运动并与墙保持一定距离墙体情况可分为以下几种①跟踪一个未知的墙体当获得的环境信息太少或无法获得机器人的轨迹可能会特定为“沿着右边的墙体运动直到发现第一个门口”另外如果移动机器人的任务是绘制全局模型它就必须沿墙体行进将地图描述完全②跟踪一个已知墙体机器人按照规划好路径跟踪轨迹为了使算法误差保持在小范围内而跟踪墙体或者路经规划中包括已知墙体需要机器人沿墙行进完成特殊的任务移动机器人侧壁上方安装有16个声纳按顺时针排列从0#到15#移动机器人要避免与墙体碰撞又要保持一定距离所以为每个声纳设置一个阈值当声纳检测到的距离值大于或小于这个阈值就采取相应的动作2神经网络的输入与输出3设计七层模糊神经网络