对于任何图形化模拟都不能完全描述算法的细节和其中的技巧,这恰好需要文字来进行必要的补充和描述。在算法程序运行时,帮助系统可以同步用文字来描述算法的核心思想和执行步骤,并且对于程序的每一步运行,调用帮助及解释子系统进行配套的文字解释。
2.5 界面设计
界面设计是本系统的关键工作之一,其直接影响到系统的可用性和趣味性。特别是人机交互界面,通过此界面来对算法进行初始化数据设置和算法程序的运行操作控制。对于不同的算法程序采用与其相匹配的初始化设置界面,例如对于递归算法应限制其递归的深度,对于排序算法即可以让用户自行输入,也可以设定随机数据序列。
3 系统应深入研究的方面
对于同样的问题,必将会有多种算法。为了提高学生的探索能力,应让学生尝试自己设计算法并编写程序,能够通过本系统进行图形化模拟演示。这就需要进一步设计通用公共算法接口子系统,使用户自己的算法能挂接到本系统。为了解决这个问题,需要设计一套框架,来使用通用图形库、通用帮助库与需要模拟演示的程序进行挂接。
因为本系统是一个算法教学辅助系统,那么能够给予使用者提供动态的智能化学习帮助是本系统的关键特色。在下一步研究中将与人工智能、数据挖掘、人工神经网络、计算机图形学等技术相结合,构建经验模型,加入提问推理单元,对于不同的使用者构建问题资料库。能够给学习者建立算法帮助和学习路径,达到自动化算法教学的目的。
4 结束语
本系统是教学方法、专业知识教学、图形化模拟等方面的全新探索。随着可视化教学辅助系统的不断发展,使得在程序设计等专业基础课程体系的教学中增加了新的教学手段。使得学生从枯燥的算法学习中解脱出来,增加了教学中的趣味性和实效性。
参考文献
[1] (美)Roger S. Pressman. 软件工程实践者的研究方法. 机械工业出版社. 2007
Robin D.Burke, Kristian J.Hammond and Vladimir A.Kulyukin. Question-Answering from Frequently-Asked Question Files: Experiences with the FAQ-Finder System[R]. Technical Report TR-97-05, University of Chicago, Department of Computer Science, 1997
D. E. Knuth, J. H. Morris, and V. R. Pratt. Fast pattern matching in strings. SIAM Journal on Computing,6(1): 323-350, 1977
Wong Y F, Sideris A . Learning convergence in cerebellar model articulation controller[J]. IEEE Trans on Neural Networks, 1992, 3(1)