Evaluation von Algorithmen-Animationen

von Matthias Grallert

Vortrag im Rahmen des Seminars
"Interaktive Visualisierung von Algorithmen"
im Wintersemester 1998 an der Universität Oldenburg
(Seminarleiter: Nils Faltin)

Inhalt

Grundlage dieser Arbeit ist ein Artikel von John Stasko und Andrea Lawrence [Stasko 98], in dem zwei Experimente zur Untersuchung des Lerneffekts von Algorithmen-Animationen vorgestellt und diskutiert werden. Die Ergebnisse der beiden Experimente sowie weiterer Studien werden in dem Artikel miteinander verglichen und Schlüsse darüber gezogen, ob und wie Algorithmen-Animationen beim Lernen eines Algorithmus unterstützen können. Alle Quellenverweise wurden [Stasko 98] entnommen.

Inhaltsverzeichnis

1. Einleitung
2. Experiment 1: Pairing Heap
2.1 Algorithmus
2.2 TeilnehmerInnen
2.3 Lernphase
2.4 Testphase
2.5 Ergebnisse
2.6 Auswertung
2.7 Befragung der TeilnehmerInnen
3. Experiment 2: Kruskal's MST
3.1 Algorithmus
3.2 TeilnehmerInnen
3.3 Lernphase
3.4 Testphase
3.5 Ergebnisse
3.6 Auswertung
4. Studenten animieren selbst
5. Ergebnisse ähnlicher Studien
6. Fazit der Autoren
7. Quellen
Anhang: Merkblatt zur Rechnerübung

1. Einleitung

Algorithmen-Animationen werden mit dem Ziel entwickelt, das Lernen eines abstrakten Algorithmus zu unterstützen. Sicherlich kann man einen Algorithmus auch ohne Animation lernen, indem man Text, Pseudocode oder Standbilder benutzt. Durch Animationen läßt sich jedoch der zeitliche Ablauf eines Algorithmus direkt visualisieren, man kann den Algorithmus sozusagen "in Aktion" sehen und erleben.

Algorithmen-Animationen werden schon seit über 10 Jahren benutzt: in Klassen oder Vorlesungen zur Unterstützung des Lehrenden, in Laboren zur Erforschung des Lerneffekts oder von SchülerInnen und StudentInnen außerhalb von Klasse, Vorlesung oder Labor als Lernhilfe.
Eine grundlegende Frage ist jedoch immer noch unbeantwortet: Unterstützen Algorithmen Animation tatsächlich das Lernen und Lehren und wenn ja wie und in welchem Kontext?

Lerneffekte sind schwer quantifizierbar bzw. meßbar. Dazu muß man genau definieren, was man unter Lernen versteht bzw. wann ein bestimmter Lehrinhalt nun gut oder weniger gut verstanden wurde. Aber was bedeutet es, einen Algorithmus zu lernen? Heißt es, den Ablauf zu kennen, den Algorithmus selbst programmieren, Komplexitätsvergleiche mit ähnlichen Algorithmen anstellen oder gar bestimmte Konzepte auf neue Probleme übertragen zu können?

In den Berichten bisheriger spezifischer Studien werden Ergebnisse oft zusammengefaßt, mit dem Ergebnis, da■ Algorithmen Animationen entweder keinen positiven (jedoch auch keinen negativen!) oder nur einen nichtsignifikanten positiven Effekt auf das Lernen haben. Da jedoch in all diesen Studien eine bestimmte Personengruppe einen bestimmten Algorithmus in einem bestimmten Kontext lernen sollte und immer ein bestimmtes Verständnis von Lernen zugrunde gelegt wurde, darf man die Ergebnisse nicht verallgemeinern, sondern muß sie gemäß der genannten Kriterien differenzieren. Die so differenzierten Ergebnisse können neuen Studien wieder als Vorlage bzw. Inspiration für gezieltere Untersuchungen dienen.

Bei den folgenden beiden Experimenten zum Lerneffekt von Algorithmen Animationen wird stark darauf geachtet, Meßergebnise nicht zu verallgemeinern, sondern immer in Bezug zum Aufbau des Experiments zu setzen.

Beide Experimente wurden am Georgia Institute Of Technology in Antlanta/USA durchgeführt, haben jedoch keine direkte Verbindung zueinander.
Das erste Experiment stammt aus dem Jahr 1993: Fortgeschrittene Informatik-Studenten (Master-Studiengang) sollten einen verhältnismäßig komplizierten Algorithmus lernen.
Das zweite Experiment wurde 1994 durchgeführt: StudienanfängerInnen sollten einen verhältnismäßig einfachen Algorithmus lernen.

2. Experiment 1: Pairing Heap

Das erste Experiment ist eines der ersten seiner Art aus dem Jahre 1993
[Stasko 93a].
Informatik-"ExpertInnen" (Informatik-Studenten eines Master-Studiengangs) sollten einen verhältnismäßig komplizierten Algorithmus lernen.

2.1 Algorithmus

Bei dem Algorithmus dieses Experiments handelte es sich um sogenannte "pairing heaps"
[Fredman 86].
Die Animation der pairing heaps wurde mit dem Algorithmen Animations System Xtango [Stasko 92a] erstellt (siehe Abbildung 1).


Abbildung 1: XTango-Animation

2.2 TeilnehmerInnen

Bei den TeilnehmerInnen des ersten Experiments handelte es sich um 20 AbsolventInnen des Informatikstudiums, die sich freiwillig gemeldet hatten. Keiner von ihnen kannte das Thema pairing heaps.

2.3 Lernphase

Es wurden zufällig zwei gleich große Gruppen gebildet. Die erste Gruppe, im folgenden Textgruppe genannt, lernte 45 Minuten nur mit einer textuellen Beschreibung, während die zweite Gruppe, im folgenden Animationgruppe genannt, 30 Minuten lang die gleiche textuelle Beschreibung und für die restlichen 15 Minuten eine Animation des pairing heaps zur Verfügung hatte.

2.4 Testphase

Nach Ablauf der 45 Minuten mußten alle TeilnehmerInnen einige schriftliche Fragen beantworten, ohne zuhilfenahme des zuvor benutzten Lehrmaterials. Für die Bearbeitung der Fragen standen wiederum maximal 45 Minuten zur Verfügung.
Die Fragen lassen sich in 6 Arten einteilen: Wie man sieht, decken die Fragen verschiedene Arten des Verständnisses eines Algorithmus ab: Die "richtig oder falsch"-Fragen prüfen allgemeines Faktenwissen, die "vorher-nachher"-Fragen und die Konstruktionsaufgaben das Verständnis über den Ablauf des Algorithmus, die Komplexitäts- und analytischen Fragen erfordern ein tieferes Verständnis und die beiden Übertragungsaufgaben entsprechen offensichtlich einem Transfer der Grundidee des Algorithmus auf ein ähnliches Problem.

2.5 Ergebnisse

Neben der Grundhypothese, daß die Algorithmen Animation allgemein das Lernen eines Algorithmus unterstützt, erwartete man speziell bei den Fragen zum Ablauf des Algorihmus bessere Ergebnisse auf Seiten der Animationgruppe, da ja gerade in diesem Bereich offensichtliche Vorteile von Animationen gegenüber textuellen Beschreibungen gesehen werden.

Tabelle 1 zeigt das Ergebnis der Testphase. Die Spalte mit den Buchstaben entspricht den verschiedenen Fragen einer Fragenkategorie. Die Zahlen entsprechen den richtigen Antworten von den jeweils 10 TeilnehmerInnen jeder Gruppe. Zum schnelleren Überblick über die Ergebnisse sind bessere Ergebnisse einer Gruppe jeweils fett gekennzeichnet.
Tabelle 1: Ergebnisse von Experiment 1
Text Animation
Richtig/Falsch
(Fakten)
a
b
c
d
e
f
g
h
6
7
8
7
7
7
7
9
6
10
10
7
8
8
7
10
Konstruktion
(Ablauf)
a
b
2
3
4
5
Vorher/Nachher
(Ablauf)
a
b
c
d
e
f
2
4
2
1
0
2
3
2
3
4
1
1
Komplexität
(tiefer)
a
b
c
d
2
1
6
2
5
2
8
4
Analytisch
(tiefer)
a
b
8
7
9
7
Baumdarstellung
(Transfer)
a
b
6
6
6
6
Schnitt 11.2 13.6

Von den 24 Fragen beantwortete die Textgruppe im Schnitt 11.2 und die Animationsgruppe 13.6 Fragen korrekt.
Eine genauere statistische Auswertung ergab einen nichtsignifikanten Vorteil der Animationsgruppe (t-test mit t=1.111, df=18, p<0.13. Anmerkung: Es gibt verschiedene Arten von statistischen Testverfahren für die verschiedensten Arten von Meßwerten und -verfahren. Im Rahmen dieses Seminarvortrags werde ich darauf nicht genauer eingehen; der interessierte Leser kann mit Hilfe geeigneter Literatur die angegebenen Werte selbst nachrechnen. Soviel sei jedoch gesagt: In statistischen Tests gibt man mittels des p-Werts an, wie genau man testen möchte. Je kleiner dieser Wert ist, desto kleiner ist die Wahrscheinlichkeit, daß das Testergebnis falsch ist. Ab einer Fehlerwahrscheinlichkeit von 5% bezeichnet man Ergebnisse als "signifikant", ab 1% als "hochsignifikant". Dies sind die beiden üblichen p-Werte. Im Fall p<0.13 diese Experiments "mußte" der p-Wert bis auf 13% erhöht werden, bis man ein positives Testergebnis erhielt. Dieses Ergebnis ist jedoch auch mit einer Wahrscheinlichkeit von bis zu 13% falsch.).
Während der Testphase beobachtete man außerdem, daß die Animationsgruppe im Schnitt etwas weniger Zeit für die 24 Fragen benötigte: 37.6 Minuten im Gegensatz zu 41.0 bei der Textgruppe. Drei Mitglieder der Animations- und vier der Textgruppe benötigten die gesamte maximale Zeit von 45 Minuten.

2.6 Auswertung

Wie in Tabelle 1 erkennbar ist, schnitt die Animationsgruppe mit Ausnahme von zwei Fragen gleich gut oder besser ab, als die Textgruppe. Bei den zwei Ausnahmen handelt es sich beide Male um "Vorher/Nachher"-Fragen zu allgemeinen Bäumen - die Animation zeigte jedoch nur Binärbaume. Das leicht schlechtere Ergebnis wird deshalb als "etwas verständlich" bezeichnet, d.h. es war garnicht zu erwarten, daß die Animationsgruppe gerade bei diesen Fragen besser sein würde. Daß das Ergebnis nun nicht gleich gut, sondern leicht schlechter war, wird also als "Zufall" interpretiert. (Bemerkung: Man könnte es jedoch auch so interpretieren, daß das mentale Modell der Animationsgruppe weniger flexibel ist als das der Textgruppe, d.h. nur starr auf den Fall Binärbaum angewandt werden kann. Dies widerspricht zwar anscheinend den gleichen Ergebnissen bei den beiden "Transfer"-Fragen zur Baumdarstellung, man könnte jedoch auch diese als Zufall ansehen.).


Trotz der überwiegend besseren Ergebnisse der Animationsgruppe sind die Ergebnisse des Experiments nicht so eindeutig, wie man sie eigentlich erwartet hat: Die Animationsgruppe scheint zwar Vorteile zu haben, diese sind jedoch nur nichtsignifikant klein. Insbesondere bei den Fragen zum Ablauf des Algorithmus hatte man die meisten Vorteile vermutet. Diese traten jedoch eher bei den Faktenfragen auf, während bei den Ablauffragen sowohl Text- als auch Animationsgruppe recht schlecht abschnitten. Aufgrund der Beobachtung während der Testphase könnte man die Hypothese aufstellen, daß Animation ein schnelleres Lernen ermöglicht, die jedoch in einem gezielterem Experiment verifiziert werden müßte.

Als möglichen Faktoren, die das Ergebnis der Experimente beeinflußt haben könnten, werden von den Autoren genannt: Diese Faktoren sollten in späteren Studien gezielter berücksichtigt werden.
Als weiteren Grund für die schlechten Ergebnisse würde ich noch hinzufügen, daß es sich hier um einen recht komplizierten Algorithmus handelt, der nicht unbedingt einfacher wird, nur weil die Testpersonen fortgeschrittene InformatikstudentInnen sind.

2.7 Befragung der Teilnehmer

Um zugunsten späterer Studien und neuer Animationen und Animations Systeme weitere Hinweise über den Effekt von Animationen zu gewinnen, wurden die TeilnehmerInnen der Animationsgruppe nach dem Experiment zu ihrer Meinung über die zuvor benutzte Animation befragt: Diese positiven und negativen Kritikpunkte der TeilnehmerInnen der Animationsgruppe ähneln den Ergebnissen von Befragungen ähnlicher Studien. Die ersten beiden Punkte bestätigen vor allem den motivierenden Effekt von Animationen, der ebenfalls in fast allen Studien hervorgehoben wird. Auf die Rolle der Motivation werde ich im Kapitel
Fazit der Autoren noch einmal eingehen. Die im vorletzten Punkt genannte Funktion des "Rückwärtslaufens" fehlt in den meisten der aktuell verfügbaren Algorithmen Animationen immer noch.

3. Experiment 2: Kruskal's MST

Das zweite Experiment wurde ungefähr ein Jahr nach dem ersten durchgeführt
[Lawrence 94]. Es gehört zu einer Reihe von Experimenten zum Lehreffekt von Algorithmen Animationen auf StudentInnen [Lawrence 93].
In diesem Experiment sollten InformatikanfängerInnen einen relativ einfachen Algorithmus lernen.
Im Gegensatz zu Experiment 1 wurde etwas mehr Aufwand betrieben, sowohl in der Lern- als auch in der Testphase.

3.1 Algorithmus

Beim Algorithmus des zweiten Experiments handelte es sich um "Kruskal's Minimum Spanning Tree".
Es wurden zwei verschiedene Animationen dieses Algorithmus verwendet: Eine wurde mit dem Algorithmen Animations System Polka
[Stasko 93b] erstellt und im Rahmen eines Vortrags eingesetzt. Die andere wurde mit dem XTango-System [Stasko 92a] erstellt und im Rahmen einer Laborsitzung eingesetzt.
Insgesamt wurde in diesem Experiment also zum einen der Effekt von Animationen im Rahmen eines Vortrags, d.h. als unterstützendes Medium untersucht, und zum anderen der Effekt bei der Nachbereitung des Vortrags.
Einen Ausschnitt der Polka-Animation zeigt Abbildung 2 (Hier handelt es sich nicht um die tatsächlich verwendete Animation, sondern um eine mit Hilfe des Samba-Systems erstellte, ähnliche Polka-Animation. Die Original-Animation lag zwar vor, ließ sich jedoch aufgrund von Programmfehlern nicht ausführen.). Abbildung 3 zeigt das Steuerungsfenster des Polka-Systems


Abbildung 2: Ausschnitt der Kruskal Animation


Abbildung 3: Polka Steuerung

3.2 Die TeilnehmerInnen

Bei den TeilnehmerInnen handelte es sich um 62 InformatikstudentInnen des Georgia Institute of Technology, die gerade die erste Programmiervorlesung des Studiums hörten. Die Teilnahme am Experiment war freiwillig, die TeilnehmerInnen erhielten jedoch "class credits" (ähnlich den Punkten für Übungsaufgaben einer Vorlesung).

3.3 Lernphase

Bei diesem Experiment wurden insgesamt 6 Testgruppen gebildet. Tabelle 2 zeigt die Zusammenstellung der einzelnen Gruppen sowie die Anzahl TeilnehmerInnen. Die einzelnen Gruppen kamen folgendermaßen zustande (Abbildung 4 illustriert die zunächst etwas kompliziert klingende Struktur):
Zunächst einmal wurden alle 62 TeilnehmerInnen zufällig in 2 Gruppen aufgeteilt. Beide Gruppen hörten getrennt voneinander denselben Vortrag über den Kruskal Algorithmus. Einer Gruppe wurde zur Verdeutlichung im Rahmen des Vortrags einige vorbereitete Polka-Animationen auf individuellen Workstations und der anderen auf Folien vorbereitete Screenshots derselben Animationen präsentiert. Zu erwähnen ist, daß im Gegensatz zu den Folien die Animationen mehr Zwischenzustände zeigte, sowie natürlich die Zustandsübergänge. In beiden Gruppen wurde nach dem Vortrag jeweils eine neue, kleinere Gruppe gebildet, die nach dem Vortrag noch an einer Laborsitzung teilnahm, in der das vorher Gelernte unter Benutzung einer XTango-Animation nachgearbeitet werden sollte. Beide kleinen Gruppen wurden dabei wieder jeweils in 2 Gruppen aufgeteilt: Die eine sah sich eine Reihe vorgefertigter Beispiel-Animationen an (passive Gruppe), die andere sollte eigene Beispiele erzeugen (aktive Gruppe).
Während der Laborsitzung hatten alle StudentInnen 12 Minuten Zeit zur Verfügung, um mit ihren jeweiligen Animationen zu arbeiten (Ergebnis eines anderen Experiments: StudentInnen experimentieren durchschnittlich 12 Minuten mit Animationen
[Lawrence 93]).


Abbildung 4: Aufteilung in 6 Testgruppen

Tabelle 2 zeigt die Zusammenstellung der einzelnen Gruppen sowie die Anzahl TeilnehmerInnen pro Testgruppe:

Tabelle 2: Anzahl TeilnehmerInnen der einzelnen Gruppen in Experiment 2
Animation Folien
nur Vortrag 15 15
Vortrag
und Labor
passiv 7 9
aktiv 7 9

Zusammenfassend seien hier noch einmal die insgesamt 6 verschiedenen Testgruppen aufgezählt: 3.4 Testphase

Nachdem die Lernphase abgeschlossen war, sollten alle 62 TeilnehmerInnen zwei Tests ausfüllen, ohne zuhilfe nahme des zuvor benutzten Lehrmaterials:
3.5 Ergebnisse

Es wurden zwei Hypothesen aufgestellt: Zum einen, daß alle Gruppen, die den Vortrag mit Animation gehört hatten, besser abschneiden würden, als die Gruppen mit den Folien, und zum anderen, daß alle Gruppen der Laborsitzung durch die Nacharbeitung des Gelernten bessere Ergebnisse erzielen würden, als die Gruppen, die nur den Vortrag gehört hatten.
Tabelle 3 und 4 zeigen die Ergebnisse der beiden Tests. Die Zahlen geben die durchschnittliche Anzahl richtiger Antworten in der jeweiligen Testgruppe an.

Tabelle 3: Multiple-Choice Test von Experiment 2
Multiple-Choice
(max. 19)
Animation Folien Schnitt:
nur Vortrag 11.87 11.80 11.8
Vortrag
und Labor
passiv 13.71 13.22 13.5
aktiv 13.83 13.89
Schnitt 13.14 12.97  

Tabelle 4: Text Antworten von Experiment 2
Textantwort
(max. 21)
Animation Folien Schnitt
nur Vortrag 14.47 16.13 15.3
Vortrag
und Labor
passiv 16.43 16.67 17.2
aktiv 18.14 17.89
Schnitt 16.35 16.89  

Eine genauere statistische Analyse ergab für den Multiple-Choice Test keinen signifikanten Unterschied zwischen Animations- und Foliengruppen und einen geringfügigen aber ebenfalls nicht signifikanten Unterschied zwischen Laborgruppen und Nur-Vortraggruppen zu Gunsten der Laborgruppen: im Schnitt 13.5 richtige Antworten für die Laborgruppen und 11.83 für die Nur-Vortraggruppen (ausgewertet mittels F-Test mit F=2.80, p<0.1, df=1;59).
Die statistische Analyse bei den Textantworten ergab ebenfalls keinen signifikanten Unterschied zwischen Animations- und Foliengruppen, jedoch einen signifikanten Unterschied zwischen Laborgruppen und Nur-Vortraggruppen zu Gunsten der Laborgruppen: Im Schnitt 17.28 richtige Antworten für die Laborgruppen und 15.3 für die Nur-Vortraggruppen (ausgewertet mittels F-Test mit F=4.36, p<0.05, df=1;58).
Um differenziertere Aussagen über diesen signifikanten Vorteil der Laborgruppen bei den Textantworten machen zu können, wurden paarweise statistische Tests durchgeführt, bei dem zwischen 3 Gruppen unterschieden wurde: Nur-Vortraggruppe (wie vorher), Passiv-Laborgruppe und Aktiv-Laborgruppe. Dabei stellte sich heraus, daß der zuvor festgestellte signifikante Unterschied von der Aktiv-Laborgruppe hervorgerufen wurde: Die Tests ergaben einen signifikanten Unterschied (p<0.05) zwischen Nur-Vortraggruppe und Aktiv-Laborgruppe zu Gunsten der Aktiv-Laborgruppe; zwischen anderen Gruppenkombinationen gab es dagegen nur nichtsignifikante Unterschiede. Der nichtsignifikante Unterschied bei den Multiple-Choice Tests ist somit ebenfalls auf die Aktiv-Laborgruppe zurückzuführen.

3.6 Auswertung

Das Experiment lieferte mehrere wichtige Ergebnisse.

Ob bei der Präsentation des Algorithmus im Rahmen des Vortrags nun Animationen oder Folien verwendet wurden, hatte weder auf die Nur-Vortragsgruppen noch auf die Laborgruppen einen signifikanten Lerneffekt. Bei den Textaufgaben schnitt die Animationsgruppe im Schnitt sogar schlechter ab, als die Foliengruppe.
Die AutorInnen werfen ein, daß dies auch an dem speziellen Algorithmus gelegen haben kann und bei anderen Algorithmen eventuell mehr von Animationen profitiert werden könnte.

Die allgemeine Hypothese, daß die Laborgruppen alle besser abschneiden würden, hat sich so nicht bestätigt. Die passiven Laborgruppen hatte lediglich einen nichtsignifikanten Vorteil gegenüber den Nur-Vortraggruppen. Erst bei den aktiven Laborgruppen konnte ein signifikanter Unterschied festgestellt werden.
Animationen scheinen also beim Nacharbeiten des Gelernten nur dann einen signifikanten Lerneffekt zu haben, wenn sie interaktiv gestaltet werden.

Die aktiven Laborgruppen waren in beiden Tests besser als die Nur-Vortragsgruppen. Der Unterschied war jedoch nur bei den konzeptuellen Textaufgaben signifikant, bei den Multiple-Choice Test Fragen zu einzelnen Schritten des Algorithmus lediglich nicht signifikant.
Animationen scheinen also im Rahmen einer Nacharbeitung einen positiven Effekt auf das konzeptuelle Verständnis eines Algorithmus zu haben, weniger jedoch auf das Verständnis des Ablaufs an sich.

4. Studenten animieren selbst

Einen Schritt weiter in Richtung einer aktiven Beteiligung von Studenten gingen Stasko und seine Mitarbeiter mit der Idee, LernerInnen selbst Algorithmen Animationen entwickeln zu lassen.
In einer ebenfalls am Georgia Institute Of Technology durchgefürten Studie sollten StudienanfängerInnen im Rahmen einer Algorithmenvorlesung mittels einfach einzugebender Kommandos Animationen von Algorithmen erzeugen
[Stasko 96][Stasko 97]. Dazu wurde der Kommandointerpreter Samba [Stasko 96] als Frontend für Polka entwickelt. Samba übersetzt eine einfache ASCII-Kommandozeilenfolge in eine geeignete Eingabe für das Polka Animations System. Kommandos, wie z.B. "draw line" oder "move point", werden von Samba interpretiert, an Polka weitergereicht und dort in entsprechende Animationssequenzen umgewandelt. Zum Zeitpunkt des vorliegenden Artikels fand diese Algorithmenvorlesung schon einige Male statt. Die bisherigen Ergebnisse sind: Durch das Erstellen der Animationen waren die StudentInnen dazu gezwungen, selbst LehrerIn zu spielen und lehrten sich die Algorithmen dabei automatisch selbst.

Es sind jedoch noch weitere, vor allem formelle empirische Studien in dieser Richtung notwendig.

5. Ergebnisse ähnlicher Studien

Im folgenden werden kurz die Ergebnisse einiger weiterer Studien zu Algorithmen-Animationen vorgestellt, die mit in das Kapitel
Fazit der Autoren einfließen: Der/Die interessierte LeserIn sei auf Gurka und Citrin verwiesen, die verschiedene Studien zu Algorithmen-Animationen untersucht und die Ergebnisse dieser Studien gesammelt haben [Gurka 96].

6. Fazit der Autoren

Faßt man die Ergebnisse aller hier vorgestellten Studien und Experimente zusammen, so erhält man unterschiedliche, teilweise widersprüchliche Aussagen über den Lehreffekt von Algorithmen-Animationen. Wie jedoch schon in der Einleitung erwähnt, darf man einzelne Experimente nicht verallgemeinern, da in jedem Fall eine bestimmte Personengruppe einen bestimmten Algorithmus in einem bestimmten Kontext lernen sollte und immer ein bestimmtes Verständnis vom Lernen eines Algorithmus zugrunde gelegt wurde. Individuelle Experimente lassen sich nicht einfach so zusammenfassen.
Die Einzelergebnisse können jedoch als Inspiration und Vorlage für immer neue Hypothesen und Experimente dienen und so Schritt für Schritt das Verständnis von Funktion und Nutzen von Algorithmen-Animationen verbessern.
[Stasko 98] stellen auf Grundlage der vorgestellten Studien drei Hypothesen über den Lehreffekt von Algorithmen-Animationen vor:
  1. Algorithmen-Animationen haben in jedem Fall einen pädagogischen Wert, auch wenn ihr Nutzen als Lehrmittel vielleicht minimal ist. Viele Studien bemerken den Spaß und das Interesse, also allgemein die Motivation zum Arbeiten mit den Animationen. "Auch wenn Algorithmen-Animationen nur diese Funktion zuteil kommt, sollte man sie einsetzen" [Stasko 98].

  2. Algorithmen-Animationen in Form von "passiven Videos" haben keinen bemerkenswerten Effekt auf das Lernen eines völlig fremden Algorithmus.

    [Stasko 98] erklären den Punkt etwas genauer:
    Um von einer Algorithmen Animation zu profitieren, muß zunächst einmal die verwendete Visualisierung verstanden werden (außer natürlich bei einer sehr einfachen, intuitiven Visualisierung, wie z.B. bei vielen Sortierverfahren der Fall). Kennt man den Algorithmus noch überhaupt nicht, so kann kein Bezug zwischen aktueller Visualisierung und zugehörigerAlgorithmenoperation hergestellt werden.

    Sollen zur Einführung eines Algorithmus dennoch Animationen in Form von passiven Videos eingesetzt werden, so muß die Visualisierung im Voraus oder zur Laufzeit beschrieben und erklärt werden.
    So gesehen ist eine Erklärung der Visualisierung für schon bekannte Algorithmen im Prinzip nicht notwendig, da der Ablauf des Algorithmus auf die Visualisierung übertragen werden kann und die Visualisierung sich so indirekt von selbst erklärt. Eine solche Erklärung ermöglicht jedoch in jedem Fall einen schnelleren Einstieg in die Animation, da die Interpretation der Visualisierung entfällt.

    Der beobachtete, leichte Lerneffekt der passiven Laborgruppen in Experiment 2, bei der ja so ein passives Video eingesetzt wurde, wäre gemäß dieser Hypothese also wahrscheinlich nicht eingetreten, wenn der Algorithmus nicht schon durch den vorherigen Vortrag bekannt gewesen wäre. Die schlechten Ergebnisse der Animationsgruppe in genau diesem Vortrag, die ja quasi vor dem vollständigen Verstehen des Algorithmus die Animation sah, scheinen die Hypothese zu bestätigen. Es war jedoch weder [Stasko 98] noch [Stasko 93a] zu entnehmen, wie genau die passiven Animationen in diesem Vortrag eingesetzt wurden.
    Bei passiven Animationen ist eine Erklärung der Visualisierung sehr wichtig, um den dargestellten Algorithmus wiederzuerkennen. Bei interaktiven Animationen ist die Notwendigkeit einer solchen Erklärung von der Art der möglichen Interaktionen abhängig, d.h. inwiefern diese zum Verständnis der Visualisierung beitragen: Bei bloßer Dateneingabe ist man sehr schnell wieder in der Rolle des passiven Betrachters, während z.B. das schrittweise Vor- und Zurücklaufenlassen von Operationen, oder allgemein das Experimentieren mit den dargestellten Objekten, d.h. logische Schlüsse über deren Funktion ermöglichen kann.

    Allgemein sollte jedoch auf Erklärungen nicht verzichtet werden, da sie wie gesagt einen schnelleren Einstieg in die Animation ermöglichen.

  3. Entscheidend ist, daß LernerInnen aktiv mit den Animationen interagieren können, indem z.B. eigene Eingabedaten gewählt werden oder die Animation angehalten und der nächste Schritt des Algorithmus vorhergesagt werden muß. LernerInnen werden so aktiv an der Animation beteiligt, was sich auch positiv auf die schon erwähnte Motivation auswirkt. Insgesamt meinen [Stasko 98], daß Algorithmen-Animationen ein wertvolles Lehrmittel sein können, falls die Visualisierung geeignet beschrieben wird und LernerInnen aktiv beteiligt werden.


    Insgesamt ist noch mehr Forschung notwendig, um den gesamten Themenkomplex nach und nach zu entschlüsseln und vor allem den EntwicklerInnen von Animationen und Animations-Systemen fundierte Ergebnisse für deren Entwurfsentscheidungen zur Verfügung stellen zu können.

    7. Quellen

    [Badre 92]: A.Badre, M.Beranek, J.Morris, J.Stasko "Assessing program visualization systems as instructional aids", I.Tomek (Editor) In: Computer Assisted Learning, ICCAL'92, volume 602 of Lecture Notes in Computer Science, Springer-Verlag, Wolfville, Nova Scotia, Canada, Juni 1992, S.87-99
    [Byrne 96]: M.Byrne, R.Catrambone, J.Stasko "Do Algorithm Animations Aid Learning ?", Technical Report GIT-GVU-96-18, GVU Center, Georgia Institute of Technologie, Atlanta, GA, August 1996
    [Douglas 94]: S.Douglas, D.McKeown, C.Hundhausen "Exploring human visualizations of algorithms", Technical Report CIS-TR-94-27, University of Oregon, Eugene, OR, 1994
    [Douglas 95]: S.Douglas, D.McKeown, C.Hundhausen "Toward empirically-based software visualization languages", Proceedings of the 1995 IEEE Symposium on Visual Languages, Darmstadt, Semptember 1995, S.342-349
    [Fredman 86]: M.Fredman, R.Sedgewick, D.Sleator, R.Tarjon "The pairing heap: a new form of self-adjusting heap", Algorithmica, Vol.1, März 1986, S.111-129
    [Gurka 96]: J.Gurka, W.Citrin "Testing Effectiveness of Algorithm Animations", Proceedings of the 1996 IEEE International Symposium on Visual Languages, Boulder, CO, September 1996, S.182-189
    [Kehoe 96]: M.Kehoe, J.Stasko "Using Animations to Learn about Algorithms: An Ethongraphic Case Study", Technical Report GIT-GVU-96-20, GVU Center, Georgia Institute of Technologie, Atlanta, GA, September 96
    [Lawrence 93]: A.Lawrence "Empirical Studies on the Value of Algorithm Animations in Algorithm Understading", PhDthesis, GIT, Atlanta, GA, 1993
    [Lawrence 94]: A.Lawrence, A.Badre, J.Stasko "Empirically evaluating the use of animations to teach algorithms", Proceedings of the 1994 IEEE Symposium on Visual Languages, MO, Oktober 1994, S.48-54
    [Stasko 92a]: J.Stasko "Animating Algorithms with XTANGO", SIGACT News, Vol.23, Nr.2, Frühjahr 1992, S.67-71
    [Stasko 92b]: J.Stasko, C.Turner "Tidy Animations of Tree Algorithms", Proceedings of the 1992 IE Workshop on Visual Languages, Seatlle, WA, September 1992, S.216-218
    [Stasko 93a]: J.Stasko, A.Badre, C.Lewis "Do Algorithm Animations Assist Learning ? An Empirical Study and Analasys", Proceedings of the INTERCHI'93 Conference on Human Factors in Computing Systems, Amsterdam, Niederlanden, April 1993, S.61-66
    [Stasko 93b]: J.Stasko, E.Kraemer, "A Methodology for Building Application-Specific Visualizations of Parallel Programs", Journal of Parallel and Distributed Computing, Vol.18, No.2, Juni 1993, S.258-264.
    [Stasko 96]: J.Stasko "Using Student-Built Algorithm Animations as Learning Aids", Technical Report GIT-GVU-96-19, GVU Center, Georgia Institute of Technologie, Atlanta, GA, August 96
    [Stasko 97]: J.Stasko "Using Student-Built Algorithm Animations as Learning Aids", Proceedings of the 1997 ACM SIGCSE Conference, San Jose, CA, Februar 1997
    [Stasko 98]: J.Stasko, A.Lawrence "Empirically Assessing Algorithm Animations as Learning Aids", In: J.stasko (Editor) et al. "Software Visualization", 1998 MIT Press, Cambridge, Massachussets, London, England, S.419-438
    [Whitney 90]: R.Whitney, N.Urquart "Microcomputers in the Mathematical Sciences: Effects of Courses, Students, and Instructors", Academic Computing, Vo.4, Nr.6, März 1990, S.14-18, 49-53
    [Wilson 95]: J.Wilson et al. "Students' Use of Animations for Algorithm Understanding" (short paper), Proceedings of the ACM SIGHCI'95 Conference on Human Factors in Cmputing Systems (Conference Companion), Denver, CO, Mai 1995, S.228-239

    Anhang: Merkblatt zur Rechnerdemonstration

    Die folgenden Passagen wurden in Form eines Merkblatts im Rahmen der diesem Vortrag folgenden Rechnerdemonstration des POLKA- und SAMBA-Systems verteilt.


    POLKA-Beispiele

    Wechsle in Verzeichnis /usr/local/X11/lib/polka/Examples

    Hier befinden sich alle mit POLKA mitgelieferten brauchbaren und vor allem lauffähigen POLKA-Animationen (viele ließen sich leider nicht compilieren oder stürzten ab).

    Starten einer Animation einfach durch Eingabe des Dateinamens (z.B. hanoi).

    Die Benutzungsoberfläche von POLKA sollte sich von selbst erklären. Nach Ablauf einer Animation muß POLKA durch "Quit" verlassen und mit der nächsten gewünschten Animation neu gestartet werden.

    Liste der Animationen:

    psortn

    Quicksort

    qsort

    Quicksort

    hanoi

    Turm von Hanoi

    spath

    Shortest Path

    tdq

    Time Dependet Queries

    rna

    RNA basierte Protein Synthese

    msort

    Mergesort

    sel

    Parallel K-Selection

    plog

    Split Sort Merge

    SAMBA-Beispiele

    Wechsle in Verzeichnis /usr/local/X11/lib/polka/Samba/Examples

    Hier befinden sich alle mit POLKA bzw. SAMBA mitgelieferten SAMBA-Animationen in Form von einfachen ASCII-Dateien mit einer Folge von SAMBA-Kommandos

    Starten einer Animation durch samba <dateinname>

    Die SAMBA-Animationen brauchen nicht duch "Quit" verlassen werden, sondern lassen sich durch "Start" von vorne betrachten.

    Liste der Animationen:

    qsort.in

    Quicksort

    dfs.in

    Depth First Search

    kruskal.in

    KruskalÝs MST

    rechner.in

    Rechenwerk

     

    In den Unterverzeichnissen QSORT und MST befinden sich von Studenten der im Vortrag erwähnten Algrorithmenvorlesung programmierte Animationen, die teilweise optisch etwas ansprechender sind, als die von den Entwicklern selbst programmierten Testanimationen.

    Liste der Animationen:

    QSORT (Quicksort-Animationen)

    text.in

    Balken und Erklärungen

    turtle.in

    J

    fahnen.in

    Fahnen statt Balken

    baum.in

    mit Baumsicht

    code.in

    mit Codesicht

    balken.in

    ähnlich text.in

    schlecht.in

    eher einfach

    MST (KruskalÝs Minimum Spanning Tree)

    turtle.in

    J

    mst1.in

    mst2.in

    ähnlich 1, etwas langsam

    mst3.in

    ähnlich 1

    mst4.in

    ähnlich 1, nur 1 Fenster

    mst5.in

    ähnlich 1, großes Fenster

    (man beachte letzten Kommentar J )

    Mst6.in

    Fast keine Erklärungen

    sichten.in

    2 Sichten

    sichten2.in

    3 Sichten

    sichten3.in

    auch 3 Sichten

    sichten4.in

    2 Sichten