MATLAB辅助智能控制课程教学实践

2015-12-02 02:40:40刘瑞明王经卓龚成龙
重庆与世界(教师发展版) 2015年11期
关键词:工具箱模糊控制直观

刘瑞明,王经卓,龚成龙

(淮海工学院电子工程学院,江苏连云港 222005)

自动控制技术是现代科技的主要体现之一,尽管传统控制在国民生产、生活中已得到了广泛应用,但传统控制有一个致命的缺点——必须建立描述被控对象的数学模型,这使得传统控制方法的效果不能令人满意甚至无法实现。

随着第三次工业革命的开展,智能控制理论[1-2]在工业界的重要性越加显现。但目前我国的智能控制教学大多通过基于教材的宣讲式授课来实现,对于生硬的理论推导和乏味的文字描述,学生兴趣度不高,教学效果难以保证[3-4]。此外,智能控制课程的授课学时少,缺少实验课程,难以保证教学效果。必须找到一种既能够生动描述理论知识,又能让学生积极动手参与的、互动式教学方式,调动学生的学习积极性,提高教学质量。

根据高等教育心理学的基本原理,知识的感知规律,即组合律、活动律、强度律、差异律和对比律等[5],最能促进大学生对知识产生有效感知的直观形式主要有:言语直观、实物直观和模象直观。但长期的教学经验说明,单纯的语言直观相对较难理解,尤其是理论性较强的课程教学中,学生接受度并不高,很难给学生留下鲜明、形象、逼真的映像,必须同时将实物直观、模象直观和言语直观三种形式,相互配合使用,教学效果才能充分发挥。

基于以上教学理论,利用MATLAB的GUI设计技术,本文开发出一套互动式教学演示系统,对于智能控制这类理论性较强的课程来说,该系统能够使学生直观地观察各种智能控制基本方法的原理及控制过程和控制效果,且能够让学生和系统互动,调动学生学习的积极性,使控制理论不再枯燥乏味,学生乐于接受,从而提高教学效果。

一、智能控制的主要教学内容

智能控制是一门交叉学科,是人工智能与自动控制交叉的结果,人工神经网络、模糊数学、专家系统、进化计算等理论在控制学中的应用就产生了各种智能控制方法,比如神经网络控制、模糊控制、专家系统,还有对上述控制系统进行优化的遗传算法。

(一)神经网络控制

神经网络控制,是人工神经网络(Artificial Neural Network,ANN)在自动控制领域中的应用。人工神经网络简称神经网络,是一种仿生学方法,是对脑神经系统从结构和功能上的一种模拟,具有并行性、鲁棒性和非线性能力强等优点,也可用于模式识别、数据挖掘等领域。典型的神经网络类型包括:BP神经网络、Hopfield网络、径向基函数神经网络、小脑模型神经网络等。神经网络控制的研究分支包括:神经网络系统辨识、神经网络控制器、优化计算等。典型的神经网络控制系统包括:神经网络直接逆控制、神经网络监督控制、神经网络自适应控制、神经网络内膜控制、神经网络预测控制等。要想实现神经网络控制,必须设计合适的神经网络,确定网络的层数、各层的节点数、传递函数等。

(二)模糊控制

模糊控制(Fuzzy Control,FC)是建立在人工经验基础上的控制技术,受熟练操作员通过实践经验精确控制被控对象启发而产生的一种控制方式。但模糊控制并不是经验主义,而是建立在坚实的、模糊数学理论基础上的。模糊数学不模糊,所以通过模糊控制可以精确地控制各种复杂的被控对象。要想实现模糊控制,必须设计模糊控制器和模糊推理,确定隶属度函数、模糊推理策略、模糊等级、模糊化和解模糊(逆模糊)的方法等。

(三)遗传算法

遗传算法(Genetic Algorithm,GA)也是一种仿生科学,是对生物群体进化过程中优胜劣汰、适者生存的自然法则的一种模拟,是达尔文的进化论和孟德尔的基因遗传理论在优化计算领域的应用。理论上来说,它是一种全局优化算法,其操作主要有复制、交叉和变异3个步骤。遗传算法的使用必须将要处理的数据进行染色体编码,并选择一个适应度函数。遗传算法很少单独应用于控制系统,只能与其他智能控制方法混合使用。

二、MATLAB软件及其在智能控制教学中的应用

(一)MATLAB的控制工具箱

MATLAB软件是美国MathWorks公司出品的数学分析、科学研究和工程应用的软件,可用于数据可视化、算法研究开发、数据分析以及数值计算的高级计算语言和交互式软件平台,是各领域工程师进行科学研究、模拟仿真、工程设计和结果验证的常用工具。在自动控制领域,MATLAB开发了与之相关的、强大的分析、设计、仿真及应用功能,各种控制工具箱(控制系统工具箱、系统辨识工具箱、模型预测控制工具箱、神经网络工具箱、模糊逻辑工具箱、鲁棒控制工具箱等)的出现,使之成为控制系统研究的最强大的工具,该软件的熟练使用,已经成为控制类学科的本科生和研究生的基本要求。现有的许多智能控制教材,都结合MATLAB的控制工具箱来辅助讲解,以提高教学质量。与智能系统相关的工具箱包括:

1.神经网络工具箱

神经网络工具箱(Neural Network Toolbox)包含了几乎神经网络理论的所有功能,并一直跟踪学术研究的最前沿,一些理论上较为成熟的、最新的神经网络算法,都可以找到对应的功能模块,现有的神经网络算法包括:感知器、线性网络、Hopfield网络、RBF网络、BP网络、回归网络、Elman网络、Boltzmann网络等,可满足初级学者的学习和培训需要,也可以为各种高级用户提供科学研究和工程应用支持。

2.模糊逻辑工具箱

模糊逻辑工具箱(Fuzzy Logic Toolbox)由一批长期从事模糊数学和模糊控制研究的学者和工程师开发,具有操作方便、图形化设计界面、技术先进、C代码生成、独立模糊推理等优点,其功能强大、使用方便、实用性高的优点。这些优点给各层次的使用者留下了深刻印象,极大地推动了模糊控制技术的普及和发展。由于模糊数学的理论性强,学生理解困难,加之学生的工程经验不足,对控制系统的设计没有足够感性认识,因而结合模糊逻辑工具箱的教学就可以较好地解决这样的教学困局。

3.遗传算法工具箱

较早的遗传算法工具箱(Genetic Algorithm Toolbox)是由英国 Sheffield大学开发的 GATBX,并不是MATLAB自带的工具箱,但具有其他工具箱的风格,可以灵活配置使用。还有美国北卡罗来纳大学开发的GAOT工具箱。从MATLAB 7.0版本以后,推出了MathWorks公司自带的工具箱GADS,由于自身的优势,在可视化方面GADS要好于GATBX和GAOT,从模象直观的角度讲,更适合于辅助教学。

(二)MATLAB的GUI程序设计

MATLAB可视化优势的一个重要体现就是其强大而方便的图形用户界面(Graphical User Interfaces,GUI)设计,通过窗口、菜单、按钮、文字、坐标系、光标等元素,可以灵活地搭建美观、友好的人机交互界面。通过GUI程序设计,能够使各种操作功能的实现在人机交互中进行,且使交互过程实现生动的可视化。MATLAB的GUI程序设计,编程简单易用、灵活方便,与各种控制工具箱相结合,是控制类课程辅助教学的理想选择。

三、智能控制技术教学演示系统

(一)智能控制教学现状及教学改革

随着科学技术的不断发展,智能控制技术已成为自动控制类专业本科学生及研究生教育的专业主干课程,但该学科属于交叉性较强的学科,而且对学生的理论分析能力和实践经验等基础素质要求较高,强调理论、技术与应用相结合,按教学大纲的要求,神经网络、神经网络控制、模糊数学、模糊控制和遗传算法为其主要教学内容。对于上述内容,国内多数教材大多强调数学理论基础,实践、实例内容较少。尽管也有少数教材结合MATLAB工具进行讲解,但都是基于m语言的编程,还是不能提取学生的学习兴趣,教师在授课时,只能采用板书或PPT进行宣讲,使教和学乏味枯燥。开发一种使教学过程变得生动有趣,使教学过程能够互动,学生乐于接受的教学方法,是教学模式改革亟需解决的问题。

(二)智能控制课程教学演示系统

在智能控制技术的教学过程中,传统的课堂宣讲方式主要依靠言语直观来为学生传递知识,但鉴于本课程的特点(交叉性强、理论联系实际的必要性强),言语直观很难给学生留下深刻、鲜明、逼真的映像。依据高等教育心理学的基本原理,我们拟采用实物直观、模象直观和言语直观相结合的方式,三者相互配合、相互印证,学生实际动手,实现互动式教学。人工神经网络、模糊数学和遗传算法对于初次接触的学生来说,与以往的知识结构相比,抽象性强,难以理解。基于知识的感知规律(包括强度律、差异律、组合律、活动律和对比律等)[5],笔者开发了一套教学演示系统(图1)。本系统充分考虑智能控制技术课程的特点,可操作性强,学生实际动手操作,对各种控制方法的原理进行演示和分析,可大大提高教学效果。

图1为本文所开发的教学演示系统的操作界面,该系统是用MATLAB R2014b版本的GUI程序设计开发的。在本科学生的智能控制教学过程中,神经网络控制、模糊控制和遗传算法为主要教学内容。该系统将这三部分内容作为3个主要模块,分别设置3个功能区(神经网络控制功能区、模糊控制功能区和遗传算法功能区),中间区域分配为演示区,主要对各种控制方式的控制效果进行互动演示,在每个功能区中都配置一个“理论分析”的展示区,用来展示对应智能控制算法的理论,比如公式推导、理论框架、原理图等。

图1 计算机图形学演示系统界面

神经网络控制模块,包括样本预处理按钮,对样本的输入输出进行组织,按照格式要求,构成训练所需样本集;传递函数按钮,可以选择合适的传递函数及其参数;几个单选按钮,用于选择想要演示的神经网络类型:单神经元、感知器、BP网络和RBF网络;被控对象按钮用于确定被控对象的类型及参数;演示按钮用于启动对应的神经网络原理和控制过程的演示动画。

模糊控制模块,包括模糊化按钮,通过选择隶属度函数,对输入进行模糊化,作为模糊控制器的输入;解模糊按钮用于选择解模糊的方法;输入上下限编辑框用于确定输入的最大值和最小值;模糊化等级编辑框,用于确定模糊等级,以便编辑模糊表;误差模糊表和控制模糊表用于制定输入量和控制量的模糊表;控制演示按钮用于启动模糊控制器作用于被控对象的演示动画。

遗传算法模块,包括染色体编码长度编辑框,用于确定二进制染色体的位数;群体大小编辑框用于确定群体中染色体的个数;最大进化代数编辑框用于规定进化结束的代数,即循环次数的上限;交叉概率和变异概率编辑框用于输入两个概率的数值;TSP问题求解按钮将TSP问题作为实例,对遗传算法的效果进行动画演示。

本演示系统主要实现对以上3个教学内容进行直观演示,以帮助学生体会智能控制技术的原理和实践,并深刻理解相应的数学理论。

(三)单神经元原理教学实例

单神经元是神经网络的基础,单神经元的深刻理解,决定了学生对神经网络的接受程度,我们以单神经元讲解为例,说明该系统的在智能控制教学中的辅助作用。

单神经元j的结构示意图如图2所示,其中xi为神经元的第i个输入,Wij为第i个输入(或神经元)与当前神经元j之间的连接权值。∑表示求和运算,f表示传递函数(或转移函数),Oj为当前神经元的输出。单神经元的数学模型可表示为

在图2中,选择单神经元单选按钮,点击原理演示按钮,可以演示单神经元的数学模型和结构示意图,其中数学模型在神经网络控制模块的下方,理论分析区演示,单神经元的结构示意图在中央的演示区展示,这样学生可以将数学模型和结构图对应,相互映证加深理解,结合课堂讲解来加强教学效果。

图2 单神经元结构示意图

四、结束语

智能控制是一门多学科交叉的现代科学技术,作为控制类专业学生的主干课程,学习难度较大。为了对智能控制课程进行教学改革,提高教学质量,本文利用MATLAB R2014b版本的GUI程序设计,开发了一套辅助教学系统——智能控制教学演示系统,系统的互动演示功能,激发了学生的学习兴趣,提高了该课程的教学质量。

致谢:感谢江苏省2015年度研究生教育教学改革研究与实践课题(JGLX15_180)和2012年度校级高等教育研究课题对本论文的资助。

[1] 韩力群.智能控制理论及应用[M].北京:机械工业出版社,2010.

[2] 李国勇.智能控制及其MATLAB实现[M].北京:电子工业出版社,2005.

[3] 余伶俐,蔡自兴,肖晓明.智能控制精品课程教学改革研究[J].计算机教育,2010(19):35-39.

[4] 张允,张运波,侯丽华,等.应用型本科“智能控制技术”课程教学改革的研究与实践[J].电力教育,2012(36):52,58.

[5] 谭顶良.高等教育心理学[M].南京:河海大学出版社,南京师范大学出版社,2006.

猜你喜欢
工具箱模糊控制直观
数形结合 直观明了
简单直观≠正确
根据计数单位 直观数的大小
T-S模糊控制综述与展望
基于模糊控制的PLC在温度控制中的应用
电子制作(2016年21期)2016-05-17 03:53:01
Matlab曲线拟合工具箱在地基沉降预测模型中的应用
基于模糊控制的恒压供水系统的研究
几何直观,相时而动有讲究
用于光伏MPPT中的模糊控制占空比扰动法
电源技术(2015年11期)2015-08-22 08:50:38
搜狗分号工具箱 输入更便捷