next up previous contents
Next: Zusammenarbeit mit den Landesbausparkassen Up: Visualisierung graphentheoretischer Algorithmen Previous: Aufbau des Buches

Beschreibung des Programms

Gato benutzt eine graphische Benutzeroberfläche und läuft unter Linux, Unix, Microsoft Windows 95/98/NT und unter Macintosh OS. Um die Einarbeitungszeit zu minimieren, entsprechen die Elemente der Benutzungsoberfläche dem jeweiligen Systemstandard (native look-and-feel). Außerdem ist die Bedienung an bekannte Konzepte (,,Debugger``, Zeichenprogramm) angelehnt.

Die Darstellung der Algorithmen ist zweigeteilt: Die Anweisungen werden im Algorithmusfenster in der Programmiersprache Python, die dem aus anderen Lehrbüchern bekannten Pseudocode ähnelt, angezeigt. Im Graphfenster wird die Probleminstanz, also der Graph, auf dem der Algorithmus abläuft, und die Arbeitsweise des Algorithmus detailliert visualisiert.

Der Ablauf kann vom Benutzer mittels der von ,,Debuggern`` bekannten Eingriffsmöglichkeiten gesteuert werden. Ein Algorithmus kann vollständig oder zeilenweise ablaufen. Die Ausführung kann an sogenannten, vom Benutzer zu definierenden ,,Breakpoints`` unterbrochen werden. Darüber hinaus bietet Gato dem Benutzer weitere Möglichkeiten, aktiv in den Ablauf einzugreifen.

Die Auswirkungen der Anweisungen in jeder Zeile auf den Graphen werden durch Änderungen von Kanten- und Knoten-Farben, Blinken und weitere optische Signale im Graphfenster unmittelbar verdeutlicht. Hierdurch lassen sich die Zusammenhänge zwischen den Vorschriften des Algorithmus und den Auswirkungen auf die jeweilige Probleminstanz direkt und schnell erfassen.

Für die im Lehrbuch vorgestellten Algorithmen liegt eine Bibliothek von Beispielgraphen vor. Die Algorithmen zeigen auf den jeweiligen Beispielgraphen sowohl ihr typisches, aber auch ihr ,,pathologisches`` Verhalten. Außerdem ist ein einfacher Grapheditor zur interaktiven Erstellung und Veränderung von Graphen Teil von CATBox. Dieser erlaubt es dem Benutzer z. B. zu beobachten, inwieweit sich Änderungen der Beispielgraphen auf das Verhalten der Algorithmen auswirken.

Die verwendete Technologie und das Konzept der - weitgehend ,,automatischen`` - Visualisierung durch animierte Datenstrukturen erlauben es, bestehende Algorithmen unter Beibehaltung der Visualisierung zu ändern bzw. neue Algorithmen mit geringem Aufwand visualisiert zu implementieren.


next up previous contents
Next: Zusammenarbeit mit den Landesbausparkassen Up: Visualisierung graphentheoretischer Algorithmen Previous: Aufbau des Buches
Webmaster<www@zpr.uni-koeln.de>
1999-07-28