I am currently teaching an undergraduate course on elementary differential equations in a mixed class of natural science (physics, chemistry, biology, etc) and computer science majors. Since none of the students are mathematics majors, I wanted to tailorfit the course by providing a good balance between theory and applications. In the case of physics, chemistry and biology, the applications are readily available in most differential equations texts. Unfortunately, computer science majors seem to be left out, and when I was asked by students on the use of the course in their field, I was unable to provide a satisfactory answer.
I did some search on Google, with a hunch on the existence of applications in the study of algorithms and machine learning. I quickly realized that I am entering unfamiliar territory since I have very little background on computer science myself. I found several research papers but no satisfactory text that uses the undergraduate level concepts directly, compared to, say, applications in physics such as spring vibration and escape velocity that directly use and illuminate the concepts.
I think my question is already obvious without stating, but are there any applications of elementary differential equations to computer science that I can use in an undergraduate class? The applications I'm looking for should satisfy the following:
- Use linear, preferably first or second order ODEs.
- Do not require a lot of background to explain.
- Appropriate for inclusion in a written exam.
One question that the computer science majors in your class may be asking themselves is "why do we need to worry about analytic solutions to differential equations when we can write a computer program that will give us a numerical solution". This could lead to a discussion of various methods of numerical integration, and issues around accuracy, efficiency, error estimation and stability.
A comparison of the behaviours of the solutions of differential equations and the equivalent difference equations (e.g. the logistic equation v. the much more complex behaviour of the logistic map) is also instructive and lends itself to numerical exploration with an appropriate program, or even a spreadsheet.
However, this might cover too much ground for an elementary class !