Dissertation:towards_algorithm_comprehension
Kather (2022) Towards algorithm comprehension (Dissertation)
Referenz
Kather, Philipp: Towards algorithm comprehension. Dissertation, Westfälische Wilhelms-Universität Münster, 2022
Publikation
online: https://d-nb.info/1259352544
Zusammenfassung
Abstract
A central topic in computer science is algorithms that solve specific problems efficiently and elegantly. It is often not obvious why these algorithms solve the problem or why they are more efficient than naive methods. Therefore, these algorithms are usually presented together with a proof or a proof sketch that proves properties of the algorithm. In the context of this paper, we accordingly conceive of algorithms as a description of a process, e. g., in pseudocode, and a chain of reasoning that proves, e. g., in the form of a proof sketch, properties of the process. Algorithms, such as those presented in advanced lectures, textbooks, and technical articles, fall into this category. Thus, comprehending these algorithms is particularly relevant for students who have already passed the introductory stage of study and have foundations in the basics of programming and discrete mathematics.
Although algorithms play a central role in research and teaching, they have received little attention in this form in educational research. One possible reason for this is the young age of the research discipline and the fact that programming has been given far greater importance as a prerequisite for software development and as the basis of advanced topics such as algorithms. Therefore, this thesis aims to develop a theory of algorithm comprehension so that future work can draw on it to improve, for example, the teaching of algorithms.
To this end, this thesis provides an overview of previous research regarding algorithms and related didactics, particularly theories of program and proof comprehension. Algorithm comprehension is then examined quantitatively and qualitatively for similarities and differences. This work concludes that these theories cannot fully explain algorithm comprehension from these fields or their direct combination. Therefore, we develop a Grounded Theory that can explain comprehension processes by considering algorithm-specific properties.
The theory describes three mental components that are developed and intercon- nected during algorithm comprehension. These represent the comprehension of the process, the chain of reasoning, and the domain in which the algorithm is situated. Furthermore, influencing factors such as the material and algorithm-specific prior knowledge are addressed. According to the theory, algorithm understanding can be described by the development of components containing different levels of abstraction that are strongly linked in themselves and with each other.
Zusammenfassung
Ein zentrales Thema in der Informatik sind Algorithmen, die spezifische Probleme effizient und elegant lösen. Oftmals ist nicht offensichtlich, warum diese Algorithmen das Problem lösen oder warum sie effizienter sind als naive Verfahren. Daher werden diese Algorithmen meist gemeinsam mit einem Beweis oder einer Beweisskizze präsentiert, die Eigenschaften des Algorithmus beweist. Im Rahmen dieser Arbeit fassen wir Algorithmen dementsprechend als Beschreibung eines Prozesses auf, z. B. in Pseudocode, und eine Argumentationskette, die, z. B. in Form einer Beweisskizze, Eigenschaften des Prozesses beweist. In diese Kategorie fallen Algorithmen, wie sie beispielsweise in fortgeschrittenen Vorlesungen, Fachbüchern und Fachartikeln dargestellt werden. Das Verständnis dieser Algorithmen ist daher insbesondere für Studierende relevant, die bereits die Studieneingangsphase überwunden haben und Grundlagen in Programmierung und diskreter Mathematik beherrschen.
Obwohl Algorithmen in Forschung und Lehre eine zentrale Rolle einnehmen, fanden sie in dieser Form bisher nur wenig Beachtung in der fachdidaktischen Forschung. Ein möglicher Grund dafür ist das junge Alter der Forschungsdisziplin und die Tatsache, dass Programmierung als Voraussetzung für Software Entwicklung und als Basis von fortgeschrittenen Themen, wie z. B. Algorithmen, eine weitaus größere Bedeutung zugemessen wurde. Ziel dieser Arbeit ist daher eine Theoriegenese für Algorithmenverständnis, sodass zukünftige Arbeiten auf diese zurückgreifen können und so zum Beispiel das Unterrichten von Algorithmen verbessert werden kann.
Dafür wird in dieser Arbeit ein Überblick über bisherige Forschung bezüglich Algorithmen und benachbarten Fachdidaktiken gegeben, insbesondere über Forschung im Programm- und Beweisverständnis. Anschließend wird Algorithmenverständnis quantitativ und qualitativ auf Gemeinsamkeiten und Unterschiede untersucht. In dieser Arbeit kommen wir zu dem Schluss, dass Algorithmenverständnis nicht vollständig durch Theorien aus benachbarten Fachdidaktiken oder deren direkter Kombination erklärt werden kann. Daher entwickeln wir eine Grounded Theory, die insbesondere algorithmenspezifischer Eigenschaften berücksichtigt.
Die Theorie beschreibt drei mentale Komponenten, die während des Algorithmenverständnis entwickelt und miteinander vernetzt werden. Diese beschreiben das Verständnis des Prozesses, der Argumentationskette und der Domäne, in der der Algorithmus angesiedelt wird. Des Weiteren werden Einflussfaktoren, wie die Beschaffenheit des Materials und spezifisches Vorwissen, behandelt. Nach unserer Theorie kann Algorithmenverständnis dadurch beschrieben werden, dass die Komponenten unterschiedliche Abstraktionsebenen enthalten, die innerhalb der jeweiligen Komponente und miteinander verknüpft sind.