next up previous contents
Next: Planung und Stand des Up: Visualisierung graphentheoretischer Algorithmen Previous: Aufbau des Buches

Beschreibung des Programms

CATBox benutzt eine graphische Benutzungsoberfläche und läuft unter Unix/X-Windows, Microsoft Windows und Macintosh OS. Um die Einarbeitungszeit zu minimieren, entsprechen die Elemente der Benutzungsoberfläche dem jeweiligen Systemstandard. Außerdem ist die Bedienung an bekannte Konzepte (,,Debugger``, Zeichenprogramm) angelehnt.

Die Darstellung der Algorithmen ist zweigeteilt: Die Anweisungen werden im Algorithmusfenster in einer Pseudoprogrammiersprache, wie aus anderen Lehrbüchern bekannt, 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. Die Auswirkungen der Anweisungen in dieser Zeile auf den Graphen werden durch Änderungen von Kanten- und Knoten-Farben, Blinken und weitere optische Signale im Graphfenster verdeutlicht. Hierdurch lassen sich die Zusammenhänge zwischen den Vorschriften des Algorithmus und den Auswirkungen auf die jeweilige Probleminstanz schnell erfassen.

Darüber hinaus bietet CATbox dem Benutzer weitere Möglichkeiten, aktiv in den Ablauf einzugreifen. So kann etwa in einem Algorithmus, der einen maximalen Fluß findet, das Auffinden eines erweiternden Weges entweder vom Programm oder vom Benutzer manuell, durch Auswahl von Kanten im Graphfenster, übernommen werden. Der Algorithmus prüft die Auswahl des Benutzers auf Zulässigkeit und verwendet die Eingabe im weiteren Programmablauf.

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 in CATBox integriert. Dieser erlaubt es dem Benutzer z. B. zu beobachten, inwieweit sich Änderungen der Beispielgraphen auf das Verhalten der Algorithmen auswirken.



Webmaster <www@zpr.uni-koeln.de>, 7. Apr. 1997