欢迎来到天天文库
浏览记录
ID:14954083
大小:920.00 KB
页数:21页
时间:2018-07-31
《基于delphi的神经网络系统辨识侧重程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、中南大学基于Delphi的神经网络系统辨识学院:信息科学与工程学院专业班级:自动化****姓名:********学号:**********指导老师:*********第一章绪论1.1训练目的1、能针对题目独立展开调研,查阅相关教材、论文和数字文献资料,在此基础上找到解决问题的方法和思路,并做好实施方案;2、了解辨识系统的原理和基本方法,重点掌握基于神经网络非线性系统辨识方法;3、了解BP神经网络及其在系统辨识建模中的应用;4、能设计理想的神经网络(结构、隐层数及其节点数),分析其非线性映射能力如何保证及其在系统辨识中具有良好的泛化
2、能力;5、熟悉Delphi开发环境,能在该环境下实现BP神经网络对不同的非线性系统的辨识;6、神经网络的设计和分析过程中,设计者需融入自己的细想,发挥其主观能动性,尤其需适当改进神经网络学习算法,以保证算法的收敛性和稳定性;7、培养综合运用基础理论知识独立分析和解决问题的能力;8、加深对基础理论部分的理解的同时,提高实践能力。1.2工程训练内容和基本要求1、熟悉Delphi开发环境,实现BP神经网络的构件,绘制仿真曲线;2、采用BP神经网络辨识非线性扩展自回归滑动平均模型(NARMAX),模型的参数和结构自行设置,最后具有代表性;
3、3、设计可视化界面,能交互式地改变系统的阶次和系统的参数,并相应地改变神经网络结构和算法,实时的显示仿真曲线(输入输出数据的跟踪曲线)和建模误差曲线;4、根据仿真结果适当修改或改进神经网络的结果或学习算法,并分析各算法的收敛性和稳定性;5、比较两种或两种以上的辨识方法(如采用不同的神经网络),根据系统辨识效果的好坏,分析造成实验结果的原因,阐述自己对此的观点和改进建议;6、必须有完整的可视化界面,利用数据或曲线作为实验结果,具有一定的说服力;7、根据实验结果,分析你所采用的方法的合理性、优越性和不足之处,要求体现自己的设计思想。1
4、.3工程训练的意义通过完成从用户需求分析、Delphi界面设计到上机编程、算法实现、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容。第二章程序设计流程程序设计流程如下:1、按照软件工程学的方法,对需要开发的软件进行需求分析、可行性分析以及详细的设计等;2、建立一个新的项目,根据需要建立所需要的窗体;3、根据需要向窗体中添加组件,设计窗体的外观和组件的布局,即设计用户界面;4、根据需要设置组件的相应属性;5、根据需要编写事实响应代码;6、保存项目相关的所用文件,编译、调试和运行程序。第三章Delphi界面设计2.1设计要求1
5、、显示与BP算法的相关参数,并可以修改其参数;2、显示通过BP算法逼近的训练曲线以及误差曲线:3、可以选择不同类型的函数曲线以此来验证BP算法。2.2Delphi实现总的设计界面如下:具体相关代码如下:此系统读者可以手动改变BP算法的相关参数,例如:输入节点、学习速率、动量因子。界面如下图:界面显示的相关代码如下:objectLabel1:TLabelLeft=40Top=33Width=48Height=12Caption='输入节点'Font.Charset=ANSI_CHARSETFont.Color=clWindowTex
6、tFont.Height=-12Font.Name='宋体'Font.Style=[]ParentFont=FalseendobjectLabel2:TLabelLeft=174Top=33Width=66Height=12Caption='学习速率η='Font.Charset=ANSI_CHARSETFont.Color=clWindowTextFont.Height=-12Font.Name='宋体'Font.Style=[]ParentFont=FalseendobjectLabel3:TLabelLeft=308Top=
7、33Width=66Height=12Caption='动量因子α='Font.Charset=ANSI_CHARSETFont.Color=clWindowTextFont.Height=-12Font.Name='宋体'Font.Style=[]ParentFont=FalseEnd系统通过BP算法现实的曲线图界面如下:相关代码如下:objectChart1:TChartLeft=-8Top=204Width=409Height=293BackWall.Brush.Color=clWhiteBackWall.Brush.Sty
8、le=bsClearBackWall.Color=clSilverFoot.Text.Strings=('k')MarginBottom=0MarginLeft=0MarginRight=0MarginTop=2Title.Text.Strings
此文档下载收益归作者所有