使用MATLAB进行离散数学课程的项目构思?

Dan*_*ura 9 matlab

一位教授让我帮忙制定一个大学项目的规范.当学生应该了解编程的基础知识时.

这位教授是一位数学家,在其他编程语言方面经验不足,所以它应该在MATLAB中.

我想要一些项目的想法.该项目应该

  1. 持续约1至2个月
    • 单独完成
    • 有网络界面会很棒
    • 没有必要深入数学,但有些人会很棒
    • 使用数据库(或在文件中存储数据)

什么样的项目会让学生兴奋不已?

如果您有任何其他提示,我将不胜感激.

更新:学生是二年级学生,已经学习了矢量微积分.这个项目是为期一年的离散数学课程.

更新2:课程涵盖的主题是

  1. 形式逻辑
  2. 证明,递归和算法分析
  3. 集合和组合
  4. 关系,函数和矩阵
  5. 图形和树木
  6. 图算法
  7. 布尔代数与计算机逻辑
  8. 算术,计算和语言建模

它将基于这本书"计算机科学的数学结构:离散数学的现代方法",由Judith L. Gersting撰写

gno*_*ice 8

一般建议:

The MathWorks有许多教学资源可以为您提供课程项目的一些想法.一些示例链接:

具体建议:

我发现有趣的非线性动力学研究生项目之一是Lorenz振荡器.Lorenz振荡器是三个变量的非线性系统,可以表现出混沌行为.这样的系统将提供向学生介绍数值计算的机会(用于模拟微分方程系统,稳定性和收敛等的迭代方法).

这个项目最有趣的事情是我们使用Lorenz振荡器对信号进行编码和解码.这种"加密通信"方面非常酷,并且基于以下期刊文章:

Kevin M. Cuomo和Alan V. Oppenheim, 同步混沌与通信应用的电路实现,物理评论快报 71(1),65-68(1993)

本文讨论了混沌通信系统的硬件实现,但是等效的软件实现应该足够简单(并且更容易让学生实现!).

此类项目的其他一些有用方面:

  • 系统的行为可以在二维和三维图中可视化,从而使学生在MATLAB(PLOT,PLOT3,COMET,COMET3等)中展示了许多图形工具.
  • 音频信号可以从文件中读取,使用Lorenz方程加密,写入新文件,然后再次解密.您甚至可以让每个学生使用他们的Lorenz振荡器代码加密信号并将其交给另一个学生解密.这会将它们引入各种文件操作(FREAD,FWRITE,SAVE,LOAD等),你甚至可以介绍它们来处理音频数据文件格式.
  • 您可以向学生介绍在MATLAB中使用PUBLISH命令,它允许您格式化M文件并将它们发布到各种输出类型(如HTML或Word文档).这将教他们为MATLAB代码制作有用的帮助文档的技巧.