当前课程知识点:智能控制 > 第六章 典型神经网络 > 6.2 BP神经网络 > 6.2.2.1 BP神经网络应用实例分析之一:逻辑运算异或实现
第一个例子就是
采用BP神经网络
实现逻辑运算“异或”功能
设计一个MATLAB程序
采用BP神经网络
实现逻辑运算“异或”功能
那么它的步骤如下
第一步 参数初始化
根据逻辑运算“异或”规则
设计神经网络
那显然它是一个两输入
一输出的
有两个权值一个阈值
需要进行初始化
第二步
依次计算每层神经元的实际输出
直到输出层
第三步 权值迭代
正向信号传递
反向误差修正
这是给它样本
然后要实际输出和期望输出进行比较
根据误差信号
进行误差反向传播
调整它的连接权值和阈值
第四步重复步骤2和3
直到神经网络的实际输出误差
减少到可接受的程度
或者预先设定的学习次数为止
那么这是一个仿真的结果
采用的MATLAB程序
设计程序之后
我们给他四个样本
01、10、00和11
分别对应的是
P0、P1、P2、P3这四个输入样本
我们经过迭代次数
达到4500次之后
这样的话
我们可以对它进行一个训练
达到这么一个效果
当输入为00和11的时候
也就是P2和P3
最后它的函数值输出
y输出是趋于0的
同为0
当输入为01和10的时候
它的输出y是趋于1的
正好实现了逻辑运算“异或”功能
那么实际上经过了
是4433次迭代后
限定停止条件为
误差限为10的负3次方
也就是0.001时
这样的话经过BP算法优化
权值分别为
ω1为5.4489
5.4380
3.6502
3.6402
ω2为11.2146
-12.1068
那么当输入为01的时候了
BP神经网络的输出值为0.9848
接近期望输出为1
当输入为10的时候
BP神经网络的输出值为0.9848
接近期望输出为1
当输入为00的时候
BP网络的实际输出为0.0016
接近期望输出0
当输入为11的时候
BP神经网络的输出
值为0.0162
接近期望值0
这时候误差已经满足了设定的要求
算法运行时间短
准确度较高
可以较好地实现逻辑运算“异或”功能
这是第一个例子
-开篇
--开篇
-1.1课程考试方式
-1.2 数据、信息、知识与智能
-1.3传统控制面临的挑战
-1.4 控制科学发展过程
-1.5 智能控制的多元论
--1.5
-1.6 控制策略的渗透与融合
--1.6
-1.7 智能控制与传统控制的联系与区别
--1.7
-1.8 智能控制的类型之分级递阶智能控制系统
--1.8
-1.9 智能控制的类型之专家控制系统
--1.9
-1.10 智能控制的类型之模糊控制系统
--1.10
-1.11 智能控制的类型之神经网络控制系统,智能控制的类型之基于规则的仿人智能控制系统,集成智能控制系统,组合智能控制
--1.11
-1.12智能控制系统的类型之基于规则的仿人智能控制系统,集成智能控制系统,组合智能控制
--1.12
-1.13本章小结
--1.13
-第一章测试
-2.1基于搜索的问题求解
-- 2.1.7 均一代价搜索
-- 2.1.10 A星算法
-2.2 专家系统简介
- 2.3 专家PID
-第二章测试
-3.1 模糊控制概述
-3.2 模糊集合
-3.3 隶属函数
--3.3隶属函数.
-3.4 模糊关系及其运算
-第三章测试
- 4.1 模糊自适应整定PID控制原理
-4.2 基于FF的模糊PID控制试验验证
-第四章测试
- 5.1 神经网络简介
- 5.2 神经网络的发展简史
-5.3 神经网络的基本概念
- 5.4 神经网络的分类
-5.5 神经网络的学习算法、基本特征和研究领域
-第五章测试
-6.1 感知器
--6.1.2.1 感知器应用实例分析(实现逻辑运算与或非)
- 6.2 BP神经网络
--6.2.2.1 BP神经网络应用实例分析之一:逻辑运算异或实现
--6.2.2.2 BP神经网络应用实例分析之二:非线性函数拟合
-第六章测试
- 7.1 什么是遗传算法
-7.2 遗传算法的特点
-7.3 遗传算法的基本操作之复制
-7.4 遗传算法的基本操作之交叉与变异
-第七章测试
-8.1 遗传编程工作原理
-8.2 遗传编程基本操作之复制
-8.3 遗传编程基本操作之交换和突变
- 8.4 遗传编程的工作步骤及实例分析
-第八章测试
-期末测试