Senior Seminar

The Senior Seminar is the culmination of the Mathematics and Computer Science major′s experience in the department. In the Seminar, students engage in independent research on a topic or question of their own choosing under the direction of a faculty member. Throughout the Fall and Spring semesters they present what they have found to other students and the faculty. The final presentation in the Spring is a public talk, open to the entire Rhodes College community. In both semesters, students write a paper summarizing their work.

Writing and presenting form an integral part of the Senior Seminar experience---one goal of the Spring semester is for the student to produce a work of publishable quality. Students are encouraged to study the suggested writing and presenting guidelines and to talk with their faculty advisors and Seminar coordinator.

Senior Seminar Projects

The following are some possible Senior Seminar topics/projects. They are grouped by the proposer--see that person for more information and assistance. The lists are not intended to be complete so if you have other ideas or interests that you would like to explore, please feel free to talk with the faculty. 

England

The buzz on the new C# Object-Oriented programming language is that it will be the next big software development language of choice, eventually replacing C, C++, Java, and Visual Basic. It has many built-in features that are intended to simplify the construction of high-performance web applications and components - features that were previously accessible only through complicated interfaces to massive and somewhat cryptic library function calls.

C# is the darling of CS literature at the moment, making the acquisition of references and the refinement and focus of a research topic to explore a fairly easy task. There are many, many possibilities for research into the history, design, and development of the C#, which is the native tongue of the .NET development platform and the WinForms object library:

  • How does C# compare with Java? C++? What "lessons learned′′ from earlier languages have been addressed in the design of C#?
  • What features of C# facilitate development of web programs? How do C# and .NET deal with the heterogeneous nature of the web?
  • How is object-oriented design supported by C#? What tools are there for object management in C#? How do objects developed on different platforms interact with C# / .NET objects?
  • What graphics tools are available for C#? How are they different / better than the graphics facilities provided by earlier libraries such as Microsoft Foundation Classes?

Other possible topics include
  
Student Advisor
Design and construct a GUI-based "do-it-yourself′′ student advisor that allows a web user to graphically construct a map of a degree at Rhodes, incorporating current information about course schedule offerings, degree requirements, etc. [graphics, network data access]

Computer Game
Design and construct an intelligent computer game (board game? adventure game?), including a graphical interface. Users may play each other over the web, or play against a built-in strategy engine. [graphics, game theory]

Personal Trainer
Design and construct a GUI personal trainer system, including features such as weight tracking, workout schedule and history, diet recommendations and records, graphical progress plotting, etc. [graphics, mathematical programming]

Moses2 Operating System
Assist DrE in porting the Moses2 Operating Systems project development environment to the C# / .NET platform. [graphics, systems programming, brownie points]

Pedagogical Evaluation
Evaluate C# pedagogically, for possible use as the primary language in a CS major in an undergraduate curriculum. Project would include (a) production of a detailed, course-by-course outline of topics to be covered and a thorough description of how these topics could be explained in the context of the C# language, (b) the development of C# project assignments to reinforce understanding of the topics, and (c) a detailed comparison of pros and cons of C# in this role relative to the other languages that are available. [general CS, pedagogy] I realize that all these suggestions center on C#. I will entertain suggestions for other projects that are completely different, but I feel that with the small number of CS students that will be working on these projects, a unifying focus will allow these students to present and discuss their projects with each other and understand what each is doing without a great deal of the distracting overhead of having to study other topics that are very different from their own research.

Gottlieb

Rigidity theory
Suppose you join a number of rigid rods of possibly different lengths at non-rigid joints. What configurations are rigid? In some cases, the answer depends on the dimension of the space in which the configuration lives. For example, consider two triangles that share an edge. This configuration is rigid in two dimensions but not in three dimensions; the triangles can fold towards each other. On the other hand, a triangle is rigid in all dimensions. If you choose this project, you will read a book that describes three ways of looking at rigidity. This subject is interesting in that it makes use of ideas from combinatorics, algebra, and analysis. It also is a powerful illustration of the power of moving from a nonlinear approach to a linear approximation thereof.

Subpolytopes of the permutahedron
Think of a permutation in word form as a vector in Rn with the ith letter occupying the ith coordinate. The convex hull of all of the permutations in Sn is a uniform n-1 dimensional polytope (i.e., higher dimensional polyhedron) called the permutahedron; we will denote it by Pn. A polytope is uniform if it has certain nice properties. For example, P3 is a regular hexagon; P4 is a truncated octahedron. If you choose this project, you will explore the properties of the permutahedron or of polytopes formed by taking the convex hull of some suitably defined subset of Sn. Be aware that this project is likely to be challenging.

Mathematical programming
There are a number of problems on the campus that can be modeled using mathematical programming, such as the scheduling of classes, the assignment of rushees to greek organizations, and the admission of students to the school. If you choose this topic, you will choose a topic (possibly among the ones listed above, but not necessarily), learn a bit about mathematical programming, and use your knowledge along with some suitable solver (such as Excel or AMPL) to develop a model that will give recommendations as to how to proceed.

Seaton

The Mathematics of Soap Films
A soap bubble is in the form of a sphere because this shape has the minimal surface area for a fixed volume. Similarly, a soap film bounded by a wire will stretch itself in such a way so that the surface area is minimal.

The book below introduces enough differential geometry and complex analysis to understand the rather complicated behavior of soap films. It is suitable for any student who has taken Calc III and Linear Algebra. The book is written for Maple (R), but it would not be difficult to apply these same ideas in Mathematica. I would love to go over this book with a student, either working with Maple or Mathematica.

J. Oprea, The Mathematics of Soap Films: Explorations with Maple (R), American Mathematical Society, 2000.