基于小脑模型神经网络轨迹跟踪matlab程序

news2025/1/18 17:16:13

1 CMAC概述
小脑模型神经网络(Cerebellar Model Articulation Controller,CMAC)是一种表达复杂非线性函数的表格查询型自适应神经网络,该网络可通过学习算法改变表格的内容,具有信息分类
存储的能力。
CMAC把系统的输入状态作为一个指针,把相关信息分布式地存人一组存储单元中。它本质上是一种用于映射复杂非线性函数的查表技术。具体做法是将输入空间分成许多分块,每个分块指定一个实际存储器位置;每个分块学习到的信息分布式地存储到相邻分块的位置上;存储单元数通常比所考虑问题的最大可能输入空间的分块数少得多,故实现的是多对一的映射,即多个分块映射到同样一个存储器地址上。
CMAC已被公认为是一类联想记忆神经网络的重要组成部分,它能够学习任意多维非线性映射,CMAC算法可有效地用于非线性函数逼近、动态建模、控制系统设计等。CMAC较其他神经网络的优越性体现在:
①它是基于局部学习的神经网络,它把信息存储在局部结构上,使每次修正的权很少,在保证函数非线性逼近性能的前提下,学习速度快,适合于实时控制;
②具有一定的泛化能力,即所谓相近输入产生相近输出,不同输入给出不同输出;
③连续(模拟)输入、输出能力;
④寻址编程方式,在利用串行计算机仿真时,它可使回响速度加快;
⑤作为非线性逼近器,它对学习数据出现的次序不敏感。
由于CMAC所具有的上述优越性能,使它比一般神经网络具有更好的非线性逼近能力,更适合于复杂动态环境下的非线性实时控制。
CMAC的基本思想在于:在输入空间中给出一个状态,从存储单元中找到对应于该状态的地址,将这些存储单元中的内容求和得到CMAC的输出;将此响应值与期望输出值进行比较,并根据学习算法修改这些已激活的存储单元的内容。CMAC的结构如图8-5所示。
在这里插入图片描述

2 一种典型CMAC算法
CMAC网络由输入层、中间层和输出层组成。在输入层与中间层、中间层与输出层之间分别为由设计者预先确定的输入层非线性映射和输出层权值自适应性线性映射。
在输人层对维输人空间进行划分。中间层由若干个基函数构成,对任意一个输入只有少数几个基函数的输出为非零值,称非零输出的基函数为作用基函数,作用基函数的个数为泛化参数c,它规定了网络内部影响网络输出的区域大小。
中间层基函数的个数用M表示,泛化参数c满足c《M。在中间层的基函数与输出层的网络输出之间通过连接权进行连接,采用梯度下降法实现权值的调整。
CMAC神经网络的设计主要包括输人空间的划分、输入层至输出层非线性映射的实现及输出层权值学习算法。CMAC是前馈网络,输入与输出之间的非线性关系由以下两个基本映射实现。

2.1 概念映射(U→AC)
概念映射是从输入空间U至概念存储器AC的映射。考虑单输入映射至AC中c个存储单元的情况。取u(k)作为网络的输入,采用如下线性化函数对输入状态进行量化,实现CMAC的概念映射
在这里插入图片描述
式中,xmax和xmin为输入的最大、最小值,M为xmax量化后所对应的初始地址,round()为四舍五入Matlab函数,i=1,2,…,c。
由式(8.9)可见,当u(k)为xmin时,u(k)映射地址为1,2,…,c;当u(k)为xmax时,u(k)映射
地址为M+1,M+2,…,M+c。
映射原则为:在输入空间邻近的两个点在AC中有部分的重叠单元被激励。距离越近,重叠越多;距离越远,重叠越少。这种映射称为局部泛化,c为泛化常数。

2.2 实际映射(AC→AP)
实际映射是指由概念存储器AC中的c个单元映射至实际存储器AP的c个单元,c个单元中
存放着相应权值。网络的输出为AP中c个单元的权值的和。
采用杂散编码技术中除留余数法实现CMAC的实际映射。设杂凑表长为m(m为正整数),
在这里插入图片描述

3 算例
在这里插入图片描述

4 验算结果
在这里插入图片描述
6 程序

%CMAC Approximation for nonlinear model
clc
clear;
close all;
%学习效率
xite=0.20;
%动量因子
alfa=0.05;

M=200;
N=100;
c=3;
%权重值
w=zeros(N,1);
w_1=w;w_2=w;d_w=w;
%初始状态
u_1=0;y_1=0;
ts=0.05;
for k=1:1:200
time(k)=k*ts;
%% 输入层
u(k)=sign(sin(k*ts));

xmin=-1.0; 
xmax=1.0;
%% 概念映射与实际映射
for i=1:1:c
    s(k,i)=round((u(k)-xmin)*M/(xmax-xmin))+i;   %Quantity:U-->AC
    ad(i)=mod(s(k,i),N)+1;          %Hash transfer:AC-->AP
end

sum=0;
for i=1:1:c
   sum=sum+w(ad(i));
end
%% 输出层
yn(k)=sum;
y(k)=u_1^3+y_1/(1+y_1^2);   %Nonlinear model
%% 跟踪误差
error(k)=y(k)-yn(k);
%% 权重调整
for i=1:1:c
  ad(i)=mod(s(k,i),N)+1;
  j=ad(i);
  d_w(j)=xite*error(k);
  w(j)=w_1(j)+d_w(j)+alfa*(w_1(j)-w_2(j));
end
%% 迭代更新
%%%% Parameters Update %%%%
w_2=w_1;w_1=w;
。。。。。。。。。略

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/44418.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Oracle-Autoupgrade方式升级19c

前言: Autoupgrade是Oracle 推出的自动升级工具,通过该工具可以将数据库升级为Oracle12.2之后的版本,工具支持升级前的检查、升级问题修复、一键式自动升级以及升级后的问题修复,极大的简化数据库的升级步骤。 支持的目标升级版本: Oracle D…

用 Java 实现爬虫 (爬取本地html中的人物信息并可视化人物关系)

目录 爬虫简介 常用的工具框架 selenium Jsoup Jsoup介绍 Jsoup的主要功能如下: HTML 相关知识 通过Jsoup元素获取 案例 爬取本地html中的角色信息 HtmlParseUtil 可以利用relation-graph 将人物关系可视化 使用爬虫要注意 查看网站的爬虫协议 爬虫简介…

面试:ANR原因及排查

ANR原因 1、CPU满负荷,I/O阻塞 2、内存不足,系统分配给一个应用的内存是有上限的,长期处于内存紧张,会导致频繁内存交换,进而导致应用的一些操作超时。自己内存泄漏或者其他应用占用的大量内存 3、四大组件ANR 4、…

字符串压缩(一)之ZSTD

一、zstd压缩与解压 ZSTD_compress属于ZSTD的Simple API范畴,只有压缩级别可以设置。 ZSTD_compress函数原型如下: size_t ZSTD_compress(void* dst, size_t dstCapacity, const void* src, size_t srcSize, int compressionLevel) ZSTD_decompress函数原…

Mysql replace into

CREATE TABLE t (id int(11) NOT NULL AUTO_INCREMENT,age int(11) DEFAULT NULL,msg varchar(10) DEFAULT NULL,PRIMARY KEY (id),UNIQUE KEY uniq_age (age) ) ENGINEInnoDB DEFAULT CHARSETutf8;insert into t (age, msg) values (1,aaa),(2,bbb),(3,ccc);id 为自增主键、ag…

「重学JS」你真的懂数据类型吗?

前言 学习了这么久前端,发现自己对于基础知识的掌握并没有那么通透,于是打算重新学一遍JS,引用经济学的一句话:JS基础决定能力高度🤦🏻 基础很重要,只有基础好才会很少出 bug,大多数…

aws cloudformation 理解常见资源的部署和使用

参考 cfn101-workshopaws cli cloudformation cloudformation是aws的iac工具,以下简称cfn 环境搭建——cfn命令行工具 创建堆栈 aws cloudformation create-stack --stack-name testtemp \--template-body file://testtemp.yaml# --parameters ParameterKeyKey…

二叉树的循环问题

目录 一、二叉树的完全性检验 二、前序遍历的非递归写法 三、中序遍历的非递归写法 四、后序遍历的非递归写法 一、二叉树的完全性检验 给定一个二叉树的 root ,确定它是否是一个 完全二叉树 。 在一个 完全二叉树 中,除了最后一个关卡外&#xff0c…

Vue脚手架

脚手架 安装步骤 全局安装vue/cli npm install -g vue/cli 安装之后使用不了vue的命令,查看nodejs文件发现我把vue装在了node_globalnpm这个文件夹中。 解决方法:新增一条path指向该文件夹 切换到你要创建的目录创建脚手架 vue create 项目名称 根据…

[附源码]Python计算机毕业设计Django保护濒危动物公益网站

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

【Hack The Box】linux练习-- Talkative

HTB 学习笔记 【Hack The Box】linux练习-- Talkative 🔥系列专栏:Hack The Box 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 📆首发时间:🌴2022年11月27日🌴 &#x…

初始数据结构

目录 1. 集合的框架 集合框架的重要性 数据结构的介绍 算法的介绍 容器背后对应的数据结构 2. 时间复杂度和空间复杂度 算法效率 时间复杂度 时间复杂度的概念 大O的渐进表示法 常见的时间复杂度的计算 空间复杂度 空间复杂度的概念 从本章开始又要开始新的篇章&a…

[附源码]Python计算机毕业设计Django班级事务管理论文2022

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

k8s上部署Harbor通过Nginx-Ingress域名访问

目录 1、k8s集群环境,通过kubesphere安装部署。 1.1 集群基本信息 1.2 集群节点信息 2、安装Harbor 2.1、使用Helm添加Harbor仓库 2.2 、通过openssl生成证书 2.3、 创建secret 2.4、 创建nfs存储目录 2.5、 创建pv 2.6、创建pvc 2.7、values.yaml配置文件 2.…

3-UI自动化-八大元素定位,xpath定位方式和相关的常问面试题

3-UI自动化-八大元素定位,xpath定位方式和相关的常问面试题八大元素定位八大元素定位的使用通过xpath定位xpath语法1. xpath逻辑运算定位2. 层级条件定位3. 索引定位4. 文本定位text()WebElement对象WebElement对象常用属性WebElement对象常用方法find_element()和 …

【Mybatis编程:插入和根据id删除相册数据】

目录 1. Mybatis编程&#xff1a;插入相册数据 2. Mybatis编程&#xff1a;根据id删除相册数据 1. Mybatis编程&#xff1a;插入相册数据 当某个数据表中的id被设计为“自动编号”的&#xff08;auto_increment&#xff09;&#xff0c;在配置<insert>标签时&#xff0…

开心公寓房屋出租管理系统的设计与实现(系统源码+技术文档+论文)

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

基于51单片机病房呼叫系统(64位病床)

资料编号&#xff1a;189 下面是仿真演示&#xff1a; 189-基于51单片机病房呼叫系统&#xff08;64位病床&#xff09;&#xff08;仿真源程序原理图全套资料&#xff09;功能介绍&#xff1a; 设计一个可容64张床位的比那个房呼叫系统。 1、每个床位都有一个按钮&#xf…

InnoDB存储引擎简介

InnoDB存储引擎是一种兼顾高可靠性和高性能的通用存储引擎&#xff0c;在MySQL5.5之后&#xff0c;被选为MySQL的默认存储引擎 InnoDB的特点 1 DML操作循环ACID模型&#xff0c;支持事务 这里就印出了我们之前的知识点 DML操作就是我们对数据进行 增删除查改操作 ACID分别代表…

HTML小游戏14 —— H5横版冒险游戏《无限生机》(附完整源码)

&#x1f482; 网站推荐:【神级源码资源网】【摸鱼小游戏】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 想寻找共同学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】&#x1f4ac; 免费且实用的计…