About Petersen

 

graphic What is Petersen?

Petersen is software written by C. Mawata that can draw, edit and manipulate simple graphs, examine properties of the graphs, and demonstrate them using computer animation. It can display information about a graph like the number of vertices and their degrees, the adjacency matrix, the number of components, and articulation points. It can find complements of graphs, line graphs, find the chromatic number of a graph, check if a graph is bipartite, check if two graphs are isomorphic or if one graph is a subgraph of another and find the dual graph of a planar graph in many cases. Petersen also demonstrates Euler and Hamilton circuits, searches, and algorithms for finding minimum spanning trees.

Intended Users and Hardware requirements

This project is targeted at undergraduate beginning classes in Graph Theory. The students who use the software at UTC, the University of Tennessee at Chattanooga, are mathematics majors for whom it is an elective course and computer science students for whom it is a required course. This is the primary target population although other students, say students of mathematics appreciation or history of mathematics would surely find it useful, perhaps with a different set of exercises. It is assumed that the students using the software and lessons have some measure of mathematical sophistication; for instance that they are able to write an induction proof etc. They have done second semester calculus and a course in computer programming. The prerequisite courses give an indication of the level of mathematical maturity assumed. The program will run under Windows 3.1 or Windows95.

Subject Matter

The subject matter addressed are topics typically found in undergraduate graph theory and discrete structures classes like null graphs, the handshaking lemma, isomorphism, complete graphs, subgraphs, regular graphs, platonic graphs, adjacency matrices, graph coloring, bipartite graphs, simple circuits, Euler and Hamilton circuits, trees, unions and sums of graphs, complements of graphs, line graphs, spanning trees, plane graphs, shortest paths, minimal spanning trees. These topics are central to graph theory and essential to further learning in the area.

The Pedagogical Problem

In writing the software the author was trying to solve several educational and instructional problems. The examples of abstract graphs used in a typical graph theory class tend to be small and trivial for several reasons. One reason is that large and complicated graphs take a long time to draw. Once drawn they are difficult to edit as there are so many edges that it is difficult to erase just the edges you want to erase. Getting information from a large graph (like counting edges, or finding paths and son on) is tedious and long. Because graphs are awkward to manipulate one cannot readily experiment with them without the aid of a computer.

The algorithms in the software are not novel. The only difference between Petersen and commercial and research applications is that in the latter the main aim is to get the results as quickly as possible. On the other hand in an educational setting the primary goal is for the student to be able to visualize the concepts being taught so it is an advantage to use graphics intensively even at the cost of speed. In a nutshell then the author wanted to improve on the complexity of the examples, increase the number of examples available, the types of problems that could be posed, and to introduce multimedia and visualization in the course, thus making it more interesting for the students.

The author set out to create a tool that could display a graph quickly on the screen, store graphs so that they can easily be recalled at a later time, manipulate graphs in various ways so that students could use the program as an investigative tool. This was not intended to replace any of the traditional activities like lectures, students solving the textbook problems and writing short programs to implement algorithms and so on. Rather, the intention was to augment the class with an experience in doing mathematics by experiment and investigation.

By using the program we attempt to address several learning issues:

The Use of Hypertext Links

Typically the students take the software home (it will fit on a floppy disk) and access the lessons over the internet. This allows the author to make hyperlinks to definitions of terms that appear in the lessons. Future versions of the lessons will also include animation using Java applets. The author is currently working on this. The author is also working on a new version of the porgram in Java which will allow the use of curved edges, handle directed graphs, and also loops.
© C. Mawata